aboutsummaryrefslogtreecommitdiff
path: root/node_modules/core-js
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-05-03 15:35:00 +0200
committerFlorian Dold <florian.dold@gmail.com>2017-05-03 15:35:00 +0200
commitde98e0b232509d5f40c135d540a70e415272ff85 (patch)
treea79222a5b58484ab3b80d18efcaaa7ccc4769b33 /node_modules/core-js
parente0c9d480a73fa629c1e4a47d3e721f1d2d345406 (diff)
downloadwallet-core-de98e0b232509d5f40c135d540a70e415272ff85.tar.xz
node_modules
Diffstat (limited to 'node_modules/core-js')
-rw-r--r--node_modules/core-js/core/log.js2
-rw-r--r--node_modules/core-js/es7/regexp.js2
-rw-r--r--node_modules/core-js/fn/html-collection/index.js2
-rw-r--r--node_modules/core-js/fn/html-collection/iterator.js2
-rw-r--r--node_modules/core-js/fn/log.js2
-rw-r--r--node_modules/core-js/fn/node-list/index.js2
-rw-r--r--node_modules/core-js/fn/node-list/iterator.js2
-rw-r--r--node_modules/core-js/fn/string/pad-left.js2
-rw-r--r--node_modules/core-js/fn/string/pad-right.js2
-rw-r--r--node_modules/core-js/js/array.js2
-rw-r--r--node_modules/core-js/js/index.js2
-rw-r--r--node_modules/core-js/library/core/log.js2
-rw-r--r--node_modules/core-js/library/es7/regexp.js2
-rw-r--r--node_modules/core-js/library/fn/html-collection/index.js2
-rw-r--r--node_modules/core-js/library/fn/html-collection/iterator.js2
-rw-r--r--node_modules/core-js/library/fn/log.js2
-rw-r--r--node_modules/core-js/library/fn/node-list/index.js2
-rw-r--r--node_modules/core-js/library/fn/node-list/iterator.js2
-rw-r--r--node_modules/core-js/library/fn/string/pad-left.js2
-rw-r--r--node_modules/core-js/library/fn/string/pad-right.js2
-rw-r--r--node_modules/core-js/library/js/array.js2
-rw-r--r--node_modules/core-js/library/js/index.js2
-rw-r--r--node_modules/core-js/library/modules/$.a-function.js4
-rw-r--r--node_modules/core-js/library/modules/$.add-to-unscopables.js1
-rw-r--r--node_modules/core-js/library/modules/$.an-object.js5
-rw-r--r--node_modules/core-js/library/modules/$.array-copy-within.js27
-rw-r--r--node_modules/core-js/library/modules/$.array-fill.js16
-rw-r--r--node_modules/core-js/library/modules/$.array-includes.js21
-rw-r--r--node_modules/core-js/library/modules/$.array-methods.js43
-rw-r--r--node_modules/core-js/library/modules/$.array-species-create.js16
-rw-r--r--node_modules/core-js/library/modules/$.buffer.js288
-rw-r--r--node_modules/core-js/library/modules/$.classof.js16
-rw-r--r--node_modules/core-js/library/modules/$.cof.js5
-rw-r--r--node_modules/core-js/library/modules/$.collection-strong.js159
-rw-r--r--node_modules/core-js/library/modules/$.collection-to-json.js11
-rw-r--r--node_modules/core-js/library/modules/$.collection-weak.js86
-rw-r--r--node_modules/core-js/library/modules/$.collection.js55
-rw-r--r--node_modules/core-js/library/modules/$.core.js2
-rw-r--r--node_modules/core-js/library/modules/$.ctx.js20
-rw-r--r--node_modules/core-js/library/modules/$.defined.js5
-rw-r--r--node_modules/core-js/library/modules/$.descriptors.js4
-rw-r--r--node_modules/core-js/library/modules/$.dom-create.js7
-rw-r--r--node_modules/core-js/library/modules/$.enum-keys.js14
-rw-r--r--node_modules/core-js/library/modules/$.export.js46
-rw-r--r--node_modules/core-js/library/modules/$.fails-is-regexp.js12
-rw-r--r--node_modules/core-js/library/modules/$.fails.js7
-rw-r--r--node_modules/core-js/library/modules/$.fix-re-wks.js26
-rw-r--r--node_modules/core-js/library/modules/$.flags.js13
-rw-r--r--node_modules/core-js/library/modules/$.for-of.js19
-rw-r--r--node_modules/core-js/library/modules/$.get-names.js20
-rw-r--r--node_modules/core-js/library/modules/$.global.js4
-rw-r--r--node_modules/core-js/library/modules/$.has.js4
-rw-r--r--node_modules/core-js/library/modules/$.hide.js8
-rw-r--r--node_modules/core-js/library/modules/$.html.js1
-rw-r--r--node_modules/core-js/library/modules/$.invoke.js16
-rw-r--r--node_modules/core-js/library/modules/$.iobject.js5
-rw-r--r--node_modules/core-js/library/modules/$.is-array-iter.js8
-rw-r--r--node_modules/core-js/library/modules/$.is-array.js5
-rw-r--r--node_modules/core-js/library/modules/$.is-integer.js6
-rw-r--r--node_modules/core-js/library/modules/$.is-object.js3
-rw-r--r--node_modules/core-js/library/modules/$.is-regexp.js8
-rw-r--r--node_modules/core-js/library/modules/$.iter-call.js12
-rw-r--r--node_modules/core-js/library/modules/$.iter-create.js13
-rw-r--r--node_modules/core-js/library/modules/$.iter-define.js66
-rw-r--r--node_modules/core-js/library/modules/$.iter-detect.js21
-rw-r--r--node_modules/core-js/library/modules/$.iter-step.js3
-rw-r--r--node_modules/core-js/library/modules/$.iterators.js1
-rw-r--r--node_modules/core-js/library/modules/$.js13
-rw-r--r--node_modules/core-js/library/modules/$.keyof.js10
-rw-r--r--node_modules/core-js/library/modules/$.library.js1
-rw-r--r--node_modules/core-js/library/modules/$.math-expm1.js4
-rw-r--r--node_modules/core-js/library/modules/$.math-log1p.js4
-rw-r--r--node_modules/core-js/library/modules/$.math-sign.js4
-rw-r--r--node_modules/core-js/library/modules/$.microtask.js64
-rw-r--r--node_modules/core-js/library/modules/$.object-assign.js33
-rw-r--r--node_modules/core-js/library/modules/$.object-define.js11
-rw-r--r--node_modules/core-js/library/modules/$.object-sap.js10
-rw-r--r--node_modules/core-js/library/modules/$.object-to-array.js16
-rw-r--r--node_modules/core-js/library/modules/$.own-keys.js9
-rw-r--r--node_modules/core-js/library/modules/$.partial.js24
-rw-r--r--node_modules/core-js/library/modules/$.path.js1
-rw-r--r--node_modules/core-js/library/modules/$.property-desc.js8
-rw-r--r--node_modules/core-js/library/modules/$.redefine-all.js5
-rw-r--r--node_modules/core-js/library/modules/$.redefine.js1
-rw-r--r--node_modules/core-js/library/modules/$.replacer.js8
-rw-r--r--node_modules/core-js/library/modules/$.same-value.js4
-rw-r--r--node_modules/core-js/library/modules/$.set-proto.js26
-rw-r--r--node_modules/core-js/library/modules/$.set-species.js13
-rw-r--r--node_modules/core-js/library/modules/$.set-to-string-tag.js7
-rw-r--r--node_modules/core-js/library/modules/$.shared.js6
-rw-r--r--node_modules/core-js/library/modules/$.species-constructor.js8
-rw-r--r--node_modules/core-js/library/modules/$.strict-new.js4
-rw-r--r--node_modules/core-js/library/modules/$.string-at.js17
-rw-r--r--node_modules/core-js/library/modules/$.string-context.js8
-rw-r--r--node_modules/core-js/library/modules/$.string-pad.js17
-rw-r--r--node_modules/core-js/library/modules/$.string-repeat.js12
-rw-r--r--node_modules/core-js/library/modules/$.string-trim.js29
-rw-r--r--node_modules/core-js/library/modules/$.task.js75
-rw-r--r--node_modules/core-js/library/modules/$.to-index.js7
-rw-r--r--node_modules/core-js/library/modules/$.to-integer.js6
-rw-r--r--node_modules/core-js/library/modules/$.to-iobject.js6
-rw-r--r--node_modules/core-js/library/modules/$.to-length.js6
-rw-r--r--node_modules/core-js/library/modules/$.to-object.js5
-rw-r--r--node_modules/core-js/library/modules/$.to-primitive.js12
-rw-r--r--node_modules/core-js/library/modules/$.typed-array.js365
-rw-r--r--node_modules/core-js/library/modules/$.typed.js36
-rw-r--r--node_modules/core-js/library/modules/$.uid.js5
-rw-r--r--node_modules/core-js/library/modules/$.wks.js7
-rw-r--r--node_modules/core-js/library/modules/core.log.js26
-rw-r--r--node_modules/core-js/library/modules/es7.regexp.escape.js5
-rw-r--r--node_modules/core-js/library/modules/es7.string.pad-left.js9
-rw-r--r--node_modules/core-js/library/modules/es7.string.pad-right.js9
-rw-r--r--node_modules/core-js/library/modules/js.array.statics.js17
-rw-r--r--node_modules/core-js/library/web/dom.js2
-rw-r--r--node_modules/core-js/modules/$.a-function.js4
-rw-r--r--node_modules/core-js/modules/$.add-to-unscopables.js7
-rw-r--r--node_modules/core-js/modules/$.an-object.js5
-rw-r--r--node_modules/core-js/modules/$.array-copy-within.js27
-rw-r--r--node_modules/core-js/modules/$.array-fill.js16
-rw-r--r--node_modules/core-js/modules/$.array-includes.js21
-rw-r--r--node_modules/core-js/modules/$.array-methods.js43
-rw-r--r--node_modules/core-js/modules/$.array-species-create.js16
-rw-r--r--node_modules/core-js/modules/$.buffer.js288
-rw-r--r--node_modules/core-js/modules/$.classof.js16
-rw-r--r--node_modules/core-js/modules/$.cof.js5
-rw-r--r--node_modules/core-js/modules/$.collection-strong.js159
-rw-r--r--node_modules/core-js/modules/$.collection-to-json.js11
-rw-r--r--node_modules/core-js/modules/$.collection-weak.js86
-rw-r--r--node_modules/core-js/modules/$.collection.js79
-rw-r--r--node_modules/core-js/modules/$.core.js2
-rw-r--r--node_modules/core-js/modules/$.ctx.js20
-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/$.enum-keys.js14
-rw-r--r--node_modules/core-js/modules/$.export.js41
-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.js26
-rw-r--r--node_modules/core-js/modules/$.flags.js13
-rw-r--r--node_modules/core-js/modules/$.for-of.js19
-rw-r--r--node_modules/core-js/modules/$.get-names.js20
-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/$.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.js66
-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/$.js13
-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.js4
-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/$.microtask.js64
-rw-r--r--node_modules/core-js/modules/$.object-assign.js33
-rw-r--r--node_modules/core-js/modules/$.object-define.js11
-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.js9
-rw-r--r--node_modules/core-js/modules/$.partial.js24
-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.js27
-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.js26
-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.js6
-rw-r--r--node_modules/core-js/modules/$.species-constructor.js8
-rw-r--r--node_modules/core-js/modules/$.strict-new.js4
-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-pad.js17
-rw-r--r--node_modules/core-js/modules/$.string-repeat.js12
-rw-r--r--node_modules/core-js/modules/$.string-trim.js29
-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.js365
-rw-r--r--node_modules/core-js/modules/$.typed.js36
-rw-r--r--node_modules/core-js/modules/$.uid.js5
-rw-r--r--node_modules/core-js/modules/$.wks.js7
-rw-r--r--node_modules/core-js/modules/core.log.js26
-rw-r--r--node_modules/core-js/modules/es7.regexp.escape.js5
-rw-r--r--node_modules/core-js/modules/es7.string.pad-left.js9
-rw-r--r--node_modules/core-js/modules/es7.string.pad-right.js9
-rw-r--r--node_modules/core-js/modules/js.array.statics.js17
-rw-r--r--node_modules/core-js/modules/library/$.add-to-unscopables.js1
-rw-r--r--node_modules/core-js/modules/library/$.collection.js55
-rw-r--r--node_modules/core-js/modules/library/$.export.js46
-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.js1
-rw-r--r--node_modules/core-js/modules/library/$.set-species.js13
-rw-r--r--node_modules/core-js/web/dom.js2
213 files changed, 4427 insertions, 0 deletions
diff --git a/node_modules/core-js/core/log.js b/node_modules/core-js/core/log.js
new file mode 100644
index 000000000..899d6ed01
--- /dev/null
+++ b/node_modules/core-js/core/log.js
@@ -0,0 +1,2 @@
+require('../modules/core.log');
+module.exports = require('../modules/$.core').log;
diff --git a/node_modules/core-js/es7/regexp.js b/node_modules/core-js/es7/regexp.js
new file mode 100644
index 000000000..cb24f98bb
--- /dev/null
+++ b/node_modules/core-js/es7/regexp.js
@@ -0,0 +1,2 @@
+require('../modules/es7.regexp.escape');
+module.exports = require('../modules/$.core').RegExp; \ No newline at end of file
diff --git a/node_modules/core-js/fn/html-collection/index.js b/node_modules/core-js/fn/html-collection/index.js
new file mode 100644
index 000000000..510156b83
--- /dev/null
+++ b/node_modules/core-js/fn/html-collection/index.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core'); \ No newline at end of file
diff --git a/node_modules/core-js/fn/html-collection/iterator.js b/node_modules/core-js/fn/html-collection/iterator.js
new file mode 100644
index 000000000..c01119b1b
--- /dev/null
+++ b/node_modules/core-js/fn/html-collection/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core').Array.values; \ No newline at end of file
diff --git a/node_modules/core-js/fn/log.js b/node_modules/core-js/fn/log.js
new file mode 100644
index 000000000..899d6ed01
--- /dev/null
+++ b/node_modules/core-js/fn/log.js
@@ -0,0 +1,2 @@
+require('../modules/core.log');
+module.exports = require('../modules/$.core').log;
diff --git a/node_modules/core-js/fn/node-list/index.js b/node_modules/core-js/fn/node-list/index.js
new file mode 100644
index 000000000..510156b83
--- /dev/null
+++ b/node_modules/core-js/fn/node-list/index.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core'); \ No newline at end of file
diff --git a/node_modules/core-js/fn/node-list/iterator.js b/node_modules/core-js/fn/node-list/iterator.js
new file mode 100644
index 000000000..c01119b1b
--- /dev/null
+++ b/node_modules/core-js/fn/node-list/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core').Array.values; \ No newline at end of file
diff --git a/node_modules/core-js/fn/string/pad-left.js b/node_modules/core-js/fn/string/pad-left.js
new file mode 100644
index 000000000..e89419c9e
--- /dev/null
+++ b/node_modules/core-js/fn/string/pad-left.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.pad-left');
+module.exports = require('../../modules/$.core').String.padLeft; \ No newline at end of file
diff --git a/node_modules/core-js/fn/string/pad-right.js b/node_modules/core-js/fn/string/pad-right.js
new file mode 100644
index 000000000..a87a412e2
--- /dev/null
+++ b/node_modules/core-js/fn/string/pad-right.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.pad-right');
+module.exports = require('../../modules/$.core').String.padRight; \ No newline at end of file
diff --git a/node_modules/core-js/js/array.js b/node_modules/core-js/js/array.js
new file mode 100644
index 000000000..99a53add4
--- /dev/null
+++ b/node_modules/core-js/js/array.js
@@ -0,0 +1,2 @@
+require('../modules/js.array.statics');
+module.exports = require('../modules/$.core').Array; \ No newline at end of file
diff --git a/node_modules/core-js/js/index.js b/node_modules/core-js/js/index.js
new file mode 100644
index 000000000..47cb5ab56
--- /dev/null
+++ b/node_modules/core-js/js/index.js
@@ -0,0 +1,2 @@
+require('../modules/js.array.statics');
+module.exports = require('../modules/$.core'); \ No newline at end of file
diff --git a/node_modules/core-js/library/core/log.js b/node_modules/core-js/library/core/log.js
new file mode 100644
index 000000000..899d6ed01
--- /dev/null
+++ b/node_modules/core-js/library/core/log.js
@@ -0,0 +1,2 @@
+require('../modules/core.log');
+module.exports = require('../modules/$.core').log;
diff --git a/node_modules/core-js/library/es7/regexp.js b/node_modules/core-js/library/es7/regexp.js
new file mode 100644
index 000000000..cb24f98bb
--- /dev/null
+++ b/node_modules/core-js/library/es7/regexp.js
@@ -0,0 +1,2 @@
+require('../modules/es7.regexp.escape');
+module.exports = require('../modules/$.core').RegExp; \ No newline at end of file
diff --git a/node_modules/core-js/library/fn/html-collection/index.js b/node_modules/core-js/library/fn/html-collection/index.js
new file mode 100644
index 000000000..510156b83
--- /dev/null
+++ b/node_modules/core-js/library/fn/html-collection/index.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core'); \ No newline at end of file
diff --git a/node_modules/core-js/library/fn/html-collection/iterator.js b/node_modules/core-js/library/fn/html-collection/iterator.js
new file mode 100644
index 000000000..c01119b1b
--- /dev/null
+++ b/node_modules/core-js/library/fn/html-collection/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core').Array.values; \ No newline at end of file
diff --git a/node_modules/core-js/library/fn/log.js b/node_modules/core-js/library/fn/log.js
new file mode 100644
index 000000000..899d6ed01
--- /dev/null
+++ b/node_modules/core-js/library/fn/log.js
@@ -0,0 +1,2 @@
+require('../modules/core.log');
+module.exports = require('../modules/$.core').log;
diff --git a/node_modules/core-js/library/fn/node-list/index.js b/node_modules/core-js/library/fn/node-list/index.js
new file mode 100644
index 000000000..510156b83
--- /dev/null
+++ b/node_modules/core-js/library/fn/node-list/index.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core'); \ No newline at end of file
diff --git a/node_modules/core-js/library/fn/node-list/iterator.js b/node_modules/core-js/library/fn/node-list/iterator.js
new file mode 100644
index 000000000..c01119b1b
--- /dev/null
+++ b/node_modules/core-js/library/fn/node-list/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core').Array.values; \ No newline at end of file
diff --git a/node_modules/core-js/library/fn/string/pad-left.js b/node_modules/core-js/library/fn/string/pad-left.js
new file mode 100644
index 000000000..e89419c9e
--- /dev/null
+++ b/node_modules/core-js/library/fn/string/pad-left.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.pad-left');
+module.exports = require('../../modules/$.core').String.padLeft; \ No newline at end of file
diff --git a/node_modules/core-js/library/fn/string/pad-right.js b/node_modules/core-js/library/fn/string/pad-right.js
new file mode 100644
index 000000000..a87a412e2
--- /dev/null
+++ b/node_modules/core-js/library/fn/string/pad-right.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.pad-right');
+module.exports = require('../../modules/$.core').String.padRight; \ No newline at end of file
diff --git a/node_modules/core-js/library/js/array.js b/node_modules/core-js/library/js/array.js
new file mode 100644
index 000000000..99a53add4
--- /dev/null
+++ b/node_modules/core-js/library/js/array.js
@@ -0,0 +1,2 @@
+require('../modules/js.array.statics');
+module.exports = require('../modules/$.core').Array; \ No newline at end of file
diff --git a/node_modules/core-js/library/js/index.js b/node_modules/core-js/library/js/index.js
new file mode 100644
index 000000000..47cb5ab56
--- /dev/null
+++ b/node_modules/core-js/library/js/index.js
@@ -0,0 +1,2 @@
+require('../modules/js.array.statics');
+module.exports = require('../modules/$.core'); \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.a-function.js b/node_modules/core-js/library/modules/$.a-function.js
new file mode 100644
index 000000000..8c35f4514
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.add-to-unscopables.js b/node_modules/core-js/library/modules/$.add-to-unscopables.js
new file mode 100644
index 000000000..faf87af36
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.add-to-unscopables.js
@@ -0,0 +1 @@
+module.exports = function(){ /* empty */ }; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.an-object.js b/node_modules/core-js/library/modules/$.an-object.js
new file mode 100644
index 000000000..e5c808fd6
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.array-copy-within.js b/node_modules/core-js/library/modules/$.array-copy-within.js
new file mode 100644
index 000000000..585630659
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.array-copy-within.js
@@ -0,0 +1,27 @@
+// 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)
+ , $$ = arguments
+ , end = $$.length > 2 ? $$[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/library/modules/$.array-fill.js b/node_modules/core-js/library/modules/$.array-fill.js
new file mode 100644
index 000000000..6b699df72
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.array-fill.js
@@ -0,0 +1,16 @@
+// 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 = [].fill || function fill(value /*, start = 0, end = @length */){
+ var O = toObject(this)
+ , length = toLength(O.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = toIndex($$len > 1 ? $$[1] : undefined, length)
+ , end = $$len > 2 ? $$[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/library/modules/$.array-includes.js b/node_modules/core-js/library/modules/$.array-includes.js
new file mode 100644
index 000000000..9781fca73
--- /dev/null
+++ b/node_modules/core-js/library/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;
+ } return !IS_INCLUDES && -1;
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.array-methods.js b/node_modules/core-js/library/modules/$.array-methods.js
new file mode 100644
index 000000000..e70b99f4c
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.array-methods.js
@@ -0,0 +1,43 @@
+// 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){
+ 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;
+ 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 ? asc($this, length) : IS_FILTER ? asc($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/library/modules/$.array-species-create.js b/node_modules/core-js/library/modules/$.array-species-create.js
new file mode 100644
index 000000000..d809cae60
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.array-species-create.js
@@ -0,0 +1,16 @@
+// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
+var isObject = require('./$.is-object')
+ , isArray = require('./$.is-array')
+ , SPECIES = require('./$.wks')('species');
+module.exports = function(original, length){
+ 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 new (C === undefined ? Array : C)(length);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.buffer.js b/node_modules/core-js/library/modules/$.buffer.js
new file mode 100644
index 000000000..d1aae58a4
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.buffer.js
@@ -0,0 +1,288 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , $typed = require('./$.typed')
+ , redefineAll = require('./$.redefine-all')
+ , strictNew = require('./$.strict-new')
+ , toInteger = require('./$.to-integer')
+ , toLength = require('./$.to-length')
+ , arrayFill = require('./$.array-fill')
+ , $ArrayBuffer = global.ArrayBuffer
+ , $DataView = global.DataView
+ , Math = global.Math
+ , parseInt = global.parseInt
+ , abs = Math.abs
+ , pow = Math.pow
+ , min = Math.min
+ , floor = Math.floor
+ , log = Math.log
+ , LN2 = Math.LN2
+ , BYTE_LENGTH = 'byteLength';
+
+// pack / unpack based on
+// https://github.com/inexorabletash/polyfill/blob/v0.1.11/typedarray.js#L123-L264
+// TODO: simplify
+var signed = function(value, bits){
+ var s = 32 - bits;
+ return value << s >> s;
+};
+var unsigned = function(value, bits){
+ var s = 32 - bits;
+ return value << s >>> s;
+};
+var roundToEven = function(n){
+ var w = floor(n)
+ , f = n - w;
+ return f < .5 ? w : f > .5 ? w + 1 : w % 2 ? w + 1 : w;
+};
+var packI8 = function(n){
+ return [n & 0xff];
+};
+var unpackI8 = function(bytes){
+ return signed(bytes[0], 8);
+};
+var packU8 = function(n){
+ return [n & 0xff];
+};
+var unpackU8 = function(bytes){
+ return unsigned(bytes[0], 8);
+};
+var packI16 = function(n){
+ return [n & 0xff, n >> 8 & 0xff];
+};
+var unpackI16 = function(bytes){
+ return signed(bytes[1] << 8 | bytes[0], 16);
+};
+var packU16 = function(n){
+ return [n & 0xff, n >> 8 & 0xff];
+};
+var unpackU16 = function(bytes){
+ return unsigned(bytes[1] << 8 | bytes[0], 16);
+};
+var packI32 = function(n){
+ return [n & 0xff, n >> 8 & 0xff, n >> 16 & 0xff, n >> 24 & 0xff];
+};
+var unpackI32 = function(bytes){
+ return signed(bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0], 32);
+};
+var packU32 = function(n){
+ return [n & 0xff, n >> 8 & 0xff, n >> 16 & 0xff, n >> 24 & 0xff];
+};
+var unpackU32 = function(bytes){
+ return unsigned(bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0], 32);
+};
+var packIEEE754 = function(v, ebits, fbits) {
+ var bias = (1 << ebits - 1) - 1
+ , s, e, f, i, bits, str, bytes;
+ // Compute sign, exponent, fraction
+ if (v !== v) {
+ // NaN
+ // http://dev.w3.org/2006/webapi/WebIDL/#es-type-mapping
+ e = (1 << ebits) - 1;
+ f = pow(2, fbits - 1);
+ s = 0;
+ } else if(v === Infinity || v === -Infinity){
+ e = (1 << ebits) - 1;
+ f = 0;
+ s = v < 0 ? 1 : 0;
+ } else if(v === 0){
+ e = 0;
+ f = 0;
+ s = 1 / v === -Infinity ? 1 : 0;
+ } else {
+ s = v < 0;
+ v = abs(v);
+ if(v >= pow(2, 1 - bias)){
+ e = min(floor(log(v) / LN2), 1023);
+ var significand = v / pow(2, e);
+ if(significand < 1){
+ e -= 1;
+ significand *= 2;
+ }
+ if(significand >= 2){
+ e += 1;
+ significand /= 2;
+ }
+ f = roundToEven(significand * pow(2, fbits));
+ if(f / pow(2, fbits) >= 2){
+ e = e + 1;
+ f = 1;
+ }
+ if(e > bias){
+ // Overflow
+ e = (1 << ebits) - 1;
+ f = 0;
+ } else {
+ // Normalized
+ e = e + bias;
+ f = f - pow(2, fbits);
+ }
+ } else {
+ // Denormalized
+ e = 0;
+ f = roundToEven(v / pow(2, 1 - bias - fbits));
+ }
+ }
+ // Pack sign, exponent, fraction
+ bits = [];
+ for(i = fbits; i; i -= 1){
+ bits.push(f % 2 ? 1 : 0);
+ f = floor(f / 2);
+ }
+ for(i = ebits; i; i -= 1){
+ bits.push(e % 2 ? 1 : 0);
+ e = floor(e / 2);
+ }
+ bits.push(s ? 1 : 0);
+ bits.reverse();
+ str = bits.join('');
+ // Bits to bytes
+ bytes = [];
+ while(str.length){
+ bytes.unshift(parseInt(str.slice(0, 8), 2));
+ str = str.slice(8);
+ }
+ return bytes;
+};
+var unpackIEEE754 = function(bytes, ebits, fbits){
+ var bits = []
+ , i, j, b, str, bias, s, e, f;
+ for(i = 0; i < bytes.length; ++i)for(b = bytes[i], j = 8; j; --j){
+ bits.push(b % 2 ? 1 : 0);
+ b = b >> 1;
+ }
+ bits.reverse();
+ str = bits.join('');
+ // Unpack sign, exponent, fraction
+ bias = (1 << ebits - 1) - 1;
+ s = parseInt(str.slice(0, 1), 2) ? -1 : 1;
+ e = parseInt(str.slice(1, 1 + ebits), 2);
+ f = parseInt(str.slice(1 + ebits), 2);
+ // Produce number
+ if(e === (1 << ebits) - 1)return f !== 0 ? NaN : s * Infinity;
+ // Normalized
+ else if(e > 0)return s * pow(2, e - bias) * (1 + f / pow(2, fbits));
+ // Denormalized
+ else if(f !== 0)return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));
+ return s < 0 ? -0 : 0;
+};
+var unpackF64 = function(b){
+ return unpackIEEE754(b, 11, 52);
+};
+var packF64 = function(v){
+ return packIEEE754(v, 11, 52);
+};
+var unpackF32 = function(b){
+ return unpackIEEE754(b, 8, 23);
+};
+var packF32 = function(v){
+ return packIEEE754(v, 8, 23);
+};
+
+var addGetter = function(C, key, internal){
+ $.setDesc(C.prototype, key, {get: function(){ return this[internal]; }});
+};
+
+var get = function(view, bytes, index, conversion, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view._l)throw RangeError();
+ var store = view._b._b
+ , start = intIndex + view._o
+ , pack = store.slice(start, start + bytes);
+ isLittleEndian || pack.reverse();
+ return conversion(pack);
+};
+var set = function(view, bytes, index, conversion, value, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view._l)throw RangeError();
+ var store = view._b._b
+ , start = intIndex + view._o
+ , pack = conversion(+value);
+ isLittleEndian || pack.reverse();
+ for(var i = 0; i < bytes; i++)store[start + i] = pack[i];
+};
+
+if(!$typed.ABV){
+ $ArrayBuffer = function ArrayBuffer(length){
+ strictNew(this, $ArrayBuffer, 'ArrayBuffer');
+ var numberLength = +length
+ , byteLength = toLength(numberLength);
+ if(numberLength != byteLength)throw RangeError();
+ this._b = arrayFill.call(Array(byteLength), 0);
+ this._l = byteLength;
+ };
+ addGetter($ArrayBuffer, BYTE_LENGTH, '_l');
+
+ $DataView = function DataView(buffer, byteOffset, byteLength){
+ strictNew(this, $DataView, 'DataView');
+ if(!(buffer instanceof $ArrayBuffer))throw TypeError();
+ var bufferLength = buffer._l
+ , offset = toInteger(byteOffset);
+ if(offset < 0 || offset > bufferLength)throw RangeError();
+ byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
+ if(offset + byteLength > bufferLength)throw RangeError();
+ this._b = buffer;
+ this._o = offset;
+ this._l = byteLength;
+ };
+ addGetter($DataView, 'buffer', '_b');
+ addGetter($DataView, BYTE_LENGTH, '_l');
+ addGetter($DataView, 'byteOffset', '_o');
+ redefineAll($DataView.prototype, {
+ getInt8: function getInt8(byteOffset){
+ return get(this, 1, byteOffset, unpackI8);
+ },
+ getUint8: function getUint8(byteOffset){
+ return get(this, 1, byteOffset, unpackU8);
+ },
+ getInt16: function getInt16(byteOffset /*, littleEndian */){
+ return get(this, 2, byteOffset, unpackI16, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getUint16: function getUint16(byteOffset /*, littleEndian */){
+ return get(this, 2, byteOffset, unpackU16, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getInt32: function getInt32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackI32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getUint32: function getUint32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackU32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getFloat32: function getFloat32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackF32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getFloat64: function getFloat64(byteOffset /*, littleEndian */){
+ return get(this, 8, byteOffset, unpackF64, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ setInt8: function setInt8(byteOffset, value){
+ return set(this, 1, byteOffset, packI8, value);
+ },
+ setUint8: function setUint8(byteOffset, value){
+ return set(this, 1, byteOffset, packU8, value);
+ },
+ setInt16: function setInt16(byteOffset, value /*, littleEndian */){
+ return set(this, 2, byteOffset, packI16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint16: function setUint16(byteOffset, value /*, littleEndian */){
+ return set(this, 2, byteOffset, packU16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setInt32: function setInt32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packI32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint32: function setUint32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packU32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat32: function setFloat32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packF32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat64: function setFloat64(byteOffset, value /*, littleEndian */){
+ return set(this, 8, byteOffset, packF64, value, arguments.length > 2 ? arguments[2] : undefined);
+ }
+ });
+}
+require('./$.hide')($DataView.prototype, $typed.VIEW, true);
+module.exports = {
+ ArrayBuffer: $ArrayBuffer,
+ DataView: $DataView
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.classof.js b/node_modules/core-js/library/modules/$.classof.js
new file mode 100644
index 000000000..905c61f7a
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.classof.js
@@ -0,0 +1,16 @@
+// 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';
+
+module.exports = function(it){
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = (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/library/modules/$.cof.js b/node_modules/core-js/library/modules/$.cof.js
new file mode 100644
index 000000000..1dd2779a7
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.collection-strong.js b/node_modules/core-js/library/modules/$.collection-strong.js
new file mode 100644
index 000000000..54df55a65
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.collection-strong.js
@@ -0,0 +1,159 @@
+'use strict';
+var $ = require('./$')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , ctx = require('./$.ctx')
+ , strictNew = require('./$.strict-new')
+ , defined = require('./$.defined')
+ , forOf = require('./$.for-of')
+ , $iterDefine = require('./$.iter-define')
+ , step = require('./$.iter-step')
+ , ID = require('./$.uid')('id')
+ , $has = require('./$.has')
+ , isObject = require('./$.is-object')
+ , setSpecies = require('./$.set-species')
+ , DESCRIPTORS = require('./$.descriptors')
+ , isExtensible = Object.isExtensible || isObject
+ , SIZE = DESCRIPTORS ? '_s' : 'size'
+ , id = 0;
+
+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, ID)){
+ // can't set id to frozen object
+ if(!isExtensible(it))return 'F';
+ // not necessary to add id
+ if(!create)return 'E';
+ // add missing object id
+ hide(it, ID, ++id);
+ // return object id with prefix
+ } return 'O' + it[ID];
+};
+
+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){
+ strictNew(that, C, NAME);
+ 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 */){
+ 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)$.setDesc(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/library/modules/$.collection-to-json.js b/node_modules/core-js/library/modules/$.collection-to-json.js
new file mode 100644
index 000000000..41f2e6ec7
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.collection-to-json.js
@@ -0,0 +1,11 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var forOf = require('./$.for-of')
+ , classof = require('./$.classof');
+module.exports = function(NAME){
+ return function toJSON(){
+ if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
+ var arr = [];
+ forOf(this, false, arr.push, arr);
+ return arr;
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.collection-weak.js b/node_modules/core-js/library/modules/$.collection-weak.js
new file mode 100644
index 000000000..384fb39dc
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.collection-weak.js
@@ -0,0 +1,86 @@
+'use strict';
+var hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , anObject = require('./$.an-object')
+ , isObject = require('./$.is-object')
+ , strictNew = require('./$.strict-new')
+ , forOf = require('./$.for-of')
+ , createArrayMethod = require('./$.array-methods')
+ , $has = require('./$.has')
+ , WEAK = require('./$.uid')('weak')
+ , isExtensible = Object.isExtensible || isObject
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , id = 0;
+
+// fallback for frozen keys
+var frozenStore = function(that){
+ return that._l || (that._l = new FrozenStore);
+};
+var FrozenStore = function(){
+ this.a = [];
+};
+var findFrozen = function(store, key){
+ return arrayFind(store.a, function(it){
+ return it[0] === key;
+ });
+};
+FrozenStore.prototype = {
+ get: function(key){
+ var entry = findFrozen(this, key);
+ if(entry)return entry[1];
+ },
+ has: function(key){
+ return !!findFrozen(this, key);
+ },
+ set: function(key, value){
+ var entry = findFrozen(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){
+ strictNew(that, C, NAME);
+ that._i = id++; // collection id
+ that._l = undefined; // leak store for 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;
+ if(!isExtensible(key))return frozenStore(this)['delete'](key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i) && delete key[WEAK][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;
+ if(!isExtensible(key))return frozenStore(this).has(key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ if(!isExtensible(anObject(key))){
+ frozenStore(that).set(key, value);
+ } else {
+ $has(key, WEAK) || hide(key, WEAK, {});
+ key[WEAK][that._i] = value;
+ } return that;
+ },
+ frozenStore: frozenStore,
+ WEAK: WEAK
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.collection.js b/node_modules/core-js/library/modules/$.collection.js
new file mode 100644
index 000000000..9d234d135
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.collection.js
@@ -0,0 +1,55 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , $export = require('./$.export')
+ , fails = require('./$.fails')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , forOf = require('./$.for-of')
+ , strictNew = require('./$.strict-new')
+ , isObject = require('./$.is-object')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , 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);
+ } else {
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ target._c = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, target[ADDER], target);
+ });
+ $.each.call('add,clear,delete,forEach,get,has,set,keys,values,entries'.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){
+ 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)$.setDesc(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/library/modules/$.core.js b/node_modules/core-js/library/modules/$.core.js
new file mode 100644
index 000000000..4e2a0b595
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.core.js
@@ -0,0 +1,2 @@
+var core = module.exports = {version: '1.2.6'};
+if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.ctx.js b/node_modules/core-js/library/modules/$.ctx.js
new file mode 100644
index 000000000..d233574ac
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.defined.js b/node_modules/core-js/library/modules/$.defined.js
new file mode 100644
index 000000000..cfa476b96
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.descriptors.js b/node_modules/core-js/library/modules/$.descriptors.js
new file mode 100644
index 000000000..9cd47b7df
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.dom-create.js b/node_modules/core-js/library/modules/$.dom-create.js
new file mode 100644
index 000000000..240842d29
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.enum-keys.js b/node_modules/core-js/library/modules/$.enum-keys.js
new file mode 100644
index 000000000..06f7de7af
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.enum-keys.js
@@ -0,0 +1,14 @@
+// all enumerable object keys, includes symbols
+var $ = require('./$');
+module.exports = function(it){
+ var keys = $.getKeys(it)
+ , getSymbols = $.getSymbols;
+ if(getSymbols){
+ var symbols = getSymbols(it)
+ , isEnum = $.isEnum
+ , i = 0
+ , key;
+ while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))keys.push(key);
+ }
+ return keys;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.export.js b/node_modules/core-js/library/modules/$.export.js
new file mode 100644
index 000000000..507b5a226
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.export.js
@@ -0,0 +1,46 @@
+var global = require('./$.global')
+ , core = require('./$.core')
+ , 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
+ , IS_WRAP = type & $export.W
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , 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 && key in target;
+ 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(param){
+ return this instanceof C ? new C(param) : C(param);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ if(IS_PROTO)(exports[PROTOTYPE] || (exports[PROTOTYPE] = {}))[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
+module.exports = $export; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.fails-is-regexp.js b/node_modules/core-js/library/modules/$.fails-is-regexp.js
new file mode 100644
index 000000000..c459a77ab
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.fails.js b/node_modules/core-js/library/modules/$.fails.js
new file mode 100644
index 000000000..184e5ea84
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.fix-re-wks.js b/node_modules/core-js/library/modules/$.fix-re-wks.js
new file mode 100644
index 000000000..3597a8985
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.fix-re-wks.js
@@ -0,0 +1,26 @@
+'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)
+ , original = ''[KEY];
+ if(fails(function(){
+ var O = {};
+ O[SYMBOL] = function(){ return 7; };
+ return ''[KEY](O) != 7;
+ })){
+ redefine(String.prototype, KEY, exec(defined, SYMBOL, original));
+ 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 original.call(string, this, arg); }
+ // 21.2.5.6 RegExp.prototype[@@match](string)
+ // 21.2.5.9 RegExp.prototype[@@search](string)
+ : function(string){ return original.call(string, this); }
+ );
+ }
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.flags.js b/node_modules/core-js/library/modules/$.flags.js
new file mode 100644
index 000000000..fc20e5deb
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.for-of.js b/node_modules/core-js/library/modules/$.for-of.js
new file mode 100644
index 000000000..0f2d8e974
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.for-of.js
@@ -0,0 +1,19 @@
+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');
+module.exports = function(iterable, entries, fn, that){
+ var iterFn = getIterFn(iterable)
+ , f = ctx(fn, that, entries ? 2 : 1)
+ , index = 0
+ , length, step, iterator;
+ 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++){
+ entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
+ call(iterator, f, step.value, entries);
+ }
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.get-names.js b/node_modules/core-js/library/modules/$.get-names.js
new file mode 100644
index 000000000..282097140
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.get-names.js
@@ -0,0 +1,20 @@
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+var toIObject = require('./$.to-iobject')
+ , getNames = require('./$').getNames
+ , toString = {}.toString;
+
+var windowNames = typeof window == 'object' && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function(it){
+ try {
+ return getNames(it);
+ } catch(e){
+ return windowNames.slice();
+ }
+};
+
+module.exports.get = function getOwnPropertyNames(it){
+ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it);
+ return getNames(toIObject(it));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.global.js b/node_modules/core-js/library/modules/$.global.js
new file mode 100644
index 000000000..df6efb476
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.has.js b/node_modules/core-js/library/modules/$.has.js
new file mode 100644
index 000000000..870b40e71
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.hide.js b/node_modules/core-js/library/modules/$.hide.js
new file mode 100644
index 000000000..ba025d81d
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.hide.js
@@ -0,0 +1,8 @@
+var $ = require('./$')
+ , createDesc = require('./$.property-desc');
+module.exports = require('./$.descriptors') ? function(object, key, value){
+ return $.setDesc(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/library/modules/$.html.js b/node_modules/core-js/library/modules/$.html.js
new file mode 100644
index 000000000..499bd2f31
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.invoke.js b/node_modules/core-js/library/modules/$.invoke.js
new file mode 100644
index 000000000..08e307fd0
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.iobject.js b/node_modules/core-js/library/modules/$.iobject.js
new file mode 100644
index 000000000..cea38fab4
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.is-array-iter.js b/node_modules/core-js/library/modules/$.is-array-iter.js
new file mode 100644
index 000000000..b6ef7017b
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.is-array.js b/node_modules/core-js/library/modules/$.is-array.js
new file mode 100644
index 000000000..8168b21ce
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.is-array.js
@@ -0,0 +1,5 @@
+// 7.2.2 IsArray(argument)
+var cof = require('./$.cof');
+module.exports = Array.isArray || function(arg){
+ return cof(arg) == 'Array';
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.is-integer.js b/node_modules/core-js/library/modules/$.is-integer.js
new file mode 100644
index 000000000..b51e1317e
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.is-object.js b/node_modules/core-js/library/modules/$.is-object.js
new file mode 100644
index 000000000..ee694be2f
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.is-regexp.js b/node_modules/core-js/library/modules/$.is-regexp.js
new file mode 100644
index 000000000..9ea2aad74
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.iter-call.js b/node_modules/core-js/library/modules/$.iter-call.js
new file mode 100644
index 000000000..e6b9d1b1f
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.iter-create.js b/node_modules/core-js/library/modules/$.iter-create.js
new file mode 100644
index 000000000..adebcf9a4
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.iter-create.js
@@ -0,0 +1,13 @@
+'use strict';
+var $ = require('./$')
+ , 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/library/modules/$.iter-define.js b/node_modules/core-js/library/modules/$.iter-define.js
new file mode 100644
index 000000000..630cdf385
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.iter-define.js
@@ -0,0 +1,66 @@
+'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')
+ , getProto = require('./$').getProto
+ , 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)
+ , methods, key;
+ // Fix native
+ if($native){
+ var IteratorPrototype = getProto($default.call(new Base));
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // FF fix
+ if(!LIBRARY && has(proto, FF_ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if(DEF_VALUES && $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: !DEF_VALUES ? $default : getMethod('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/library/modules/$.iter-detect.js b/node_modules/core-js/library/modules/$.iter-detect.js
new file mode 100644
index 000000000..bff5fffb4
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.iter-step.js b/node_modules/core-js/library/modules/$.iter-step.js
new file mode 100644
index 000000000..6ff0dc518
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.iterators.js b/node_modules/core-js/library/modules/$.iterators.js
new file mode 100644
index 000000000..a09954537
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.iterators.js
@@ -0,0 +1 @@
+module.exports = {}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.js b/node_modules/core-js/library/modules/$.js
new file mode 100644
index 000000000..053bae48c
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.js
@@ -0,0 +1,13 @@
+var $Object = Object;
+module.exports = {
+ create: $Object.create,
+ getProto: $Object.getPrototypeOf,
+ isEnum: {}.propertyIsEnumerable,
+ getDesc: $Object.getOwnPropertyDescriptor,
+ setDesc: $Object.defineProperty,
+ setDescs: $Object.defineProperties,
+ getKeys: $Object.keys,
+ getNames: $Object.getOwnPropertyNames,
+ getSymbols: $Object.getOwnPropertySymbols,
+ each: [].forEach
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.keyof.js b/node_modules/core-js/library/modules/$.keyof.js
new file mode 100644
index 000000000..09d183a71
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.keyof.js
@@ -0,0 +1,10 @@
+var $ = require('./$')
+ , 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/library/modules/$.library.js b/node_modules/core-js/library/modules/$.library.js
new file mode 100644
index 000000000..73f737c59
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.library.js
@@ -0,0 +1 @@
+module.exports = true; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.math-expm1.js b/node_modules/core-js/library/modules/$.math-expm1.js
new file mode 100644
index 000000000..9d91be93e
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.math-expm1.js
@@ -0,0 +1,4 @@
+// 20.2.2.14 Math.expm1(x)
+module.exports = Math.expm1 || function expm1(x){
+ return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.math-log1p.js b/node_modules/core-js/library/modules/$.math-log1p.js
new file mode 100644
index 000000000..a92bf463a
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.math-sign.js b/node_modules/core-js/library/modules/$.math-sign.js
new file mode 100644
index 000000000..a4848df60
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.microtask.js b/node_modules/core-js/library/modules/$.microtask.js
new file mode 100644
index 000000000..1f9ebeb5d
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.microtask.js
@@ -0,0 +1,64 @@
+var global = require('./$.global')
+ , macrotask = require('./$.task').set
+ , Observer = global.MutationObserver || global.WebKitMutationObserver
+ , process = global.process
+ , Promise = global.Promise
+ , isNode = require('./$.cof')(process) == 'process'
+ , head, last, notify;
+
+var flush = function(){
+ var parent, domain, fn;
+ if(isNode && (parent = process.domain)){
+ process.domain = null;
+ parent.exit();
+ }
+ while(head){
+ domain = head.domain;
+ fn = head.fn;
+ if(domain)domain.enter();
+ fn(); // <- currently we use it only for Promise - try / catch not required
+ if(domain)domain.exit();
+ head = head.next;
+ } last = undefined;
+ if(parent)parent.enter();
+};
+
+// Node.js
+if(isNode){
+ notify = function(){
+ process.nextTick(flush);
+ };
+// browsers with MutationObserver
+} else if(Observer){
+ var toggle = 1
+ , 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){
+ notify = function(){
+ Promise.resolve().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);
+ };
+}
+
+module.exports = function asap(fn){
+ var task = {fn: fn, next: undefined, domain: isNode && process.domain};
+ 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/library/modules/$.object-assign.js b/node_modules/core-js/library/modules/$.object-assign.js
new file mode 100644
index 000000000..5ce43f781
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.object-assign.js
@@ -0,0 +1,33 @@
+// 19.1.2.1 Object.assign(target, source, ...)
+var $ = require('./$')
+ , toObject = require('./$.to-object')
+ , IObject = require('./$.iobject');
+
+// should work with symbols and should have deterministic property order (V8 bug)
+module.exports = require('./$.fails')(function(){
+ var a = Object.assign
+ , A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return a({}, A)[S] != 7 || Object.keys(a({}, B)).join('') != K;
+}) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = 1
+ , getKeys = $.getKeys
+ , getSymbols = $.getSymbols
+ , isEnum = $.isEnum;
+ while($$len > index){
+ var S = IObject($$[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;
+} : Object.assign; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.object-define.js b/node_modules/core-js/library/modules/$.object-define.js
new file mode 100644
index 000000000..2fff248f1
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.object-define.js
@@ -0,0 +1,11 @@
+var $ = require('./$')
+ , 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)$.setDesc(target, key = keys[i++], $.getDesc(mixin, key));
+ return target;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.object-sap.js b/node_modules/core-js/library/modules/$.object-sap.js
new file mode 100644
index 000000000..5fa7288a8
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.object-to-array.js b/node_modules/core-js/library/modules/$.object-to-array.js
new file mode 100644
index 000000000..d46425bac
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.object-to-array.js
@@ -0,0 +1,16 @@
+var $ = require('./$')
+ , toIObject = require('./$.to-iobject')
+ , isEnum = $.isEnum;
+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/library/modules/$.own-keys.js b/node_modules/core-js/library/modules/$.own-keys.js
new file mode 100644
index 000000000..0218c4bd5
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.own-keys.js
@@ -0,0 +1,9 @@
+// all object keys, includes non-enumerable and symbols
+var $ = require('./$')
+ , anObject = require('./$.an-object')
+ , Reflect = require('./$.global').Reflect;
+module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
+ var keys = $.getNames(anObject(it))
+ , getSymbols = $.getSymbols;
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.partial.js b/node_modules/core-js/library/modules/$.partial.js
new file mode 100644
index 000000000..53f97aa9c
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.partial.js
@@ -0,0 +1,24 @@
+'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
+ , $$ = arguments
+ , $$len = $$.length
+ , j = 0, k = 0, args;
+ if(!holder && !$$len)return invoke(fn, pargs, that);
+ args = pargs.slice();
+ if(holder)for(;length > j; j++)if(args[j] === _)args[j] = $$[k++];
+ while($$len > k)args.push($$[k++]);
+ return invoke(fn, args, that);
+ };
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.path.js b/node_modules/core-js/library/modules/$.path.js
new file mode 100644
index 000000000..27bb24b89
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.path.js
@@ -0,0 +1 @@
+module.exports = require('./$.core'); \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.property-desc.js b/node_modules/core-js/library/modules/$.property-desc.js
new file mode 100644
index 000000000..e3f7ab2dc
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.redefine-all.js b/node_modules/core-js/library/modules/$.redefine-all.js
new file mode 100644
index 000000000..01fe55baa
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.redefine-all.js
@@ -0,0 +1,5 @@
+var redefine = require('./$.redefine');
+module.exports = function(target, src){
+ for(var key in src)redefine(target, key, src[key]);
+ return target;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.redefine.js b/node_modules/core-js/library/modules/$.redefine.js
new file mode 100644
index 000000000..57453fd17
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.redefine.js
@@ -0,0 +1 @@
+module.exports = require('./$.hide'); \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.replacer.js b/node_modules/core-js/library/modules/$.replacer.js
new file mode 100644
index 000000000..5360a3d35
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.same-value.js b/node_modules/core-js/library/modules/$.same-value.js
new file mode 100644
index 000000000..8c2b8c7f6
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.set-proto.js b/node_modules/core-js/library/modules/$.set-proto.js
new file mode 100644
index 000000000..b1edd681d
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.set-proto.js
@@ -0,0 +1,26 @@
+// Works with __proto__ only. Old v8 can't work with null proto objects.
+/* eslint-disable no-proto */
+var getDesc = require('./$').getDesc
+ , 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, getDesc(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/library/modules/$.set-species.js b/node_modules/core-js/library/modules/$.set-species.js
new file mode 100644
index 000000000..f6720c36d
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.set-species.js
@@ -0,0 +1,13 @@
+'use strict';
+var core = require('./$.core')
+ , $ = require('./$')
+ , DESCRIPTORS = require('./$.descriptors')
+ , SPECIES = require('./$.wks')('species');
+
+module.exports = function(KEY){
+ var C = core[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.set-to-string-tag.js b/node_modules/core-js/library/modules/$.set-to-string-tag.js
new file mode 100644
index 000000000..22b342445
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.set-to-string-tag.js
@@ -0,0 +1,7 @@
+var def = require('./$').setDesc
+ , 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/library/modules/$.shared.js b/node_modules/core-js/library/modules/$.shared.js
new file mode 100644
index 000000000..8dea827ae
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.species-constructor.js b/node_modules/core-js/library/modules/$.species-constructor.js
new file mode 100644
index 000000000..f71168b77
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.strict-new.js b/node_modules/core-js/library/modules/$.strict-new.js
new file mode 100644
index 000000000..8bab9ed15
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.strict-new.js
@@ -0,0 +1,4 @@
+module.exports = function(it, Constructor, name){
+ if(!(it instanceof Constructor))throw TypeError(name + ": use the 'new' operator!");
+ return it;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.string-at.js b/node_modules/core-js/library/modules/$.string-at.js
new file mode 100644
index 000000000..3d344bba7
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.string-context.js b/node_modules/core-js/library/modules/$.string-context.js
new file mode 100644
index 000000000..d6485a43b
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.string-pad.js b/node_modules/core-js/library/modules/$.string-pad.js
new file mode 100644
index 000000000..f0507d934
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.string-pad.js
@@ -0,0 +1,17 @@
+// https://github.com/ljharb/proposal-string-pad-left-right
+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)return S;
+ if(fillStr == '')fillStr = ' ';
+ 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;
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.string-repeat.js b/node_modules/core-js/library/modules/$.string-repeat.js
new file mode 100644
index 000000000..491d08535
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.string-trim.js b/node_modules/core-js/library/modules/$.string-trim.js
new file mode 100644
index 000000000..04423f4db
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.string-trim.js
@@ -0,0 +1,29 @@
+var $export = require('./$.export')
+ , defined = require('./$.defined')
+ , fails = require('./$.fails')
+ , spaces = '\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'
+ , space = '[' + spaces + ']'
+ , non = '\u200b\u0085'
+ , ltrim = RegExp('^' + space + space + '*')
+ , rtrim = RegExp(space + space + '*$');
+
+var exporter = function(KEY, exec){
+ var exp = {};
+ exp[KEY] = exec(trim);
+ $export($export.P + $export.F * fails(function(){
+ return !!spaces[KEY]() || non[KEY]() != non;
+ }), '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/library/modules/$.task.js b/node_modules/core-js/library/modules/$.task.js
new file mode 100644
index 000000000..5d7759e61
--- /dev/null
+++ b/node_modules/core-js/library/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 listner = 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 = listner;
+ 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', listner, 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/library/modules/$.to-index.js b/node_modules/core-js/library/modules/$.to-index.js
new file mode 100644
index 000000000..9346a8ff1
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.to-integer.js b/node_modules/core-js/library/modules/$.to-integer.js
new file mode 100644
index 000000000..f63baaff8
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.to-iobject.js b/node_modules/core-js/library/modules/$.to-iobject.js
new file mode 100644
index 000000000..fcf54c82e
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.to-length.js b/node_modules/core-js/library/modules/$.to-length.js
new file mode 100644
index 000000000..0e15b1b8c
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.to-object.js b/node_modules/core-js/library/modules/$.to-object.js
new file mode 100644
index 000000000..2c57a29fa
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.to-primitive.js b/node_modules/core-js/library/modules/$.to-primitive.js
new file mode 100644
index 000000000..6fb4585a3
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.typed-array.js b/node_modules/core-js/library/modules/$.typed-array.js
new file mode 100644
index 000000000..1bd5cf0e8
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.typed-array.js
@@ -0,0 +1,365 @@
+'use strict';
+if(require('./$.descriptors')){
+ var LIBRARY = require('./$.library')
+ , global = require('./$.global')
+ , $ = require('./$')
+ , fails = require('./$.fails')
+ , $export = require('./$.export')
+ , $typed = require('./$.typed')
+ , $buffer = require('./$.buffer')
+ , ctx = require('./$.ctx')
+ , strictNew = require('./$.strict-new')
+ , propertyDesc = require('./$.property-desc')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , isInteger = require('./$.is-integer')
+ , toInteger = require('./$.to-integer')
+ , toLength = require('./$.to-length')
+ , toIndex = require('./$.to-index')
+ , toPrimitive = require('./$.to-primitive')
+ , isObject = require('./$.is-object')
+ , toObject = require('./$.to-object')
+ , isArrayIter = require('./$.is-array-iter')
+ , isIterable = require('./core.is-iterable')
+ , getIterFn = require('./core.get-iterator-method')
+ , 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')
+ , ArrayProto = Array.prototype
+ , $ArrayBuffer = $buffer.ArrayBuffer
+ , $DataView = $buffer.DataView
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , arrayForEach = createArrayMethod(0)
+ , arrayMap = createArrayMethod(1)
+ , 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
+ , arrayReverse = ArrayProto.reverse
+ , arraySort = ArrayProto.sort
+ , arraySlice = ArrayProto.slice
+ , arrayToString = ArrayProto.toString
+ , arrayToLocaleString = ArrayProto.toLocaleString
+ , ITERATOR = wks('iterator')
+ , TAG = wks('toStringTag')
+ , TYPED_CONSTRUCTOR = wks('typed_constructor')
+ , DEF_CONSTRUCTOR = wks('def_constructor')
+ , ALL_ARRAYS = $typed.ARRAYS
+ , TYPED_ARRAY = $typed.TYPED
+ , VIEW = $typed.VIEW
+ , BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
+
+ var LITTLE_ENDIAN = fails(function(){
+ return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
+ });
+
+ var validate = function(it){
+ if(isObject(it) && TYPED_ARRAY in it)return it;
+ throw TypeError(it + ' is not a typed array!');
+ };
+
+ var fromList = function(O, list){
+ var index = 0
+ , length = list.length
+ , result = allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
+ while(length > index)result[index] = list[index++];
+ return result;
+ };
+
+ 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 $from = function from(source /*, mapfn, thisArg */){
+ var O = toObject(source)
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[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 && $$len > 2)mapfn = ctx(mapfn, $$[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 addGetter = function(C, key, internal){
+ setDesc(C.prototype, key, {get: function(){ return this._d[internal]; }});
+ };
+
+ var $of = function of(/*...items*/){
+ var index = 0
+ , length = arguments.length
+ , result = allocate(this, length);
+ while(length > index)result[index] = arguments[index++];
+ return result;
+ };
+ var $toLocaleString = function toLocaleString(){
+ return arrayToLocaleString.apply(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 fromList(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 fromList(this, arrayMap(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined)); // TODO
+ },
+ 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(){
+ return arrayReverse.call(validate(this));
+ },
+ set: function set(arrayLike /*, offset */){
+ validate(this);
+ var offset = toInteger(arguments.length > 1 ? arguments[1] : undefined);
+ if(offset < 0)throw RangeError();
+ var length = this.length;
+ var src = toObject(arrayLike);
+ var index = 0;
+ var len = toLength(src.length);
+ if(len + offset > length)throw RangeError();
+ while(index < len)this[offset + index] = src[index++];
+ },
+ slice: function slice(start, end){
+ return fromList(this, arraySlice.call(validate(this), start, end)); // TODO
+ },
+ 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)
+ );
+ },
+ 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)
+ && TYPED_ARRAY in target
+ && 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])
+ : getDesc(target, key);
+ };
+ var $setDesc = function defineProperty(target, key, desc){
+ if(isTAIndex(target, key = toPrimitive(key, true)) && isObject(desc)){
+ if('value' in desc)target[key] = desc.value;
+ return target;
+ } else return setDesc(target, key, desc);
+ };
+
+ if(!ALL_ARRAYS){
+ $.getDesc = $getDesc;
+ $.setDesc = $setDesc;
+ }
+
+ $export($export.S + $export.F * !ALL_ARRAYS, 'Object', {
+ getOwnPropertyDescriptor: $getDesc,
+ defineProperty: $setDesc
+ });
+
+ var $TypedArrayPrototype$ = redefineAll({}, proto);
+ redefineAll($TypedArrayPrototype$, {
+ constructor: function(){ /* noop */ },
+ toString: arrayToString,
+ toLocaleString: $toLocaleString
+ });
+ $.setDesc($TypedArrayPrototype$, TAG, {
+ get: function(){ return this[TYPED_ARRAY]; }
+ });
+
+ module.exports = function(KEY, BYTES, wrapper, CLAMPED){
+ CLAMPED = !!CLAMPED;
+ var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'
+ , GETTER = 'get' + KEY
+ , SETTER = 'set' + KEY
+ , TypedArray = global[NAME]
+ , Base = TypedArray || {}
+ , FORCED = !TypedArray || !$typed.ABV
+ , $iterator = proto.values
+ , O = {};
+ var addElement = function(that, index){
+ setDesc(that, index, {
+ get: function(){
+ var data = this._d;
+ return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
+ },
+ set: function(it){
+ var data = this._d;
+ if(CLAMPED)it = (it = Math.round(it)) < 0 ? 0 : it > 0xff ? 0xff : it & 0xff;
+ data.v[SETTER](index * BYTES + data.o, it, LITTLE_ENDIAN);
+ },
+ enumerable: true
+ });
+ };
+ if(!$ArrayBuffer)return;
+ if(FORCED){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ strictNew(that, TypedArray, NAME);
+ var index = 0
+ , offset = 0
+ , buffer, byteLength, length;
+ if(!isObject(data)){
+ byteLength = toInteger(data) * BYTES;
+ buffer = new $ArrayBuffer(byteLength);
+ // TODO TA case
+ } else if(data instanceof $ArrayBuffer){
+ buffer = data;
+ offset = toInteger($offset);
+ if(offset < 0 || offset % BYTES)throw RangeError();
+ var $len = data.byteLength;
+ if($length === undefined){
+ if($len % BYTES)throw RangeError();
+ byteLength = $len - offset;
+ if(byteLength < 0)throw RangeError();
+ } else {
+ byteLength = toLength($length) * BYTES;
+ if(byteLength + offset > $len)throw RangeError();
+ }
+ } else return $from.call(TypedArray, data);
+ length = byteLength / BYTES;
+ hide(that, '_d', {
+ b: buffer,
+ o: offset,
+ l: byteLength,
+ e: length,
+ v: new $DataView(buffer)
+ });
+ while(index < length)addElement(that, index++);
+ });
+ TypedArray.prototype = $.create($TypedArrayPrototype$);
+ addGetter(TypedArray, 'buffer', 'b');
+ addGetter(TypedArray, 'byteOffset', 'o');
+ addGetter(TypedArray, 'byteLength', 'l');
+ addGetter(TypedArray, 'length', 'e');
+ hide(TypedArray, BYTES_PER_ELEMENT, BYTES);
+ hide(TypedArray.prototype, BYTES_PER_ELEMENT, BYTES);
+ hide(TypedArray.prototype, 'constructor', TypedArray);
+ } else if(!$iterDetect(function(iter){
+ new TypedArray(iter); // eslint-disable-line no-new
+ }, true)){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ strictNew(that, TypedArray, NAME);
+ if(isObject(data) && isIterable(data))return $from.call(TypedArray, data);
+ return $length === undefined ? new Base(data, $offset) : new Base(data, $offset, $length);
+ });
+ TypedArray.prototype = Base.prototype;
+ if(!LIBRARY)TypedArray.prototype.constructor = TypedArray;
+ }
+ var TypedArrayPrototype = TypedArray.prototype;
+ var $nativeIterator = TypedArrayPrototype[ITERATOR];
+ hide(TypedArray, TYPED_CONSTRUCTOR, true);
+ hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
+ hide(TypedArrayPrototype, VIEW, true);
+ hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
+ TAG in TypedArrayPrototype || $.setDesc(TypedArrayPrototype, TAG, {
+ get: function(){ return NAME; }
+ });
+
+ O[NAME] = TypedArray;
+
+ $export($export.G + $export.W + $export.F * (TypedArray != Base), O);
+
+ $export($export.S + $export.F * (TypedArray != Base), NAME, {
+ BYTES_PER_ELEMENT: BYTES,
+ from: Base.from || $from,
+ of: Base.of || $of
+ });
+
+ $export($export.P + $export.F * FORCED, NAME, proto);
+
+ $export($export.P + $export.F * (TypedArrayPrototype.toString != arrayToString), NAME, {toString: arrayToString});
+
+ $export($export.P + $export.F * fails(function(){
+ return [1, 2].toLocaleString() != new Typed([1, 2]).toLocaleString()
+ }), NAME, {toLocaleString: $toLocaleString});
+
+ Iterators[NAME] = $nativeIterator || $iterator;
+ LIBRARY || $nativeIterator || hide(TypedArrayPrototype, ITERATOR, $iterator);
+
+ setSpecies(NAME);
+ };
+} else module.exports = function(){ /* empty */}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.typed.js b/node_modules/core-js/library/modules/$.typed.js
new file mode 100644
index 000000000..ced241268
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.typed.js
@@ -0,0 +1,36 @@
+var global = require('./$.global')
+ , hide = require('./$.hide')
+ , uid = require('./$.uid')
+ , TYPED = uid('typed_array')
+ , VIEW = uid('view')
+ , ABV = !!(global.ArrayBuffer && global.DataView)
+ , ARRAYS = true
+ , i = 0, l = 9;
+
+var TypedArrayConstructors = [
+ 'Int8Array',
+ 'Uint8Array',
+ 'Uint8ClampedArray',
+ 'Int16Array',
+ 'Uint16Array',
+ 'Int32Array',
+ 'Uint32Array',
+ 'Float32Array',
+ 'Float64Array'
+];
+
+while(i < l){
+ var Typed = global[TypedArrayConstructors[i++]];
+ if(Typed){
+ hide(Typed.prototype, TYPED, true);
+ hide(Typed.prototype, VIEW, true);
+ } else ARRAYS = false;
+}
+
+module.exports = {
+ ARRAYS: ARRAYS,
+ ABV: ABV,
+ CONSTR: ARRAYS && ABV,
+ TYPED: TYPED,
+ VIEW: VIEW
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/$.uid.js b/node_modules/core-js/library/modules/$.uid.js
new file mode 100644
index 000000000..3be4196bb
--- /dev/null
+++ b/node_modules/core-js/library/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/library/modules/$.wks.js b/node_modules/core-js/library/modules/$.wks.js
new file mode 100644
index 000000000..87a3d29ae
--- /dev/null
+++ b/node_modules/core-js/library/modules/$.wks.js
@@ -0,0 +1,7 @@
+var store = require('./$.shared')('wks')
+ , uid = require('./$.uid')
+ , Symbol = require('./$.global').Symbol;
+module.exports = function(name){
+ return store[name] || (store[name] =
+ Symbol && Symbol[name] || (Symbol || uid)('Symbol.' + name));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/core.log.js b/node_modules/core-js/library/modules/core.log.js
new file mode 100644
index 000000000..4c0ea53da
--- /dev/null
+++ b/node_modules/core-js/library/modules/core.log.js
@@ -0,0 +1,26 @@
+var $ = require('./$')
+ , global = require('./$.global')
+ , $export = require('./$.export')
+ , log = {}
+ , enabled = true;
+// Methods from https://github.com/DeveloperToolsWG/console-object/blob/master/api.md
+$.each.call((
+ 'assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,' +
+ 'info,isIndependentlyComposed,log,markTimeline,profile,profileEnd,table,' +
+ 'time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn'
+).split(','), function(key){
+ log[key] = function(){
+ var $console = global.console;
+ if(enabled && $console && $console[key]){
+ return Function.apply.call($console[key], $console, arguments);
+ }
+ };
+});
+$export($export.G + $export.F, {log: require('./$.object-assign')(log.log, log, {
+ enable: function(){
+ enabled = true;
+ },
+ disable: function(){
+ enabled = false;
+ }
+})}); \ No newline at end of file
diff --git a/node_modules/core-js/library/modules/es7.regexp.escape.js b/node_modules/core-js/library/modules/es7.regexp.escape.js
new file mode 100644
index 000000000..9c4c542a1
--- /dev/null
+++ b/node_modules/core-js/library/modules/es7.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/library/modules/es7.string.pad-left.js b/node_modules/core-js/library/modules/es7.string.pad-left.js
new file mode 100644
index 000000000..643621aad
--- /dev/null
+++ b/node_modules/core-js/library/modules/es7.string.pad-left.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $pad = require('./$.string-pad');
+
+$export($export.P, 'String', {
+ padLeft: function padLeft(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/library/modules/es7.string.pad-right.js b/node_modules/core-js/library/modules/es7.string.pad-right.js
new file mode 100644
index 000000000..e42309602
--- /dev/null
+++ b/node_modules/core-js/library/modules/es7.string.pad-right.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $pad = require('./$.string-pad');
+
+$export($export.P, 'String', {
+ padRight: function padRight(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/library/modules/js.array.statics.js b/node_modules/core-js/library/modules/js.array.statics.js
new file mode 100644
index 000000000..9536c2e48
--- /dev/null
+++ b/node_modules/core-js/library/modules/js.array.statics.js
@@ -0,0 +1,17 @@
+// JavaScript 1.6 / Strawman array statics shim
+var $ = require('./$')
+ , $export = require('./$.export')
+ , $ctx = require('./$.ctx')
+ , $Array = require('./$.core').Array || Array
+ , statics = {};
+var setStatics = function(keys, length){
+ $.each.call(keys.split(','), function(key){
+ if(length == undefined && key in $Array)statics[key] = $Array[key];
+ else if(key in [])statics[key] = $ctx(Function.call, [][key], length);
+ });
+};
+setStatics('pop,reverse,shift,keys,values,entries', 1);
+setStatics('indexOf,every,some,forEach,map,filter,find,findIndex,includes', 3);
+setStatics('join,slice,concat,push,splice,unshift,sort,lastIndexOf,' +
+ 'reduce,reduceRight,copyWithin,fill');
+$export($export.S, 'Array', statics); \ No newline at end of file
diff --git a/node_modules/core-js/library/web/dom.js b/node_modules/core-js/library/web/dom.js
new file mode 100644
index 000000000..9b448cfea
--- /dev/null
+++ b/node_modules/core-js/library/web/dom.js
@@ -0,0 +1,2 @@
+require('../modules/web.dom.iterable');
+module.exports = require('../modules/$.core'); \ No newline at end of file
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/$.add-to-unscopables.js b/node_modules/core-js/modules/$.add-to-unscopables.js
new file mode 100644
index 000000000..bffd16137
--- /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-object.js b/node_modules/core-js/modules/$.an-object.js
new file mode 100644
index 000000000..e5c808fd6
--- /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..585630659
--- /dev/null
+++ b/node_modules/core-js/modules/$.array-copy-within.js
@@ -0,0 +1,27 @@
+// 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)
+ , $$ = arguments
+ , end = $$.length > 2 ? $$[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..6b699df72
--- /dev/null
+++ b/node_modules/core-js/modules/$.array-fill.js
@@ -0,0 +1,16 @@
+// 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 = [].fill || function fill(value /*, start = 0, end = @length */){
+ var O = toObject(this)
+ , length = toLength(O.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = toIndex($$len > 1 ? $$[1] : undefined, length)
+ , end = $$len > 2 ? $$[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-includes.js b/node_modules/core-js/modules/$.array-includes.js
new file mode 100644
index 000000000..9781fca73
--- /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;
+ } 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..e70b99f4c
--- /dev/null
+++ b/node_modules/core-js/modules/$.array-methods.js
@@ -0,0 +1,43 @@
+// 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){
+ 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;
+ 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 ? asc($this, length) : IS_FILTER ? asc($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-species-create.js b/node_modules/core-js/modules/$.array-species-create.js
new file mode 100644
index 000000000..d809cae60
--- /dev/null
+++ b/node_modules/core-js/modules/$.array-species-create.js
@@ -0,0 +1,16 @@
+// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
+var isObject = require('./$.is-object')
+ , isArray = require('./$.is-array')
+ , SPECIES = require('./$.wks')('species');
+module.exports = function(original, length){
+ 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 new (C === undefined ? Array : C)(length);
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/$.buffer.js b/node_modules/core-js/modules/$.buffer.js
new file mode 100644
index 000000000..d1aae58a4
--- /dev/null
+++ b/node_modules/core-js/modules/$.buffer.js
@@ -0,0 +1,288 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , $typed = require('./$.typed')
+ , redefineAll = require('./$.redefine-all')
+ , strictNew = require('./$.strict-new')
+ , toInteger = require('./$.to-integer')
+ , toLength = require('./$.to-length')
+ , arrayFill = require('./$.array-fill')
+ , $ArrayBuffer = global.ArrayBuffer
+ , $DataView = global.DataView
+ , Math = global.Math
+ , parseInt = global.parseInt
+ , abs = Math.abs
+ , pow = Math.pow
+ , min = Math.min
+ , floor = Math.floor
+ , log = Math.log
+ , LN2 = Math.LN2
+ , BYTE_LENGTH = 'byteLength';
+
+// pack / unpack based on
+// https://github.com/inexorabletash/polyfill/blob/v0.1.11/typedarray.js#L123-L264
+// TODO: simplify
+var signed = function(value, bits){
+ var s = 32 - bits;
+ return value << s >> s;
+};
+var unsigned = function(value, bits){
+ var s = 32 - bits;
+ return value << s >>> s;
+};
+var roundToEven = function(n){
+ var w = floor(n)
+ , f = n - w;
+ return f < .5 ? w : f > .5 ? w + 1 : w % 2 ? w + 1 : w;
+};
+var packI8 = function(n){
+ return [n & 0xff];
+};
+var unpackI8 = function(bytes){
+ return signed(bytes[0], 8);
+};
+var packU8 = function(n){
+ return [n & 0xff];
+};
+var unpackU8 = function(bytes){
+ return unsigned(bytes[0], 8);
+};
+var packI16 = function(n){
+ return [n & 0xff, n >> 8 & 0xff];
+};
+var unpackI16 = function(bytes){
+ return signed(bytes[1] << 8 | bytes[0], 16);
+};
+var packU16 = function(n){
+ return [n & 0xff, n >> 8 & 0xff];
+};
+var unpackU16 = function(bytes){
+ return unsigned(bytes[1] << 8 | bytes[0], 16);
+};
+var packI32 = function(n){
+ return [n & 0xff, n >> 8 & 0xff, n >> 16 & 0xff, n >> 24 & 0xff];
+};
+var unpackI32 = function(bytes){
+ return signed(bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0], 32);
+};
+var packU32 = function(n){
+ return [n & 0xff, n >> 8 & 0xff, n >> 16 & 0xff, n >> 24 & 0xff];
+};
+var unpackU32 = function(bytes){
+ return unsigned(bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0], 32);
+};
+var packIEEE754 = function(v, ebits, fbits) {
+ var bias = (1 << ebits - 1) - 1
+ , s, e, f, i, bits, str, bytes;
+ // Compute sign, exponent, fraction
+ if (v !== v) {
+ // NaN
+ // http://dev.w3.org/2006/webapi/WebIDL/#es-type-mapping
+ e = (1 << ebits) - 1;
+ f = pow(2, fbits - 1);
+ s = 0;
+ } else if(v === Infinity || v === -Infinity){
+ e = (1 << ebits) - 1;
+ f = 0;
+ s = v < 0 ? 1 : 0;
+ } else if(v === 0){
+ e = 0;
+ f = 0;
+ s = 1 / v === -Infinity ? 1 : 0;
+ } else {
+ s = v < 0;
+ v = abs(v);
+ if(v >= pow(2, 1 - bias)){
+ e = min(floor(log(v) / LN2), 1023);
+ var significand = v / pow(2, e);
+ if(significand < 1){
+ e -= 1;
+ significand *= 2;
+ }
+ if(significand >= 2){
+ e += 1;
+ significand /= 2;
+ }
+ f = roundToEven(significand * pow(2, fbits));
+ if(f / pow(2, fbits) >= 2){
+ e = e + 1;
+ f = 1;
+ }
+ if(e > bias){
+ // Overflow
+ e = (1 << ebits) - 1;
+ f = 0;
+ } else {
+ // Normalized
+ e = e + bias;
+ f = f - pow(2, fbits);
+ }
+ } else {
+ // Denormalized
+ e = 0;
+ f = roundToEven(v / pow(2, 1 - bias - fbits));
+ }
+ }
+ // Pack sign, exponent, fraction
+ bits = [];
+ for(i = fbits; i; i -= 1){
+ bits.push(f % 2 ? 1 : 0);
+ f = floor(f / 2);
+ }
+ for(i = ebits; i; i -= 1){
+ bits.push(e % 2 ? 1 : 0);
+ e = floor(e / 2);
+ }
+ bits.push(s ? 1 : 0);
+ bits.reverse();
+ str = bits.join('');
+ // Bits to bytes
+ bytes = [];
+ while(str.length){
+ bytes.unshift(parseInt(str.slice(0, 8), 2));
+ str = str.slice(8);
+ }
+ return bytes;
+};
+var unpackIEEE754 = function(bytes, ebits, fbits){
+ var bits = []
+ , i, j, b, str, bias, s, e, f;
+ for(i = 0; i < bytes.length; ++i)for(b = bytes[i], j = 8; j; --j){
+ bits.push(b % 2 ? 1 : 0);
+ b = b >> 1;
+ }
+ bits.reverse();
+ str = bits.join('');
+ // Unpack sign, exponent, fraction
+ bias = (1 << ebits - 1) - 1;
+ s = parseInt(str.slice(0, 1), 2) ? -1 : 1;
+ e = parseInt(str.slice(1, 1 + ebits), 2);
+ f = parseInt(str.slice(1 + ebits), 2);
+ // Produce number
+ if(e === (1 << ebits) - 1)return f !== 0 ? NaN : s * Infinity;
+ // Normalized
+ else if(e > 0)return s * pow(2, e - bias) * (1 + f / pow(2, fbits));
+ // Denormalized
+ else if(f !== 0)return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));
+ return s < 0 ? -0 : 0;
+};
+var unpackF64 = function(b){
+ return unpackIEEE754(b, 11, 52);
+};
+var packF64 = function(v){
+ return packIEEE754(v, 11, 52);
+};
+var unpackF32 = function(b){
+ return unpackIEEE754(b, 8, 23);
+};
+var packF32 = function(v){
+ return packIEEE754(v, 8, 23);
+};
+
+var addGetter = function(C, key, internal){
+ $.setDesc(C.prototype, key, {get: function(){ return this[internal]; }});
+};
+
+var get = function(view, bytes, index, conversion, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view._l)throw RangeError();
+ var store = view._b._b
+ , start = intIndex + view._o
+ , pack = store.slice(start, start + bytes);
+ isLittleEndian || pack.reverse();
+ return conversion(pack);
+};
+var set = function(view, bytes, index, conversion, value, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view._l)throw RangeError();
+ var store = view._b._b
+ , start = intIndex + view._o
+ , pack = conversion(+value);
+ isLittleEndian || pack.reverse();
+ for(var i = 0; i < bytes; i++)store[start + i] = pack[i];
+};
+
+if(!$typed.ABV){
+ $ArrayBuffer = function ArrayBuffer(length){
+ strictNew(this, $ArrayBuffer, 'ArrayBuffer');
+ var numberLength = +length
+ , byteLength = toLength(numberLength);
+ if(numberLength != byteLength)throw RangeError();
+ this._b = arrayFill.call(Array(byteLength), 0);
+ this._l = byteLength;
+ };
+ addGetter($ArrayBuffer, BYTE_LENGTH, '_l');
+
+ $DataView = function DataView(buffer, byteOffset, byteLength){
+ strictNew(this, $DataView, 'DataView');
+ if(!(buffer instanceof $ArrayBuffer))throw TypeError();
+ var bufferLength = buffer._l
+ , offset = toInteger(byteOffset);
+ if(offset < 0 || offset > bufferLength)throw RangeError();
+ byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
+ if(offset + byteLength > bufferLength)throw RangeError();
+ this._b = buffer;
+ this._o = offset;
+ this._l = byteLength;
+ };
+ addGetter($DataView, 'buffer', '_b');
+ addGetter($DataView, BYTE_LENGTH, '_l');
+ addGetter($DataView, 'byteOffset', '_o');
+ redefineAll($DataView.prototype, {
+ getInt8: function getInt8(byteOffset){
+ return get(this, 1, byteOffset, unpackI8);
+ },
+ getUint8: function getUint8(byteOffset){
+ return get(this, 1, byteOffset, unpackU8);
+ },
+ getInt16: function getInt16(byteOffset /*, littleEndian */){
+ return get(this, 2, byteOffset, unpackI16, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getUint16: function getUint16(byteOffset /*, littleEndian */){
+ return get(this, 2, byteOffset, unpackU16, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getInt32: function getInt32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackI32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getUint32: function getUint32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackU32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getFloat32: function getFloat32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackF32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getFloat64: function getFloat64(byteOffset /*, littleEndian */){
+ return get(this, 8, byteOffset, unpackF64, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ setInt8: function setInt8(byteOffset, value){
+ return set(this, 1, byteOffset, packI8, value);
+ },
+ setUint8: function setUint8(byteOffset, value){
+ return set(this, 1, byteOffset, packU8, value);
+ },
+ setInt16: function setInt16(byteOffset, value /*, littleEndian */){
+ return set(this, 2, byteOffset, packI16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint16: function setUint16(byteOffset, value /*, littleEndian */){
+ return set(this, 2, byteOffset, packU16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setInt32: function setInt32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packI32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint32: function setUint32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packU32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat32: function setFloat32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packF32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat64: function setFloat64(byteOffset, value /*, littleEndian */){
+ return set(this, 8, byteOffset, packF64, value, arguments.length > 2 ? arguments[2] : undefined);
+ }
+ });
+}
+require('./$.hide')($DataView.prototype, $typed.VIEW, true);
+module.exports = {
+ ArrayBuffer: $ArrayBuffer,
+ DataView: $DataView
+}; \ 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..905c61f7a
--- /dev/null
+++ b/node_modules/core-js/modules/$.classof.js
@@ -0,0 +1,16 @@
+// 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';
+
+module.exports = function(it){
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = (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..54df55a65
--- /dev/null
+++ b/node_modules/core-js/modules/$.collection-strong.js
@@ -0,0 +1,159 @@
+'use strict';
+var $ = require('./$')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , ctx = require('./$.ctx')
+ , strictNew = require('./$.strict-new')
+ , defined = require('./$.defined')
+ , forOf = require('./$.for-of')
+ , $iterDefine = require('./$.iter-define')
+ , step = require('./$.iter-step')
+ , ID = require('./$.uid')('id')
+ , $has = require('./$.has')
+ , isObject = require('./$.is-object')
+ , setSpecies = require('./$.set-species')
+ , DESCRIPTORS = require('./$.descriptors')
+ , isExtensible = Object.isExtensible || isObject
+ , SIZE = DESCRIPTORS ? '_s' : 'size'
+ , id = 0;
+
+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, ID)){
+ // can't set id to frozen object
+ if(!isExtensible(it))return 'F';
+ // not necessary to add id
+ if(!create)return 'E';
+ // add missing object id
+ hide(it, ID, ++id);
+ // return object id with prefix
+ } return 'O' + it[ID];
+};
+
+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){
+ strictNew(that, C, NAME);
+ 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 */){
+ 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)$.setDesc(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..41f2e6ec7
--- /dev/null
+++ b/node_modules/core-js/modules/$.collection-to-json.js
@@ -0,0 +1,11 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var forOf = require('./$.for-of')
+ , classof = require('./$.classof');
+module.exports = function(NAME){
+ return function toJSON(){
+ if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
+ var arr = [];
+ forOf(this, false, arr.push, arr);
+ return arr;
+ };
+}; \ 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..384fb39dc
--- /dev/null
+++ b/node_modules/core-js/modules/$.collection-weak.js
@@ -0,0 +1,86 @@
+'use strict';
+var hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , anObject = require('./$.an-object')
+ , isObject = require('./$.is-object')
+ , strictNew = require('./$.strict-new')
+ , forOf = require('./$.for-of')
+ , createArrayMethod = require('./$.array-methods')
+ , $has = require('./$.has')
+ , WEAK = require('./$.uid')('weak')
+ , isExtensible = Object.isExtensible || isObject
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , id = 0;
+
+// fallback for frozen keys
+var frozenStore = function(that){
+ return that._l || (that._l = new FrozenStore);
+};
+var FrozenStore = function(){
+ this.a = [];
+};
+var findFrozen = function(store, key){
+ return arrayFind(store.a, function(it){
+ return it[0] === key;
+ });
+};
+FrozenStore.prototype = {
+ get: function(key){
+ var entry = findFrozen(this, key);
+ if(entry)return entry[1];
+ },
+ has: function(key){
+ return !!findFrozen(this, key);
+ },
+ set: function(key, value){
+ var entry = findFrozen(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){
+ strictNew(that, C, NAME);
+ that._i = id++; // collection id
+ that._l = undefined; // leak store for 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;
+ if(!isExtensible(key))return frozenStore(this)['delete'](key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i) && delete key[WEAK][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;
+ if(!isExtensible(key))return frozenStore(this).has(key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ if(!isExtensible(anObject(key))){
+ frozenStore(that).set(key, value);
+ } else {
+ $has(key, WEAK) || hide(key, WEAK, {});
+ key[WEAK][that._i] = value;
+ } return that;
+ },
+ frozenStore: frozenStore,
+ WEAK: WEAK
+}; \ 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..61ae123db
--- /dev/null
+++ b/node_modules/core-js/modules/$.collection.js
@@ -0,0 +1,79 @@
+'use strict';
+var global = require('./$.global')
+ , $export = require('./$.export')
+ , redefine = require('./$.redefine')
+ , redefineAll = require('./$.redefine-all')
+ , forOf = require('./$.for-of')
+ , strictNew = require('./$.strict-new')
+ , isObject = require('./$.is-object')
+ , fails = require('./$.fails')
+ , $iterDetect = require('./$.iter-detect')
+ , setToStringTag = require('./$.set-to-string-tag');
+
+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);
+ } 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;
+ if(!ACCEPT_ITERABLES){
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ var that = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ return that;
+ });
+ C.prototype = proto;
+ proto.constructor = C;
+ }
+ IS_WEAK || instance.forEach(function(val, key){
+ BUGGY_ZERO = 1 / key === -Infinity;
+ });
+ 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..4e2a0b595
--- /dev/null
+++ b/node_modules/core-js/modules/$.core.js
@@ -0,0 +1,2 @@
+var core = module.exports = {version: '1.2.6'};
+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/$.ctx.js b/node_modules/core-js/modules/$.ctx.js
new file mode 100644
index 000000000..d233574ac
--- /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/$.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..9cd47b7df
--- /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..240842d29
--- /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/$.enum-keys.js b/node_modules/core-js/modules/$.enum-keys.js
new file mode 100644
index 000000000..06f7de7af
--- /dev/null
+++ b/node_modules/core-js/modules/$.enum-keys.js
@@ -0,0 +1,14 @@
+// all enumerable object keys, includes symbols
+var $ = require('./$');
+module.exports = function(it){
+ var keys = $.getKeys(it)
+ , getSymbols = $.getSymbols;
+ if(getSymbols){
+ var symbols = getSymbols(it)
+ , isEnum = $.isEnum
+ , i = 0
+ , key;
+ while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))keys.push(key);
+ }
+ return keys;
+}; \ 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..5d4fea03f
--- /dev/null
+++ b/node_modules/core-js/modules/$.export.js
@@ -0,0 +1,41 @@
+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 && key in target;
+ // 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 && !own)redefine(target, key, out);
+ // 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
+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..c459a77ab
--- /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..3597a8985
--- /dev/null
+++ b/node_modules/core-js/modules/$.fix-re-wks.js
@@ -0,0 +1,26 @@
+'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)
+ , original = ''[KEY];
+ if(fails(function(){
+ var O = {};
+ O[SYMBOL] = function(){ return 7; };
+ return ''[KEY](O) != 7;
+ })){
+ redefine(String.prototype, KEY, exec(defined, SYMBOL, original));
+ 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 original.call(string, this, arg); }
+ // 21.2.5.6 RegExp.prototype[@@match](string)
+ // 21.2.5.9 RegExp.prototype[@@search](string)
+ : function(string){ return original.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..fc20e5deb
--- /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..0f2d8e974
--- /dev/null
+++ b/node_modules/core-js/modules/$.for-of.js
@@ -0,0 +1,19 @@
+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');
+module.exports = function(iterable, entries, fn, that){
+ var iterFn = getIterFn(iterable)
+ , f = ctx(fn, that, entries ? 2 : 1)
+ , index = 0
+ , length, step, iterator;
+ 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++){
+ entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
+ call(iterator, f, step.value, entries);
+ }
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/$.get-names.js b/node_modules/core-js/modules/$.get-names.js
new file mode 100644
index 000000000..282097140
--- /dev/null
+++ b/node_modules/core-js/modules/$.get-names.js
@@ -0,0 +1,20 @@
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+var toIObject = require('./$.to-iobject')
+ , getNames = require('./$').getNames
+ , toString = {}.toString;
+
+var windowNames = typeof window == 'object' && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function(it){
+ try {
+ return getNames(it);
+ } catch(e){
+ return windowNames.slice();
+ }
+};
+
+module.exports.get = function getOwnPropertyNames(it){
+ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it);
+ return getNames(toIObject(it));
+}; \ 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..ba025d81d
--- /dev/null
+++ b/node_modules/core-js/modules/$.hide.js
@@ -0,0 +1,8 @@
+var $ = require('./$')
+ , createDesc = require('./$.property-desc');
+module.exports = require('./$.descriptors') ? function(object, key, value){
+ return $.setDesc(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..499bd2f31
--- /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/$.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..cea38fab4
--- /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..b6ef7017b
--- /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..8168b21ce
--- /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(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..b51e1317e
--- /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..9ea2aad74
--- /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..e6b9d1b1f
--- /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..adebcf9a4
--- /dev/null
+++ b/node_modules/core-js/modules/$.iter-create.js
@@ -0,0 +1,13 @@
+'use strict';
+var $ = require('./$')
+ , 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..630cdf385
--- /dev/null
+++ b/node_modules/core-js/modules/$.iter-define.js
@@ -0,0 +1,66 @@
+'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')
+ , getProto = require('./$').getProto
+ , 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)
+ , methods, key;
+ // Fix native
+ if($native){
+ var IteratorPrototype = getProto($default.call(new Base));
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // FF fix
+ if(!LIBRARY && has(proto, FF_ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if(DEF_VALUES && $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: !DEF_VALUES ? $default : getMethod('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..bff5fffb4
--- /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/$.js b/node_modules/core-js/modules/$.js
new file mode 100644
index 000000000..053bae48c
--- /dev/null
+++ b/node_modules/core-js/modules/$.js
@@ -0,0 +1,13 @@
+var $Object = Object;
+module.exports = {
+ create: $Object.create,
+ getProto: $Object.getPrototypeOf,
+ isEnum: {}.propertyIsEnumerable,
+ getDesc: $Object.getOwnPropertyDescriptor,
+ setDesc: $Object.defineProperty,
+ setDescs: $Object.defineProperties,
+ getKeys: $Object.keys,
+ getNames: $Object.getOwnPropertyNames,
+ getSymbols: $Object.getOwnPropertySymbols,
+ each: [].forEach
+}; \ 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..09d183a71
--- /dev/null
+++ b/node_modules/core-js/modules/$.keyof.js
@@ -0,0 +1,10 @@
+var $ = require('./$')
+ , 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..9d91be93e
--- /dev/null
+++ b/node_modules/core-js/modules/$.math-expm1.js
@@ -0,0 +1,4 @@
+// 20.2.2.14 Math.expm1(x)
+module.exports = Math.expm1 || function expm1(x){
+ return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
+}; \ 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/$.microtask.js b/node_modules/core-js/modules/$.microtask.js
new file mode 100644
index 000000000..1f9ebeb5d
--- /dev/null
+++ b/node_modules/core-js/modules/$.microtask.js
@@ -0,0 +1,64 @@
+var global = require('./$.global')
+ , macrotask = require('./$.task').set
+ , Observer = global.MutationObserver || global.WebKitMutationObserver
+ , process = global.process
+ , Promise = global.Promise
+ , isNode = require('./$.cof')(process) == 'process'
+ , head, last, notify;
+
+var flush = function(){
+ var parent, domain, fn;
+ if(isNode && (parent = process.domain)){
+ process.domain = null;
+ parent.exit();
+ }
+ while(head){
+ domain = head.domain;
+ fn = head.fn;
+ if(domain)domain.enter();
+ fn(); // <- currently we use it only for Promise - try / catch not required
+ if(domain)domain.exit();
+ head = head.next;
+ } last = undefined;
+ if(parent)parent.enter();
+};
+
+// Node.js
+if(isNode){
+ notify = function(){
+ process.nextTick(flush);
+ };
+// browsers with MutationObserver
+} else if(Observer){
+ var toggle = 1
+ , 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){
+ notify = function(){
+ Promise.resolve().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);
+ };
+}
+
+module.exports = function asap(fn){
+ var task = {fn: fn, next: undefined, domain: isNode && process.domain};
+ 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..5ce43f781
--- /dev/null
+++ b/node_modules/core-js/modules/$.object-assign.js
@@ -0,0 +1,33 @@
+// 19.1.2.1 Object.assign(target, source, ...)
+var $ = require('./$')
+ , toObject = require('./$.to-object')
+ , IObject = require('./$.iobject');
+
+// should work with symbols and should have deterministic property order (V8 bug)
+module.exports = require('./$.fails')(function(){
+ var a = Object.assign
+ , A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return a({}, A)[S] != 7 || Object.keys(a({}, B)).join('') != K;
+}) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = 1
+ , getKeys = $.getKeys
+ , getSymbols = $.getSymbols
+ , isEnum = $.isEnum;
+ while($$len > index){
+ var S = IObject($$[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;
+} : Object.assign; \ No newline at end of file
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..2fff248f1
--- /dev/null
+++ b/node_modules/core-js/modules/$.object-define.js
@@ -0,0 +1,11 @@
+var $ = require('./$')
+ , 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)$.setDesc(target, key = keys[i++], $.getDesc(mixin, key));
+ return target;
+}; \ 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..5fa7288a8
--- /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..d46425bac
--- /dev/null
+++ b/node_modules/core-js/modules/$.object-to-array.js
@@ -0,0 +1,16 @@
+var $ = require('./$')
+ , toIObject = require('./$.to-iobject')
+ , isEnum = $.isEnum;
+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..0218c4bd5
--- /dev/null
+++ b/node_modules/core-js/modules/$.own-keys.js
@@ -0,0 +1,9 @@
+// all object keys, includes non-enumerable and symbols
+var $ = require('./$')
+ , anObject = require('./$.an-object')
+ , Reflect = require('./$.global').Reflect;
+module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
+ var keys = $.getNames(anObject(it))
+ , getSymbols = $.getSymbols;
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
+}; \ 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..53f97aa9c
--- /dev/null
+++ b/node_modules/core-js/modules/$.partial.js
@@ -0,0 +1,24 @@
+'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
+ , $$ = arguments
+ , $$len = $$.length
+ , j = 0, k = 0, args;
+ if(!holder && !$$len)return invoke(fn, pargs, that);
+ args = pargs.slice();
+ if(holder)for(;length > j; j++)if(args[j] === _)args[j] = $$[k++];
+ while($$len > k)args.push($$[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..11ff15eb3
--- /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..01fe55baa
--- /dev/null
+++ b/node_modules/core-js/modules/$.redefine-all.js
@@ -0,0 +1,5 @@
+var redefine = require('./$.redefine');
+module.exports = function(target, src){
+ for(var key in src)redefine(target, key, src[key]);
+ 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..1783e3a5f
--- /dev/null
+++ b/node_modules/core-js/modules/$.redefine.js
@@ -0,0 +1,27 @@
+// add fake Function#toString
+// for correct work wrapped methods / constructors with methods like LoDash isNative
+var global = require('./$.global')
+ , hide = require('./$.hide')
+ , 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){
+ if(typeof val == 'function'){
+ val.hasOwnProperty(SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
+ val.hasOwnProperty('name') || hide(val, 'name', key);
+ }
+ if(O === global){
+ O[key] = val;
+ } else {
+ if(!safe)delete O[key];
+ hide(O, key, val);
+ }
+})(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..b1edd681d
--- /dev/null
+++ b/node_modules/core-js/modules/$.set-proto.js
@@ -0,0 +1,26 @@
+// Works with __proto__ only. Old v8 can't work with null proto objects.
+/* eslint-disable no-proto */
+var getDesc = require('./$').getDesc
+ , 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, getDesc(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..b1d04c6bd
--- /dev/null
+++ b/node_modules/core-js/modules/$.set-species.js
@@ -0,0 +1,13 @@
+'use strict';
+var global = require('./$.global')
+ , $ = require('./$')
+ , DESCRIPTORS = require('./$.descriptors')
+ , SPECIES = require('./$.wks')('species');
+
+module.exports = function(KEY){
+ var C = global[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(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..22b342445
--- /dev/null
+++ b/node_modules/core-js/modules/$.set-to-string-tag.js
@@ -0,0 +1,7 @@
+var def = require('./$').setDesc
+ , 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.js b/node_modules/core-js/modules/$.shared.js
new file mode 100644
index 000000000..8dea827ae
--- /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..f71168b77
--- /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-new.js b/node_modules/core-js/modules/$.strict-new.js
new file mode 100644
index 000000000..8bab9ed15
--- /dev/null
+++ b/node_modules/core-js/modules/$.strict-new.js
@@ -0,0 +1,4 @@
+module.exports = function(it, Constructor, name){
+ if(!(it instanceof Constructor))throw TypeError(name + ": use the 'new' operator!");
+ return it;
+}; \ 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..3d344bba7
--- /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..d6485a43b
--- /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-pad.js b/node_modules/core-js/modules/$.string-pad.js
new file mode 100644
index 000000000..f0507d934
--- /dev/null
+++ b/node_modules/core-js/modules/$.string-pad.js
@@ -0,0 +1,17 @@
+// https://github.com/ljharb/proposal-string-pad-left-right
+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)return S;
+ if(fillStr == '')fillStr = ' ';
+ 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;
+}; \ No newline at end of file
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..491d08535
--- /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..04423f4db
--- /dev/null
+++ b/node_modules/core-js/modules/$.string-trim.js
@@ -0,0 +1,29 @@
+var $export = require('./$.export')
+ , defined = require('./$.defined')
+ , fails = require('./$.fails')
+ , spaces = '\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'
+ , space = '[' + spaces + ']'
+ , non = '\u200b\u0085'
+ , ltrim = RegExp('^' + space + space + '*')
+ , rtrim = RegExp(space + space + '*$');
+
+var exporter = function(KEY, exec){
+ var exp = {};
+ exp[KEY] = exec(trim);
+ $export($export.P + $export.F * fails(function(){
+ return !!spaces[KEY]() || non[KEY]() != non;
+ }), '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/$.task.js b/node_modules/core-js/modules/$.task.js
new file mode 100644
index 000000000..5d7759e61
--- /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 listner = 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 = listner;
+ 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', listner, 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..9346a8ff1
--- /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..fcf54c82e
--- /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..0e15b1b8c
--- /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..2c57a29fa
--- /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..6fb4585a3
--- /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..1bd5cf0e8
--- /dev/null
+++ b/node_modules/core-js/modules/$.typed-array.js
@@ -0,0 +1,365 @@
+'use strict';
+if(require('./$.descriptors')){
+ var LIBRARY = require('./$.library')
+ , global = require('./$.global')
+ , $ = require('./$')
+ , fails = require('./$.fails')
+ , $export = require('./$.export')
+ , $typed = require('./$.typed')
+ , $buffer = require('./$.buffer')
+ , ctx = require('./$.ctx')
+ , strictNew = require('./$.strict-new')
+ , propertyDesc = require('./$.property-desc')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , isInteger = require('./$.is-integer')
+ , toInteger = require('./$.to-integer')
+ , toLength = require('./$.to-length')
+ , toIndex = require('./$.to-index')
+ , toPrimitive = require('./$.to-primitive')
+ , isObject = require('./$.is-object')
+ , toObject = require('./$.to-object')
+ , isArrayIter = require('./$.is-array-iter')
+ , isIterable = require('./core.is-iterable')
+ , getIterFn = require('./core.get-iterator-method')
+ , 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')
+ , ArrayProto = Array.prototype
+ , $ArrayBuffer = $buffer.ArrayBuffer
+ , $DataView = $buffer.DataView
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , arrayForEach = createArrayMethod(0)
+ , arrayMap = createArrayMethod(1)
+ , 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
+ , arrayReverse = ArrayProto.reverse
+ , arraySort = ArrayProto.sort
+ , arraySlice = ArrayProto.slice
+ , arrayToString = ArrayProto.toString
+ , arrayToLocaleString = ArrayProto.toLocaleString
+ , ITERATOR = wks('iterator')
+ , TAG = wks('toStringTag')
+ , TYPED_CONSTRUCTOR = wks('typed_constructor')
+ , DEF_CONSTRUCTOR = wks('def_constructor')
+ , ALL_ARRAYS = $typed.ARRAYS
+ , TYPED_ARRAY = $typed.TYPED
+ , VIEW = $typed.VIEW
+ , BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
+
+ var LITTLE_ENDIAN = fails(function(){
+ return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
+ });
+
+ var validate = function(it){
+ if(isObject(it) && TYPED_ARRAY in it)return it;
+ throw TypeError(it + ' is not a typed array!');
+ };
+
+ var fromList = function(O, list){
+ var index = 0
+ , length = list.length
+ , result = allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
+ while(length > index)result[index] = list[index++];
+ return result;
+ };
+
+ 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 $from = function from(source /*, mapfn, thisArg */){
+ var O = toObject(source)
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[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 && $$len > 2)mapfn = ctx(mapfn, $$[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 addGetter = function(C, key, internal){
+ setDesc(C.prototype, key, {get: function(){ return this._d[internal]; }});
+ };
+
+ var $of = function of(/*...items*/){
+ var index = 0
+ , length = arguments.length
+ , result = allocate(this, length);
+ while(length > index)result[index] = arguments[index++];
+ return result;
+ };
+ var $toLocaleString = function toLocaleString(){
+ return arrayToLocaleString.apply(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 fromList(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 fromList(this, arrayMap(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined)); // TODO
+ },
+ 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(){
+ return arrayReverse.call(validate(this));
+ },
+ set: function set(arrayLike /*, offset */){
+ validate(this);
+ var offset = toInteger(arguments.length > 1 ? arguments[1] : undefined);
+ if(offset < 0)throw RangeError();
+ var length = this.length;
+ var src = toObject(arrayLike);
+ var index = 0;
+ var len = toLength(src.length);
+ if(len + offset > length)throw RangeError();
+ while(index < len)this[offset + index] = src[index++];
+ },
+ slice: function slice(start, end){
+ return fromList(this, arraySlice.call(validate(this), start, end)); // TODO
+ },
+ 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)
+ );
+ },
+ 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)
+ && TYPED_ARRAY in target
+ && 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])
+ : getDesc(target, key);
+ };
+ var $setDesc = function defineProperty(target, key, desc){
+ if(isTAIndex(target, key = toPrimitive(key, true)) && isObject(desc)){
+ if('value' in desc)target[key] = desc.value;
+ return target;
+ } else return setDesc(target, key, desc);
+ };
+
+ if(!ALL_ARRAYS){
+ $.getDesc = $getDesc;
+ $.setDesc = $setDesc;
+ }
+
+ $export($export.S + $export.F * !ALL_ARRAYS, 'Object', {
+ getOwnPropertyDescriptor: $getDesc,
+ defineProperty: $setDesc
+ });
+
+ var $TypedArrayPrototype$ = redefineAll({}, proto);
+ redefineAll($TypedArrayPrototype$, {
+ constructor: function(){ /* noop */ },
+ toString: arrayToString,
+ toLocaleString: $toLocaleString
+ });
+ $.setDesc($TypedArrayPrototype$, TAG, {
+ get: function(){ return this[TYPED_ARRAY]; }
+ });
+
+ module.exports = function(KEY, BYTES, wrapper, CLAMPED){
+ CLAMPED = !!CLAMPED;
+ var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'
+ , GETTER = 'get' + KEY
+ , SETTER = 'set' + KEY
+ , TypedArray = global[NAME]
+ , Base = TypedArray || {}
+ , FORCED = !TypedArray || !$typed.ABV
+ , $iterator = proto.values
+ , O = {};
+ var addElement = function(that, index){
+ setDesc(that, index, {
+ get: function(){
+ var data = this._d;
+ return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
+ },
+ set: function(it){
+ var data = this._d;
+ if(CLAMPED)it = (it = Math.round(it)) < 0 ? 0 : it > 0xff ? 0xff : it & 0xff;
+ data.v[SETTER](index * BYTES + data.o, it, LITTLE_ENDIAN);
+ },
+ enumerable: true
+ });
+ };
+ if(!$ArrayBuffer)return;
+ if(FORCED){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ strictNew(that, TypedArray, NAME);
+ var index = 0
+ , offset = 0
+ , buffer, byteLength, length;
+ if(!isObject(data)){
+ byteLength = toInteger(data) * BYTES;
+ buffer = new $ArrayBuffer(byteLength);
+ // TODO TA case
+ } else if(data instanceof $ArrayBuffer){
+ buffer = data;
+ offset = toInteger($offset);
+ if(offset < 0 || offset % BYTES)throw RangeError();
+ var $len = data.byteLength;
+ if($length === undefined){
+ if($len % BYTES)throw RangeError();
+ byteLength = $len - offset;
+ if(byteLength < 0)throw RangeError();
+ } else {
+ byteLength = toLength($length) * BYTES;
+ if(byteLength + offset > $len)throw RangeError();
+ }
+ } else return $from.call(TypedArray, data);
+ length = byteLength / BYTES;
+ hide(that, '_d', {
+ b: buffer,
+ o: offset,
+ l: byteLength,
+ e: length,
+ v: new $DataView(buffer)
+ });
+ while(index < length)addElement(that, index++);
+ });
+ TypedArray.prototype = $.create($TypedArrayPrototype$);
+ addGetter(TypedArray, 'buffer', 'b');
+ addGetter(TypedArray, 'byteOffset', 'o');
+ addGetter(TypedArray, 'byteLength', 'l');
+ addGetter(TypedArray, 'length', 'e');
+ hide(TypedArray, BYTES_PER_ELEMENT, BYTES);
+ hide(TypedArray.prototype, BYTES_PER_ELEMENT, BYTES);
+ hide(TypedArray.prototype, 'constructor', TypedArray);
+ } else if(!$iterDetect(function(iter){
+ new TypedArray(iter); // eslint-disable-line no-new
+ }, true)){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ strictNew(that, TypedArray, NAME);
+ if(isObject(data) && isIterable(data))return $from.call(TypedArray, data);
+ return $length === undefined ? new Base(data, $offset) : new Base(data, $offset, $length);
+ });
+ TypedArray.prototype = Base.prototype;
+ if(!LIBRARY)TypedArray.prototype.constructor = TypedArray;
+ }
+ var TypedArrayPrototype = TypedArray.prototype;
+ var $nativeIterator = TypedArrayPrototype[ITERATOR];
+ hide(TypedArray, TYPED_CONSTRUCTOR, true);
+ hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
+ hide(TypedArrayPrototype, VIEW, true);
+ hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
+ TAG in TypedArrayPrototype || $.setDesc(TypedArrayPrototype, TAG, {
+ get: function(){ return NAME; }
+ });
+
+ O[NAME] = TypedArray;
+
+ $export($export.G + $export.W + $export.F * (TypedArray != Base), O);
+
+ $export($export.S + $export.F * (TypedArray != Base), NAME, {
+ BYTES_PER_ELEMENT: BYTES,
+ from: Base.from || $from,
+ of: Base.of || $of
+ });
+
+ $export($export.P + $export.F * FORCED, NAME, proto);
+
+ $export($export.P + $export.F * (TypedArrayPrototype.toString != arrayToString), NAME, {toString: arrayToString});
+
+ $export($export.P + $export.F * fails(function(){
+ return [1, 2].toLocaleString() != new Typed([1, 2]).toLocaleString()
+ }), NAME, {toLocaleString: $toLocaleString});
+
+ Iterators[NAME] = $nativeIterator || $iterator;
+ LIBRARY || $nativeIterator || hide(TypedArrayPrototype, ITERATOR, $iterator);
+
+ setSpecies(NAME);
+ };
+} else module.exports = function(){ /* empty */}; \ 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..ced241268
--- /dev/null
+++ b/node_modules/core-js/modules/$.typed.js
@@ -0,0 +1,36 @@
+var global = require('./$.global')
+ , hide = require('./$.hide')
+ , uid = require('./$.uid')
+ , TYPED = uid('typed_array')
+ , VIEW = uid('view')
+ , ABV = !!(global.ArrayBuffer && global.DataView)
+ , ARRAYS = true
+ , i = 0, l = 9;
+
+var TypedArrayConstructors = [
+ 'Int8Array',
+ 'Uint8Array',
+ 'Uint8ClampedArray',
+ 'Int16Array',
+ 'Uint16Array',
+ 'Int32Array',
+ 'Uint32Array',
+ 'Float32Array',
+ 'Float64Array'
+];
+
+while(i < l){
+ var Typed = global[TypedArrayConstructors[i++]];
+ if(Typed){
+ hide(Typed.prototype, TYPED, true);
+ hide(Typed.prototype, VIEW, true);
+ } else ARRAYS = false;
+}
+
+module.exports = {
+ ARRAYS: ARRAYS,
+ ABV: ABV,
+ CONSTR: ARRAYS && ABV,
+ 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.js b/node_modules/core-js/modules/$.wks.js
new file mode 100644
index 000000000..87a3d29ae
--- /dev/null
+++ b/node_modules/core-js/modules/$.wks.js
@@ -0,0 +1,7 @@
+var store = require('./$.shared')('wks')
+ , uid = require('./$.uid')
+ , Symbol = require('./$.global').Symbol;
+module.exports = function(name){
+ return store[name] || (store[name] =
+ Symbol && Symbol[name] || (Symbol || uid)('Symbol.' + name));
+}; \ No newline at end of file
diff --git a/node_modules/core-js/modules/core.log.js b/node_modules/core-js/modules/core.log.js
new file mode 100644
index 000000000..4c0ea53da
--- /dev/null
+++ b/node_modules/core-js/modules/core.log.js
@@ -0,0 +1,26 @@
+var $ = require('./$')
+ , global = require('./$.global')
+ , $export = require('./$.export')
+ , log = {}
+ , enabled = true;
+// Methods from https://github.com/DeveloperToolsWG/console-object/blob/master/api.md
+$.each.call((
+ 'assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,' +
+ 'info,isIndependentlyComposed,log,markTimeline,profile,profileEnd,table,' +
+ 'time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn'
+).split(','), function(key){
+ log[key] = function(){
+ var $console = global.console;
+ if(enabled && $console && $console[key]){
+ return Function.apply.call($console[key], $console, arguments);
+ }
+ };
+});
+$export($export.G + $export.F, {log: require('./$.object-assign')(log.log, log, {
+ enable: function(){
+ enabled = true;
+ },
+ disable: function(){
+ enabled = false;
+ }
+})}); \ No newline at end of file
diff --git a/node_modules/core-js/modules/es7.regexp.escape.js b/node_modules/core-js/modules/es7.regexp.escape.js
new file mode 100644
index 000000000..9c4c542a1
--- /dev/null
+++ b/node_modules/core-js/modules/es7.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/es7.string.pad-left.js b/node_modules/core-js/modules/es7.string.pad-left.js
new file mode 100644
index 000000000..643621aad
--- /dev/null
+++ b/node_modules/core-js/modules/es7.string.pad-left.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $pad = require('./$.string-pad');
+
+$export($export.P, 'String', {
+ padLeft: function padLeft(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.pad-right.js b/node_modules/core-js/modules/es7.string.pad-right.js
new file mode 100644
index 000000000..e42309602
--- /dev/null
+++ b/node_modules/core-js/modules/es7.string.pad-right.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $pad = require('./$.string-pad');
+
+$export($export.P, 'String', {
+ padRight: function padRight(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/js.array.statics.js b/node_modules/core-js/modules/js.array.statics.js
new file mode 100644
index 000000000..9536c2e48
--- /dev/null
+++ b/node_modules/core-js/modules/js.array.statics.js
@@ -0,0 +1,17 @@
+// JavaScript 1.6 / Strawman array statics shim
+var $ = require('./$')
+ , $export = require('./$.export')
+ , $ctx = require('./$.ctx')
+ , $Array = require('./$.core').Array || Array
+ , statics = {};
+var setStatics = function(keys, length){
+ $.each.call(keys.split(','), function(key){
+ if(length == undefined && key in $Array)statics[key] = $Array[key];
+ else if(key in [])statics[key] = $ctx(Function.call, [][key], length);
+ });
+};
+setStatics('pop,reverse,shift,keys,values,entries', 1);
+setStatics('indexOf,every,some,forEach,map,filter,find,findIndex,includes', 3);
+setStatics('join,slice,concat,push,splice,unshift,sort,lastIndexOf,' +
+ 'reduce,reduceRight,copyWithin,fill');
+$export($export.S, 'Array', statics); \ 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..9d234d135
--- /dev/null
+++ b/node_modules/core-js/modules/library/$.collection.js
@@ -0,0 +1,55 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , $export = require('./$.export')
+ , fails = require('./$.fails')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , forOf = require('./$.for-of')
+ , strictNew = require('./$.strict-new')
+ , isObject = require('./$.is-object')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , 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);
+ } else {
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ target._c = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, target[ADDER], target);
+ });
+ $.each.call('add,clear,delete,forEach,get,has,set,keys,values,entries'.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){
+ 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)$.setDesc(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..507b5a226
--- /dev/null
+++ b/node_modules/core-js/modules/library/$.export.js
@@ -0,0 +1,46 @@
+var global = require('./$.global')
+ , core = require('./$.core')
+ , 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
+ , IS_WRAP = type & $export.W
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , 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 && key in target;
+ 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(param){
+ return this instanceof C ? new C(param) : C(param);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ if(IS_PROTO)(exports[PROTOTYPE] || (exports[PROTOTYPE] = {}))[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
+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..27bb24b89
--- /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.js b/node_modules/core-js/modules/library/$.redefine.js
new file mode 100644
index 000000000..57453fd17
--- /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..f6720c36d
--- /dev/null
+++ b/node_modules/core-js/modules/library/$.set-species.js
@@ -0,0 +1,13 @@
+'use strict';
+var core = require('./$.core')
+ , $ = require('./$')
+ , DESCRIPTORS = require('./$.descriptors')
+ , SPECIES = require('./$.wks')('species');
+
+module.exports = function(KEY){
+ var C = core[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+}; \ No newline at end of file
diff --git a/node_modules/core-js/web/dom.js b/node_modules/core-js/web/dom.js
new file mode 100644
index 000000000..9b448cfea
--- /dev/null
+++ b/node_modules/core-js/web/dom.js
@@ -0,0 +1,2 @@
+require('../modules/web.dom.iterable');
+module.exports = require('../modules/$.core'); \ No newline at end of file