text: function _arrayLikeToArray(arr, len) {
      if (len == null || len > arr.length) len = arr.length;
      for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
      return arr2;
  }
  function _arrayWithoutHoles(arr) {
      if (Array.isArray(arr)) return _arrayLikeToArray(arr);
  }
  function _classCallCheck(instance, Constructor) {
      if (!(instance instanceof Constructor)) {
          throw new TypeError("Cannot call a class as a function");
      }
  }
  function _defineProperties(target, props) {
      for(var i = 0; i < props.length; i++){
          var descriptor = props[i];
          descriptor.enumerable = descriptor.enumerable || false;
          descriptor.configurable = true;
          if ("value" in descriptor) descriptor.writable = true;
          Object.defineProperty(target, descriptor.key, descriptor);
      }
  }
  function _createClass(Constructor, protoProps, staticProps) {
      if (protoProps) _defineProperties(Constructor.prototype, protoProps);
      if (staticProps) _defineProperties(Constructor, staticProps);
      return Constructor;
  }
  function _iterableToArray(iter) {
      if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
  }
  function _nonIterableSpread() {
      throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  }
  function _toConsumableArray(arr) {
      return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
  }
  function _unsupportedIterableToArray(o, minLen) {
      if (!o) return;
      if (typeof o === "string") return _arrayLikeToArray(o, minLen);
      var n = Object.prototype.toString.call(o).slice(8, -1);
      if (n === "Object" && o.constructor) n = o.constructor.name;
      if (n === "Map" || n === "Set") return Array.from(n);
      if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
  }
  var tmp = Symbol.iterator;
  var SymbolIterator = //@target: ES6
  /*#__PURE__*/ function() {
      "use strict";
      function SymbolIterator() {
          _classCallCheck(this, SymbolIterator);
      }
      _createClass(SymbolIterator, [
          {
              key: "next",
              value: function next() {
                  return {
                      value: Symbol(),
                      done: false
                  };
              }
          },
          {
              key: tmp,
              value: function value() {
                  return this;
              }
          }
      ]);
      return SymbolIterator;
  }();
  var tmp1 = Symbol.iterator;
  var NumberIterator = /*#__PURE__*/ function() {
      "use strict";
      function NumberIterator() {
          _classCallCheck(this, NumberIterator);
      }
      _createClass(NumberIterator, [
          {
              key: "next",
              value: function next() {
                  return {
                      value: 0,
                      done: false
                  };
              }
          },
          {
              key: tmp1,
              value: function value() {
                  return this;
              }
          }
      ]);
      return NumberIterator;
  }();
  var array = _toConsumableArray(new NumberIterator).concat(_toConsumableArray(new SymbolIterator));
  