babel-source 5.4.7 → 5.6.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -308,6 +308,7 @@
308
308
  };
309
309
 
310
310
  babelHelpers.get = function get(object, property, receiver) {
311
+ if (object === null) object = Function.prototype;
311
312
  var desc = Object.getOwnPropertyDescriptor(object, property);
312
313
 
313
314
  if (desc === undefined) {
@@ -11,7 +11,67 @@ if (global._babelPolyfill) {
11
11
  }
12
12
  global._babelPolyfill = true;
13
13
  }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
14
- },{"core-js/shim":87,"regenerator/runtime":88}],2:[function(require,module,exports){
14
+ },{"core-js/shim":91,"regenerator/runtime":92}],2:[function(require,module,exports){
15
+ // shim for using process in browser
16
+
17
+ var process = module.exports = {};
18
+ var queue = [];
19
+ var draining = false;
20
+
21
+ function drainQueue() {
22
+ if (draining) {
23
+ return;
24
+ }
25
+ draining = true;
26
+ var currentQueue;
27
+ var len = queue.length;
28
+ while(len) {
29
+ currentQueue = queue;
30
+ queue = [];
31
+ var i = -1;
32
+ while (++i < len) {
33
+ currentQueue[i]();
34
+ }
35
+ len = queue.length;
36
+ }
37
+ draining = false;
38
+ }
39
+ process.nextTick = function (fun) {
40
+ queue.push(fun);
41
+ if (!draining) {
42
+ setTimeout(drainQueue, 0);
43
+ }
44
+ };
45
+
46
+ process.title = 'browser';
47
+ process.browser = true;
48
+ process.env = {};
49
+ process.argv = [];
50
+ process.version = ''; // empty string to avoid regexp issues
51
+ process.versions = {};
52
+
53
+ function noop() {}
54
+
55
+ process.on = noop;
56
+ process.addListener = noop;
57
+ process.once = noop;
58
+ process.off = noop;
59
+ process.removeListener = noop;
60
+ process.removeAllListeners = noop;
61
+ process.emit = noop;
62
+
63
+ process.binding = function (name) {
64
+ throw new Error('process.binding is not supported');
65
+ };
66
+
67
+ // TODO(shtylman)
68
+ process.cwd = function () { return '/' };
69
+ process.chdir = function (dir) {
70
+ throw new Error('process.chdir is not supported');
71
+ };
72
+ process.umask = function() { return 0; };
73
+
74
+ },{}],3:[function(require,module,exports){
15
75
  // false -> Array#indexOf
16
76
  // true -> Array#includes
17
77
  var $ = require('./$');
@@ -29,7 +89,7 @@ module.exports = function(IS_INCLUDES){
29
89
  } return !IS_INCLUDES && -1;
30
90
  };
31
91
  };
