docs: function waitResolveable() {
      var ms = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
  
      var ret = {};
      ret.promise = new Promise(function (res) {
          ret.resolve = function (x) {
              return res(x);
          };
          setTimeout(res, ms);
      });
      return ret;
  }