aboutsummaryrefslogtreecommitdiff
path: root/node_modules/core-js/modules
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2016-10-10 03:43:44 +0200
committerFlorian Dold <florian.dold@gmail.com>2016-10-10 03:43:44 +0200
commitabd94a7f5a50f43c797a11b53549ae48fff667c3 (patch)
treeab8ed457f65cdd72e13e0571d2975729428f1551 /node_modules/core-js/modules
parenta0247c6a3fd6a09a41a7e35a3441324c4dcb58be (diff)
downloadwallet-core-abd94a7f5a50f43c797a11b53549ae48fff667c3.tar.xz
add node_modules to address #4364
Diffstat (limited to 'node_modules/core-js/modules')
-rw-r--r--node_modules/core-js/modules/_a-function.js4
-rw-r--r--node_modules/core-js/modules/_a-number-value.js5
-rw-r--r--node_modules/core-js/modules/_add-to-unscopables.js7
-rw-r--r--node_modules/core-js/modules/_an-instance.js5
-rw-r--r--node_modules/core-js/modules/_an-object.js5
-rw-r--r--node_modules/core-js/modules/_array-copy-within.js26
-rw-r--r--node_modules/core-js/modules/_array-fill.js15
-rw-r--r--node_modules/core-js/modules/_array-from-iterable.js7
-rw-r--r--node_modules/core-js/modules/_array-includes.js21
-rw-r--r--node_modules/core-js/modules/_array-methods.js44
-rw-r--r--node_modules/core-js/modules/_array-reduce.js28
-rw-r--r--node_modules/core-js/modules/_array-species-constructor.js16
-rw-r--r--node_modules/core-js/modules/_array-species-create.js6
-rw-r--r--node_modules/core-js/modules/_bind.js24
-rw-r--r--node_modules/core-js/modules/_classof.js23
-rw-r--r--node_modules/core-js/modules/_cof.js5
-rw-r--r--node_modules/core-js/modules/_collection-strong.js142
-rw-r--r--node_modules/core-js/modules/_collection-to-json.js9
-rw-r--r--node_modules/core-js/modules/_collection-weak.js83
-rw-r--r--node_modules/core-js/modules/_collection.js85
-rw-r--r--node_modules/core-js/modules/_core.js2
-rw-r--r--node_modules/core-js/modules/_create-property.js8
-rw-r--r--node_modules/core-js/modules/_ctx.js20
-rw-r--r--node_modules/core-js/modules/_date-to-primitive.js9
-rw-r--r--node_modules/core-js/modules/_defined.js5
-rw-r--r--node_modules/core-js/modules/_descriptors.js4
-rw-r--r--node_modules/core-js/modules/_dom-create.js7
-rw-r--r--node_modules/core-js/modules/_entry-virtual.js5
-rw-r--r--node_modules/core-js/modules/_enum-bug-keys.js4
-rw-r--r--node_modules/core-js/modules/_enum-keys.js15
-rw-r--r--node_modules/core-js/modules/_export.js43
-rw-r--r--node_modules/core-js/modules/_fails-is-regexp.js12
-rw-r--r--node_modules/core-js/modules/_fails.js7
-rw-r--r--node_modules/core-js/modules/_fix-re-wks.js28
-rw-r--r--node_modules/core-js/modules/_flags.js13
-rw-r--r--node_modules/core-js/modules/_for-of.js25
-rw-r--r--node_modules/core-js/modules/_global.js4
-rw-r--r--node_modules/core-js/modules/_has.js4
-rw-r--r--node_modules/core-js/modules/_hide.js8
-rw-r--r--node_modules/core-js/modules/_html.js1
-rw-r--r--node_modules/core-js/modules/_ie8-dom-define.js3
-rw-r--r--node_modules/core-js/modules/_inherit-if-required.js8
-rw-r--r--node_modules/core-js/modules/_invoke.js16
-rw-r--r--node_modules/core-js/modules/_iobject.js5
-rw-r--r--node_modules/core-js/modules/_is-array-iter.js8
-rw-r--r--node_modules/core-js/modules/_is-array.js5
-rw-r--r--node_modules/core-js/modules/_is-integer.js6
-rw-r--r--node_modules/core-js/modules/_is-object.js3
-rw-r--r--node_modules/core-js/modules/_is-regexp.js8
-rw-r--r--node_modules/core-js/modules/_iter-call.js12
-rw-r--r--node_modules/core-js/modules/_iter-create.js13
-rw-r--r--node_modules/core-js/modules/_iter-define.js70
-rw-r--r--node_modules/core-js/modules/_iter-detect.js21
-rw-r--r--node_modules/core-js/modules/_iter-step.js3
-rw-r--r--node_modules/core-js/modules/_iterators.js1
-rw-r--r--node_modules/core-js/modules/_keyof.js10
-rw-r--r--node_modules/core-js/modules/_library.js1
-rw-r--r--node_modules/core-js/modules/_math-expm1.js10
-rw-r--r--node_modules/core-js/modules/_math-log1p.js4
-rw-r--r--node_modules/core-js/modules/_math-sign.js4
-rw-r--r--node_modules/core-js/modules/_meta.js53
-rw-r--r--node_modules/core-js/modules/_metadata.js51
-rw-r--r--node_modules/core-js/modules/_microtask.js68
-rw-r--r--node_modules/core-js/modules/_object-assign.js33
-rw-r--r--node_modules/core-js/modules/_object-create.js41
-rw-r--r--node_modules/core-js/modules/_object-define.js12
-rw-r--r--node_modules/core-js/modules/_object-dp.js16
-rw-r--r--node_modules/core-js/modules/_object-dps.js13
-rw-r--r--node_modules/core-js/modules/_object-forced-pam.js7
-rw-r--r--node_modules/core-js/modules/_object-gopd.js16
-rw-r--r--node_modules/core-js/modules/_object-gopn-ext.js19
-rw-r--r--node_modules/core-js/modules/_object-gopn.js7
-rw-r--r--node_modules/core-js/modules/_object-gops.js1
-rw-r--r--node_modules/core-js/modules/_object-gpo.js13
-rw-r--r--node_modules/core-js/modules/_object-keys-internal.js17
-rw-r--r--node_modules/core-js/modules/_object-keys.js7
-rw-r--r--node_modules/core-js/modules/_object-pie.js1
-rw-r--r--node_modules/core-js/modules/_object-sap.js10
-rw-r--r--node_modules/core-js/modules/_object-to-array.js16
-rw-r--r--node_modules/core-js/modules/_own-keys.js10
-rw-r--r--node_modules/core-js/modules/_parse-float.js8
-rw-r--r--node_modules/core-js/modules/_parse-int.js9
-rw-r--r--node_modules/core-js/modules/_partial.js23
-rw-r--r--node_modules/core-js/modules/_path.js1
-rw-r--r--node_modules/core-js/modules/_property-desc.js8
-rw-r--r--node_modules/core-js/modules/_redefine-all.js5
-rw-r--r--node_modules/core-js/modules/_redefine.js32
-rw-r--r--node_modules/core-js/modules/_replacer.js8
-rw-r--r--node_modules/core-js/modules/_same-value.js4
-rw-r--r--node_modules/core-js/modules/_set-proto.js25
-rw-r--r--node_modules/core-js/modules/_set-species.js13
-rw-r--r--node_modules/core-js/modules/_set-to-string-tag.js7
-rw-r--r--node_modules/core-js/modules/_shared-key.js5
-rw-r--r--node_modules/core-js/modules/_shared.js6
-rw-r--r--node_modules/core-js/modules/_species-constructor.js8
-rw-r--r--node_modules/core-js/modules/_strict-method.js7
-rw-r--r--node_modules/core-js/modules/_string-at.js17
-rw-r--r--node_modules/core-js/modules/_string-context.js8
-rw-r--r--node_modules/core-js/modules/_string-html.js19
-rw-r--r--node_modules/core-js/modules/_string-pad.js16
-rw-r--r--node_modules/core-js/modules/_string-repeat.js12
-rw-r--r--node_modules/core-js/modules/_string-trim.js30
-rw-r--r--node_modules/core-js/modules/_string-ws.js2
-rw-r--r--node_modules/core-js/modules/_task.js75
-rw-r--r--node_modules/core-js/modules/_to-index.js7
-rw-r--r--node_modules/core-js/modules/_to-integer.js6
-rw-r--r--node_modules/core-js/modules/_to-iobject.js6
-rw-r--r--node_modules/core-js/modules/_to-length.js6
-rw-r--r--node_modules/core-js/modules/_to-object.js5
-rw-r--r--node_modules/core-js/modules/_to-primitive.js12
-rw-r--r--node_modules/core-js/modules/_typed-array.js479
-rw-r--r--node_modules/core-js/modules/_typed-buffer.js273
-rw-r--r--node_modules/core-js/modules/_typed.js26
-rw-r--r--node_modules/core-js/modules/_uid.js5
-rw-r--r--node_modules/core-js/modules/_wks-define.js9
-rw-r--r--node_modules/core-js/modules/_wks-ext.js1
-rw-r--r--node_modules/core-js/modules/_wks.js11
-rw-r--r--node_modules/core-js/modules/core.delay.js12
-rw-r--r--node_modules/core-js/modules/core.dict.js155
-rw-r--r--node_modules/core-js/modules/core.function.part.js7
-rw-r--r--node_modules/core-js/modules/core.get-iterator-method.js8
-rw-r--r--node_modules/core-js/modules/core.get-iterator.js7
-rw-r--r--node_modules/core-js/modules/core.is-iterable.js9
-rw-r--r--node_modules/core-js/modules/core.number.iterator.js9
-rw-r--r--node_modules/core-js/modules/core.object.classof.js3
-rw-r--r--node_modules/core-js/modules/core.object.define.js4
-rw-r--r--node_modules/core-js/modules/core.object.is-object.js3
-rw-r--r--node_modules/core-js/modules/core.object.make.js9
-rw-r--r--node_modules/core-js/modules/core.regexp.escape.js5
-rw-r--r--node_modules/core-js/modules/core.string.escape-html.js11
-rw-r--r--node_modules/core-js/modules/core.string.unescape-html.js11
-rw-r--r--node_modules/core-js/modules/es5.js35
-rw-r--r--node_modules/core-js/modules/es6.array.copy-within.js6
-rw-r--r--node_modules/core-js/modules/es6.array.every.js10
-rw-r--r--node_modules/core-js/modules/es6.array.fill.js6
-rw-r--r--node_modules/core-js/modules/es6.array.filter.js10
-rw-r--r--node_modules/core-js/modules/es6.array.find-index.js14
-rw-r--r--node_modules/core-js/modules/es6.array.find.js14
-rw-r--r--node_modules/core-js/modules/es6.array.for-each.js11
-rw-r--r--node_modules/core-js/modules/es6.array.from.js37
-rw-r--r--node_modules/core-js/modules/es6.array.index-of.js15
-rw-r--r--node_modules/core-js/modules/es6.array.is-array.js4
-rw-r--r--node_modules/core-js/modules/es6.array.iterator.js34
-rw-r--r--node_modules/core-js/modules/es6.array.join.js12
-rw-r--r--node_modules/core-js/modules/es6.array.last-index-of.js22
-rw-r--r--node_modules/core-js/modules/es6.array.map.js10
-rw-r--r--node_modules/core-js/modules/es6.array.of.js19
-rw-r--r--node_modules/core-js/modules/es6.array.reduce-right.js10
-rw-r--r--node_modules/core-js/modules/es6.array.reduce.js10
-rw-r--r--node_modules/core-js/modules/es6.array.slice.js28
-rw-r--r--node_modules/core-js/modules/es6.array.some.js10
-rw-r--r--node_modules/core-js/modules/es6.array.sort.js23
-rw-r--r--node_modules/core-js/modules/es6.array.species.js1
-rw-r--r--node_modules/core-js/modules/es6.date.now.js4
-rw-r--r--node_modules/core-js/modules/es6.date.to-iso-string.js28
-rw-r--r--node_modules/core-js/modules/es6.date.to-json.js14
-rw-r--r--node_modules/core-js/modules/es6.date.to-primitive.js4
-rw-r--r--node_modules/core-js/modules/es6.date.to-string.js11
-rw-r--r--node_modules/core-js/modules/es6.function.bind.js4
-rw-r--r--node_modules/core-js/modules/es6.function.has-instance.js13
-rw-r--r--node_modules/core-js/modules/es6.function.name.js25
-rw-r--r--node_modules/core-js/modules/es6.map.js17
-rw-r--r--node_modules/core-js/modules/es6.math.acosh.js18
-rw-r--r--node_modules/core-js/modules/es6.math.asinh.js10
-rw-r--r--node_modules/core-js/modules/es6.math.atanh.js10
-rw-r--r--node_modules/core-js/modules/es6.math.cbrt.js9
-rw-r--r--node_modules/core-js/modules/es6.math.clz32.js8
-rw-r--r--node_modules/core-js/modules/es6.math.cosh.js9
-rw-r--r--node_modules/core-js/modules/es6.math.expm1.js5
-rw-r--r--node_modules/core-js/modules/es6.math.fround.js26
-rw-r--r--node_modules/core-js/modules/es6.math.hypot.js25
-rw-r--r--node_modules/core-js/modules/es6.math.imul.js17
-rw-r--r--node_modules/core-js/modules/es6.math.log10.js8
-rw-r--r--node_modules/core-js/modules/es6.math.log1p.js4
-rw-r--r--node_modules/core-js/modules/es6.math.log2.js8
-rw-r--r--node_modules/core-js/modules/es6.math.sign.js4
-rw-r--r--node_modules/core-js/modules/es6.math.sinh.js15
-rw-r--r--node_modules/core-js/modules/es6.math.tanh.js12
-rw-r--r--node_modules/core-js/modules/es6.math.trunc.js8
-rw-r--r--node_modules/core-js/modules/es6.number.constructor.js69
-rw-r--r--node_modules/core-js/modules/es6.number.epsilon.js4
-rw-r--r--node_modules/core-js/modules/es6.number.is-finite.js9
-rw-r--r--node_modules/core-js/modules/es6.number.is-integer.js4
-rw-r--r--node_modules/core-js/modules/es6.number.is-nan.js8
-rw-r--r--node_modules/core-js/modules/es6.number.is-safe-integer.js10
-rw-r--r--node_modules/core-js/modules/es6.number.max-safe-integer.js4
-rw-r--r--node_modules/core-js/modules/es6.number.min-safe-integer.js4
-rw-r--r--node_modules/core-js/modules/es6.number.parse-float.js4
-rw-r--r--node_modules/core-js/modules/es6.number.parse-int.js4
-rw-r--r--node_modules/core-js/modules/es6.number.to-fixed.js113
-rw-r--r--node_modules/core-js/modules/es6.number.to-precision.js18
-rw-r--r--node_modules/core-js/modules/es6.object.assign.js4
-rw-r--r--node_modules/core-js/modules/es6.object.create.js3
-rw-r--r--node_modules/core-js/modules/es6.object.define-properties.js3
-rw-r--r--node_modules/core-js/modules/es6.object.define-property.js3
-rw-r--r--node_modules/core-js/modules/es6.object.freeze.js9
-rw-r--r--node_modules/core-js/modules/es6.object.get-own-property-descriptor.js9
-rw-r--r--node_modules/core-js/modules/es6.object.get-own-property-names.js4
-rw-r--r--node_modules/core-js/modules/es6.object.get-prototype-of.js9
-rw-r--r--node_modules/core-js/modules/es6.object.is-extensible.js8
-rw-r--r--node_modules/core-js/modules/es6.object.is-frozen.js8
-rw-r--r--node_modules/core-js/modules/es6.object.is-sealed.js8
-rw-r--r--node_modules/core-js/modules/es6.object.is.js3
-rw-r--r--node_modules/core-js/modules/es6.object.keys.js9
-rw-r--r--node_modules/core-js/modules/es6.object.prevent-extensions.js9
-rw-r--r--node_modules/core-js/modules/es6.object.seal.js9
-rw-r--r--node_modules/core-js/modules/es6.object.set-prototype-of.js3
-rw-r--r--node_modules/core-js/modules/es6.object.to-string.js10
-rw-r--r--node_modules/core-js/modules/es6.parse-float.js4
-rw-r--r--node_modules/core-js/modules/es6.parse-int.js4
-rw-r--r--node_modules/core-js/modules/es6.promise.js299
-rw-r--r--node_modules/core-js/modules/es6.reflect.apply.js16
-rw-r--r--node_modules/core-js/modules/es6.reflect.construct.js47
-rw-r--r--node_modules/core-js/modules/es6.reflect.define-property.js22
-rw-r--r--node_modules/core-js/modules/es6.reflect.delete-property.js11
-rw-r--r--node_modules/core-js/modules/es6.reflect.enumerate.js26
-rw-r--r--node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js10
-rw-r--r--node_modules/core-js/modules/es6.reflect.get-prototype-of.js10
-rw-r--r--node_modules/core-js/modules/es6.reflect.get.js21
-rw-r--r--node_modules/core-js/modules/es6.reflect.has.js8
-rw-r--r--node_modules/core-js/modules/es6.reflect.is-extensible.js11
-rw-r--r--node_modules/core-js/modules/es6.reflect.own-keys.js4
-rw-r--r--node_modules/core-js/modules/es6.reflect.prevent-extensions.js16
-rw-r--r--node_modules/core-js/modules/es6.reflect.set-prototype-of.js15
-rw-r--r--node_modules/core-js/modules/es6.reflect.set.js31
-rw-r--r--node_modules/core-js/modules/es6.regexp.constructor.js43
-rw-r--r--node_modules/core-js/modules/es6.regexp.flags.js5
-rw-r--r--node_modules/core-js/modules/es6.regexp.match.js10
-rw-r--r--node_modules/core-js/modules/es6.regexp.replace.js12
-rw-r--r--node_modules/core-js/modules/es6.regexp.search.js10
-rw-r--r--node_modules/core-js/modules/es6.regexp.split.js70
-rw-r--r--node_modules/core-js/modules/es6.regexp.to-string.js25
-rw-r--r--node_modules/core-js/modules/es6.set.js12
-rw-r--r--node_modules/core-js/modules/es6.string.anchor.js7
-rw-r--r--node_modules/core-js/modules/es6.string.big.js7
-rw-r--r--node_modules/core-js/modules/es6.string.blink.js7
-rw-r--r--node_modules/core-js/modules/es6.string.bold.js7
-rw-r--r--node_modules/core-js/modules/es6.string.code-point-at.js9
-rw-r--r--node_modules/core-js/modules/es6.string.ends-with.js20
-rw-r--r--node_modules/core-js/modules/es6.string.fixed.js7
-rw-r--r--node_modules/core-js/modules/es6.string.fontcolor.js7
-rw-r--r--node_modules/core-js/modules/es6.string.fontsize.js7
-rw-r--r--node_modules/core-js/modules/es6.string.from-code-point.js23
-rw-r--r--node_modules/core-js/modules/es6.string.includes.js12
-rw-r--r--node_modules/core-js/modules/es6.string.italics.js7
-rw-r--r--node_modules/core-js/modules/es6.string.iterator.js17
-rw-r--r--node_modules/core-js/modules/es6.string.link.js7
-rw-r--r--node_modules/core-js/modules/es6.string.raw.js18
-rw-r--r--node_modules/core-js/modules/es6.string.repeat.js6
-rw-r--r--node_modules/core-js/modules/es6.string.small.js7
-rw-r--r--node_modules/core-js/modules/es6.string.starts-with.js18
-rw-r--r--node_modules/core-js/modules/es6.string.strike.js7
-rw-r--r--node_modules/core-js/modules/es6.string.sub.js7
-rw-r--r--node_modules/core-js/modules/es6.string.sup.js7
-rw-r--r--node_modules/core-js/modules/es6.string.trim.js7
-rw-r--r--node_modules/core-js/modules/es6.symbol.js235
-rw-r--r--node_modules/core-js/modules/es6.typed.array-buffer.js46
-rw-r--r--node_modules/core-js/modules/es6.typed.data-view.js4
-rw-r--r--node_modules/core-js/modules/es6.typed.float32-array.js5
-rw-r--r--node_modules/core-js/modules/es6.typed.float64-array.js5
-rw-r--r--node_modules/core-js/modules/es6.typed.int16-array.js5
-rw-r--r--node_modules/core-js/modules/es6.typed.int32-array.js5
-rw-r--r--node_modules/core-js/modules/es6.typed.int8-array.js5
-rw-r--r--node_modules/core-js/modules/es6.typed.uint16-array.js5
-rw-r--r--node_modules/core-js/modules/es6.typed.uint32-array.js5
-rw-r--r--node_modules/core-js/modules/es6.typed.uint8-array.js5
-rw-r--r--node_modules/core-js/modules/es6.typed.uint8-clamped-array.js5
-rw-r--r--node_modules/core-js/modules/es6.weak-map.js56
-rw-r--r--node_modules/core-js/modules/es6.weak-set.js12
-rw-r--r--node_modules/core-js/modules/es7.array.includes.js12
-rw-r--r--node_modules/core-js/modules/es7.asap.js12
-rw-r--r--node_modules/core-js/modules/es7.error.is-error.js9
-rw-r--r--node_modules/core-js/modules/es7.map.to-json.js4
-rw-r--r--node_modules/core-js/modules/es7.math.iaddh.js11
-rw-r--r--node_modules/core-js/modules/es7.math.imulh.js16
-rw-r--r--node_modules/core-js/modules/es7.math.isubh.js11
-rw-r--r--node_modules/core-js/modules/es7.math.umulh.js16
-rw-r--r--node_modules/core-js/modules/es7.object.define-getter.js12
-rw-r--r--node_modules/core-js/modules/es7.object.define-setter.js12
-rw-r--r--node_modules/core-js/modules/es7.object.entries.js9
-rw-r--r--node_modules/core-js/modules/es7.object.enumerable-entries.js12
-rw-r--r--node_modules/core-js/modules/es7.object.enumerable-keys.js12
-rw-r--r--node_modules/core-js/modules/es7.object.enumerable-values.js12
-rw-r--r--node_modules/core-js/modules/es7.object.get-own-property-descriptors.js19
-rw-r--r--node_modules/core-js/modules/es7.object.lookup-getter.js18
-rw-r--r--node_modules/core-js/modules/es7.object.lookup-setter.js18
-rw-r--r--node_modules/core-js/modules/es7.object.values.js9
-rw-r--r--node_modules/core-js/modules/es7.observable.js199
-rw-r--r--node_modules/core-js/modules/es7.reflect.define-metadata.js8
-rw-r--r--node_modules/core-js/modules/es7.reflect.delete-metadata.js15
-rw-r--r--node_modules/core-js/modules/es7.reflect.get-metadata-keys.js19
-rw-r--r--node_modules/core-js/modules/es7.reflect.get-metadata.js17
-rw-r--r--node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js8
-rw-r--r--node_modules/core-js/modules/es7.reflect.get-own-metadata.js9
-rw-r--r--node_modules/core-js/modules/es7.reflect.has-metadata.js16
-rw-r--r--node_modules/core-js/modules/es7.reflect.has-own-metadata.js9
-rw-r--r--node_modules/core-js/modules/es7.reflect.metadata.js15
-rw-r--r--node_modules/core-js/modules/es7.set.to-json.js4
-rw-r--r--node_modules/core-js/modules/es7.string.at.js10
-rw-r--r--node_modules/core-js/modules/es7.string.match-all.js30
-rw-r--r--node_modules/core-js/modules/es7.string.pad-end.js10
-rw-r--r--node_modules/core-js/modules/es7.string.pad-start.js10
-rw-r--r--node_modules/core-js/modules/es7.string.trim-left.js7
-rw-r--r--node_modules/core-js/modules/es7.string.trim-right.js7
-rw-r--r--node_modules/core-js/modules/es7.symbol.async-iterator.js1
-rw-r--r--node_modules/core-js/modules/es7.symbol.observable.js1
-rw-r--r--node_modules/core-js/modules/es7.system.global.js4
-rw-r--r--node_modules/core-js/modules/library/_add-to-unscopables.js1
-rw-r--r--node_modules/core-js/modules/library/_collection.js59
-rw-r--r--node_modules/core-js/modules/library/_export.js61
-rw-r--r--node_modules/core-js/modules/library/_library.js1
-rw-r--r--node_modules/core-js/modules/library/_path.js1
-rw-r--r--node_modules/core-js/modules/library/_redefine-all.js7
-rw-r--r--node_modules/core-js/modules/library/_redefine.js1
-rw-r--r--node_modules/core-js/modules/library/_set-species.js14
-rw-r--r--node_modules/core-js/modules/library/es6.date.to-primitive.js0
-rw-r--r--node_modules/core-js/modules/library/es6.date.to-string.js0
-rw-r--r--node_modules/core-js/modules/library/es6.function.name.js0
-rw-r--r--node_modules/core-js/modules/library/es6.number.constructor.js0
-rw-r--r--node_modules/core-js/modules/library/es6.object.to-string.js0
-rw-r--r--node_modules/core-js/modules/library/es6.regexp.constructor.js1
-rw-r--r--node_modules/core-js/modules/library/es6.regexp.flags.js0
-rw-r--r--node_modules/core-js/modules/library/es6.regexp.match.js0
-rw-r--r--node_modules/core-js/modules/library/es6.regexp.replace.js0
-rw-r--r--node_modules/core-js/modules/library/es6.regexp.search.js0
-rw-r--r--node_modules/core-js/modules/library/es6.regexp.split.js0
-rw-r--r--node_modules/core-js/modules/library/es6.regexp.to-string.js0
-rw-r--r--node_modules/core-js/modules/library/web.dom.iterable.js13
-rw-r--r--node_modules/core-js/modules/web.dom.iterable.js22
-rw-r--r--node_modules/core-js/modules/web.immediate.js6
-rw-r--r--node_modules/core-js/modules/web.timers.js20
331 files changed, 6063 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/_a-function.js b/node_modules/core-js/modules/_a-function.js
new file mode 100644
index 000000000..8c35f4514
--- /dev/null
+++ b/node_modules/core-js/modules/_a-function.js
@@ -0,0 +1,4 @@
+module.exports = function(it){
+ if(typeof it != 'function')throw TypeError(it + ' is not a function!');
+ return it;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_a-number-value.js b/node_modules/core-js/modules/_a-number-value.js
new file mode 100644
index 000000000..7bcbd7b76
--- /dev/null
+++ b/node_modules/core-js/modules/_a-number-value.js
@@ -0,0 +1,5 @@
+var cof = require('./_cof');
+module.exports = function(it, msg){
+ if(typeof it != 'number' && cof(it) != 'Number')throw TypeError(msg);
+ return +it;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_add-to-unscopables.js b/node_modules/core-js/modules/_add-to-unscopables.js
new file mode 100644
index 000000000..0a74baeab
--- /dev/null
+++ b/node_modules/core-js/modules/_add-to-unscopables.js
@@ -0,0 +1,7 @@
+// 22.1.3.31 Array.prototype[@@unscopables]
+var UNSCOPABLES = require('./_wks')('unscopables')
+ , ArrayProto = Array.prototype;
+if(ArrayProto[UNSCOPABLES] == undefined)require('./_hide')(ArrayProto, UNSCOPABLES, {});
+module.exports = function(key){
+ ArrayProto[UNSCOPABLES][key] = true;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_an-instance.js b/node_modules/core-js/modules/_an-instance.js
new file mode 100644
index 000000000..e4dfad3d0
--- /dev/null
+++ b/node_modules/core-js/modules/_an-instance.js
@@ -0,0 +1,5 @@
+module.exports = function(it, Constructor, name, forbiddenField){
+ if(!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)){
+ throw TypeError(name + ': incorrect invocation!');
+ } return it;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_an-object.js b/node_modules/core-js/modules/_an-object.js
new file mode 100644
index 000000000..59a8a3a36
--- /dev/null
+++ b/node_modules/core-js/modules/_an-object.js
@@ -0,0 +1,5 @@
+var isObject = require('./_is-object');
+module.exports = function(it){
+ if(!isObject(it))throw TypeError(it + ' is not an object!');
+ return it;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_array-copy-within.js b/node_modules/core-js/modules/_array-copy-within.js
new file mode 100644
index 000000000..d901a32f5
--- /dev/null
+++ b/node_modules/core-js/modules/_array-copy-within.js
@@ -0,0 +1,26 @@
+// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+'use strict';
+var toObject = require('./_to-object')
+ , toIndex = require('./_to-index')
+ , toLength = require('./_to-length');
+
+module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){
+ var O = toObject(this)
+ , len = toLength(O.length)
+ , to = toIndex(target, len)
+ , from = toIndex(start, len)
+ , end = arguments.length > 2 ? arguments[2] : undefined
+ , count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)
+ , inc = 1;
+ if(from < to && to < from + count){
+ inc = -1;
+ from += count - 1;
+ to += count - 1;
+ }
+ while(count-- > 0){
+ if(from in O)O[to] = O[from];
+ else delete O[to];
+ to += inc;
+ from += inc;
+ } return O;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_array-fill.js b/node_modules/core-js/modules/_array-fill.js
new file mode 100644
index 000000000..b21bb7edd
--- /dev/null
+++ b/node_modules/core-js/modules/_array-fill.js
@@ -0,0 +1,15 @@
+// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+'use strict';
+var toObject = require('./_to-object')
+ , toIndex = require('./_to-index')
+ , toLength = require('./_to-length');
+module.exports = function fill(value /*, start = 0, end = @length */){
+ var O = toObject(this)
+ , length = toLength(O.length)
+ , aLen = arguments.length
+ , index = toIndex(aLen > 1 ? arguments[1] : undefined, length)
+ , end = aLen > 2 ? arguments[2] : undefined
+ , endPos = end === undefined ? length : toIndex(end, length);
+ while(endPos > index)O[index++] = value;
+ return O;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_array-from-iterable.js b/node_modules/core-js/modules/_array-from-iterable.js
new file mode 100644
index 000000000..b5c454fb0
--- /dev/null
+++ b/node_modules/core-js/modules/_array-from-iterable.js
@@ -0,0 +1,7 @@
+var forOf = require('./_for-of');
+
+module.exports = function(iter, ITERATOR){
+ var result = [];
+ forOf(iter, false, result.push, result, ITERATOR);
+ return result;
+};
diff --git a/node_modules/core-js/modules/_array-includes.js b/node_modules/core-js/modules/_array-includes.js
new file mode 100644
index 000000000..c70b064d1
--- /dev/null
+++ b/node_modules/core-js/modules/_array-includes.js
@@ -0,0 +1,21 @@
+// false -> Array#indexOf
+// true -> Array#includes
+var toIObject = require('./_to-iobject')
+ , toLength = require('./_to-length')
+ , toIndex = require('./_to-index');
+module.exports = function(IS_INCLUDES){
+ return function($this, el, fromIndex){
+ var O = toIObject($this)
+ , length = toLength(O.length)
+ , index = toIndex(fromIndex, length)
+ , value;
+ // Array#includes uses SameValueZero equality algorithm
+ if(IS_INCLUDES && el != el)while(length > index){
+ value = O[index++];
+ if(value != value)return true;
+ // Array#toIndex ignores holes, Array#includes - not
+ } else for(;length > index; index++)if(IS_INCLUDES || index in O){
+ if(O[index] === el)return IS_INCLUDES || index || 0;
+ } return !IS_INCLUDES && -1;
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_array-methods.js b/node_modules/core-js/modules/_array-methods.js
new file mode 100644
index 000000000..8ffbe1164
--- /dev/null
+++ b/node_modules/core-js/modules/_array-methods.js
@@ -0,0 +1,44 @@
+// 0 -> Array#forEach
+// 1 -> Array#map
+// 2 -> Array#filter
+// 3 -> Array#some
+// 4 -> Array#every
+// 5 -> Array#find
+// 6 -> Array#findIndex
+var ctx = require('./_ctx')
+ , IObject = require('./_iobject')
+ , toObject = require('./_to-object')
+ , toLength = require('./_to-length')
+ , asc = require('./_array-species-create');
+module.exports = function(TYPE, $create){
+ var IS_MAP = TYPE == 1
+ , IS_FILTER = TYPE == 2
+ , IS_SOME = TYPE == 3
+ , IS_EVERY = TYPE == 4
+ , IS_FIND_INDEX = TYPE == 6
+ , NO_HOLES = TYPE == 5 || IS_FIND_INDEX
+ , create = $create || asc;
+ return function($this, callbackfn, that){
+ var O = toObject($this)
+ , self = IObject(O)
+ , f = ctx(callbackfn, that, 3)
+ , length = toLength(self.length)
+ , index = 0
+ , result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined
+ , val, res;
+ for(;length > index; index++)if(NO_HOLES || index in self){
+ val = self[index];
+ res = f(val, index, O);
+ if(TYPE){
+ if(IS_MAP)result[index] = res; // map
+ else if(res)switch(TYPE){
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return index; // findIndex
+ case 2: result.push(val); // filter
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_array-reduce.js b/node_modules/core-js/modules/_array-reduce.js
new file mode 100644
index 000000000..c807d5443
--- /dev/null
+++ b/node_modules/core-js/modules/_array-reduce.js
@@ -0,0 +1,28 @@
+var aFunction = require('./_a-function')
+ , toObject = require('./_to-object')
+ , IObject = require('./_iobject')
+ , toLength = require('./_to-length');
+
+module.exports = function(that, callbackfn, aLen, memo, isRight){
+ aFunction(callbackfn);
+ var O = toObject(that)
+ , self = IObject(O)
+ , length = toLength(O.length)
+ , index = isRight ? length - 1 : 0
+ , i = isRight ? -1 : 1;
+ if(aLen < 2)for(;;){
+ if(index in self){
+ memo = self[index];
+ index += i;
+ break;
+ }
+ index += i;
+ if(isRight ? index < 0 : length <= index){
+ throw TypeError('Reduce of empty array with no initial value');
+ }
+ }
+ for(;isRight ? index >= 0 : length > index; index += i)if(index in self){
+ memo = callbackfn(memo, self[index], index, O);
+ }
+ return memo;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_array-species-constructor.js b/node_modules/core-js/modules/_array-species-constructor.js
new file mode 100644
index 000000000..a715389fd
--- /dev/null
+++ b/node_modules/core-js/modules/_array-species-constructor.js
@@ -0,0 +1,16 @@
+var isObject = require('./_is-object')
+ , isArray = require('./_is-array')
+ , SPECIES = require('./_wks')('species');
+
+module.exports = function(original){
+ var C;
+ if(isArray(original)){
+ C = original.constructor;
+ // cross-realm fallback
+ if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
+ if(isObject(C)){
+ C = C[SPECIES];
+ if(C === null)C = undefined;
+ }
+ } return C === undefined ? Array : C;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_array-species-create.js b/node_modules/core-js/modules/_array-species-create.js
new file mode 100644
index 000000000..cbd18bc6c
--- /dev/null
+++ b/node_modules/core-js/modules/_array-species-create.js
@@ -0,0 +1,6 @@
+// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
+var speciesConstructor = require('./_array-species-constructor');
+
+module.exports = function(original, length){
+ return new (speciesConstructor(original))(length);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_bind.js b/node_modules/core-js/modules/_bind.js
new file mode 100644
index 000000000..1f7b0174b
--- /dev/null
+++ b/node_modules/core-js/modules/_bind.js
@@ -0,0 +1,24 @@
+'use strict';
+var aFunction = require('./_a-function')
+ , isObject = require('./_is-object')
+ , invoke = require('./_invoke')
+ , arraySlice = [].slice
+ , factories = {};
+
+var construct = function(F, len, args){
+ if(!(len in factories)){
+ for(var n = [], i = 0; i < len; i++)n[i] = 'a[' + i + ']';
+ factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
+ } return factories[len](F, args);
+};
+
+module.exports = Function.bind || function bind(that /*, args... */){
+ var fn = aFunction(this)
+ , partArgs = arraySlice.call(arguments, 1);
+ var bound = function(/* args... */){
+ var args = partArgs.concat(arraySlice.call(arguments));
+ return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
+ };
+ if(isObject(fn.prototype))bound.prototype = fn.prototype;
+ return bound;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_classof.js b/node_modules/core-js/modules/_classof.js
new file mode 100644
index 000000000..dab3a80f1
--- /dev/null
+++ b/node_modules/core-js/modules/_classof.js
@@ -0,0 +1,23 @@
+// getting tag from 19.1.3.6 Object.prototype.toString()
+var cof = require('./_cof')
+ , TAG = require('./_wks')('toStringTag')
+ // ES3 wrong here
+ , ARG = cof(function(){ return arguments; }()) == 'Arguments';
+
+// fallback for IE11 Script Access Denied error
+var tryGet = function(it, key){
+ try {
+ return it[key];
+ } catch(e){ /* empty */ }
+};
+
+module.exports = function(it){
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
+ // builtinTag case
+ : ARG ? cof(O)
+ // ES3 arguments fallback
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_cof.js b/node_modules/core-js/modules/_cof.js
new file mode 100644
index 000000000..1dd2779a7
--- /dev/null
+++ b/node_modules/core-js/modules/_cof.js
@@ -0,0 +1,5 @@
+var toString = {}.toString;
+
+module.exports = function(it){
+ return toString.call(it).slice(8, -1);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_collection-strong.js b/node_modules/core-js/modules/_collection-strong.js
new file mode 100644
index 000000000..55e4b6158
--- /dev/null
+++ b/node_modules/core-js/modules/_collection-strong.js
@@ -0,0 +1,142 @@
+'use strict';
+var dP = require('./_object-dp').f
+ , create = require('./_object-create')
+ , redefineAll = require('./_redefine-all')
+ , ctx = require('./_ctx')
+ , anInstance = require('./_an-instance')
+ , defined = require('./_defined')
+ , forOf = require('./_for-of')
+ , $iterDefine = require('./_iter-define')
+ , step = require('./_iter-step')
+ , setSpecies = require('./_set-species')
+ , DESCRIPTORS = require('./_descriptors')
+ , fastKey = require('./_meta').fastKey
+ , SIZE = DESCRIPTORS ? '_s' : 'size';
+
+var getEntry = function(that, key){
+ // fast case
+ var index = fastKey(key), entry;
+ if(index !== 'F')return that._i[index];
+ // frozen object case
+ for(entry = that._f; entry; entry = entry.n){
+ if(entry.k == key)return entry;
+ }
+};
+
+module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ anInstance(that, C, NAME, '_i');
+ that._i = create(null); // index
+ that._f = undefined; // first entry
+ that._l = undefined; // last entry
+ that[SIZE] = 0; // size
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.1.3.1 Map.prototype.clear()
+ // 23.2.3.2 Set.prototype.clear()
+ clear: function clear(){
+ for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){
+ entry.r = true;
+ if(entry.p)entry.p = entry.p.n = undefined;
+ delete data[entry.i];
+ }
+ that._f = that._l = undefined;
+ that[SIZE] = 0;
+ },
+ // 23.1.3.3 Map.prototype.delete(key)
+ // 23.2.3.4 Set.prototype.delete(value)
+ 'delete': function(key){
+ var that = this
+ , entry = getEntry(that, key);
+ if(entry){
+ var next = entry.n
+ , prev = entry.p;
+ delete that._i[entry.i];
+ entry.r = true;
+ if(prev)prev.n = next;
+ if(next)next.p = prev;
+ if(that._f == entry)that._f = next;
+ if(that._l == entry)that._l = prev;
+ that[SIZE]--;
+ } return !!entry;
+ },
+ // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
+ // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
+ forEach: function forEach(callbackfn /*, that = undefined */){
+ anInstance(this, C, 'forEach');
+ var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)
+ , entry;
+ while(entry = entry ? entry.n : this._f){
+ f(entry.v, entry.k, this);
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ }
+ },
+ // 23.1.3.7 Map.prototype.has(key)
+ // 23.2.3.7 Set.prototype.has(value)
+ has: function has(key){
+ return !!getEntry(this, key);
+ }
+ });
+ if(DESCRIPTORS)dP(C.prototype, 'size', {
+ get: function(){
+ return defined(this[SIZE]);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ var entry = getEntry(that, key)
+ , prev, index;
+ // change existing entry
+ if(entry){
+ entry.v = value;
+ // create new entry
+ } else {
+ that._l = entry = {
+ i: index = fastKey(key, true), // <- index
+ k: key, // <- key
+ v: value, // <- value
+ p: prev = that._l, // <- previous entry
+ n: undefined, // <- next entry
+ r: false // <- removed
+ };
+ if(!that._f)that._f = entry;
+ if(prev)prev.n = entry;
+ that[SIZE]++;
+ // add to index
+ if(index !== 'F')that._i[index] = entry;
+ } return that;
+ },
+ getEntry: getEntry,
+ setStrong: function(C, NAME, IS_MAP){
+ // add .keys, .values, .entries, [@@iterator]
+ // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
+ $iterDefine(C, NAME, function(iterated, kind){
+ this._t = iterated; // target
+ this._k = kind; // kind
+ this._l = undefined; // previous
+ }, function(){
+ var that = this
+ , kind = that._k
+ , entry = that._l;
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ // get next entry
+ if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){
+ // or finish the iteration
+ that._t = undefined;
+ return step(1);
+ }
+ // return step by kind
+ if(kind == 'keys' )return step(0, entry.k);
+ if(kind == 'values')return step(0, entry.v);
+ return step(0, [entry.k, entry.v]);
+ }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
+
+ // add [@@species], 23.1.2.2, 23.2.2.2
+ setSpecies(NAME);
+ }
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_collection-to-json.js b/node_modules/core-js/modules/_collection-to-json.js
new file mode 100644
index 000000000..ce0282f6b
--- /dev/null
+++ b/node_modules/core-js/modules/_collection-to-json.js
@@ -0,0 +1,9 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var classof = require('./_classof')
+ , from = require('./_array-from-iterable');
+module.exports = function(NAME){
+ return function toJSON(){
+ if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
+ return from(this);
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_collection-weak.js b/node_modules/core-js/modules/_collection-weak.js
new file mode 100644
index 000000000..a8597e64d
--- /dev/null
+++ b/node_modules/core-js/modules/_collection-weak.js
@@ -0,0 +1,83 @@
+'use strict';
+var redefineAll = require('./_redefine-all')
+ , getWeak = require('./_meta').getWeak
+ , anObject = require('./_an-object')
+ , isObject = require('./_is-object')
+ , anInstance = require('./_an-instance')
+ , forOf = require('./_for-of')
+ , createArrayMethod = require('./_array-methods')
+ , $has = require('./_has')
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , id = 0;
+
+// fallback for uncaught frozen keys
+var uncaughtFrozenStore = function(that){
+ return that._l || (that._l = new UncaughtFrozenStore);
+};
+var UncaughtFrozenStore = function(){
+ this.a = [];
+};
+var findUncaughtFrozen = function(store, key){
+ return arrayFind(store.a, function(it){
+ return it[0] === key;
+ });
+};
+UncaughtFrozenStore.prototype = {
+ get: function(key){
+ var entry = findUncaughtFrozen(this, key);
+ if(entry)return entry[1];
+ },
+ has: function(key){
+ return !!findUncaughtFrozen(this, key);
+ },
+ set: function(key, value){
+ var entry = findUncaughtFrozen(this, key);
+ if(entry)entry[1] = value;
+ else this.a.push([key, value]);
+ },
+ 'delete': function(key){
+ var index = arrayFindIndex(this.a, function(it){
+ return it[0] === key;
+ });
+ if(~index)this.a.splice(index, 1);
+ return !!~index;
+ }
+};
+
+module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ anInstance(that, C, NAME, '_i');
+ that._i = id++; // collection id
+ that._l = undefined; // leak store for uncaught frozen objects
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.3.3.2 WeakMap.prototype.delete(key)
+ // 23.4.3.3 WeakSet.prototype.delete(value)
+ 'delete': function(key){
+ if(!isObject(key))return false;
+ var data = getWeak(key);
+ if(data === true)return uncaughtFrozenStore(this)['delete'](key);
+ return data && $has(data, this._i) && delete data[this._i];
+ },
+ // 23.3.3.4 WeakMap.prototype.has(key)
+ // 23.4.3.4 WeakSet.prototype.has(value)
+ has: function has(key){
+ if(!isObject(key))return false;
+ var data = getWeak(key);
+ if(data === true)return uncaughtFrozenStore(this).has(key);
+ return data && $has(data, this._i);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ var data = getWeak(anObject(key), true);
+ if(data === true)uncaughtFrozenStore(that).set(key, value);
+ else data[that._i] = value;
+ return that;
+ },
+ ufstore: uncaughtFrozenStore
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_collection.js b/node_modules/core-js/modules/_collection.js
new file mode 100644
index 000000000..2b1834534
--- /dev/null
+++ b/node_modules/core-js/modules/_collection.js
@@ -0,0 +1,85 @@
+'use strict';
+var global = require('./_global')
+ , $export = require('./_export')
+ , redefine = require('./_redefine')
+ , redefineAll = require('./_redefine-all')
+ , meta = require('./_meta')
+ , forOf = require('./_for-of')
+ , anInstance = require('./_an-instance')
+ , isObject = require('./_is-object')
+ , fails = require('./_fails')
+ , $iterDetect = require('./_iter-detect')
+ , setToStringTag = require('./_set-to-string-tag')
+ , inheritIfRequired = require('./_inherit-if-required');
+
+module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
+ var Base = global[NAME]
+ , C = Base
+ , ADDER = IS_MAP ? 'set' : 'add'
+ , proto = C && C.prototype
+ , O = {};
+ var fixMethod = function(KEY){
+ var fn = proto[KEY];
+ redefine(proto, KEY,
+ KEY == 'delete' ? function(a){
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'has' ? function has(a){
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'get' ? function get(a){
+ return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'add' ? function add(a){ fn.call(this, a === 0 ? 0 : a); return this; }
+ : function set(a, b){ fn.call(this, a === 0 ? 0 : a, b); return this; }
+ );
+ };
+ if(typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
+ new C().entries().next();
+ }))){
+ // create collection constructor
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
+ redefineAll(C.prototype, methods);
+ meta.NEED = true;
+ } else {
+ var instance = new C
+ // early implementations not supports chaining
+ , HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance
+ // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
+ , THROWS_ON_PRIMITIVES = fails(function(){ instance.has(1); })
+ // most early implementations doesn't supports iterables, most modern - not close it correctly
+ , ACCEPT_ITERABLES = $iterDetect(function(iter){ new C(iter); }) // eslint-disable-line no-new
+ // for early implementations -0 and +0 not the same
+ , BUGGY_ZERO = !IS_WEAK && fails(function(){
+ // V8 ~ Chromium 42- fails only with 5+ elements
+ var $instance = new C()
+ , index = 5;
+ while(index--)$instance[ADDER](index, index);
+ return !$instance.has(-0);
+ });
+ if(!ACCEPT_ITERABLES){
+ C = wrapper(function(target, iterable){
+ anInstance(target, C, NAME);
+ var that = inheritIfRequired(new Base, target, C);
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ return that;
+ });
+ C.prototype = proto;
+ proto.constructor = C;
+ }
+ if(THROWS_ON_PRIMITIVES || BUGGY_ZERO){
+ fixMethod('delete');
+ fixMethod('has');
+ IS_MAP && fixMethod('get');
+ }
+ if(BUGGY_ZERO || HASNT_CHAINING)fixMethod(ADDER);
+ // weak collections should not contains .clear method
+ if(IS_WEAK && proto.clear)delete proto.clear;
+ }
+
+ setToStringTag(C, NAME);
+
+ O[NAME] = C;
+ $export($export.G + $export.W + $export.F * (C != Base), O);
+
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
+
+ return C;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_core.js b/node_modules/core-js/modules/_core.js
new file mode 100644
index 000000000..23d6aedeb
--- /dev/null
+++ b/node_modules/core-js/modules/_core.js
@@ -0,0 +1,2 @@
+var core = module.exports = {version: '2.4.0'};
+if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef \ No newline at end of file
diff --git a/node_modules/core-js/modules/_create-property.js b/node_modules/core-js/modules/_create-property.js
new file mode 100644
index 000000000..3d1bf7305
--- /dev/null
+++ b/node_modules/core-js/modules/_create-property.js
@@ -0,0 +1,8 @@
+'use strict';
+var $defineProperty = require('./_object-dp')
+ , createDesc = require('./_property-desc');
+
+module.exports = function(object, index, value){
+ if(index in object)$defineProperty.f(object, index, createDesc(0, value));
+ else object[index] = value;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_ctx.js b/node_modules/core-js/modules/_ctx.js
new file mode 100644
index 000000000..b52d85ff3
--- /dev/null
+++ b/node_modules/core-js/modules/_ctx.js
@@ -0,0 +1,20 @@
+// optional / simple context binding
+var aFunction = require('./_a-function');
+module.exports = function(fn, that, length){
+ aFunction(fn);
+ if(that === undefined)return fn;
+ switch(length){
+ case 1: return function(a){
+ return fn.call(that, a);
+ };
+ case 2: return function(a, b){
+ return fn.call(that, a, b);
+ };
+ case 3: return function(a, b, c){
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function(/* ...args */){
+ return fn.apply(that, arguments);
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_date-to-primitive.js b/node_modules/core-js/modules/_date-to-primitive.js
new file mode 100644
index 000000000..561079a1b
--- /dev/null
+++ b/node_modules/core-js/modules/_date-to-primitive.js
@@ -0,0 +1,9 @@
+'use strict';
+var anObject = require('./_an-object')
+ , toPrimitive = require('./_to-primitive')
+ , NUMBER = 'number';
+
+module.exports = function(hint){
+ if(hint !== 'string' && hint !== NUMBER && hint !== 'default')throw TypeError('Incorrect hint');
+ return toPrimitive(anObject(this), hint != NUMBER);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_defined.js b/node_modules/core-js/modules/_defined.js
new file mode 100644
index 000000000..cfa476b96
--- /dev/null
+++ b/node_modules/core-js/modules/_defined.js
@@ -0,0 +1,5 @@
+// 7.2.1 RequireObjectCoercible(argument)
+module.exports = function(it){
+ if(it == undefined)throw TypeError("Can't call method on " + it);
+ return it;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_descriptors.js b/node_modules/core-js/modules/_descriptors.js
new file mode 100644
index 000000000..6ccb7ee24
--- /dev/null
+++ b/node_modules/core-js/modules/_descriptors.js
@@ -0,0 +1,4 @@
+// Thank's IE8 for his funny defineProperty
+module.exports = !require('./_fails')(function(){
+ return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/_dom-create.js b/node_modules/core-js/modules/_dom-create.js
new file mode 100644
index 000000000..909b5ff05
--- /dev/null
+++ b/node_modules/core-js/modules/_dom-create.js
@@ -0,0 +1,7 @@
+var isObject = require('./_is-object')
+ , document = require('./_global').document
+ // in old IE typeof document.createElement is 'object'
+ , is = isObject(document) && isObject(document.createElement);
+module.exports = function(it){
+ return is ? document.createElement(it) : {};
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_entry-virtual.js b/node_modules/core-js/modules/_entry-virtual.js
new file mode 100644
index 000000000..0ec61272e
--- /dev/null
+++ b/node_modules/core-js/modules/_entry-virtual.js
@@ -0,0 +1,5 @@
+var core = require('./_core');
+module.exports = function(CONSTRUCTOR){
+ var C = core[CONSTRUCTOR];
+ return (C.virtual || C.prototype);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_enum-bug-keys.js b/node_modules/core-js/modules/_enum-bug-keys.js
new file mode 100644
index 000000000..928b9fb05
--- /dev/null
+++ b/node_modules/core-js/modules/_enum-bug-keys.js
@@ -0,0 +1,4 @@
+// IE 8- don't enum bug keys
+module.exports = (
+ 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
+).split(','); \ No newline at end of file
diff --git a/node_modules/core-js/modules/_enum-keys.js b/node_modules/core-js/modules/_enum-keys.js
new file mode 100644
index 000000000..3bf8069c1
--- /dev/null
+++ b/node_modules/core-js/modules/_enum-keys.js
@@ -0,0 +1,15 @@
+// all enumerable object keys, includes symbols
+var getKeys = require('./_object-keys')
+ , gOPS = require('./_object-gops')
+ , pIE = require('./_object-pie');
+module.exports = function(it){
+ var result = getKeys(it)
+ , getSymbols = gOPS.f;
+ if(getSymbols){
+ var symbols = getSymbols(it)
+ , isEnum = pIE.f
+ , i = 0
+ , key;
+ while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);
+ } return result;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_export.js b/node_modules/core-js/modules/_export.js
new file mode 100644
index 000000000..afddf3522
--- /dev/null
+++ b/node_modules/core-js/modules/_export.js
@@ -0,0 +1,43 @@
+var global = require('./_global')
+ , core = require('./_core')
+ , hide = require('./_hide')
+ , redefine = require('./_redefine')
+ , ctx = require('./_ctx')
+ , PROTOTYPE = 'prototype';
+
+var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {})
+ , key, own, out, exp;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && target[key] !== undefined;
+ // export native or passed
+ out = (own ? target : source)[key];
+ // bind timers to global for call from export context
+ exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ // extend global
+ if(target)redefine(target, key, out, type & $export.U);
+ // export
+ if(exports[key] != out)hide(exports, key, exp);
+ if(IS_PROTO && expProto[key] != out)expProto[key] = out;
+ }
+};
+global.core = core;
+// type bitmap
+$export.F = 1; // forced
+$export.G = 2; // global
+$export.S = 4; // static
+$export.P = 8; // proto
+$export.B = 16; // bind
+$export.W = 32; // wrap
+$export.U = 64; // safe
+$export.R = 128; // real proto method for `library`
+module.exports = $export; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_fails-is-regexp.js b/node_modules/core-js/modules/_fails-is-regexp.js
new file mode 100644
index 000000000..130436bf9
--- /dev/null
+++ b/node_modules/core-js/modules/_fails-is-regexp.js
@@ -0,0 +1,12 @@
+var MATCH = require('./_wks')('match');
+module.exports = function(KEY){
+ var re = /./;
+ try {
+ '/./'[KEY](re);
+ } catch(e){
+ try {
+ re[MATCH] = false;
+ return !'/./'[KEY](re);
+ } catch(f){ /* empty */ }
+ } return true;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_fails.js b/node_modules/core-js/modules/_fails.js
new file mode 100644
index 000000000..184e5ea84
--- /dev/null
+++ b/node_modules/core-js/modules/_fails.js
@@ -0,0 +1,7 @@
+module.exports = function(exec){
+ try {
+ return !!exec();
+ } catch(e){
+ return true;
+ }
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_fix-re-wks.js b/node_modules/core-js/modules/_fix-re-wks.js
new file mode 100644
index 000000000..d29368ce8
--- /dev/null
+++ b/node_modules/core-js/modules/_fix-re-wks.js
@@ -0,0 +1,28 @@
+'use strict';
+var hide = require('./_hide')
+ , redefine = require('./_redefine')
+ , fails = require('./_fails')
+ , defined = require('./_defined')
+ , wks = require('./_wks');
+
+module.exports = function(KEY, length, exec){
+ var SYMBOL = wks(KEY)
+ , fns = exec(defined, SYMBOL, ''[KEY])
+ , strfn = fns[0]
+ , rxfn = fns[1];
+ if(fails(function(){
+ var O = {};
+ O[SYMBOL] = function(){ return 7; };
+ return ''[KEY](O) != 7;
+ })){
+ redefine(String.prototype, KEY, strfn);
+ hide(RegExp.prototype, SYMBOL, length == 2
+ // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
+ // 21.2.5.11 RegExp.prototype[@@split](string, limit)
+ ? function(string, arg){ return rxfn.call(string, this, arg); }
+ // 21.2.5.6 RegExp.prototype[@@match](string)
+ // 21.2.5.9 RegExp.prototype[@@search](string)
+ : function(string){ return rxfn.call(string, this); }
+ );
+ }
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_flags.js b/node_modules/core-js/modules/_flags.js
new file mode 100644
index 000000000..054f90886
--- /dev/null
+++ b/node_modules/core-js/modules/_flags.js
@@ -0,0 +1,13 @@
+'use strict';
+// 21.2.5.3 get RegExp.prototype.flags
+var anObject = require('./_an-object');
+module.exports = function(){
+ var that = anObject(this)
+ , result = '';
+ if(that.global) result += 'g';
+ if(that.ignoreCase) result += 'i';
+ if(that.multiline) result += 'm';
+ if(that.unicode) result += 'u';
+ if(that.sticky) result += 'y';
+ return result;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_for-of.js b/node_modules/core-js/modules/_for-of.js
new file mode 100644
index 000000000..b4824fefa
--- /dev/null
+++ b/node_modules/core-js/modules/_for-of.js
@@ -0,0 +1,25 @@
+var ctx = require('./_ctx')
+ , call = require('./_iter-call')
+ , isArrayIter = require('./_is-array-iter')
+ , anObject = require('./_an-object')
+ , toLength = require('./_to-length')
+ , getIterFn = require('./core.get-iterator-method')
+ , BREAK = {}
+ , RETURN = {};
+var exports = module.exports = function(iterable, entries, fn, that, ITERATOR){
+ var iterFn = ITERATOR ? function(){ return iterable; } : getIterFn(iterable)
+ , f = ctx(fn, that, entries ? 2 : 1)
+ , index = 0
+ , length, step, iterator, result;
+ if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
+ // fast case for arrays with default iterator
+ if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
+ result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ if(result === BREAK || result === RETURN)return result;
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
+ result = call(iterator, f, step.value, entries);
+ if(result === BREAK || result === RETURN)return result;
+ }
+};
+exports.BREAK = BREAK;
+exports.RETURN = RETURN; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_global.js b/node_modules/core-js/modules/_global.js
new file mode 100644
index 000000000..df6efb476
--- /dev/null
+++ b/node_modules/core-js/modules/_global.js
@@ -0,0 +1,4 @@
+// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+var global = module.exports = typeof window != 'undefined' && window.Math == Math
+ ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
+if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef \ No newline at end of file
diff --git a/node_modules/core-js/modules/_has.js b/node_modules/core-js/modules/_has.js
new file mode 100644
index 000000000..870b40e71
--- /dev/null
+++ b/node_modules/core-js/modules/_has.js
@@ -0,0 +1,4 @@
+var hasOwnProperty = {}.hasOwnProperty;
+module.exports = function(it, key){
+ return hasOwnProperty.call(it, key);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_hide.js b/node_modules/core-js/modules/_hide.js
new file mode 100644
index 000000000..4031e8080
--- /dev/null
+++ b/node_modules/core-js/modules/_hide.js
@@ -0,0 +1,8 @@
+var dP = require('./_object-dp')
+ , createDesc = require('./_property-desc');
+module.exports = require('./_descriptors') ? function(object, key, value){
+ return dP.f(object, key, createDesc(1, value));
+} : function(object, key, value){
+ object[key] = value;
+ return object;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_html.js b/node_modules/core-js/modules/_html.js
new file mode 100644
index 000000000..98f5142c4
--- /dev/null
+++ b/node_modules/core-js/modules/_html.js
@@ -0,0 +1 @@
+module.exports = require('./_global').document && document.documentElement; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_ie8-dom-define.js b/node_modules/core-js/modules/_ie8-dom-define.js
new file mode 100644
index 000000000..18ffd59da
--- /dev/null
+++ b/node_modules/core-js/modules/_ie8-dom-define.js
@@ -0,0 +1,3 @@
+module.exports = !require('./_descriptors') && !require('./_fails')(function(){
+ return Object.defineProperty(require('./_dom-create')('div'), 'a', {get: function(){ return 7; }}).a != 7;
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/_inherit-if-required.js b/node_modules/core-js/modules/_inherit-if-required.js
new file mode 100644
index 000000000..d3948405b
--- /dev/null
+++ b/node_modules/core-js/modules/_inherit-if-required.js
@@ -0,0 +1,8 @@
+var isObject = require('./_is-object')
+ , setPrototypeOf = require('./_set-proto').set;
+module.exports = function(that, target, C){
+ var P, S = target.constructor;
+ if(S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf){
+ setPrototypeOf(that, P);
+ } return that;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_invoke.js b/node_modules/core-js/modules/_invoke.js
new file mode 100644
index 000000000..08e307fd0
--- /dev/null
+++ b/node_modules/core-js/modules/_invoke.js
@@ -0,0 +1,16 @@
+// fast apply, http://jsperf.lnkit.com/fast-apply/5
+module.exports = function(fn, args, that){
+ var un = that === undefined;
+ switch(args.length){
+ case 0: return un ? fn()
+ : fn.call(that);
+ case 1: return un ? fn(args[0])
+ : fn.call(that, args[0]);
+ case 2: return un ? fn(args[0], args[1])
+ : fn.call(that, args[0], args[1]);
+ case 3: return un ? fn(args[0], args[1], args[2])
+ : fn.call(that, args[0], args[1], args[2]);
+ case 4: return un ? fn(args[0], args[1], args[2], args[3])
+ : fn.call(that, args[0], args[1], args[2], args[3]);
+ } return fn.apply(that, args);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_iobject.js b/node_modules/core-js/modules/_iobject.js
new file mode 100644
index 000000000..b58db4897
--- /dev/null
+++ b/node_modules/core-js/modules/_iobject.js
@@ -0,0 +1,5 @@
+// fallback for non-array-like ES3 and non-enumerable old V8 strings
+var cof = require('./_cof');
+module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
+ return cof(it) == 'String' ? it.split('') : Object(it);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_is-array-iter.js b/node_modules/core-js/modules/_is-array-iter.js
new file mode 100644
index 000000000..8139d71c2
--- /dev/null
+++ b/node_modules/core-js/modules/_is-array-iter.js
@@ -0,0 +1,8 @@
+// check on default Array iterator
+var Iterators = require('./_iterators')
+ , ITERATOR = require('./_wks')('iterator')
+ , ArrayProto = Array.prototype;
+
+module.exports = function(it){
+ return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_is-array.js b/node_modules/core-js/modules/_is-array.js
new file mode 100644
index 000000000..b4a3a8ed8
--- /dev/null
+++ b/node_modules/core-js/modules/_is-array.js
@@ -0,0 +1,5 @@
+// 7.2.2 IsArray(argument)
+var cof = require('./_cof');
+module.exports = Array.isArray || function isArray(arg){
+ return cof(arg) == 'Array';
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_is-integer.js b/node_modules/core-js/modules/_is-integer.js
new file mode 100644
index 000000000..22db67edb
--- /dev/null
+++ b/node_modules/core-js/modules/_is-integer.js
@@ -0,0 +1,6 @@
+// 20.1.2.3 Number.isInteger(number)
+var isObject = require('./_is-object')
+ , floor = Math.floor;
+module.exports = function isInteger(it){
+ return !isObject(it) && isFinite(it) && floor(it) === it;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_is-object.js b/node_modules/core-js/modules/_is-object.js
new file mode 100644
index 000000000..ee694be2f
--- /dev/null
+++ b/node_modules/core-js/modules/_is-object.js
@@ -0,0 +1,3 @@
+module.exports = function(it){
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_is-regexp.js b/node_modules/core-js/modules/_is-regexp.js
new file mode 100644
index 000000000..55b2c629c
--- /dev/null
+++ b/node_modules/core-js/modules/_is-regexp.js
@@ -0,0 +1,8 @@
+// 7.2.8 IsRegExp(argument)
+var isObject = require('./_is-object')
+ , cof = require('./_cof')
+ , MATCH = require('./_wks')('match');
+module.exports = function(it){
+ var isRegExp;
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_iter-call.js b/node_modules/core-js/modules/_iter-call.js
new file mode 100644
index 000000000..e3565ba9f
--- /dev/null
+++ b/node_modules/core-js/modules/_iter-call.js
@@ -0,0 +1,12 @@
+// call something on iterator step with safe closing on error
+var anObject = require('./_an-object');
+module.exports = function(iterator, fn, value, entries){
+ try {
+ return entries ? fn(anObject(value)[0], value[1]) : fn(value);
+ // 7.4.6 IteratorClose(iterator, completion)
+ } catch(e){
+ var ret = iterator['return'];
+ if(ret !== undefined)anObject(ret.call(iterator));
+ throw e;
+ }
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_iter-create.js b/node_modules/core-js/modules/_iter-create.js
new file mode 100644
index 000000000..9a9aa4fbb
--- /dev/null
+++ b/node_modules/core-js/modules/_iter-create.js
@@ -0,0 +1,13 @@
+'use strict';
+var create = require('./_object-create')
+ , descriptor = require('./_property-desc')
+ , setToStringTag = require('./_set-to-string-tag')
+ , IteratorPrototype = {};
+
+// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+require('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function(){ return this; });
+
+module.exports = function(Constructor, NAME, next){
+ Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});
+ setToStringTag(Constructor, NAME + ' Iterator');
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_iter-define.js b/node_modules/core-js/modules/_iter-define.js
new file mode 100644
index 000000000..f72a50214
--- /dev/null
+++ b/node_modules/core-js/modules/_iter-define.js
@@ -0,0 +1,70 @@
+'use strict';
+var LIBRARY = require('./_library')
+ , $export = require('./_export')
+ , redefine = require('./_redefine')
+ , hide = require('./_hide')
+ , has = require('./_has')
+ , Iterators = require('./_iterators')
+ , $iterCreate = require('./_iter-create')
+ , setToStringTag = require('./_set-to-string-tag')
+ , getPrototypeOf = require('./_object-gpo')
+ , ITERATOR = require('./_wks')('iterator')
+ , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
+ , FF_ITERATOR = '@@iterator'
+ , KEYS = 'keys'
+ , VALUES = 'values';
+
+var returnThis = function(){ return this; };
+
+module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
+ $iterCreate(Constructor, NAME, next);
+ var getMethod = function(kind){
+ if(!BUGGY && kind in proto)return proto[kind];
+ switch(kind){
+ case KEYS: return function keys(){ return new Constructor(this, kind); };
+ case VALUES: return function values(){ return new Constructor(this, kind); };
+ } return function entries(){ return new Constructor(this, kind); };
+ };
+ var TAG = NAME + ' Iterator'
+ , DEF_VALUES = DEFAULT == VALUES
+ , VALUES_BUG = false
+ , proto = Base.prototype
+ , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
+ , $default = $native || getMethod(DEFAULT)
+ , $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined
+ , $anyNative = NAME == 'Array' ? proto.entries || $native : $native
+ , methods, key, IteratorPrototype;
+ // Fix native
+ if($anyNative){
+ IteratorPrototype = getPrototypeOf($anyNative.call(new Base));
+ if(IteratorPrototype !== Object.prototype){
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // fix for some old engines
+ if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
+ }
+ }
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if(DEF_VALUES && $native && $native.name !== VALUES){
+ VALUES_BUG = true;
+ $default = function values(){ return $native.call(this); };
+ }
+ // Define iterator
+ if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
+ hide(proto, ITERATOR, $default);
+ }
+ // Plug for library
+ Iterators[NAME] = $default;
+ Iterators[TAG] = returnThis;
+ if(DEFAULT){
+ methods = {
+ values: DEF_VALUES ? $default : getMethod(VALUES),
+ keys: IS_SET ? $default : getMethod(KEYS),
+ entries: $entries
+ };
+ if(FORCED)for(key in methods){
+ if(!(key in proto))redefine(proto, key, methods[key]);
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
+ }
+ return methods;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_iter-detect.js b/node_modules/core-js/modules/_iter-detect.js
new file mode 100644
index 000000000..87c7aecf4
--- /dev/null
+++ b/node_modules/core-js/modules/_iter-detect.js
@@ -0,0 +1,21 @@
+var ITERATOR = require('./_wks')('iterator')
+ , SAFE_CLOSING = false;
+
+try {
+ var riter = [7][ITERATOR]();
+ riter['return'] = function(){ SAFE_CLOSING = true; };
+ Array.from(riter, function(){ throw 2; });
+} catch(e){ /* empty */ }
+
+module.exports = function(exec, skipClosing){
+ if(!skipClosing && !SAFE_CLOSING)return false;
+ var safe = false;
+ try {
+ var arr = [7]
+ , iter = arr[ITERATOR]();
+ iter.next = function(){ return {done: safe = true}; };
+ arr[ITERATOR] = function(){ return iter; };
+ exec(arr);
+ } catch(e){ /* empty */ }
+ return safe;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_iter-step.js b/node_modules/core-js/modules/_iter-step.js
new file mode 100644
index 000000000..6ff0dc518
--- /dev/null
+++ b/node_modules/core-js/modules/_iter-step.js
@@ -0,0 +1,3 @@
+module.exports = function(done, value){
+ return {value: value, done: !!done};
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_iterators.js b/node_modules/core-js/modules/_iterators.js
new file mode 100644
index 000000000..a09954537
--- /dev/null
+++ b/node_modules/core-js/modules/_iterators.js
@@ -0,0 +1 @@
+module.exports = {}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_keyof.js b/node_modules/core-js/modules/_keyof.js
new file mode 100644
index 000000000..7b63229b0
--- /dev/null
+++ b/node_modules/core-js/modules/_keyof.js
@@ -0,0 +1,10 @@
+var getKeys = require('./_object-keys')
+ , toIObject = require('./_to-iobject');
+module.exports = function(object, el){
+ var O = toIObject(object)
+ , keys = getKeys(O)
+ , length = keys.length
+ , index = 0
+ , key;
+ while(length > index)if(O[key = keys[index++]] === el)return key;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_library.js b/node_modules/core-js/modules/_library.js
new file mode 100644
index 000000000..82e47dd52
--- /dev/null
+++ b/node_modules/core-js/modules/_library.js
@@ -0,0 +1 @@
+module.exports = false; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_math-expm1.js b/node_modules/core-js/modules/_math-expm1.js
new file mode 100644
index 000000000..5131aa951
--- /dev/null
+++ b/node_modules/core-js/modules/_math-expm1.js
@@ -0,0 +1,10 @@
+// 20.2.2.14 Math.expm1(x)
+var $expm1 = Math.expm1;
+module.exports = (!$expm1
+ // Old FF bug
+ || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168
+ // Tor Browser bug
+ || $expm1(-2e-17) != -2e-17
+) ? function expm1(x){
+ return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
+} : $expm1; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_math-log1p.js b/node_modules/core-js/modules/_math-log1p.js
new file mode 100644
index 000000000..a92bf463a
--- /dev/null
+++ b/node_modules/core-js/modules/_math-log1p.js
@@ -0,0 +1,4 @@
+// 20.2.2.20 Math.log1p(x)
+module.exports = Math.log1p || function log1p(x){
+ return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_math-sign.js b/node_modules/core-js/modules/_math-sign.js
new file mode 100644
index 000000000..a4848df60
--- /dev/null
+++ b/node_modules/core-js/modules/_math-sign.js
@@ -0,0 +1,4 @@
+// 20.2.2.28 Math.sign(x)
+module.exports = Math.sign || function sign(x){
+ return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_meta.js b/node_modules/core-js/modules/_meta.js
new file mode 100644
index 000000000..7daca0094
--- /dev/null
+++ b/node_modules/core-js/modules/_meta.js
@@ -0,0 +1,53 @@
+var META = require('./_uid')('meta')
+ , isObject = require('./_is-object')
+ , has = require('./_has')
+ , setDesc = require('./_object-dp').f
+ , id = 0;
+var isExtensible = Object.isExtensible || function(){
+ return true;
+};
+var FREEZE = !require('./_fails')(function(){
+ return isExtensible(Object.preventExtensions({}));
+});
+var setMeta = function(it){
+ setDesc(it, META, {value: {
+ i: 'O' + ++id, // object ID
+ w: {} // weak collections IDs
+ }});
+};
+var fastKey = function(it, create){
+ // return primitive with prefix
+ if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
+ if(!has(it, META)){
+ // can't set metadata to uncaught frozen object
+ if(!isExtensible(it))return 'F';
+ // not necessary to add metadata
+ if(!create)return 'E';
+ // add missing metadata
+ setMeta(it);
+ // return object ID
+ } return it[META].i;
+};
+var getWeak = function(it, create){
+ if(!has(it, META)){
+ // can't set metadata to uncaught frozen object
+ if(!isExtensible(it))return true;
+ // not necessary to add metadata
+ if(!create)return false;
+ // add missing metadata
+ setMeta(it);
+ // return hash weak collections IDs
+ } return it[META].w;
+};
+// add metadata on freeze-family methods calling
+var onFreeze = function(it){
+ if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);
+ return it;
+};
+var meta = module.exports = {
+ KEY: META,
+ NEED: false,
+ fastKey: fastKey,
+ getWeak: getWeak,
+ onFreeze: onFreeze
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_metadata.js b/node_modules/core-js/modules/_metadata.js
new file mode 100644
index 000000000..eb5a762d4
--- /dev/null
+++ b/node_modules/core-js/modules/_metadata.js
@@ -0,0 +1,51 @@
+var Map = require('./es6.map')
+ , $export = require('./_export')
+ , shared = require('./_shared')('metadata')
+ , store = shared.store || (shared.store = new (require('./es6.weak-map')));
+
+var getOrCreateMetadataMap = function(target, targetKey, create){
+ var targetMetadata = store.get(target);
+ if(!targetMetadata){
+ if(!create)return undefined;
+ store.set(target, targetMetadata = new Map);
+ }
+ var keyMetadata = targetMetadata.get(targetKey);
+ if(!keyMetadata){
+ if(!create)return undefined;
+ targetMetadata.set(targetKey, keyMetadata = new Map);
+ } return keyMetadata;
+};
+var ordinaryHasOwnMetadata = function(MetadataKey, O, P){
+ var metadataMap = getOrCreateMetadataMap(O, P, false);
+ return metadataMap === undefined ? false : metadataMap.has(MetadataKey);
+};
+var ordinaryGetOwnMetadata = function(MetadataKey, O, P){
+ var metadataMap = getOrCreateMetadataMap(O, P, false);
+ return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);
+};
+var ordinaryDefineOwnMetadata = function(MetadataKey, MetadataValue, O, P){
+ getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);
+};
+var ordinaryOwnMetadataKeys = function(target, targetKey){
+ var metadataMap = getOrCreateMetadataMap(target, targetKey, false)
+ , keys = [];
+ if(metadataMap)metadataMap.forEach(function(_, key){ keys.push(key); });
+ return keys;
+};
+var toMetaKey = function(it){
+ return it === undefined || typeof it == 'symbol' ? it : String(it);
+};
+var exp = function(O){
+ $export($export.S, 'Reflect', O);
+};
+
+module.exports = {
+ store: store,
+ map: getOrCreateMetadataMap,
+ has: ordinaryHasOwnMetadata,
+ get: ordinaryGetOwnMetadata,
+ set: ordinaryDefineOwnMetadata,
+ keys: ordinaryOwnMetadataKeys,
+ key: toMetaKey,
+ exp: exp
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_microtask.js b/node_modules/core-js/modules/_microtask.js
new file mode 100644
index 000000000..b0f2a0df0
--- /dev/null
+++ b/node_modules/core-js/modules/_microtask.js
@@ -0,0 +1,68 @@
+var global = require('./_global')
+ , macrotask = require('./_task').set
+ , Observer = global.MutationObserver || global.WebKitMutationObserver
+ , process = global.process
+ , Promise = global.Promise
+ , isNode = require('./_cof')(process) == 'process';
+
+module.exports = function(){
+ var head, last, notify;
+
+ var flush = function(){
+ var parent, fn;
+ if(isNode && (parent = process.domain))parent.exit();
+ while(head){
+ fn = head.fn;
+ head = head.next;
+ try {
+ fn();
+ } catch(e){
+ if(head)notify();
+ else last = undefined;
+ throw e;
+ }
+ } last = undefined;
+ if(parent)parent.enter();
+ };
+
+ // Node.js
+ if(isNode){
+ notify = function(){
+ process.nextTick(flush);
+ };
+ // browsers with MutationObserver
+ } else if(Observer){
+ var toggle = true
+ , node = document.createTextNode('');
+ new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
+ notify = function(){
+ node.data = toggle = !toggle;
+ };
+ // environments with maybe non-completely correct, but existent Promise
+ } else if(Promise && Promise.resolve){
+ var promise = Promise.resolve();
+ notify = function(){
+ promise.then(flush);
+ };
+ // for other environments - macrotask based on:
+ // - setImmediate
+ // - MessageChannel
+ // - window.postMessag
+ // - onreadystatechange
+ // - setTimeout
+ } else {
+ notify = function(){
+ // strange IE + webpack dev server bug - use .call(global)
+ macrotask.call(global, flush);
+ };
+ }
+
+ return function(fn){
+ var task = {fn: fn, next: undefined};
+ if(last)last.next = task;
+ if(!head){
+ head = task;
+ notify();
+ } last = task;
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-assign.js b/node_modules/core-js/modules/_object-assign.js
new file mode 100644
index 000000000..c575aba21
--- /dev/null
+++ b/node_modules/core-js/modules/_object-assign.js
@@ -0,0 +1,33 @@
+'use strict';
+// 19.1.2.1 Object.assign(target, source, ...)
+var getKeys = require('./_object-keys')
+ , gOPS = require('./_object-gops')
+ , pIE = require('./_object-pie')
+ , toObject = require('./_to-object')
+ , IObject = require('./_iobject')
+ , $assign = Object.assign;
+
+// should work with symbols and should have deterministic property order (V8 bug)
+module.exports = !$assign || require('./_fails')(function(){
+ var A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
+}) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , aLen = arguments.length
+ , index = 1
+ , getSymbols = gOPS.f
+ , isEnum = pIE.f;
+ while(aLen > index){
+ var S = IObject(arguments[index++])
+ , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
+ , length = keys.length
+ , j = 0
+ , key;
+ while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
+ } return T;
+} : $assign; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-create.js b/node_modules/core-js/modules/_object-create.js
new file mode 100644
index 000000000..3379760f9
--- /dev/null
+++ b/node_modules/core-js/modules/_object-create.js
@@ -0,0 +1,41 @@
+// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
+var anObject = require('./_an-object')
+ , dPs = require('./_object-dps')
+ , enumBugKeys = require('./_enum-bug-keys')
+ , IE_PROTO = require('./_shared-key')('IE_PROTO')
+ , Empty = function(){ /* empty */ }
+ , PROTOTYPE = 'prototype';
+
+// Create object with fake `null` prototype: use iframe Object with cleared prototype
+var createDict = function(){
+ // Thrash, waste and sodomy: IE GC bug
+ var iframe = require('./_dom-create')('iframe')
+ , i = enumBugKeys.length
+ , lt = '<'
+ , gt = '>'
+ , iframeDocument;
+ iframe.style.display = 'none';
+ require('./_html').appendChild(iframe);
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
+ // createDict = iframe.contentWindow.Object;
+ // html.removeChild(iframe);
+ iframeDocument = iframe.contentWindow.document;
+ iframeDocument.open();
+ iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
+ iframeDocument.close();
+ createDict = iframeDocument.F;
+ while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];
+ return createDict();
+};
+
+module.exports = Object.create || function create(O, Properties){
+ var result;
+ if(O !== null){
+ Empty[PROTOTYPE] = anObject(O);
+ result = new Empty;
+ Empty[PROTOTYPE] = null;
+ // add "__proto__" for Object.getPrototypeOf polyfill
+ result[IE_PROTO] = O;
+ } else result = createDict();
+ return Properties === undefined ? result : dPs(result, Properties);
+};
diff --git a/node_modules/core-js/modules/_object-define.js b/node_modules/core-js/modules/_object-define.js
new file mode 100644
index 000000000..f246c4e32
--- /dev/null
+++ b/node_modules/core-js/modules/_object-define.js
@@ -0,0 +1,12 @@
+var dP = require('./_object-dp')
+ , gOPD = require('./_object-gopd')
+ , ownKeys = require('./_own-keys')
+ , toIObject = require('./_to-iobject');
+
+module.exports = function define(target, mixin){
+ var keys = ownKeys(toIObject(mixin))
+ , length = keys.length
+ , i = 0, key;
+ while(length > i)dP.f(target, key = keys[i++], gOPD.f(mixin, key));
+ return target;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-dp.js b/node_modules/core-js/modules/_object-dp.js
new file mode 100644
index 000000000..e7ca8a463
--- /dev/null
+++ b/node_modules/core-js/modules/_object-dp.js
@@ -0,0 +1,16 @@
+var anObject = require('./_an-object')
+ , IE8_DOM_DEFINE = require('./_ie8-dom-define')
+ , toPrimitive = require('./_to-primitive')
+ , dP = Object.defineProperty;
+
+exports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes){
+ anObject(O);
+ P = toPrimitive(P, true);
+ anObject(Attributes);
+ if(IE8_DOM_DEFINE)try {
+ return dP(O, P, Attributes);
+ } catch(e){ /* empty */ }
+ if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
+ if('value' in Attributes)O[P] = Attributes.value;
+ return O;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-dps.js b/node_modules/core-js/modules/_object-dps.js
new file mode 100644
index 000000000..8cd4147ac
--- /dev/null
+++ b/node_modules/core-js/modules/_object-dps.js
@@ -0,0 +1,13 @@
+var dP = require('./_object-dp')
+ , anObject = require('./_an-object')
+ , getKeys = require('./_object-keys');
+
+module.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties){
+ anObject(O);
+ var keys = getKeys(Properties)
+ , length = keys.length
+ , i = 0
+ , P;
+ while(length > i)dP.f(O, P = keys[i++], Properties[P]);
+ return O;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-forced-pam.js b/node_modules/core-js/modules/_object-forced-pam.js
new file mode 100644
index 000000000..668a07dc2
--- /dev/null
+++ b/node_modules/core-js/modules/_object-forced-pam.js
@@ -0,0 +1,7 @@
+// Forced replacement prototype accessors methods
+module.exports = require('./_library')|| !require('./_fails')(function(){
+ var K = Math.random();
+ // In FF throws only define methods
+ __defineSetter__.call(null, K, function(){ /* empty */});
+ delete require('./_global')[K];
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-gopd.js b/node_modules/core-js/modules/_object-gopd.js
new file mode 100644
index 000000000..756206aba
--- /dev/null
+++ b/node_modules/core-js/modules/_object-gopd.js
@@ -0,0 +1,16 @@
+var pIE = require('./_object-pie')
+ , createDesc = require('./_property-desc')
+ , toIObject = require('./_to-iobject')
+ , toPrimitive = require('./_to-primitive')
+ , has = require('./_has')
+ , IE8_DOM_DEFINE = require('./_ie8-dom-define')
+ , gOPD = Object.getOwnPropertyDescriptor;
+
+exports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P){
+ O = toIObject(O);
+ P = toPrimitive(P, true);
+ if(IE8_DOM_DEFINE)try {
+ return gOPD(O, P);
+ } catch(e){ /* empty */ }
+ if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-gopn-ext.js b/node_modules/core-js/modules/_object-gopn-ext.js
new file mode 100644
index 000000000..f4d10b4a1
--- /dev/null
+++ b/node_modules/core-js/modules/_object-gopn-ext.js
@@ -0,0 +1,19 @@
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+var toIObject = require('./_to-iobject')
+ , gOPN = require('./_object-gopn').f
+ , toString = {}.toString;
+
+var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function(it){
+ try {
+ return gOPN(it);
+ } catch(e){
+ return windowNames.slice();
+ }
+};
+
+module.exports.f = function getOwnPropertyNames(it){
+ return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
+};
diff --git a/node_modules/core-js/modules/_object-gopn.js b/node_modules/core-js/modules/_object-gopn.js
new file mode 100644
index 000000000..beebf4dac
--- /dev/null
+++ b/node_modules/core-js/modules/_object-gopn.js
@@ -0,0 +1,7 @@
+// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
+var $keys = require('./_object-keys-internal')
+ , hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');
+
+exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O){
+ return $keys(O, hiddenKeys);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-gops.js b/node_modules/core-js/modules/_object-gops.js
new file mode 100644
index 000000000..8f93d76b1
--- /dev/null
+++ b/node_modules/core-js/modules/_object-gops.js
@@ -0,0 +1 @@
+exports.f = Object.getOwnPropertySymbols; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-gpo.js b/node_modules/core-js/modules/_object-gpo.js
new file mode 100644
index 000000000..535dc6e94
--- /dev/null
+++ b/node_modules/core-js/modules/_object-gpo.js
@@ -0,0 +1,13 @@
+// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
+var has = require('./_has')
+ , toObject = require('./_to-object')
+ , IE_PROTO = require('./_shared-key')('IE_PROTO')
+ , ObjectProto = Object.prototype;
+
+module.exports = Object.getPrototypeOf || function(O){
+ O = toObject(O);
+ if(has(O, IE_PROTO))return O[IE_PROTO];
+ if(typeof O.constructor == 'function' && O instanceof O.constructor){
+ return O.constructor.prototype;
+ } return O instanceof Object ? ObjectProto : null;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-keys-internal.js b/node_modules/core-js/modules/_object-keys-internal.js
new file mode 100644
index 000000000..e23481d7c
--- /dev/null
+++ b/node_modules/core-js/modules/_object-keys-internal.js
@@ -0,0 +1,17 @@
+var has = require('./_has')
+ , toIObject = require('./_to-iobject')
+ , arrayIndexOf = require('./_array-includes')(false)
+ , IE_PROTO = require('./_shared-key')('IE_PROTO');
+
+module.exports = function(object, names){
+ var O = toIObject(object)
+ , i = 0
+ , result = []
+ , key;
+ for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);
+ // Don't enum bug & hidden keys
+ while(names.length > i)if(has(O, key = names[i++])){
+ ~arrayIndexOf(result, key) || result.push(key);
+ }
+ return result;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-keys.js b/node_modules/core-js/modules/_object-keys.js
new file mode 100644
index 000000000..11d4cceed
--- /dev/null
+++ b/node_modules/core-js/modules/_object-keys.js
@@ -0,0 +1,7 @@
+// 19.1.2.14 / 15.2.3.14 Object.keys(O)
+var $keys = require('./_object-keys-internal')
+ , enumBugKeys = require('./_enum-bug-keys');
+
+module.exports = Object.keys || function keys(O){
+ return $keys(O, enumBugKeys);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-pie.js b/node_modules/core-js/modules/_object-pie.js
new file mode 100644
index 000000000..13479a171
--- /dev/null
+++ b/node_modules/core-js/modules/_object-pie.js
@@ -0,0 +1 @@
+exports.f = {}.propertyIsEnumerable; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-sap.js b/node_modules/core-js/modules/_object-sap.js
new file mode 100644
index 000000000..b76fec5f4
--- /dev/null
+++ b/node_modules/core-js/modules/_object-sap.js
@@ -0,0 +1,10 @@
+// most Object methods by ES6 should accept primitives
+var $export = require('./_export')
+ , core = require('./_core')
+ , fails = require('./_fails');
+module.exports = function(KEY, exec){
+ var fn = (core.Object || {})[KEY] || Object[KEY]
+ , exp = {};
+ exp[KEY] = exec(fn);
+ $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_object-to-array.js b/node_modules/core-js/modules/_object-to-array.js
new file mode 100644
index 000000000..b6fdf05d7
--- /dev/null
+++ b/node_modules/core-js/modules/_object-to-array.js
@@ -0,0 +1,16 @@
+var getKeys = require('./_object-keys')
+ , toIObject = require('./_to-iobject')
+ , isEnum = require('./_object-pie').f;
+module.exports = function(isEntries){
+ return function(it){
+ var O = toIObject(it)
+ , keys = getKeys(O)
+ , length = keys.length
+ , i = 0
+ , result = []
+ , key;
+ while(length > i)if(isEnum.call(O, key = keys[i++])){
+ result.push(isEntries ? [key, O[key]] : O[key]);
+ } return result;
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_own-keys.js b/node_modules/core-js/modules/_own-keys.js
new file mode 100644
index 000000000..045ce3d58
--- /dev/null
+++ b/node_modules/core-js/modules/_own-keys.js
@@ -0,0 +1,10 @@
+// all object keys, includes non-enumerable and symbols
+var gOPN = require('./_object-gopn')
+ , gOPS = require('./_object-gops')
+ , anObject = require('./_an-object')
+ , Reflect = require('./_global').Reflect;
+module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
+ var keys = gOPN.f(anObject(it))
+ , getSymbols = gOPS.f;
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_parse-float.js b/node_modules/core-js/modules/_parse-float.js
new file mode 100644
index 000000000..3d0e65312
--- /dev/null
+++ b/node_modules/core-js/modules/_parse-float.js
@@ -0,0 +1,8 @@
+var $parseFloat = require('./_global').parseFloat
+ , $trim = require('./_string-trim').trim;
+
+module.exports = 1 / $parseFloat(require('./_string-ws') + '-0') !== -Infinity ? function parseFloat(str){
+ var string = $trim(String(str), 3)
+ , result = $parseFloat(string);
+ return result === 0 && string.charAt(0) == '-' ? -0 : result;
+} : $parseFloat; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_parse-int.js b/node_modules/core-js/modules/_parse-int.js
new file mode 100644
index 000000000..c23ffc09c
--- /dev/null
+++ b/node_modules/core-js/modules/_parse-int.js
@@ -0,0 +1,9 @@
+var $parseInt = require('./_global').parseInt
+ , $trim = require('./_string-trim').trim
+ , ws = require('./_string-ws')
+ , hex = /^[\-+]?0[xX]/;
+
+module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix){
+ var string = $trim(String(str), 3);
+ return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
+} : $parseInt; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_partial.js b/node_modules/core-js/modules/_partial.js
new file mode 100644
index 000000000..3d411b705
--- /dev/null
+++ b/node_modules/core-js/modules/_partial.js
@@ -0,0 +1,23 @@
+'use strict';
+var path = require('./_path')
+ , invoke = require('./_invoke')
+ , aFunction = require('./_a-function');
+module.exports = function(/* ...pargs */){
+ var fn = aFunction(this)
+ , length = arguments.length
+ , pargs = Array(length)
+ , i = 0
+ , _ = path._
+ , holder = false;
+ while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true;
+ return function(/* ...args */){
+ var that = this
+ , aLen = arguments.length
+ , j = 0, k = 0, args;
+ if(!holder && !aLen)return invoke(fn, pargs, that);
+ args = pargs.slice();
+ if(holder)for(;length > j; j++)if(args[j] === _)args[j] = arguments[k++];
+ while(aLen > k)args.push(arguments[k++]);
+ return invoke(fn, args, that);
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_path.js b/node_modules/core-js/modules/_path.js
new file mode 100644
index 000000000..d63df9d4d
--- /dev/null
+++ b/node_modules/core-js/modules/_path.js
@@ -0,0 +1 @@
+module.exports = require('./_global'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/_property-desc.js b/node_modules/core-js/modules/_property-desc.js
new file mode 100644
index 000000000..e3f7ab2dc
--- /dev/null
+++ b/node_modules/core-js/modules/_property-desc.js
@@ -0,0 +1,8 @@
+module.exports = function(bitmap, value){
+ return {
+ enumerable : !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable : !(bitmap & 4),
+ value : value
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_redefine-all.js b/node_modules/core-js/modules/_redefine-all.js
new file mode 100644
index 000000000..ec1c5f765
--- /dev/null
+++ b/node_modules/core-js/modules/_redefine-all.js
@@ -0,0 +1,5 @@
+var redefine = require('./_redefine');
+module.exports = function(target, src, safe){
+ for(var key in src)redefine(target, key, src[key], safe);
+ return target;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_redefine.js b/node_modules/core-js/modules/_redefine.js
new file mode 100644
index 000000000..8e1bfe06c
--- /dev/null
+++ b/node_modules/core-js/modules/_redefine.js
@@ -0,0 +1,32 @@
+var global = require('./_global')
+ , hide = require('./_hide')
+ , has = require('./_has')
+ , SRC = require('./_uid')('src')
+ , TO_STRING = 'toString'
+ , $toString = Function[TO_STRING]
+ , TPL = ('' + $toString).split(TO_STRING);
+
+require('./_core').inspectSource = function(it){
+ return $toString.call(it);
+};
+
+(module.exports = function(O, key, val, safe){
+ var isFunction = typeof val == 'function';
+ if(isFunction)has(val, 'name') || hide(val, 'name', key);
+ if(O[key] === val)return;
+ if(isFunction)has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
+ if(O === global){
+ O[key] = val;
+ } else {
+ if(!safe){
+ delete O[key];
+ hide(O, key, val);
+ } else {
+ if(O[key])O[key] = val;
+ else hide(O, key, val);
+ }
+ }
+// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
+})(Function.prototype, TO_STRING, function toString(){
+ return typeof this == 'function' && this[SRC] || $toString.call(this);
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/_replacer.js b/node_modules/core-js/modules/_replacer.js
new file mode 100644
index 000000000..5360a3d35
--- /dev/null
+++ b/node_modules/core-js/modules/_replacer.js
@@ -0,0 +1,8 @@
+module.exports = function(regExp, replace){
+ var replacer = replace === Object(replace) ? function(part){
+ return replace[part];
+ } : replace;
+ return function(it){
+ return String(it).replace(regExp, replacer);
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_same-value.js b/node_modules/core-js/modules/_same-value.js
new file mode 100644
index 000000000..8c2b8c7f6
--- /dev/null
+++ b/node_modules/core-js/modules/_same-value.js
@@ -0,0 +1,4 @@
+// 7.2.9 SameValue(x, y)
+module.exports = Object.is || function is(x, y){
+ return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_set-proto.js b/node_modules/core-js/modules/_set-proto.js
new file mode 100644
index 000000000..8d5dad3fd
--- /dev/null
+++ b/node_modules/core-js/modules/_set-proto.js
@@ -0,0 +1,25 @@
+// Works with __proto__ only. Old v8 can't work with null proto objects.
+/* eslint-disable no-proto */
+var isObject = require('./_is-object')
+ , anObject = require('./_an-object');
+var check = function(O, proto){
+ anObject(O);
+ if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
+};
+module.exports = {
+ set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
+ function(test, buggy, set){
+ try {
+ set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);
+ set(test, []);
+ buggy = !(test instanceof Array);
+ } catch(e){ buggy = true; }
+ return function setPrototypeOf(O, proto){
+ check(O, proto);
+ if(buggy)O.__proto__ = proto;
+ else set(O, proto);
+ return O;
+ };
+ }({}, false) : undefined),
+ check: check
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_set-species.js b/node_modules/core-js/modules/_set-species.js
new file mode 100644
index 000000000..a21bd0395
--- /dev/null
+++ b/node_modules/core-js/modules/_set-species.js
@@ -0,0 +1,13 @@
+'use strict';
+var global = require('./_global')
+ , dP = require('./_object-dp')
+ , DESCRIPTORS = require('./_descriptors')
+ , SPECIES = require('./_wks')('species');
+
+module.exports = function(KEY){
+ var C = global[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])dP.f(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_set-to-string-tag.js b/node_modules/core-js/modules/_set-to-string-tag.js
new file mode 100644
index 000000000..ffbdddab8
--- /dev/null
+++ b/node_modules/core-js/modules/_set-to-string-tag.js
@@ -0,0 +1,7 @@
+var def = require('./_object-dp').f
+ , has = require('./_has')
+ , TAG = require('./_wks')('toStringTag');
+
+module.exports = function(it, tag, stat){
+ if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_shared-key.js b/node_modules/core-js/modules/_shared-key.js
new file mode 100644
index 000000000..5ed763496
--- /dev/null
+++ b/node_modules/core-js/modules/_shared-key.js
@@ -0,0 +1,5 @@
+var shared = require('./_shared')('keys')
+ , uid = require('./_uid');
+module.exports = function(key){
+ return shared[key] || (shared[key] = uid(key));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_shared.js b/node_modules/core-js/modules/_shared.js
new file mode 100644
index 000000000..3f9e4c891
--- /dev/null
+++ b/node_modules/core-js/modules/_shared.js
@@ -0,0 +1,6 @@
+var global = require('./_global')
+ , SHARED = '__core-js_shared__'
+ , store = global[SHARED] || (global[SHARED] = {});
+module.exports = function(key){
+ return store[key] || (store[key] = {});
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_species-constructor.js b/node_modules/core-js/modules/_species-constructor.js
new file mode 100644
index 000000000..7a4d1baf2
--- /dev/null
+++ b/node_modules/core-js/modules/_species-constructor.js
@@ -0,0 +1,8 @@
+// 7.3.20 SpeciesConstructor(O, defaultConstructor)
+var anObject = require('./_an-object')
+ , aFunction = require('./_a-function')
+ , SPECIES = require('./_wks')('species');
+module.exports = function(O, D){
+ var C = anObject(O).constructor, S;
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_strict-method.js b/node_modules/core-js/modules/_strict-method.js
new file mode 100644
index 000000000..96b6c6e8a
--- /dev/null
+++ b/node_modules/core-js/modules/_strict-method.js
@@ -0,0 +1,7 @@
+var fails = require('./_fails');
+
+module.exports = function(method, arg){
+ return !!method && fails(function(){
+ arg ? method.call(null, function(){}, 1) : method.call(null);
+ });
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_string-at.js b/node_modules/core-js/modules/_string-at.js
new file mode 100644
index 000000000..ecc0d21cb
--- /dev/null
+++ b/node_modules/core-js/modules/_string-at.js
@@ -0,0 +1,17 @@
+var toInteger = require('./_to-integer')
+ , defined = require('./_defined');
+// true -> String#at
+// false -> String#codePointAt
+module.exports = function(TO_STRING){
+ return function(that, pos){
+ var s = String(defined(that))
+ , i = toInteger(pos)
+ , l = s.length
+ , a, b;
+ if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
+ a = s.charCodeAt(i);
+ return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
+ ? TO_STRING ? s.charAt(i) : a
+ : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_string-context.js b/node_modules/core-js/modules/_string-context.js
new file mode 100644
index 000000000..5f513483f
--- /dev/null
+++ b/node_modules/core-js/modules/_string-context.js
@@ -0,0 +1,8 @@
+// helper for String#{startsWith, endsWith, includes}
+var isRegExp = require('./_is-regexp')
+ , defined = require('./_defined');
+
+module.exports = function(that, searchString, NAME){
+ if(isRegExp(searchString))throw TypeError('String#' + NAME + " doesn't accept regex!");
+ return String(defined(that));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_string-html.js b/node_modules/core-js/modules/_string-html.js
new file mode 100644
index 000000000..95daf8124
--- /dev/null
+++ b/node_modules/core-js/modules/_string-html.js
@@ -0,0 +1,19 @@
+var $export = require('./_export')
+ , fails = require('./_fails')
+ , defined = require('./_defined')
+ , quot = /"/g;
+// B.2.3.2.1 CreateHTML(string, tag, attribute, value)
+var createHTML = function(string, tag, attribute, value) {
+ var S = String(defined(string))
+ , p1 = '<' + tag;
+ if(attribute !== '')p1 += ' ' + attribute + '="' + String(value).replace(quot, '&quot;') + '"';
+ return p1 + '>' + S + '</' + tag + '>';
+};
+module.exports = function(NAME, exec){
+ var O = {};
+ O[NAME] = exec(createHTML);
+ $export($export.P + $export.F * fails(function(){
+ var test = ''[NAME]('"');
+ return test !== test.toLowerCase() || test.split('"').length > 3;
+ }), 'String', O);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_string-pad.js b/node_modules/core-js/modules/_string-pad.js
new file mode 100644
index 000000000..dccd155e8
--- /dev/null
+++ b/node_modules/core-js/modules/_string-pad.js
@@ -0,0 +1,16 @@
+// https://github.com/tc39/proposal-string-pad-start-end
+var toLength = require('./_to-length')
+ , repeat = require('./_string-repeat')
+ , defined = require('./_defined');
+
+module.exports = function(that, maxLength, fillString, left){
+ var S = String(defined(that))
+ , stringLength = S.length
+ , fillStr = fillString === undefined ? ' ' : String(fillString)
+ , intMaxLength = toLength(maxLength);
+ if(intMaxLength <= stringLength || fillStr == '')return S;
+ var fillLen = intMaxLength - stringLength
+ , stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));
+ if(stringFiller.length > fillLen)stringFiller = stringFiller.slice(0, fillLen);
+ return left ? stringFiller + S : S + stringFiller;
+};
diff --git a/node_modules/core-js/modules/_string-repeat.js b/node_modules/core-js/modules/_string-repeat.js
new file mode 100644
index 000000000..88fd3a2d7
--- /dev/null
+++ b/node_modules/core-js/modules/_string-repeat.js
@@ -0,0 +1,12 @@
+'use strict';
+var toInteger = require('./_to-integer')
+ , defined = require('./_defined');
+
+module.exports = function repeat(count){
+ var str = String(defined(this))
+ , res = ''
+ , n = toInteger(count);
+ if(n < 0 || n == Infinity)throw RangeError("Count can't be negative");
+ for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;
+ return res;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_string-trim.js b/node_modules/core-js/modules/_string-trim.js
new file mode 100644
index 000000000..d12de1ce4
--- /dev/null
+++ b/node_modules/core-js/modules/_string-trim.js
@@ -0,0 +1,30 @@
+var $export = require('./_export')
+ , defined = require('./_defined')
+ , fails = require('./_fails')
+ , spaces = require('./_string-ws')
+ , space = '[' + spaces + ']'
+ , non = '\u200b\u0085'
+ , ltrim = RegExp('^' + space + space + '*')
+ , rtrim = RegExp(space + space + '*$');
+
+var exporter = function(KEY, exec, ALIAS){
+ var exp = {};
+ var FORCE = fails(function(){
+ return !!spaces[KEY]() || non[KEY]() != non;
+ });
+ var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
+ if(ALIAS)exp[ALIAS] = fn;
+ $export($export.P + $export.F * FORCE, 'String', exp);
+};
+
+// 1 -> String#trimLeft
+// 2 -> String#trimRight
+// 3 -> String#trim
+var trim = exporter.trim = function(string, TYPE){
+ string = String(defined(string));
+ if(TYPE & 1)string = string.replace(ltrim, '');
+ if(TYPE & 2)string = string.replace(rtrim, '');
+ return string;
+};
+
+module.exports = exporter; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_string-ws.js b/node_modules/core-js/modules/_string-ws.js
new file mode 100644
index 000000000..9713d11db
--- /dev/null
+++ b/node_modules/core-js/modules/_string-ws.js
@@ -0,0 +1,2 @@
+module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
+ '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_task.js b/node_modules/core-js/modules/_task.js
new file mode 100644
index 000000000..06a73f40c
--- /dev/null
+++ b/node_modules/core-js/modules/_task.js
@@ -0,0 +1,75 @@
+var ctx = require('./_ctx')
+ , invoke = require('./_invoke')
+ , html = require('./_html')
+ , cel = require('./_dom-create')
+ , global = require('./_global')
+ , process = global.process
+ , setTask = global.setImmediate
+ , clearTask = global.clearImmediate
+ , MessageChannel = global.MessageChannel
+ , counter = 0
+ , queue = {}
+ , ONREADYSTATECHANGE = 'onreadystatechange'
+ , defer, channel, port;
+var run = function(){
+ var id = +this;
+ if(queue.hasOwnProperty(id)){
+ var fn = queue[id];
+ delete queue[id];
+ fn();
+ }
+};
+var listener = function(event){
+ run.call(event.data);
+};
+// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
+if(!setTask || !clearTask){
+ setTask = function setImmediate(fn){
+ var args = [], i = 1;
+ while(arguments.length > i)args.push(arguments[i++]);
+ queue[++counter] = function(){
+ invoke(typeof fn == 'function' ? fn : Function(fn), args);
+ };
+ defer(counter);
+ return counter;
+ };
+ clearTask = function clearImmediate(id){
+ delete queue[id];
+ };
+ // Node.js 0.8-
+ if(require('./_cof')(process) == 'process'){
+ defer = function(id){
+ process.nextTick(ctx(run, id, 1));
+ };
+ // Browsers with MessageChannel, includes WebWorkers
+ } else if(MessageChannel){
+ channel = new MessageChannel;
+ port = channel.port2;
+ channel.port1.onmessage = listener;
+ defer = ctx(port.postMessage, port, 1);
+ // Browsers with postMessage, skip WebWorkers
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
+ } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){
+ defer = function(id){
+ global.postMessage(id + '', '*');
+ };
+ global.addEventListener('message', listener, false);
+ // IE8-
+ } else if(ONREADYSTATECHANGE in cel('script')){
+ defer = function(id){
+ html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){
+ html.removeChild(this);
+ run.call(id);
+ };
+ };
+ // Rest old browsers
+ } else {
+ defer = function(id){
+ setTimeout(ctx(run, id, 1), 0);
+ };
+ }
+}
+module.exports = {
+ set: setTask,
+ clear: clearTask
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_to-index.js b/node_modules/core-js/modules/_to-index.js
new file mode 100644
index 000000000..4d380ce18
--- /dev/null
+++ b/node_modules/core-js/modules/_to-index.js
@@ -0,0 +1,7 @@
+var toInteger = require('./_to-integer')
+ , max = Math.max
+ , min = Math.min;
+module.exports = function(index, length){
+ index = toInteger(index);
+ return index < 0 ? max(index + length, 0) : min(index, length);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_to-integer.js b/node_modules/core-js/modules/_to-integer.js
new file mode 100644
index 000000000..f63baaff8
--- /dev/null
+++ b/node_modules/core-js/modules/_to-integer.js
@@ -0,0 +1,6 @@
+// 7.1.4 ToInteger
+var ceil = Math.ceil
+ , floor = Math.floor;
+module.exports = function(it){
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_to-iobject.js b/node_modules/core-js/modules/_to-iobject.js
new file mode 100644
index 000000000..4eb434620
--- /dev/null
+++ b/node_modules/core-js/modules/_to-iobject.js
@@ -0,0 +1,6 @@
+// to indexed object, toObject with fallback for non-array-like ES3 strings
+var IObject = require('./_iobject')
+ , defined = require('./_defined');
+module.exports = function(it){
+ return IObject(defined(it));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_to-length.js b/node_modules/core-js/modules/_to-length.js
new file mode 100644
index 000000000..4099e60b5
--- /dev/null
+++ b/node_modules/core-js/modules/_to-length.js
@@ -0,0 +1,6 @@
+// 7.1.15 ToLength
+var toInteger = require('./_to-integer')
+ , min = Math.min;
+module.exports = function(it){
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_to-object.js b/node_modules/core-js/modules/_to-object.js
new file mode 100644
index 000000000..f2c28b3fb
--- /dev/null
+++ b/node_modules/core-js/modules/_to-object.js
@@ -0,0 +1,5 @@
+// 7.1.13 ToObject(argument)
+var defined = require('./_defined');
+module.exports = function(it){
+ return Object(defined(it));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_to-primitive.js b/node_modules/core-js/modules/_to-primitive.js
new file mode 100644
index 000000000..16354eed6
--- /dev/null
+++ b/node_modules/core-js/modules/_to-primitive.js
@@ -0,0 +1,12 @@
+// 7.1.1 ToPrimitive(input [, PreferredType])
+var isObject = require('./_is-object');
+// instead of the ES6 spec version, we didn't implement @@toPrimitive case
+// and the second argument - flag - preferred type is a string
+module.exports = function(it, S){
+ if(!isObject(it))return it;
+ var fn, val;
+ if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ throw TypeError("Can't convert object to primitive value");
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_typed-array.js b/node_modules/core-js/modules/_typed-array.js
new file mode 100644
index 000000000..b072b23b0
--- /dev/null
+++ b/node_modules/core-js/modules/_typed-array.js
@@ -0,0 +1,479 @@
+'use strict';
+if(require('./_descriptors')){
+ var LIBRARY = require('./_library')
+ , global = require('./_global')
+ , fails = require('./_fails')
+ , $export = require('./_export')
+ , $typed = require('./_typed')
+ , $buffer = require('./_typed-buffer')
+ , ctx = require('./_ctx')
+ , anInstance = require('./_an-instance')
+ , propertyDesc = require('./_property-desc')
+ , hide = require('./_hide')
+ , redefineAll = require('./_redefine-all')
+ , toInteger = require('./_to-integer')
+ , toLength = require('./_to-length')
+ , toIndex = require('./_to-index')
+ , toPrimitive = require('./_to-primitive')
+ , has = require('./_has')
+ , same = require('./_same-value')
+ , classof = require('./_classof')
+ , isObject = require('./_is-object')
+ , toObject = require('./_to-object')
+ , isArrayIter = require('./_is-array-iter')
+ , create = require('./_object-create')
+ , getPrototypeOf = require('./_object-gpo')
+ , gOPN = require('./_object-gopn').f
+ , getIterFn = require('./core.get-iterator-method')
+ , uid = require('./_uid')
+ , wks = require('./_wks')
+ , createArrayMethod = require('./_array-methods')
+ , createArrayIncludes = require('./_array-includes')
+ , speciesConstructor = require('./_species-constructor')
+ , ArrayIterators = require('./es6.array.iterator')
+ , Iterators = require('./_iterators')
+ , $iterDetect = require('./_iter-detect')
+ , setSpecies = require('./_set-species')
+ , arrayFill = require('./_array-fill')
+ , arrayCopyWithin = require('./_array-copy-within')
+ , $DP = require('./_object-dp')
+ , $GOPD = require('./_object-gopd')
+ , dP = $DP.f
+ , gOPD = $GOPD.f
+ , RangeError = global.RangeError
+ , TypeError = global.TypeError
+ , Uint8Array = global.Uint8Array
+ , ARRAY_BUFFER = 'ArrayBuffer'
+ , SHARED_BUFFER = 'Shared' + ARRAY_BUFFER
+ , BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'
+ , PROTOTYPE = 'prototype'
+ , ArrayProto = Array[PROTOTYPE]
+ , $ArrayBuffer = $buffer.ArrayBuffer
+ , $DataView = $buffer.DataView
+ , arrayForEach = createArrayMethod(0)
+ , arrayFilter = createArrayMethod(2)
+ , arraySome = createArrayMethod(3)
+ , arrayEvery = createArrayMethod(4)
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , arrayIncludes = createArrayIncludes(true)
+ , arrayIndexOf = createArrayIncludes(false)
+ , arrayValues = ArrayIterators.values
+ , arrayKeys = ArrayIterators.keys
+ , arrayEntries = ArrayIterators.entries
+ , arrayLastIndexOf = ArrayProto.lastIndexOf
+ , arrayReduce = ArrayProto.reduce
+ , arrayReduceRight = ArrayProto.reduceRight
+ , arrayJoin = ArrayProto.join
+ , arraySort = ArrayProto.sort
+ , arraySlice = ArrayProto.slice
+ , arrayToString = ArrayProto.toString
+ , arrayToLocaleString = ArrayProto.toLocaleString
+ , ITERATOR = wks('iterator')
+ , TAG = wks('toStringTag')
+ , TYPED_CONSTRUCTOR = uid('typed_constructor')
+ , DEF_CONSTRUCTOR = uid('def_constructor')
+ , ALL_CONSTRUCTORS = $typed.CONSTR
+ , TYPED_ARRAY = $typed.TYPED
+ , VIEW = $typed.VIEW
+ , WRONG_LENGTH = 'Wrong length!';
+
+ var $map = createArrayMethod(1, function(O, length){
+ return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
+ });
+
+ var LITTLE_ENDIAN = fails(function(){
+ return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
+ });
+
+ var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function(){
+ new Uint8Array(1).set({});
+ });
+
+ var strictToLength = function(it, SAME){
+ if(it === undefined)throw TypeError(WRONG_LENGTH);
+ var number = +it
+ , length = toLength(it);
+ if(SAME && !same(number, length))throw RangeError(WRONG_LENGTH);
+ return length;
+ };
+
+ var toOffset = function(it, BYTES){
+ var offset = toInteger(it);
+ if(offset < 0 || offset % BYTES)throw RangeError('Wrong offset!');
+ return offset;
+ };
+
+ var validate = function(it){
+ if(isObject(it) && TYPED_ARRAY in it)return it;
+ throw TypeError(it + ' is not a typed array!');
+ };
+
+ var allocate = function(C, length){
+ if(!(isObject(C) && TYPED_CONSTRUCTOR in C)){
+ throw TypeError('It is not a typed array constructor!');
+ } return new C(length);
+ };
+
+ var speciesFromList = function(O, list){
+ return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);
+ };
+
+ var fromList = function(C, list){
+ var index = 0
+ , length = list.length
+ , result = allocate(C, length);
+ while(length > index)result[index] = list[index++];
+ return result;
+ };
+
+ var addGetter = function(it, key, internal){
+ dP(it, key, {get: function(){ return this._d[internal]; }});
+ };
+
+ var $from = function from(source /*, mapfn, thisArg */){
+ var O = toObject(source)
+ , aLen = arguments.length
+ , mapfn = aLen > 1 ? arguments[1] : undefined
+ , mapping = mapfn !== undefined
+ , iterFn = getIterFn(O)
+ , i, length, values, result, step, iterator;
+ if(iterFn != undefined && !isArrayIter(iterFn)){
+ for(iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++){
+ values.push(step.value);
+ } O = values;
+ }
+ if(mapping && aLen > 2)mapfn = ctx(mapfn, arguments[2], 2);
+ for(i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++){
+ result[i] = mapping ? mapfn(O[i], i) : O[i];
+ }
+ return result;
+ };
+
+ var $of = function of(/*...items*/){
+ var index = 0
+ , length = arguments.length
+ , result = allocate(this, length);
+ while(length > index)result[index] = arguments[index++];
+ return result;
+ };
+
+ // iOS Safari 6.x fails here
+ var TO_LOCALE_BUG = !!Uint8Array && fails(function(){ arrayToLocaleString.call(new Uint8Array(1)); });
+
+ var $toLocaleString = function toLocaleString(){
+ return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);
+ };
+
+ var proto = {
+ copyWithin: function copyWithin(target, start /*, end */){
+ return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ every: function every(callbackfn /*, thisArg */){
+ return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ fill: function fill(value /*, start, end */){ // eslint-disable-line no-unused-vars
+ return arrayFill.apply(validate(this), arguments);
+ },
+ filter: function filter(callbackfn /*, thisArg */){
+ return speciesFromList(this, arrayFilter(validate(this), callbackfn,
+ arguments.length > 1 ? arguments[1] : undefined));
+ },
+ find: function find(predicate /*, thisArg */){
+ return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ findIndex: function findIndex(predicate /*, thisArg */){
+ return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ forEach: function forEach(callbackfn /*, thisArg */){
+ arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ indexOf: function indexOf(searchElement /*, fromIndex */){
+ return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ includes: function includes(searchElement /*, fromIndex */){
+ return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ join: function join(separator){ // eslint-disable-line no-unused-vars
+ return arrayJoin.apply(validate(this), arguments);
+ },
+ lastIndexOf: function lastIndexOf(searchElement /*, fromIndex */){ // eslint-disable-line no-unused-vars
+ return arrayLastIndexOf.apply(validate(this), arguments);
+ },
+ map: function map(mapfn /*, thisArg */){
+ return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ reduce: function reduce(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
+ return arrayReduce.apply(validate(this), arguments);
+ },
+ reduceRight: function reduceRight(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
+ return arrayReduceRight.apply(validate(this), arguments);
+ },
+ reverse: function reverse(){
+ var that = this
+ , length = validate(that).length
+ , middle = Math.floor(length / 2)
+ , index = 0
+ , value;
+ while(index < middle){
+ value = that[index];
+ that[index++] = that[--length];
+ that[length] = value;
+ } return that;
+ },
+ some: function some(callbackfn /*, thisArg */){
+ return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ sort: function sort(comparefn){
+ return arraySort.call(validate(this), comparefn);
+ },
+ subarray: function subarray(begin, end){
+ var O = validate(this)
+ , length = O.length
+ , $begin = toIndex(begin, length);
+ return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
+ O.buffer,
+ O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
+ toLength((end === undefined ? length : toIndex(end, length)) - $begin)
+ );
+ }
+ };
+
+ var $slice = function slice(start, end){
+ return speciesFromList(this, arraySlice.call(validate(this), start, end));
+ };
+
+ var $set = function set(arrayLike /*, offset */){
+ validate(this);
+ var offset = toOffset(arguments[1], 1)
+ , length = this.length
+ , src = toObject(arrayLike)
+ , len = toLength(src.length)
+ , index = 0;
+ if(len + offset > length)throw RangeError(WRONG_LENGTH);
+ while(index < len)this[offset + index] = src[index++];
+ };
+
+ var $iterators = {
+ entries: function entries(){
+ return arrayEntries.call(validate(this));
+ },
+ keys: function keys(){
+ return arrayKeys.call(validate(this));
+ },
+ values: function values(){
+ return arrayValues.call(validate(this));
+ }
+ };
+
+ var isTAIndex = function(target, key){
+ return isObject(target)
+ && target[TYPED_ARRAY]
+ && typeof key != 'symbol'
+ && key in target
+ && String(+key) == String(key);
+ };
+ var $getDesc = function getOwnPropertyDescriptor(target, key){
+ return isTAIndex(target, key = toPrimitive(key, true))
+ ? propertyDesc(2, target[key])
+ : gOPD(target, key);
+ };
+ var $setDesc = function defineProperty(target, key, desc){
+ if(isTAIndex(target, key = toPrimitive(key, true))
+ && isObject(desc)
+ && has(desc, 'value')
+ && !has(desc, 'get')
+ && !has(desc, 'set')
+ // TODO: add validation descriptor w/o calling accessors
+ && !desc.configurable
+ && (!has(desc, 'writable') || desc.writable)
+ && (!has(desc, 'enumerable') || desc.enumerable)
+ ){
+ target[key] = desc.value;
+ return target;
+ } else return dP(target, key, desc);
+ };
+
+ if(!ALL_CONSTRUCTORS){
+ $GOPD.f = $getDesc;
+ $DP.f = $setDesc;
+ }
+
+ $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {
+ getOwnPropertyDescriptor: $getDesc,
+ defineProperty: $setDesc
+ });
+
+ if(fails(function(){ arrayToString.call({}); })){
+ arrayToString = arrayToLocaleString = function toString(){
+ return arrayJoin.call(this);
+ }
+ }
+
+ var $TypedArrayPrototype$ = redefineAll({}, proto);
+ redefineAll($TypedArrayPrototype$, $iterators);
+ hide($TypedArrayPrototype$, ITERATOR, $iterators.values);
+ redefineAll($TypedArrayPrototype$, {
+ slice: $slice,
+ set: $set,
+ constructor: function(){ /* noop */ },
+ toString: arrayToString,
+ toLocaleString: $toLocaleString
+ });
+ addGetter($TypedArrayPrototype$, 'buffer', 'b');
+ addGetter($TypedArrayPrototype$, 'byteOffset', 'o');
+ addGetter($TypedArrayPrototype$, 'byteLength', 'l');
+ addGetter($TypedArrayPrototype$, 'length', 'e');
+ dP($TypedArrayPrototype$, TAG, {
+ get: function(){ return this[TYPED_ARRAY]; }
+ });
+
+ module.exports = function(KEY, BYTES, wrapper, CLAMPED){
+ CLAMPED = !!CLAMPED;
+ var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'
+ , ISNT_UINT8 = NAME != 'Uint8Array'
+ , GETTER = 'get' + KEY
+ , SETTER = 'set' + KEY
+ , TypedArray = global[NAME]
+ , Base = TypedArray || {}
+ , TAC = TypedArray && getPrototypeOf(TypedArray)
+ , FORCED = !TypedArray || !$typed.ABV
+ , O = {}
+ , TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];
+ var getter = function(that, index){
+ var data = that._d;
+ return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
+ };
+ var setter = function(that, index, value){
+ var data = that._d;
+ if(CLAMPED)value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;
+ data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);
+ };
+ var addElement = function(that, index){
+ dP(that, index, {
+ get: function(){
+ return getter(this, index);
+ },
+ set: function(value){
+ return setter(this, index, value);
+ },
+ enumerable: true
+ });
+ };
+ if(FORCED){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ anInstance(that, TypedArray, NAME, '_d');
+ var index = 0
+ , offset = 0
+ , buffer, byteLength, length, klass;
+ if(!isObject(data)){
+ length = strictToLength(data, true)
+ byteLength = length * BYTES;
+ buffer = new $ArrayBuffer(byteLength);
+ } else if(data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER){
+ buffer = data;
+ offset = toOffset($offset, BYTES);
+ var $len = data.byteLength;
+ if($length === undefined){
+ if($len % BYTES)throw RangeError(WRONG_LENGTH);
+ byteLength = $len - offset;
+ if(byteLength < 0)throw RangeError(WRONG_LENGTH);
+ } else {
+ byteLength = toLength($length) * BYTES;
+ if(byteLength + offset > $len)throw RangeError(WRONG_LENGTH);
+ }
+ length = byteLength / BYTES;
+ } else if(TYPED_ARRAY in data){
+ return fromList(TypedArray, data);
+ } else {
+ return $from.call(TypedArray, data);
+ }
+ hide(that, '_d', {
+ b: buffer,
+ o: offset,
+ l: byteLength,
+ e: length,
+ v: new $DataView(buffer)
+ });
+ while(index < length)addElement(that, index++);
+ });
+ TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);
+ hide(TypedArrayPrototype, 'constructor', TypedArray);
+ } else if(!$iterDetect(function(iter){
+ // V8 works with iterators, but fails in many other cases
+ // https://code.google.com/p/v8/issues/detail?id=4552
+ new TypedArray(null); // eslint-disable-line no-new
+ new TypedArray(iter); // eslint-disable-line no-new
+ }, true)){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ anInstance(that, TypedArray, NAME);
+ var klass;
+ // `ws` module bug, temporarily remove validation length for Uint8Array
+ // https://github.com/websockets/ws/pull/645
+ if(!isObject(data))return new Base(strictToLength(data, ISNT_UINT8));
+ if(data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER){
+ return $length !== undefined
+ ? new Base(data, toOffset($offset, BYTES), $length)
+ : $offset !== undefined
+ ? new Base(data, toOffset($offset, BYTES))
+ : new Base(data);
+ }
+ if(TYPED_ARRAY in data)return fromList(TypedArray, data);
+ return $from.call(TypedArray, data);
+ });
+ arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function(key){
+ if(!(key in TypedArray))hide(TypedArray, key, Base[key]);
+ });
+ TypedArray[PROTOTYPE] = TypedArrayPrototype;
+ if(!LIBRARY)TypedArrayPrototype.constructor = TypedArray;
+ }
+ var $nativeIterator = TypedArrayPrototype[ITERATOR]
+ , CORRECT_ITER_NAME = !!$nativeIterator && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined)
+ , $iterator = $iterators.values;
+ hide(TypedArray, TYPED_CONSTRUCTOR, true);
+ hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
+ hide(TypedArrayPrototype, VIEW, true);
+ hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
+
+ if(CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)){
+ dP(TypedArrayPrototype, TAG, {
+ get: function(){ return NAME; }
+ });
+ }
+
+ O[NAME] = TypedArray;
+
+ $export($export.G + $export.W + $export.F * (TypedArray != Base), O);
+
+ $export($export.S, NAME, {
+ BYTES_PER_ELEMENT: BYTES,
+ from: $from,
+ of: $of
+ });
+
+ if(!(BYTES_PER_ELEMENT in TypedArrayPrototype))hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);
+
+ $export($export.P, NAME, proto);
+
+ setSpecies(NAME);
+
+ $export($export.P + $export.F * FORCED_SET, NAME, {set: $set});
+
+ $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);
+
+ $export($export.P + $export.F * (TypedArrayPrototype.toString != arrayToString), NAME, {toString: arrayToString});
+
+ $export($export.P + $export.F * fails(function(){
+ new TypedArray(1).slice();
+ }), NAME, {slice: $slice});
+
+ $export($export.P + $export.F * (fails(function(){
+ return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString()
+ }) || !fails(function(){
+ TypedArrayPrototype.toLocaleString.call([1, 2]);
+ })), NAME, {toLocaleString: $toLocaleString});
+
+ Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;
+ if(!LIBRARY && !CORRECT_ITER_NAME)hide(TypedArrayPrototype, ITERATOR, $iterator);
+ };
+} else module.exports = function(){ /* empty */ }; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_typed-buffer.js b/node_modules/core-js/modules/_typed-buffer.js
new file mode 100644
index 000000000..2129eea40
--- /dev/null
+++ b/node_modules/core-js/modules/_typed-buffer.js
@@ -0,0 +1,273 @@
+'use strict';
+var global = require('./_global')
+ , DESCRIPTORS = require('./_descriptors')
+ , LIBRARY = require('./_library')
+ , $typed = require('./_typed')
+ , hide = require('./_hide')
+ , redefineAll = require('./_redefine-all')
+ , fails = require('./_fails')
+ , anInstance = require('./_an-instance')
+ , toInteger = require('./_to-integer')
+ , toLength = require('./_to-length')
+ , gOPN = require('./_object-gopn').f
+ , dP = require('./_object-dp').f
+ , arrayFill = require('./_array-fill')
+ , setToStringTag = require('./_set-to-string-tag')
+ , ARRAY_BUFFER = 'ArrayBuffer'
+ , DATA_VIEW = 'DataView'
+ , PROTOTYPE = 'prototype'
+ , WRONG_LENGTH = 'Wrong length!'
+ , WRONG_INDEX = 'Wrong index!'
+ , $ArrayBuffer = global[ARRAY_BUFFER]
+ , $DataView = global[DATA_VIEW]
+ , Math = global.Math
+ , RangeError = global.RangeError
+ , Infinity = global.Infinity
+ , BaseBuffer = $ArrayBuffer
+ , abs = Math.abs
+ , pow = Math.pow
+ , floor = Math.floor
+ , log = Math.log
+ , LN2 = Math.LN2
+ , BUFFER = 'buffer'
+ , BYTE_LENGTH = 'byteLength'
+ , BYTE_OFFSET = 'byteOffset'
+ , $BUFFER = DESCRIPTORS ? '_b' : BUFFER
+ , $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH
+ , $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;
+
+// IEEE754 conversions based on https://github.com/feross/ieee754
+var packIEEE754 = function(value, mLen, nBytes){
+ var buffer = Array(nBytes)
+ , eLen = nBytes * 8 - mLen - 1
+ , eMax = (1 << eLen) - 1
+ , eBias = eMax >> 1
+ , rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0
+ , i = 0
+ , s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0
+ , e, m, c;
+ value = abs(value)
+ if(value != value || value === Infinity){
+ m = value != value ? 1 : 0;
+ e = eMax;
+ } else {
+ e = floor(log(value) / LN2);
+ if(value * (c = pow(2, -e)) < 1){
+ e--;
+ c *= 2;
+ }
+ if(e + eBias >= 1){
+ value += rt / c;
+ } else {
+ value += rt * pow(2, 1 - eBias);
+ }
+ if(value * c >= 2){
+ e++;
+ c /= 2;
+ }
+ if(e + eBias >= eMax){
+ m = 0;
+ e = eMax;
+ } else if(e + eBias >= 1){
+ m = (value * c - 1) * pow(2, mLen);
+ e = e + eBias;
+ } else {
+ m = value * pow(2, eBias - 1) * pow(2, mLen);
+ e = 0;
+ }
+ }
+ for(; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);
+ e = e << mLen | m;
+ eLen += mLen;
+ for(; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);
+ buffer[--i] |= s * 128;
+ return buffer;
+};
+var unpackIEEE754 = function(buffer, mLen, nBytes){
+ var eLen = nBytes * 8 - mLen - 1
+ , eMax = (1 << eLen) - 1
+ , eBias = eMax >> 1
+ , nBits = eLen - 7
+ , i = nBytes - 1
+ , s = buffer[i--]
+ , e = s & 127
+ , m;
+ s >>= 7;
+ for(; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);
+ m = e & (1 << -nBits) - 1;
+ e >>= -nBits;
+ nBits += mLen;
+ for(; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);
+ if(e === 0){
+ e = 1 - eBias;
+ } else if(e === eMax){
+ return m ? NaN : s ? -Infinity : Infinity;
+ } else {
+ m = m + pow(2, mLen);
+ e = e - eBias;
+ } return (s ? -1 : 1) * m * pow(2, e - mLen);
+};
+
+var unpackI32 = function(bytes){
+ return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];
+};
+var packI8 = function(it){
+ return [it & 0xff];
+};
+var packI16 = function(it){
+ return [it & 0xff, it >> 8 & 0xff];
+};
+var packI32 = function(it){
+ return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];
+};
+var packF64 = function(it){
+ return packIEEE754(it, 52, 8);
+};
+var packF32 = function(it){
+ return packIEEE754(it, 23, 4);
+};
+
+var addGetter = function(C, key, internal){
+ dP(C[PROTOTYPE], key, {get: function(){ return this[internal]; }});
+};
+
+var get = function(view, bytes, index, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view[$LENGTH])throw RangeError(WRONG_INDEX);
+ var store = view[$BUFFER]._b
+ , start = intIndex + view[$OFFSET]
+ , pack = store.slice(start, start + bytes);
+ return isLittleEndian ? pack : pack.reverse();
+};
+var set = function(view, bytes, index, conversion, value, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view[$LENGTH])throw RangeError(WRONG_INDEX);
+ var store = view[$BUFFER]._b
+ , start = intIndex + view[$OFFSET]
+ , pack = conversion(+value);
+ for(var i = 0; i < bytes; i++)store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];
+};
+
+var validateArrayBufferArguments = function(that, length){
+ anInstance(that, $ArrayBuffer, ARRAY_BUFFER);
+ var numberLength = +length
+ , byteLength = toLength(numberLength);
+ if(numberLength != byteLength)throw RangeError(WRONG_LENGTH);
+ return byteLength;
+};
+
+if(!$typed.ABV){
+ $ArrayBuffer = function ArrayBuffer(length){
+ var byteLength = validateArrayBufferArguments(this, length);
+ this._b = arrayFill.call(Array(byteLength), 0);
+ this[$LENGTH] = byteLength;
+ };
+
+ $DataView = function DataView(buffer, byteOffset, byteLength){
+ anInstance(this, $DataView, DATA_VIEW);
+ anInstance(buffer, $ArrayBuffer, DATA_VIEW);
+ var bufferLength = buffer[$LENGTH]
+ , offset = toInteger(byteOffset);
+ if(offset < 0 || offset > bufferLength)throw RangeError('Wrong offset!');
+ byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
+ if(offset + byteLength > bufferLength)throw RangeError(WRONG_LENGTH);
+ this[$BUFFER] = buffer;
+ this[$OFFSET] = offset;
+ this[$LENGTH] = byteLength;
+ };
+
+ if(DESCRIPTORS){
+ addGetter($ArrayBuffer, BYTE_LENGTH, '_l');
+ addGetter($DataView, BUFFER, '_b');
+ addGetter($DataView, BYTE_LENGTH, '_l');
+ addGetter($DataView, BYTE_OFFSET, '_o');
+ }
+
+ redefineAll($DataView[PROTOTYPE], {
+ getInt8: function getInt8(byteOffset){
+ return get(this, 1, byteOffset)[0] << 24 >> 24;
+ },
+ getUint8: function getUint8(byteOffset){
+ return get(this, 1, byteOffset)[0];
+ },
+ getInt16: function getInt16(byteOffset /*, littleEndian */){
+ var bytes = get(this, 2, byteOffset, arguments[1]);
+ return (bytes[1] << 8 | bytes[0]) << 16 >> 16;
+ },
+ getUint16: function getUint16(byteOffset /*, littleEndian */){
+ var bytes = get(this, 2, byteOffset, arguments[1]);
+ return bytes[1] << 8 | bytes[0];
+ },
+ getInt32: function getInt32(byteOffset /*, littleEndian */){
+ return unpackI32(get(this, 4, byteOffset, arguments[1]));
+ },
+ getUint32: function getUint32(byteOffset /*, littleEndian */){
+ return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;
+ },
+ getFloat32: function getFloat32(byteOffset /*, littleEndian */){
+ return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);
+ },
+ getFloat64: function getFloat64(byteOffset /*, littleEndian */){
+ return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);
+ },
+ setInt8: function setInt8(byteOffset, value){
+ set(this, 1, byteOffset, packI8, value);
+ },
+ setUint8: function setUint8(byteOffset, value){
+ set(this, 1, byteOffset, packI8, value);
+ },
+ setInt16: function setInt16(byteOffset, value /*, littleEndian */){
+ set(this, 2, byteOffset, packI16, value, arguments[2]);
+ },
+ setUint16: function setUint16(byteOffset, value /*, littleEndian */){
+ set(this, 2, byteOffset, packI16, value, arguments[2]);
+ },
+ setInt32: function setInt32(byteOffset, value /*, littleEndian */){
+ set(this, 4, byteOffset, packI32, value, arguments[2]);
+ },
+ setUint32: function setUint32(byteOffset, value /*, littleEndian */){
+ set(this, 4, byteOffset, packI32, value, arguments[2]);
+ },
+ setFloat32: function setFloat32(byteOffset, value /*, littleEndian */){
+ set(this, 4, byteOffset, packF32, value, arguments[2]);
+ },
+ setFloat64: function setFloat64(byteOffset, value /*, littleEndian */){
+ set(this, 8, byteOffset, packF64, value, arguments[2]);
+ }
+ });
+} else {
+ if(!fails(function(){
+ new $ArrayBuffer; // eslint-disable-line no-new
+ }) || !fails(function(){
+ new $ArrayBuffer(.5); // eslint-disable-line no-new
+ })){
+ $ArrayBuffer = function ArrayBuffer(length){
+ return new BaseBuffer(validateArrayBufferArguments(this, length));
+ };
+ var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];
+ for(var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j; ){
+ if(!((key = keys[j++]) in $ArrayBuffer))hide($ArrayBuffer, key, BaseBuffer[key]);
+ };
+ if(!LIBRARY)ArrayBufferProto.constructor = $ArrayBuffer;
+ }
+ // iOS Safari 7.x bug
+ var view = new $DataView(new $ArrayBuffer(2))
+ , $setInt8 = $DataView[PROTOTYPE].setInt8;
+ view.setInt8(0, 2147483648);
+ view.setInt8(1, 2147483649);
+ if(view.getInt8(0) || !view.getInt8(1))redefineAll($DataView[PROTOTYPE], {
+ setInt8: function setInt8(byteOffset, value){
+ $setInt8.call(this, byteOffset, value << 24 >> 24);
+ },
+ setUint8: function setUint8(byteOffset, value){
+ $setInt8.call(this, byteOffset, value << 24 >> 24);
+ }
+ }, true);
+}
+setToStringTag($ArrayBuffer, ARRAY_BUFFER);
+setToStringTag($DataView, DATA_VIEW);
+hide($DataView[PROTOTYPE], $typed.VIEW, true);
+exports[ARRAY_BUFFER] = $ArrayBuffer;
+exports[DATA_VIEW] = $DataView; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_typed.js b/node_modules/core-js/modules/_typed.js
new file mode 100644
index 000000000..6ed2ab56d
--- /dev/null
+++ b/node_modules/core-js/modules/_typed.js
@@ -0,0 +1,26 @@
+var global = require('./_global')
+ , hide = require('./_hide')
+ , uid = require('./_uid')
+ , TYPED = uid('typed_array')
+ , VIEW = uid('view')
+ , ABV = !!(global.ArrayBuffer && global.DataView)
+ , CONSTR = ABV
+ , i = 0, l = 9, Typed;
+
+var TypedArrayConstructors = (
+ 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'
+).split(',');
+
+while(i < l){
+ if(Typed = global[TypedArrayConstructors[i++]]){
+ hide(Typed.prototype, TYPED, true);
+ hide(Typed.prototype, VIEW, true);
+ } else CONSTR = false;
+}
+
+module.exports = {
+ ABV: ABV,
+ CONSTR: CONSTR,
+ TYPED: TYPED,
+ VIEW: VIEW
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_uid.js b/node_modules/core-js/modules/_uid.js
new file mode 100644
index 000000000..3be4196bb
--- /dev/null
+++ b/node_modules/core-js/modules/_uid.js
@@ -0,0 +1,5 @@
+var id = 0
+ , px = Math.random();
+module.exports = function(key){
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_wks-define.js b/node_modules/core-js/modules/_wks-define.js
new file mode 100644
index 000000000..e69603286
--- /dev/null
+++ b/node_modules/core-js/modules/_wks-define.js
@@ -0,0 +1,9 @@
+var global = require('./_global')
+ , core = require('./_core')
+ , LIBRARY = require('./_library')
+ , wksExt = require('./_wks-ext')
+ , defineProperty = require('./_object-dp').f;
+module.exports = function(name){
+ var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
+ if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)});
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/_wks-ext.js b/node_modules/core-js/modules/_wks-ext.js
new file mode 100644
index 000000000..7901def62
--- /dev/null
+++ b/node_modules/core-js/modules/_wks-ext.js
@@ -0,0 +1 @@
+exports.f = require('./_wks'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/_wks.js b/node_modules/core-js/modules/_wks.js
new file mode 100644
index 000000000..36f7973ae
--- /dev/null
+++ b/node_modules/core-js/modules/_wks.js
@@ -0,0 +1,11 @@
+var store = require('./_shared')('wks')
+ , uid = require('./_uid')
+ , Symbol = require('./_global').Symbol
+ , USE_SYMBOL = typeof Symbol == 'function';
+
+var $exports = module.exports = function(name){
+ return store[name] || (store[name] =
+ USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
+};
+
+$exports.store = store; \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.delay.js b/node_modules/core-js/modules/core.delay.js
new file mode 100644
index 000000000..ea031be4a
--- /dev/null
+++ b/node_modules/core-js/modules/core.delay.js
@@ -0,0 +1,12 @@
+var global = require('./_global')
+ , core = require('./_core')
+ , $export = require('./_export')
+ , partial = require('./_partial');
+// https://esdiscuss.org/topic/promise-returning-delay-function
+$export($export.G + $export.F, {
+ delay: function delay(time){
+ return new (core.Promise || global.Promise)(function(resolve){
+ setTimeout(partial.call(resolve, true), time);
+ });
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.dict.js b/node_modules/core-js/modules/core.dict.js
new file mode 100644
index 000000000..88c54e3d7
--- /dev/null
+++ b/node_modules/core-js/modules/core.dict.js
@@ -0,0 +1,155 @@
+'use strict';
+var ctx = require('./_ctx')
+ , $export = require('./_export')
+ , createDesc = require('./_property-desc')
+ , assign = require('./_object-assign')
+ , create = require('./_object-create')
+ , getPrototypeOf = require('./_object-gpo')
+ , getKeys = require('./_object-keys')
+ , dP = require('./_object-dp')
+ , keyOf = require('./_keyof')
+ , aFunction = require('./_a-function')
+ , forOf = require('./_for-of')
+ , isIterable = require('./core.is-iterable')
+ , $iterCreate = require('./_iter-create')
+ , step = require('./_iter-step')
+ , isObject = require('./_is-object')
+ , toIObject = require('./_to-iobject')
+ , DESCRIPTORS = require('./_descriptors')
+ , has = require('./_has');
+
+// 0 -> Dict.forEach
+// 1 -> Dict.map
+// 2 -> Dict.filter
+// 3 -> Dict.some
+// 4 -> Dict.every
+// 5 -> Dict.find
+// 6 -> Dict.findKey
+// 7 -> Dict.mapPairs
+var createDictMethod = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_EVERY = TYPE == 4;
+ return function(object, callbackfn, that /* = undefined */){
+ var f = ctx(callbackfn, that, 3)
+ , O = toIObject(object)
+ , result = IS_MAP || TYPE == 7 || TYPE == 2
+ ? new (typeof this == 'function' ? this : Dict) : undefined
+ , key, val, res;
+ for(key in O)if(has(O, key)){
+ val = O[key];
+ res = f(val, key, object);
+ if(TYPE){
+ if(IS_MAP)result[key] = res; // map
+ else if(res)switch(TYPE){
+ case 2: result[key] = val; break; // filter
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return key; // findKey
+ case 7: result[res[0]] = res[1]; // mapPairs
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return TYPE == 3 || IS_EVERY ? IS_EVERY : result;
+ };
+};
+var findKey = createDictMethod(6);
+
+var createDictIter = function(kind){
+ return function(it){
+ return new DictIterator(it, kind);
+ };
+};
+var DictIterator = function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._a = getKeys(iterated); // keys
+ this._i = 0; // next index
+ this._k = kind; // kind
+};
+$iterCreate(DictIterator, 'Dict', function(){
+ var that = this
+ , O = that._t
+ , keys = that._a
+ , kind = that._k
+ , key;
+ do {
+ if(that._i >= keys.length){
+ that._t = undefined;
+ return step(1);
+ }
+ } while(!has(O, key = keys[that._i++]));
+ if(kind == 'keys' )return step(0, key);
+ if(kind == 'values')return step(0, O[key]);
+ return step(0, [key, O[key]]);
+});
+
+function Dict(iterable){
+ var dict = create(null);
+ if(iterable != undefined){
+ if(isIterable(iterable)){
+ forOf(iterable, true, function(key, value){
+ dict[key] = value;
+ });
+ } else assign(dict, iterable);
+ }
+ return dict;
+}
+Dict.prototype = null;
+
+function reduce(object, mapfn, init){
+ aFunction(mapfn);
+ var O = toIObject(object)
+ , keys = getKeys(O)
+ , length = keys.length
+ , i = 0
+ , memo, key;
+ if(arguments.length < 3){
+ if(!length)throw TypeError('Reduce of empty object with no initial value');
+ memo = O[keys[i++]];
+ } else memo = Object(init);
+ while(length > i)if(has(O, key = keys[i++])){
+ memo = mapfn(memo, O[key], key, object);
+ }
+ return memo;
+}
+
+function includes(object, el){
+ return (el == el ? keyOf(object, el) : findKey(object, function(it){
+ return it != it;
+ })) !== undefined;
+}
+
+function get(object, key){
+ if(has(object, key))return object[key];
+}
+function set(object, key, value){
+ if(DESCRIPTORS && key in Object)dP.f(object, key, createDesc(0, value));
+ else object[key] = value;
+ return object;
+}
+
+function isDict(it){
+ return isObject(it) && getPrototypeOf(it) === Dict.prototype;
+}
+
+$export($export.G + $export.F, {Dict: Dict});
+
+$export($export.S, 'Dict', {
+ keys: createDictIter('keys'),
+ values: createDictIter('values'),
+ entries: createDictIter('entries'),
+ forEach: createDictMethod(0),
+ map: createDictMethod(1),
+ filter: createDictMethod(2),
+ some: createDictMethod(3),
+ every: createDictMethod(4),
+ find: createDictMethod(5),
+ findKey: findKey,
+ mapPairs: createDictMethod(7),
+ reduce: reduce,
+ keyOf: keyOf,
+ includes: includes,
+ has: has,
+ get: get,
+ set: set,
+ isDict: isDict
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.function.part.js b/node_modules/core-js/modules/core.function.part.js
new file mode 100644
index 000000000..ce851ff84
--- /dev/null
+++ b/node_modules/core-js/modules/core.function.part.js
@@ -0,0 +1,7 @@
+var path = require('./_path')
+ , $export = require('./_export');
+
+// Placeholder
+require('./_core')._ = path._ = path._ || {};
+
+$export($export.P + $export.F, 'Function', {part: require('./_partial')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.get-iterator-method.js b/node_modules/core-js/modules/core.get-iterator-method.js
new file mode 100644
index 000000000..e2c7ecc3d
--- /dev/null
+++ b/node_modules/core-js/modules/core.get-iterator-method.js
@@ -0,0 +1,8 @@
+var classof = require('./_classof')
+ , ITERATOR = require('./_wks')('iterator')
+ , Iterators = require('./_iterators');
+module.exports = require('./_core').getIteratorMethod = function(it){
+ if(it != undefined)return it[ITERATOR]
+ || it['@@iterator']
+ || Iterators[classof(it)];
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.get-iterator.js b/node_modules/core-js/modules/core.get-iterator.js
new file mode 100644
index 000000000..c292e1ab1
--- /dev/null
+++ b/node_modules/core-js/modules/core.get-iterator.js
@@ -0,0 +1,7 @@
+var anObject = require('./_an-object')
+ , get = require('./core.get-iterator-method');
+module.exports = require('./_core').getIterator = function(it){
+ var iterFn = get(it);
+ if(typeof iterFn != 'function')throw TypeError(it + ' is not iterable!');
+ return anObject(iterFn.call(it));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.is-iterable.js b/node_modules/core-js/modules/core.is-iterable.js
new file mode 100644
index 000000000..b2b01b6bb
--- /dev/null
+++ b/node_modules/core-js/modules/core.is-iterable.js
@@ -0,0 +1,9 @@
+var classof = require('./_classof')
+ , ITERATOR = require('./_wks')('iterator')
+ , Iterators = require('./_iterators');
+module.exports = require('./_core').isIterable = function(it){
+ var O = Object(it);
+ return O[ITERATOR] !== undefined
+ || '@@iterator' in O
+ || Iterators.hasOwnProperty(classof(O));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.number.iterator.js b/node_modules/core-js/modules/core.number.iterator.js
new file mode 100644
index 000000000..9700acba0
--- /dev/null
+++ b/node_modules/core-js/modules/core.number.iterator.js
@@ -0,0 +1,9 @@
+'use strict';
+require('./_iter-define')(Number, 'Number', function(iterated){
+ this._l = +iterated;
+ this._i = 0;
+}, function(){
+ var i = this._i++
+ , done = !(i < this._l);
+ return {done: done, value: done ? undefined : i};
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.object.classof.js b/node_modules/core-js/modules/core.object.classof.js
new file mode 100644
index 000000000..342c73713
--- /dev/null
+++ b/node_modules/core-js/modules/core.object.classof.js
@@ -0,0 +1,3 @@
+var $export = require('./_export');
+
+$export($export.S + $export.F, 'Object', {classof: require('./_classof')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.object.define.js b/node_modules/core-js/modules/core.object.define.js
new file mode 100644
index 000000000..d60e9a951
--- /dev/null
+++ b/node_modules/core-js/modules/core.object.define.js
@@ -0,0 +1,4 @@
+var $export = require('./_export')
+ , define = require('./_object-define');
+
+$export($export.S + $export.F, 'Object', {define: define}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.object.is-object.js b/node_modules/core-js/modules/core.object.is-object.js
new file mode 100644
index 000000000..f2ba059fb
--- /dev/null
+++ b/node_modules/core-js/modules/core.object.is-object.js
@@ -0,0 +1,3 @@
+var $export = require('./_export');
+
+$export($export.S + $export.F, 'Object', {isObject: require('./_is-object')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.object.make.js b/node_modules/core-js/modules/core.object.make.js
new file mode 100644
index 000000000..3d2a2b5f5
--- /dev/null
+++ b/node_modules/core-js/modules/core.object.make.js
@@ -0,0 +1,9 @@
+var $export = require('./_export')
+ , define = require('./_object-define')
+ , create = require('./_object-create');
+
+$export($export.S + $export.F, 'Object', {
+ make: function(proto, mixin){
+ return define(create(proto), mixin);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.regexp.escape.js b/node_modules/core-js/modules/core.regexp.escape.js
new file mode 100644
index 000000000..54f832ef8
--- /dev/null
+++ b/node_modules/core-js/modules/core.regexp.escape.js
@@ -0,0 +1,5 @@
+// https://github.com/benjamingr/RexExp.escape
+var $export = require('./_export')
+ , $re = require('./_replacer')(/[\\^$*+?.()|[\]{}]/g, '\\$&');
+
+$export($export.S, 'RegExp', {escape: function escape(it){ return $re(it); }});
diff --git a/node_modules/core-js/modules/core.string.escape-html.js b/node_modules/core-js/modules/core.string.escape-html.js
new file mode 100644
index 000000000..a4b8d2f02
--- /dev/null
+++ b/node_modules/core-js/modules/core.string.escape-html.js
@@ -0,0 +1,11 @@
+'use strict';
+var $export = require('./_export');
+var $re = require('./_replacer')(/[&<>"']/g, {
+ '&': '&amp;',
+ '<': '&lt;',
+ '>': '&gt;',
+ '"': '&quot;',
+ "'": '&apos;'
+});
+
+$export($export.P + $export.F, 'String', {escapeHTML: function escapeHTML(){ return $re(this); }}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.string.unescape-html.js b/node_modules/core-js/modules/core.string.unescape-html.js
new file mode 100644
index 000000000..413622b94
--- /dev/null
+++ b/node_modules/core-js/modules/core.string.unescape-html.js
@@ -0,0 +1,11 @@
+'use strict';
+var $export = require('./_export');
+var $re = require('./_replacer')(/&(?:amp|lt|gt|quot|apos);/g, {
+ '&amp;': '&',
+ '&lt;': '<',
+ '&gt;': '>',
+ '&quot;': '"',
+ '&apos;': "'"
+});
+
+$export($export.P + $export.F, 'String', {unescapeHTML: function unescapeHTML(){ return $re(this); }}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es5.js b/node_modules/core-js/modules/es5.js
new file mode 100644
index 000000000..dd7ebadf8
--- /dev/null
+++ b/node_modules/core-js/modules/es5.js
@@ -0,0 +1,35 @@
+// This file still here for a legacy code and will be removed in a near time
+require('./es6.object.create');
+require('./es6.object.define-property');
+require('./es6.object.define-properties');
+require('./es6.object.get-own-property-descriptor');
+require('./es6.object.get-prototype-of');
+require('./es6.object.keys');
+require('./es6.object.get-own-property-names');
+require('./es6.object.freeze');
+require('./es6.object.seal');
+require('./es6.object.prevent-extensions');
+require('./es6.object.is-frozen');
+require('./es6.object.is-sealed');
+require('./es6.object.is-extensible');
+require('./es6.function.bind');
+require('./es6.array.is-array');
+require('./es6.array.join');
+require('./es6.array.slice');
+require('./es6.array.sort');
+require('./es6.array.for-each');
+require('./es6.array.map');
+require('./es6.array.filter');
+require('./es6.array.some');
+require('./es6.array.every');
+require('./es6.array.reduce');
+require('./es6.array.reduce-right');
+require('./es6.array.index-of');
+require('./es6.array.last-index-of');
+require('./es6.date.now');
+require('./es6.date.to-iso-string');
+require('./es6.date.to-json');
+require('./es6.parse-int');
+require('./es6.parse-float');
+require('./es6.string.trim');
+require('./es6.regexp.to-string'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.copy-within.js b/node_modules/core-js/modules/es6.array.copy-within.js
new file mode 100644
index 000000000..027f7550e
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.copy-within.js
@@ -0,0 +1,6 @@
+// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+var $export = require('./_export');
+
+$export($export.P, 'Array', {copyWithin: require('./_array-copy-within')});
+
+require('./_add-to-unscopables')('copyWithin'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.every.js b/node_modules/core-js/modules/es6.array.every.js
new file mode 100644
index 000000000..fb0673673
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.every.js
@@ -0,0 +1,10 @@
+'use strict';
+var $export = require('./_export')
+ , $every = require('./_array-methods')(4);
+
+$export($export.P + $export.F * !require('./_strict-method')([].every, true), 'Array', {
+ // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
+ every: function every(callbackfn /* , thisArg */){
+ return $every(this, callbackfn, arguments[1]);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.fill.js b/node_modules/core-js/modules/es6.array.fill.js
new file mode 100644
index 000000000..f075c0018
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.fill.js
@@ -0,0 +1,6 @@
+// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+var $export = require('./_export');
+
+$export($export.P, 'Array', {fill: require('./_array-fill')});
+
+require('./_add-to-unscopables')('fill'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.filter.js b/node_modules/core-js/modules/es6.array.filter.js
new file mode 100644
index 000000000..f60951d37
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.filter.js
@@ -0,0 +1,10 @@
+'use strict';
+var $export = require('./_export')
+ , $filter = require('./_array-methods')(2);
+
+$export($export.P + $export.F * !require('./_strict-method')([].filter, true), 'Array', {
+ // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
+ filter: function filter(callbackfn /* , thisArg */){
+ return $filter(this, callbackfn, arguments[1]);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.find-index.js b/node_modules/core-js/modules/es6.array.find-index.js
new file mode 100644
index 000000000..530907412
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.find-index.js
@@ -0,0 +1,14 @@
+'use strict';
+// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
+var $export = require('./_export')
+ , $find = require('./_array-methods')(6)
+ , KEY = 'findIndex'
+ , forced = true;
+// Shouldn't skip holes
+if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+$export($export.P + $export.F * forced, 'Array', {
+ findIndex: function findIndex(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+require('./_add-to-unscopables')(KEY); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.find.js b/node_modules/core-js/modules/es6.array.find.js
new file mode 100644
index 000000000..90a9acfbe
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.find.js
@@ -0,0 +1,14 @@
+'use strict';
+// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
+var $export = require('./_export')
+ , $find = require('./_array-methods')(5)
+ , KEY = 'find'
+ , forced = true;
+// Shouldn't skip holes
+if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+$export($export.P + $export.F * forced, 'Array', {
+ find: function find(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+require('./_add-to-unscopables')(KEY); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.for-each.js b/node_modules/core-js/modules/es6.array.for-each.js
new file mode 100644
index 000000000..f814fe4ea
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.for-each.js
@@ -0,0 +1,11 @@
+'use strict';
+var $export = require('./_export')
+ , $forEach = require('./_array-methods')(0)
+ , STRICT = require('./_strict-method')([].forEach, true);
+
+$export($export.P + $export.F * !STRICT, 'Array', {
+ // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
+ forEach: function forEach(callbackfn /* , thisArg */){
+ return $forEach(this, callbackfn, arguments[1]);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.from.js b/node_modules/core-js/modules/es6.array.from.js
new file mode 100644
index 000000000..69e5d4a62
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.from.js
@@ -0,0 +1,37 @@
+'use strict';
+var ctx = require('./_ctx')
+ , $export = require('./_export')
+ , toObject = require('./_to-object')
+ , call = require('./_iter-call')
+ , isArrayIter = require('./_is-array-iter')
+ , toLength = require('./_to-length')
+ , createProperty = require('./_create-property')
+ , getIterFn = require('./core.get-iterator-method');
+
+$export($export.S + $export.F * !require('./_iter-detect')(function(iter){ Array.from(iter); }), 'Array', {
+ // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
+ from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
+ var O = toObject(arrayLike)
+ , C = typeof this == 'function' ? this : Array
+ , aLen = arguments.length
+ , mapfn = aLen > 1 ? arguments[1] : undefined
+ , mapping = mapfn !== undefined
+ , index = 0
+ , iterFn = getIterFn(O)
+ , length, result, step, iterator;
+ if(mapping)mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
+ // if object isn't iterable or it's array with default iterator - use simple case
+ if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
+ for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
+ createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
+ }
+ } else {
+ length = toLength(O.length);
+ for(result = new C(length); length > index; index++){
+ createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
+ }
+ }
+ result.length = index;
+ return result;
+ }
+});
diff --git a/node_modules/core-js/modules/es6.array.index-of.js b/node_modules/core-js/modules/es6.array.index-of.js
new file mode 100644
index 000000000..903763157
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.index-of.js
@@ -0,0 +1,15 @@
+'use strict';
+var $export = require('./_export')
+ , $indexOf = require('./_array-includes')(false)
+ , $native = [].indexOf
+ , NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;
+
+$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', {
+ // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
+ indexOf: function indexOf(searchElement /*, fromIndex = 0 */){
+ return NEGATIVE_ZERO
+ // convert -0 to +0
+ ? $native.apply(this, arguments) || 0
+ : $indexOf(this, searchElement, arguments[1]);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.is-array.js b/node_modules/core-js/modules/es6.array.is-array.js
new file mode 100644
index 000000000..cd5d8c192
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.is-array.js
@@ -0,0 +1,4 @@
+// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
+var $export = require('./_export');
+
+$export($export.S, 'Array', {isArray: require('./_is-array')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.iterator.js b/node_modules/core-js/modules/es6.array.iterator.js
new file mode 100644
index 000000000..100b344d7
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.iterator.js
@@ -0,0 +1,34 @@
+'use strict';
+var addToUnscopables = require('./_add-to-unscopables')
+ , step = require('./_iter-step')
+ , Iterators = require('./_iterators')
+ , toIObject = require('./_to-iobject');
+
+// 22.1.3.4 Array.prototype.entries()
+// 22.1.3.13 Array.prototype.keys()
+// 22.1.3.29 Array.prototype.values()
+// 22.1.3.30 Array.prototype[@@iterator]()
+module.exports = require('./_iter-define')(Array, 'Array', function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._i = 0; // next index
+ this._k = kind; // kind
+// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
+}, function(){
+ var O = this._t
+ , kind = this._k
+ , index = this._i++;
+ if(!O || index >= O.length){
+ this._t = undefined;
+ return step(1);
+ }
+ if(kind == 'keys' )return step(0, index);
+ if(kind == 'values')return step(0, O[index]);
+ return step(0, [index, O[index]]);
+}, 'values');
+
+// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
+Iterators.Arguments = Iterators.Array;
+
+addToUnscopables('keys');
+addToUnscopables('values');
+addToUnscopables('entries'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.join.js b/node_modules/core-js/modules/es6.array.join.js
new file mode 100644
index 000000000..1bb656538
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.join.js
@@ -0,0 +1,12 @@
+'use strict';
+// 22.1.3.13 Array.prototype.join(separator)
+var $export = require('./_export')
+ , toIObject = require('./_to-iobject')
+ , arrayJoin = [].join;
+
+// fallback for not array-like strings
+$export($export.P + $export.F * (require('./_iobject') != Object || !require('./_strict-method')(arrayJoin)), 'Array', {
+ join: function join(separator){
+ return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.last-index-of.js b/node_modules/core-js/modules/es6.array.last-index-of.js
new file mode 100644
index 000000000..75c1eabfa
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.last-index-of.js
@@ -0,0 +1,22 @@
+'use strict';
+var $export = require('./_export')
+ , toIObject = require('./_to-iobject')
+ , toInteger = require('./_to-integer')
+ , toLength = require('./_to-length')
+ , $native = [].lastIndexOf
+ , NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;
+
+$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', {
+ // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
+ lastIndexOf: function lastIndexOf(searchElement /*, fromIndex = @[*-1] */){
+ // convert -0 to +0
+ if(NEGATIVE_ZERO)return $native.apply(this, arguments) || 0;
+ var O = toIObject(this)
+ , length = toLength(O.length)
+ , index = length - 1;
+ if(arguments.length > 1)index = Math.min(index, toInteger(arguments[1]));
+ if(index < 0)index = length + index;
+ for(;index >= 0; index--)if(index in O)if(O[index] === searchElement)return index || 0;
+ return -1;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.map.js b/node_modules/core-js/modules/es6.array.map.js
new file mode 100644
index 000000000..f70089f3e
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.map.js
@@ -0,0 +1,10 @@
+'use strict';
+var $export = require('./_export')
+ , $map = require('./_array-methods')(1);
+
+$export($export.P + $export.F * !require('./_strict-method')([].map, true), 'Array', {
+ // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
+ map: function map(callbackfn /* , thisArg */){
+ return $map(this, callbackfn, arguments[1]);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.of.js b/node_modules/core-js/modules/es6.array.of.js
new file mode 100644
index 000000000..dd4e1f816
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.of.js
@@ -0,0 +1,19 @@
+'use strict';
+var $export = require('./_export')
+ , createProperty = require('./_create-property');
+
+// WebKit Array.of isn't generic
+$export($export.S + $export.F * require('./_fails')(function(){
+ function F(){}
+ return !(Array.of.call(F) instanceof F);
+}), 'Array', {
+ // 22.1.2.3 Array.of( ...items)
+ of: function of(/* ...args */){
+ var index = 0
+ , aLen = arguments.length
+ , result = new (typeof this == 'function' ? this : Array)(aLen);
+ while(aLen > index)createProperty(result, index, arguments[index++]);
+ result.length = aLen;
+ return result;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.reduce-right.js b/node_modules/core-js/modules/es6.array.reduce-right.js
new file mode 100644
index 000000000..0c64d85e8
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.reduce-right.js
@@ -0,0 +1,10 @@
+'use strict';
+var $export = require('./_export')
+ , $reduce = require('./_array-reduce');
+
+$export($export.P + $export.F * !require('./_strict-method')([].reduceRight, true), 'Array', {
+ // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
+ reduceRight: function reduceRight(callbackfn /* , initialValue */){
+ return $reduce(this, callbackfn, arguments.length, arguments[1], true);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.reduce.js b/node_modules/core-js/modules/es6.array.reduce.js
new file mode 100644
index 000000000..491f7d252
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.reduce.js
@@ -0,0 +1,10 @@
+'use strict';
+var $export = require('./_export')
+ , $reduce = require('./_array-reduce');
+
+$export($export.P + $export.F * !require('./_strict-method')([].reduce, true), 'Array', {
+ // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
+ reduce: function reduce(callbackfn /* , initialValue */){
+ return $reduce(this, callbackfn, arguments.length, arguments[1], false);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.slice.js b/node_modules/core-js/modules/es6.array.slice.js
new file mode 100644
index 000000000..610bd3990
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.slice.js
@@ -0,0 +1,28 @@
+'use strict';
+var $export = require('./_export')
+ , html = require('./_html')
+ , cof = require('./_cof')
+ , toIndex = require('./_to-index')
+ , toLength = require('./_to-length')
+ , arraySlice = [].slice;
+
+// fallback for not array-like ES3 strings and DOM objects
+$export($export.P + $export.F * require('./_fails')(function(){
+ if(html)arraySlice.call(html);
+}), 'Array', {
+ slice: function slice(begin, end){
+ var len = toLength(this.length)
+ , klass = cof(this);
+ end = end === undefined ? len : end;
+ if(klass == 'Array')return arraySlice.call(this, begin, end);
+ var start = toIndex(begin, len)
+ , upTo = toIndex(end, len)
+ , size = toLength(upTo - start)
+ , cloned = Array(size)
+ , i = 0;
+ for(; i < size; i++)cloned[i] = klass == 'String'
+ ? this.charAt(start + i)
+ : this[start + i];
+ return cloned;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.some.js b/node_modules/core-js/modules/es6.array.some.js
new file mode 100644
index 000000000..fa1095edc
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.some.js
@@ -0,0 +1,10 @@
+'use strict';
+var $export = require('./_export')
+ , $some = require('./_array-methods')(3);
+
+$export($export.P + $export.F * !require('./_strict-method')([].some, true), 'Array', {
+ // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
+ some: function some(callbackfn /* , thisArg */){
+ return $some(this, callbackfn, arguments[1]);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.sort.js b/node_modules/core-js/modules/es6.array.sort.js
new file mode 100644
index 000000000..7de1fe77f
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.sort.js
@@ -0,0 +1,23 @@
+'use strict';
+var $export = require('./_export')
+ , aFunction = require('./_a-function')
+ , toObject = require('./_to-object')
+ , fails = require('./_fails')
+ , $sort = [].sort
+ , test = [1, 2, 3];
+
+$export($export.P + $export.F * (fails(function(){
+ // IE8-
+ test.sort(undefined);
+}) || !fails(function(){
+ // V8 bug
+ test.sort(null);
+ // Old WebKit
+}) || !require('./_strict-method')($sort)), 'Array', {
+ // 22.1.3.25 Array.prototype.sort(comparefn)
+ sort: function sort(comparefn){
+ return comparefn === undefined
+ ? $sort.call(toObject(this))
+ : $sort.call(toObject(this), aFunction(comparefn));
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.array.species.js b/node_modules/core-js/modules/es6.array.species.js
new file mode 100644
index 000000000..d63c738f7
--- /dev/null
+++ b/node_modules/core-js/modules/es6.array.species.js
@@ -0,0 +1 @@
+require('./_set-species')('Array'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.date.now.js b/node_modules/core-js/modules/es6.date.now.js
new file mode 100644
index 000000000..c3ee5fd7f
--- /dev/null
+++ b/node_modules/core-js/modules/es6.date.now.js
@@ -0,0 +1,4 @@
+// 20.3.3.1 / 15.9.4.4 Date.now()
+var $export = require('./_export');
+
+$export($export.S, 'Date', {now: function(){ return new Date().getTime(); }}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.date.to-iso-string.js b/node_modules/core-js/modules/es6.date.to-iso-string.js
new file mode 100644
index 000000000..2426c5898
--- /dev/null
+++ b/node_modules/core-js/modules/es6.date.to-iso-string.js
@@ -0,0 +1,28 @@
+'use strict';
+// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
+var $export = require('./_export')
+ , fails = require('./_fails')
+ , getTime = Date.prototype.getTime;
+
+var lz = function(num){
+ return num > 9 ? num : '0' + num;
+};
+
+// PhantomJS / old WebKit has a broken implementations
+$export($export.P + $export.F * (fails(function(){
+ return new Date(-5e13 - 1).toISOString() != '0385-07-25T07:06:39.999Z';
+}) || !fails(function(){
+ new Date(NaN).toISOString();
+})), 'Date', {
+ toISOString: function toISOString(){
+ if(!isFinite(getTime.call(this)))throw RangeError('Invalid time value');
+ var d = this
+ , y = d.getUTCFullYear()
+ , m = d.getUTCMilliseconds()
+ , s = y < 0 ? '-' : y > 9999 ? '+' : '';
+ return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +
+ '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +
+ 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +
+ ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.date.to-json.js b/node_modules/core-js/modules/es6.date.to-json.js
new file mode 100644
index 000000000..eb419d03f
--- /dev/null
+++ b/node_modules/core-js/modules/es6.date.to-json.js
@@ -0,0 +1,14 @@
+'use strict';
+var $export = require('./_export')
+ , toObject = require('./_to-object')
+ , toPrimitive = require('./_to-primitive');
+
+$export($export.P + $export.F * require('./_fails')(function(){
+ return new Date(NaN).toJSON() !== null || Date.prototype.toJSON.call({toISOString: function(){ return 1; }}) !== 1;
+}), 'Date', {
+ toJSON: function toJSON(key){
+ var O = toObject(this)
+ , pv = toPrimitive(O);
+ return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.date.to-primitive.js b/node_modules/core-js/modules/es6.date.to-primitive.js
new file mode 100644
index 000000000..15a823d59
--- /dev/null
+++ b/node_modules/core-js/modules/es6.date.to-primitive.js
@@ -0,0 +1,4 @@
+var TO_PRIMITIVE = require('./_wks')('toPrimitive')
+ , proto = Date.prototype;
+
+if(!(TO_PRIMITIVE in proto))require('./_hide')(proto, TO_PRIMITIVE, require('./_date-to-primitive')); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.date.to-string.js b/node_modules/core-js/modules/es6.date.to-string.js
new file mode 100644
index 000000000..686e949e0
--- /dev/null
+++ b/node_modules/core-js/modules/es6.date.to-string.js
@@ -0,0 +1,11 @@
+var DateProto = Date.prototype
+ , INVALID_DATE = 'Invalid Date'
+ , TO_STRING = 'toString'
+ , $toString = DateProto[TO_STRING]
+ , getTime = DateProto.getTime;
+if(new Date(NaN) + '' != INVALID_DATE){
+ require('./_redefine')(DateProto, TO_STRING, function toString(){
+ var value = getTime.call(this);
+ return value === value ? $toString.call(this) : INVALID_DATE;
+ });
+} \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.function.bind.js b/node_modules/core-js/modules/es6.function.bind.js
new file mode 100644
index 000000000..85f103799
--- /dev/null
+++ b/node_modules/core-js/modules/es6.function.bind.js
@@ -0,0 +1,4 @@
+// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
+var $export = require('./_export');
+
+$export($export.P, 'Function', {bind: require('./_bind')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.function.has-instance.js b/node_modules/core-js/modules/es6.function.has-instance.js
new file mode 100644
index 000000000..ae294b1f1
--- /dev/null
+++ b/node_modules/core-js/modules/es6.function.has-instance.js
@@ -0,0 +1,13 @@
+'use strict';
+var isObject = require('./_is-object')
+ , getPrototypeOf = require('./_object-gpo')
+ , HAS_INSTANCE = require('./_wks')('hasInstance')
+ , FunctionProto = Function.prototype;
+// 19.2.3.6 Function.prototype[@@hasInstance](V)
+if(!(HAS_INSTANCE in FunctionProto))require('./_object-dp').f(FunctionProto, HAS_INSTANCE, {value: function(O){
+ if(typeof this != 'function' || !isObject(O))return false;
+ if(!isObject(this.prototype))return O instanceof this;
+ // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
+ while(O = getPrototypeOf(O))if(this.prototype === O)return true;
+ return false;
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.function.name.js b/node_modules/core-js/modules/es6.function.name.js
new file mode 100644
index 000000000..f824d86d2
--- /dev/null
+++ b/node_modules/core-js/modules/es6.function.name.js
@@ -0,0 +1,25 @@
+var dP = require('./_object-dp').f
+ , createDesc = require('./_property-desc')
+ , has = require('./_has')
+ , FProto = Function.prototype
+ , nameRE = /^\s*function ([^ (]*)/
+ , NAME = 'name';
+
+var isExtensible = Object.isExtensible || function(){
+ return true;
+};
+
+// 19.2.4.2 name
+NAME in FProto || require('./_descriptors') && dP(FProto, NAME, {
+ configurable: true,
+ get: function(){
+ try {
+ var that = this
+ , name = ('' + that).match(nameRE)[1];
+ has(that, NAME) || !isExtensible(that) || dP(that, NAME, createDesc(5, name));
+ return name;
+ } catch(e){
+ return '';
+ }
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.map.js b/node_modules/core-js/modules/es6.map.js
new file mode 100644
index 000000000..a166430fc
--- /dev/null
+++ b/node_modules/core-js/modules/es6.map.js
@@ -0,0 +1,17 @@
+'use strict';
+var strong = require('./_collection-strong');
+
+// 23.1 Map Objects
+module.exports = require('./_collection')('Map', function(get){
+ return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.1.3.6 Map.prototype.get(key)
+ get: function get(key){
+ var entry = strong.getEntry(this, key);
+ return entry && entry.v;
+ },
+ // 23.1.3.9 Map.prototype.set(key, value)
+ set: function set(key, value){
+ return strong.def(this, key === 0 ? 0 : key, value);
+ }
+}, strong, true); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.acosh.js b/node_modules/core-js/modules/es6.math.acosh.js
new file mode 100644
index 000000000..459f11990
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.acosh.js
@@ -0,0 +1,18 @@
+// 20.2.2.3 Math.acosh(x)
+var $export = require('./_export')
+ , log1p = require('./_math-log1p')
+ , sqrt = Math.sqrt
+ , $acosh = Math.acosh;
+
+$export($export.S + $export.F * !($acosh
+ // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509
+ && Math.floor($acosh(Number.MAX_VALUE)) == 710
+ // Tor Browser bug: Math.acosh(Infinity) -> NaN
+ && $acosh(Infinity) == Infinity
+), 'Math', {
+ acosh: function acosh(x){
+ return (x = +x) < 1 ? NaN : x > 94906265.62425156
+ ? Math.log(x) + Math.LN2
+ : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.asinh.js b/node_modules/core-js/modules/es6.math.asinh.js
new file mode 100644
index 000000000..e6a74abb5
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.asinh.js
@@ -0,0 +1,10 @@
+// 20.2.2.5 Math.asinh(x)
+var $export = require('./_export')
+ , $asinh = Math.asinh;
+
+function asinh(x){
+ return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));
+}
+
+// Tor Browser bug: Math.asinh(0) -> -0
+$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', {asinh: asinh}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.atanh.js b/node_modules/core-js/modules/es6.math.atanh.js
new file mode 100644
index 000000000..94575d9f0
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.atanh.js
@@ -0,0 +1,10 @@
+// 20.2.2.7 Math.atanh(x)
+var $export = require('./_export')
+ , $atanh = Math.atanh;
+
+// Tor Browser bug: Math.atanh(-0) -> 0
+$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {
+ atanh: function atanh(x){
+ return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.cbrt.js b/node_modules/core-js/modules/es6.math.cbrt.js
new file mode 100644
index 000000000..7ca7daea8
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.cbrt.js
@@ -0,0 +1,9 @@
+// 20.2.2.9 Math.cbrt(x)
+var $export = require('./_export')
+ , sign = require('./_math-sign');
+
+$export($export.S, 'Math', {
+ cbrt: function cbrt(x){
+ return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.clz32.js b/node_modules/core-js/modules/es6.math.clz32.js
new file mode 100644
index 000000000..1ec534bd0
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.clz32.js
@@ -0,0 +1,8 @@
+// 20.2.2.11 Math.clz32(x)
+var $export = require('./_export');
+
+$export($export.S, 'Math', {
+ clz32: function clz32(x){
+ return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.cosh.js b/node_modules/core-js/modules/es6.math.cosh.js
new file mode 100644
index 000000000..4f2b21552
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.cosh.js
@@ -0,0 +1,9 @@
+// 20.2.2.12 Math.cosh(x)
+var $export = require('./_export')
+ , exp = Math.exp;
+
+$export($export.S, 'Math', {
+ cosh: function cosh(x){
+ return (exp(x = +x) + exp(-x)) / 2;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.expm1.js b/node_modules/core-js/modules/es6.math.expm1.js
new file mode 100644
index 000000000..9762b7cd0
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.expm1.js
@@ -0,0 +1,5 @@
+// 20.2.2.14 Math.expm1(x)
+var $export = require('./_export')
+ , $expm1 = require('./_math-expm1');
+
+$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', {expm1: $expm1}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.fround.js b/node_modules/core-js/modules/es6.math.fround.js
new file mode 100644
index 000000000..01a88862e
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.fround.js
@@ -0,0 +1,26 @@
+// 20.2.2.16 Math.fround(x)
+var $export = require('./_export')
+ , sign = require('./_math-sign')
+ , pow = Math.pow
+ , EPSILON = pow(2, -52)
+ , EPSILON32 = pow(2, -23)
+ , MAX32 = pow(2, 127) * (2 - EPSILON32)
+ , MIN32 = pow(2, -126);
+
+var roundTiesToEven = function(n){
+ return n + 1 / EPSILON - 1 / EPSILON;
+};
+
+
+$export($export.S, 'Math', {
+ fround: function fround(x){
+ var $abs = Math.abs(x)
+ , $sign = sign(x)
+ , a, result;
+ if($abs < MIN32)return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;
+ a = (1 + EPSILON32 / EPSILON) * $abs;
+ result = a - (a - $abs);
+ if(result > MAX32 || result != result)return $sign * Infinity;
+ return $sign * result;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.hypot.js b/node_modules/core-js/modules/es6.math.hypot.js
new file mode 100644
index 000000000..508521b69
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.hypot.js
@@ -0,0 +1,25 @@
+// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])
+var $export = require('./_export')
+ , abs = Math.abs;
+
+$export($export.S, 'Math', {
+ hypot: function hypot(value1, value2){ // eslint-disable-line no-unused-vars
+ var sum = 0
+ , i = 0
+ , aLen = arguments.length
+ , larg = 0
+ , arg, div;
+ while(i < aLen){
+ arg = abs(arguments[i++]);
+ if(larg < arg){
+ div = larg / arg;
+ sum = sum * div * div + 1;
+ larg = arg;
+ } else if(arg > 0){
+ div = arg / larg;
+ sum += div * div;
+ } else sum += arg;
+ }
+ return larg === Infinity ? Infinity : larg * Math.sqrt(sum);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.imul.js b/node_modules/core-js/modules/es6.math.imul.js
new file mode 100644
index 000000000..7f4111d27
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.imul.js
@@ -0,0 +1,17 @@
+// 20.2.2.18 Math.imul(x, y)
+var $export = require('./_export')
+ , $imul = Math.imul;
+
+// some WebKit versions fails with big numbers, some has wrong arity
+$export($export.S + $export.F * require('./_fails')(function(){
+ return $imul(0xffffffff, 5) != -5 || $imul.length != 2;
+}), 'Math', {
+ imul: function imul(x, y){
+ var UINT16 = 0xffff
+ , xn = +x
+ , yn = +y
+ , xl = UINT16 & xn
+ , yl = UINT16 & yn;
+ return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.log10.js b/node_modules/core-js/modules/es6.math.log10.js
new file mode 100644
index 000000000..791dfc353
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.log10.js
@@ -0,0 +1,8 @@
+// 20.2.2.21 Math.log10(x)
+var $export = require('./_export');
+
+$export($export.S, 'Math', {
+ log10: function log10(x){
+ return Math.log(x) / Math.LN10;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.log1p.js b/node_modules/core-js/modules/es6.math.log1p.js
new file mode 100644
index 000000000..a1de0258d
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.log1p.js
@@ -0,0 +1,4 @@
+// 20.2.2.20 Math.log1p(x)
+var $export = require('./_export');
+
+$export($export.S, 'Math', {log1p: require('./_math-log1p')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.log2.js b/node_modules/core-js/modules/es6.math.log2.js
new file mode 100644
index 000000000..c4ba7819c
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.log2.js
@@ -0,0 +1,8 @@
+// 20.2.2.22 Math.log2(x)
+var $export = require('./_export');
+
+$export($export.S, 'Math', {
+ log2: function log2(x){
+ return Math.log(x) / Math.LN2;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.sign.js b/node_modules/core-js/modules/es6.math.sign.js
new file mode 100644
index 000000000..5dbee6f66
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.sign.js
@@ -0,0 +1,4 @@
+// 20.2.2.28 Math.sign(x)
+var $export = require('./_export');
+
+$export($export.S, 'Math', {sign: require('./_math-sign')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.sinh.js b/node_modules/core-js/modules/es6.math.sinh.js
new file mode 100644
index 000000000..5464ae3e6
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.sinh.js
@@ -0,0 +1,15 @@
+// 20.2.2.30 Math.sinh(x)
+var $export = require('./_export')
+ , expm1 = require('./_math-expm1')
+ , exp = Math.exp;
+
+// V8 near Chromium 38 has a problem with very small numbers
+$export($export.S + $export.F * require('./_fails')(function(){
+ return !Math.sinh(-2e-17) != -2e-17;
+}), 'Math', {
+ sinh: function sinh(x){
+ return Math.abs(x = +x) < 1
+ ? (expm1(x) - expm1(-x)) / 2
+ : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.tanh.js b/node_modules/core-js/modules/es6.math.tanh.js
new file mode 100644
index 000000000..d2f10778c
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.tanh.js
@@ -0,0 +1,12 @@
+// 20.2.2.33 Math.tanh(x)
+var $export = require('./_export')
+ , expm1 = require('./_math-expm1')
+ , exp = Math.exp;
+
+$export($export.S, 'Math', {
+ tanh: function tanh(x){
+ var a = expm1(x = +x)
+ , b = expm1(-x);
+ return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.math.trunc.js b/node_modules/core-js/modules/es6.math.trunc.js
new file mode 100644
index 000000000..2e42563b6
--- /dev/null
+++ b/node_modules/core-js/modules/es6.math.trunc.js
@@ -0,0 +1,8 @@
+// 20.2.2.34 Math.trunc(x)
+var $export = require('./_export');
+
+$export($export.S, 'Math', {
+ trunc: function trunc(it){
+ return (it > 0 ? Math.floor : Math.ceil)(it);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.constructor.js b/node_modules/core-js/modules/es6.number.constructor.js
new file mode 100644
index 000000000..d562365bc
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.constructor.js
@@ -0,0 +1,69 @@
+'use strict';
+var global = require('./_global')
+ , has = require('./_has')
+ , cof = require('./_cof')
+ , inheritIfRequired = require('./_inherit-if-required')
+ , toPrimitive = require('./_to-primitive')
+ , fails = require('./_fails')
+ , gOPN = require('./_object-gopn').f
+ , gOPD = require('./_object-gopd').f
+ , dP = require('./_object-dp').f
+ , $trim = require('./_string-trim').trim
+ , NUMBER = 'Number'
+ , $Number = global[NUMBER]
+ , Base = $Number
+ , proto = $Number.prototype
+ // Opera ~12 has broken Object#toString
+ , BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER
+ , TRIM = 'trim' in String.prototype;
+
+// 7.1.3 ToNumber(argument)
+var toNumber = function(argument){
+ var it = toPrimitive(argument, false);
+ if(typeof it == 'string' && it.length > 2){
+ it = TRIM ? it.trim() : $trim(it, 3);
+ var first = it.charCodeAt(0)
+ , third, radix, maxCode;
+ if(first === 43 || first === 45){
+ third = it.charCodeAt(2);
+ if(third === 88 || third === 120)return NaN; // Number('+0x1') should be NaN, old V8 fix
+ } else if(first === 48){
+ switch(it.charCodeAt(1)){
+ case 66 : case 98 : radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
+ case 79 : case 111 : radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
+ default : return +it;
+ }
+ for(var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++){
+ code = digits.charCodeAt(i);
+ // parseInt parses a string to a first unavailable symbol
+ // but ToNumber should return NaN if a string contains unavailable symbols
+ if(code < 48 || code > maxCode)return NaN;
+ } return parseInt(digits, radix);
+ }
+ } return +it;
+};
+
+if(!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')){
+ $Number = function Number(value){
+ var it = arguments.length < 1 ? 0 : value
+ , that = this;
+ return that instanceof $Number
+ // check on 1..constructor(foo) case
+ && (BROKEN_COF ? fails(function(){ proto.valueOf.call(that); }) : cof(that) != NUMBER)
+ ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);
+ };
+ for(var keys = require('./_descriptors') ? gOPN(Base) : (
+ // ES3:
+ 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
+ // ES6 (in case, if modules with ES6 Number statics required before):
+ 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
+ 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
+ ).split(','), j = 0, key; keys.length > j; j++){
+ if(has(Base, key = keys[j]) && !has($Number, key)){
+ dP($Number, key, gOPD(Base, key));
+ }
+ }
+ $Number.prototype = proto;
+ proto.constructor = $Number;
+ require('./_redefine')(global, NUMBER, $Number);
+} \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.epsilon.js b/node_modules/core-js/modules/es6.number.epsilon.js
new file mode 100644
index 000000000..d25898ccc
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.epsilon.js
@@ -0,0 +1,4 @@
+// 20.1.2.1 Number.EPSILON
+var $export = require('./_export');
+
+$export($export.S, 'Number', {EPSILON: Math.pow(2, -52)}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.is-finite.js b/node_modules/core-js/modules/es6.number.is-finite.js
new file mode 100644
index 000000000..c8c42753b
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.is-finite.js
@@ -0,0 +1,9 @@
+// 20.1.2.2 Number.isFinite(number)
+var $export = require('./_export')
+ , _isFinite = require('./_global').isFinite;
+
+$export($export.S, 'Number', {
+ isFinite: function isFinite(it){
+ return typeof it == 'number' && _isFinite(it);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.is-integer.js b/node_modules/core-js/modules/es6.number.is-integer.js
new file mode 100644
index 000000000..dc0f8f009
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.is-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.3 Number.isInteger(number)
+var $export = require('./_export');
+
+$export($export.S, 'Number', {isInteger: require('./_is-integer')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.is-nan.js b/node_modules/core-js/modules/es6.number.is-nan.js
new file mode 100644
index 000000000..5fedf8252
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.is-nan.js
@@ -0,0 +1,8 @@
+// 20.1.2.4 Number.isNaN(number)
+var $export = require('./_export');
+
+$export($export.S, 'Number', {
+ isNaN: function isNaN(number){
+ return number != number;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.is-safe-integer.js b/node_modules/core-js/modules/es6.number.is-safe-integer.js
new file mode 100644
index 000000000..92193e2ec
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.is-safe-integer.js
@@ -0,0 +1,10 @@
+// 20.1.2.5 Number.isSafeInteger(number)
+var $export = require('./_export')
+ , isInteger = require('./_is-integer')
+ , abs = Math.abs;
+
+$export($export.S, 'Number', {
+ isSafeInteger: function isSafeInteger(number){
+ return isInteger(number) && abs(number) <= 0x1fffffffffffff;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.max-safe-integer.js b/node_modules/core-js/modules/es6.number.max-safe-integer.js
new file mode 100644
index 000000000..b9d7f2a77
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.max-safe-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.6 Number.MAX_SAFE_INTEGER
+var $export = require('./_export');
+
+$export($export.S, 'Number', {MAX_SAFE_INTEGER: 0x1fffffffffffff}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.min-safe-integer.js b/node_modules/core-js/modules/es6.number.min-safe-integer.js
new file mode 100644
index 000000000..9a2beeb3c
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.min-safe-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.10 Number.MIN_SAFE_INTEGER
+var $export = require('./_export');
+
+$export($export.S, 'Number', {MIN_SAFE_INTEGER: -0x1fffffffffffff}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.parse-float.js b/node_modules/core-js/modules/es6.number.parse-float.js
new file mode 100644
index 000000000..7ee14da03
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.parse-float.js
@@ -0,0 +1,4 @@
+var $export = require('./_export')
+ , $parseFloat = require('./_parse-float');
+// 20.1.2.12 Number.parseFloat(string)
+$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', {parseFloat: $parseFloat}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.parse-int.js b/node_modules/core-js/modules/es6.number.parse-int.js
new file mode 100644
index 000000000..59bf14459
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.parse-int.js
@@ -0,0 +1,4 @@
+var $export = require('./_export')
+ , $parseInt = require('./_parse-int');
+// 20.1.2.13 Number.parseInt(string, radix)
+$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', {parseInt: $parseInt}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.to-fixed.js b/node_modules/core-js/modules/es6.number.to-fixed.js
new file mode 100644
index 000000000..c54970d6a
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.to-fixed.js
@@ -0,0 +1,113 @@
+'use strict';
+var $export = require('./_export')
+ , toInteger = require('./_to-integer')
+ , aNumberValue = require('./_a-number-value')
+ , repeat = require('./_string-repeat')
+ , $toFixed = 1..toFixed
+ , floor = Math.floor
+ , data = [0, 0, 0, 0, 0, 0]
+ , ERROR = 'Number.toFixed: incorrect invocation!'
+ , ZERO = '0';
+
+var multiply = function(n, c){
+ var i = -1
+ , c2 = c;
+ while(++i < 6){
+ c2 += n * data[i];
+ data[i] = c2 % 1e7;
+ c2 = floor(c2 / 1e7);
+ }
+};
+var divide = function(n){
+ var i = 6
+ , c = 0;
+ while(--i >= 0){
+ c += data[i];
+ data[i] = floor(c / n);
+ c = (c % n) * 1e7;
+ }
+};
+var numToString = function(){
+ var i = 6
+ , s = '';
+ while(--i >= 0){
+ if(s !== '' || i === 0 || data[i] !== 0){
+ var t = String(data[i]);
+ s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t;
+ }
+ } return s;
+};
+var pow = function(x, n, acc){
+ return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);
+};
+var log = function(x){
+ var n = 0
+ , x2 = x;
+ while(x2 >= 4096){
+ n += 12;
+ x2 /= 4096;
+ }
+ while(x2 >= 2){
+ n += 1;
+ x2 /= 2;
+ } return n;
+};
+
+$export($export.P + $export.F * (!!$toFixed && (
+ 0.00008.toFixed(3) !== '0.000' ||
+ 0.9.toFixed(0) !== '1' ||
+ 1.255.toFixed(2) !== '1.25' ||
+ 1000000000000000128..toFixed(0) !== '1000000000000000128'
+) || !require('./_fails')(function(){
+ // V8 ~ Android 4.3-
+ $toFixed.call({});
+})), 'Number', {
+ toFixed: function toFixed(fractionDigits){
+ var x = aNumberValue(this, ERROR)
+ , f = toInteger(fractionDigits)
+ , s = ''
+ , m = ZERO
+ , e, z, j, k;
+ if(f < 0 || f > 20)throw RangeError(ERROR);
+ if(x != x)return 'NaN';
+ if(x <= -1e21 || x >= 1e21)return String(x);
+ if(x < 0){
+ s = '-';
+ x = -x;
+ }
+ if(x > 1e-21){
+ e = log(x * pow(2, 69, 1)) - 69;
+ z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);
+ z *= 0x10000000000000;
+ e = 52 - e;
+ if(e > 0){
+ multiply(0, z);
+ j = f;
+ while(j >= 7){
+ multiply(1e7, 0);
+ j -= 7;
+ }
+ multiply(pow(10, j, 1), 0);
+ j = e - 1;
+ while(j >= 23){
+ divide(1 << 23);
+ j -= 23;
+ }
+ divide(1 << j);
+ multiply(1, 1);
+ divide(2);
+ m = numToString();
+ } else {
+ multiply(0, z);
+ multiply(1 << -e, 0);
+ m = numToString() + repeat.call(ZERO, f);
+ }
+ }
+ if(f > 0){
+ k = m.length;
+ m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));
+ } else {
+ m = s + m;
+ } return m;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.number.to-precision.js b/node_modules/core-js/modules/es6.number.to-precision.js
new file mode 100644
index 000000000..903dacdf0
--- /dev/null
+++ b/node_modules/core-js/modules/es6.number.to-precision.js
@@ -0,0 +1,18 @@
+'use strict';
+var $export = require('./_export')
+ , $fails = require('./_fails')
+ , aNumberValue = require('./_a-number-value')
+ , $toPrecision = 1..toPrecision;
+
+$export($export.P + $export.F * ($fails(function(){
+ // IE7-
+ return $toPrecision.call(1, undefined) !== '1';
+}) || !$fails(function(){
+ // V8 ~ Android 4.3-
+ $toPrecision.call({});
+})), 'Number', {
+ toPrecision: function toPrecision(precision){
+ var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');
+ return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.assign.js b/node_modules/core-js/modules/es6.object.assign.js
new file mode 100644
index 000000000..13eda2cb8
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.assign.js
@@ -0,0 +1,4 @@
+// 19.1.3.1 Object.assign(target, source)
+var $export = require('./_export');
+
+$export($export.S + $export.F, 'Object', {assign: require('./_object-assign')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.create.js b/node_modules/core-js/modules/es6.object.create.js
new file mode 100644
index 000000000..17e4b2842
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.create.js
@@ -0,0 +1,3 @@
+var $export = require('./_export')
+// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
+$export($export.S, 'Object', {create: require('./_object-create')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.define-properties.js b/node_modules/core-js/modules/es6.object.define-properties.js
new file mode 100644
index 000000000..183eec6f5
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.define-properties.js
@@ -0,0 +1,3 @@
+var $export = require('./_export');
+// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
+$export($export.S + $export.F * !require('./_descriptors'), 'Object', {defineProperties: require('./_object-dps')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.define-property.js b/node_modules/core-js/modules/es6.object.define-property.js
new file mode 100644
index 000000000..71807cc05
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.define-property.js
@@ -0,0 +1,3 @@
+var $export = require('./_export');
+// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
+$export($export.S + $export.F * !require('./_descriptors'), 'Object', {defineProperty: require('./_object-dp').f}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.freeze.js b/node_modules/core-js/modules/es6.object.freeze.js
new file mode 100644
index 000000000..34b510842
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.freeze.js
@@ -0,0 +1,9 @@
+// 19.1.2.5 Object.freeze(O)
+var isObject = require('./_is-object')
+ , meta = require('./_meta').onFreeze;
+
+require('./_object-sap')('freeze', function($freeze){
+ return function freeze(it){
+ return $freeze && isObject(it) ? $freeze(meta(it)) : it;
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js b/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js
new file mode 100644
index 000000000..60c69913a
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js
@@ -0,0 +1,9 @@
+// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+var toIObject = require('./_to-iobject')
+ , $getOwnPropertyDescriptor = require('./_object-gopd').f;
+
+require('./_object-sap')('getOwnPropertyDescriptor', function(){
+ return function getOwnPropertyDescriptor(it, key){
+ return $getOwnPropertyDescriptor(toIObject(it), key);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.get-own-property-names.js b/node_modules/core-js/modules/es6.object.get-own-property-names.js
new file mode 100644
index 000000000..91dd110d2
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.get-own-property-names.js
@@ -0,0 +1,4 @@
+// 19.1.2.7 Object.getOwnPropertyNames(O)
+require('./_object-sap')('getOwnPropertyNames', function(){
+ return require('./_object-gopn-ext').f;
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.get-prototype-of.js b/node_modules/core-js/modules/es6.object.get-prototype-of.js
new file mode 100644
index 000000000..b124e28fa
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.get-prototype-of.js
@@ -0,0 +1,9 @@
+// 19.1.2.9 Object.getPrototypeOf(O)
+var toObject = require('./_to-object')
+ , $getPrototypeOf = require('./_object-gpo');
+
+require('./_object-sap')('getPrototypeOf', function(){
+ return function getPrototypeOf(it){
+ return $getPrototypeOf(toObject(it));
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.is-extensible.js b/node_modules/core-js/modules/es6.object.is-extensible.js
new file mode 100644
index 000000000..94bf8a815
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.is-extensible.js
@@ -0,0 +1,8 @@
+// 19.1.2.11 Object.isExtensible(O)
+var isObject = require('./_is-object');
+
+require('./_object-sap')('isExtensible', function($isExtensible){
+ return function isExtensible(it){
+ return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.is-frozen.js b/node_modules/core-js/modules/es6.object.is-frozen.js
new file mode 100644
index 000000000..4bdfd11b1
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.is-frozen.js
@@ -0,0 +1,8 @@
+// 19.1.2.12 Object.isFrozen(O)
+var isObject = require('./_is-object');
+
+require('./_object-sap')('isFrozen', function($isFrozen){
+ return function isFrozen(it){
+ return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.is-sealed.js b/node_modules/core-js/modules/es6.object.is-sealed.js
new file mode 100644
index 000000000..d13aa1b06
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.is-sealed.js
@@ -0,0 +1,8 @@
+// 19.1.2.13 Object.isSealed(O)
+var isObject = require('./_is-object');
+
+require('./_object-sap')('isSealed', function($isSealed){
+ return function isSealed(it){
+ return isObject(it) ? $isSealed ? $isSealed(it) : false : true;
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.is.js b/node_modules/core-js/modules/es6.object.is.js
new file mode 100644
index 000000000..ad2994256
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.is.js
@@ -0,0 +1,3 @@
+// 19.1.3.10 Object.is(value1, value2)
+var $export = require('./_export');
+$export($export.S, 'Object', {is: require('./_same-value')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.keys.js b/node_modules/core-js/modules/es6.object.keys.js
new file mode 100644
index 000000000..bf76c07d7
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.keys.js
@@ -0,0 +1,9 @@
+// 19.1.2.14 Object.keys(O)
+var toObject = require('./_to-object')
+ , $keys = require('./_object-keys');
+
+require('./_object-sap')('keys', function(){
+ return function keys(it){
+ return $keys(toObject(it));
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.prevent-extensions.js b/node_modules/core-js/modules/es6.object.prevent-extensions.js
new file mode 100644
index 000000000..adaff7a79
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.prevent-extensions.js
@@ -0,0 +1,9 @@
+// 19.1.2.15 Object.preventExtensions(O)
+var isObject = require('./_is-object')
+ , meta = require('./_meta').onFreeze;
+
+require('./_object-sap')('preventExtensions', function($preventExtensions){
+ return function preventExtensions(it){
+ return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.seal.js b/node_modules/core-js/modules/es6.object.seal.js
new file mode 100644
index 000000000..d7e4ea958
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.seal.js
@@ -0,0 +1,9 @@
+// 19.1.2.17 Object.seal(O)
+var isObject = require('./_is-object')
+ , meta = require('./_meta').onFreeze;
+
+require('./_object-sap')('seal', function($seal){
+ return function seal(it){
+ return $seal && isObject(it) ? $seal(meta(it)) : it;
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.set-prototype-of.js b/node_modules/core-js/modules/es6.object.set-prototype-of.js
new file mode 100644
index 000000000..5bbe4c068
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.set-prototype-of.js
@@ -0,0 +1,3 @@
+// 19.1.3.19 Object.setPrototypeOf(O, proto)
+var $export = require('./_export');
+$export($export.S, 'Object', {setPrototypeOf: require('./_set-proto').set}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.object.to-string.js b/node_modules/core-js/modules/es6.object.to-string.js
new file mode 100644
index 000000000..e644a5d1f
--- /dev/null
+++ b/node_modules/core-js/modules/es6.object.to-string.js
@@ -0,0 +1,10 @@
+'use strict';
+// 19.1.3.6 Object.prototype.toString()
+var classof = require('./_classof')
+ , test = {};
+test[require('./_wks')('toStringTag')] = 'z';
+if(test + '' != '[object z]'){
+ require('./_redefine')(Object.prototype, 'toString', function toString(){
+ return '[object ' + classof(this) + ']';
+ }, true);
+} \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.parse-float.js b/node_modules/core-js/modules/es6.parse-float.js
new file mode 100644
index 000000000..5201712b1
--- /dev/null
+++ b/node_modules/core-js/modules/es6.parse-float.js
@@ -0,0 +1,4 @@
+var $export = require('./_export')
+ , $parseFloat = require('./_parse-float');
+// 18.2.4 parseFloat(string)
+$export($export.G + $export.F * (parseFloat != $parseFloat), {parseFloat: $parseFloat}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.parse-int.js b/node_modules/core-js/modules/es6.parse-int.js
new file mode 100644
index 000000000..5a2bfaff0
--- /dev/null
+++ b/node_modules/core-js/modules/es6.parse-int.js
@@ -0,0 +1,4 @@
+var $export = require('./_export')
+ , $parseInt = require('./_parse-int');
+// 18.2.5 parseInt(string, radix)
+$export($export.G + $export.F * (parseInt != $parseInt), {parseInt: $parseInt}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.promise.js b/node_modules/core-js/modules/es6.promise.js
new file mode 100644
index 000000000..262a93af1
--- /dev/null
+++ b/node_modules/core-js/modules/es6.promise.js
@@ -0,0 +1,299 @@
+'use strict';
+var LIBRARY = require('./_library')
+ , global = require('./_global')
+ , ctx = require('./_ctx')
+ , classof = require('./_classof')
+ , $export = require('./_export')
+ , isObject = require('./_is-object')
+ , aFunction = require('./_a-function')
+ , anInstance = require('./_an-instance')
+ , forOf = require('./_for-of')
+ , speciesConstructor = require('./_species-constructor')
+ , task = require('./_task').set
+ , microtask = require('./_microtask')()
+ , PROMISE = 'Promise'
+ , TypeError = global.TypeError
+ , process = global.process
+ , $Promise = global[PROMISE]
+ , process = global.process
+ , isNode = classof(process) == 'process'
+ , empty = function(){ /* empty */ }
+ , Internal, GenericPromiseCapability, Wrapper;
+
+var USE_NATIVE = !!function(){
+ try {
+ // correct subclassing with @@species support
+ var promise = $Promise.resolve(1)
+ , FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function(exec){ exec(empty, empty); };
+ // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
+ return (isNode || typeof PromiseRejectionEvent == 'function') && promise.then(empty) instanceof FakePromise;
+ } catch(e){ /* empty */ }
+}();
+
+// helpers
+var sameConstructor = function(a, b){
+ // with library wrapper special case
+ return a === b || a === $Promise && b === Wrapper;
+};
+var isThenable = function(it){
+ var then;
+ return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
+};
+var newPromiseCapability = function(C){
+ return sameConstructor($Promise, C)
+ ? new PromiseCapability(C)
+ : new GenericPromiseCapability(C);
+};
+var PromiseCapability = GenericPromiseCapability = function(C){
+ var resolve, reject;
+ this.promise = new C(function($$resolve, $$reject){
+ if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');
+ resolve = $$resolve;
+ reject = $$reject;
+ });
+ this.resolve = aFunction(resolve);
+ this.reject = aFunction(reject);
+};
+var perform = function(exec){
+ try {
+ exec();
+ } catch(e){
+ return {error: e};
+ }
+};
+var notify = function(promise, isReject){
+ if(promise._n)return;
+ promise._n = true;
+ var chain = promise._c;
+ microtask(function(){
+ var value = promise._v
+ , ok = promise._s == 1
+ , i = 0;
+ var run = function(reaction){
+ var handler = ok ? reaction.ok : reaction.fail
+ , resolve = reaction.resolve
+ , reject = reaction.reject
+ , domain = reaction.domain
+ , result, then;
+ try {
+ if(handler){
+ if(!ok){
+ if(promise._h == 2)onHandleUnhandled(promise);
+ promise._h = 1;
+ }
+ if(handler === true)result = value;
+ else {
+ if(domain)domain.enter();
+ result = handler(value);
+ if(domain)domain.exit();
+ }
+ if(result === reaction.promise){
+ reject(TypeError('Promise-chain cycle'));
+ } else if(then = isThenable(result)){
+ then.call(result, resolve, reject);
+ } else resolve(result);
+ } else reject(value);
+ } catch(e){
+ reject(e);
+ }
+ };
+ while(chain.length > i)run(chain[i++]); // variable length - can't use forEach
+ promise._c = [];
+ promise._n = false;
+ if(isReject && !promise._h)onUnhandled(promise);
+ });
+};
+var onUnhandled = function(promise){
+ task.call(global, function(){
+ var value = promise._v
+ , abrupt, handler, console;
+ if(isUnhandled(promise)){
+ abrupt = perform(function(){
+ if(isNode){
+ process.emit('unhandledRejection', value, promise);
+ } else if(handler = global.onunhandledrejection){
+ handler({promise: promise, reason: value});
+ } else if((console = global.console) && console.error){
+ console.error('Unhandled promise rejection', value);
+ }
+ });
+ // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
+ promise._h = isNode || isUnhandled(promise) ? 2 : 1;
+ } promise._a = undefined;
+ if(abrupt)throw abrupt.error;
+ });
+};
+var isUnhandled = function(promise){
+ if(promise._h == 1)return false;
+ var chain = promise._a || promise._c
+ , i = 0
+ , reaction;
+ while(chain.length > i){
+ reaction = chain[i++];
+ if(reaction.fail || !isUnhandled(reaction.promise))return false;
+ } return true;
+};
+var onHandleUnhandled = function(promise){
+ task.call(global, function(){
+ var handler;
+ if(isNode){
+ process.emit('rejectionHandled', promise);
+ } else if(handler = global.onrejectionhandled){
+ handler({promise: promise, reason: promise._v});
+ }
+ });
+};
+var $reject = function(value){
+ var promise = this;
+ if(promise._d)return;
+ promise._d = true;
+ promise = promise._w || promise; // unwrap
+ promise._v = value;
+ promise._s = 2;
+ if(!promise._a)promise._a = promise._c.slice();
+ notify(promise, true);
+};
+var $resolve = function(value){
+ var promise = this
+ , then;
+ if(promise._d)return;
+ promise._d = true;
+ promise = promise._w || promise; // unwrap
+ try {
+ if(promise === value)throw TypeError("Promise can't be resolved itself");
+ if(then = isThenable(value)){
+ microtask(function(){
+ var wrapper = {_w: promise, _d: false}; // wrap
+ try {
+ then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
+ } catch(e){
+ $reject.call(wrapper, e);
+ }
+ });
+ } else {
+ promise._v = value;
+ promise._s = 1;
+ notify(promise, false);
+ }
+ } catch(e){
+ $reject.call({_w: promise, _d: false}, e); // wrap
+ }
+};
+
+// constructor polyfill
+if(!USE_NATIVE){
+ // 25.4.3.1 Promise(executor)
+ $Promise = function Promise(executor){
+ anInstance(this, $Promise, PROMISE, '_h');
+ aFunction(executor);
+ Internal.call(this);
+ try {
+ executor(ctx($resolve, this, 1), ctx($reject, this, 1));
+ } catch(err){
+ $reject.call(this, err);
+ }
+ };
+ Internal = function Promise(executor){
+ this._c = []; // <- awaiting reactions
+ this._a = undefined; // <- checked in isUnhandled reactions
+ this._s = 0; // <- state
+ this._d = false; // <- done
+ this._v = undefined; // <- value
+ this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
+ this._n = false; // <- notify
+ };
+ Internal.prototype = require('./_redefine-all')($Promise.prototype, {
+ // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
+ then: function then(onFulfilled, onRejected){
+ var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
+ reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
+ reaction.fail = typeof onRejected == 'function' && onRejected;
+ reaction.domain = isNode ? process.domain : undefined;
+ this._c.push(reaction);
+ if(this._a)this._a.push(reaction);
+ if(this._s)notify(this, false);
+ return reaction.promise;
+ },
+ // 25.4.5.1 Promise.prototype.catch(onRejected)
+ 'catch': function(onRejected){
+ return this.then(undefined, onRejected);
+ }
+ });
+ PromiseCapability = function(){
+ var promise = new Internal;
+ this.promise = promise;
+ this.resolve = ctx($resolve, promise, 1);
+ this.reject = ctx($reject, promise, 1);
+ };
+}
+
+$export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: $Promise});
+require('./_set-to-string-tag')($Promise, PROMISE);
+require('./_set-species')(PROMISE);
+Wrapper = require('./_core')[PROMISE];
+
+// statics
+$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
+ // 25.4.4.5 Promise.reject(r)
+ reject: function reject(r){
+ var capability = newPromiseCapability(this)
+ , $$reject = capability.reject;
+ $$reject(r);
+ return capability.promise;
+ }
+});
+$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
+ // 25.4.4.6 Promise.resolve(x)
+ resolve: function resolve(x){
+ // instanceof instead of internal slot check because we should fix it without replacement native Promise core
+ if(x instanceof $Promise && sameConstructor(x.constructor, this))return x;
+ var capability = newPromiseCapability(this)
+ , $$resolve = capability.resolve;
+ $$resolve(x);
+ return capability.promise;
+ }
+});
+$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function(iter){
+ $Promise.all(iter)['catch'](empty);
+})), PROMISE, {
+ // 25.4.4.1 Promise.all(iterable)
+ all: function all(iterable){
+ var C = this
+ , capability = newPromiseCapability(C)
+ , resolve = capability.resolve
+ , reject = capability.reject;
+ var abrupt = perform(function(){
+ var values = []
+ , index = 0
+ , remaining = 1;
+ forOf(iterable, false, function(promise){
+ var $index = index++
+ , alreadyCalled = false;
+ values.push(undefined);
+ remaining++;
+ C.resolve(promise).then(function(value){
+ if(alreadyCalled)return;
+ alreadyCalled = true;
+ values[$index] = value;
+ --remaining || resolve(values);
+ }, reject);
+ });
+ --remaining || resolve(values);
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ },
+ // 25.4.4.4 Promise.race(iterable)
+ race: function race(iterable){
+ var C = this
+ , capability = newPromiseCapability(C)
+ , reject = capability.reject;
+ var abrupt = perform(function(){
+ forOf(iterable, false, function(promise){
+ C.resolve(promise).then(capability.resolve, reject);
+ });
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.apply.js b/node_modules/core-js/modules/es6.reflect.apply.js
new file mode 100644
index 000000000..24ea80f51
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.apply.js
@@ -0,0 +1,16 @@
+// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)
+var $export = require('./_export')
+ , aFunction = require('./_a-function')
+ , anObject = require('./_an-object')
+ , rApply = (require('./_global').Reflect || {}).apply
+ , fApply = Function.apply;
+// MS Edge argumentsList argument is optional
+$export($export.S + $export.F * !require('./_fails')(function(){
+ rApply(function(){});
+}), 'Reflect', {
+ apply: function apply(target, thisArgument, argumentsList){
+ var T = aFunction(target)
+ , L = anObject(argumentsList);
+ return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.construct.js b/node_modules/core-js/modules/es6.reflect.construct.js
new file mode 100644
index 000000000..96483d708
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.construct.js
@@ -0,0 +1,47 @@
+// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
+var $export = require('./_export')
+ , create = require('./_object-create')
+ , aFunction = require('./_a-function')
+ , anObject = require('./_an-object')
+ , isObject = require('./_is-object')
+ , fails = require('./_fails')
+ , bind = require('./_bind')
+ , rConstruct = (require('./_global').Reflect || {}).construct;
+
+// MS Edge supports only 2 arguments and argumentsList argument is optional
+// FF Nightly sets third argument as `new.target`, but does not create `this` from it
+var NEW_TARGET_BUG = fails(function(){
+ function F(){}
+ return !(rConstruct(function(){}, [], F) instanceof F);
+});
+var ARGS_BUG = !fails(function(){
+ rConstruct(function(){});
+});
+
+$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
+ construct: function construct(Target, args /*, newTarget*/){
+ aFunction(Target);
+ anObject(args);
+ var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
+ if(ARGS_BUG && !NEW_TARGET_BUG)return rConstruct(Target, args, newTarget);
+ if(Target == newTarget){
+ // w/o altered newTarget, optimization for 0-4 arguments
+ switch(args.length){
+ case 0: return new Target;
+ case 1: return new Target(args[0]);
+ case 2: return new Target(args[0], args[1]);
+ case 3: return new Target(args[0], args[1], args[2]);
+ case 4: return new Target(args[0], args[1], args[2], args[3]);
+ }
+ // w/o altered newTarget, lot of arguments case
+ var $args = [null];
+ $args.push.apply($args, args);
+ return new (bind.apply(Target, $args));
+ }
+ // with altered newTarget, not support built-in constructors
+ var proto = newTarget.prototype
+ , instance = create(isObject(proto) ? proto : Object.prototype)
+ , result = Function.apply.call(Target, instance, args);
+ return isObject(result) ? result : instance;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.define-property.js b/node_modules/core-js/modules/es6.reflect.define-property.js
new file mode 100644
index 000000000..485d43c45
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.define-property.js
@@ -0,0 +1,22 @@
+// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
+var dP = require('./_object-dp')
+ , $export = require('./_export')
+ , anObject = require('./_an-object')
+ , toPrimitive = require('./_to-primitive');
+
+// MS Edge has broken Reflect.defineProperty - throwing instead of returning false
+$export($export.S + $export.F * require('./_fails')(function(){
+ Reflect.defineProperty(dP.f({}, 1, {value: 1}), 1, {value: 2});
+}), 'Reflect', {
+ defineProperty: function defineProperty(target, propertyKey, attributes){
+ anObject(target);
+ propertyKey = toPrimitive(propertyKey, true);
+ anObject(attributes);
+ try {
+ dP.f(target, propertyKey, attributes);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.delete-property.js b/node_modules/core-js/modules/es6.reflect.delete-property.js
new file mode 100644
index 000000000..4e8ce2078
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.delete-property.js
@@ -0,0 +1,11 @@
+// 26.1.4 Reflect.deleteProperty(target, propertyKey)
+var $export = require('./_export')
+ , gOPD = require('./_object-gopd').f
+ , anObject = require('./_an-object');
+
+$export($export.S, 'Reflect', {
+ deleteProperty: function deleteProperty(target, propertyKey){
+ var desc = gOPD(anObject(target), propertyKey);
+ return desc && !desc.configurable ? false : delete target[propertyKey];
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.enumerate.js b/node_modules/core-js/modules/es6.reflect.enumerate.js
new file mode 100644
index 000000000..abdb132d6
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.enumerate.js
@@ -0,0 +1,26 @@
+'use strict';
+// 26.1.5 Reflect.enumerate(target)
+var $export = require('./_export')
+ , anObject = require('./_an-object');
+var Enumerate = function(iterated){
+ this._t = anObject(iterated); // target
+ this._i = 0; // next index
+ var keys = this._k = [] // keys
+ , key;
+ for(key in iterated)keys.push(key);
+};
+require('./_iter-create')(Enumerate, 'Object', function(){
+ var that = this
+ , keys = that._k
+ , key;
+ do {
+ if(that._i >= keys.length)return {value: undefined, done: true};
+ } while(!((key = keys[that._i++]) in that._t));
+ return {value: key, done: false};
+});
+
+$export($export.S, 'Reflect', {
+ enumerate: function enumerate(target){
+ return new Enumerate(target);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js b/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js
new file mode 100644
index 000000000..741a13eba
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js
@@ -0,0 +1,10 @@
+// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)
+var gOPD = require('./_object-gopd')
+ , $export = require('./_export')
+ , anObject = require('./_an-object');
+
+$export($export.S, 'Reflect', {
+ getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey){
+ return gOPD.f(anObject(target), propertyKey);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.get-prototype-of.js b/node_modules/core-js/modules/es6.reflect.get-prototype-of.js
new file mode 100644
index 000000000..4f912d104
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.get-prototype-of.js
@@ -0,0 +1,10 @@
+// 26.1.8 Reflect.getPrototypeOf(target)
+var $export = require('./_export')
+ , getProto = require('./_object-gpo')
+ , anObject = require('./_an-object');
+
+$export($export.S, 'Reflect', {
+ getPrototypeOf: function getPrototypeOf(target){
+ return getProto(anObject(target));
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.get.js b/node_modules/core-js/modules/es6.reflect.get.js
new file mode 100644
index 000000000..f8c39f500
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.get.js
@@ -0,0 +1,21 @@
+// 26.1.6 Reflect.get(target, propertyKey [, receiver])
+var gOPD = require('./_object-gopd')
+ , getPrototypeOf = require('./_object-gpo')
+ , has = require('./_has')
+ , $export = require('./_export')
+ , isObject = require('./_is-object')
+ , anObject = require('./_an-object');
+
+function get(target, propertyKey/*, receiver*/){
+ var receiver = arguments.length < 3 ? target : arguments[2]
+ , desc, proto;
+ if(anObject(target) === receiver)return target[propertyKey];
+ if(desc = gOPD.f(target, propertyKey))return has(desc, 'value')
+ ? desc.value
+ : desc.get !== undefined
+ ? desc.get.call(receiver)
+ : undefined;
+ if(isObject(proto = getPrototypeOf(target)))return get(proto, propertyKey, receiver);
+}
+
+$export($export.S, 'Reflect', {get: get}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.has.js b/node_modules/core-js/modules/es6.reflect.has.js
new file mode 100644
index 000000000..bbb6dbcde
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.has.js
@@ -0,0 +1,8 @@
+// 26.1.9 Reflect.has(target, propertyKey)
+var $export = require('./_export');
+
+$export($export.S, 'Reflect', {
+ has: function has(target, propertyKey){
+ return propertyKey in target;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.is-extensible.js b/node_modules/core-js/modules/es6.reflect.is-extensible.js
new file mode 100644
index 000000000..ffbc2848e
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.is-extensible.js
@@ -0,0 +1,11 @@
+// 26.1.10 Reflect.isExtensible(target)
+var $export = require('./_export')
+ , anObject = require('./_an-object')
+ , $isExtensible = Object.isExtensible;
+
+$export($export.S, 'Reflect', {
+ isExtensible: function isExtensible(target){
+ anObject(target);
+ return $isExtensible ? $isExtensible(target) : true;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.own-keys.js b/node_modules/core-js/modules/es6.reflect.own-keys.js
new file mode 100644
index 000000000..a1e5330c2
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.own-keys.js
@@ -0,0 +1,4 @@
+// 26.1.11 Reflect.ownKeys(target)
+var $export = require('./_export');
+
+$export($export.S, 'Reflect', {ownKeys: require('./_own-keys')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.prevent-extensions.js b/node_modules/core-js/modules/es6.reflect.prevent-extensions.js
new file mode 100644
index 000000000..d3dad8ee4
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.prevent-extensions.js
@@ -0,0 +1,16 @@
+// 26.1.12 Reflect.preventExtensions(target)
+var $export = require('./_export')
+ , anObject = require('./_an-object')
+ , $preventExtensions = Object.preventExtensions;
+
+$export($export.S, 'Reflect', {
+ preventExtensions: function preventExtensions(target){
+ anObject(target);
+ try {
+ if($preventExtensions)$preventExtensions(target);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.set-prototype-of.js b/node_modules/core-js/modules/es6.reflect.set-prototype-of.js
new file mode 100644
index 000000000..b79d9b613
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.set-prototype-of.js
@@ -0,0 +1,15 @@
+// 26.1.14 Reflect.setPrototypeOf(target, proto)
+var $export = require('./_export')
+ , setProto = require('./_set-proto');
+
+if(setProto)$export($export.S, 'Reflect', {
+ setPrototypeOf: function setPrototypeOf(target, proto){
+ setProto.check(target, proto);
+ try {
+ setProto.set(target, proto);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.reflect.set.js b/node_modules/core-js/modules/es6.reflect.set.js
new file mode 100644
index 000000000..c6b916a2e
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.set.js
@@ -0,0 +1,31 @@
+// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
+var dP = require('./_object-dp')
+ , gOPD = require('./_object-gopd')
+ , getPrototypeOf = require('./_object-gpo')
+ , has = require('./_has')
+ , $export = require('./_export')
+ , createDesc = require('./_property-desc')
+ , anObject = require('./_an-object')
+ , isObject = require('./_is-object');
+
+function set(target, propertyKey, V/*, receiver*/){
+ var receiver = arguments.length < 4 ? target : arguments[3]
+ , ownDesc = gOPD.f(anObject(target), propertyKey)
+ , existingDescriptor, proto;
+ if(!ownDesc){
+ if(isObject(proto = getPrototypeOf(target))){
+ return set(proto, propertyKey, V, receiver);
+ }
+ ownDesc = createDesc(0);
+ }
+ if(has(ownDesc, 'value')){
+ if(ownDesc.writable === false || !isObject(receiver))return false;
+ existingDescriptor = gOPD.f(receiver, propertyKey) || createDesc(0);
+ existingDescriptor.value = V;
+ dP.f(receiver, propertyKey, existingDescriptor);
+ return true;
+ }
+ return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
+}
+
+$export($export.S, 'Reflect', {set: set}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.regexp.constructor.js b/node_modules/core-js/modules/es6.regexp.constructor.js
new file mode 100644
index 000000000..93961168c
--- /dev/null
+++ b/node_modules/core-js/modules/es6.regexp.constructor.js
@@ -0,0 +1,43 @@
+var global = require('./_global')
+ , inheritIfRequired = require('./_inherit-if-required')
+ , dP = require('./_object-dp').f
+ , gOPN = require('./_object-gopn').f
+ , isRegExp = require('./_is-regexp')
+ , $flags = require('./_flags')
+ , $RegExp = global.RegExp
+ , Base = $RegExp
+ , proto = $RegExp.prototype
+ , re1 = /a/g
+ , re2 = /a/g
+ // "new" creates a new object, old webkit buggy here
+ , CORRECT_NEW = new $RegExp(re1) !== re1;
+
+if(require('./_descriptors') && (!CORRECT_NEW || require('./_fails')(function(){
+ re2[require('./_wks')('match')] = false;
+ // RegExp constructor can alter flags and IsRegExp works correct with @@match
+ return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
+}))){
+ $RegExp = function RegExp(p, f){
+ var tiRE = this instanceof $RegExp
+ , piRE = isRegExp(p)
+ , fiU = f === undefined;
+ return !tiRE && piRE && p.constructor === $RegExp && fiU ? p
+ : inheritIfRequired(CORRECT_NEW
+ ? new Base(piRE && !fiU ? p.source : p, f)
+ : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)
+ , tiRE ? this : proto, $RegExp);
+ };
+ var proxy = function(key){
+ key in $RegExp || dP($RegExp, key, {
+ configurable: true,
+ get: function(){ return Base[key]; },
+ set: function(it){ Base[key] = it; }
+ });
+ };
+ for(var keys = gOPN(Base), i = 0; keys.length > i; )proxy(keys[i++]);
+ proto.constructor = $RegExp;
+ $RegExp.prototype = proto;
+ require('./_redefine')(global, 'RegExp', $RegExp);
+}
+
+require('./_set-species')('RegExp'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.regexp.flags.js b/node_modules/core-js/modules/es6.regexp.flags.js
new file mode 100644
index 000000000..33ba86f72
--- /dev/null
+++ b/node_modules/core-js/modules/es6.regexp.flags.js
@@ -0,0 +1,5 @@
+// 21.2.5.3 get RegExp.prototype.flags()
+if(require('./_descriptors') && /./g.flags != 'g')require('./_object-dp').f(RegExp.prototype, 'flags', {
+ configurable: true,
+ get: require('./_flags')
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.regexp.match.js b/node_modules/core-js/modules/es6.regexp.match.js
new file mode 100644
index 000000000..814d37191
--- /dev/null
+++ b/node_modules/core-js/modules/es6.regexp.match.js
@@ -0,0 +1,10 @@
+// @@match logic
+require('./_fix-re-wks')('match', 1, function(defined, MATCH, $match){
+ // 21.1.3.11 String.prototype.match(regexp)
+ return [function match(regexp){
+ 'use strict';
+ var O = defined(this)
+ , fn = regexp == undefined ? undefined : regexp[MATCH];
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
+ }, $match];
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.regexp.replace.js b/node_modules/core-js/modules/es6.regexp.replace.js
new file mode 100644
index 000000000..4f651af37
--- /dev/null
+++ b/node_modules/core-js/modules/es6.regexp.replace.js
@@ -0,0 +1,12 @@
+// @@replace logic
+require('./_fix-re-wks')('replace', 2, function(defined, REPLACE, $replace){
+ // 21.1.3.14 String.prototype.replace(searchValue, replaceValue)
+ return [function replace(searchValue, replaceValue){
+ 'use strict';
+ var O = defined(this)
+ , fn = searchValue == undefined ? undefined : searchValue[REPLACE];
+ return fn !== undefined
+ ? fn.call(searchValue, O, replaceValue)
+ : $replace.call(String(O), searchValue, replaceValue);
+ }, $replace];
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.regexp.search.js b/node_modules/core-js/modules/es6.regexp.search.js
new file mode 100644
index 000000000..7aac5e447
--- /dev/null
+++ b/node_modules/core-js/modules/es6.regexp.search.js
@@ -0,0 +1,10 @@
+// @@search logic
+require('./_fix-re-wks')('search', 1, function(defined, SEARCH, $search){
+ // 21.1.3.15 String.prototype.search(regexp)
+ return [function search(regexp){
+ 'use strict';
+ var O = defined(this)
+ , fn = regexp == undefined ? undefined : regexp[SEARCH];
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
+ }, $search];
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.regexp.split.js b/node_modules/core-js/modules/es6.regexp.split.js
new file mode 100644
index 000000000..a991a3fc9
--- /dev/null
+++ b/node_modules/core-js/modules/es6.regexp.split.js
@@ -0,0 +1,70 @@
+// @@split logic
+require('./_fix-re-wks')('split', 2, function(defined, SPLIT, $split){
+ 'use strict';
+ var isRegExp = require('./_is-regexp')
+ , _split = $split
+ , $push = [].push
+ , $SPLIT = 'split'
+ , LENGTH = 'length'
+ , LAST_INDEX = 'lastIndex';
+ if(
+ 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
+ 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
+ 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
+ '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
+ '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
+ ''[$SPLIT](/.?/)[LENGTH]
+ ){
+ var NPCG = /()??/.exec('')[1] === undefined; // nonparticipating capturing group
+ // based on es5-shim implementation, need to rework it
+ $split = function(separator, limit){
+ var string = String(this);
+ if(separator === undefined && limit === 0)return [];
+ // If `separator` is not a regex, use native split
+ if(!isRegExp(separator))return _split.call(string, separator, limit);
+ var output = [];
+ var flags = (separator.ignoreCase ? 'i' : '') +
+ (separator.multiline ? 'm' : '') +
+ (separator.unicode ? 'u' : '') +
+ (separator.sticky ? 'y' : '');
+ var lastLastIndex = 0;
+ var splitLimit = limit === undefined ? 4294967295 : limit >>> 0;
+ // Make `global` and avoid `lastIndex` issues by working with a copy
+ var separatorCopy = new RegExp(separator.source, flags + 'g');
+ var separator2, match, lastIndex, lastLength, i;
+ // Doesn't need flags gy, but they don't hurt
+ if(!NPCG)separator2 = new RegExp('^' + separatorCopy.source + '$(?!\\s)', flags);
+ while(match = separatorCopy.exec(string)){
+ // `separatorCopy.lastIndex` is not reliable cross-browser
+ lastIndex = match.index + match[0][LENGTH];
+ if(lastIndex > lastLastIndex){
+ output.push(string.slice(lastLastIndex, match.index));
+ // Fix browsers whose `exec` methods don't consistently return `undefined` for NPCG
+ if(!NPCG && match[LENGTH] > 1)match[0].replace(separator2, function(){
+ for(i = 1; i < arguments[LENGTH] - 2; i++)if(arguments[i] === undefined)match[i] = undefined;
+ });
+ if(match[LENGTH] > 1 && match.index < string[LENGTH])$push.apply(output, match.slice(1));
+ lastLength = match[0][LENGTH];
+ lastLastIndex = lastIndex;
+ if(output[LENGTH] >= splitLimit)break;
+ }
+ if(separatorCopy[LAST_INDEX] === match.index)separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
+ }
+ if(lastLastIndex === string[LENGTH]){
+ if(lastLength || !separatorCopy.test(''))output.push('');
+ } else output.push(string.slice(lastLastIndex));
+ return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
+ };
+ // Chakra, V8
+ } else if('0'[$SPLIT](undefined, 0)[LENGTH]){
+ $split = function(separator, limit){
+ return separator === undefined && limit === 0 ? [] : _split.call(this, separator, limit);
+ };
+ }
+ // 21.1.3.17 String.prototype.split(separator, limit)
+ return [function split(separator, limit){
+ var O = defined(this)
+ , fn = separator == undefined ? undefined : separator[SPLIT];
+ return fn !== undefined ? fn.call(separator, O, limit) : $split.call(String(O), separator, limit);
+ }, $split];
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.regexp.to-string.js b/node_modules/core-js/modules/es6.regexp.to-string.js
new file mode 100644
index 000000000..699aeff29
--- /dev/null
+++ b/node_modules/core-js/modules/es6.regexp.to-string.js
@@ -0,0 +1,25 @@
+'use strict';
+require('./es6.regexp.flags');
+var anObject = require('./_an-object')
+ , $flags = require('./_flags')
+ , DESCRIPTORS = require('./_descriptors')
+ , TO_STRING = 'toString'
+ , $toString = /./[TO_STRING];
+
+var define = function(fn){
+ require('./_redefine')(RegExp.prototype, TO_STRING, fn, true);
+};
+
+// 21.2.5.14 RegExp.prototype.toString()
+if(require('./_fails')(function(){ return $toString.call({source: 'a', flags: 'b'}) != '/a/b'; })){
+ define(function toString(){
+ var R = anObject(this);
+ return '/'.concat(R.source, '/',
+ 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
+ });
+// FF44- RegExp#toString has a wrong name
+} else if($toString.name != TO_STRING){
+ define(function toString(){
+ return $toString.call(this);
+ });
+} \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.set.js b/node_modules/core-js/modules/es6.set.js
new file mode 100644
index 000000000..a18808818
--- /dev/null
+++ b/node_modules/core-js/modules/es6.set.js
@@ -0,0 +1,12 @@
+'use strict';
+var strong = require('./_collection-strong');
+
+// 23.2 Set Objects
+module.exports = require('./_collection')('Set', function(get){
+ return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.2.3.1 Set.prototype.add(value)
+ add: function add(value){
+ return strong.def(this, value = value === 0 ? 0 : value, value);
+ }
+}, strong); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.anchor.js b/node_modules/core-js/modules/es6.string.anchor.js
new file mode 100644
index 000000000..65db25219
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.anchor.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.2 String.prototype.anchor(name)
+require('./_string-html')('anchor', function(createHTML){
+ return function anchor(name){
+ return createHTML(this, 'a', 'name', name);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.big.js b/node_modules/core-js/modules/es6.string.big.js
new file mode 100644
index 000000000..aeeb1aba9
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.big.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.3 String.prototype.big()
+require('./_string-html')('big', function(createHTML){
+ return function big(){
+ return createHTML(this, 'big', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.blink.js b/node_modules/core-js/modules/es6.string.blink.js
new file mode 100644
index 000000000..aef8da2e3
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.blink.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.4 String.prototype.blink()
+require('./_string-html')('blink', function(createHTML){
+ return function blink(){
+ return createHTML(this, 'blink', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.bold.js b/node_modules/core-js/modules/es6.string.bold.js
new file mode 100644
index 000000000..022cdb075
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.bold.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.5 String.prototype.bold()
+require('./_string-html')('bold', function(createHTML){
+ return function bold(){
+ return createHTML(this, 'b', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.code-point-at.js b/node_modules/core-js/modules/es6.string.code-point-at.js
new file mode 100644
index 000000000..cf544652a
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.code-point-at.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./_export')
+ , $at = require('./_string-at')(false);
+$export($export.P, 'String', {
+ // 21.1.3.3 String.prototype.codePointAt(pos)
+ codePointAt: function codePointAt(pos){
+ return $at(this, pos);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.ends-with.js b/node_modules/core-js/modules/es6.string.ends-with.js
new file mode 100644
index 000000000..80baed9ad
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.ends-with.js
@@ -0,0 +1,20 @@
+// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])
+'use strict';
+var $export = require('./_export')
+ , toLength = require('./_to-length')
+ , context = require('./_string-context')
+ , ENDS_WITH = 'endsWith'
+ , $endsWith = ''[ENDS_WITH];
+
+$export($export.P + $export.F * require('./_fails-is-regexp')(ENDS_WITH), 'String', {
+ endsWith: function endsWith(searchString /*, endPosition = @length */){
+ var that = context(this, searchString, ENDS_WITH)
+ , endPosition = arguments.length > 1 ? arguments[1] : undefined
+ , len = toLength(that.length)
+ , end = endPosition === undefined ? len : Math.min(toLength(endPosition), len)
+ , search = String(searchString);
+ return $endsWith
+ ? $endsWith.call(that, search, end)
+ : that.slice(end - search.length, end) === search;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.fixed.js b/node_modules/core-js/modules/es6.string.fixed.js
new file mode 100644
index 000000000..d017e202a
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.fixed.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.6 String.prototype.fixed()
+require('./_string-html')('fixed', function(createHTML){
+ return function fixed(){
+ return createHTML(this, 'tt', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.fontcolor.js b/node_modules/core-js/modules/es6.string.fontcolor.js
new file mode 100644
index 000000000..d40711f03
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.fontcolor.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.7 String.prototype.fontcolor(color)
+require('./_string-html')('fontcolor', function(createHTML){
+ return function fontcolor(color){
+ return createHTML(this, 'font', 'color', color);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.fontsize.js b/node_modules/core-js/modules/es6.string.fontsize.js
new file mode 100644
index 000000000..ba3ff9809
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.fontsize.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.8 String.prototype.fontsize(size)
+require('./_string-html')('fontsize', function(createHTML){
+ return function fontsize(size){
+ return createHTML(this, 'font', 'size', size);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.from-code-point.js b/node_modules/core-js/modules/es6.string.from-code-point.js
new file mode 100644
index 000000000..c8776d871
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.from-code-point.js
@@ -0,0 +1,23 @@
+var $export = require('./_export')
+ , toIndex = require('./_to-index')
+ , fromCharCode = String.fromCharCode
+ , $fromCodePoint = String.fromCodePoint;
+
+// length should be 1, old FF problem
+$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
+ // 21.1.2.2 String.fromCodePoint(...codePoints)
+ fromCodePoint: function fromCodePoint(x){ // eslint-disable-line no-unused-vars
+ var res = []
+ , aLen = arguments.length
+ , i = 0
+ , code;
+ while(aLen > i){
+ code = +arguments[i++];
+ if(toIndex(code, 0x10ffff) !== code)throw RangeError(code + ' is not a valid code point');
+ res.push(code < 0x10000
+ ? fromCharCode(code)
+ : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
+ );
+ } return res.join('');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.includes.js b/node_modules/core-js/modules/es6.string.includes.js
new file mode 100644
index 000000000..c6b4ee2fa
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.includes.js
@@ -0,0 +1,12 @@
+// 21.1.3.7 String.prototype.includes(searchString, position = 0)
+'use strict';
+var $export = require('./_export')
+ , context = require('./_string-context')
+ , INCLUDES = 'includes';
+
+$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {
+ includes: function includes(searchString /*, position = 0 */){
+ return !!~context(this, searchString, INCLUDES)
+ .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.italics.js b/node_modules/core-js/modules/es6.string.italics.js
new file mode 100644
index 000000000..d33efd3c4
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.italics.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.9 String.prototype.italics()
+require('./_string-html')('italics', function(createHTML){
+ return function italics(){
+ return createHTML(this, 'i', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.iterator.js b/node_modules/core-js/modules/es6.string.iterator.js
new file mode 100644
index 000000000..ac391ee4e
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.iterator.js
@@ -0,0 +1,17 @@
+'use strict';
+var $at = require('./_string-at')(true);
+
+// 21.1.3.27 String.prototype[@@iterator]()
+require('./_iter-define')(String, 'String', function(iterated){
+ this._t = String(iterated); // target
+ this._i = 0; // next index
+// 21.1.5.2.1 %StringIteratorPrototype%.next()
+}, function(){
+ var O = this._t
+ , index = this._i
+ , point;
+ if(index >= O.length)return {value: undefined, done: true};
+ point = $at(O, index);
+ this._i += point.length;
+ return {value: point, done: false};
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.link.js b/node_modules/core-js/modules/es6.string.link.js
new file mode 100644
index 000000000..6a75c18a1
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.link.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.10 String.prototype.link(url)
+require('./_string-html')('link', function(createHTML){
+ return function link(url){
+ return createHTML(this, 'a', 'href', url);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.raw.js b/node_modules/core-js/modules/es6.string.raw.js
new file mode 100644
index 000000000..1016acfa2
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.raw.js
@@ -0,0 +1,18 @@
+var $export = require('./_export')
+ , toIObject = require('./_to-iobject')
+ , toLength = require('./_to-length');
+
+$export($export.S, 'String', {
+ // 21.1.2.4 String.raw(callSite, ...substitutions)
+ raw: function raw(callSite){
+ var tpl = toIObject(callSite.raw)
+ , len = toLength(tpl.length)
+ , aLen = arguments.length
+ , res = []
+ , i = 0;
+ while(len > i){
+ res.push(String(tpl[i++]));
+ if(i < aLen)res.push(String(arguments[i]));
+ } return res.join('');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.repeat.js b/node_modules/core-js/modules/es6.string.repeat.js
new file mode 100644
index 000000000..a054222d6
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.repeat.js
@@ -0,0 +1,6 @@
+var $export = require('./_export');
+
+$export($export.P, 'String', {
+ // 21.1.3.13 String.prototype.repeat(count)
+ repeat: require('./_string-repeat')
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.small.js b/node_modules/core-js/modules/es6.string.small.js
new file mode 100644
index 000000000..51b1b30d8
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.small.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.11 String.prototype.small()
+require('./_string-html')('small', function(createHTML){
+ return function small(){
+ return createHTML(this, 'small', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.starts-with.js b/node_modules/core-js/modules/es6.string.starts-with.js
new file mode 100644
index 000000000..017805f01
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.starts-with.js
@@ -0,0 +1,18 @@
+// 21.1.3.18 String.prototype.startsWith(searchString [, position ])
+'use strict';
+var $export = require('./_export')
+ , toLength = require('./_to-length')
+ , context = require('./_string-context')
+ , STARTS_WITH = 'startsWith'
+ , $startsWith = ''[STARTS_WITH];
+
+$export($export.P + $export.F * require('./_fails-is-regexp')(STARTS_WITH), 'String', {
+ startsWith: function startsWith(searchString /*, position = 0 */){
+ var that = context(this, searchString, STARTS_WITH)
+ , index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length))
+ , search = String(searchString);
+ return $startsWith
+ ? $startsWith.call(that, search, index)
+ : that.slice(index, index + search.length) === search;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.strike.js b/node_modules/core-js/modules/es6.string.strike.js
new file mode 100644
index 000000000..c6287d3a5
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.strike.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.12 String.prototype.strike()
+require('./_string-html')('strike', function(createHTML){
+ return function strike(){
+ return createHTML(this, 'strike', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.sub.js b/node_modules/core-js/modules/es6.string.sub.js
new file mode 100644
index 000000000..ee18ea7ac
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.sub.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.13 String.prototype.sub()
+require('./_string-html')('sub', function(createHTML){
+ return function sub(){
+ return createHTML(this, 'sub', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.sup.js b/node_modules/core-js/modules/es6.string.sup.js
new file mode 100644
index 000000000..a34299881
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.sup.js
@@ -0,0 +1,7 @@
+'use strict';
+// B.2.3.14 String.prototype.sup()
+require('./_string-html')('sup', function(createHTML){
+ return function sup(){
+ return createHTML(this, 'sup', '', '');
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.string.trim.js b/node_modules/core-js/modules/es6.string.trim.js
new file mode 100644
index 000000000..35f0fb0b8
--- /dev/null
+++ b/node_modules/core-js/modules/es6.string.trim.js
@@ -0,0 +1,7 @@
+'use strict';
+// 21.1.3.25 String.prototype.trim()
+require('./_string-trim')('trim', function($trim){
+ return function trim(){
+ return $trim(this, 3);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.symbol.js b/node_modules/core-js/modules/es6.symbol.js
new file mode 100644
index 000000000..eae491c5a
--- /dev/null
+++ b/node_modules/core-js/modules/es6.symbol.js
@@ -0,0 +1,235 @@
+'use strict';
+// ECMAScript 6 symbols shim
+var global = require('./_global')
+ , has = require('./_has')
+ , DESCRIPTORS = require('./_descriptors')
+ , $export = require('./_export')
+ , redefine = require('./_redefine')
+ , META = require('./_meta').KEY
+ , $fails = require('./_fails')
+ , shared = require('./_shared')
+ , setToStringTag = require('./_set-to-string-tag')
+ , uid = require('./_uid')
+ , wks = require('./_wks')
+ , wksExt = require('./_wks-ext')
+ , wksDefine = require('./_wks-define')
+ , keyOf = require('./_keyof')
+ , enumKeys = require('./_enum-keys')
+ , isArray = require('./_is-array')
+ , anObject = require('./_an-object')
+ , toIObject = require('./_to-iobject')
+ , toPrimitive = require('./_to-primitive')
+ , createDesc = require('./_property-desc')
+ , _create = require('./_object-create')
+ , gOPNExt = require('./_object-gopn-ext')
+ , $GOPD = require('./_object-gopd')
+ , $DP = require('./_object-dp')
+ , $keys = require('./_object-keys')
+ , gOPD = $GOPD.f
+ , dP = $DP.f
+ , gOPN = gOPNExt.f
+ , $Symbol = global.Symbol
+ , $JSON = global.JSON
+ , _stringify = $JSON && $JSON.stringify
+ , PROTOTYPE = 'prototype'
+ , HIDDEN = wks('_hidden')
+ , TO_PRIMITIVE = wks('toPrimitive')
+ , isEnum = {}.propertyIsEnumerable
+ , SymbolRegistry = shared('symbol-registry')
+ , AllSymbols = shared('symbols')
+ , OPSymbols = shared('op-symbols')
+ , ObjectProto = Object[PROTOTYPE]
+ , USE_NATIVE = typeof $Symbol == 'function'
+ , QObject = global.QObject;
+// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
+var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
+
+// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+var setSymbolDesc = DESCRIPTORS && $fails(function(){
+ return _create(dP({}, 'a', {
+ get: function(){ return dP(this, 'a', {value: 7}).a; }
+ })).a != 7;
+}) ? function(it, key, D){
+ var protoDesc = gOPD(ObjectProto, key);
+ if(protoDesc)delete ObjectProto[key];
+ dP(it, key, D);
+ if(protoDesc && it !== ObjectProto)dP(ObjectProto, key, protoDesc);
+} : dP;
+
+var wrap = function(tag){
+ var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
+ sym._k = tag;
+ return sym;
+};
+
+var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function(it){
+ return typeof it == 'symbol';
+} : function(it){
+ return it instanceof $Symbol;
+};
+
+var $defineProperty = function defineProperty(it, key, D){
+ if(it === ObjectProto)$defineProperty(OPSymbols, key, D);
+ anObject(it);
+ key = toPrimitive(key, true);
+ anObject(D);
+ if(has(AllSymbols, key)){
+ if(!D.enumerable){
+ if(!has(it, HIDDEN))dP(it, HIDDEN, createDesc(1, {}));
+ it[HIDDEN][key] = true;
+ } else {
+ if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
+ D = _create(D, {enumerable: createDesc(0, false)});
+ } return setSymbolDesc(it, key, D);
+ } return dP(it, key, D);
+};
+var $defineProperties = function defineProperties(it, P){
+ anObject(it);
+ var keys = enumKeys(P = toIObject(P))
+ , i = 0
+ , l = keys.length
+ , key;
+ while(l > i)$defineProperty(it, key = keys[i++], P[key]);
+ return it;
+};
+var $create = function create(it, P){
+ return P === undefined ? _create(it) : $defineProperties(_create(it), P);
+};
+var $propertyIsEnumerable = function propertyIsEnumerable(key){
+ var E = isEnum.call(this, key = toPrimitive(key, true));
+ if(this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return false;
+ return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
+};
+var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
+ it = toIObject(it);
+ key = toPrimitive(key, true);
+ if(it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return;
+ var D = gOPD(it, key);
+ if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
+ return D;
+};
+var $getOwnPropertyNames = function getOwnPropertyNames(it){
+ var names = gOPN(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i){
+ if(!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META)result.push(key);
+ } return result;
+};
+var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
+ var IS_OP = it === ObjectProto
+ , names = gOPN(IS_OP ? OPSymbols : toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i){
+ if(has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true))result.push(AllSymbols[key]);
+ } return result;
+};
+
+// 19.4.1.1 Symbol([description])
+if(!USE_NATIVE){
+ $Symbol = function Symbol(){
+ if(this instanceof $Symbol)throw TypeError('Symbol is not a constructor!');
+ var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
+ var $set = function(value){
+ if(this === ObjectProto)$set.call(OPSymbols, value);
+ if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
+ setSymbolDesc(this, tag, createDesc(1, value));
+ };
+ if(DESCRIPTORS && setter)setSymbolDesc(ObjectProto, tag, {configurable: true, set: $set});
+ return wrap(tag);
+ };
+ redefine($Symbol[PROTOTYPE], 'toString', function toString(){
+ return this._k;
+ });
+
+ $GOPD.f = $getOwnPropertyDescriptor;
+ $DP.f = $defineProperty;
+ require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;
+ require('./_object-pie').f = $propertyIsEnumerable;
+ require('./_object-gops').f = $getOwnPropertySymbols;
+
+ if(DESCRIPTORS && !require('./_library')){
+ redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
+ }
+
+ wksExt.f = function(name){
+ return wrap(wks(name));
+ }
+}
+
+$export($export.G + $export.W + $export.F * !USE_NATIVE, {Symbol: $Symbol});
+
+for(var symbols = (
+ // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
+ 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
+).split(','), i = 0; symbols.length > i; )wks(symbols[i++]);
+
+for(var symbols = $keys(wks.store), i = 0; symbols.length > i; )wksDefine(symbols[i++]);
+
+$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
+ // 19.4.2.1 Symbol.for(key)
+ 'for': function(key){
+ return has(SymbolRegistry, key += '')
+ ? SymbolRegistry[key]
+ : SymbolRegistry[key] = $Symbol(key);
+ },
+ // 19.4.2.5 Symbol.keyFor(sym)
+ keyFor: function keyFor(key){
+ if(isSymbol(key))return keyOf(SymbolRegistry, key);
+ throw TypeError(key + ' is not a symbol!');
+ },
+ useSetter: function(){ setter = true; },
+ useSimple: function(){ setter = false; }
+});
+
+$export($export.S + $export.F * !USE_NATIVE, 'Object', {
+ // 19.1.2.2 Object.create(O [, Properties])
+ create: $create,
+ // 19.1.2.4 Object.defineProperty(O, P, Attributes)
+ defineProperty: $defineProperty,
+ // 19.1.2.3 Object.defineProperties(O, Properties)
+ defineProperties: $defineProperties,
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $getOwnPropertyNames,
+ // 19.1.2.8 Object.getOwnPropertySymbols(O)
+ getOwnPropertySymbols: $getOwnPropertySymbols
+});
+
+// 24.3.2 JSON.stringify(value [, replacer [, space]])
+$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function(){
+ var S = $Symbol();
+ // MS Edge converts symbol values to JSON as {}
+ // WebKit converts symbol values to JSON as null
+ // V8 throws on boxed symbols
+ return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
+})), 'JSON', {
+ stringify: function stringify(it){
+ if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
+ var args = [it]
+ , i = 1
+ , replacer, $replacer;
+ while(arguments.length > i)args.push(arguments[i++]);
+ replacer = args[1];
+ if(typeof replacer == 'function')$replacer = replacer;
+ if($replacer || !isArray(replacer))replacer = function(key, value){
+ if($replacer)value = $replacer.call(this, key, value);
+ if(!isSymbol(value))return value;
+ };
+ args[1] = replacer;
+ return _stringify.apply($JSON, args);
+ }
+});
+
+// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
+$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
+// 19.4.3.5 Symbol.prototype[@@toStringTag]
+setToStringTag($Symbol, 'Symbol');
+// 20.2.1.9 Math[@@toStringTag]
+setToStringTag(Math, 'Math', true);
+// 24.3.3 JSON[@@toStringTag]
+setToStringTag(global.JSON, 'JSON', true); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.array-buffer.js b/node_modules/core-js/modules/es6.typed.array-buffer.js
new file mode 100644
index 000000000..9f47082c2
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.array-buffer.js
@@ -0,0 +1,46 @@
+'use strict';
+var $export = require('./_export')
+ , $typed = require('./_typed')
+ , buffer = require('./_typed-buffer')
+ , anObject = require('./_an-object')
+ , toIndex = require('./_to-index')
+ , toLength = require('./_to-length')
+ , isObject = require('./_is-object')
+ , ArrayBuffer = require('./_global').ArrayBuffer
+ , speciesConstructor = require('./_species-constructor')
+ , $ArrayBuffer = buffer.ArrayBuffer
+ , $DataView = buffer.DataView
+ , $isView = $typed.ABV && ArrayBuffer.isView
+ , $slice = $ArrayBuffer.prototype.slice
+ , VIEW = $typed.VIEW
+ , ARRAY_BUFFER = 'ArrayBuffer';
+
+$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), {ArrayBuffer: $ArrayBuffer});
+
+$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {
+ // 24.1.3.1 ArrayBuffer.isView(arg)
+ isView: function isView(it){
+ return $isView && $isView(it) || isObject(it) && VIEW in it;
+ }
+});
+
+$export($export.P + $export.U + $export.F * require('./_fails')(function(){
+ return !new $ArrayBuffer(2).slice(1, undefined).byteLength;
+}), ARRAY_BUFFER, {
+ // 24.1.4.3 ArrayBuffer.prototype.slice(start, end)
+ slice: function slice(start, end){
+ if($slice !== undefined && end === undefined)return $slice.call(anObject(this), start); // FF fix
+ var len = anObject(this).byteLength
+ , first = toIndex(start, len)
+ , final = toIndex(end === undefined ? len : end, len)
+ , result = new (speciesConstructor(this, $ArrayBuffer))(toLength(final - first))
+ , viewS = new $DataView(this)
+ , viewT = new $DataView(result)
+ , index = 0;
+ while(first < final){
+ viewT.setUint8(index++, viewS.getUint8(first++));
+ } return result;
+ }
+});
+
+require('./_set-species')(ARRAY_BUFFER); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.data-view.js b/node_modules/core-js/modules/es6.typed.data-view.js
new file mode 100644
index 000000000..ee7b88127
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.data-view.js
@@ -0,0 +1,4 @@
+var $export = require('./_export');
+$export($export.G + $export.W + $export.F * !require('./_typed').ABV, {
+ DataView: require('./_typed-buffer').DataView
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.float32-array.js b/node_modules/core-js/modules/es6.typed.float32-array.js
new file mode 100644
index 000000000..2c4c9a699
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.float32-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Float32', 4, function(init){
+ return function Float32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.float64-array.js b/node_modules/core-js/modules/es6.typed.float64-array.js
new file mode 100644
index 000000000..4b20257f7
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.float64-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Float64', 8, function(init){
+ return function Float64Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.int16-array.js b/node_modules/core-js/modules/es6.typed.int16-array.js
new file mode 100644
index 000000000..d3f61c564
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.int16-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Int16', 2, function(init){
+ return function Int16Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.int32-array.js b/node_modules/core-js/modules/es6.typed.int32-array.js
new file mode 100644
index 000000000..df47c1bb0
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.int32-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Int32', 4, function(init){
+ return function Int32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.int8-array.js b/node_modules/core-js/modules/es6.typed.int8-array.js
new file mode 100644
index 000000000..da4dbf0a2
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.int8-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Int8', 1, function(init){
+ return function Int8Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.uint16-array.js b/node_modules/core-js/modules/es6.typed.uint16-array.js
new file mode 100644
index 000000000..cb335773d
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.uint16-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Uint16', 2, function(init){
+ return function Uint16Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.uint32-array.js b/node_modules/core-js/modules/es6.typed.uint32-array.js
new file mode 100644
index 000000000..41c9e7b80
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.uint32-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Uint32', 4, function(init){
+ return function Uint32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.uint8-array.js b/node_modules/core-js/modules/es6.typed.uint8-array.js
new file mode 100644
index 000000000..f794f86cf
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.uint8-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Uint8', 1, function(init){
+ return function Uint8Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js b/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js
new file mode 100644
index 000000000..b12304799
--- /dev/null
+++ b/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js
@@ -0,0 +1,5 @@
+require('./_typed-array')('Uint8', 1, function(init){
+ return function Uint8ClampedArray(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}, true); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.weak-map.js b/node_modules/core-js/modules/es6.weak-map.js
new file mode 100644
index 000000000..4109db336
--- /dev/null
+++ b/node_modules/core-js/modules/es6.weak-map.js
@@ -0,0 +1,56 @@
+'use strict';
+var each = require('./_array-methods')(0)
+ , redefine = require('./_redefine')
+ , meta = require('./_meta')
+ , assign = require('./_object-assign')
+ , weak = require('./_collection-weak')
+ , isObject = require('./_is-object')
+ , getWeak = meta.getWeak
+ , isExtensible = Object.isExtensible
+ , uncaughtFrozenStore = weak.ufstore
+ , tmp = {}
+ , InternalMap;
+
+var wrapper = function(get){
+ return function WeakMap(){
+ return get(this, arguments.length > 0 ? arguments[0] : undefined);
+ };
+};
+
+var methods = {
+ // 23.3.3.3 WeakMap.prototype.get(key)
+ get: function get(key){
+ if(isObject(key)){
+ var data = getWeak(key);
+ if(data === true)return uncaughtFrozenStore(this).get(key);
+ return data ? data[this._i] : undefined;
+ }
+ },
+ // 23.3.3.5 WeakMap.prototype.set(key, value)
+ set: function set(key, value){
+ return weak.def(this, key, value);
+ }
+};
+
+// 23.3 WeakMap Objects
+var $WeakMap = module.exports = require('./_collection')('WeakMap', wrapper, methods, weak, true, true);
+
+// IE11 WeakMap frozen keys fix
+if(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
+ InternalMap = weak.getConstructor(wrapper);
+ assign(InternalMap.prototype, methods);
+ meta.NEED = true;
+ each(['delete', 'has', 'get', 'set'], function(key){
+ var proto = $WeakMap.prototype
+ , method = proto[key];
+ redefine(proto, key, function(a, b){
+ // store frozen objects on internal weakmap shim
+ if(isObject(a) && !isExtensible(a)){
+ if(!this._f)this._f = new InternalMap;
+ var result = this._f[key](a, b);
+ return key == 'set' ? this : result;
+ // store all the rest on native weakmap
+ } return method.call(this, a, b);
+ });
+ });
+} \ No newline at end of file
diff --git a/node_modules/core-js/modules/es6.weak-set.js b/node_modules/core-js/modules/es6.weak-set.js
new file mode 100644
index 000000000..77d01b6ba
--- /dev/null
+++ b/node_modules/core-js/modules/es6.weak-set.js
@@ -0,0 +1,12 @@
+'use strict';
+var weak = require('./_collection-weak');
+
+// 23.4 WeakSet Objects
+require('./_collection')('WeakSet', function(get){
+ return function WeakSet(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.4.3.1 WeakSet.prototype.add(value)
+ add: function add(value){
+ return weak.def(this, value, true);
+ }
+}, weak, false, true); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.array.includes.js b/node_modules/core-js/modules/es7.array.includes.js
new file mode 100644
index 000000000..6d5b00905
--- /dev/null
+++ b/node_modules/core-js/modules/es7.array.includes.js
@@ -0,0 +1,12 @@
+'use strict';
+// https://github.com/tc39/Array.prototype.includes
+var $export = require('./_export')
+ , $includes = require('./_array-includes')(true);
+
+$export($export.P, 'Array', {
+ includes: function includes(el /*, fromIndex = 0 */){
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+
+require('./_add-to-unscopables')('includes'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.asap.js b/node_modules/core-js/modules/es7.asap.js
new file mode 100644
index 000000000..b762b49ab
--- /dev/null
+++ b/node_modules/core-js/modules/es7.asap.js
@@ -0,0 +1,12 @@
+// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask
+var $export = require('./_export')
+ , microtask = require('./_microtask')()
+ , process = require('./_global').process
+ , isNode = require('./_cof')(process) == 'process';
+
+$export($export.G, {
+ asap: function asap(fn){
+ var domain = isNode && process.domain;
+ microtask(domain ? domain.bind(fn) : fn);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.error.is-error.js b/node_modules/core-js/modules/es7.error.is-error.js
new file mode 100644
index 000000000..d6fe29dc6
--- /dev/null
+++ b/node_modules/core-js/modules/es7.error.is-error.js
@@ -0,0 +1,9 @@
+// https://github.com/ljharb/proposal-is-error
+var $export = require('./_export')
+ , cof = require('./_cof');
+
+$export($export.S, 'Error', {
+ isError: function isError(it){
+ return cof(it) === 'Error';
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.map.to-json.js b/node_modules/core-js/modules/es7.map.to-json.js
new file mode 100644
index 000000000..19f9b6d38
--- /dev/null
+++ b/node_modules/core-js/modules/es7.map.to-json.js
@@ -0,0 +1,4 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var $export = require('./_export');
+
+$export($export.P + $export.R, 'Map', {toJSON: require('./_collection-to-json')('Map')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.math.iaddh.js b/node_modules/core-js/modules/es7.math.iaddh.js
new file mode 100644
index 000000000..bb3f3d38d
--- /dev/null
+++ b/node_modules/core-js/modules/es7.math.iaddh.js
@@ -0,0 +1,11 @@
+// https://gist.github.com/BrendanEich/4294d5c212a6d2254703
+var $export = require('./_export');
+
+$export($export.S, 'Math', {
+ iaddh: function iaddh(x0, x1, y0, y1){
+ var $x0 = x0 >>> 0
+ , $x1 = x1 >>> 0
+ , $y0 = y0 >>> 0;
+ return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.math.imulh.js b/node_modules/core-js/modules/es7.math.imulh.js
new file mode 100644
index 000000000..a25da686a
--- /dev/null
+++ b/node_modules/core-js/modules/es7.math.imulh.js
@@ -0,0 +1,16 @@
+// https://gist.github.com/BrendanEich/4294d5c212a6d2254703
+var $export = require('./_export');
+
+$export($export.S, 'Math', {
+ imulh: function imulh(u, v){
+ var UINT16 = 0xffff
+ , $u = +u
+ , $v = +v
+ , u0 = $u & UINT16
+ , v0 = $v & UINT16
+ , u1 = $u >> 16
+ , v1 = $v >> 16
+ , t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16);
+ return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.math.isubh.js b/node_modules/core-js/modules/es7.math.isubh.js
new file mode 100644
index 000000000..3814dc29c
--- /dev/null
+++ b/node_modules/core-js/modules/es7.math.isubh.js
@@ -0,0 +1,11 @@
+// https://gist.github.com/BrendanEich/4294d5c212a6d2254703
+var $export = require('./_export');
+
+$export($export.S, 'Math', {
+ isubh: function isubh(x0, x1, y0, y1){
+ var $x0 = x0 >>> 0
+ , $x1 = x1 >>> 0
+ , $y0 = y0 >>> 0;
+ return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.math.umulh.js b/node_modules/core-js/modules/es7.math.umulh.js
new file mode 100644
index 000000000..0d22cf1ba
--- /dev/null
+++ b/node_modules/core-js/modules/es7.math.umulh.js
@@ -0,0 +1,16 @@
+// https://gist.github.com/BrendanEich/4294d5c212a6d2254703
+var $export = require('./_export');
+
+$export($export.S, 'Math', {
+ umulh: function umulh(u, v){
+ var UINT16 = 0xffff
+ , $u = +u
+ , $v = +v
+ , u0 = $u & UINT16
+ , v0 = $v & UINT16
+ , u1 = $u >>> 16
+ , v1 = $v >>> 16
+ , t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16);
+ return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.define-getter.js b/node_modules/core-js/modules/es7.object.define-getter.js
new file mode 100644
index 000000000..f206e96a2
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.define-getter.js
@@ -0,0 +1,12 @@
+'use strict';
+var $export = require('./_export')
+ , toObject = require('./_to-object')
+ , aFunction = require('./_a-function')
+ , $defineProperty = require('./_object-dp');
+
+// B.2.2.2 Object.prototype.__defineGetter__(P, getter)
+require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', {
+ __defineGetter__: function __defineGetter__(P, getter){
+ $defineProperty.f(toObject(this), P, {get: aFunction(getter), enumerable: true, configurable: true});
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.define-setter.js b/node_modules/core-js/modules/es7.object.define-setter.js
new file mode 100644
index 000000000..c0f7b7000
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.define-setter.js
@@ -0,0 +1,12 @@
+'use strict';
+var $export = require('./_export')
+ , toObject = require('./_to-object')
+ , aFunction = require('./_a-function')
+ , $defineProperty = require('./_object-dp');
+
+// B.2.2.3 Object.prototype.__defineSetter__(P, setter)
+require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', {
+ __defineSetter__: function __defineSetter__(P, setter){
+ $defineProperty.f(toObject(this), P, {set: aFunction(setter), enumerable: true, configurable: true});
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.entries.js b/node_modules/core-js/modules/es7.object.entries.js
new file mode 100644
index 000000000..cfc049dfa
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.entries.js
@@ -0,0 +1,9 @@
+// https://github.com/tc39/proposal-object-values-entries
+var $export = require('./_export')
+ , $entries = require('./_object-to-array')(true);
+
+$export($export.S, 'Object', {
+ entries: function entries(it){
+ return $entries(it);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.enumerable-entries.js b/node_modules/core-js/modules/es7.object.enumerable-entries.js
new file mode 100644
index 000000000..5daa803b1
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.enumerable-entries.js
@@ -0,0 +1,12 @@
+// https://github.com/leobalter/object-enumerables
+var $export = require('./_export')
+ , toObject = require('./_to-object');
+
+$export($export.S, 'Object', {
+ enumerableEntries: function enumerableEntries(O){
+ var T = toObject(O)
+ , properties = [];
+ for(var key in T)properties.push([key, T[key]]);
+ return properties;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.enumerable-keys.js b/node_modules/core-js/modules/es7.object.enumerable-keys.js
new file mode 100644
index 000000000..791ec1849
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.enumerable-keys.js
@@ -0,0 +1,12 @@
+// https://github.com/leobalter/object-enumerables
+var $export = require('./_export')
+ , toObject = require('./_to-object');
+
+$export($export.S, 'Object', {
+ enumerableKeys: function enumerableKeys(O){
+ var T = toObject(O)
+ , properties = [];
+ for(var key in T)properties.push(key);
+ return properties;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.enumerable-values.js b/node_modules/core-js/modules/es7.object.enumerable-values.js
new file mode 100644
index 000000000..1d1bfaa72
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.enumerable-values.js
@@ -0,0 +1,12 @@
+// https://github.com/leobalter/object-enumerables
+var $export = require('./_export')
+ , toObject = require('./_to-object');
+
+$export($export.S, 'Object', {
+ enumerableValues: function enumerableValues(O){
+ var T = toObject(O)
+ , properties = [];
+ for(var key in T)properties.push(T[key]);
+ return properties;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js b/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js
new file mode 100644
index 000000000..0242b7a0c
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js
@@ -0,0 +1,19 @@
+// https://github.com/tc39/proposal-object-getownpropertydescriptors
+var $export = require('./_export')
+ , ownKeys = require('./_own-keys')
+ , toIObject = require('./_to-iobject')
+ , gOPD = require('./_object-gopd')
+ , createProperty = require('./_create-property');
+
+$export($export.S, 'Object', {
+ getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object){
+ var O = toIObject(object)
+ , getDesc = gOPD.f
+ , keys = ownKeys(O)
+ , result = {}
+ , i = 0
+ , key;
+ while(keys.length > i)createProperty(result, key = keys[i++], getDesc(O, key));
+ return result;
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.lookup-getter.js b/node_modules/core-js/modules/es7.object.lookup-getter.js
new file mode 100644
index 000000000..ec140345d
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.lookup-getter.js
@@ -0,0 +1,18 @@
+'use strict';
+var $export = require('./_export')
+ , toObject = require('./_to-object')
+ , toPrimitive = require('./_to-primitive')
+ , getPrototypeOf = require('./_object-gpo')
+ , getOwnPropertyDescriptor = require('./_object-gopd').f;
+
+// B.2.2.4 Object.prototype.__lookupGetter__(P)
+require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', {
+ __lookupGetter__: function __lookupGetter__(P){
+ var O = toObject(this)
+ , K = toPrimitive(P, true)
+ , D;
+ do {
+ if(D = getOwnPropertyDescriptor(O, K))return D.get;
+ } while(O = getPrototypeOf(O));
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.lookup-setter.js b/node_modules/core-js/modules/es7.object.lookup-setter.js
new file mode 100644
index 000000000..539dda824
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.lookup-setter.js
@@ -0,0 +1,18 @@
+'use strict';
+var $export = require('./_export')
+ , toObject = require('./_to-object')
+ , toPrimitive = require('./_to-primitive')
+ , getPrototypeOf = require('./_object-gpo')
+ , getOwnPropertyDescriptor = require('./_object-gopd').f;
+
+// B.2.2.5 Object.prototype.__lookupSetter__(P)
+require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', {
+ __lookupSetter__: function __lookupSetter__(P){
+ var O = toObject(this)
+ , K = toPrimitive(P, true)
+ , D;
+ do {
+ if(D = getOwnPropertyDescriptor(O, K))return D.set;
+ } while(O = getPrototypeOf(O));
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.object.values.js b/node_modules/core-js/modules/es7.object.values.js
new file mode 100644
index 000000000..42abd640b
--- /dev/null
+++ b/node_modules/core-js/modules/es7.object.values.js
@@ -0,0 +1,9 @@
+// https://github.com/tc39/proposal-object-values-entries
+var $export = require('./_export')
+ , $values = require('./_object-to-array')(false);
+
+$export($export.S, 'Object', {
+ values: function values(it){
+ return $values(it);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.observable.js b/node_modules/core-js/modules/es7.observable.js
new file mode 100644
index 000000000..e34fa4f28
--- /dev/null
+++ b/node_modules/core-js/modules/es7.observable.js
@@ -0,0 +1,199 @@
+'use strict';
+// https://github.com/zenparsing/es-observable
+var $export = require('./_export')
+ , global = require('./_global')
+ , core = require('./_core')
+ , microtask = require('./_microtask')()
+ , OBSERVABLE = require('./_wks')('observable')
+ , aFunction = require('./_a-function')
+ , anObject = require('./_an-object')
+ , anInstance = require('./_an-instance')
+ , redefineAll = require('./_redefine-all')
+ , hide = require('./_hide')
+ , forOf = require('./_for-of')
+ , RETURN = forOf.RETURN;
+
+var getMethod = function(fn){
+ return fn == null ? undefined : aFunction(fn);
+};
+
+var cleanupSubscription = function(subscription){
+ var cleanup = subscription._c;
+ if(cleanup){
+ subscription._c = undefined;
+ cleanup();
+ }
+};
+
+var subscriptionClosed = function(subscription){
+ return subscription._o === undefined;
+};
+
+var closeSubscription = function(subscription){
+ if(!subscriptionClosed(subscription)){
+ subscription._o = undefined;
+ cleanupSubscription(subscription);
+ }
+};
+
+var Subscription = function(observer, subscriber){
+ anObject(observer);
+ this._c = undefined;
+ this._o = observer;
+ observer = new SubscriptionObserver(this);
+ try {
+ var cleanup = subscriber(observer)
+ , subscription = cleanup;
+ if(cleanup != null){
+ if(typeof cleanup.unsubscribe === 'function')cleanup = function(){ subscription.unsubscribe(); };
+ else aFunction(cleanup);
+ this._c = cleanup;
+ }
+ } catch(e){
+ observer.error(e);
+ return;
+ } if(subscriptionClosed(this))cleanupSubscription(this);
+};
+
+Subscription.prototype = redefineAll({}, {
+ unsubscribe: function unsubscribe(){ closeSubscription(this); }
+});
+
+var SubscriptionObserver = function(subscription){
+ this._s = subscription;
+};
+
+SubscriptionObserver.prototype = redefineAll({}, {
+ next: function next(value){
+ var subscription = this._s;
+ if(!subscriptionClosed(subscription)){
+ var observer = subscription._o;
+ try {
+ var m = getMethod(observer.next);
+ if(m)return m.call(observer, value);
+ } catch(e){
+ try {
+ closeSubscription(subscription);
+ } finally {
+ throw e;
+ }
+ }
+ }
+ },
+ error: function error(value){
+ var subscription = this._s;
+ if(subscriptionClosed(subscription))throw value;
+ var observer = subscription._o;
+ subscription._o = undefined;
+ try {
+ var m = getMethod(observer.error);
+ if(!m)throw value;
+ value = m.call(observer, value);
+ } catch(e){
+ try {
+ cleanupSubscription(subscription);
+ } finally {
+ throw e;
+ }
+ } cleanupSubscription(subscription);
+ return value;
+ },
+ complete: function complete(value){
+ var subscription = this._s;
+ if(!subscriptionClosed(subscription)){
+ var observer = subscription._o;
+ subscription._o = undefined;
+ try {
+ var m = getMethod(observer.complete);
+ value = m ? m.call(observer, value) : undefined;
+ } catch(e){
+ try {
+ cleanupSubscription(subscription);
+ } finally {
+ throw e;
+ }
+ } cleanupSubscription(subscription);
+ return value;
+ }
+ }
+});
+
+var $Observable = function Observable(subscriber){
+ anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber);
+};
+
+redefineAll($Observable.prototype, {
+ subscribe: function subscribe(observer){
+ return new Subscription(observer, this._f);
+ },
+ forEach: function forEach(fn){
+ var that = this;
+ return new (core.Promise || global.Promise)(function(resolve, reject){
+ aFunction(fn);
+ var subscription = that.subscribe({
+ next : function(value){
+ try {
+ return fn(value);
+ } catch(e){
+ reject(e);
+ subscription.unsubscribe();
+ }
+ },
+ error: reject,
+ complete: resolve
+ });
+ });
+ }
+});
+
+redefineAll($Observable, {
+ from: function from(x){
+ var C = typeof this === 'function' ? this : $Observable;
+ var method = getMethod(anObject(x)[OBSERVABLE]);
+ if(method){
+ var observable = anObject(method.call(x));
+ return observable.constructor === C ? observable : new C(function(observer){
+ return observable.subscribe(observer);
+ });
+ }
+ return new C(function(observer){
+ var done = false;
+ microtask(function(){
+ if(!done){
+ try {
+ if(forOf(x, false, function(it){
+ observer.next(it);
+ if(done)return RETURN;
+ }) === RETURN)return;
+ } catch(e){
+ if(done)throw e;
+ observer.error(e);
+ return;
+ } observer.complete();
+ }
+ });
+ return function(){ done = true; };
+ });
+ },
+ of: function of(){
+ for(var i = 0, l = arguments.length, items = Array(l); i < l;)items[i] = arguments[i++];
+ return new (typeof this === 'function' ? this : $Observable)(function(observer){
+ var done = false;
+ microtask(function(){
+ if(!done){
+ for(var i = 0; i < items.length; ++i){
+ observer.next(items[i]);
+ if(done)return;
+ } observer.complete();
+ }
+ });
+ return function(){ done = true; };
+ });
+ }
+});
+
+hide($Observable.prototype, OBSERVABLE, function(){ return this; });
+
+$export($export.G, {Observable: $Observable});
+
+require('./_set-species')('Observable'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.define-metadata.js b/node_modules/core-js/modules/es7.reflect.define-metadata.js
new file mode 100644
index 000000000..c833e4317
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.define-metadata.js
@@ -0,0 +1,8 @@
+var metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , toMetaKey = metadata.key
+ , ordinaryDefineOwnMetadata = metadata.set;
+
+metadata.exp({defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey){
+ ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey));
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.delete-metadata.js b/node_modules/core-js/modules/es7.reflect.delete-metadata.js
new file mode 100644
index 000000000..8a8a8253b
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.delete-metadata.js
@@ -0,0 +1,15 @@
+var metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , toMetaKey = metadata.key
+ , getOrCreateMetadataMap = metadata.map
+ , store = metadata.store;
+
+metadata.exp({deleteMetadata: function deleteMetadata(metadataKey, target /*, targetKey */){
+ var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2])
+ , metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);
+ if(metadataMap === undefined || !metadataMap['delete'](metadataKey))return false;
+ if(metadataMap.size)return true;
+ var targetMetadata = store.get(target);
+ targetMetadata['delete'](targetKey);
+ return !!targetMetadata.size || store['delete'](target);
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.get-metadata-keys.js b/node_modules/core-js/modules/es7.reflect.get-metadata-keys.js
new file mode 100644
index 000000000..58c4dcc23
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.get-metadata-keys.js
@@ -0,0 +1,19 @@
+var Set = require('./es6.set')
+ , from = require('./_array-from-iterable')
+ , metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , getPrototypeOf = require('./_object-gpo')
+ , ordinaryOwnMetadataKeys = metadata.keys
+ , toMetaKey = metadata.key;
+
+var ordinaryMetadataKeys = function(O, P){
+ var oKeys = ordinaryOwnMetadataKeys(O, P)
+ , parent = getPrototypeOf(O);
+ if(parent === null)return oKeys;
+ var pKeys = ordinaryMetadataKeys(parent, P);
+ return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys;
+};
+
+metadata.exp({getMetadataKeys: function getMetadataKeys(target /*, targetKey */){
+ return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.get-metadata.js b/node_modules/core-js/modules/es7.reflect.get-metadata.js
new file mode 100644
index 000000000..48cd9d674
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.get-metadata.js
@@ -0,0 +1,17 @@
+var metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , getPrototypeOf = require('./_object-gpo')
+ , ordinaryHasOwnMetadata = metadata.has
+ , ordinaryGetOwnMetadata = metadata.get
+ , toMetaKey = metadata.key;
+
+var ordinaryGetMetadata = function(MetadataKey, O, P){
+ var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);
+ if(hasOwn)return ordinaryGetOwnMetadata(MetadataKey, O, P);
+ var parent = getPrototypeOf(O);
+ return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined;
+};
+
+metadata.exp({getMetadata: function getMetadata(metadataKey, target /*, targetKey */){
+ return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js b/node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js
new file mode 100644
index 000000000..93ecfbe5a
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js
@@ -0,0 +1,8 @@
+var metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , ordinaryOwnMetadataKeys = metadata.keys
+ , toMetaKey = metadata.key;
+
+metadata.exp({getOwnMetadataKeys: function getOwnMetadataKeys(target /*, targetKey */){
+ return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.get-own-metadata.js b/node_modules/core-js/modules/es7.reflect.get-own-metadata.js
new file mode 100644
index 000000000..f1040f919
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.get-own-metadata.js
@@ -0,0 +1,9 @@
+var metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , ordinaryGetOwnMetadata = metadata.get
+ , toMetaKey = metadata.key;
+
+metadata.exp({getOwnMetadata: function getOwnMetadata(metadataKey, target /*, targetKey */){
+ return ordinaryGetOwnMetadata(metadataKey, anObject(target)
+ , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.has-metadata.js b/node_modules/core-js/modules/es7.reflect.has-metadata.js
new file mode 100644
index 000000000..0ff637865
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.has-metadata.js
@@ -0,0 +1,16 @@
+var metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , getPrototypeOf = require('./_object-gpo')
+ , ordinaryHasOwnMetadata = metadata.has
+ , toMetaKey = metadata.key;
+
+var ordinaryHasMetadata = function(MetadataKey, O, P){
+ var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);
+ if(hasOwn)return true;
+ var parent = getPrototypeOf(O);
+ return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false;
+};
+
+metadata.exp({hasMetadata: function hasMetadata(metadataKey, target /*, targetKey */){
+ return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.has-own-metadata.js b/node_modules/core-js/modules/es7.reflect.has-own-metadata.js
new file mode 100644
index 000000000..d645ea3fa
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.has-own-metadata.js
@@ -0,0 +1,9 @@
+var metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , ordinaryHasOwnMetadata = metadata.has
+ , toMetaKey = metadata.key;
+
+metadata.exp({hasOwnMetadata: function hasOwnMetadata(metadataKey, target /*, targetKey */){
+ return ordinaryHasOwnMetadata(metadataKey, anObject(target)
+ , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.reflect.metadata.js b/node_modules/core-js/modules/es7.reflect.metadata.js
new file mode 100644
index 000000000..3a4e3aee0
--- /dev/null
+++ b/node_modules/core-js/modules/es7.reflect.metadata.js
@@ -0,0 +1,15 @@
+var metadata = require('./_metadata')
+ , anObject = require('./_an-object')
+ , aFunction = require('./_a-function')
+ , toMetaKey = metadata.key
+ , ordinaryDefineOwnMetadata = metadata.set;
+
+metadata.exp({metadata: function metadata(metadataKey, metadataValue){
+ return function decorator(target, targetKey){
+ ordinaryDefineOwnMetadata(
+ metadataKey, metadataValue,
+ (targetKey !== undefined ? anObject : aFunction)(target),
+ toMetaKey(targetKey)
+ );
+ };
+}}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.set.to-json.js b/node_modules/core-js/modules/es7.set.to-json.js
new file mode 100644
index 000000000..fd68cb510
--- /dev/null
+++ b/node_modules/core-js/modules/es7.set.to-json.js
@@ -0,0 +1,4 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var $export = require('./_export');
+
+$export($export.P + $export.R, 'Set', {toJSON: require('./_collection-to-json')('Set')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.string.at.js b/node_modules/core-js/modules/es7.string.at.js
new file mode 100644
index 000000000..208654e6c
--- /dev/null
+++ b/node_modules/core-js/modules/es7.string.at.js
@@ -0,0 +1,10 @@
+'use strict';
+// https://github.com/mathiasbynens/String.prototype.at
+var $export = require('./_export')
+ , $at = require('./_string-at')(true);
+
+$export($export.P, 'String', {
+ at: function at(pos){
+ return $at(this, pos);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.string.match-all.js b/node_modules/core-js/modules/es7.string.match-all.js
new file mode 100644
index 000000000..cb0099b36
--- /dev/null
+++ b/node_modules/core-js/modules/es7.string.match-all.js
@@ -0,0 +1,30 @@
+'use strict';
+// https://tc39.github.io/String.prototype.matchAll/
+var $export = require('./_export')
+ , defined = require('./_defined')
+ , toLength = require('./_to-length')
+ , isRegExp = require('./_is-regexp')
+ , getFlags = require('./_flags')
+ , RegExpProto = RegExp.prototype;
+
+var $RegExpStringIterator = function(regexp, string){
+ this._r = regexp;
+ this._s = string;
+};
+
+require('./_iter-create')($RegExpStringIterator, 'RegExp String', function next(){
+ var match = this._r.exec(this._s);
+ return {value: match, done: match === null};
+});
+
+$export($export.P, 'String', {
+ matchAll: function matchAll(regexp){
+ defined(this);
+ if(!isRegExp(regexp))throw TypeError(regexp + ' is not a regexp!');
+ var S = String(this)
+ , flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp)
+ , rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags);
+ rx.lastIndex = toLength(regexp.lastIndex);
+ return new $RegExpStringIterator(rx, S);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.string.pad-end.js b/node_modules/core-js/modules/es7.string.pad-end.js
new file mode 100644
index 000000000..8483d82f4
--- /dev/null
+++ b/node_modules/core-js/modules/es7.string.pad-end.js
@@ -0,0 +1,10 @@
+'use strict';
+// https://github.com/tc39/proposal-string-pad-start-end
+var $export = require('./_export')
+ , $pad = require('./_string-pad');
+
+$export($export.P, 'String', {
+ padEnd: function padEnd(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.string.pad-start.js b/node_modules/core-js/modules/es7.string.pad-start.js
new file mode 100644
index 000000000..b79b605d2
--- /dev/null
+++ b/node_modules/core-js/modules/es7.string.pad-start.js
@@ -0,0 +1,10 @@
+'use strict';
+// https://github.com/tc39/proposal-string-pad-start-end
+var $export = require('./_export')
+ , $pad = require('./_string-pad');
+
+$export($export.P, 'String', {
+ padStart: function padStart(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);
+ }
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.string.trim-left.js b/node_modules/core-js/modules/es7.string.trim-left.js
new file mode 100644
index 000000000..e58457714
--- /dev/null
+++ b/node_modules/core-js/modules/es7.string.trim-left.js
@@ -0,0 +1,7 @@
+'use strict';
+// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+require('./_string-trim')('trimLeft', function($trim){
+ return function trimLeft(){
+ return $trim(this, 1);
+ };
+}, 'trimStart'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.string.trim-right.js b/node_modules/core-js/modules/es7.string.trim-right.js
new file mode 100644
index 000000000..42a9ed33b
--- /dev/null
+++ b/node_modules/core-js/modules/es7.string.trim-right.js
@@ -0,0 +1,7 @@
+'use strict';
+// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+require('./_string-trim')('trimRight', function($trim){
+ return function trimRight(){
+ return $trim(this, 2);
+ };
+}, 'trimEnd'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.symbol.async-iterator.js b/node_modules/core-js/modules/es7.symbol.async-iterator.js
new file mode 100644
index 000000000..cf9f74a50
--- /dev/null
+++ b/node_modules/core-js/modules/es7.symbol.async-iterator.js
@@ -0,0 +1 @@
+require('./_wks-define')('asyncIterator'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.symbol.observable.js b/node_modules/core-js/modules/es7.symbol.observable.js
new file mode 100644
index 000000000..0163bca52
--- /dev/null
+++ b/node_modules/core-js/modules/es7.symbol.observable.js
@@ -0,0 +1 @@
+require('./_wks-define')('observable'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.system.global.js b/node_modules/core-js/modules/es7.system.global.js
new file mode 100644
index 000000000..8c2ab82de
--- /dev/null
+++ b/node_modules/core-js/modules/es7.system.global.js
@@ -0,0 +1,4 @@
+// https://github.com/ljharb/proposal-global
+var $export = require('./_export');
+
+$export($export.S, 'System', {global: require('./_global')}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/_add-to-unscopables.js b/node_modules/core-js/modules/library/_add-to-unscopables.js
new file mode 100644
index 000000000..faf87af36
--- /dev/null
+++ b/node_modules/core-js/modules/library/_add-to-unscopables.js
@@ -0,0 +1 @@
+module.exports = function(){ /* empty */ }; \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/_collection.js b/node_modules/core-js/modules/library/_collection.js
new file mode 100644
index 000000000..0bdd7fcbb
--- /dev/null
+++ b/node_modules/core-js/modules/library/_collection.js
@@ -0,0 +1,59 @@
+'use strict';
+var global = require('./_global')
+ , $export = require('./_export')
+ , meta = require('./_meta')
+ , fails = require('./_fails')
+ , hide = require('./_hide')
+ , redefineAll = require('./_redefine-all')
+ , forOf = require('./_for-of')
+ , anInstance = require('./_an-instance')
+ , isObject = require('./_is-object')
+ , setToStringTag = require('./_set-to-string-tag')
+ , dP = require('./_object-dp').f
+ , each = require('./_array-methods')(0)
+ , DESCRIPTORS = require('./_descriptors');
+
+module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
+ var Base = global[NAME]
+ , C = Base
+ , ADDER = IS_MAP ? 'set' : 'add'
+ , proto = C && C.prototype
+ , O = {};
+ if(!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
+ new C().entries().next();
+ }))){
+ // create collection constructor
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
+ redefineAll(C.prototype, methods);
+ meta.NEED = true;
+ } else {
+ C = wrapper(function(target, iterable){
+ anInstance(target, C, NAME, '_c');
+ target._c = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, target[ADDER], target);
+ });
+ each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','),function(KEY){
+ var IS_ADDER = KEY == 'add' || KEY == 'set';
+ if(KEY in proto && !(IS_WEAK && KEY == 'clear'))hide(C.prototype, KEY, function(a, b){
+ anInstance(this, C, KEY);
+ if(!IS_ADDER && IS_WEAK && !isObject(a))return KEY == 'get' ? undefined : false;
+ var result = this._c[KEY](a === 0 ? 0 : a, b);
+ return IS_ADDER ? this : result;
+ });
+ });
+ if('size' in proto)dP(C.prototype, 'size', {
+ get: function(){
+ return this._c.size;
+ }
+ });
+ }
+
+ setToStringTag(C, NAME);
+
+ O[NAME] = C;
+ $export($export.G + $export.W + $export.F, O);
+
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
+
+ return C;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/_export.js b/node_modules/core-js/modules/library/_export.js
new file mode 100644
index 000000000..dc084b4cc
--- /dev/null
+++ b/node_modules/core-js/modules/library/_export.js
@@ -0,0 +1,61 @@
+var global = require('./_global')
+ , core = require('./_core')
+ , ctx = require('./_ctx')
+ , hide = require('./_hide')
+ , PROTOTYPE = 'prototype';
+
+var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , IS_WRAP = type & $export.W
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , expProto = exports[PROTOTYPE]
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
+ , key, own, out;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && target[key] !== undefined;
+ if(own && key in exports)continue;
+ // export native or passed
+ out = own ? target[key] : source[key];
+ // prevent global pollution for namespaces
+ exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
+ // bind timers to global for call from export context
+ : IS_BIND && own ? ctx(out, global)
+ // wrap global constructors for prevent change them in library
+ : IS_WRAP && target[key] == out ? (function(C){
+ var F = function(a, b, c){
+ if(this instanceof C){
+ switch(arguments.length){
+ case 0: return new C;
+ case 1: return new C(a);
+ case 2: return new C(a, b);
+ } return new C(a, b, c);
+ } return C.apply(this, arguments);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
+ if(IS_PROTO){
+ (exports.virtual || (exports.virtual = {}))[key] = out;
+ // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
+ if(type & $export.R && expProto && !expProto[key])hide(expProto, key, out);
+ }
+ }
+};
+// type bitmap
+$export.F = 1; // forced
+$export.G = 2; // global
+$export.S = 4; // static
+$export.P = 8; // proto
+$export.B = 16; // bind
+$export.W = 32; // wrap
+$export.U = 64; // safe
+$export.R = 128; // real proto method for `library`
+module.exports = $export; \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/_library.js b/node_modules/core-js/modules/library/_library.js
new file mode 100644
index 000000000..73f737c59
--- /dev/null
+++ b/node_modules/core-js/modules/library/_library.js
@@ -0,0 +1 @@
+module.exports = true; \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/_path.js b/node_modules/core-js/modules/library/_path.js
new file mode 100644
index 000000000..e2b878dc6
--- /dev/null
+++ b/node_modules/core-js/modules/library/_path.js
@@ -0,0 +1 @@
+module.exports = require('./_core'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/_redefine-all.js b/node_modules/core-js/modules/library/_redefine-all.js
new file mode 100644
index 000000000..beeb2eafc
--- /dev/null
+++ b/node_modules/core-js/modules/library/_redefine-all.js
@@ -0,0 +1,7 @@
+var hide = require('./_hide');
+module.exports = function(target, src, safe){
+ for(var key in src){
+ if(safe && target[key])target[key] = src[key];
+ else hide(target, key, src[key]);
+ } return target;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/_redefine.js b/node_modules/core-js/modules/library/_redefine.js
new file mode 100644
index 000000000..6bd64530c
--- /dev/null
+++ b/node_modules/core-js/modules/library/_redefine.js
@@ -0,0 +1 @@
+module.exports = require('./_hide'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/_set-species.js b/node_modules/core-js/modules/library/_set-species.js
new file mode 100644
index 000000000..4320fa510
--- /dev/null
+++ b/node_modules/core-js/modules/library/_set-species.js
@@ -0,0 +1,14 @@
+'use strict';
+var global = require('./_global')
+ , core = require('./_core')
+ , dP = require('./_object-dp')
+ , DESCRIPTORS = require('./_descriptors')
+ , SPECIES = require('./_wks')('species');
+
+module.exports = function(KEY){
+ var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])dP.f(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/es6.date.to-primitive.js b/node_modules/core-js/modules/library/es6.date.to-primitive.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.date.to-primitive.js
diff --git a/node_modules/core-js/modules/library/es6.date.to-string.js b/node_modules/core-js/modules/library/es6.date.to-string.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.date.to-string.js
diff --git a/node_modules/core-js/modules/library/es6.function.name.js b/node_modules/core-js/modules/library/es6.function.name.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.function.name.js
diff --git a/node_modules/core-js/modules/library/es6.number.constructor.js b/node_modules/core-js/modules/library/es6.number.constructor.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.number.constructor.js
diff --git a/node_modules/core-js/modules/library/es6.object.to-string.js b/node_modules/core-js/modules/library/es6.object.to-string.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.object.to-string.js
diff --git a/node_modules/core-js/modules/library/es6.regexp.constructor.js b/node_modules/core-js/modules/library/es6.regexp.constructor.js
new file mode 100644
index 000000000..7313c52b3
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.regexp.constructor.js
@@ -0,0 +1 @@
+require('./_set-species')('RegExp'); \ No newline at end of file
diff --git a/node_modules/core-js/modules/library/es6.regexp.flags.js b/node_modules/core-js/modules/library/es6.regexp.flags.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.regexp.flags.js
diff --git a/node_modules/core-js/modules/library/es6.regexp.match.js b/node_modules/core-js/modules/library/es6.regexp.match.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.regexp.match.js
diff --git a/node_modules/core-js/modules/library/es6.regexp.replace.js b/node_modules/core-js/modules/library/es6.regexp.replace.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.regexp.replace.js
diff --git a/node_modules/core-js/modules/library/es6.regexp.search.js b/node_modules/core-js/modules/library/es6.regexp.search.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.regexp.search.js
diff --git a/node_modules/core-js/modules/library/es6.regexp.split.js b/node_modules/core-js/modules/library/es6.regexp.split.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.regexp.split.js
diff --git a/node_modules/core-js/modules/library/es6.regexp.to-string.js b/node_modules/core-js/modules/library/es6.regexp.to-string.js
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/node_modules/core-js/modules/library/es6.regexp.to-string.js
diff --git a/node_modules/core-js/modules/library/web.dom.iterable.js b/node_modules/core-js/modules/library/web.dom.iterable.js
new file mode 100644
index 000000000..e56371a9d
--- /dev/null
+++ b/node_modules/core-js/modules/library/web.dom.iterable.js
@@ -0,0 +1,13 @@
+require('./es6.array.iterator');
+var global = require('./_global')
+ , hide = require('./_hide')
+ , Iterators = require('./_iterators')
+ , TO_STRING_TAG = require('./_wks')('toStringTag');
+
+for(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){
+ var NAME = collections[i]
+ , Collection = global[NAME]
+ , proto = Collection && Collection.prototype;
+ if(proto && !proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);
+ Iterators[NAME] = Iterators.Array;
+} \ No newline at end of file
diff --git a/node_modules/core-js/modules/web.dom.iterable.js b/node_modules/core-js/modules/web.dom.iterable.js
new file mode 100644
index 000000000..a5a4c08eb
--- /dev/null
+++ b/node_modules/core-js/modules/web.dom.iterable.js
@@ -0,0 +1,22 @@
+var $iterators = require('./es6.array.iterator')
+ , redefine = require('./_redefine')
+ , global = require('./_global')
+ , hide = require('./_hide')
+ , Iterators = require('./_iterators')
+ , wks = require('./_wks')
+ , ITERATOR = wks('iterator')
+ , TO_STRING_TAG = wks('toStringTag')
+ , ArrayValues = Iterators.Array;
+
+for(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){
+ var NAME = collections[i]
+ , Collection = global[NAME]
+ , proto = Collection && Collection.prototype
+ , key;
+ if(proto){
+ if(!proto[ITERATOR])hide(proto, ITERATOR, ArrayValues);
+ if(!proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);
+ Iterators[NAME] = ArrayValues;
+ for(key in $iterators)if(!proto[key])redefine(proto, key, $iterators[key], true);
+ }
+} \ No newline at end of file
diff --git a/node_modules/core-js/modules/web.immediate.js b/node_modules/core-js/modules/web.immediate.js
new file mode 100644
index 000000000..5b9463775
--- /dev/null
+++ b/node_modules/core-js/modules/web.immediate.js
@@ -0,0 +1,6 @@
+var $export = require('./_export')
+ , $task = require('./_task');
+$export($export.G + $export.B, {
+ setImmediate: $task.set,
+ clearImmediate: $task.clear
+}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/web.timers.js b/node_modules/core-js/modules/web.timers.js
new file mode 100644
index 000000000..1a1da57f2
--- /dev/null
+++ b/node_modules/core-js/modules/web.timers.js
@@ -0,0 +1,20 @@
+// ie9- setTimeout & setInterval additional parameters fix
+var global = require('./_global')
+ , $export = require('./_export')
+ , invoke = require('./_invoke')
+ , partial = require('./_partial')
+ , navigator = global.navigator
+ , MSIE = !!navigator && /MSIE .\./.test(navigator.userAgent); // <- dirty ie9- check
+var wrap = function(set){
+ return MSIE ? function(fn, time /*, ...args */){
+ return set(invoke(
+ partial,
+ [].slice.call(arguments, 2),
+ typeof fn == 'function' ? fn : Function(fn)
+ ), time);
+ } : set;
+};
+$export($export.G + $export.B + $export.F * MSIE, {
+ setTimeout: wrap(global.setTimeout),
+ setInterval: wrap(global.setInterval)
+}); \ No newline at end of file