32
- },{"./$":22}],3:[function(require,module,exports){
92
+ },{"./$":24}],4:[function(require,module,exports){
33
93
  // 0 -> Array#forEach
34
94
  // 1 -> Array#map
35
95
  // 2 -> Array#filter
@@ -70,7 +130,7 @@ module.exports = function(TYPE){
70
130
  return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
71
131
  };
72
132
  };
73
- },{"./$":22,"./$.ctx":11}],4:[function(require,module,exports){
133
+ },{"./$":24,"./$.ctx":12}],5:[function(require,module,exports){
74
134
  var $ = require('./$');
75
135
  function assert(condition, msg1, msg2){
76
136
  if(!condition)throw TypeError(msg2 ? msg1 + msg2 : msg1);
@@ -89,7 +149,7 @@ assert.inst = function(it, Constructor, name){
89
149
  return it;
90
150
  };
91
151
  module.exports = assert;
92
- },{"./$":22}],5:[function(require,module,exports){
152
+ },{"./$":24}],6:[function(require,module,exports){
93
153
  var $ = require('./$')
94
154
  , enumKeys = require('./$.enum-keys');
95
155
  // 19.1.2.1 Object.assign(target, source, ...)
@@ -109,7 +169,7 @@ module.exports = Object.assign || function assign(target, source){
109
169
  }
110
170
  return T;
111
171
  };
112
- },{"./$":22,"./$.enum-keys":14}],6:[function(require,module,exports){
172
+ },{"./$":24,"./$.enum-keys":15}],7:[function(require,module,exports){
113
173
  var $ = require('./$')
114
174
  , TAG = require('./$.wks')('toStringTag')
115
175
  , toString = {}.toString;
@@ -125,7 +185,7 @@ cof.set = function(it, tag, stat){
125
185
  if(it && !$.has(it = stat ? it : it.prototype, TAG))$.hide(it, TAG, tag);
126
186
  };
127
187
  module.exports = cof;
128
- },{"./$":22,"./$.wks":38}],7:[function(require,module,exports){
188
+ },{"./$":24,"./$.wks":42}],8:[function(require,module,exports){
129
189
  'use strict';
130
190
  var $ = require('./$')
131
191
  , ctx = require('./$.ctx')
@@ -133,7 +193,7 @@ var $ = require('./$')
133
193
  , assert = require('./$.assert')
134
194
  , forOf = require('./$.for-of')
135
195
  , step = require('./$.iter').step
136
- , has = $.has
196
+ , $has = $.has
137
197
  , set = $.set
138
198
  , isObject = $.isObject
139
199
  , hide = $.hide
@@ -148,8 +208,8 @@ var $ = require('./$')
148
208
 
149
209
  function fastKey(it, create){
150
210
  // return primitive with prefix
151
- if(!isObject(it))return (typeof it == 'string' ? 'S' : 'P') + it;
152
- if(!has(it, ID)){
211
+ if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
212
+ if(!$has(it, ID)){
153
213
  // can't set id to frozen object
154
214
  if(!isExtensible(it))return 'F';
155
215
  // not necessary to add id
@@ -163,7 +223,7 @@ function fastKey(it, create){
163
223
  function getEntry(that, key){
164
224
  // fast case
165
225
  var index = fastKey(key), entry;
166
- if(index != 'F')return that[O1][index];
226
+ if(index !== 'F')return that[O1][index];
167
227
  // frozen object case
168
228
  for(entry = that[FIRST]; entry; entry = entry.n){
169
229
  if(entry.k == key)return entry;
@@ -171,16 +231,15 @@ function getEntry(that, key){
171
231
  }
172
232
 
173
233
  module.exports = {
174
- getConstructor: function(NAME, IS_MAP, ADDER){
175
- function C(){
176
- var that = assert.inst(this, C, NAME)
177
- , iterable = arguments[0];
234
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
235
+ var C = wrapper(function(that, iterable){
236
+ assert.inst(that, C, NAME);
178
237
  set(that, O1, $.create(null));
179
238
  set(that, SIZE, 0);
180
239
  set(that, LAST, undefined);
181
240
  set(that, FIRST, undefined);
182
241
  if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
183
- }
242
+ });
184
243
  require('./$.mix')(C.prototype, {
185
244
  // 23.1.3.1 Map.prototype.clear()
186
245
  // 23.2.3.2 Set.prototype.clear()
@@ -254,7 +313,7 @@ module.exports = {
254
313
  if(prev)prev.n = entry;
255
314
  that[SIZE]++;
256
315
  // add to index
257
- if(index != 'F')that[O1][index] = entry;
316
+ if(index !== 'F')that[O1][index] = entry;
258
317
  } return that;
259
318
  },
260
319
  getEntry: getEntry,
@@ -282,7 +341,7 @@ module.exports = {
282
341
  }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
283
342
  }
284
343
  };
285
- },{"./$":22,"./$.assert":4,"./$.ctx":11,"./$.for-of":15,"./$.iter":21,"./$.iter-define":19,"./$.mix":24,"./$.uid":36}],8:[function(require,module,exports){
344
+ },{"./$":24,"./$.assert":5,"./$.ctx":12,"./$.for-of":16,"./$.iter":23,"./$.iter-define":21,"./$.mix":26,"./$.uid":40}],9:[function(require,module,exports){
286
345
  // https://github.com/DavidBruant/Map-Set.prototype.toJSON
287
346
  var $def = require('./$.def')
288
347
  , forOf = require('./$.for-of');
@@ -295,13 +354,13 @@ module.exports = function(NAME){
295
354
  }
296
355
  });
297
356
  };
298
- },{"./$.def":12,"./$.for-of":15}],9:[function(require,module,exports){
357
+ },{"./$.def":13,"./$.for-of":16}],10:[function(require,module,exports){
299
358
  'use strict';
300
359
  var $ = require('./$')
301
360
  , safe = require('./$.uid').safe
302
361
  , assert = require('./$.assert')
303
362
  , forOf = require('./$.for-of')
304
- , _has = $.has
363
+ , $has = $.has
305
364
  , isObject = $.isObject
306
365
  , hide = $.hide
307
366
  , isExtensible = Object.isExtensible || isObject
@@ -344,26 +403,25 @@ function leakStore(that){
344
403
  }
345
404
 
346
405
  module.exports = {
347
- getConstructor: function(NAME, IS_MAP, ADDER){
348
- function C(){
349
- $.set(assert.inst(this, C, NAME), ID, id++);
350
- var iterable = arguments[0];
351
- if(iterable != undefined)forOf(iterable, IS_MAP, this[ADDER], this);
352
- }
406
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
407
+ var C = wrapper(function(that, iterable){
408
+ $.set(assert.inst(that, C, NAME), ID, id++);
409
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
410
+ });
353
411
  require('./$.mix')(C.prototype, {
354
412
  // 23.3.3.2 WeakMap.prototype.delete(key)
355
413
  // 23.4.3.3 WeakSet.prototype.delete(value)
356
414
  'delete': function(key){
357
415
  if(!isObject(key))return false;
358
416
  if(!isExtensible(key))return leakStore(this)['delete'](key);
359
- return _has(key, WEAK) && _has(key[WEAK], this[ID]) && delete key[WEAK][this[ID]];
417
+ return $has(key, WEAK) && $has(key[WEAK], this[ID]) && delete key[WEAK][this[ID]];
360
418
  },
361
419
  // 23.3.3.4 WeakMap.prototype.has(key)
362
420
  // 23.4.3.4 WeakSet.prototype.has(value)
363
421
  has: function has(key){
364
422
  if(!isObject(key))return false;
365
423
  if(!isExtensible(key))return leakStore(this).has(key);
366
- return _has(key, WEAK) && _has(key[WEAK], this[ID]);
424
+ return $has(key, WEAK) && $has(key[WEAK], this[ID]);
367
425
  }
368
426
  });
369
427
  return C;
@@ -372,7 +430,7 @@ module.exports = {
372
430
  if(!isExtensible(assert.obj(key))){
373
431
  leakStore(that).set(key, value);
374
432
  } else {
375
- _has(key, WEAK) || hide(key, WEAK, {});
433
+ $has(key, WEAK) || hide(key, WEAK, {});
376
434
  key[WEAK][that[ID]] = value;
377
435
  } return that;
378
436
  },
@@ -380,7 +438,7 @@ module.exports = {
380
438
  WEAK: WEAK,
381
439
  ID: ID
382
440
  };
383
- },{"./$":22,"./$.array-methods":3,"./$.assert":4,"./$.for-of":15,"./$.mix":24,"./$.uid":36}],10:[function(require,module,exports){
441
+ },{"./$":24,"./$.array-methods":4,"./$.assert":5,"./$.for-of":16,"./$.mix":26,"./$.uid":40}],11:[function(require,module,exports){
384
442
  'use strict';
385
443
  var $ = require('./$')
386
444
  , $def = require('./$.def')
@@ -389,24 +447,25 @@ var $ = require('./$')
389
447
  , species = require('./$.species')
390
448
  , assertInstance = require('./$.assert').inst;
391
449
 
392
- module.exports = function(NAME, methods, common, IS_MAP, IS_WEAK){
450
+ module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
393
451
  var Base = $.g[NAME]
394
452
  , C = Base
395
453
  , ADDER = IS_MAP ? 'set' : 'add'
396
454
  , proto = C && C.prototype
397
455
  , O = {};
398
- function fixMethod(KEY, CHAIN){
399
- if($.FW){
400
- var method = proto[KEY];
401
- require('./$.redef')(proto, KEY, function(a, b){
402
- var result = method.call(this, a === 0 ? 0 : a, b);
403
- return CHAIN ? this : result;
404
- });
405
- }
456
+ function fixMethod(KEY){
457
+ var fn = proto[KEY];
458
+ require('./$.redef')(proto, KEY,
459
+ KEY == 'delete' ? function(a){ return fn.call(this, a === 0 ? 0 : a); }
460
+ : KEY == 'has' ? function has(a){ return fn.call(this, a === 0 ? 0 : a); }
461
+ : KEY == 'get' ? function get(a){ return fn.call(this, a === 0 ? 0 : a); }
462
+ : KEY == 'add' ? function add(a){ fn.call(this, a === 0 ? 0 : a); return this; }
463
+ : function set(a, b){ fn.call(this, a === 0 ? 0 : a, b); return this; }
464
+ );
406
465
  }
407
466
  if(!$.isFunction(C) || !(IS_WEAK || !BUGGY && proto.forEach && proto.entries)){
408
467
  // create collection constructor
409
- C = common.getConstructor(NAME, IS_MAP, ADDER);
468
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
410
469
  require('./$.mix')(C.prototype, methods);
411
470
  } else {
412
471
  var inst = new C
@@ -414,15 +473,14 @@ module.exports = function(NAME, methods, common, IS_MAP, IS_WEAK){
414
473
  , buggyZero;
415
474
  // wrap for init collections from iterable
416
475
  if(!require('./$.iter-detect')(function(iter){ new C(iter); })){ // eslint-disable-line no-new
417
- C = function(){
418
- assertInstance(this, C, NAME);
419
- var that = new Base
420
- , iterable = arguments[0];
476
+ C = wrapper(function(target, iterable){
477
+ assertInstance(target, C, NAME);
478
+ var that = new Base;
421
479
  if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
422
480
  return that;
423
- };
481
+ });
424
482
  C.prototype = proto;
425
- if($.FW)proto.constructor = C;
483
+ proto.constructor = C;
426
484
  }
427
485
  IS_WEAK || inst.forEach(function(val, key){
428
486
  buggyZero = 1 / key === -Infinity;
@@ -434,7 +492,7 @@ module.exports = function(NAME, methods, common, IS_MAP, IS_WEAK){
434
492
  IS_MAP && fixMethod('get');
435
493
  }
436
494
  // + fix .add & .set for chaining
437
- if(buggyZero || chain !== inst)fixMethod(ADDER, true);
495
+ if(buggyZero || chain !== inst)fixMethod(ADDER);
438
496
  }
439
497
 
440
498
  require('./$.cof').set(C, NAME);
@@ -448,7 +506,7 @@ module.exports = function(NAME, methods, common, IS_MAP, IS_WEAK){
448
506
 
449
507
  return C;
450
508
  };
451
- },{"./$":22,"./$.assert":4,"./$.cof":6,"./$.def":12,"./$.for-of":15,"./$.iter":21,"./$.iter-detect":20,"./$.mix":24,"./$.redef":27,"./$.species":30}],11:[function(require,module,exports){
509
+ },{"./$":24,"./$.assert":5,"./$.cof":7,"./$.def":13,"./$.for-of":16,"./$.iter":23,"./$.iter-detect":22,"./$.mix":26,"./$.redef":29,"./$.species":34}],12:[function(require,module,exports){
452
510
  // Optional / simple context binding
453
511
  var assertFunction = require('./$.assert').fn;
454
512
  module.exports = function(fn, that, length){
@@ -468,7 +526,7 @@ module.exports = function(fn, that, length){
468
526
  return fn.apply(that, arguments);
469
527
  };
470
528
  };
471
- },{"./$.assert":4}],12:[function(require,module,exports){
529
+ },{"./$.assert":5}],13:[function(require,module,exports){
472
530
  var $ = require('./$')
473
531
  , global = $.g
474
532
  , core = $.core
@@ -511,7 +569,7 @@ function $def(type, name, source){
511
569
  }
512
570
  }
513
571
  module.exports = $def;
514
- },{"./$":22,"./$.redef":27}],13:[function(require,module,exports){
572
+ },{"./$":24,"./$.redef":29}],14:[function(require,module,exports){
515
573
  var $ = require('./$')
516
574
  , document = $.g.document
517
575
  , isObject = $.isObject
@@ -520,7 +578,7 @@ var $ = require('./$')
520
578
  module.exports = function(it){
521
579
  return is ? document.createElement(it) : {};
522
580
  };
523
- },{"./$":22}],14:[function(require,module,exports){
581
+ },{"./$":24}],15:[function(require,module,exports){
524
582
  var $ = require('./$');
525
583
  module.exports = function(it){
526
584
  var keys = $.getKeys(it)
@@ -531,7 +589,7 @@ module.exports = function(it){
531
589
  });
532
590
  return keys;
533
591
  };
534
- },{"./$":22}],15:[function(require,module,exports){
592
+ },{"./$":24}],16:[function(require,module,exports){
535
593
  var ctx = require('./$.ctx')
536
594
  , get = require('./$.iter').get
537
595
  , call = require('./$.iter-call');
@@ -545,13 +603,34 @@ module.exports = function(iterable, entries, fn, that){
545
603
  }
546
604
  }
547
605
  };
548
- },{"./$.ctx":11,"./$.iter":21,"./$.iter-call":18}],16:[function(require,module,exports){
606
+ },{"./$.ctx":12,"./$.iter":23,"./$.iter-call":20}],17:[function(require,module,exports){
549
607
  module.exports = function($){
550
608
  $.FW = true;
551
609
  $.path = $.g;
552
610
  return $;
553
611
  };
554
- },{}],17:[function(require,module,exports){
612
+ },{}],18:[function(require,module,exports){
613
+ // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
614
+ var $ = require('./$')
615
+ , toString = {}.toString
616
+ , getNames = $.getNames;
617
+
618
+ var windowNames = typeof window == 'object' && Object.getOwnPropertyNames
619
+ ? Object.getOwnPropertyNames(window) : [];
620
+
621
+ function getWindowNames(it){
622
+ try {
623
+ return getNames(it);
624
+ } catch(e){
625
+ return windowNames.slice();
626
+ }
627
+ }
628
+
629
+ module.exports.get = function getOwnPropertyNames(it){
630
+ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it);
631
+ return getNames($.toObject(it));
632
+ };
633
+ },{"./$":24}],19:[function(require,module,exports){
555
634
  // Fast apply
556
635
  // http://jsperf.lnkit.com/fast-apply/5
557
636
  module.exports = function(fn, args, that){
@@ -571,7 +650,7 @@ module.exports = function(fn, args, that){
571
650
  : fn.call(that, args[0], args[1], args[2], args[3], args[4]);
572
651
  } return fn.apply(that, args);
573
652
  };
574
- },{}],18:[function(require,module,exports){
653
+ },{}],20:[function(require,module,exports){
575
654
  var assertObject = require('./$.assert').obj;
576
655
  function close(iterator){
577
656
  var ret = iterator['return'];
@@ -587,7 +666,7 @@ function call(iterator, fn, value, entries){
587
666
  }
588
667
  call.close = close;
589
668
  module.exports = call;
590
- },{"./$.assert":4}],19:[function(require,module,exports){
669
+ },{"./$.assert":5}],21:[function(require,module,exports){
591
670
  var $def = require('./$.def')
592
671
  , $redef = require('./$.redef')
593
672
  , $ = require('./$')
@@ -623,7 +702,7 @@ module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCE)
623
702
  if($.FW && $.has(proto, FF_ITERATOR))$iter.set(IteratorPrototype, $.that);
624
703
  }
625
704
  // Define iterator
626
- if($.FW)$iter.set(proto, _default);
705
+ if($.FW || FORCE)$iter.set(proto, _default);
627
706
  // Plug for library
628
707
  Iterators[NAME] = _default;
629
708
  Iterators[TAG] = $.that;
@@ -638,7 +717,7 @@ module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCE)
638
717
  } else $def($def.P + $def.F * $iter.BUGGY, NAME, methods);
639
718
  }
640
719
  };
641
- },{"./$":22,"./$.cof":6,"./$.def":12,"./$.iter":21,"./$.redef":27,"./$.wks":38}],20:[function(require,module,exports){
720
+ },{"./$":24,"./$.cof":7,"./$.def":13,"./$.iter":23,"./$.redef":29,"./$.wks":42}],22:[function(require,module,exports){
642
721
  var SYMBOL_ITERATOR = require('./$.wks')('iterator')
643
722
  , SAFE_CLOSING = false;
644
723
  try {
@@ -658,14 +737,16 @@ module.exports = function(exec){
658
737
  } catch(e){ /* empty */ }
659
738
  return safe;
660
739
  };
661
- },{"./$.wks":38}],21:[function(require,module,exports){
740
+ },{"./$.wks":42}],23:[function(require,module,exports){
662
741
  'use strict';
663
742
  var $ = require('./$')
664
743
  , cof = require('./$.cof')
665
- , assertObject = require('./$.assert').obj
744
+ , classof = cof.classof
745
+ , assert = require('./$.assert')
746
+ , assertObject = assert.obj
666
747
  , SYMBOL_ITERATOR = require('./$.wks')('iterator')
667
748
  , FF_ITERATOR = '@@iterator'
668
- , Iterators = {}
749
+ , Iterators = require('./$.shared')('iterators')
669
750
  , IteratorPrototype = {};
670
751
  // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
671
752
  setIterator(IteratorPrototype, $.that);
@@ -684,14 +765,20 @@ module.exports = {
684
765
  },
685
766
  is: function(it){
686
767
  var O = Object(it)
687
- , Symbol = $.g.Symbol
688
- , SYM = Symbol && Symbol.iterator || FF_ITERATOR;
689
- return SYM in O || SYMBOL_ITERATOR in O || $.has(Iterators, cof.classof(O));
768
+ , Symbol = $.g.Symbol;
769
+ return (Symbol && Symbol.iterator || FF_ITERATOR) in O
770
+ || SYMBOL_ITERATOR in O
771
+ || $.has(Iterators, classof(O));
690
772
  },
691
773
  get: function(it){
692
- var Symbol = $.g.Symbol
693
- , ext = it[Symbol && Symbol.iterator || FF_ITERATOR]
694
- , getIter = ext || it[SYMBOL_ITERATOR] || Iterators[cof.classof(it)];
774
+ var Symbol = $.g.Symbol
775
+ , getIter;
776
+ if(it != undefined){
777
+ getIter = it[Symbol && Symbol.iterator || FF_ITERATOR]
778
+ || it[SYMBOL_ITERATOR]
779
+ || Iterators[classof(it)];
780
+ }
781
+ assert($.isFunction(getIter), it, ' is not iterable!');
695
782
  return assertObject(getIter.call(it));
696
783
  },
697
784
  set: setIterator,
@@ -700,7 +787,7 @@ module.exports = {
700
787
  cof.set(Constructor, NAME + ' Iterator');
701
788
  }
702
789
  };
703
- },{"./$":22,"./$.assert":4,"./$.cof":6,"./$.wks":38}],22:[function(require,module,exports){
790
+ },{"./$":24,"./$.assert":5,"./$.cof":7,"./$.shared":33,"./$.wks":42}],24:[function(require,module,exports){
704
791
  'use strict';
705
792
  var global = typeof self != 'undefined' ? self : Function('return this')()
706
793
  , core = {}
@@ -757,9 +844,6 @@ var $ = module.exports = require('./$.fw')({
757
844
  // http://jsperf.com/core-js-isobject
758
845
  isObject: isObject,
759
846
  isFunction: isFunction,
760
- it: function(it){
761
- return it;
762
- },
763
847
  that: function(){
764
848
  return this;
765
849
  },
@@ -800,7 +884,7 @@ var $ = module.exports = require('./$.fw')({
800
884
  /* eslint-disable no-undef */
801
885
  if(typeof __e != 'undefined')__e = core;
802
886
  if(typeof __g != 'undefined')__g = global;
803
- },{"./$.fw":16}],23:[function(require,module,exports){
887
+ },{"./$.fw":17}],25:[function(require,module,exports){
804
888
  var $ = require('./$');
805
889
  module.exports = function(object, el){
806
890
  var O = $.toObject(object)
@@ -810,13 +894,13 @@ module.exports = function(object, el){
810
894
  , key;
811
895
  while(length > index)if(O[key = keys[index++]] === el)return key;
812
896
  };
813
- },{"./$":22}],24:[function(require,module,exports){
897
+ },{"./$":24}],26:[function(require,module,exports){
814
898
  var $redef = require('./$.redef');
815
899
  module.exports = function(target, src){
816
900
  for(var key in src)$redef(target, key, src[key]);
817
901
  return target;
818
902
  };
819
- },{"./$.redef":27}],25:[function(require,module,exports){
903
+ },{"./$.redef":29}],27:[function(require,module,exports){
820
904
  var $ = require('./$')
821
905
  , assertObject = require('./$.assert').obj;
822
906
  module.exports = function ownKeys(it){
@@ -825,7 +909,7 @@ module.exports = function ownKeys(it){
825
909
  , getSymbols = $.getSymbols;
826
910
  return getSymbols ? keys.concat(getSymbols(it)) : keys;
827
911
  };
828
- },{"./$":22,"./$.assert":4}],26:[function(require,module,exports){
912
+ },{"./$":24,"./$.assert":5}],28:[function(require,module,exports){
829
913
  'use strict';
830
914
  var $ = require('./$')
831
915
  , invoke = require('./$.invoke')
@@ -849,7 +933,7 @@ module.exports = function(/* ...pargs */){
849
933
  return invoke(fn, args, that);
850
934
  };
851
935
  };
852
- },{"./$":22,"./$.assert":4,"./$.invoke":17}],27:[function(require,module,exports){
936
+ },{"./$":24,"./$.assert":5,"./$.invoke":19}],29:[function(require,module,exports){
853
937
  var $ = require('./$')
854
938
  , tpl = String({}.hasOwnProperty)
855
939
  , SRC = require('./$.uid').safe('src')
@@ -859,6 +943,7 @@ function $redef(O, key, val, safe){
859
943
  if($.isFunction(val)){
860
944
  var base = O[key];
861
945
  $.hide(val, SRC, base ? String(base) : tpl.replace(/hasOwnProperty/, String(key)));
946
+ if(!('name' in val))val.name = key;
862
947
  }
863
948
  if(O === $.g){
864
949
  O[key] = val;
@@ -879,7 +964,7 @@ $.core.inspectSource = function(it){
879
964
  };
880
965
 
881
966
  module.exports = $redef;
882
- },{"./$":22,"./$.uid":36}],28:[function(require,module,exports){
967
+ },{"./$":24,"./$.uid":40}],30:[function(require,module,exports){
883
968
  'use strict';
884
969
  module.exports = function(regExp, replace, isStatic){
885
970
  var replacer = replace === Object(replace) ? function(part){
@@ -889,7 +974,11 @@ module.exports = function(regExp, replace, isStatic){
889
974
  return String(isStatic ? it : this).replace(regExp, replacer);
890
975
  };
891
976
  };
892
- },{}],29:[function(require,module,exports){
977
+ },{}],31:[function(require,module,exports){
978
+ module.exports = Object.is || function is(x, y){
979
+ return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
980
+ };
981
+ },{}],32:[function(require,module,exports){
893
982
  // Works with __proto__ only. Old v8 can't work with null proto objects.
894
983
  /* eslint-disable no-proto */
895
984
  var $ = require('./$')
@@ -915,7 +1004,14 @@ module.exports = {
915
1004
  : undefined),
916
1005
  check: check
917
1006
  };
918
- },{"./$":22,"./$.assert":4,"./$.ctx":11}],30:[function(require,module,exports){
1007
+ },{"./$":24,"./$.assert":5,"./$.ctx":12}],33:[function(require,module,exports){
1008
+ var $ = require('./$')
1009
+ , SHARED = '__core-js_shared__'
1010
+ , store = $.g[SHARED] || ($.g[SHARED] = {});
1011
+ module.exports = function(key){
1012
+ return store[key] || (store[key] = {});
1013
+ };
1014
+ },{"./$":24}],34:[function(require,module,exports){
919
1015
  var $ = require('./$')
920
1016
  , SPECIES = require('./$.wks')('species');
921
1017
  module.exports = function(C){
@@ -924,7 +1020,7 @@ module.exports = function(C){
924
1020
  get: $.that
925
1021
  });
926
1022
  };
927
- },{"./$":22,"./$.wks":38}],31:[function(require,module,exports){
1023
+ },{"./$":24,"./$.wks":42}],35:[function(require,module,exports){
928
1024
  // true -> String#at
929
1025
  // false -> String#codePointAt
930
1026
  var $ = require('./$');
@@ -942,7 +1038,7 @@ module.exports = function(TO_STRING){
942
1038
  : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
943
1039
  };
944
1040
  };
945
- },{"./$":22}],32:[function(require,module,exports){
1041
+ },{"./$":24}],36:[function(require,module,exports){
946
1042
  // http://wiki.ecmascript.org/doku.php?id=strawman:string_padding
947
1043
  var $ = require('./$')
948
1044
  , repeat = require('./$.string-repeat');
@@ -975,7 +1071,7 @@ module.exports = function(that, minLength, fillChar, left){
975
1071
  // 11. Return a String made from S, followed by sFillVal.
976
1072
  return left ? sFillVal.concat(S) : S.concat(sFillVal);
977
1073
  };
978
- },{"./$":22,"./$.string-repeat":33}],33:[function(require,module,exports){
1074
+ },{"./$":24,"./$.string-repeat":37}],37:[function(require,module,exports){
979
1075
  'use strict';
980
1076
  var $ = require('./$');
981
1077
 
@@ -987,7 +1083,7 @@ module.exports = function repeat(count){
987
1083
  for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;
988
1084
  return res;
989
1085
  };
990
- },{"./$":22}],34:[function(require,module,exports){
1086
+ },{"./$":24}],38:[function(require,module,exports){
991
1087
  'use strict';
992
1088
  var $ = require('./$')
993
1089
  , ctx = require('./$.ctx')
@@ -1000,8 +1096,6 @@ var $ = require('./$')
1000
1096
  , process = global.process
1001
1097
  , setTask = global.setImmediate
1002
1098
  , clearTask = global.clearImmediate
1003
- , postMessage = global.postMessage
1004
- , addEventListener = global.addEventListener
1005
1099
  , MessageChannel = global.MessageChannel
1006
1100
  , counter = 0
1007
1101
  , queue = {}
@@ -1039,11 +1133,11 @@ if(!isFunction(setTask) || !isFunction(clearTask)){
1039
1133
  };
1040
1134
  // Modern browsers, skip implementation for WebWorkers
1041
1135
  // IE8 has postMessage, but it's sync & typeof its postMessage is object
1042
- } else if(addEventListener && isFunction(postMessage) && !global.importScripts){
1136
+ } else if(global.addEventListener && isFunction(global.postMessage) && !global.importScripts){
1043
1137
  defer = function(id){
1044
- postMessage(id, '*');
1138
+ global.postMessage(id, '*');
1045
1139
  };
1046
- addEventListener('message', listner, false);
1140
+ global.addEventListener('message', listner, false);
1047
1141
  // WebWorkers
1048
1142
  } else if(isFunction(MessageChannel)){
1049
1143
  channel = new MessageChannel;
@@ -1069,7 +1163,7 @@ module.exports = {
1069
1163
  set: setTask,
1070
1164
  clear: clearTask
1071
1165
  };
1072
- },{"./$":22,"./$.cof":6,"./$.ctx":11,"./$.dom-create":13,"./$.invoke":17}],35:[function(require,module,exports){
1166
+ },{"./$":24,"./$.cof":7,"./$.ctx":12,"./$.dom-create":14,"./$.invoke":19}],39:[function(require,module,exports){
1073
1167
  module.exports = function(exec){
1074
1168
  try {
1075
1169
  exec();
@@ -1078,29 +1172,28 @@ module.exports = function(exec){
1078
1172
  return true;
1079
1173
  }
1080
1174
  };
1081
- },{}],36:[function(require,module,exports){
1175
+ },{}],40:[function(require,module,exports){
1082
1176
  var sid = 0;
1083
1177
  function uid(key){
1084
1178
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++sid + Math.random()).toString(36));
1085
1179
  }
1086
1180
  uid.safe = require('./$').g.Symbol || uid;
1087
1181
  module.exports = uid;
1088
- },{"./$":22}],37:[function(require,module,exports){
1182
+ },{"./$":24}],41:[function(require,module,exports){
1089
1183
  // 22.1.3.31 Array.prototype[@@unscopables]
1090
- var $ = require('./$')
1091
- , UNSCOPABLES = require('./$.wks')('unscopables');
1092
- if($.FW && !(UNSCOPABLES in []))$.hide(Array.prototype, UNSCOPABLES, {});
1184
+ var UNSCOPABLES = require('./$.wks')('unscopables');
1185
+ if(!(UNSCOPABLES in []))require('./$').hide(Array.prototype, UNSCOPABLES, {});
1093
1186
  module.exports = function(key){
1094
- if($.FW)[][UNSCOPABLES][key] = true;
1187
+ [][UNSCOPABLES][key] = true;
1095
1188
  };
1096
- },{"./$":22,"./$.wks":38}],38:[function(require,module,exports){
1189
+ },{"./$":24,"./$.wks":42}],42:[function(require,module,exports){
1097
1190
  var global = require('./$').g
1098
- , store = {};
1191
+ , store = require('./$.shared')('wks');
1099
1192
  module.exports = function(name){
1100
1193
  return store[name] || (store[name] =
1101
1194
  global.Symbol && global.Symbol[name] || require('./$.uid').safe('Symbol.' + name));
1102
1195
  };
1103
- },{"./$":22,"./$.uid":36}],39:[function(require,module,exports){
1196
+ },{"./$":24,"./$.shared":33,"./$.uid":40}],43:[function(require,module,exports){
1104
1197
  var $ = require('./$')
1105
1198
  , cel = require('./$.dom-create')
1106
1199
  , cof = require('./$.cof')
@@ -1121,6 +1214,7 @@ var $ = require('./$')
1121
1214
  , getOwnDescriptor = $.getDesc
1122
1215
  , defineProperties = $.setDescs
1123
1216
  , isFunction = $.isFunction
1217
+ , isObject = $.isObject
1124
1218
  , toObject = $.toObject
1125
1219
  , toLength = $.toLength
1126
1220
  , toIndex = $.toIndex
@@ -1212,7 +1306,6 @@ function createGetKeys(names, length){
1212
1306
  return result;
1213
1307
  };
1214
1308
  }
1215
- function isPrimitive(it){ return !$.isObject(it); }
1216
1309
  function Empty(){}
1217
1310
  $def($def.S, 'Object', {
1218
1311
  // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
@@ -1240,17 +1333,29 @@ $def($def.S, 'Object', {
1240
1333
  // 19.1.2.14 / 15.2.3.14 Object.keys(O)
1241
1334
  keys: $.getKeys = $.getKeys || createGetKeys(keys1, keysLen1, false),
1242
1335
  // 19.1.2.17 / 15.2.3.8 Object.seal(O)
1243
- seal: $.it, // <- cap
1336
+ seal: function seal(it){
1337
+ return it; // <- cap
1338
+ },
1244
1339
  // 19.1.2.5 / 15.2.3.9 Object.freeze(O)
1245
- freeze: $.it, // <- cap
1340
+ freeze: function freeze(it){
1341
+ return it; // <- cap
1342
+ },
1246
1343
  // 19.1.2.15 / 15.2.3.10 Object.preventExtensions(O)
1247
- preventExtensions: $.it, // <- cap
1344
+ preventExtensions: function preventExtensions(it){
1345
+ return it; // <- cap
1346
+ },
1248
1347
  // 19.1.2.13 / 15.2.3.11 Object.isSealed(O)
1249
- isSealed: isPrimitive, // <- cap
1348
+ isSealed: function isSealed(it){
1349
+ return !isObject(it); // <- cap
1350
+ },
1250
1351
  // 19.1.2.12 / 15.2.3.12 Object.isFrozen(O)
1251
- isFrozen: isPrimitive, // <- cap
1352
+ isFrozen: function isFrozen(it){
1353
+ return !isObject(it); // <- cap
1354
+ },
1252
1355
  // 19.1.2.11 / 15.2.3.13 Object.isExtensible(O)
1253
- isExtensible: $.isObject // <- cap
1356
+ isExtensible: function isExtensible(it){
1357
+ return isObject(it); // <- cap
1358
+ }
1254
1359
  });
1255
1360
 
1256
1361
  // 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
@@ -1259,8 +1364,11 @@ $def($def.P, 'Function', {
1259
1364
  var fn = assert.fn(this)
1260
1365
  , partArgs = _slice.call(arguments, 1);
1261
1366
  function bound(/* args... */){
1262
- var args = partArgs.concat(_slice.call(arguments));
1263
- return invoke(fn, args, this instanceof bound ? $.create(fn.prototype) : that);
1367
+ var args = partArgs.concat(_slice.call(arguments))
1368
+ , constr = this instanceof bound
1369
+ , ctx = constr ? $.create(fn.prototype) : that
1370
+ , result = invoke(fn, args, ctx);
1371
+ return constr ? ctx : result;
1264
1372
  }
1265
1373
  if(fn.prototype)bound.prototype = fn.prototype;
1266
1374
  return bound;
@@ -1406,7 +1514,7 @@ if(classof(function(){ return arguments; }()) == 'Object')cof.classof = function
1406
1514
  var tag = classof(it);
1407
1515
  return tag == 'Object' && isFunction(it.callee) ? 'Arguments' : tag;
1408
1516
  };
1409
- },{"./$":22,"./$.array-includes":2,"./$.array-methods":3,"./$.assert":4,"./$.cof":6,"./$.def":12,"./$.dom-create":13,"./$.invoke":17,"./$.replacer":28,"./$.throws":35,"./$.uid":36}],40:[function(require,module,exports){
1517
+ },{"./$":24,"./$.array-includes":3,"./$.array-methods":4,"./$.assert":5,"./$.cof":7,"./$.def":13,"./$.dom-create":14,"./$.invoke":19,"./$.replacer":30,"./$.throws":39,"./$.uid":40}],44:[function(require,module,exports){
1410
1518
  'use strict';
1411
1519
  var $ = require('./$')
1412
1520
  , $def = require('./$.def')
@@ -1436,7 +1544,7 @@ $def($def.P, 'Array', {
1436
1544
  }
1437
1545
  });
1438
1546
  require('./$.unscope')('copyWithin');
1439
- },{"./$":22,"./$.def":12,"./$.unscope":37}],41:[function(require,module,exports){
1547
+ },{"./$":24,"./$.def":13,"./$.unscope":41}],45:[function(require,module,exports){
1440
1548
  'use strict';
1441
1549
  var $ = require('./$')
1442
1550
  , $def = require('./$.def')
@@ -1454,7 +1562,7 @@ $def($def.P, 'Array', {
1454
1562
  }
1455
1563
  });
1456
1564
  require('./$.unscope')('fill');
1457
- },{"./$":22,"./$.def":12,"./$.unscope":37}],42:[function(require,module,exports){
1565
+ },{"./$":24,"./$.def":13,"./$.unscope":41}],46:[function(require,module,exports){
1458
1566
  'use strict';
1459
1567
  // 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
1460
1568
  var KEY = 'findIndex'
@@ -1469,7 +1577,7 @@ $def($def.P + $def.F * forced, 'Array', {
1469
1577
  }
1470
1578
  });
1471
1579
  require('./$.unscope')(KEY);
1472
- },{"./$.array-methods":3,"./$.def":12,"./$.unscope":37}],43:[function(require,module,exports){
1580
+ },{"./$.array-methods":4,"./$.def":13,"./$.unscope":41}],47:[function(require,module,exports){
1473
1581
  'use strict';
1474
1582
  // 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
1475
1583
  var KEY = 'find'
@@ -1484,7 +1592,7 @@ $def($def.P + $def.F * forced, 'Array', {
1484
1592
  }
1485
1593
  });
1486
1594
  require('./$.unscope')(KEY);
1487
- },{"./$.array-methods":3,"./$.def":12,"./$.unscope":37}],44:[function(require,module,exports){
1595
+ },{"./$.array-methods":4,"./$.def":13,"./$.unscope":41}],48:[function(require,module,exports){
1488
1596
  var $ = require('./$')
1489
1597
  , ctx = require('./$.ctx')
1490
1598
  , $def = require('./$.def')
@@ -1517,7 +1625,7 @@ $def($def.S + $def.F * !require('./$.iter-detect')(function(iter){ Array.from(it
1517
1625
  return result;
1518
1626
  }
1519
1627
  });
1520
- },{"./$":22,"./$.ctx":11,"./$.def":12,"./$.iter":21,"./$.iter-call":18,"./$.iter-detect":20}],45:[function(require,module,exports){
1628
+ },{"./$":24,"./$.ctx":12,"./$.def":13,"./$.iter":23,"./$.iter-call":20,"./$.iter-detect":22}],49:[function(require,module,exports){
1521
1629
  var $ = require('./$')
1522
1630
  , setUnscope = require('./$.unscope')
1523
1631
  , ITER = require('./$.uid').safe('iter')
@@ -1552,7 +1660,7 @@ Iterators.Arguments = Iterators.Array;
1552
1660
  setUnscope('keys');
1553
1661
  setUnscope('values');
1554
1662
  setUnscope('entries');
1555
- },{"./$":22,"./$.iter":21,"./$.iter-define":19,"./$.uid":36,"./$.unscope":37}],46:[function(require,module,exports){
1663
+ },{"./$":24,"./$.iter":23,"./$.iter-define":21,"./$.uid":40,"./$.unscope":41}],50:[function(require,module,exports){
1556
1664
  var $def = require('./$.def');
1557
1665
  $def($def.S, 'Array', {
1558
1666
  // 22.1.2.3 Array.of( ...items)
@@ -1566,9 +1674,9 @@ $def($def.S, 'Array', {
1566
1674
  return result;
1567
1675
  }
1568
1676
  });
1569
- },{"./$.def":12}],47:[function(require,module,exports){
1677
+ },{"./$.def":13}],51:[function(require,module,exports){
1570
1678
  require('./$.species')(Array);
1571
- },{"./$.species":30}],48:[function(require,module,exports){
1679
+ },{"./$.species":34}],52:[function(require,module,exports){
1572
1680
  var $ = require('./$')
1573
1681
  , HAS_INSTANCE = require('./$.wks')('hasInstance')
1574
1682
  , FunctionProto = Function.prototype;
@@ -1580,7 +1688,7 @@ if(!(HAS_INSTANCE in FunctionProto))$.setDesc(FunctionProto, HAS_INSTANCE, {valu
1580
1688
  while(O = $.getProto(O))if(this.prototype === O)return true;
1581
1689
  return false;
1582
1690
  }});
1583
- },{"./$":22,"./$.wks":38}],49:[function(require,module,exports){
1691
+ },{"./$":24,"./$.wks":42}],53:[function(require,module,exports){
1584
1692
  'use strict';
1585
1693
  var $ = require('./$')
1586
1694
  , NAME = 'name'
@@ -1599,12 +1707,14 @@ NAME in FunctionProto || $.FW && $.DESC && setDesc(FunctionProto, NAME, {
1599
1707
  $.has(this, NAME) || setDesc(this, NAME, $.desc(0, value));
1600
1708
  }
1601
1709
  });
1602
- },{"./$":22}],50:[function(require,module,exports){
1710
+ },{"./$":24}],54:[function(require,module,exports){
1603
1711
  'use strict';
1604
1712
  var strong = require('./$.collection-strong');
1605
1713
 
1606
1714
  // 23.1 Map Objects
1607
- require('./$.collection')('Map', {
1715
+ require('./$.collection')('Map', function(get){
1716
+ return function Map(){ return get(this, arguments[0]); };
1717
+ }, {
1608
1718
  // 23.1.3.6 Map.prototype.get(key)
1609
1719
  get: function get(key){
1610
1720
  var entry = strong.getEntry(this, key);
@@ -1615,7 +1725,7 @@ require('./$.collection')('Map', {
1615
1725
  return strong.def(this, key === 0 ? 0 : key, value);
1616
1726
  }
1617
1727
  }, strong, true);
1618
- },{"./$.collection":10,"./$.collection-strong":7}],51:[function(require,module,exports){
1728
+ },{"./$.collection":11,"./$.collection-strong":8}],55:[function(require,module,exports){
1619
1729
  var Infinity = 1 / 0
1620
1730
  , $def = require('./$.def')
1621
1731
  , E = Math.E
@@ -1688,17 +1798,20 @@ $def($def.S, 'Math', {
1688
1798
  var sum = 0
1689
1799
  , i = 0
1690
1800
  , len = arguments.length
1691
- , args = Array(len)
1692
1801
  , larg = 0
1693
- , arg;
1802
+ , arg, div;
1694
1803
  while(i < len){
1695
- arg = args[i] = abs(arguments[i++]);
1696
- if(arg == Infinity)return Infinity;
1697
- if(arg > larg)larg = arg;
1804
+ arg = abs(arguments[i++]);
1805
+ if(larg < arg){
1806
+ div = larg / arg;
1807
+ sum = sum * div * div + 1;
1808
+ larg = arg;
1809
+ } else if(arg > 0){
1810
+ div = arg / larg;
1811
+ sum += div * div;
1812
+ } else sum += arg;
1698
1813
  }
1699
- larg = larg || 1;
1700
- while(len--)sum += pow(args[len] / larg, 2);
1701
- return larg * sqrt(sum);
1814
+ return larg === Infinity ? Infinity : larg * sqrt(sum);
1702
1815
  },
1703
1816
  // 20.2.2.18 Math.imul(x, y)
1704
1817
  imul: function imul(x, y){
@@ -1738,7 +1851,7 @@ $def($def.S, 'Math', {
1738
1851
  return (it > 0 ? floor : ceil)(it);
1739
1852
  }
1740
1853
  });
1741
- },{"./$.def":12}],52:[function(require,module,exports){
1854
+ },{"./$.def":13}],56:[function(require,module,exports){
1742
1855
  'use strict';
1743
1856
  var $ = require('./$')
1744
1857
  , isObject = $.isObject
@@ -1783,7 +1896,7 @@ if($.FW && !($Number('0o1') && $Number('0b1'))){
1783
1896
  proto.constructor = $Number;
1784
1897
  require('./$.redef')($.g, NUMBER, $Number);
1785
1898
  }
1786
- },{"./$":22,"./$.redef":27}],53:[function(require,module,exports){
1899
+ },{"./$":24,"./$.redef":29}],57:[function(require,module,exports){
1787
1900
  var $ = require('./$')
1788
1901
  , $def = require('./$.def')
1789
1902
  , abs = Math.abs
@@ -1819,23 +1932,21 @@ $def($def.S, 'Number', {
1819
1932
  // 20.1.2.13 Number.parseInt(string, radix)
1820
1933
  parseInt: parseInt
1821
1934
  });
1822
- },{"./$":22,"./$.def":12}],54:[function(require,module,exports){
1935
+ },{"./$":24,"./$.def":13}],58:[function(require,module,exports){
1823
1936
  // 19.1.3.1 Object.assign(target, source)
1824
1937
  var $def = require('./$.def');
1825
1938
  $def($def.S, 'Object', {assign: require('./$.assign')});
1826
- },{"./$.assign":5,"./$.def":12}],55:[function(require,module,exports){
1939
+ },{"./$.assign":6,"./$.def":13}],59:[function(require,module,exports){
1827
1940
  // 19.1.3.10 Object.is(value1, value2)
1828
1941
  var $def = require('./$.def');
1829
1942
  $def($def.S, 'Object', {
1830
- is: function is(x, y){
1831
- return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
1832
- }
1943
+ is: require('./$.same')
1833
1944
  });
1834
- },{"./$.def":12}],56:[function(require,module,exports){
1945
+ },{"./$.def":13,"./$.same":31}],60:[function(require,module,exports){
1835
1946
  // 19.1.3.19 Object.setPrototypeOf(O, proto)
1836
1947
  var $def = require('./$.def');
1837
1948
  $def($def.S, 'Object', {setPrototypeOf: require('./$.set-proto').set});
1838
- },{"./$.def":12,"./$.set-proto":29}],57:[function(require,module,exports){
1949
+ },{"./$.def":13,"./$.set-proto":32}],61:[function(require,module,exports){
1839
1950
  var $ = require('./$')
1840
1951
  , $def = require('./$.def')
1841
1952
  , isObject = $.isObject
@@ -1864,9 +1975,7 @@ $.each.call(('freeze,seal,preventExtensions,isFrozen,isSealed,isExtensible,' +
1864
1975
  return fn(Object($.assertDefined(it)));
1865
1976
  } : ID == 8 ? function keys(it){
1866
1977
  return fn(toObject(it));
1867
- } : function getOwnPropertyNames(it){
1868
- return fn(toObject(it));
1869
- };
1978
+ } : require('./$.get-names').get;
1870
1979
  try {
1871
1980
  fn('z');
1872
1981
  } catch(e){
@@ -1874,7 +1983,7 @@ $.each.call(('freeze,seal,preventExtensions,isFrozen,isSealed,isExtensible,' +
1874
1983
  }
1875
1984
  $def($def.S + $def.F * forced, 'Object', method);
1876
1985
  });
1877
- },{"./$":22,"./$.def":12}],58:[function(require,module,exports){
1986
+ },{"./$":24,"./$.def":13,"./$.get-names":18}],62:[function(require,module,exports){
1878
1987
  'use strict';
1879
1988
  // 19.1.3.6 Object.prototype.toString()
1880
1989
  var cof = require('./$.cof')
@@ -1885,7 +1994,7 @@ if(require('./$').FW && cof(tmp) != 'z'){
1885
1994
  return '[object ' + cof.classof(this) + ']';
1886
1995
  }, true);
1887
1996
  }
1888
- },{"./$":22,"./$.cof":6,"./$.redef":27,"./$.wks":38}],59:[function(require,module,exports){
1997
+ },{"./$":24,"./$.cof":7,"./$.redef":29,"./$.wks":42}],63:[function(require,module,exports){
1889
1998
  'use strict';
1890
1999
  var $ = require('./$')
1891
2000
  , ctx = require('./$.ctx')
@@ -1894,39 +2003,64 @@ var $ = require('./$')
1894
2003
  , assert = require('./$.assert')
1895
2004
  , forOf = require('./$.for-of')
1896
2005
  , setProto = require('./$.set-proto').set
2006
+ , same = require('./$.same')
1897
2007
  , species = require('./$.species')
1898
2008
  , SPECIES = require('./$.wks')('species')
1899
2009
  , RECORD = require('./$.uid').safe('record')
1900
2010
  , PROMISE = 'Promise'
1901
2011
  , global = $.g
1902
2012
  , process = global.process
2013
+ , isNode = cof(process) == 'process'
1903
2014
  , asap = process && process.nextTick || require('./$.task').set
1904
2015
  , P = global[PROMISE]
1905
2016
  , isFunction = $.isFunction
1906
2017
  , isObject = $.isObject
1907
2018
  , assertFunction = assert.fn
1908
- , assertObject = assert.obj;
2019
+ , assertObject = assert.obj
2020
+ , Wrapper;
2021
+
2022
+ function testResolve(sub){
2023
+ var test = new P(function(){});
2024
+ if(sub)test.constructor = Object;
2025
+ return P.resolve(test) === test;
2026
+ }
1909
2027
 
1910
2028
  var useNative = function(){
1911
- var test, works = false;
2029
+ var works = false;
1912
2030
  function P2(x){
1913
2031
  var self = new P(x);
1914
2032
  setProto(self, P2.prototype);
1915
2033
  return self;
1916
2034
  }
1917
2035
  try {
1918
- works = isFunction(P) && isFunction(P.resolve) && P.resolve(test = new P(function(){})) == test;
2036
+ works = isFunction(P) && isFunction(P.resolve) && testResolve();
1919
2037
  setProto(P2, P);
1920
2038
  P2.prototype = $.create(P.prototype, {constructor: {value: P2}});
1921
2039
  // actual Firefox has broken subclass support, test that
1922
2040
  if(!(P2.resolve(5).then(function(){}) instanceof P2)){
1923
2041
  works = false;
1924
2042
  }
2043
+ // actual V8 bug, https://code.google.com/p/v8/issues/detail?id=4162
2044
+ if(works && $.DESC){
2045
+ var thenableThenGotten = false;
2046
+ P.resolve($.setDesc({}, 'then', {
2047
+ get: function(){ thenableThenGotten = true; }
2048
+ }));
2049
+ works = thenableThenGotten;
2050
+ }
1925
2051
  } catch(e){ works = false; }
1926
2052
  return works;
1927
2053
  }();
1928
2054
 
1929
2055
  // helpers
2056
+ function isPromise(it){
2057
+ return isObject(it) && (useNative ? cof.classof(it) == 'Promise' : RECORD in it);
2058
+ }
2059
+ function sameConstructor(a, b){
2060
+ // library wrapper special case
2061
+ if(!$.FW && a === P && b === Wrapper)return true;
2062
+ return same(a, b);
2063
+ }
1930
2064
  function getConstructor(C){
1931
2065
  var S = assertObject(C)[SPECIES];
1932
2066
  return S != undefined ? S : C;
@@ -1938,7 +2072,8 @@ function isThenable(it){
1938
2072
  }
1939
2073
  function notify(record){
1940
2074
  var chain = record.c;
1941
- if(chain.length)asap(function(){
2075
+ // strange IE + webpack dev server bug - use .call(global)
2076
+ if(chain.length)asap.call(global, function(){
1942
2077
  var value = record.v
1943
2078
  , ok = record.s == 1
1944
2079
  , i = 0;
@@ -1984,11 +2119,12 @@ function $reject(value){
1984
2119
  record.s = 2;
1985
2120
  record.a = record.c.slice();
1986
2121
  setTimeout(function(){
1987
- asap(function(){
2122
+ // strange IE + webpack dev server bug - use .call(global)
2123
+ asap.call(global, function(){
1988
2124
  if(isUnhandled(promise = record.p)){
1989
- if(cof(process) == 'process'){
2125
+ if(isNode){
1990
2126
  process.emit('unhandledRejection', value, promise);
1991
- } else if(global.console && isFunction(console.error)){
2127
+ } else if(global.console && console.error){
1992
2128
  console.error('Unhandled promise rejection', value);
1993
2129
  }
1994
2130
  }
@@ -1999,21 +2135,28 @@ function $reject(value){
1999
2135
  }
2000
2136
  function $resolve(value){
2001
2137
  var record = this
2002
- , then, wrapper;
2138
+ , then;
2003
2139
  if(record.d)return;
2004
2140
  record.d = true;
2005
2141
  record = record.r || record; // unwrap
2006
2142
  try {
2007
2143
  if(then = isThenable(value)){
2008
- wrapper = {r: record, d: false}; // wrap
2009
- then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
2144
+ // strange IE + webpack dev server bug - use .call(global)
2145
+ asap.call(global, function(){
2146
+ var wrapper = {r: record, d: false}; // wrap
2147
+ try {
2148
+ then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
2149
+ } catch(e){
2150
+ $reject.call(wrapper, e);
2151
+ }
2152
+ });
2010
2153
  } else {
2011
2154
  record.v = value;
2012
2155
  record.s = 1;
2013
2156
  notify(record);
2014
2157
  }
2015
- } catch(err){
2016
- $reject.call(wrapper || {r: record, d: false}, err); // wrap
2158
+ } catch(e){
2159
+ $reject.call({r: record, d: false}, e); // wrap
2017
2160
  }
2018
2161
  }
2019
2162
 
@@ -2053,7 +2196,7 @@ if(!useNative){
2053
2196
  var record = this[RECORD];
2054
2197
  record.c.push(react);
2055
2198
  if(record.a)record.a.push(react);
2056
- record.s && notify(record);
2199
+ if(record.s)notify(record);
2057
2200
  return promise;
2058
2201
  },
2059
2202
  // 25.4.5.1 Promise.prototype.catch(onRejected)
@@ -2067,22 +2210,20 @@ if(!useNative){
2067
2210
  $def($def.G + $def.W + $def.F * !useNative, {Promise: P});
2068
2211
  cof.set(P, PROMISE);
2069
2212
  species(P);
2070
- species($.core[PROMISE]); // for wrapper
2213
+ species(Wrapper = $.core[PROMISE]);
2071
2214
 
2072
2215
  // statics
2073
2216
  $def($def.S + $def.F * !useNative, PROMISE, {
2074
2217
  // 25.4.4.5 Promise.reject(r)
2075
2218
  reject: function reject(r){
2076
- return new (getConstructor(this))(function(res, rej){
2077
- rej(r);
2078
- });
2079
- },
2219
+ return new (getConstructor(this))(function(res, rej){ rej(r); });
2220
+ }
2221
+ });
2222
+ $def($def.S + $def.F * (!useNative || testResolve(true)), PROMISE, {
2080
2223
  // 25.4.4.6 Promise.resolve(x)
2081
2224
  resolve: function resolve(x){
2082
- return isObject(x) && RECORD in x && $.getProto(x) === this.prototype
2083
- ? x : new (getConstructor(this))(function(res){
2084
- res(x);
2085
- });
2225
+ return isPromise(x) && sameConstructor(x.constructor, this)
2226
+ ? x : new this(function(res){ res(x); });
2086
2227
  }
2087
2228
  });
2088
2229
  $def($def.S + $def.F * !(useNative && require('./$.iter-detect')(function(iter){
@@ -2115,7 +2256,7 @@ $def($def.S + $def.F * !(useNative && require('./$.iter-detect')(function(iter){
2115
2256
  });
2116
2257
  }
2117
2258
  });
2118
- },{"./$":22,"./$.assert":4,"./$.cof":6,"./$.ctx":11,"./$.def":12,"./$.for-of":15,"./$.iter-detect":20,"./$.mix":24,"./$.set-proto":29,"./$.species":30,"./$.task":34,"./$.uid":36,"./$.wks":38}],60:[function(require,module,exports){
2259
+ },{"./$":24,"./$.assert":5,"./$.cof":7,"./$.ctx":12,"./$.def":13,"./$.for-of":16,"./$.iter-detect":22,"./$.mix":26,"./$.same":31,"./$.set-proto":32,"./$.species":34,"./$.task":38,"./$.uid":40,"./$.wks":42}],64:[function(require,module,exports){
2119
2260
  var $ = require('./$')
2120
2261
  , $def = require('./$.def')
2121
2262
  , setProto = require('./$.set-proto')
@@ -2129,8 +2270,8 @@ var $ = require('./$')
2129
2270
  , $Reflect = $.g.Reflect
2130
2271
  , _apply = Function.apply
2131
2272
  , assertObject = assert.obj
2132
- , _isExtensible = Object.isExtensible || $.isObject
2133
- , _preventExtensions = Object.preventExtensions || $.it
2273
+ , _isExtensible = Object.isExtensible || isObject
2274
+ , _preventExtensions = Object.preventExtensions
2134
2275
  // IE TP has broken Reflect.enumerate
2135
2276
  , buggyEnumerate = !($Reflect && $Reflect.enumerate && ITERATOR in $Reflect.enumerate({}));
2136
2277
 
@@ -2213,7 +2354,7 @@ var reflect = {
2213
2354
  preventExtensions: function preventExtensions(target){
2214
2355
  assertObject(target);
2215
2356
  try {
2216
- _preventExtensions(target);
2357
+ if(_preventExtensions)_preventExtensions(target);
2217
2358
  return true;
2218
2359
  } catch(e){
2219
2360
  return false;
@@ -2261,7 +2402,7 @@ $def($def.S + $def.F * buggyEnumerate, 'Reflect', {
2261
2402
  });
2262
2403
 
2263
2404
  $def($def.S, 'Reflect', reflect);
2264
- },{"./$":22,"./$.assert":4,"./$.def":12,"./$.iter":21,"./$.own-keys":25,"./$.set-proto":29,"./$.uid":36,"./$.wks":38}],61:[function(require,module,exports){
2405
+ },{"./$":24,"./$.assert":5,"./$.def":13,"./$.iter":23,"./$.own-keys":27,"./$.set-proto":32,"./$.uid":40,"./$.wks":42}],65:[function(require,module,exports){
2265
2406
  var $ = require('./$')
2266
2407
  , cof = require('./$.cof')
2267
2408
  , $RegExp = $.g.RegExp
@@ -2305,18 +2446,20 @@ if($.FW && $.DESC){
2305
2446
  });
2306
2447
  }
2307
2448
  require('./$.species')($RegExp);
2308
- },{"./$":22,"./$.cof":6,"./$.redef":27,"./$.replacer":28,"./$.species":30}],62:[function(require,module,exports){
2449
+ },{"./$":24,"./$.cof":7,"./$.redef":29,"./$.replacer":30,"./$.species":34}],66:[function(require,module,exports){
2309
2450
  'use strict';
2310
2451
  var strong = require('./$.collection-strong');
2311
2452
 
2312
2453
  // 23.2 Set Objects
2313
- require('./$.collection')('Set', {
2454
+ require('./$.collection')('Set', function(get){
2455
+ return function Set(){ return get(this, arguments[0]); };
2456
+ }, {
2314
2457
  // 23.2.3.1 Set.prototype.add(value)
2315
2458
  add: function add(value){
2316
2459
  return strong.def(this, value = value === 0 ? 0 : value, value);
2317
2460
  }
2318
2461
  }, strong);
2319
- },{"./$.collection":10,"./$.collection-strong":7}],63:[function(require,module,exports){
2462
+ },{"./$.collection":11,"./$.collection-strong":8}],67:[function(require,module,exports){
2320
2463
  'use strict';
2321
2464
  var $def = require('./$.def')
2322
2465
  , $at = require('./$.string-at')(false);
@@ -2326,7 +2469,7 @@ $def($def.P, 'String', {
2326
2469
  return $at(this, pos);
2327
2470
  }
2328
2471
  });
2329
- },{"./$.def":12,"./$.string-at":31}],64:[function(require,module,exports){
2472
+ },{"./$.def":13,"./$.string-at":35}],68:[function(require,module,exports){
2330
2473
  'use strict';
2331
2474
  var $ = require('./$')
2332
2475
  , cof = require('./$.cof')
@@ -2346,7 +2489,7 @@ $def($def.P + $def.F * !require('./$.throws')(function(){ 'q'.endsWith(/./); }),
2346
2489
  return that.slice(end - searchString.length, end) === searchString;
2347
2490
  }
2348
2491
  });
2349
- },{"./$":22,"./$.cof":6,"./$.def":12,"./$.throws":35}],65:[function(require,module,exports){
2492
+ },{"./$":24,"./$.cof":7,"./$.def":13,"./$.throws":39}],69:[function(require,module,exports){
2350
2493
  var $def = require('./$.def')
2351
2494
  , toIndex = require('./$').toIndex
2352
2495
  , fromCharCode = String.fromCharCode
@@ -2370,7 +2513,7 @@ $def($def.S + $def.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String
2370
2513
  } return res.join('');
2371
2514
  }
2372
2515
  });
2373
- },{"./$":22,"./$.def":12}],66:[function(require,module,exports){
2516
+ },{"./$":24,"./$.def":13}],70:[function(require,module,exports){
2374
2517
  'use strict';
2375
2518
  var $ = require('./$')
2376
2519
  , cof = require('./$.cof')
@@ -2383,7 +2526,7 @@ $def($def.P, 'String', {
2383
2526
  return !!~String($.assertDefined(this)).indexOf(searchString, arguments[1]);
2384
2527
  }
2385
2528
  });
2386
- },{"./$":22,"./$.cof":6,"./$.def":12}],67:[function(require,module,exports){
2529
+ },{"./$":24,"./$.cof":7,"./$.def":13}],71:[function(require,module,exports){
2387
2530
  var set = require('./$').set
2388
2531
  , $at = require('./$.string-at')(true)
2389
2532
  , ITER = require('./$.uid').safe('iter')
@@ -2404,7 +2547,7 @@ require('./$.iter-define')(String, 'String', function(iterated){
2404
2547
  iter.i += point.length;
2405
2548
  return step(0, point);
2406
2549
  });
2407
- },{"./$":22,"./$.iter":21,"./$.iter-define":19,"./$.string-at":31,"./$.uid":36}],68:[function(require,module,exports){
2550
+ },{"./$":24,"./$.iter":23,"./$.iter-define":21,"./$.string-at":35,"./$.uid":40}],72:[function(require,module,exports){
2408
2551
  var $ = require('./$')
2409
2552
  , $def = require('./$.def');
2410
2553
 
@@ -2422,14 +2565,14 @@ $def($def.S, 'String', {
2422
2565
  } return res.join('');
2423
2566
  }
2424
2567
  });
2425
- },{"./$":22,"./$.def":12}],69:[function(require,module,exports){
2568
+ },{"./$":24,"./$.def":13}],73:[function(require,module,exports){
2426
2569
  var $def = require('./$.def');
2427
2570
 
2428
2571
  $def($def.P, 'String', {
2429
2572
  // 21.1.3.13 String.prototype.repeat(count)
2430
2573
  repeat: require('./$.string-repeat')
2431
2574
  });
2432
- },{"./$.def":12,"./$.string-repeat":33}],70:[function(require,module,exports){
2575
+ },{"./$.def":13,"./$.string-repeat":37}],74:[function(require,module,exports){
2433
2576
  'use strict';
2434
2577
  var $ = require('./$')
2435
2578
  , cof = require('./$.cof')
@@ -2446,40 +2589,61 @@ $def($def.P + $def.F * !require('./$.throws')(function(){ 'q'.startsWith(/./); }
2446
2589
  return that.slice(index, index + searchString.length) === searchString;
2447
2590
  }
2448
2591
  });
2449
- },{"./$":22,"./$.cof":6,"./$.def":12,"./$.throws":35}],71:[function(require,module,exports){
2592
+ },{"./$":24,"./$.cof":7,"./$.def":13,"./$.throws":39}],75:[function(require,module,exports){
2450
2593
  'use strict';
2451
2594
  // ECMAScript 6 symbols shim
2452
2595
  var $ = require('./$')
2453
2596
  , setTag = require('./$.cof').set
2454
2597
  , uid = require('./$.uid')
2598
+ , shared = require('./$.shared')
2455
2599
  , $def = require('./$.def')
2456
2600
  , $redef = require('./$.redef')
2457
2601
  , keyOf = require('./$.keyof')
2458
2602
  , enumKeys = require('./$.enum-keys')
2459
2603
  , assertObject = require('./$.assert').obj
2604
+ , ObjectProto = Object.prototype
2605
+ , DESC = $.DESC
2460
2606
  , has = $.has
2461
2607
  , $create = $.create
2462
2608
  , getDesc = $.getDesc
2463
2609
  , setDesc = $.setDesc
2464
2610
  , desc = $.desc
2465
- , getNames = $.getNames
2611
+ , $names = require('./$.get-names')
2612
+ , getNames = $names.get
2466
2613
  , toObject = $.toObject
2467
2614
  , $Symbol = $.g.Symbol
2468
2615
  , setter = false
2469
2616
  , TAG = uid('tag')
2470
2617
  , HIDDEN = uid('hidden')
2471
2618
  , _propertyIsEnumerable = {}.propertyIsEnumerable
2472
- , SymbolRegistry = {}
2473
- , AllSymbols = {}
2619
+ , SymbolRegistry = shared('symbol-registry')
2620
+ , AllSymbols = shared('symbols')
2474
2621
  , useNative = $.isFunction($Symbol);
2475
2622
 
2623
+ var setSymbolDesc = DESC ? function(){ // fallback for old Android
2624
+ try {
2625
+ return $create(setDesc({}, HIDDEN, {
2626
+ get: function(){
2627
+ return setDesc(this, HIDDEN, {value: false})[HIDDEN];
2628
+ }
2629
+ }))[HIDDEN] || setDesc;
2630
+ } catch(e){
2631
+ return function(it, key, D){
2632
+ var protoDesc = getDesc(ObjectProto, key);
2633
+ if(protoDesc)delete ObjectProto[key];
2634
+ setDesc(it, key, D);
2635
+ if(protoDesc && it !== ObjectProto)setDesc(ObjectProto, key, protoDesc);
2636
+ };
2637
+ }
2638
+ }() : setDesc;
2639
+
2476
2640
  function wrap(tag){
2477
2641
  var sym = AllSymbols[tag] = $.set($create($Symbol.prototype), TAG, tag);
2478
- $.DESC && setter && setDesc(Object.prototype, tag, {
2642
+ DESC && setter && setSymbolDesc(ObjectProto, tag, {
2479
2643
  configurable: true,
2480
2644
  set: function(value){
2481
2645
  if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
2482
- setDesc(this, tag, desc(1, value));
2646
+ setSymbolDesc(this, tag, desc(1, value));
2483
2647
  }
2484
2648
  });
2485
2649
  return sym;
@@ -2493,7 +2657,7 @@ function defineProperty(it, key, D){
2493
2657
  } else {
2494
2658
  if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
2495
2659
  D = $create(D, {enumerable: desc(0, false)});
2496
- }
2660
+ } return setSymbolDesc(it, key, D);
2497
2661
  } return setDesc(it, key, D);
2498
2662
  }
2499
2663
  function defineProperties(it, P){
@@ -2549,10 +2713,10 @@ if(!useNative){
2549
2713
  $.setDesc = defineProperty;
2550
2714
  $.getDesc = getOwnPropertyDescriptor;
2551
2715
  $.setDescs = defineProperties;
2552
- $.getNames = getOwnPropertyNames;
2716
+ $.getNames = $names.get = getOwnPropertyNames;
2553
2717
  $.getSymbols = getOwnPropertySymbols;
2554
2718
 
2555
- if($.DESC && $.FW)$redef(Object.prototype, 'propertyIsEnumerable', propertyIsEnumerable, true);
2719
+ if($.DESC && $.FW)$redef(ObjectProto, 'propertyIsEnumerable', propertyIsEnumerable, true);
2556
2720
  }
2557
2721
 
2558
2722
  var symbolStatics = {
@@ -2616,7 +2780,7 @@ setTag($Symbol, 'Symbol');
2616
2780
  setTag(Math, 'Math', true);
2617
2781
  // 24.3.3 JSON[@@toStringTag]
2618
2782
  setTag($.g.JSON, 'JSON', true);
2619
- },{"./$":22,"./$.assert":4,"./$.cof":6,"./$.def":12,"./$.enum-keys":14,"./$.keyof":23,"./$.redef":27,"./$.uid":36,"./$.wks":38}],72:[function(require,module,exports){
2783
+ },{"./$":24,"./$.assert":5,"./$.cof":7,"./$.def":13,"./$.enum-keys":15,"./$.get-names":18,"./$.keyof":25,"./$.redef":29,"./$.shared":33,"./$.uid":40,"./$.wks":42}],76:[function(require,module,exports){
2620
2784
  'use strict';
2621
2785
  var $ = require('./$')
2622
2786
  , weak = require('./$.collection-weak')
@@ -2629,7 +2793,9 @@ var $ = require('./$')
2629
2793
  , tmp = {};
2630
2794
 
2631
2795
  // 23.3 WeakMap Objects
2632
- var WeakMap = require('./$.collection')('WeakMap', {
2796
+ var $WeakMap = require('./$.collection')('WeakMap', function(get){
2797
+ return function WeakMap(){ return get(this, arguments[0]); };
2798
+ }, {
2633
2799
  // 23.3.3.3 WeakMap.prototype.get(key)
2634
2800
  get: function get(key){
2635
2801
  if(isObject(key)){
@@ -2644,9 +2810,9 @@ var WeakMap = require('./$.collection')('WeakMap', {
2644
2810
  }, weak, true, true);
2645
2811
 
2646
2812
  // IE11 WeakMap frozen keys fix
2647
- if($.FW && new WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
2813
+ if(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
2648
2814
  $.each.call(['delete', 'has', 'get', 'set'], function(key){
2649
- var proto = WeakMap.prototype
2815
+ var proto = $WeakMap.prototype
2650
2816
  , method = proto[key];
2651
2817
  require('./$.redef')(proto, key, function(a, b){
2652
2818
  // store frozen objects on leaky map
@@ -2658,31 +2824,34 @@ if($.FW && new WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
2658
2824
  });
2659
2825
  });
2660
2826
  }
2661
- },{"./$":22,"./$.collection":10,"./$.collection-weak":9,"./$.redef":27}],73:[function(require,module,exports){
2827
+ },{"./$":24,"./$.collection":11,"./$.collection-weak":10,"./$.redef":29}],77:[function(require,module,exports){
2662
2828
  'use strict';
2663
2829
  var weak = require('./$.collection-weak');
2664
2830
 
2665
2831
  // 23.4 WeakSet Objects
2666
- require('./$.collection')('WeakSet', {
2832
+ require('./$.collection')('WeakSet', function(get){
2833
+ return function WeakSet(){ return get(this, arguments[0]); };
2834
+ }, {
2667
2835
  // 23.4.3.1 WeakSet.prototype.add(value)
2668
2836
  add: function add(value){
2669
2837
  return weak.def(this, value, true);
2670
2838
  }
2671
2839
  }, weak, false, true);
2672
- },{"./$.collection":10,"./$.collection-weak":9}],74:[function(require,module,exports){
2673
- // https://github.com/domenic/Array.prototype.includes
2840
+ },{"./$.collection":11,"./$.collection-weak":10}],78:[function(require,module,exports){
2841
+ 'use strict';
2674
2842
  var $def = require('./$.def')
2675
2843
  , $includes = require('./$.array-includes')(true);
2676
2844
  $def($def.P, 'Array', {
2845
+ // https://github.com/domenic/Array.prototype.includes
2677
2846
  includes: function includes(el /*, fromIndex = 0 */){
2678
2847
  return $includes(this, el, arguments[1]);
2679
2848
  }
2680
2849
  });
2681
2850
  require('./$.unscope')('includes');
2682
- },{"./$.array-includes":2,"./$.def":12,"./$.unscope":37}],75:[function(require,module,exports){
2851
+ },{"./$.array-includes":3,"./$.def":13,"./$.unscope":41}],79:[function(require,module,exports){
2683
2852
  // https://github.com/DavidBruant/Map-Set.prototype.toJSON
2684
2853
  require('./$.collection-to-json')('Map');
2685
- },{"./$.collection-to-json":8}],76:[function(require,module,exports){
2854
+ },{"./$.collection-to-json":9}],80:[function(require,module,exports){
2686
2855
  // https://gist.github.com/WebReflection/9353781
2687
2856
  var $ = require('./$')
2688
2857
  , $def = require('./$.def')
@@ -2698,7 +2867,7 @@ $def($def.S, 'Object', {
2698
2867
  return result;
2699
2868
  }
2700
2869
  });
2701
- },{"./$":22,"./$.def":12,"./$.own-keys":25}],77:[function(require,module,exports){
2870
+ },{"./$":24,"./$.def":13,"./$.own-keys":27}],81:[function(require,module,exports){
2702
2871
  // http://goo.gl/XkBrjD
2703
2872
  var $ = require('./$')
2704
2873
  , $def = require('./$.def');
@@ -2719,16 +2888,17 @@ $def($def.S, 'Object', {
2719
2888
  values: createObjectToArray(false),
2720
2889
  entries: createObjectToArray(true)
2721
2890
  });
2722
- },{"./$":22,"./$.def":12}],78:[function(require,module,exports){
2723
- // https://gist.github.com/kangax/9698100
2891
+ },{"./$":24,"./$.def":13}],82:[function(require,module,exports){
2892
+ // https://github.com/benjamingr/RexExp.escape
2724
2893
  var $def = require('./$.def');
2725
2894
  $def($def.S, 'RegExp', {
2726
- escape: require('./$.replacer')(/([\\\-[\]{}()*+?.,^$|])/g, '\\$1', true)
2895
+ escape: require('./$.replacer')(/[\\^$*+?.()|[\]{}]/g, '\\$&', true)
2727
2896
  });
2728
- },{"./$.def":12,"./$.replacer":28}],79:[function(require,module,exports){
2897
+
2898
+ },{"./$.def":13,"./$.replacer":30}],83:[function(require,module,exports){
2729
2899
  // https://github.com/DavidBruant/Map-Set.prototype.toJSON
2730
2900
  require('./$.collection-to-json')('Set');
2731
- },{"./$.collection-to-json":8}],80:[function(require,module,exports){
2901
+ },{"./$.collection-to-json":9}],84:[function(require,module,exports){
2732
2902
  // https://github.com/mathiasbynens/String.prototype.at
2733
2903
  'use strict';
2734
2904
  var $def = require('./$.def')
@@ -2738,7 +2908,7 @@ $def($def.P, 'String', {
2738
2908
  return $at(this, pos);
2739
2909
  }
2740
2910
  });
2741
- },{"./$.def":12,"./$.string-at":31}],81:[function(require,module,exports){
2911
+ },{"./$.def":13,"./$.string-at":35}],85:[function(require,module,exports){
2742
2912
  'use strict';
2743
2913
  var $def = require('./$.def')
2744
2914
  , $pad = require('./$.string-pad');
@@ -2747,7 +2917,7 @@ $def($def.P, 'String', {
2747
2917
  return $pad(this, n, arguments[1], true);
2748
2918
  }
2749
2919
  });
2750
- },{"./$.def":12,"./$.string-pad":32}],82:[function(require,module,exports){
2920
+ },{"./$.def":13,"./$.string-pad":36}],86:[function(require,module,exports){
2751
2921
  'use strict';
2752
2922
  var $def = require('./$.def')
2753
2923
  , $pad = require('./$.string-pad');
@@ -2756,7 +2926,7 @@ $def($def.P, 'String', {
2756
2926
  return $pad(this, n, arguments[1], false);
2757
2927
  }
2758
2928
  });
2759
- },{"./$.def":12,"./$.string-pad":32}],83:[function(require,module,exports){
2929
+ },{"./$.def":13,"./$.string-pad":36}],87:[function(require,module,exports){
2760
2930
  // JavaScript 1.6 / Strawman array statics shim
2761
2931
  var $ = require('./$')
2762
2932
  , $def = require('./$.def')
@@ -2773,25 +2943,29 @@ setStatics('indexOf,every,some,forEach,map,filter,find,findIndex,includes', 3);
2773
2943
  setStatics('join,slice,concat,push,splice,unshift,sort,lastIndexOf,' +
2774
2944
  'reduce,reduceRight,copyWithin,fill,turn');
2775
2945
  $def($def.S, 'Array', statics);
2776
- },{"./$":22,"./$.ctx":11,"./$.def":12}],84:[function(require,module,exports){
2946
+ },{"./$":24,"./$.ctx":12,"./$.def":13}],88:[function(require,module,exports){
2777
2947
  require('./es6.array.iterator');
2778
2948
  var $ = require('./$')
2779
2949
  , Iterators = require('./$.iter').Iterators
2780
2950
  , ITERATOR = require('./$.wks')('iterator')
2781
2951
  , ArrayValues = Iterators.Array
2782
- , NodeList = $.g.NodeList;
2783
- if($.FW && NodeList && !(ITERATOR in NodeList.prototype)){
2784
- $.hide(NodeList.prototype, ITERATOR, ArrayValues);
2952
+ , NL = $.g.NodeList
2953
+ , HTC = $.g.HTMLCollection
2954
+ , NLProto = NL && NL.prototype
2955
+ , HTCProto = HTC && HTC.prototype;
2956
+ if($.FW){
2957
+ if(NL && !(ITERATOR in NLProto))$.hide(NLProto, ITERATOR, ArrayValues);
2958
+ if(HTC && !(ITERATOR in HTCProto))$.hide(HTCProto, ITERATOR, ArrayValues);
2785
2959
  }
2786
- Iterators.NodeList = ArrayValues;
2787
- },{"./$":22,"./$.iter":21,"./$.wks":38,"./es6.array.iterator":45}],85:[function(require,module,exports){
2960
+ Iterators.NodeList = Iterators.HTMLCollection = ArrayValues;
2961
+ },{"./$":24,"./$.iter":23,"./$.wks":42,"./es6.array.iterator":49}],89:[function(require,module,exports){
2788
2962
  var $def = require('./$.def')
2789
2963
  , $task = require('./$.task');
2790
2964
  $def($def.G + $def.B, {
2791
2965
  setImmediate: $task.set,
2792
2966
  clearImmediate: $task.clear
2793
2967
  });
2794
- },{"./$.def":12,"./$.task":34}],86:[function(require,module,exports){
2968
+ },{"./$.def":13,"./$.task":38}],90:[function(require,module,exports){
2795
2969
  // ie9- setTimeout & setInterval additional parameters fix
2796
2970
  var $ = require('./$')
2797
2971
  , $def = require('./$.def')
@@ -2812,7 +2986,7 @@ $def($def.G + $def.B + $def.F * MSIE, {
2812
2986
  setTimeout: wrap($.g.setTimeout),
2813
2987
  setInterval: wrap($.g.setInterval)
2814
2988
  });
2815
- },{"./$":22,"./$.def":12,"./$.invoke":17,"./$.partial":26}],87:[function(require,module,exports){
2989
+ },{"./$":24,"./$.def":13,"./$.invoke":19,"./$.partial":28}],91:[function(require,module,exports){
2816
2990
  require('./modules/es5');
2817
2991
  require('./modules/es6.symbol');
2818
2992
  require('./modules/es6.object.assign');
@@ -2863,8 +3037,8 @@ require('./modules/web.immediate');
2863
3037
  require('./modules/web.dom.iterable');
2864
3038
  module.exports = require('./modules/$').core;
2865
3039
 
2866
- },{"./modules/$":22,"./modules/es5":39,"./modules/es6.array.copy-within":40,"./modules/es6.array.fill":41,"./modules/es6.array.find":43,"./modules/es6.array.find-index":42,"./modules/es6.array.from":44,"./modules/es6.array.iterator":45,"./modules/es6.array.of":46,"./modules/es6.array.species":47,"./modules/es6.function.has-instance":48,"./modules/es6.function.name":49,"./modules/es6.map":50,"./modules/es6.math":51,"./modules/es6.number.constructor":52,"./modules/es6.number.statics":53,"./modules/es6.object.assign":54,"./modules/es6.object.is":55,"./modules/es6.object.set-prototype-of":56,"./modules/es6.object.statics-accept-primitives":57,"./modules/es6.object.to-string":58,"./modules/es6.promise":59,"./modules/es6.reflect":60,"./modules/es6.regexp":61,"./modules/es6.set":62,"./modules/es6.string.code-point-at":63,"./modules/es6.string.ends-with":64,"./modules/es6.string.from-code-point":65,"./modules/es6.string.includes":66,"./modules/es6.string.iterator":67,"./modules/es6.string.raw":68,"./modules/es6.string.repeat":69,"./modules/es6.string.starts-with":70,"./modules/es6.symbol":71,"./modules/es6.weak-map":72,"./modules/es6.weak-set":73,"./modules/es7.array.includes":74,"./modules/es7.map.to-json":75,"./modules/es7.object.get-own-property-descriptors":76,"./modules/es7.object.to-array":77,"./modules/es7.regexp.escape":78,"./modules/es7.set.to-json":79,"./modules/es7.string.at":80,"./modules/es7.string.lpad":81,"./modules/es7.string.rpad":82,"./modules/js.array.statics":83,"./modules/web.dom.iterable":84,"./modules/web.immediate":85,"./modules/web.timers":86}],88:[function(require,module,exports){
2867
- (function (global){
3040
+ },{"./modules/$":24,"./modules/es5":43,"./modules/es6.array.copy-within":44,"./modules/es6.array.fill":45,"./modules/es6.array.find":47,"./modules/es6.array.find-index":46,"./modules/es6.array.from":48,"./modules/es6.array.iterator":49,"./modules/es6.array.of":50,"./modules/es6.array.species":51,"./modules/es6.function.has-instance":52,"./modules/es6.function.name":53,"./modules/es6.map":54,"./modules/es6.math":55,"./modules/es6.number.constructor":56,"./modules/es6.number.statics":57,"./modules/es6.object.assign":58,"./modules/es6.object.is":59,"./modules/es6.object.set-prototype-of":60,"./modules/es6.object.statics-accept-primitives":61,"./modules/es6.object.to-string":62,"./modules/es6.promise":63,"./modules/es6.reflect":64,"./modules/es6.regexp":65,"./modules/es6.set":66,"./modules/es6.string.code-point-at":67,"./modules/es6.string.ends-with":68,"./modules/es6.string.from-code-point":69,"./modules/es6.string.includes":70,"./modules/es6.string.iterator":71,"./modules/es6.string.raw":72,"./modules/es6.string.repeat":73,"./modules/es6.string.starts-with":74,"./modules/es6.symbol":75,"./modules/es6.weak-map":76,"./modules/es6.weak-set":77,"./modules/es7.array.includes":78,"./modules/es7.map.to-json":79,"./modules/es7.object.get-own-property-descriptors":80,"./modules/es7.object.to-array":81,"./modules/es7.regexp.escape":82,"./modules/es7.set.to-json":83,"./modules/es7.string.at":84,"./modules/es7.string.lpad":85,"./modules/es7.string.rpad":86,"./modules/js.array.statics":87,"./modules/web.dom.iterable":88,"./modules/web.immediate":89,"./modules/web.timers":90}],92:[function(require,module,exports){
3041
+ (function (process,global){
2868
3042
  /**
2869
3043
  * Copyright (c) 2014, Facebook, Inc.
2870
3044
  * All rights reserved.
@@ -2953,6 +3127,16 @@ module.exports = require('./modules/$').core;
2953
3127
  GeneratorFunctionPrototype.constructor = GeneratorFunction;
2954
3128
  GeneratorFunction.displayName = "GeneratorFunction";
2955
3129
 
3130
+ // Helper for defining the .next, .throw, and .return methods of the
3131
+ // Iterator interface in terms of a single ._invoke method.
3132
+ function defineIteratorMethods(prototype) {
3133
+ ["next", "throw", "return"].forEach(function(method) {
3134
+ prototype[method] = function(arg) {
3135
+ return this._invoke(method, arg);
3136
+ };
3137
+ });
3138
+ }
3139
+
2956
3140
  runtime.isGeneratorFunction = function(genFun) {
2957
3141
  var ctor = typeof genFun === "function" && genFun.constructor;
2958
3142
  return ctor
@@ -2969,29 +3153,90 @@ module.exports = require('./modules/$').core;
2969
3153
  return genFun;
2970
3154
  };
2971
3155
 
2972
- runtime.async = function(innerFn, outerFn, self, tryLocsList) {
2973
- return new Promise(function(resolve, reject) {
2974
- var generator = wrap(innerFn, outerFn, self, tryLocsList);
2975
- var callNext = step.bind(generator, "next");
2976
- var callThrow = step.bind(generator, "throw");
2977
-
2978
- function step(method, arg) {
2979
- var record = tryCatch(generator[method], generator, arg);
2980
- if (record.type === "throw") {
2981
- reject(record.arg);
2982
- return;
2983
- }
3156
+ // Within the body of any async function, `await x` is transformed to
3157
+ // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
3158
+ // `value instanceof AwaitArgument` to determine if the yielded value is
3159
+ // meant to be awaited. Some may consider the name of this method too
3160
+ // cutesy, but they are curmudgeons.
3161
+ runtime.awrap = function(arg) {
3162
+ return new AwaitArgument(arg);
3163
+ };
2984
3164
 
2985
- var info = record.arg;
2986
- if (info.done) {
2987
- resolve(info.value);
2988
- } else {
2989
- Promise.resolve(info.value).then(callNext, callThrow);
2990
- }
2991
- }
3165
+ function AwaitArgument(arg) {
3166
+ this.arg = arg;
3167
+ }
3168
+
3169
+ function AsyncIterator(generator) {
3170
+ // This invoke function is written in a style that assumes some
3171
+ // calling function (or Promise) will handle exceptions.
3172
+ function invoke(method, arg) {
3173
+ var result = generator[method](arg);
3174
+ var value = result.value;
3175
+ return value instanceof AwaitArgument
3176
+ ? Promise.resolve(value.arg).then(invokeNext, invokeThrow)
3177
+ : Promise.resolve(value).then(function(unwrapped) {
3178
+ result.value = unwrapped;
3179
+ return result;
3180
+ }, invokeThrow);
3181
+ }
2992
3182
 
2993
- callNext();
2994
- });
3183
+ if (typeof process === "object" && process.domain) {
3184
+ invoke = process.domain.bind(invoke);
3185
+ }
3186
+
3187
+ var invokeNext = invoke.bind(generator, "next");
3188
+ var invokeThrow = invoke.bind(generator, "throw");
3189
+ var invokeReturn = invoke.bind(generator, "return");
3190
+ var previousPromise;
3191
+
3192
+ function enqueue(method, arg) {
3193
+ var enqueueResult =
3194
+ // If enqueue has been called before, then we want to wait until
3195
+ // all previous Promises have been resolved before calling invoke,
3196
+ // so that results are always delivered in the correct order. If
3197
+ // enqueue has not been called before, then it is important to
3198
+ // call invoke immediately, without waiting on a callback to fire,
3199
+ // so that the async generator function has the opportunity to do
3200
+ // any necessary setup in a predictable way. This predictability
3201
+ // is why the Promise constructor synchronously invokes its
3202
+ // executor callback, and why async functions synchronously
3203
+ // execute code before the first await. Since we implement simple
3204
+ // async functions in terms of async generators, it is especially
3205
+ // important to get this right, even though it requires care.
3206
+ previousPromise ? previousPromise.then(function() {
3207
+ return invoke(method, arg);
3208
+ }) : new Promise(function(resolve) {
3209
+ resolve(invoke(method, arg));
3210
+ });
3211
+
3212
+ // Avoid propagating enqueueResult failures to Promises returned by
3213
+ // later invocations of the iterator, and call generator.return() to
3214
+ // allow the generator a chance to clean up.
3215
+ previousPromise = enqueueResult["catch"](invokeReturn);
3216
+
3217
+ return enqueueResult;
3218
+ }
3219
+
3220
+ // Define the unified helper method that is used to implement .next,
3221
+ // .throw, and .return (see defineIteratorMethods).
3222
+ this._invoke = enqueue;
3223
+ }
3224
+
3225
+ defineIteratorMethods(AsyncIterator.prototype);
3226
+
3227
+ // Note that simple async functions are implemented on top of
3228
+ // AsyncIterator objects; they just return a Promise for the value of
3229
+ // the final result produced by the iterator.
3230
+ runtime.async = function(innerFn, outerFn, self, tryLocsList) {
3231
+ var iter = new AsyncIterator(
3232
+ wrap(innerFn, outerFn, self, tryLocsList)
3233
+ );
3234
+
3235
+ return runtime.isGeneratorFunction(outerFn)
3236
+ ? iter // If outerFn is a generator, return the full iterator.
3237
+ : iter.next().then(function(result) {
3238
+ return result.done ? result.value : iter.next();
3239
+ });
2995
3240
  };
2996
3241
 
2997
3242
  function makeInvokeMethod(innerFn, self, context) {
@@ -3132,14 +3377,9 @@ module.exports = require('./modules/$').core;
3132
3377
  };
3133
3378
  }
3134
3379
 
3135
- function defineGeneratorMethod(method) {
3136
- Gp[method] = function(arg) {
3137
- return this._invoke(method, arg);
3138
- };
3139
- }
3140
- defineGeneratorMethod("next");
3141
- defineGeneratorMethod("throw");
3142
- defineGeneratorMethod("return");
3380
+ // Define Generator.prototype.{next,throw,return} in terms of the
3381
+ // unified ._invoke helper method.
3382
+ defineIteratorMethods(Gp);
3143
3383
 
3144
3384
  Gp[iteratorSymbol] = function() {
3145
3385
  return this;
@@ -3430,5 +3670,5 @@ module.exports = require('./modules/$').core;
3430
3670
  typeof self === "object" ? self : this
3431
3671
  );
3432
3672
 
3433
- }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
3434
- },{}]},{},[1]);
3673
+ }).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
3674
+ },{"_process":2}]},{},[1]);