text: var _Symbol$iterator = require("@babel/runtime-corejs3/core-js/symbol/iterator");
  
  var _Symbol = require("@babel/runtime-corejs3/core-js/symbol");
  
  var _Promise = require("@babel/runtime-corejs3/core-js/promise");
  
  function _asyncGeneratorDelegate(inner, awaitWrap) {
    var iter = {},
        waiting = false;
  
    function pump(key, value) {
      waiting = true;
      value = new _Promise(function (resolve) {
        resolve(inner[key](value));
      });
      return {
        done: false,
        value: awaitWrap(value)
      };
    }
  
    ;
  
    if (typeof _Symbol === "function" && _Symbol$iterator) {
      iter[_Symbol$iterator] = function () {
        return this;
      };
    }
  
    iter.next = function (value) {
      if (waiting) {
        waiting = false;
        return value;
      }
  
      return pump("next", value);
    };
  
    if (typeof inner["throw"] === "function") {
      iter["throw"] = function (value) {
        if (waiting) {
          waiting = false;
          throw value;
        }
  
        return pump("throw", value);
      };
    }
  
    if (typeof inner["return"] === "function") {
      iter["return"] = function (value) {
        if (waiting) {
          waiting = false;
          return value;
        }
  
        return pump("return", value);
      };
    }
  
    return iter;
  }
  
  module.exports = _asyncGeneratorDelegate;