| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731 | /*! Axios v1.8.3 Copyright (c) 2025 Matt Zabriskie and contributors */function bind(fn, thisArg) {  return function wrap() {    return fn.apply(thisArg, arguments);  };}// utils is a library of generic helper functions non-specific to axiosconst {toString} = Object.prototype;const {getPrototypeOf} = Object;const kindOf = (cache => thing => {    const str = toString.call(thing);    return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());})(Object.create(null));const kindOfTest = (type) => {  type = type.toLowerCase();  return (thing) => kindOf(thing) === type};const typeOfTest = type => thing => typeof thing === type;/** * Determine if a value is an Array * * @param {Object} val The value to test * * @returns {boolean} True if value is an Array, otherwise false */const {isArray} = Array;/** * Determine if a value is undefined * * @param {*} val The value to test * * @returns {boolean} True if the value is undefined, otherwise false */const isUndefined = typeOfTest('undefined');/** * Determine if a value is a Buffer * * @param {*} val The value to test * * @returns {boolean} True if value is a Buffer, otherwise false */function isBuffer(val) {  return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)    && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);}/** * Determine if a value is an ArrayBuffer * * @param {*} val The value to test * * @returns {boolean} True if value is an ArrayBuffer, otherwise false */const isArrayBuffer = kindOfTest('ArrayBuffer');/** * Determine if a value is a view on an ArrayBuffer * * @param {*} val The value to test * * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false */function isArrayBufferView(val) {  let result;  if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {    result = ArrayBuffer.isView(val);  } else {    result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));  }  return result;}/** * Determine if a value is a String * * @param {*} val The value to test * * @returns {boolean} True if value is a String, otherwise false */const isString = typeOfTest('string');/** * Determine if a value is a Function * * @param {*} val The value to test * @returns {boolean} True if value is a Function, otherwise false */const isFunction = typeOfTest('function');/** * Determine if a value is a Number * * @param {*} val The value to test * * @returns {boolean} True if value is a Number, otherwise false */const isNumber = typeOfTest('number');/** * Determine if a value is an Object * * @param {*} thing The value to test * * @returns {boolean} True if value is an Object, otherwise false */const isObject = (thing) => thing !== null && typeof thing === 'object';/** * Determine if a value is a Boolean * * @param {*} thing The value to test * @returns {boolean} True if value is a Boolean, otherwise false */const isBoolean = thing => thing === true || thing === false;/** * Determine if a value is a plain Object * * @param {*} val The value to test * * @returns {boolean} True if value is a plain Object, otherwise false */const isPlainObject = (val) => {  if (kindOf(val) !== 'object') {    return false;  }  const prototype = getPrototypeOf(val);  return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);};/** * Determine if a value is a Date * * @param {*} val The value to test * * @returns {boolean} True if value is a Date, otherwise false */const isDate = kindOfTest('Date');/** * Determine if a value is a File * * @param {*} val The value to test * * @returns {boolean} True if value is a File, otherwise false */const isFile = kindOfTest('File');/** * Determine if a value is a Blob * * @param {*} val The value to test * * @returns {boolean} True if value is a Blob, otherwise false */const isBlob = kindOfTest('Blob');/** * Determine if a value is a FileList * * @param {*} val The value to test * * @returns {boolean} True if value is a File, otherwise false */const isFileList = kindOfTest('FileList');/** * Determine if a value is a Stream * * @param {*} val The value to test * * @returns {boolean} True if value is a Stream, otherwise false */const isStream = (val) => isObject(val) && isFunction(val.pipe);/** * Determine if a value is a FormData * * @param {*} thing The value to test * * @returns {boolean} True if value is an FormData, otherwise false */const isFormData = (thing) => {  let kind;  return thing && (    (typeof FormData === 'function' && thing instanceof FormData) || (      isFunction(thing.append) && (        (kind = kindOf(thing)) === 'formdata' ||        // detect form-data instance        (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')      )    )  )};/** * Determine if a value is a URLSearchParams object * * @param {*} val The value to test * * @returns {boolean} True if value is a URLSearchParams object, otherwise false */const isURLSearchParams = kindOfTest('URLSearchParams');const [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);/** * Trim excess whitespace off the beginning and end of a string * * @param {String} str The String to trim * * @returns {String} The String freed of excess whitespace */const trim = (str) => str.trim ?  str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');/** * Iterate over an Array or an Object invoking a function for each item. * * If `obj` is an Array callback will be called passing * the value, index, and complete array for each item. * * If 'obj' is an Object callback will be called passing * the value, key, and complete object for each property. * * @param {Object|Array} obj The object to iterate * @param {Function} fn The callback to invoke for each item * * @param {Boolean} [allOwnKeys = false] * @returns {any} */function forEach(obj, fn, {allOwnKeys = false} = {}) {  // Don't bother if no value provided  if (obj === null || typeof obj === 'undefined') {    return;  }  let i;  let l;  // Force an array if not already something iterable  if (typeof obj !== 'object') {    /*eslint no-param-reassign:0*/    obj = [obj];  }  if (isArray(obj)) {    // Iterate over array values    for (i = 0, l = obj.length; i < l; i++) {      fn.call(null, obj[i], i, obj);    }  } else {    // Iterate over object keys    const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);    const len = keys.length;    let key;    for (i = 0; i < len; i++) {      key = keys[i];      fn.call(null, obj[key], key, obj);    }  }}function findKey(obj, key) {  key = key.toLowerCase();  const keys = Object.keys(obj);  let i = keys.length;  let _key;  while (i-- > 0) {    _key = keys[i];    if (key === _key.toLowerCase()) {      return _key;    }  }  return null;}const _global = (() => {  /*eslint no-undef:0*/  if (typeof globalThis !== "undefined") return globalThis;  return typeof self !== "undefined" ? self : (typeof window !== 'undefined' ? window : global)})();const isContextDefined = (context) => !isUndefined(context) && context !== _global;/** * Accepts varargs expecting each argument to be an object, then * immutably merges the properties of each object and returns result. * * When multiple objects contain the same key the later object in * the arguments list will take precedence. * * Example: * * ```js * var result = merge({foo: 123}, {foo: 456}); * console.log(result.foo); // outputs 456 * ``` * * @param {Object} obj1 Object to merge * * @returns {Object} Result of all merge properties */function merge(/* obj1, obj2, obj3, ... */) {  const {caseless} = isContextDefined(this) && this || {};  const result = {};  const assignValue = (val, key) => {    const targetKey = caseless && findKey(result, key) || key;    if (isPlainObject(result[targetKey]) && isPlainObject(val)) {      result[targetKey] = merge(result[targetKey], val);    } else if (isPlainObject(val)) {      result[targetKey] = merge({}, val);    } else if (isArray(val)) {      result[targetKey] = val.slice();    } else {      result[targetKey] = val;    }  };  for (let i = 0, l = arguments.length; i < l; i++) {    arguments[i] && forEach(arguments[i], assignValue);  }  return result;}/** * Extends object a by mutably adding to it the properties of object b. * * @param {Object} a The object to be extended * @param {Object} b The object to copy properties from * @param {Object} thisArg The object to bind function to * * @param {Boolean} [allOwnKeys] * @returns {Object} The resulting value of object a */const extend = (a, b, thisArg, {allOwnKeys}= {}) => {  forEach(b, (val, key) => {    if (thisArg && isFunction(val)) {      a[key] = bind(val, thisArg);    } else {      a[key] = val;    }  }, {allOwnKeys});  return a;};/** * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM) * * @param {string} content with BOM * * @returns {string} content value without BOM */const stripBOM = (content) => {  if (content.charCodeAt(0) === 0xFEFF) {    content = content.slice(1);  }  return content;};/** * Inherit the prototype methods from one constructor into another * @param {function} constructor * @param {function} superConstructor * @param {object} [props] * @param {object} [descriptors] * * @returns {void} */const inherits = (constructor, superConstructor, props, descriptors) => {  constructor.prototype = Object.create(superConstructor.prototype, descriptors);  constructor.prototype.constructor = constructor;  Object.defineProperty(constructor, 'super', {    value: superConstructor.prototype  });  props && Object.assign(constructor.prototype, props);};/** * Resolve object with deep prototype chain to a flat object * @param {Object} sourceObj source object * @param {Object} [destObj] * @param {Function|Boolean} [filter] * @param {Function} [propFilter] * * @returns {Object} */const toFlatObject = (sourceObj, destObj, filter, propFilter) => {  let props;  let i;  let prop;  const merged = {};  destObj = destObj || {};  // eslint-disable-next-line no-eq-null,eqeqeq  if (sourceObj == null) return destObj;  do {    props = Object.getOwnPropertyNames(sourceObj);    i = props.length;    while (i-- > 0) {      prop = props[i];      if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {        destObj[prop] = sourceObj[prop];        merged[prop] = true;      }    }    sourceObj = filter !== false && getPrototypeOf(sourceObj);  } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);  return destObj;};/** * Determines whether a string ends with the characters of a specified string * * @param {String} str * @param {String} searchString * @param {Number} [position= 0] * * @returns {boolean} */const endsWith = (str, searchString, position) => {  str = String(str);  if (position === undefined || position > str.length) {    position = str.length;  }  position -= searchString.length;  const lastIndex = str.indexOf(searchString, position);  return lastIndex !== -1 && lastIndex === position;};/** * Returns new array from array like object or null if failed * * @param {*} [thing] * * @returns {?Array} */const toArray = (thing) => {  if (!thing) return null;  if (isArray(thing)) return thing;  let i = thing.length;  if (!isNumber(i)) return null;  const arr = new Array(i);  while (i-- > 0) {    arr[i] = thing[i];  }  return arr;};/** * Checking if the Uint8Array exists and if it does, it returns a function that checks if the * thing passed in is an instance of Uint8Array * * @param {TypedArray} * * @returns {Array} */// eslint-disable-next-line func-namesconst isTypedArray = (TypedArray => {  // eslint-disable-next-line func-names  return thing => {    return TypedArray && thing instanceof TypedArray;  };})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));/** * For each entry in the object, call the function with the key and value. * * @param {Object<any, any>} obj - The object to iterate over. * @param {Function} fn - The function to call for each entry. * * @returns {void} */const forEachEntry = (obj, fn) => {  const generator = obj && obj[Symbol.iterator];  const iterator = generator.call(obj);  let result;  while ((result = iterator.next()) && !result.done) {    const pair = result.value;    fn.call(obj, pair[0], pair[1]);  }};/** * It takes a regular expression and a string, and returns an array of all the matches * * @param {string} regExp - The regular expression to match against. * @param {string} str - The string to search. * * @returns {Array<boolean>} */const matchAll = (regExp, str) => {  let matches;  const arr = [];  while ((matches = regExp.exec(str)) !== null) {    arr.push(matches);  }  return arr;};/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */const isHTMLForm = kindOfTest('HTMLFormElement');const toCamelCase = str => {  return str.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,    function replacer(m, p1, p2) {      return p1.toUpperCase() + p2;    }  );};/* Creating a function that will check if an object has a property. */const hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);/** * Determine if a value is a RegExp object * * @param {*} val The value to test * * @returns {boolean} True if value is a RegExp object, otherwise false */const isRegExp = kindOfTest('RegExp');const reduceDescriptors = (obj, reducer) => {  const descriptors = Object.getOwnPropertyDescriptors(obj);  const reducedDescriptors = {};  forEach(descriptors, (descriptor, name) => {    let ret;    if ((ret = reducer(descriptor, name, obj)) !== false) {      reducedDescriptors[name] = ret || descriptor;    }  });  Object.defineProperties(obj, reducedDescriptors);};/** * Makes all methods read-only * @param {Object} obj */const freezeMethods = (obj) => {  reduceDescriptors(obj, (descriptor, name) => {    // skip restricted props in strict mode    if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {      return false;    }    const value = obj[name];    if (!isFunction(value)) return;    descriptor.enumerable = false;    if ('writable' in descriptor) {      descriptor.writable = false;      return;    }    if (!descriptor.set) {      descriptor.set = () => {        throw Error('Can not rewrite read-only method \'' + name + '\'');      };    }  });};const toObjectSet = (arrayOrString, delimiter) => {  const obj = {};  const define = (arr) => {    arr.forEach(value => {      obj[value] = true;    });  };  isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));  return obj;};const noop = () => {};const toFiniteNumber = (value, defaultValue) => {  return value != null && Number.isFinite(value = +value) ? value : defaultValue;};/** * If the thing is a FormData object, return true, otherwise return false. * * @param {unknown} thing - The thing to check. * * @returns {boolean} */function isSpecCompliantForm(thing) {  return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);}const toJSONObject = (obj) => {  const stack = new Array(10);  const visit = (source, i) => {    if (isObject(source)) {      if (stack.indexOf(source) >= 0) {        return;      }      if(!('toJSON' in source)) {        stack[i] = source;        const target = isArray(source) ? [] : {};        forEach(source, (value, key) => {          const reducedValue = visit(value, i + 1);          !isUndefined(reducedValue) && (target[key] = reducedValue);        });        stack[i] = undefined;        return target;      }    }    return source;  };  return visit(obj, 0);};const isAsyncFn = kindOfTest('AsyncFunction');const isThenable = (thing) =>  thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);// original code// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34const _setImmediate = ((setImmediateSupported, postMessageSupported) => {  if (setImmediateSupported) {    return setImmediate;  }  return postMessageSupported ? ((token, callbacks) => {    _global.addEventListener("message", ({source, data}) => {      if (source === _global && data === token) {        callbacks.length && callbacks.shift()();      }    }, false);    return (cb) => {      callbacks.push(cb);      _global.postMessage(token, "*");    }  })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);})(  typeof setImmediate === 'function',  isFunction(_global.postMessage));const asap = typeof queueMicrotask !== 'undefined' ?  queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);// *********************const utils$1 = {  isArray,  isArrayBuffer,  isBuffer,  isFormData,  isArrayBufferView,  isString,  isNumber,  isBoolean,  isObject,  isPlainObject,  isReadableStream,  isRequest,  isResponse,  isHeaders,  isUndefined,  isDate,  isFile,  isBlob,  isRegExp,  isFunction,  isStream,  isURLSearchParams,  isTypedArray,  isFileList,  forEach,  merge,  extend,  trim,  stripBOM,  inherits,  toFlatObject,  kindOf,  kindOfTest,  endsWith,  toArray,  forEachEntry,  matchAll,  isHTMLForm,  hasOwnProperty,  hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection  reduceDescriptors,  freezeMethods,  toObjectSet,  toCamelCase,  noop,  toFiniteNumber,  findKey,  global: _global,  isContextDefined,  isSpecCompliantForm,  toJSONObject,  isAsyncFn,  isThenable,  setImmediate: _setImmediate,  asap};/** * Create an Error with the specified message, config, error code, request and response. * * @param {string} message The error message. * @param {string} [code] The error code (for example, 'ECONNABORTED'). * @param {Object} [config] The config. * @param {Object} [request] The request. * @param {Object} [response] The response. * * @returns {Error} The created error. */function AxiosError$1(message, code, config, request, response) {  Error.call(this);  if (Error.captureStackTrace) {    Error.captureStackTrace(this, this.constructor);  } else {    this.stack = (new Error()).stack;  }  this.message = message;  this.name = 'AxiosError';  code && (this.code = code);  config && (this.config = config);  request && (this.request = request);  if (response) {    this.response = response;    this.status = response.status ? response.status : null;  }}utils$1.inherits(AxiosError$1, Error, {  toJSON: function toJSON() {    return {      // Standard      message: this.message,      name: this.name,      // Microsoft      description: this.description,      number: this.number,      // Mozilla      fileName: this.fileName,      lineNumber: this.lineNumber,      columnNumber: this.columnNumber,      stack: this.stack,      // Axios      config: utils$1.toJSONObject(this.config),      code: this.code,      status: this.status    };  }});const prototype$1 = AxiosError$1.prototype;const descriptors = {};[  'ERR_BAD_OPTION_VALUE',  'ERR_BAD_OPTION',  'ECONNABORTED',  'ETIMEDOUT',  'ERR_NETWORK',  'ERR_FR_TOO_MANY_REDIRECTS',  'ERR_DEPRECATED',  'ERR_BAD_RESPONSE',  'ERR_BAD_REQUEST',  'ERR_CANCELED',  'ERR_NOT_SUPPORT',  'ERR_INVALID_URL'// eslint-disable-next-line func-names].forEach(code => {  descriptors[code] = {value: code};});Object.defineProperties(AxiosError$1, descriptors);Object.defineProperty(prototype$1, 'isAxiosError', {value: true});// eslint-disable-next-line func-namesAxiosError$1.from = (error, code, config, request, response, customProps) => {  const axiosError = Object.create(prototype$1);  utils$1.toFlatObject(error, axiosError, function filter(obj) {    return obj !== Error.prototype;  }, prop => {    return prop !== 'isAxiosError';  });  AxiosError$1.call(axiosError, error.message, code, config, request, response);  axiosError.cause = error;  axiosError.name = error.name;  customProps && Object.assign(axiosError, customProps);  return axiosError;};// eslint-disable-next-line strictconst httpAdapter = null;/** * Determines if the given thing is a array or js object. * * @param {string} thing - The object or array to be visited. * * @returns {boolean} */function isVisitable(thing) {  return utils$1.isPlainObject(thing) || utils$1.isArray(thing);}/** * It removes the brackets from the end of a string * * @param {string} key - The key of the parameter. * * @returns {string} the key without the brackets. */function removeBrackets(key) {  return utils$1.endsWith(key, '[]') ? key.slice(0, -2) : key;}/** * It takes a path, a key, and a boolean, and returns a string * * @param {string} path - The path to the current key. * @param {string} key - The key of the current object being iterated over. * @param {string} dots - If true, the key will be rendered with dots instead of brackets. * * @returns {string} The path to the current key. */function renderKey(path, key, dots) {  if (!path) return key;  return path.concat(key).map(function each(token, i) {    // eslint-disable-next-line no-param-reassign    token = removeBrackets(token);    return !dots && i ? '[' + token + ']' : token;  }).join(dots ? '.' : '');}/** * If the array is an array and none of its elements are visitable, then it's a flat array. * * @param {Array<any>} arr - The array to check * * @returns {boolean} */function isFlatArray(arr) {  return utils$1.isArray(arr) && !arr.some(isVisitable);}const predicates = utils$1.toFlatObject(utils$1, {}, null, function filter(prop) {  return /^is[A-Z]/.test(prop);});/** * Convert a data object to FormData * * @param {Object} obj * @param {?Object} [formData] * @param {?Object} [options] * @param {Function} [options.visitor] * @param {Boolean} [options.metaTokens = true] * @param {Boolean} [options.dots = false] * @param {?Boolean} [options.indexes = false] * * @returns {Object} **//** * It converts an object into a FormData object * * @param {Object<any, any>} obj - The object to convert to form data. * @param {string} formData - The FormData object to append to. * @param {Object<string, any>} options * * @returns */function toFormData$1(obj, formData, options) {  if (!utils$1.isObject(obj)) {    throw new TypeError('target must be an object');  }  // eslint-disable-next-line no-param-reassign  formData = formData || new (FormData)();  // eslint-disable-next-line no-param-reassign  options = utils$1.toFlatObject(options, {    metaTokens: true,    dots: false,    indexes: false  }, false, function defined(option, source) {    // eslint-disable-next-line no-eq-null,eqeqeq    return !utils$1.isUndefined(source[option]);  });  const metaTokens = options.metaTokens;  // eslint-disable-next-line no-use-before-define  const visitor = options.visitor || defaultVisitor;  const dots = options.dots;  const indexes = options.indexes;  const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;  const useBlob = _Blob && utils$1.isSpecCompliantForm(formData);  if (!utils$1.isFunction(visitor)) {    throw new TypeError('visitor must be a function');  }  function convertValue(value) {    if (value === null) return '';    if (utils$1.isDate(value)) {      return value.toISOString();    }    if (!useBlob && utils$1.isBlob(value)) {      throw new AxiosError$1('Blob is not supported. Use a Buffer instead.');    }    if (utils$1.isArrayBuffer(value) || utils$1.isTypedArray(value)) {      return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);    }    return value;  }  /**   * Default visitor.   *   * @param {*} value   * @param {String|Number} key   * @param {Array<String|Number>} path   * @this {FormData}   *   * @returns {boolean} return true to visit the each prop of the value recursively   */  function defaultVisitor(value, key, path) {    let arr = value;    if (value && !path && typeof value === 'object') {      if (utils$1.endsWith(key, '{}')) {        // eslint-disable-next-line no-param-reassign        key = metaTokens ? key : key.slice(0, -2);        // eslint-disable-next-line no-param-reassign        value = JSON.stringify(value);      } else if (        (utils$1.isArray(value) && isFlatArray(value)) ||        ((utils$1.isFileList(value) || utils$1.endsWith(key, '[]')) && (arr = utils$1.toArray(value))        )) {        // eslint-disable-next-line no-param-reassign        key = removeBrackets(key);        arr.forEach(function each(el, index) {          !(utils$1.isUndefined(el) || el === null) && formData.append(            // eslint-disable-next-line no-nested-ternary            indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),            convertValue(el)          );        });        return false;      }    }    if (isVisitable(value)) {      return true;    }    formData.append(renderKey(path, key, dots), convertValue(value));    return false;  }  const stack = [];  const exposedHelpers = Object.assign(predicates, {    defaultVisitor,    convertValue,    isVisitable  });  function build(value, path) {    if (utils$1.isUndefined(value)) return;    if (stack.indexOf(value) !== -1) {      throw Error('Circular reference detected in ' + path.join('.'));    }    stack.push(value);    utils$1.forEach(value, function each(el, key) {      const result = !(utils$1.isUndefined(el) || el === null) && visitor.call(        formData, el, utils$1.isString(key) ? key.trim() : key, path, exposedHelpers      );      if (result === true) {        build(el, path ? path.concat(key) : [key]);      }    });    stack.pop();  }  if (!utils$1.isObject(obj)) {    throw new TypeError('data must be an object');  }  build(obj);  return formData;}/** * It encodes a string by replacing all characters that are not in the unreserved set with * their percent-encoded equivalents * * @param {string} str - The string to encode. * * @returns {string} The encoded string. */function encode$1(str) {  const charMap = {    '!': '%21',    "'": '%27',    '(': '%28',    ')': '%29',    '~': '%7E',    '%20': '+',    '%00': '\x00'  };  return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {    return charMap[match];  });}/** * It takes a params object and converts it to a FormData object * * @param {Object<string, any>} params - The parameters to be converted to a FormData object. * @param {Object<string, any>} options - The options object passed to the Axios constructor. * * @returns {void} */function AxiosURLSearchParams(params, options) {  this._pairs = [];  params && toFormData$1(params, this, options);}const prototype = AxiosURLSearchParams.prototype;prototype.append = function append(name, value) {  this._pairs.push([name, value]);};prototype.toString = function toString(encoder) {  const _encode = encoder ? function(value) {    return encoder.call(this, value, encode$1);  } : encode$1;  return this._pairs.map(function each(pair) {    return _encode(pair[0]) + '=' + _encode(pair[1]);  }, '').join('&');};/** * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their * URI encoded counterparts * * @param {string} val The value to be encoded. * * @returns {string} The encoded value. */function encode(val) {  return encodeURIComponent(val).    replace(/%3A/gi, ':').    replace(/%24/g, '$').    replace(/%2C/gi, ',').    replace(/%20/g, '+').    replace(/%5B/gi, '[').    replace(/%5D/gi, ']');}/** * Build a URL by appending params to the end * * @param {string} url The base of the url (e.g., http://www.google.com) * @param {object} [params] The params to be appended * @param {?(object|Function)} options * * @returns {string} The formatted url */function buildURL(url, params, options) {  /*eslint no-param-reassign:0*/  if (!params) {    return url;  }    const _encode = options && options.encode || encode;  if (utils$1.isFunction(options)) {    options = {      serialize: options    };  }   const serializeFn = options && options.serialize;  let serializedParams;  if (serializeFn) {    serializedParams = serializeFn(params, options);  } else {    serializedParams = utils$1.isURLSearchParams(params) ?      params.toString() :      new AxiosURLSearchParams(params, options).toString(_encode);  }  if (serializedParams) {    const hashmarkIndex = url.indexOf("#");    if (hashmarkIndex !== -1) {      url = url.slice(0, hashmarkIndex);    }    url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;  }  return url;}class InterceptorManager {  constructor() {    this.handlers = [];  }  /**   * Add a new interceptor to the stack   *   * @param {Function} fulfilled The function to handle `then` for a `Promise`   * @param {Function} rejected The function to handle `reject` for a `Promise`   *   * @return {Number} An ID used to remove interceptor later   */  use(fulfilled, rejected, options) {    this.handlers.push({      fulfilled,      rejected,      synchronous: options ? options.synchronous : false,      runWhen: options ? options.runWhen : null    });    return this.handlers.length - 1;  }  /**   * Remove an interceptor from the stack   *   * @param {Number} id The ID that was returned by `use`   *   * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise   */  eject(id) {    if (this.handlers[id]) {      this.handlers[id] = null;    }  }  /**   * Clear all interceptors from the stack   *   * @returns {void}   */  clear() {    if (this.handlers) {      this.handlers = [];    }  }  /**   * Iterate over all the registered interceptors   *   * This method is particularly useful for skipping over any   * interceptors that may have become `null` calling `eject`.   *   * @param {Function} fn The function to call for each interceptor   *   * @returns {void}   */  forEach(fn) {    utils$1.forEach(this.handlers, function forEachHandler(h) {      if (h !== null) {        fn(h);      }    });  }}const InterceptorManager$1 = InterceptorManager;const transitionalDefaults = {  silentJSONParsing: true,  forcedJSONParsing: true,  clarifyTimeoutError: false};const URLSearchParams$1 = typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;const FormData$1 = typeof FormData !== 'undefined' ? FormData : null;const Blob$1 = typeof Blob !== 'undefined' ? Blob : null;const platform$1 = {  isBrowser: true,  classes: {    URLSearchParams: URLSearchParams$1,    FormData: FormData$1,    Blob: Blob$1  },  protocols: ['http', 'https', 'file', 'blob', 'url', 'data']};const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';const _navigator = typeof navigator === 'object' && navigator || undefined;/** * Determine if we're running in a standard browser environment * * This allows axios to run in a web worker, and react-native. * Both environments support XMLHttpRequest, but not fully standard globals. * * web workers: *  typeof window -> undefined *  typeof document -> undefined * * react-native: *  navigator.product -> 'ReactNative' * nativescript *  navigator.product -> 'NativeScript' or 'NS' * * @returns {boolean} */const hasStandardBrowserEnv = hasBrowserEnv &&  (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);/** * Determine if we're running in a standard browser webWorker environment * * Although the `isStandardBrowserEnv` method indicates that * `allows axios to run in a web worker`, the WebWorker will still be * filtered out due to its judgment standard * `typeof window !== 'undefined' && typeof document !== 'undefined'`. * This leads to a problem when axios post `FormData` in webWorker */const hasStandardBrowserWebWorkerEnv = (() => {  return (    typeof WorkerGlobalScope !== 'undefined' &&    // eslint-disable-next-line no-undef    self instanceof WorkerGlobalScope &&    typeof self.importScripts === 'function'  );})();const origin = hasBrowserEnv && window.location.href || 'http://localhost';const utils = /*#__PURE__*/Object.freeze({  __proto__: null,  hasBrowserEnv: hasBrowserEnv,  hasStandardBrowserWebWorkerEnv: hasStandardBrowserWebWorkerEnv,  hasStandardBrowserEnv: hasStandardBrowserEnv,  navigator: _navigator,  origin: origin});const platform = {  ...utils,  ...platform$1};function toURLEncodedForm(data, options) {  return toFormData$1(data, new platform.classes.URLSearchParams(), Object.assign({    visitor: function(value, key, path, helpers) {      if (platform.isNode && utils$1.isBuffer(value)) {        this.append(key, value.toString('base64'));        return false;      }      return helpers.defaultVisitor.apply(this, arguments);    }  }, options));}/** * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z'] * * @param {string} name - The name of the property to get. * * @returns An array of strings. */function parsePropPath(name) {  // foo[x][y][z]  // foo.x.y.z  // foo-x-y-z  // foo x y z  return utils$1.matchAll(/\w+|\[(\w*)]/g, name).map(match => {    return match[0] === '[]' ? '' : match[1] || match[0];  });}/** * Convert an array to an object. * * @param {Array<any>} arr - The array to convert to an object. * * @returns An object with the same keys and values as the array. */function arrayToObject(arr) {  const obj = {};  const keys = Object.keys(arr);  let i;  const len = keys.length;  let key;  for (i = 0; i < len; i++) {    key = keys[i];    obj[key] = arr[key];  }  return obj;}/** * It takes a FormData object and returns a JavaScript object * * @param {string} formData The FormData object to convert to JSON. * * @returns {Object<string, any> | null} The converted object. */function formDataToJSON(formData) {  function buildPath(path, value, target, index) {    let name = path[index++];    if (name === '__proto__') return true;    const isNumericKey = Number.isFinite(+name);    const isLast = index >= path.length;    name = !name && utils$1.isArray(target) ? target.length : name;    if (isLast) {      if (utils$1.hasOwnProp(target, name)) {        target[name] = [target[name], value];      } else {        target[name] = value;      }      return !isNumericKey;    }    if (!target[name] || !utils$1.isObject(target[name])) {      target[name] = [];    }    const result = buildPath(path, value, target[name], index);    if (result && utils$1.isArray(target[name])) {      target[name] = arrayToObject(target[name]);    }    return !isNumericKey;  }  if (utils$1.isFormData(formData) && utils$1.isFunction(formData.entries)) {    const obj = {};    utils$1.forEachEntry(formData, (name, value) => {      buildPath(parsePropPath(name), value, obj, 0);    });    return obj;  }  return null;}/** * It takes a string, tries to parse it, and if it fails, it returns the stringified version * of the input * * @param {any} rawValue - The value to be stringified. * @param {Function} parser - A function that parses a string into a JavaScript object. * @param {Function} encoder - A function that takes a value and returns a string. * * @returns {string} A stringified version of the rawValue. */function stringifySafely(rawValue, parser, encoder) {  if (utils$1.isString(rawValue)) {    try {      (parser || JSON.parse)(rawValue);      return utils$1.trim(rawValue);    } catch (e) {      if (e.name !== 'SyntaxError') {        throw e;      }    }  }  return (encoder || JSON.stringify)(rawValue);}const defaults = {  transitional: transitionalDefaults,  adapter: ['xhr', 'http', 'fetch'],  transformRequest: [function transformRequest(data, headers) {    const contentType = headers.getContentType() || '';    const hasJSONContentType = contentType.indexOf('application/json') > -1;    const isObjectPayload = utils$1.isObject(data);    if (isObjectPayload && utils$1.isHTMLForm(data)) {      data = new FormData(data);    }    const isFormData = utils$1.isFormData(data);    if (isFormData) {      return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;    }    if (utils$1.isArrayBuffer(data) ||      utils$1.isBuffer(data) ||      utils$1.isStream(data) ||      utils$1.isFile(data) ||      utils$1.isBlob(data) ||      utils$1.isReadableStream(data)    ) {      return data;    }    if (utils$1.isArrayBufferView(data)) {      return data.buffer;    }    if (utils$1.isURLSearchParams(data)) {      headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);      return data.toString();    }    let isFileList;    if (isObjectPayload) {      if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {        return toURLEncodedForm(data, this.formSerializer).toString();      }      if ((isFileList = utils$1.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {        const _FormData = this.env && this.env.FormData;        return toFormData$1(          isFileList ? {'files[]': data} : data,          _FormData && new _FormData(),          this.formSerializer        );      }    }    if (isObjectPayload || hasJSONContentType ) {      headers.setContentType('application/json', false);      return stringifySafely(data);    }    return data;  }],  transformResponse: [function transformResponse(data) {    const transitional = this.transitional || defaults.transitional;    const forcedJSONParsing = transitional && transitional.forcedJSONParsing;    const JSONRequested = this.responseType === 'json';    if (utils$1.isResponse(data) || utils$1.isReadableStream(data)) {      return data;    }    if (data && utils$1.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {      const silentJSONParsing = transitional && transitional.silentJSONParsing;      const strictJSONParsing = !silentJSONParsing && JSONRequested;      try {        return JSON.parse(data);      } catch (e) {        if (strictJSONParsing) {          if (e.name === 'SyntaxError') {            throw AxiosError$1.from(e, AxiosError$1.ERR_BAD_RESPONSE, this, null, this.response);          }          throw e;        }      }    }    return data;  }],  /**   * A timeout in milliseconds to abort a request. If set to 0 (default) a   * timeout is not created.   */  timeout: 0,  xsrfCookieName: 'XSRF-TOKEN',  xsrfHeaderName: 'X-XSRF-TOKEN',  maxContentLength: -1,  maxBodyLength: -1,  env: {    FormData: platform.classes.FormData,    Blob: platform.classes.Blob  },  validateStatus: function validateStatus(status) {    return status >= 200 && status < 300;  },  headers: {    common: {      'Accept': 'application/json, text/plain, */*',      'Content-Type': undefined    }  }};utils$1.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {  defaults.headers[method] = {};});const defaults$1 = defaults;// RawAxiosHeaders whose duplicates are ignored by node// c.f. https://nodejs.org/api/http.html#http_message_headersconst ignoreDuplicateOf = utils$1.toObjectSet([  'age', 'authorization', 'content-length', 'content-type', 'etag',  'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',  'last-modified', 'location', 'max-forwards', 'proxy-authorization',  'referer', 'retry-after', 'user-agent']);/** * Parse headers into an object * * ``` * Date: Wed, 27 Aug 2014 08:58:49 GMT * Content-Type: application/json * Connection: keep-alive * Transfer-Encoding: chunked * ``` * * @param {String} rawHeaders Headers needing to be parsed * * @returns {Object} Headers parsed into an object */const parseHeaders = rawHeaders => {  const parsed = {};  let key;  let val;  let i;  rawHeaders && rawHeaders.split('\n').forEach(function parser(line) {    i = line.indexOf(':');    key = line.substring(0, i).trim().toLowerCase();    val = line.substring(i + 1).trim();    if (!key || (parsed[key] && ignoreDuplicateOf[key])) {      return;    }    if (key === 'set-cookie') {      if (parsed[key]) {        parsed[key].push(val);      } else {        parsed[key] = [val];      }    } else {      parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;    }  });  return parsed;};const $internals = Symbol('internals');function normalizeHeader(header) {  return header && String(header).trim().toLowerCase();}function normalizeValue(value) {  if (value === false || value == null) {    return value;  }  return utils$1.isArray(value) ? value.map(normalizeValue) : String(value);}function parseTokens(str) {  const tokens = Object.create(null);  const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;  let match;  while ((match = tokensRE.exec(str))) {    tokens[match[1]] = match[2];  }  return tokens;}const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {  if (utils$1.isFunction(filter)) {    return filter.call(this, value, header);  }  if (isHeaderNameFilter) {    value = header;  }  if (!utils$1.isString(value)) return;  if (utils$1.isString(filter)) {    return value.indexOf(filter) !== -1;  }  if (utils$1.isRegExp(filter)) {    return filter.test(value);  }}function formatHeader(header) {  return header.trim()    .toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => {      return char.toUpperCase() + str;    });}function buildAccessors(obj, header) {  const accessorName = utils$1.toCamelCase(' ' + header);  ['get', 'set', 'has'].forEach(methodName => {    Object.defineProperty(obj, methodName + accessorName, {      value: function(arg1, arg2, arg3) {        return this[methodName].call(this, header, arg1, arg2, arg3);      },      configurable: true    });  });}class AxiosHeaders$1 {  constructor(headers) {    headers && this.set(headers);  }  set(header, valueOrRewrite, rewrite) {    const self = this;    function setHeader(_value, _header, _rewrite) {      const lHeader = normalizeHeader(_header);      if (!lHeader) {        throw new Error('header name must be a non-empty string');      }      const key = utils$1.findKey(self, lHeader);      if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {        self[key || _header] = normalizeValue(_value);      }    }    const setHeaders = (headers, _rewrite) =>      utils$1.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));    if (utils$1.isPlainObject(header) || header instanceof this.constructor) {      setHeaders(header, valueOrRewrite);    } else if(utils$1.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {      setHeaders(parseHeaders(header), valueOrRewrite);    } else if (utils$1.isHeaders(header)) {      for (const [key, value] of header.entries()) {        setHeader(value, key, rewrite);      }    } else {      header != null && setHeader(valueOrRewrite, header, rewrite);    }    return this;  }  get(header, parser) {    header = normalizeHeader(header);    if (header) {      const key = utils$1.findKey(this, header);      if (key) {        const value = this[key];        if (!parser) {          return value;        }        if (parser === true) {          return parseTokens(value);        }        if (utils$1.isFunction(parser)) {          return parser.call(this, value, key);        }        if (utils$1.isRegExp(parser)) {          return parser.exec(value);        }        throw new TypeError('parser must be boolean|regexp|function');      }    }  }  has(header, matcher) {    header = normalizeHeader(header);    if (header) {      const key = utils$1.findKey(this, header);      return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));    }    return false;  }  delete(header, matcher) {    const self = this;    let deleted = false;    function deleteHeader(_header) {      _header = normalizeHeader(_header);      if (_header) {        const key = utils$1.findKey(self, _header);        if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {          delete self[key];          deleted = true;        }      }    }    if (utils$1.isArray(header)) {      header.forEach(deleteHeader);    } else {      deleteHeader(header);    }    return deleted;  }  clear(matcher) {    const keys = Object.keys(this);    let i = keys.length;    let deleted = false;    while (i--) {      const key = keys[i];      if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {        delete this[key];        deleted = true;      }    }    return deleted;  }  normalize(format) {    const self = this;    const headers = {};    utils$1.forEach(this, (value, header) => {      const key = utils$1.findKey(headers, header);      if (key) {        self[key] = normalizeValue(value);        delete self[header];        return;      }      const normalized = format ? formatHeader(header) : String(header).trim();      if (normalized !== header) {        delete self[header];      }      self[normalized] = normalizeValue(value);      headers[normalized] = true;    });    return this;  }  concat(...targets) {    return this.constructor.concat(this, ...targets);  }  toJSON(asStrings) {    const obj = Object.create(null);    utils$1.forEach(this, (value, header) => {      value != null && value !== false && (obj[header] = asStrings && utils$1.isArray(value) ? value.join(', ') : value);    });    return obj;  }  [Symbol.iterator]() {    return Object.entries(this.toJSON())[Symbol.iterator]();  }  toString() {    return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\n');  }  get [Symbol.toStringTag]() {    return 'AxiosHeaders';  }  static from(thing) {    return thing instanceof this ? thing : new this(thing);  }  static concat(first, ...targets) {    const computed = new this(first);    targets.forEach((target) => computed.set(target));    return computed;  }  static accessor(header) {    const internals = this[$internals] = (this[$internals] = {      accessors: {}    });    const accessors = internals.accessors;    const prototype = this.prototype;    function defineAccessor(_header) {      const lHeader = normalizeHeader(_header);      if (!accessors[lHeader]) {        buildAccessors(prototype, _header);        accessors[lHeader] = true;      }    }    utils$1.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);    return this;  }}AxiosHeaders$1.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);// reserved names hotfixutils$1.reduceDescriptors(AxiosHeaders$1.prototype, ({value}, key) => {  let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`  return {    get: () => value,    set(headerValue) {      this[mapped] = headerValue;    }  }});utils$1.freezeMethods(AxiosHeaders$1);const AxiosHeaders$2 = AxiosHeaders$1;/** * Transform the data for a request or a response * * @param {Array|Function} fns A single function or Array of functions * @param {?Object} response The response object * * @returns {*} The resulting transformed data */function transformData(fns, response) {  const config = this || defaults$1;  const context = response || config;  const headers = AxiosHeaders$2.from(context.headers);  let data = context.data;  utils$1.forEach(fns, function transform(fn) {    data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);  });  headers.normalize();  return data;}function isCancel$1(value) {  return !!(value && value.__CANCEL__);}/** * A `CanceledError` is an object that is thrown when an operation is canceled. * * @param {string=} message The message. * @param {Object=} config The config. * @param {Object=} request The request. * * @returns {CanceledError} The created error. */function CanceledError$1(message, config, request) {  // eslint-disable-next-line no-eq-null,eqeqeq  AxiosError$1.call(this, message == null ? 'canceled' : message, AxiosError$1.ERR_CANCELED, config, request);  this.name = 'CanceledError';}utils$1.inherits(CanceledError$1, AxiosError$1, {  __CANCEL__: true});/** * Resolve or reject a Promise based on response status. * * @param {Function} resolve A function that resolves the promise. * @param {Function} reject A function that rejects the promise. * @param {object} response The response. * * @returns {object} The response. */function settle(resolve, reject, response) {  const validateStatus = response.config.validateStatus;  if (!response.status || !validateStatus || validateStatus(response.status)) {    resolve(response);  } else {    reject(new AxiosError$1(      'Request failed with status code ' + response.status,      [AxiosError$1.ERR_BAD_REQUEST, AxiosError$1.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],      response.config,      response.request,      response    ));  }}function parseProtocol(url) {  const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url);  return match && match[1] || '';}/** * Calculate data maxRate * @param {Number} [samplesCount= 10] * @param {Number} [min= 1000] * @returns {Function} */function speedometer(samplesCount, min) {  samplesCount = samplesCount || 10;  const bytes = new Array(samplesCount);  const timestamps = new Array(samplesCount);  let head = 0;  let tail = 0;  let firstSampleTS;  min = min !== undefined ? min : 1000;  return function push(chunkLength) {    const now = Date.now();    const startedAt = timestamps[tail];    if (!firstSampleTS) {      firstSampleTS = now;    }    bytes[head] = chunkLength;    timestamps[head] = now;    let i = tail;    let bytesCount = 0;    while (i !== head) {      bytesCount += bytes[i++];      i = i % samplesCount;    }    head = (head + 1) % samplesCount;    if (head === tail) {      tail = (tail + 1) % samplesCount;    }    if (now - firstSampleTS < min) {      return;    }    const passed = startedAt && now - startedAt;    return passed ? Math.round(bytesCount * 1000 / passed) : undefined;  };}/** * Throttle decorator * @param {Function} fn * @param {Number} freq * @return {Function} */function throttle(fn, freq) {  let timestamp = 0;  let threshold = 1000 / freq;  let lastArgs;  let timer;  const invoke = (args, now = Date.now()) => {    timestamp = now;    lastArgs = null;    if (timer) {      clearTimeout(timer);      timer = null;    }    fn.apply(null, args);  };  const throttled = (...args) => {    const now = Date.now();    const passed = now - timestamp;    if ( passed >= threshold) {      invoke(args, now);    } else {      lastArgs = args;      if (!timer) {        timer = setTimeout(() => {          timer = null;          invoke(lastArgs);        }, threshold - passed);      }    }  };  const flush = () => lastArgs && invoke(lastArgs);  return [throttled, flush];}const progressEventReducer = (listener, isDownloadStream, freq = 3) => {  let bytesNotified = 0;  const _speedometer = speedometer(50, 250);  return throttle(e => {    const loaded = e.loaded;    const total = e.lengthComputable ? e.total : undefined;    const progressBytes = loaded - bytesNotified;    const rate = _speedometer(progressBytes);    const inRange = loaded <= total;    bytesNotified = loaded;    const data = {      loaded,      total,      progress: total ? (loaded / total) : undefined,      bytes: progressBytes,      rate: rate ? rate : undefined,      estimated: rate && total && inRange ? (total - loaded) / rate : undefined,      event: e,      lengthComputable: total != null,      [isDownloadStream ? 'download' : 'upload']: true    };    listener(data);  }, freq);};const progressEventDecorator = (total, throttled) => {  const lengthComputable = total != null;  return [(loaded) => throttled[0]({    lengthComputable,    total,    loaded  }), throttled[1]];};const asyncDecorator = (fn) => (...args) => utils$1.asap(() => fn(...args));const isURLSameOrigin = platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {  url = new URL(url, platform.origin);  return (    origin.protocol === url.protocol &&    origin.host === url.host &&    (isMSIE || origin.port === url.port)  );})(  new URL(platform.origin),  platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)) : () => true;const cookies = platform.hasStandardBrowserEnv ?  // Standard browser envs support document.cookie  {    write(name, value, expires, path, domain, secure) {      const cookie = [name + '=' + encodeURIComponent(value)];      utils$1.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());      utils$1.isString(path) && cookie.push('path=' + path);      utils$1.isString(domain) && cookie.push('domain=' + domain);      secure === true && cookie.push('secure');      document.cookie = cookie.join('; ');    },    read(name) {      const match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)'));      return (match ? decodeURIComponent(match[3]) : null);    },    remove(name) {      this.write(name, '', Date.now() - 86400000);    }  }  :  // Non-standard browser env (web workers, react-native) lack needed support.  {    write() {},    read() {      return null;    },    remove() {}  };/** * Determines whether the specified URL is absolute * * @param {string} url The URL to test * * @returns {boolean} True if the specified URL is absolute, otherwise false */function isAbsoluteURL(url) {  // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).  // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed  // by any combination of letters, digits, plus, period, or hyphen.  return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);}/** * Creates a new URL by combining the specified URLs * * @param {string} baseURL The base URL * @param {string} relativeURL The relative URL * * @returns {string} The combined URL */function combineURLs(baseURL, relativeURL) {  return relativeURL    ? baseURL.replace(/\/?\/$/, '') + '/' + relativeURL.replace(/^\/+/, '')    : baseURL;}/** * Creates a new URL by combining the baseURL with the requestedURL, * only when the requestedURL is not already an absolute URL. * If the requestURL is absolute, this function returns the requestedURL untouched. * * @param {string} baseURL The base URL * @param {string} requestedURL Absolute or relative URL to combine * * @returns {string} The combined full path */function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {  let isRelativeUrl = !isAbsoluteURL(requestedURL);  if (baseURL && isRelativeUrl || allowAbsoluteUrls == false) {    return combineURLs(baseURL, requestedURL);  }  return requestedURL;}const headersToObject = (thing) => thing instanceof AxiosHeaders$2 ? { ...thing } : thing;/** * Config-specific merge-function which creates a new config-object * by merging two configuration objects together. * * @param {Object} config1 * @param {Object} config2 * * @returns {Object} New object resulting from merging config2 to config1 */function mergeConfig$1(config1, config2) {  // eslint-disable-next-line no-param-reassign  config2 = config2 || {};  const config = {};  function getMergedValue(target, source, prop, caseless) {    if (utils$1.isPlainObject(target) && utils$1.isPlainObject(source)) {      return utils$1.merge.call({caseless}, target, source);    } else if (utils$1.isPlainObject(source)) {      return utils$1.merge({}, source);    } else if (utils$1.isArray(source)) {      return source.slice();    }    return source;  }  // eslint-disable-next-line consistent-return  function mergeDeepProperties(a, b, prop , caseless) {    if (!utils$1.isUndefined(b)) {      return getMergedValue(a, b, prop , caseless);    } else if (!utils$1.isUndefined(a)) {      return getMergedValue(undefined, a, prop , caseless);    }  }  // eslint-disable-next-line consistent-return  function valueFromConfig2(a, b) {    if (!utils$1.isUndefined(b)) {      return getMergedValue(undefined, b);    }  }  // eslint-disable-next-line consistent-return  function defaultToConfig2(a, b) {    if (!utils$1.isUndefined(b)) {      return getMergedValue(undefined, b);    } else if (!utils$1.isUndefined(a)) {      return getMergedValue(undefined, a);    }  }  // eslint-disable-next-line consistent-return  function mergeDirectKeys(a, b, prop) {    if (prop in config2) {      return getMergedValue(a, b);    } else if (prop in config1) {      return getMergedValue(undefined, a);    }  }  const mergeMap = {    url: valueFromConfig2,    method: valueFromConfig2,    data: valueFromConfig2,    baseURL: defaultToConfig2,    transformRequest: defaultToConfig2,    transformResponse: defaultToConfig2,    paramsSerializer: defaultToConfig2,    timeout: defaultToConfig2,    timeoutMessage: defaultToConfig2,    withCredentials: defaultToConfig2,    withXSRFToken: defaultToConfig2,    adapter: defaultToConfig2,    responseType: defaultToConfig2,    xsrfCookieName: defaultToConfig2,    xsrfHeaderName: defaultToConfig2,    onUploadProgress: defaultToConfig2,    onDownloadProgress: defaultToConfig2,    decompress: defaultToConfig2,    maxContentLength: defaultToConfig2,    maxBodyLength: defaultToConfig2,    beforeRedirect: defaultToConfig2,    transport: defaultToConfig2,    httpAgent: defaultToConfig2,    httpsAgent: defaultToConfig2,    cancelToken: defaultToConfig2,    socketPath: defaultToConfig2,    responseEncoding: defaultToConfig2,    validateStatus: mergeDirectKeys,    headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)  };  utils$1.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {    const merge = mergeMap[prop] || mergeDeepProperties;    const configValue = merge(config1[prop], config2[prop], prop);    (utils$1.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);  });  return config;}const resolveConfig = (config) => {  const newConfig = mergeConfig$1({}, config);  let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;  newConfig.headers = headers = AxiosHeaders$2.from(headers);  newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls), config.params, config.paramsSerializer);  // HTTP basic authentication  if (auth) {    headers.set('Authorization', 'Basic ' +      btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))    );  }  let contentType;  if (utils$1.isFormData(data)) {    if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {      headers.setContentType(undefined); // Let the browser set it    } else if ((contentType = headers.getContentType()) !== false) {      // fix semicolon duplication issue for ReactNative FormData implementation      const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];      headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));    }  }  // Add xsrf header  // This is only done if running in a standard browser environment.  // Specifically not if we're in a web worker, or react-native.  if (platform.hasStandardBrowserEnv) {    withXSRFToken && utils$1.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));    if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {      // Add xsrf header      const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);      if (xsrfValue) {        headers.set(xsrfHeaderName, xsrfValue);      }    }  }  return newConfig;};const isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';const xhrAdapter = isXHRAdapterSupported && function (config) {  return new Promise(function dispatchXhrRequest(resolve, reject) {    const _config = resolveConfig(config);    let requestData = _config.data;    const requestHeaders = AxiosHeaders$2.from(_config.headers).normalize();    let {responseType, onUploadProgress, onDownloadProgress} = _config;    let onCanceled;    let uploadThrottled, downloadThrottled;    let flushUpload, flushDownload;    function done() {      flushUpload && flushUpload(); // flush events      flushDownload && flushDownload(); // flush events      _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);      _config.signal && _config.signal.removeEventListener('abort', onCanceled);    }    let request = new XMLHttpRequest();    request.open(_config.method.toUpperCase(), _config.url, true);    // Set the request timeout in MS    request.timeout = _config.timeout;    function onloadend() {      if (!request) {        return;      }      // Prepare the response      const responseHeaders = AxiosHeaders$2.from(        'getAllResponseHeaders' in request && request.getAllResponseHeaders()      );      const responseData = !responseType || responseType === 'text' || responseType === 'json' ?        request.responseText : request.response;      const response = {        data: responseData,        status: request.status,        statusText: request.statusText,        headers: responseHeaders,        config,        request      };      settle(function _resolve(value) {        resolve(value);        done();      }, function _reject(err) {        reject(err);        done();      }, response);      // Clean up request      request = null;    }    if ('onloadend' in request) {      // Use onloadend if available      request.onloadend = onloadend;    } else {      // Listen for ready state to emulate onloadend      request.onreadystatechange = function handleLoad() {        if (!request || request.readyState !== 4) {          return;        }        // The request errored out and we didn't get a response, this will be        // handled by onerror instead        // With one exception: request that using file: protocol, most browsers        // will return status as 0 even though it's a successful request        if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {          return;        }        // readystate handler is calling before onerror or ontimeout handlers,        // so we should call onloadend on the next 'tick'        setTimeout(onloadend);      };    }    // Handle browser request cancellation (as opposed to a manual cancellation)    request.onabort = function handleAbort() {      if (!request) {        return;      }      reject(new AxiosError$1('Request aborted', AxiosError$1.ECONNABORTED, config, request));      // Clean up request      request = null;    };    // Handle low level network errors    request.onerror = function handleError() {      // Real errors are hidden from us by the browser      // onerror should only fire if it's a network error      reject(new AxiosError$1('Network Error', AxiosError$1.ERR_NETWORK, config, request));      // Clean up request      request = null;    };    // Handle timeout    request.ontimeout = function handleTimeout() {      let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';      const transitional = _config.transitional || transitionalDefaults;      if (_config.timeoutErrorMessage) {        timeoutErrorMessage = _config.timeoutErrorMessage;      }      reject(new AxiosError$1(        timeoutErrorMessage,        transitional.clarifyTimeoutError ? AxiosError$1.ETIMEDOUT : AxiosError$1.ECONNABORTED,        config,        request));      // Clean up request      request = null;    };    // Remove Content-Type if data is undefined    requestData === undefined && requestHeaders.setContentType(null);    // Add headers to the request    if ('setRequestHeader' in request) {      utils$1.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {        request.setRequestHeader(key, val);      });    }    // Add withCredentials to request if needed    if (!utils$1.isUndefined(_config.withCredentials)) {      request.withCredentials = !!_config.withCredentials;    }    // Add responseType to request if needed    if (responseType && responseType !== 'json') {      request.responseType = _config.responseType;    }    // Handle progress if needed    if (onDownloadProgress) {      ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));      request.addEventListener('progress', downloadThrottled);    }    // Not all browsers support upload events    if (onUploadProgress && request.upload) {      ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));      request.upload.addEventListener('progress', uploadThrottled);      request.upload.addEventListener('loadend', flushUpload);    }    if (_config.cancelToken || _config.signal) {      // Handle cancellation      // eslint-disable-next-line func-names      onCanceled = cancel => {        if (!request) {          return;        }        reject(!cancel || cancel.type ? new CanceledError$1(null, config, request) : cancel);        request.abort();        request = null;      };      _config.cancelToken && _config.cancelToken.subscribe(onCanceled);      if (_config.signal) {        _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);      }    }    const protocol = parseProtocol(_config.url);    if (protocol && platform.protocols.indexOf(protocol) === -1) {      reject(new AxiosError$1('Unsupported protocol ' + protocol + ':', AxiosError$1.ERR_BAD_REQUEST, config));      return;    }    // Send the request    request.send(requestData || null);  });};const composeSignals = (signals, timeout) => {  const {length} = (signals = signals ? signals.filter(Boolean) : []);  if (timeout || length) {    let controller = new AbortController();    let aborted;    const onabort = function (reason) {      if (!aborted) {        aborted = true;        unsubscribe();        const err = reason instanceof Error ? reason : this.reason;        controller.abort(err instanceof AxiosError$1 ? err : new CanceledError$1(err instanceof Error ? err.message : err));      }    };    let timer = timeout && setTimeout(() => {      timer = null;      onabort(new AxiosError$1(`timeout ${timeout} of ms exceeded`, AxiosError$1.ETIMEDOUT));    }, timeout);    const unsubscribe = () => {      if (signals) {        timer && clearTimeout(timer);        timer = null;        signals.forEach(signal => {          signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);        });        signals = null;      }    };    signals.forEach((signal) => signal.addEventListener('abort', onabort));    const {signal} = controller;    signal.unsubscribe = () => utils$1.asap(unsubscribe);    return signal;  }};const composeSignals$1 = composeSignals;const streamChunk = function* (chunk, chunkSize) {  let len = chunk.byteLength;  if (!chunkSize || len < chunkSize) {    yield chunk;    return;  }  let pos = 0;  let end;  while (pos < len) {    end = pos + chunkSize;    yield chunk.slice(pos, end);    pos = end;  }};const readBytes = async function* (iterable, chunkSize) {  for await (const chunk of readStream(iterable)) {    yield* streamChunk(chunk, chunkSize);  }};const readStream = async function* (stream) {  if (stream[Symbol.asyncIterator]) {    yield* stream;    return;  }  const reader = stream.getReader();  try {    for (;;) {      const {done, value} = await reader.read();      if (done) {        break;      }      yield value;    }  } finally {    await reader.cancel();  }};const trackStream = (stream, chunkSize, onProgress, onFinish) => {  const iterator = readBytes(stream, chunkSize);  let bytes = 0;  let done;  let _onFinish = (e) => {    if (!done) {      done = true;      onFinish && onFinish(e);    }  };  return new ReadableStream({    async pull(controller) {      try {        const {done, value} = await iterator.next();        if (done) {         _onFinish();          controller.close();          return;        }        let len = value.byteLength;        if (onProgress) {          let loadedBytes = bytes += len;          onProgress(loadedBytes);        }        controller.enqueue(new Uint8Array(value));      } catch (err) {        _onFinish(err);        throw err;      }    },    cancel(reason) {      _onFinish(reason);      return iterator.return();    }  }, {    highWaterMark: 2  })};const isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';const isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';// used only inside the fetch adapterconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?    ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :    async (str) => new Uint8Array(await new Response(str).arrayBuffer()));const test = (fn, ...args) => {  try {    return !!fn(...args);  } catch (e) {    return false  }};const supportsRequestStream = isReadableStreamSupported && test(() => {  let duplexAccessed = false;  const hasContentType = new Request(platform.origin, {    body: new ReadableStream(),    method: 'POST',    get duplex() {      duplexAccessed = true;      return 'half';    },  }).headers.has('Content-Type');  return duplexAccessed && !hasContentType;});const DEFAULT_CHUNK_SIZE = 64 * 1024;const supportsResponseStream = isReadableStreamSupported &&  test(() => utils$1.isReadableStream(new Response('').body));const resolvers = {  stream: supportsResponseStream && ((res) => res.body)};isFetchSupported && (((res) => {  ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {    !resolvers[type] && (resolvers[type] = utils$1.isFunction(res[type]) ? (res) => res[type]() :      (_, config) => {        throw new AxiosError$1(`Response type '${type}' is not supported`, AxiosError$1.ERR_NOT_SUPPORT, config);      });  });})(new Response));const getBodyLength = async (body) => {  if (body == null) {    return 0;  }  if(utils$1.isBlob(body)) {    return body.size;  }  if(utils$1.isSpecCompliantForm(body)) {    const _request = new Request(platform.origin, {      method: 'POST',      body,    });    return (await _request.arrayBuffer()).byteLength;  }  if(utils$1.isArrayBufferView(body) || utils$1.isArrayBuffer(body)) {    return body.byteLength;  }  if(utils$1.isURLSearchParams(body)) {    body = body + '';  }  if(utils$1.isString(body)) {    return (await encodeText(body)).byteLength;  }};const resolveBodyLength = async (headers, body) => {  const length = utils$1.toFiniteNumber(headers.getContentLength());  return length == null ? getBodyLength(body) : length;};const fetchAdapter = isFetchSupported && (async (config) => {  let {    url,    method,    data,    signal,    cancelToken,    timeout,    onDownloadProgress,    onUploadProgress,    responseType,    headers,    withCredentials = 'same-origin',    fetchOptions  } = resolveConfig(config);  responseType = responseType ? (responseType + '').toLowerCase() : 'text';  let composedSignal = composeSignals$1([signal, cancelToken && cancelToken.toAbortSignal()], timeout);  let request;  const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {      composedSignal.unsubscribe();  });  let requestContentLength;  try {    if (      onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&      (requestContentLength = await resolveBodyLength(headers, data)) !== 0    ) {      let _request = new Request(url, {        method: 'POST',        body: data,        duplex: "half"      });      let contentTypeHeader;      if (utils$1.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {        headers.setContentType(contentTypeHeader);      }      if (_request.body) {        const [onProgress, flush] = progressEventDecorator(          requestContentLength,          progressEventReducer(asyncDecorator(onUploadProgress))        );        data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);      }    }    if (!utils$1.isString(withCredentials)) {      withCredentials = withCredentials ? 'include' : 'omit';    }    // Cloudflare Workers throws when credentials are defined    // see https://github.com/cloudflare/workerd/issues/902    const isCredentialsSupported = "credentials" in Request.prototype;    request = new Request(url, {      ...fetchOptions,      signal: composedSignal,      method: method.toUpperCase(),      headers: headers.normalize().toJSON(),      body: data,      duplex: "half",      credentials: isCredentialsSupported ? withCredentials : undefined    });    let response = await fetch(request);    const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');    if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {      const options = {};      ['status', 'statusText', 'headers'].forEach(prop => {        options[prop] = response[prop];      });      const responseContentLength = utils$1.toFiniteNumber(response.headers.get('content-length'));      const [onProgress, flush] = onDownloadProgress && progressEventDecorator(        responseContentLength,        progressEventReducer(asyncDecorator(onDownloadProgress), true)      ) || [];      response = new Response(        trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {          flush && flush();          unsubscribe && unsubscribe();        }),        options      );    }    responseType = responseType || 'text';    let responseData = await resolvers[utils$1.findKey(resolvers, responseType) || 'text'](response, config);    !isStreamResponse && unsubscribe && unsubscribe();    return await new Promise((resolve, reject) => {      settle(resolve, reject, {        data: responseData,        headers: AxiosHeaders$2.from(response.headers),        status: response.status,        statusText: response.statusText,        config,        request      });    })  } catch (err) {    unsubscribe && unsubscribe();    if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {      throw Object.assign(        new AxiosError$1('Network Error', AxiosError$1.ERR_NETWORK, config, request),        {          cause: err.cause || err        }      )    }    throw AxiosError$1.from(err, err && err.code, config, request);  }});const knownAdapters = {  http: httpAdapter,  xhr: xhrAdapter,  fetch: fetchAdapter};utils$1.forEach(knownAdapters, (fn, value) => {  if (fn) {    try {      Object.defineProperty(fn, 'name', {value});    } catch (e) {      // eslint-disable-next-line no-empty    }    Object.defineProperty(fn, 'adapterName', {value});  }});const renderReason = (reason) => `- ${reason}`;const isResolvedHandle = (adapter) => utils$1.isFunction(adapter) || adapter === null || adapter === false;const adapters = {  getAdapter: (adapters) => {    adapters = utils$1.isArray(adapters) ? adapters : [adapters];    const {length} = adapters;    let nameOrAdapter;    let adapter;    const rejectedReasons = {};    for (let i = 0; i < length; i++) {      nameOrAdapter = adapters[i];      let id;      adapter = nameOrAdapter;      if (!isResolvedHandle(nameOrAdapter)) {        adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];        if (adapter === undefined) {          throw new AxiosError$1(`Unknown adapter '${id}'`);        }      }      if (adapter) {        break;      }      rejectedReasons[id || '#' + i] = adapter;    }    if (!adapter) {      const reasons = Object.entries(rejectedReasons)        .map(([id, state]) => `adapter ${id} ` +          (state === false ? 'is not supported by the environment' : 'is not available in the build')        );      let s = length ?        (reasons.length > 1 ? 'since :\n' + reasons.map(renderReason).join('\n') : ' ' + renderReason(reasons[0])) :        'as no adapter specified';      throw new AxiosError$1(        `There is no suitable adapter to dispatch the request ` + s,        'ERR_NOT_SUPPORT'      );    }    return adapter;  },  adapters: knownAdapters};/** * Throws a `CanceledError` if cancellation has been requested. * * @param {Object} config The config that is to be used for the request * * @returns {void} */function throwIfCancellationRequested(config) {  if (config.cancelToken) {    config.cancelToken.throwIfRequested();  }  if (config.signal && config.signal.aborted) {    throw new CanceledError$1(null, config);  }}/** * Dispatch a request to the server using the configured adapter. * * @param {object} config The config that is to be used for the request * * @returns {Promise} The Promise to be fulfilled */function dispatchRequest(config) {  throwIfCancellationRequested(config);  config.headers = AxiosHeaders$2.from(config.headers);  // Transform request data  config.data = transformData.call(    config,    config.transformRequest  );  if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {    config.headers.setContentType('application/x-www-form-urlencoded', false);  }  const adapter = adapters.getAdapter(config.adapter || defaults$1.adapter);  return adapter(config).then(function onAdapterResolution(response) {    throwIfCancellationRequested(config);    // Transform response data    response.data = transformData.call(      config,      config.transformResponse,      response    );    response.headers = AxiosHeaders$2.from(response.headers);    return response;  }, function onAdapterRejection(reason) {    if (!isCancel$1(reason)) {      throwIfCancellationRequested(config);      // Transform response data      if (reason && reason.response) {        reason.response.data = transformData.call(          config,          config.transformResponse,          reason.response        );        reason.response.headers = AxiosHeaders$2.from(reason.response.headers);      }    }    return Promise.reject(reason);  });}const VERSION$1 = "1.8.3";const validators$1 = {};// eslint-disable-next-line func-names['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {  validators$1[type] = function validator(thing) {    return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;  };});const deprecatedWarnings = {};/** * Transitional option validator * * @param {function|boolean?} validator - set to false if the transitional option has been removed * @param {string?} version - deprecated version / removed since version * @param {string?} message - some message with additional info * * @returns {function} */validators$1.transitional = function transitional(validator, version, message) {  function formatMessage(opt, desc) {    return '[Axios v' + VERSION$1 + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : '');  }  // eslint-disable-next-line func-names  return (value, opt, opts) => {    if (validator === false) {      throw new AxiosError$1(        formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),        AxiosError$1.ERR_DEPRECATED      );    }    if (version && !deprecatedWarnings[opt]) {      deprecatedWarnings[opt] = true;      // eslint-disable-next-line no-console      console.warn(        formatMessage(          opt,          ' has been deprecated since v' + version + ' and will be removed in the near future'        )      );    }    return validator ? validator(value, opt, opts) : true;  };};validators$1.spelling = function spelling(correctSpelling) {  return (value, opt) => {    // eslint-disable-next-line no-console    console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);    return true;  }};/** * Assert object's properties type * * @param {object} options * @param {object} schema * @param {boolean?} allowUnknown * * @returns {object} */function assertOptions(options, schema, allowUnknown) {  if (typeof options !== 'object') {    throw new AxiosError$1('options must be an object', AxiosError$1.ERR_BAD_OPTION_VALUE);  }  const keys = Object.keys(options);  let i = keys.length;  while (i-- > 0) {    const opt = keys[i];    const validator = schema[opt];    if (validator) {      const value = options[opt];      const result = value === undefined || validator(value, opt, options);      if (result !== true) {        throw new AxiosError$1('option ' + opt + ' must be ' + result, AxiosError$1.ERR_BAD_OPTION_VALUE);      }      continue;    }    if (allowUnknown !== true) {      throw new AxiosError$1('Unknown option ' + opt, AxiosError$1.ERR_BAD_OPTION);    }  }}const validator = {  assertOptions,  validators: validators$1};const validators = validator.validators;/** * Create a new instance of Axios * * @param {Object} instanceConfig The default config for the instance * * @return {Axios} A new instance of Axios */class Axios$1 {  constructor(instanceConfig) {    this.defaults = instanceConfig;    this.interceptors = {      request: new InterceptorManager$1(),      response: new InterceptorManager$1()    };  }  /**   * Dispatch a request   *   * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)   * @param {?Object} config   *   * @returns {Promise} The Promise to be fulfilled   */  async request(configOrUrl, config) {    try {      return await this._request(configOrUrl, config);    } catch (err) {      if (err instanceof Error) {        let dummy = {};        Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());        // slice off the Error: ... line        const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, '') : '';        try {          if (!err.stack) {            err.stack = stack;            // match without the 2 top stack lines          } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ''))) {            err.stack += '\n' + stack;          }        } catch (e) {          // ignore the case where "stack" is an un-writable property        }      }      throw err;    }  }  _request(configOrUrl, config) {    /*eslint no-param-reassign:0*/    // Allow for axios('example/url'[, config]) a la fetch API    if (typeof configOrUrl === 'string') {      config = config || {};      config.url = configOrUrl;    } else {      config = configOrUrl || {};    }    config = mergeConfig$1(this.defaults, config);    const {transitional, paramsSerializer, headers} = config;    if (transitional !== undefined) {      validator.assertOptions(transitional, {        silentJSONParsing: validators.transitional(validators.boolean),        forcedJSONParsing: validators.transitional(validators.boolean),        clarifyTimeoutError: validators.transitional(validators.boolean)      }, false);    }    if (paramsSerializer != null) {      if (utils$1.isFunction(paramsSerializer)) {        config.paramsSerializer = {          serialize: paramsSerializer        };      } else {        validator.assertOptions(paramsSerializer, {          encode: validators.function,          serialize: validators.function        }, true);      }    }    // Set config.allowAbsoluteUrls    if (config.allowAbsoluteUrls !== undefined) ; else if (this.defaults.allowAbsoluteUrls !== undefined) {      config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls;    } else {      config.allowAbsoluteUrls = true;    }    validator.assertOptions(config, {      baseUrl: validators.spelling('baseURL'),      withXsrfToken: validators.spelling('withXSRFToken')    }, true);    // Set config.method    config.method = (config.method || this.defaults.method || 'get').toLowerCase();    // Flatten headers    let contextHeaders = headers && utils$1.merge(      headers.common,      headers[config.method]    );    headers && utils$1.forEach(      ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],      (method) => {        delete headers[method];      }    );    config.headers = AxiosHeaders$2.concat(contextHeaders, headers);    // filter out skipped interceptors    const requestInterceptorChain = [];    let synchronousRequestInterceptors = true;    this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {      if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {        return;      }      synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;      requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);    });    const responseInterceptorChain = [];    this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {      responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);    });    let promise;    let i = 0;    let len;    if (!synchronousRequestInterceptors) {      const chain = [dispatchRequest.bind(this), undefined];      chain.unshift.apply(chain, requestInterceptorChain);      chain.push.apply(chain, responseInterceptorChain);      len = chain.length;      promise = Promise.resolve(config);      while (i < len) {        promise = promise.then(chain[i++], chain[i++]);      }      return promise;    }    len = requestInterceptorChain.length;    let newConfig = config;    i = 0;    while (i < len) {      const onFulfilled = requestInterceptorChain[i++];      const onRejected = requestInterceptorChain[i++];      try {        newConfig = onFulfilled(newConfig);      } catch (error) {        onRejected.call(this, error);        break;      }    }    try {      promise = dispatchRequest.call(this, newConfig);    } catch (error) {      return Promise.reject(error);    }    i = 0;    len = responseInterceptorChain.length;    while (i < len) {      promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);    }    return promise;  }  getUri(config) {    config = mergeConfig$1(this.defaults, config);    const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls);    return buildURL(fullPath, config.params, config.paramsSerializer);  }}// Provide aliases for supported request methodsutils$1.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {  /*eslint func-names:0*/  Axios$1.prototype[method] = function(url, config) {    return this.request(mergeConfig$1(config || {}, {      method,      url,      data: (config || {}).data    }));  };});utils$1.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {  /*eslint func-names:0*/  function generateHTTPMethod(isForm) {    return function httpMethod(url, data, config) {      return this.request(mergeConfig$1(config || {}, {        method,        headers: isForm ? {          'Content-Type': 'multipart/form-data'        } : {},        url,        data      }));    };  }  Axios$1.prototype[method] = generateHTTPMethod();  Axios$1.prototype[method + 'Form'] = generateHTTPMethod(true);});const Axios$2 = Axios$1;/** * A `CancelToken` is an object that can be used to request cancellation of an operation. * * @param {Function} executor The executor function. * * @returns {CancelToken} */class CancelToken$1 {  constructor(executor) {    if (typeof executor !== 'function') {      throw new TypeError('executor must be a function.');    }    let resolvePromise;    this.promise = new Promise(function promiseExecutor(resolve) {      resolvePromise = resolve;    });    const token = this;    // eslint-disable-next-line func-names    this.promise.then(cancel => {      if (!token._listeners) return;      let i = token._listeners.length;      while (i-- > 0) {        token._listeners[i](cancel);      }      token._listeners = null;    });    // eslint-disable-next-line func-names    this.promise.then = onfulfilled => {      let _resolve;      // eslint-disable-next-line func-names      const promise = new Promise(resolve => {        token.subscribe(resolve);        _resolve = resolve;      }).then(onfulfilled);      promise.cancel = function reject() {        token.unsubscribe(_resolve);      };      return promise;    };    executor(function cancel(message, config, request) {      if (token.reason) {        // Cancellation has already been requested        return;      }      token.reason = new CanceledError$1(message, config, request);      resolvePromise(token.reason);    });  }  /**   * Throws a `CanceledError` if cancellation has been requested.   */  throwIfRequested() {    if (this.reason) {      throw this.reason;    }  }  /**   * Subscribe to the cancel signal   */  subscribe(listener) {    if (this.reason) {      listener(this.reason);      return;    }    if (this._listeners) {      this._listeners.push(listener);    } else {      this._listeners = [listener];    }  }  /**   * Unsubscribe from the cancel signal   */  unsubscribe(listener) {    if (!this._listeners) {      return;    }    const index = this._listeners.indexOf(listener);    if (index !== -1) {      this._listeners.splice(index, 1);    }  }  toAbortSignal() {    const controller = new AbortController();    const abort = (err) => {      controller.abort(err);    };    this.subscribe(abort);    controller.signal.unsubscribe = () => this.unsubscribe(abort);    return controller.signal;  }  /**   * Returns an object that contains a new `CancelToken` and a function that, when called,   * cancels the `CancelToken`.   */  static source() {    let cancel;    const token = new CancelToken$1(function executor(c) {      cancel = c;    });    return {      token,      cancel    };  }}const CancelToken$2 = CancelToken$1;/** * Syntactic sugar for invoking a function and expanding an array for arguments. * * Common use case would be to use `Function.prototype.apply`. * *  ```js *  function f(x, y, z) {} *  var args = [1, 2, 3]; *  f.apply(null, args); *  ``` * * With `spread` this example can be re-written. * *  ```js *  spread(function(x, y, z) {})([1, 2, 3]); *  ``` * * @param {Function} callback * * @returns {Function} */function spread$1(callback) {  return function wrap(arr) {    return callback.apply(null, arr);  };}/** * Determines whether the payload is an error thrown by Axios * * @param {*} payload The value to test * * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false */function isAxiosError$1(payload) {  return utils$1.isObject(payload) && (payload.isAxiosError === true);}const HttpStatusCode$1 = {  Continue: 100,  SwitchingProtocols: 101,  Processing: 102,  EarlyHints: 103,  Ok: 200,  Created: 201,  Accepted: 202,  NonAuthoritativeInformation: 203,  NoContent: 204,  ResetContent: 205,  PartialContent: 206,  MultiStatus: 207,  AlreadyReported: 208,  ImUsed: 226,  MultipleChoices: 300,  MovedPermanently: 301,  Found: 302,  SeeOther: 303,  NotModified: 304,  UseProxy: 305,  Unused: 306,  TemporaryRedirect: 307,  PermanentRedirect: 308,  BadRequest: 400,  Unauthorized: 401,  PaymentRequired: 402,  Forbidden: 403,  NotFound: 404,  MethodNotAllowed: 405,  NotAcceptable: 406,  ProxyAuthenticationRequired: 407,  RequestTimeout: 408,  Conflict: 409,  Gone: 410,  LengthRequired: 411,  PreconditionFailed: 412,  PayloadTooLarge: 413,  UriTooLong: 414,  UnsupportedMediaType: 415,  RangeNotSatisfiable: 416,  ExpectationFailed: 417,  ImATeapot: 418,  MisdirectedRequest: 421,  UnprocessableEntity: 422,  Locked: 423,  FailedDependency: 424,  TooEarly: 425,  UpgradeRequired: 426,  PreconditionRequired: 428,  TooManyRequests: 429,  RequestHeaderFieldsTooLarge: 431,  UnavailableForLegalReasons: 451,  InternalServerError: 500,  NotImplemented: 501,  BadGateway: 502,  ServiceUnavailable: 503,  GatewayTimeout: 504,  HttpVersionNotSupported: 505,  VariantAlsoNegotiates: 506,  InsufficientStorage: 507,  LoopDetected: 508,  NotExtended: 510,  NetworkAuthenticationRequired: 511,};Object.entries(HttpStatusCode$1).forEach(([key, value]) => {  HttpStatusCode$1[value] = key;});const HttpStatusCode$2 = HttpStatusCode$1;/** * Create an instance of Axios * * @param {Object} defaultConfig The default config for the instance * * @returns {Axios} A new instance of Axios */function createInstance(defaultConfig) {  const context = new Axios$2(defaultConfig);  const instance = bind(Axios$2.prototype.request, context);  // Copy axios.prototype to instance  utils$1.extend(instance, Axios$2.prototype, context, {allOwnKeys: true});  // Copy context to instance  utils$1.extend(instance, context, null, {allOwnKeys: true});  // Factory for creating new instances  instance.create = function create(instanceConfig) {    return createInstance(mergeConfig$1(defaultConfig, instanceConfig));  };  return instance;}// Create the default instance to be exportedconst axios = createInstance(defaults$1);// Expose Axios class to allow class inheritanceaxios.Axios = Axios$2;// Expose Cancel & CancelTokenaxios.CanceledError = CanceledError$1;axios.CancelToken = CancelToken$2;axios.isCancel = isCancel$1;axios.VERSION = VERSION$1;axios.toFormData = toFormData$1;// Expose AxiosError classaxios.AxiosError = AxiosError$1;// alias for CanceledError for backward compatibilityaxios.Cancel = axios.CanceledError;// Expose all/spreadaxios.all = function all(promises) {  return Promise.all(promises);};axios.spread = spread$1;// Expose isAxiosErroraxios.isAxiosError = isAxiosError$1;// Expose mergeConfigaxios.mergeConfig = mergeConfig$1;axios.AxiosHeaders = AxiosHeaders$2;axios.formToJSON = thing => formDataToJSON(utils$1.isHTMLForm(thing) ? new FormData(thing) : thing);axios.getAdapter = adapters.getAdapter;axios.HttpStatusCode = HttpStatusCode$2;axios.default = axios;// this module should only have a default exportconst axios$1 = axios;// This module is intended to unwrap Axios default export as named.// Keep top-level export same with static properties// so that it can keep same with es module or cjsconst {  Axios,  AxiosError,  CanceledError,  isCancel,  CancelToken,  VERSION,  all,  Cancel,  isAxiosError,  spread,  toFormData,  AxiosHeaders,  HttpStatusCode,  formToJSON,  getAdapter,  mergeConfig} = axios$1;export { Axios, AxiosError, AxiosHeaders, Cancel, CancelToken, CanceledError, HttpStatusCode, VERSION, all, axios$1 as default, formToJSON, getAdapter, isAxiosError, isCancel, mergeConfig, spread, toFormData };//# sourceMappingURL=axios.js.map
 |