@interfere/react 12.4.2 → 12.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/activity-BXnqBJEN.mjs +1 -0
- package/dist/{activity-CShcwAW_.d.mts → activity-CBQdSlah.d.mts} +2 -0
- package/dist/api-BEM97FWM.mjs +1 -0
- package/dist/{api-BXjfYV5Z.d.mts → api-hCzqicRd.d.mts} +2 -3
- package/dist/carryover-BAFBokML.d.mts +20 -0
- package/dist/carryover-jGdEwhSK.mjs +1 -0
- package/dist/cors-guard-CBFsXK5N.mjs +1 -0
- package/dist/delivery-MVXiPjqc.mjs +1 -0
- package/dist/delivery-ST8Q6V23.d.mts +29 -0
- package/dist/environment-CC7GnqAv.mjs +1 -0
- package/dist/environment-CTK2srrC.d.mts +4 -0
- package/dist/error-boundary.d.mts +1 -1
- package/dist/export-carryover-Y9VbQiAB.mjs +1 -0
- package/dist/exporter-DqqNP_gQ.mjs +1 -0
- package/dist/{exporter-logs-DMr5-1Yi.d.mts → exporter-SwuW_zLa.d.mts} +15 -12
- package/dist/{exporter-logs-BbzSiQJi.mjs → exporter-logs-DSG5ys_2.mjs} +1 -1
- package/dist/{exporter-metrics-DZYqUo6_.mjs → exporter-metrics-B5xXu8sz.mjs} +1 -1
- package/dist/failed-request-evidence-BYcXgFbX.mjs +1 -0
- package/dist/failure-policy-BRdTiUfP.d.mts +21 -0
- package/dist/failure-policy-Czdz-YWP.mjs +1 -0
- package/dist/index-BplJLwnY.d.mts +4 -0
- package/dist/instrumentations-BV6-EClr.mjs +1 -0
- package/dist/{instrumentations-zBdPJHog.d.mts → instrumentations-CSV9Xo8t.d.mts} +4 -23
- package/dist/internal/activity/activity.d.mts +1 -1
- package/dist/internal/activity/activity.mjs +1 -1
- package/dist/internal/capture/capture-boundary.d.mts +1 -1
- package/dist/internal/capture/capture.d.mts +1 -1
- package/dist/internal/environment/environment.d.mts +2 -2
- package/dist/internal/environment/environment.mjs +1 -1
- package/dist/internal/kernel-registry.d.mts +1 -1
- package/dist/internal/kernel.d.mts +3 -3
- package/dist/internal/kernel.mjs +1 -1
- package/dist/internal/otel/export-carryover.d.mts +12 -0
- package/dist/internal/otel/export-carryover.mjs +1 -0
- package/dist/internal/otel/exporter-logs.d.mts +1 -1
- package/dist/internal/otel/exporter-logs.mjs +1 -1
- package/dist/internal/otel/exporter-metrics.d.mts +1 -1
- package/dist/internal/otel/exporter-metrics.mjs +1 -1
- package/dist/internal/otel/exporter.d.mts +1 -1
- package/dist/internal/otel/exporter.mjs +1 -1
- package/dist/internal/otel/index.d.mts +4 -3
- package/dist/internal/otel/index.mjs +1 -1
- package/dist/internal/otel/instrumentations/cors-guard.d.mts +1 -1
- package/dist/internal/otel/instrumentations/cors-guard.mjs +1 -1
- package/dist/internal/otel/instrumentations/failed-request-evidence.d.mts +12 -0
- package/dist/internal/otel/instrumentations/failed-request-evidence.mjs +1 -0
- package/dist/internal/otel/instrumentations/failure-policy.d.mts +2 -0
- package/dist/internal/otel/instrumentations/failure-policy.mjs +1 -0
- package/dist/internal/otel/instrumentations/instrumentations.d.mts +3 -2
- package/dist/internal/otel/instrumentations/instrumentations.mjs +1 -1
- package/dist/internal/otel/instrumentations/propagation-targets.d.mts +1 -0
- package/dist/internal/otel/instrumentations/propagation-targets.mjs +1 -1
- package/dist/internal/otel/instrumentations/request-callsite.d.mts +6 -0
- package/dist/internal/otel/instrumentations/request-callsite.mjs +1 -0
- package/dist/internal/otel/keepalive-chunks.d.mts +2 -2
- package/dist/internal/otel/keepalive-chunks.mjs +1 -1
- package/dist/internal/otel/provider.d.mts +1 -1
- package/dist/internal/otel/provider.mjs +1 -1
- package/dist/internal/plugins/plugin-runtime.d.mts +1 -1
- package/dist/internal/react-context.d.mts +1 -1
- package/dist/internal/sw-queue.mjs +1 -1
- package/dist/internal/version.mjs +1 -1
- package/dist/internal/wrapper-singleton.d.mts +1 -1
- package/dist/internal/wrapper-singleton.mjs +1 -1
- package/dist/keepalive-chunks-Cb8TUzqR.mjs +1 -0
- package/dist/kernel-B2aSrvOQ.mjs +1 -0
- package/dist/{msw-C0yLYJU2.mjs → msw-CedHiv_x.mjs} +2 -2
- package/dist/plugins/device.d.mts +1 -1
- package/dist/plugins/errors.d.mts +1 -1
- package/dist/plugins/lib/loader.d.mts +1 -1
- package/dist/plugins/lib/types.d.mts +1 -1
- package/dist/plugins/logs.d.mts +1 -1
- package/dist/plugins/page-events.d.mts +1 -1
- package/dist/plugins/rage-clicks.d.mts +1 -1
- package/dist/plugins/replay/index.d.mts +1 -1
- package/dist/plugins/replay/index.mjs +1 -1
- package/dist/plugins/replay/upload/carryover.d.mts +2 -0
- package/dist/plugins/replay/upload/carryover.mjs +1 -0
- package/dist/plugins/replay/upload/delivery.d.mts +2 -25
- package/dist/plugins/replay/upload/delivery.mjs +1 -1
- package/dist/plugins/replay/upload/retry-queue.d.mts +15 -0
- package/dist/plugins/replay/upload/retry-queue.mjs +1 -0
- package/dist/plugins/replay/upload/upload.d.mts +1 -0
- package/dist/plugins/replay/upload/upload.mjs +1 -1
- package/dist/propagation-targets-CfPOwH4t.mjs +1 -0
- package/dist/{provider-vp8Aao8Q.d.mts → provider-D3MUu4Pe.d.mts} +6 -5
- package/dist/{provider-Dy0mVCx5.d.mts → provider-DVei_D8K.d.mts} +1 -0
- package/dist/{provider-B8YtuhDX.mjs → provider-ToSOe7C4.mjs} +1 -1
- package/dist/provider.d.mts +1 -1
- package/dist/react-error-handler.d.mts +1 -1
- package/dist/request-callsite-DAf7lGBK.mjs +3 -0
- package/dist/retry-queue-CUNYO4gZ.mjs +1 -0
- package/dist/session-BkvyVdtV.mjs +1 -0
- package/dist/tracking/api.d.mts +1 -1
- package/dist/tracking/api.mjs +1 -1
- package/dist/tracking/lifecycle.fixture.d.mts +1 -1
- package/dist/tracking/lifecycle.fixture.mjs +1 -1
- package/dist/tracking/registration.fixture.d.mts +1 -1
- package/dist/tracking/registration.fixture.mjs +1 -1
- package/dist/tracking/session.d.mts +1 -0
- package/dist/tracking/session.mjs +1 -1
- package/dist/{upload-D55WVf_o.mjs → upload-B9hdPLYo.mjs} +1 -1
- package/dist/{version-CPcWUmrA.mjs → version-D3OKw6oO.mjs} +1 -1
- package/package.json +6 -5
- package/dist/activity-oYlZ5aa1.mjs +0 -1
- package/dist/api-C8aG7li1.mjs +0 -1
- package/dist/cors-guard-CwkqEjzL.mjs +0 -1
- package/dist/delivery-D7hULClu.mjs +0 -1
- package/dist/environment-CoEXhF1a.mjs +0 -1
- package/dist/environment-CtCFKD2N.d.mts +0 -9
- package/dist/exporter-BtHqkV3R.mjs +0 -1
- package/dist/index-C3K6oR4l.d.mts +0 -4
- package/dist/instrumentations-qhx6Oc_F.mjs +0 -1
- package/dist/keepalive-chunks-BZv3PhHT.mjs +0 -1
- package/dist/kernel-BZI0jyJI.mjs +0 -1
- package/dist/propagation-targets-BXDetg0k.mjs +0 -1
- package/dist/session-C30CtCVv.mjs +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var __commonJSMin=(cb,mod)=>()=>(mod||(cb((mod={exports:{}}).exports,mod),cb=null),mod.exports),POSITIONALS_EXP$1=/(%?)(%([sdijo]))/g;function serializePositional$1(positional,flag){switch(flag){case`s`:return positional;case`d`:case`i`:return Number(positional);case`j`:return JSON.stringify(positional);case`o`:{if(typeof positional==`string`)return positional;let json=JSON.stringify(positional);return json===`{}`||json===`[]`||/^\[object .+?\]$/.test(json)?positional:json}}}function format$3(message,...positionals){if(positionals.length===0)return message;let positionalIndex=0,formattedMessage=message.replace(POSITIONALS_EXP$1,(match,isEscaped,_,flag)=>{let positional=positionals[positionalIndex],value=serializePositional$1(positional,flag);return isEscaped?match:(positionalIndex++,value)});return positionalIndex<positionals.length&&(formattedMessage+=` ${positionals.slice(positionalIndex).join(` `)}`),formattedMessage=formattedMessage.replace(/%{2,2}/g,`%`),formattedMessage}var STACK_FRAMES_TO_IGNORE$1=2;function cleanErrorStack$1(error){if(!error.stack)return;let nextStack=error.stack.split(`
|
|
1
|
+
import{getDomain}from"tldts";var __commonJSMin=(cb,mod)=>()=>(mod||(cb((mod={exports:{}}).exports,mod),cb=null),mod.exports),POSITIONALS_EXP$1=/(%?)(%([sdijo]))/g;function serializePositional$1(positional,flag){switch(flag){case`s`:return positional;case`d`:case`i`:return Number(positional);case`j`:return JSON.stringify(positional);case`o`:{if(typeof positional==`string`)return positional;let json=JSON.stringify(positional);return json===`{}`||json===`[]`||/^\[object .+?\]$/.test(json)?positional:json}}}function format$3(message,...positionals){if(positionals.length===0)return message;let positionalIndex=0,formattedMessage=message.replace(POSITIONALS_EXP$1,(match,isEscaped,_,flag)=>{let positional=positionals[positionalIndex],value=serializePositional$1(positional,flag);return isEscaped?match:(positionalIndex++,value)});return positionalIndex<positionals.length&&(formattedMessage+=` ${positionals.slice(positionalIndex).join(` `)}`),formattedMessage=formattedMessage.replace(/%{2,2}/g,`%`),formattedMessage}var STACK_FRAMES_TO_IGNORE$1=2;function cleanErrorStack$1(error){if(!error.stack)return;let nextStack=error.stack.split(`
|
|
2
2
|
`);nextStack.splice(1,STACK_FRAMES_TO_IGNORE$1),error.stack=nextStack.join(`
|
|
3
3
|
`)}var InvariantError$1=class extends Error{constructor(message,...positionals){super(message),this.message=message,this.name=`Invariant Violation`,this.message=format$3(message,...positionals),cleanErrorStack$1(this)}},invariant$1=(predicate,message,...positionals)=>{if(!predicate)throw new InvariantError$1(message,...positionals)};invariant$1.as=(ErrorConstructor,predicate,message,...positionals)=>{if(!predicate){let formatMessage=positionals.length===0?message:format$3(message,...positionals),error;try{error=Reflect.construct(ErrorConstructor,[formatMessage])}catch{error=ErrorConstructor(formatMessage)}throw error}};function formatMessage(message,...positionals){return`[MSW] ${format$3(message,...positionals)}`}function warn$2(message,...positionals){console.warn(formatMessage(message,...positionals))}function error$2(message,...positionals){console.error(formatMessage(message,...positionals))}const devUtils={formatMessage,warn:warn$2,error:error$2};var InternalError=class extends Error{constructor(message){super(message),this.name=`InternalError`}},LensList$1=class{#list;#lens;constructor(){this.#list=[],this.#lens=new Map}get[Symbol.iterator](){return this.#list[Symbol.iterator].bind(this.#list)}entries(){return this.#lens.entries()}get(key){return this.#lens.get(key)||[]}getAll(){return this.#list.map(([,value])=>value)}append(key,value){this.#list.push([key,value]),this.#openLens(key,list=>list.push(value))}prepend(key,value){this.#list.unshift([key,value]),this.#openLens(key,list=>list.unshift(value))}delete(key,value){if(this.size===0)return!1;let values=this.#lens.get(key);if(!values)return!1;let index=values.indexOf(value);return index!==-1&&(values.splice(index,1),this.#list.splice(this.#list.findIndex(item=>item[0]===key&&item[1]===value),1),!0)}deleteAll(key){this.size!==0&&(this.#list=this.#list.filter(item=>item[0]!==key),this.#lens.delete(key))}get size(){return this.#list.length}clear(){this.size!==0&&(this.#list.length=0,this.#lens.clear())}#openLens(key,setter){setter(this.#lens.get(key)||this.#lens.set(key,[]).get(key))}};const kDefaultPrevented$2=Symbol(`kDefaultPrevented`),kPropagationStopped$1=Symbol(`kPropagationStopped`),kImmediatePropagationStopped$1=Symbol(`kImmediatePropagationStopped`);var TypedEvent$1=class extends MessageEvent{[kDefaultPrevented$2];[kPropagationStopped$1];[kImmediatePropagationStopped$1];constructor(...args){super(args[0],args[1]),this[kDefaultPrevented$2]=!1}get defaultPrevented(){return this[kDefaultPrevented$2]}preventDefault(){super.preventDefault(),this[kDefaultPrevented$2]=!0}stopImmediatePropagation(){super.stopImmediatePropagation(),this[kImmediatePropagationStopped$1]=!0}},Emitter$2=class{#listeners;#listenerOptions;#listenerAbortCleanups;#typelessListeners;#hookListeners;#hookListenerOptions;#hookListenerAbortCleanups;hooks;constructor(){this.#listeners=new LensList$1,this.#listenerOptions=new WeakMap,this.#listenerAbortCleanups=new WeakMap,this.#typelessListeners=new WeakSet,this.#hookListeners=new LensList$1,this.#hookListenerOptions=new WeakMap,this.#hookListenerAbortCleanups=new WeakMap,this.hooks={on:(hook,callback,options)=>{if(!options?.signal?.aborted){if(options?.once){let original=callback,wrapper=((...args)=>(this.#deleteHookListener(hook,wrapper),original(...args)));callback=wrapper}if(this.#hookListeners.append(hook,callback),options&&this.#hookListenerOptions.set(callback,options),options?.signal){let{signal}=options,onAbort=()=>{this.#deleteHookListener(hook,callback)};signal.addEventListener(`abort`,onAbort,{once:!0}),this.#hookListenerAbortCleanups.set(callback,()=>{signal.removeEventListener(`abort`,onAbort)})}}},removeListener:(hook,callback)=>{this.#deleteHookListener(hook,callback)}}}#deleteHookListener(hook,callback){this.#hookListeners.delete(hook,callback);let cleanup=this.#hookListenerAbortCleanups.get(callback);cleanup&&(cleanup(),this.#hookListenerAbortCleanups.delete(callback))}#deleteListener(type,listener){let removed=this.#listeners.delete(type,listener),cleanup=this.#listenerAbortCleanups.get(listener);return cleanup&&(cleanup(),this.#listenerAbortCleanups.delete(listener)),removed}on(type,listener,options){return this.#addListener(type,listener,options),this}once(type,listener,options){return this.on(type,listener,{...options||{},once:!0})}earlyOn(type,listener,options){return this.#addListener(type,listener,options,`prepend`),this}earlyOnce(type,listener,options){return this.earlyOn(type,listener,{...options||{},once:!0})}emit(event){if(this.#listeners.size===0)return!1;let hasListeners=this.listenerCount(event.type)>0,proxiedEvent=this.#proxyEvent(event);for(let listener of this.#matchListeners(event.type)){if(proxiedEvent.event[kPropagationStopped$1]!=null&&proxiedEvent.event[kPropagationStopped$1]!==this)return proxiedEvent.revoke(),!1;if(proxiedEvent.event[kImmediatePropagationStopped$1])break;this.#callListener(proxiedEvent.event,listener)}return proxiedEvent.revoke(),hasListeners}async emitAsPromise(event){if(this.#listeners.size===0)return[];let pendingListeners=[],proxiedEvent=this.#proxyEvent(event);for(let listener of this.#matchListeners(event.type)){if(proxiedEvent.event[kPropagationStopped$1]!=null&&proxiedEvent.event[kPropagationStopped$1]!==this)return proxiedEvent.revoke(),[];if(proxiedEvent.event[kImmediatePropagationStopped$1])break;let returnValue=await Promise.resolve(this.#callListener(proxiedEvent.event,listener));this.#isTypelessListener(listener)||pendingListeners.push(returnValue)}return proxiedEvent.revoke(),Promise.allSettled(pendingListeners).then(results=>results.map(result=>result.status===`fulfilled`?result.value:result.reason))}*emitAsGenerator(event){if(this.#listeners.size===0)return;let proxiedEvent=this.#proxyEvent(event);for(let listener of this.#matchListeners(event.type)){if(proxiedEvent.event[kPropagationStopped$1]!=null&&proxiedEvent.event[kPropagationStopped$1]!==this){proxiedEvent.revoke();return}if(proxiedEvent.event[kImmediatePropagationStopped$1])break;let returnValue=this.#callListener(proxiedEvent.event,listener);this.#isTypelessListener(listener)||(yield returnValue)}proxiedEvent.revoke()}removeListener(type,listener){let options=this.#listenerOptions.get(listener);if(this.#deleteListener(type,listener))for(let hook of this.#hookListeners.get(`removeListener`).slice())hook(type,listener,options)}removeAllListeners(type){if(type==null){for(let[listenerType,listeners$1]of this.#listeners.entries())for(;listeners$1.length>0;)this.removeListener(listenerType,listeners$1[0]);for(let[hookType,hookListener]of[...this.#hookListeners])this.#hookListenerOptions.get(hookListener)?.persist||this.#deleteHookListener(hookType,hookListener);return}let listeners=this.listeners(type);for(;listeners.length>0;)this.removeListener(type,listeners[0])}listeners(type){return type==null?this.#listeners.getAll():this.#listeners.get(type)}listenerCount(type){return type==null?this.#listeners.size:this.listeners(type).length}#addListener(type,listener,options,insertMode=`append`){if(!options?.signal?.aborted){for(let hook of this.#hookListeners.get(`newListener`).slice())hook(type,listener,options);if(type===`*`&&this.#typelessListeners.add(listener),insertMode===`prepend`?this.#listeners.prepend(type,listener):this.#listeners.append(type,listener),options&&(this.#listenerOptions.set(listener,options),options.signal)){let{signal}=options,onAbort=()=>{this.removeListener(type,listener)};signal.addEventListener(`abort`,onAbort,{once:!0}),this.#listenerAbortCleanups.set(listener,()=>{signal.removeEventListener(`abort`,onAbort)})}}}#proxyEvent(event){let{stopPropagation}=event;return event.stopPropagation=()=>{event[kPropagationStopped$1]=this,stopPropagation.call(event)},{event,revoke(){event.stopPropagation=stopPropagation}}}#callListener(event,listener){for(let hook of this.#hookListeners.get(`beforeEmit`).slice())if(hook(event)===!1)return;let returnValue=listener.call(this,event),options=this.#listenerOptions.get(listener);if(options?.once){let type=this.#isTypelessListener(listener)?`*`:event.type;if(this.#deleteListener(type,listener))for(let hook of this.#hookListeners.get(`removeListener`).slice())hook(type,listener,options)}return returnValue}*#matchListeners(type){let snapshot=[];for(let[key,listener]of this.#listeners)(key===`*`||key===type)&&snapshot.push(listener);yield*snapshot}#isTypelessListener(listener){return this.#typelessListeners.has(listener)}},defaultParseOptions={decodeValues:!0,map:!1,silent:!1,split:`auto`};function isForbiddenKey(key){return typeof key!=`string`||key in{}}function createNullObj(){return Object.create(null)}function isNonEmptyString$1(str){return typeof str==`string`&&!!str.trim()}function parseString(setCookieValue,options){var parts=setCookieValue.split(`;`).filter(isNonEmptyString$1),nameValuePairStr=parts.shift();if(!nameValuePairStr)return null;var parsed=parseNameValuePair(nameValuePairStr),name=parsed.name,value=parsed.value;if(options=options?Object.assign({},defaultParseOptions,options):defaultParseOptions,isForbiddenKey(name))return null;try{value=options.decodeValues?decodeURIComponent(value):value}catch(e){console.error(`set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.`,e)}var cookie=createNullObj();return cookie.name=name,cookie.value=value,parts.forEach(function(part){var sides=part.split(`=`),key=sides.shift().trim().toLowerCase();if(!isForbiddenKey(key)){var value=sides.join(`=`).trim();if(key===`expires`)cookie.expires=new Date(value);else if(key===`max-age`){var n=parseInt(value,10);Number.isNaN(n)||(cookie.maxAge=n)}else key===`secure`?cookie.secure=!0:key===`httponly`?cookie.httpOnly=!0:key===`samesite`?cookie.sameSite=value:key===`partitioned`?cookie.partitioned=!0:key&&(cookie[key]=value)}}),cookie}function parseNameValuePair(nameValuePairStr){var name=``,value=``,nameValueArr=nameValuePairStr.split(`=`);return nameValueArr.length>1?(name=nameValueArr.shift(),value=nameValueArr.join(`=`)):value=nameValuePairStr,{name,value}}function parseSetCookie(input,options){if(options=options?Object.assign({},defaultParseOptions,options):defaultParseOptions,!input)return options.map?createNullObj():[];if(input.headers){if(typeof input.headers.getSetCookie==`function`)input=input.headers.getSetCookie();else if(input.headers[`set-cookie`])input=input.headers[`set-cookie`];else{var sch=input.headers[Object.keys(input.headers).find(function(key){return key.toLowerCase()===`set-cookie`})];!sch&&input.headers.cookie&&!options.silent&&console.warn(`Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning.`),input=sch}}var split=options.split,isArray=Array.isArray(input);if(split===`auto`&&(split=!isArray),isArray||(input=[input]),input=input.filter(isNonEmptyString$1),split&&(input=input.map(splitCookiesString).flat()),options.map){var cookies=createNullObj();return input.reduce(function(cookies,str){var cookie=parseString(str,options);return cookie&&!isForbiddenKey(cookie.name)&&(cookies[cookie.name]=cookie),cookies},cookies)}return input.map(function(str){return parseString(str,options)}).filter(Boolean)}function splitCookiesString(cookiesString){if(Array.isArray(cookiesString))return cookiesString;if(typeof cookiesString!=`string`)return[];var cookiesStrings=[],pos=0,start,ch,lastComma,nextStart,cookiesSeparatorFound;function skipWhitespace(){for(;pos<cookiesString.length&&/\s/.test(cookiesString.charAt(pos));)pos+=1;return pos<cookiesString.length}function notSpecialChar(){return ch=cookiesString.charAt(pos),ch!==`=`&&ch!==`;`&&ch!==`,`}for(;pos<cookiesString.length;){for(start=pos,cookiesSeparatorFound=!1;skipWhitespace();)if(ch=cookiesString.charAt(pos),ch===`,`){for(lastComma=pos,pos+=1,skipWhitespace(),nextStart=pos;pos<cookiesString.length&¬SpecialChar();)pos+=1;pos<cookiesString.length&&cookiesString.charAt(pos)===`=`?(cookiesSeparatorFound=!0,pos=nextStart,cookiesStrings.push(cookiesString.substring(start,lastComma)),start=pos):pos=lastComma+1}else pos+=1;(!cookiesSeparatorFound||pos>=cookiesString.length)&&cookiesStrings.push(cookiesString.substring(start,cookiesString.length))}return cookiesStrings}parseSetCookie.parseSetCookie=parseSetCookie,parseSetCookie.parse=parseSetCookie,parseSetCookie.parseString=parseString,parseSetCookie.splitCookiesString=splitCookiesString;const HEADERS_INVALID_CHARACTERS=/[^a-z0-9\-#$%&'*+.^_`|~]/i;function normalizeHeaderName(name){if(HEADERS_INVALID_CHARACTERS.test(name)||name.trim()===``)throw TypeError(`Invalid character in header field name`);return name.trim().toLowerCase()}const charCodesToRemove=[`
|
|
4
4
|
`,`\r`,` `,` `],HEADER_VALUE_REMOVE_REGEXP=RegExp(`(^[${charCodesToRemove.join(``)}]|$[${charCodesToRemove.join(``)}])`,`g`);function normalizeHeaderValue(value){return value.replace(HEADER_VALUE_REMOVE_REGEXP,``)}function isValidHeaderName(value){if(typeof value!=`string`||value.length===0)return!1;for(let i=0;i<value.length;i++){let character=value.charCodeAt(i);if(character>127||!isToken(character))return!1}return!0}function isToken(value){return![127,32,`(`,`)`,`<`,`>`,`@`,`,`,`;`,`:`,`\\`,`"`,`/`,`[`,`]`,`?`,`=`,`{`,`}`].includes(value)}function isValidHeaderValue(value){if(typeof value!=`string`||value.trim()!==value)return!1;for(let i=0;i<value.length;i++){let character=value.charCodeAt(i);if(character===0||character===10||character===13)return!1}return!0}let _Symbol$toStringTag;const NORMALIZED_HEADERS=Symbol(`normalizedHeaders`),RAW_HEADER_NAMES=Symbol(`rawHeaderNames`);var Headers$1=class Headers{constructor(init){this[NORMALIZED_HEADERS]={},this[RAW_HEADER_NAMES]=new Map,this[_Symbol$toStringTag]=`Headers`,[`Headers`,`HeadersPolyfill`].includes(init?.constructor?.name)||init instanceof Headers||globalThis.Headers!==void 0&&init instanceof globalThis.Headers?init.forEach((value,name)=>{this.append(name,value)},this):Array.isArray(init)?init.forEach(([name,value])=>{this.append(name,Array.isArray(value)?value.join(`, `):value)}):init&&Object.getOwnPropertyNames(init).forEach(name=>{let value=init[name];this.append(name,Array.isArray(value)?value.join(`, `):value)})}[(_Symbol$toStringTag=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}*keys(){for(let[name]of this.entries())yield name}*values(){for(let[,value]of this.entries())yield value}*entries(){let sortedKeys=Object.keys(this[NORMALIZED_HEADERS]).sort((a,b)=>a.localeCompare(b));for(let name of sortedKeys)if(name===`set-cookie`)for(let value of this.getSetCookie())yield[name,value];else yield[name,this.get(name)]}has(name){if(!isValidHeaderName(name))throw TypeError(`Invalid header name "${name}"`);return this[NORMALIZED_HEADERS].hasOwnProperty(normalizeHeaderName(name))}get(name){if(!isValidHeaderName(name))throw TypeError(`Invalid header name "${name}"`);return this[NORMALIZED_HEADERS][normalizeHeaderName(name)]??null}set(name,value){if(!isValidHeaderName(name)||!isValidHeaderValue(value))return;let normalizedName=normalizeHeaderName(name),normalizedValue=normalizeHeaderValue(value);this[NORMALIZED_HEADERS][normalizedName]=normalizeHeaderValue(normalizedValue),this[RAW_HEADER_NAMES].set(normalizedName,name)}append(name,value){if(!isValidHeaderName(name)||!isValidHeaderValue(value))return;let normalizedName=normalizeHeaderName(name),normalizedValue=normalizeHeaderValue(value),resolvedValue=this.has(normalizedName)?`${this.get(normalizedName)}, ${normalizedValue}`:normalizedValue;this.set(name,resolvedValue)}delete(name){if(!isValidHeaderName(name)||!this.has(name))return;let normalizedName=normalizeHeaderName(name);delete this[NORMALIZED_HEADERS][normalizedName],this[RAW_HEADER_NAMES].delete(normalizedName)}forEach(callback,thisArg){for(let[name,value]of this.entries())callback.call(thisArg,value,name,this)}getSetCookie(){let setCookieHeader=this.get(`set-cookie`);return setCookieHeader===null?[]:setCookieHeader===``?[``]:splitCookiesString(setCookieHeader)}};const SOURCE_FRAME=/[/\\]msw[/\\]src[/\\](.+)/,BUILD_FRAME=/(node_modules)?[/\\]lib[/\\](core|browser|node|native|iife)[/\\]|^[^/\\]*$/;function getCallFrame(error){let stack=error.stack;if(!stack)return;let declarationFrame=stack.split(`
|
|
@@ -16,7 +16,7 @@ statuses/index.js:
|
|
|
16
16
|
* MIT Licensed
|
|
17
17
|
*)
|
|
18
18
|
*/
|
|
19
|
-
const{message:message$1}=statuses_default,kSetCookie=Symbol(`kSetCookie`);function normalizeResponseInit(init={}){let status=init?.status||200,statusText=init?.statusText||message$1[status]||``,headers=new Headers(init?.headers);return{...init,headers,status,statusText}}function decorateResponse(response,init){init.type&&Object.defineProperty(response,"type",{value:init.type,enumerable:!0,writable:!1});let responseCookies=init.headers.get(`set-cookie`);return responseCookies&&Object.defineProperty(response,kSetCookie,{value:responseCookies,enumerable:!1,writable:!1}),response}function getRawSetCookie(response){return Reflect.get(response,kSetCookie)}function copyResponseOwnProperties(source,target){for(let propertyName of Reflect.ownKeys(source)){let descriptor=Object.getOwnPropertyDescriptor(source,propertyName),existingDescriptor=Object.getOwnPropertyDescriptor(target,propertyName);descriptor&&existingDescriptor==null&&Object.defineProperty(target,propertyName,descriptor)}}const bodyType=Symbol(`bodyType`),kDefaultContentType=Symbol.for(`kDefaultContentType`);var HttpResponse=class HttpResponse extends FetchResponse$1{[bodyType]=null;constructor(body,init){let responseInit=normalizeResponseInit(init);super(body,responseInit),decorateResponse(this,responseInit)}static error(){return super.error()}static text(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`text/plain`),responseInit.headers.has(`Content-Length`)||responseInit.headers.set(`Content-Length`,body?new Blob([body]).size.toString():`0`);let response=new HttpResponse(body,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static json(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`application/json`);let responseText=JSON.stringify(body);responseInit.headers.has(`Content-Length`)||responseInit.headers.set(`Content-Length`,responseText?new Blob([responseText]).size.toString():`0`);let response=new HttpResponse(responseText,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static xml(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`text/xml`);let response=new HttpResponse(body,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static html(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`text/html`);let response=new HttpResponse(body,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static arrayBuffer(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`application/octet-stream`),body&&!responseInit.headers.has(`Content-Length`)&&responseInit.headers.set(`Content-Length`,body.byteLength.toString());let response=new HttpResponse(body,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static formData(body,init){return new HttpResponse(body,normalizeResponseInit(init))}};function createDeferredExecutor$1(){let executor=((resolve,reject)=>{executor.state=`pending`,executor.resolve=data=>executor.state===`pending`?(executor.result=data,resolve(data instanceof Promise?data:Promise.resolve(data).then(value=>(executor.state=`fulfilled`,value)))):void 0,executor.reject=reason=>{if(executor.state===`pending`)return queueMicrotask(()=>{executor.state=`rejected`}),reject(executor.rejectionReason=reason)}});return executor}var DeferredPromise$1=class extends Promise{#executor;resolve;reject;constructor(executor=null){let deferredExecutor=createDeferredExecutor$1();super((originalResolve,originalReject)=>{deferredExecutor(originalResolve,originalReject),executor?.(deferredExecutor.resolve,deferredExecutor.reject)}),this.#executor=deferredExecutor,this.resolve=this.#executor.resolve,this.reject=this.#executor.reject}get state(){return this.#executor.state}get rejectionReason(){return this.#executor.rejectionReason}then(onFulfilled,onRejected){return this.#decorate(super.then(onFulfilled,onRejected))}catch(onRejected){return this.#decorate(super.catch(onRejected))}finally(onfinally){return this.#decorate(super.finally(onfinally))}#decorate(promise){return Object.defineProperties(promise,{resolve:{configurable:!0,value:this.resolve},reject:{configurable:!0,value:this.reject}})}};function observeResponseBodyStream(response){if(response.body==null||response.bodyUsed||response.body.locked)return null;let settled=new DeferredPromise$1,reader=response.body.getReader(),observedResponse=new FetchResponse$1(new ReadableStream({async pull(controller){try{let readResult=await reader.read();if(readResult.done){settled.resolve(),controller.close();return}controller.enqueue(readResult.value)}catch(error){throw settled.resolve(),error}},async cancel(reason){settled.resolve(),await reader.cancel(reason)}}),{status:response.status,statusText:response.statusText,headers:response.headers});return copyResponseOwnProperties(response,observedResponse),{response:observedResponse,settled}}var RequestHandler=class RequestHandler{static cache=new WeakMap;kind=`request`;resolver;resolverIterator;resolverIteratorResult;resolverIteratorCleanups;options;scheduledCleanups;info;isUsed;constructor(args){this.resolver=args.resolver,this.options=args.options,this.scheduledCleanups=new Map;let callFrame=getCallFrame(Error());this.info={...args.info,callFrame},this.isUsed=!1}reset(){this.scheduledCleanups.clear();let iterator=this.resolverIterator;this.resolverIterator=void 0,this.resolverIteratorResult=void 0,this.resolverIteratorCleanups=void 0,typeof iterator?.return==`function`&&Promise.resolve(iterator.return())}restore(){this.options?.once&&(this.reset(),this.isUsed=!1)}async parse(_args){return{}}async test(args){let parsedResult=await this.parse({request:args.request,resolutionContext:args.resolutionContext});return this.predicate({request:args.request,parsedResult,resolutionContext:args.resolutionContext})}extendResolverArgs(_args){return{}}cloneRequestOrGetFromCache(request){let existingClone=RequestHandler.cache.get(request);if(existingClone!==void 0)return existingClone;let clonedRequest=request.clone();return RequestHandler.cache.set(request,clonedRequest),clonedRequest}async run(args){if(this.isUsed&&this.options?.once)return null;let requestClone=this.cloneRequestOrGetFromCache(args.request),parsedResult=await this.parse({request:args.request,resolutionContext:args.resolutionContext});if(!await this.predicate({request:args.request,parsedResult,resolutionContext:args.resolutionContext})||this.isUsed&&this.options?.once)return null;this.isUsed=!0;let executeResolver=this.wrapResolver(this.resolver),resolverExtras=this.extendResolverArgs({request:args.request,parsedResult}),listenerController=new AbortController,finalizeFunction,getFinalize=()=>(finalizeFunction??=(args.request.signal.aborted||args.request.signal.addEventListener(`abort`,()=>this.runScheduledCleanups(args.requestId),{once:!0,signal:listenerController.signal}),callback=>{this.scheduleCleanup(args.requestId,callback),args.request.signal.aborted&&this.runScheduledCleanups(args.requestId)}),finalizeFunction),mockedResponse=await executeResolver({...resolverExtras,get finalize(){return getFinalize()},requestId:args.requestId,request:args.request}).catch(errorOrResponse=>{if(errorOrResponse instanceof Response)return errorOrResponse;throw errorOrResponse}).finally(()=>{listenerController.abort()});return mockedResponse&&forwardResponseCookies(mockedResponse),this.createExecutionResult({request:requestClone,requestId:args.requestId,response:mockedResponse,parsedResult})}wrapResolver(resolver){return async info=>{if(!this.resolverIterator){let result;try{result=await resolver(info)}catch(error){throw await this.runScheduledCleanups(info.requestId),error}if(!isIterable(result))return this.complete({request:info.request,requestId:info.requestId,response:result});let existingCleanups=this.scheduledCleanups.get(info.requestId);existingCleanups!=null&&existingCleanups.length>0&&(this.resolverIteratorCleanups=existingCleanups,this.scheduledCleanups.delete(info.requestId)),this.resolverIterator=Symbol.iterator in result?result[Symbol.iterator]():result[Symbol.asyncIterator]()}this.isUsed=!1;let{done,value}=await this.resolverIterator.next(),nextResponse=await value;return nextResponse&&(this.resolverIteratorResult=nextResponse.clone()),done?(this.isUsed=!0,this.complete({request:info.request,requestId:info.requestId,response:this.resolverIteratorResult?.clone()})):nextResponse}}createExecutionResult(args){return{handler:this,request:args.request,requestId:args.requestId,response:args.response,parsedResult:args.parsedResult}}scheduleCleanup(requestId,callback){if(this.resolverIterator){(this.resolverIteratorCleanups||=[]).unshift(callback);return}let cleanups=this.scheduledCleanups.get(requestId)||[];cleanups.unshift(callback),this.scheduledCleanups.set(requestId,cleanups)}async exhaustCleanups(cleanups){let errors=[];for(let cleanup of cleanups)try{await cleanup()}catch(error){error instanceof Error&&errors.push(error)}errors.length>0&&devUtils.error(`Failed to execute cleanup for request handler "%s"`,this.info.header,AggregateError(errors,`Failed to execute cleanup for request handler "${this.info.header}"`))}takeScheduledCleanups(requestId){if(this.resolverIterator&&this.resolverIteratorCleanups!=null&&this.resolverIteratorCleanups.length>0){let cleanups2=this.resolverIteratorCleanups;return this.resolverIteratorCleanups=void 0,cleanups2}let cleanups=this.scheduledCleanups.get(requestId);if(cleanups&&cleanups.length!==0)return this.scheduledCleanups.delete(requestId),cleanups}async runScheduledCleanups(requestId){let cleanups=this.takeScheduledCleanups(requestId);cleanups&&await this.exhaustCleanups(cleanups)}async complete(args){let cleanups=this.takeScheduledCleanups(args.requestId);if(!cleanups)return args.response;let observedResponse=args.response?observeResponseBodyStream(args.response):null;if(!observedResponse)return await this.exhaustCleanups(cleanups),args.response;let listenerController=new AbortController,runCleanupsOnce=()=>{listenerController.signal.aborted||(listenerController.abort(),this.exhaustCleanups(cleanups))};return observedResponse.settled.then(runCleanupsOnce),args.request.signal.aborted?runCleanupsOnce():args.request.signal.addEventListener(`abort`,runCleanupsOnce,{once:!0,signal:listenerController.signal}),observedResponse.response}};function forwardResponseCookies(response){if(typeof document>`u`)return;let responseCookies=getRawSetCookie(response);if(!responseCookies)return;let allResponseCookies=Headers$1.prototype.getSetCookie.call(new Headers([[`set-cookie`,responseCookies]]));for(let cookieString of allResponseCookies)document.cookie=cookieString}var import_dist$1=__commonJSMin((exports=>{Object.defineProperty(exports,"__esModule",{value:!0}),exports.pathToRegexp=exports.tokensToRegexp=exports.regexpToFunction=exports.match=exports.tokensToFunction=exports.compile=exports.parse=void 0;function lexer(str){for(var tokens=[],i=0;i<str.length;){var char=str[i];if(char===`*`||char===`+`||char===`?`){tokens.push({type:`MODIFIER`,index:i,value:str[i++]});continue}if(char===`\\`){tokens.push({type:`ESCAPED_CHAR`,index:i++,value:str[i++]});continue}if(char===`{`){tokens.push({type:`OPEN`,index:i,value:str[i++]});continue}if(char===`}`){tokens.push({type:`CLOSE`,index:i,value:str[i++]});continue}if(char===`:`){for(var name=``,j=i+1;j<str.length;){var code=str.charCodeAt(j);if(code>=48&&code<=57||code>=65&&code<=90||code>=97&&code<=122||code===95){name+=str[j++];continue}break}if(!name)throw TypeError(`Missing parameter name at ${i}`);tokens.push({type:`NAME`,index:i,value:name}),i=j;continue}if(char===`(`){var count=1,pattern=``,j=i+1;if(str[j]===`?`)throw TypeError(`Pattern cannot start with "?" at ${j}`);for(;j<str.length;){if(str[j]===`\\`){pattern+=str[j++]+str[j++];continue}if(str[j]===`)`){if(count--,count===0){j++;break}}else if(str[j]===`(`&&(count++,str[j+1]!==`?`))throw TypeError(`Capturing groups are not allowed at ${j}`);pattern+=str[j++]}if(count)throw TypeError(`Unbalanced pattern at ${i}`);if(!pattern)throw TypeError(`Missing pattern at ${i}`);tokens.push({type:`PATTERN`,index:i,value:pattern}),i=j;continue}tokens.push({type:`CHAR`,index:i,value:str[i++]})}return tokens.push({type:`END`,index:i,value:``}),tokens}function parse(str,options){options===void 0&&(options={});for(var tokens=lexer(str),_a=options.prefixes,prefixes=_a===void 0?`./`:_a,_b=options.delimiter,delimiter=_b===void 0?`/#?`:_b,result=[],key=0,i=0,path=``,tryConsume=function(type){if(i<tokens.length&&tokens[i].type===type)return tokens[i++].value},mustConsume=function(type){var value=tryConsume(type);if(value!==void 0)return value;var _a=tokens[i],nextType=_a.type,index=_a.index;throw TypeError(`Unexpected ${nextType} at ${index}, expected ${type}`)},consumeText=function(){for(var result=``,value;value=tryConsume(`CHAR`)||tryConsume(`ESCAPED_CHAR`);)result+=value;return result},isSafe=function(value){for(var _i=0,delimiter_1=delimiter;_i<delimiter_1.length;_i++){var char=delimiter_1[_i];if(value.indexOf(char)>-1)return!0}return!1},safePattern=function(prefix){var prev=result[result.length-1],prevText=prefix||(prev&&typeof prev==`string`?prev:``);if(prev&&!prevText)throw TypeError(`Must have text between two parameters, missing text after "${prev.name}"`);return!prevText||isSafe(prevText)?`[^${escapeString(delimiter)}]+?`:`(?:(?!${escapeString(prevText)})[^${escapeString(delimiter)}])+?`};i<tokens.length;){var char=tryConsume(`CHAR`),name=tryConsume(`NAME`),pattern=tryConsume(`PATTERN`);if(name||pattern){var prefix=char||``;prefixes.indexOf(prefix)===-1&&(path+=prefix,prefix=``),path&&=(result.push(path),``),result.push({name:name||key++,prefix,suffix:``,pattern:pattern||safePattern(prefix),modifier:tryConsume(`MODIFIER`)||``});continue}var value=char||tryConsume(`ESCAPED_CHAR`);if(value){path+=value;continue}if(path&&=(result.push(path),``),tryConsume(`OPEN`)){var prefix=consumeText(),name_1=tryConsume(`NAME`)||``,pattern_1=tryConsume(`PATTERN`)||``,suffix=consumeText();mustConsume(`CLOSE`),result.push({name:name_1||(pattern_1?key++:``),pattern:name_1&&!pattern_1?safePattern(prefix):pattern_1,prefix,suffix,modifier:tryConsume(`MODIFIER`)||``});continue}mustConsume(`END`)}return result}exports.parse=parse;function compile(str,options){return tokensToFunction(parse(str,options),options)}exports.compile=compile;function tokensToFunction(tokens,options){options===void 0&&(options={});var reFlags=flags(options),_a=options.encode,encode=_a===void 0?function(x){return x}:_a,_b=options.validate,validate=_b===void 0||_b,matches=tokens.map(function(token){if(typeof token==`object`)return RegExp(`^(?:${token.pattern})\$`,reFlags)});return function(data){for(var path=``,i=0;i<tokens.length;i++){var token=tokens[i];if(typeof token==`string`){path+=token;continue}var value=data?data[token.name]:void 0,optional=token.modifier===`?`||token.modifier===`*`,repeat=token.modifier===`*`||token.modifier===`+`;if(Array.isArray(value)){if(!repeat)throw TypeError(`Expected "${token.name}" to not repeat, but got an array`);if(value.length===0){if(optional)continue;throw TypeError(`Expected "${token.name}" to not be empty`)}for(var j=0;j<value.length;j++){var segment=encode(value[j],token);if(validate&&!matches[i].test(segment))throw TypeError(`Expected all "${token.name}" to match "${token.pattern}", but got "${segment}"`);path+=token.prefix+segment+token.suffix}continue}if(typeof value==`string`||typeof value==`number`){var segment=encode(String(value),token);if(validate&&!matches[i].test(segment))throw TypeError(`Expected "${token.name}" to match "${token.pattern}", but got "${segment}"`);path+=token.prefix+segment+token.suffix;continue}if(!optional){var typeOfMessage=repeat?`an array`:`a string`;throw TypeError(`Expected "${token.name}" to be ${typeOfMessage}`)}}return path}}exports.tokensToFunction=tokensToFunction;function match(str,options){var keys=[];return regexpToFunction(pathToRegexp(str,keys,options),keys,options)}exports.match=match;function regexpToFunction(re,keys,options){options===void 0&&(options={});var _a=options.decode,decode=_a===void 0?function(x){return x}:_a;return function(pathname){var m=re.exec(pathname);if(!m)return!1;for(var path=m[0],index=m.index,params=Object.create(null),_loop_1=function(i){if(m[i]===void 0)return`continue`;var key=keys[i-1];key.modifier===`*`||key.modifier===`+`?params[key.name]=m[i].split(key.prefix+key.suffix).map(function(value){return decode(value,key)}):params[key.name]=decode(m[i],key)},i=1;i<m.length;i++)_loop_1(i);return{path,index,params}}}exports.regexpToFunction=regexpToFunction;function escapeString(str){return str.replace(/([.+*?=^!:${}()[\]|/\\])/g,`\\$1`)}function flags(options){return options&&options.sensitive?``:`i`}function regexpToRegexp(path,keys){if(!keys)return path;for(var groupsRegex=/\((?:\?<(.*?)>)?(?!\?)/g,index=0,execResult=groupsRegex.exec(path.source);execResult;)keys.push({name:execResult[1]||index++,prefix:``,suffix:``,modifier:``,pattern:``}),execResult=groupsRegex.exec(path.source);return path}function arrayToRegexp(paths,keys,options){var parts=paths.map(function(path){return pathToRegexp(path,keys,options).source});return RegExp(`(?:${parts.join(`|`)})`,flags(options))}function stringToRegexp(path,keys,options){return tokensToRegexp(parse(path,options),keys,options)}function tokensToRegexp(tokens,keys,options){options===void 0&&(options={});for(var _a=options.strict,strict=_a!==void 0&&_a,_b=options.start,start=_b===void 0||_b,_c=options.end,end=_c===void 0||_c,_d=options.encode,encode=_d===void 0?function(x){return x}:_d,_e=options.delimiter,delimiter=_e===void 0?`/#?`:_e,_f=options.endsWith,endsWithRe=`[${escapeString(_f===void 0?``:_f)}]|\$`,delimiterRe=`[${escapeString(delimiter)}]`,route=start?`^`:``,_i=0,tokens_1=tokens;_i<tokens_1.length;_i++){var token=tokens_1[_i];if(typeof token==`string`)route+=escapeString(encode(token));else{var prefix=escapeString(encode(token.prefix)),suffix=escapeString(encode(token.suffix));if(token.pattern){if(keys&&keys.push(token),prefix||suffix){if(token.modifier===`+`||token.modifier===`*`){var mod=token.modifier===`*`?`?`:``;route+=`(?:${prefix}((?:${token.pattern})(?:${suffix}${prefix}(?:${token.pattern}))*)${suffix})${mod}`}else route+=`(?:${prefix}(${token.pattern})${suffix})${token.modifier}`}else{if(token.modifier===`+`||token.modifier===`*`)throw TypeError(`Can not repeat "${token.name}" without a prefix and suffix`);route+=`(${token.pattern})${token.modifier}`}}else route+=`(?:${prefix}${suffix})${token.modifier}`}}if(end)strict||(route+=`${delimiterRe}?`),route+=options.endsWith?`(?=${endsWithRe})`:`$`;else{var endToken=tokens[tokens.length-1],isEndDelimited=typeof endToken==`string`?delimiterRe.indexOf(endToken[endToken.length-1])>-1:endToken===void 0;strict||(route+=`(?:${delimiterRe}(?=${endsWithRe}))?`),isEndDelimited||(route+=`(?=${delimiterRe}|${endsWithRe})`)}return new RegExp(route,flags(options))}exports.tokensToRegexp=tokensToRegexp;function pathToRegexp(path,keys,options){return path instanceof RegExp?regexpToRegexp(path,keys):Array.isArray(path)?arrayToRegexp(path,keys,options):stringToRegexp(path,keys,options)}exports.pathToRegexp=pathToRegexp}))();const REDUNDANT_CHARACTERS_EXP=/[?|#].*$/g;function cleanUrl(path){return path.endsWith(`?`)?path:path.replace(REDUNDANT_CHARACTERS_EXP,``)}function isAbsoluteUrl(url){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(url)}function getAbsoluteUrl(path,baseUrl){if(isAbsoluteUrl(path)||path.startsWith(`*`))return path;let origin=baseUrl||typeof location<`u`&&location.href;return origin?decodeURI(new URL(encodeURI(path),origin).href):path}function normalizePath(path,baseUrl){return path instanceof RegExp?path:cleanUrl(getAbsoluteUrl(path,baseUrl))}function coercePath(path){return path.replace(/([:a-zA-Z_-]*)(\*{1,2})+/g,(_,parameterName,wildcard)=>{let expression=`(.*)`;return parameterName?parameterName.startsWith(`:`)?`${parameterName}${wildcard}`:`${parameterName}${expression}`:expression}).replace(/([^/])(:)(?=(?:\d+|\(\.\*\))(?=\/|$))/,`$1\\$2`).replace(/^([^/]+)(:)(?=\/\/)/,`$1\\$2`)}function matchRequestUrl(url,path,baseUrl){let normalizedPath=normalizePath(path,baseUrl),cleanPath=typeof normalizedPath==`string`?coercePath(normalizedPath):normalizedPath,cleanUrl=getCleanUrl(url),result=(0,import_dist$1.match)(cleanPath,{decode:decodeURIComponent})(cleanUrl),params=result&&result.params||{};return{matches:result!==!1,params}}function getTimestamp(options){let now=new Date,timestamp=`${now.getHours().toString().padStart(2,`0`)}:${now.getMinutes().toString().padStart(2,`0`)}:${now.getSeconds().toString().padStart(2,`0`)}`;return options?.milliseconds?`${timestamp}.${now.getMilliseconds().toString().padStart(3,`0`)}`:timestamp}function toPublicUrl(url){let urlInstance=url instanceof URL?url:new URL(url);return typeof location<`u`&&urlInstance.origin===location.origin?urlInstance.pathname:urlInstance.origin+urlInstance.pathname}function isObject$2(value){return typeof value==`object`&&!!value&&!Array.isArray(value)}const kConnect=Symbol(`kConnect`),kAutoConnect=Symbol(`kAutoConnect`),kSiblingHandlers=Symbol(`kSiblingHandlers`);function getSiblingHandlers(owner){return Reflect.get(owner,kSiblingHandlers)||[]}function groupHandlersByKind(handlers){let groups={},pushUnique=(kind,handler)=>{let bucket=groups[kind]||=[];bucket.includes(handler)||bucket.push(handler)};for(let handler of handlers){pushUnique(handler.kind,handler);for(let sibling of getSiblingHandlers(handler))pushUnique(sibling.kind,sibling)}return groups}var HandlersController=class{getInitialState(initialHandlers){invariant$1(this.#validateHandlers(initialHandlers),devUtils.formatMessage(`Failed to apply given request handlers: invalid input. Did you forget to spread the request handlers Array?`));let normalizedInitialHandlers=groupHandlersByKind(initialHandlers);return{initialHandlers:normalizedInitialHandlers,handlers:{...normalizedInitialHandlers}}}currentHandlers(){return Object.values(this.getState().handlers).flat().filter(handler=>handler!=null)}getHandlersByKind(kind){return this.getState().handlers[kind]||[]}use(nextHandlers){if(invariant$1(this.#validateHandlers(nextHandlers),devUtils.formatMessage(`[MSW] Failed to call "use()" with the given request handlers: invalid input. Did you forget to spread the array of request handlers?`)),nextHandlers.length===0)return;let{handlers}=this.getState(),overrides=groupHandlersByKind(nextHandlers);for(let kind in overrides){let overridesForKind=overrides[kind],existingForKind=handlers[kind];handlers[kind]=existingForKind?[...overridesForKind,...existingForKind]:overridesForKind}this.setState({handlers})}reset(nextHandlers){invariant$1(nextHandlers.length>0?this.#validateHandlers(nextHandlers):!0,devUtils.formatMessage(`Failed to replace initial handlers during reset: invalid handlers. Did you forget to spread the handlers array?`));for(let handler of this.currentHandlers())`reset`in handler&&handler.reset();let{initialHandlers}=this.getState();if(nextHandlers.length===0){this.setState({handlers:{...initialHandlers}});return}let normalizedNextHandlers=groupHandlersByKind(nextHandlers);this.setState({initialHandlers:normalizedNextHandlers,handlers:{...normalizedNextHandlers}})}restore(){for(let handler of this.currentHandlers())`restore`in handler&&handler.restore()}#validateHandlers(handlers){return handlers.every(handler=>!Array.isArray(handler))}},InMemoryHandlersController=class extends HandlersController{#handlers;#initialHandlers;constructor(initialHandlers){super();let initialState=this.getInitialState(initialHandlers);this.#initialHandlers=initialState.initialHandlers,this.#handlers=initialState.handlers}getState(){return{initialHandlers:this.#initialHandlers,handlers:this.#handlers}}setState(nextState){nextState.initialHandlers&&(this.#initialHandlers=nextState.initialHandlers),nextState.handlers&&(this.#handlers=nextState.handlers)}},Disposable=class{subscriptions=[];dispose(){let subscription,errors=[];for(;subscription=this.subscriptions.shift();)try{subscription()}catch(error){error instanceof Error&&errors.push(error)}errors.length>0&&console.error(AggregateError(errors,devUtils.formatMessage(`Failed to dispose of some side effects. This is likely an issue with MSW, please report it on GitHub: https://github.com/mswjs/msw/issues`)))}};function toReadonlyArray(source){let clone=[...source];return Object.freeze(clone),clone}const executeHandlers=async({request,requestId,handlers,resolutionContext})=>{let matchingHandler=null,result=null;for(let handler of handlers)if(result=await handler.run({request,requestId,resolutionContext}),result!==null&&(matchingHandler=handler),result?.response)break;return matchingHandler?{handler:matchingHandler,parsedResult:result?.parsedResult,response:result?.response}:null};function isStringEqual(actual,expected){return actual.toLowerCase()===expected.toLowerCase()}function getStatusCodeColor(status){return status<300?`#69AB32`:status<400?`#F0BB4B`:`#E95F5D`}async function serializeRequest(request){let requestText=await request.clone().text();return{url:new URL(request.url),method:request.method,headers:Object.fromEntries(request.headers.entries()),body:requestText}}const{message}=statuses_default;async function serializeResponse(response){let responseClone=response.clone(),responseText=await responseClone.text(),responseStatus=responseClone.status||200;return{status:responseStatus,statusText:responseClone.statusText||message[responseStatus]||`OK`,headers:Object.fromEntries(responseClone.headers.entries()),body:responseText}}var __create=Object.create,__defProp$2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__copyProps=(to,from,except,desc)=>{if(from&&typeof from==`object`||typeof from==`function`)for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp$2(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},allCookie=((mod,isNodeMode,target)=>(target=mod==null?{}:__create(__getProtoOf(mod)),__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp$2(target,`default`,{value:mod,enumerable:!0}):target,mod)))(__commonJS({"node_modules/.pnpm/cookie@1.1.1/node_modules/cookie/dist/index.js"(exports){Object.defineProperty(exports,"__esModule",{value:!0}),exports.parseCookie=parseCookie,exports.parse=parseCookie,exports.stringifyCookie=stringifyCookie,exports.stringifySetCookie=stringifySetCookie,exports.serialize=stringifySetCookie,exports.parseSetCookie=parseSetCookie,exports.stringifySetCookie=stringifySetCookie,exports.serialize=stringifySetCookie;var cookieNameRegExp=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,cookieValueRegExp=/^[\u0021-\u003A\u003C-\u007E]*$/,domainValueRegExp=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,pathValueRegExp=/^[\u0020-\u003A\u003D-\u007E]*$/,maxAgeRegExp=/^-?\d+$/,__toString=Object.prototype.toString,NullObject=(()=>{let C=function(){};return C.prototype=Object.create(null),C})();function parseCookie(str,options){let obj=new NullObject,len=str.length;if(len<2)return obj;let dec=options?.decode||decode,index=0;do{let eqIdx=eqIndex(str,index,len);if(eqIdx===-1)break;let endIdx=endIndex(str,index,len);if(eqIdx>endIdx){index=str.lastIndexOf(`;`,eqIdx-1)+1;continue}let key=valueSlice(str,index,eqIdx);obj[key]===void 0&&(obj[key]=dec(valueSlice(str,eqIdx+1,endIdx))),index=endIdx+1}while(index<len);return obj}function stringifyCookie(cookie2,options){let enc=options?.encode||encodeURIComponent,cookieStrings=[];for(let name of Object.keys(cookie2)){let val=cookie2[name];if(val===void 0)continue;if(!cookieNameRegExp.test(name))throw TypeError(`cookie name is invalid: ${name}`);let value=enc(val);if(!cookieValueRegExp.test(value))throw TypeError(`cookie val is invalid: ${val}`);cookieStrings.push(`${name}=${value}`)}return cookieStrings.join(`; `)}function stringifySetCookie(_name,_val,_opts){let cookie2=typeof _name==`object`?_name:{..._opts,name:_name,value:String(_val)},enc=(typeof _val==`object`?_val:_opts)?.encode||encodeURIComponent;if(!cookieNameRegExp.test(cookie2.name))throw TypeError(`argument name is invalid: ${cookie2.name}`);let value=cookie2.value?enc(cookie2.value):``;if(!cookieValueRegExp.test(value))throw TypeError(`argument val is invalid: ${cookie2.value}`);let str=cookie2.name+`=`+value;if(cookie2.maxAge!==void 0){if(!Number.isInteger(cookie2.maxAge))throw TypeError(`option maxAge is invalid: ${cookie2.maxAge}`);str+=`; Max-Age=`+cookie2.maxAge}if(cookie2.domain){if(!domainValueRegExp.test(cookie2.domain))throw TypeError(`option domain is invalid: ${cookie2.domain}`);str+=`; Domain=`+cookie2.domain}if(cookie2.path){if(!pathValueRegExp.test(cookie2.path))throw TypeError(`option path is invalid: ${cookie2.path}`);str+=`; Path=`+cookie2.path}if(cookie2.expires){if(!isDate(cookie2.expires)||!Number.isFinite(cookie2.expires.valueOf()))throw TypeError(`option expires is invalid: ${cookie2.expires}`);str+=`; Expires=`+cookie2.expires.toUTCString()}if(cookie2.httpOnly&&(str+=`; HttpOnly`),cookie2.secure&&(str+=`; Secure`),cookie2.partitioned&&(str+=`; Partitioned`),cookie2.priority)switch(typeof cookie2.priority==`string`?cookie2.priority.toLowerCase():void 0){case`low`:str+=`; Priority=Low`;break;case`medium`:str+=`; Priority=Medium`;break;case`high`:str+=`; Priority=High`;break;default:throw TypeError(`option priority is invalid: ${cookie2.priority}`)}if(cookie2.sameSite)switch(typeof cookie2.sameSite==`string`?cookie2.sameSite.toLowerCase():cookie2.sameSite){case!0:case`strict`:str+=`; SameSite=Strict`;break;case`lax`:str+=`; SameSite=Lax`;break;case`none`:str+=`; SameSite=None`;break;default:throw TypeError(`option sameSite is invalid: ${cookie2.sameSite}`)}return str}function parseSetCookie(str,options){let dec=options?.decode||decode,len=str.length,endIdx=endIndex(str,0,len),eqIdx=eqIndex(str,0,endIdx),setCookie=eqIdx===-1?{name:``,value:dec(valueSlice(str,0,endIdx))}:{name:valueSlice(str,0,eqIdx),value:dec(valueSlice(str,eqIdx+1,endIdx))},index=endIdx+1;for(;index<len;){let endIdx2=endIndex(str,index,len),eqIdx2=eqIndex(str,index,endIdx2),attr=eqIdx2===-1?valueSlice(str,index,endIdx2):valueSlice(str,index,eqIdx2),val=eqIdx2===-1?void 0:valueSlice(str,eqIdx2+1,endIdx2);switch(attr.toLowerCase()){case`httponly`:setCookie.httpOnly=!0;break;case`secure`:setCookie.secure=!0;break;case`partitioned`:setCookie.partitioned=!0;break;case`domain`:setCookie.domain=val;break;case`path`:setCookie.path=val;break;case`max-age`:val&&maxAgeRegExp.test(val)&&(setCookie.maxAge=Number(val));break;case`expires`:if(!val)break;let date=new Date(val);Number.isFinite(date.valueOf())&&(setCookie.expires=date);break;case`priority`:if(!val)break;let priority=val.toLowerCase();(priority===`low`||priority===`medium`||priority===`high`)&&(setCookie.priority=priority);break;case`samesite`:if(!val)break;let sameSite=val.toLowerCase();(sameSite===`lax`||sameSite===`strict`||sameSite===`none`)&&(setCookie.sameSite=sameSite)}index=endIdx2+1}return setCookie}function endIndex(str,min,len){let index=str.indexOf(`;`,min);return index===-1?len:index}function eqIndex(str,min,max){let index=str.indexOf(`=`,min);return index<max?index:-1}function valueSlice(str,min,max){let start=min,end=max;do{let code=str.charCodeAt(start);if(code!==32&&code!==9)break}while(++start<end);for(;end>start;){let code=str.charCodeAt(end-1);if(code!==32&&code!==9)break;end--}return str.slice(start,end)}function decode(str){if(str.indexOf(`%`)===-1)return str;try{return decodeURIComponent(str)}catch{return str}}function isDate(val){return __toString.call(val)===`[object Date]`}}})(),1),cookie=allCookie.default||allCookie,parse$1=cookie.parse,serialize$7=cookie.serialize,import_cjs=__commonJSMin((exports=>{function shareSameDomainSuffix(hostname,vhost){return hostname.endsWith(vhost)?hostname.length===vhost.length||hostname[hostname.length-vhost.length-1]===`.`:!1}function extractDomainWithSuffix(hostname,publicSuffix){let publicSuffixIndex=hostname.length-publicSuffix.length-2,lastDotBeforeSuffixIndex=hostname.lastIndexOf(`.`,publicSuffixIndex);return lastDotBeforeSuffixIndex===-1?hostname:hostname.slice(lastDotBeforeSuffixIndex+1)}function getDomain$1(suffix,hostname,options){if(options.validHosts!==null){let validHosts=options.validHosts;for(let vhost of validHosts)if(shareSameDomainSuffix(hostname,vhost))return vhost}let numberOfLeadingDots=0;if(hostname.startsWith(`.`))for(;numberOfLeadingDots<hostname.length&&hostname[numberOfLeadingDots]===`.`;)numberOfLeadingDots+=1;return suffix.length===hostname.length-numberOfLeadingDots?null:extractDomainWithSuffix(hostname,suffix)}function getDomainWithoutSuffix$1(domain,suffix){return domain.slice(0,-suffix.length-1)}let CONTROL_CHARS=/[\t\n\r]/g,extractedHostnameValidated=!1;function isValidHostnameChar(code){return code>=97&&code<=122||code>=48&&code<=57||code>127||code>=65&&code<=90||code===45||code===95}function getSpecialScheme(url,schemeStart,colonIndex){let length=colonIndex-schemeStart,c0=url.charCodeAt(schemeStart)|32;if(length===2)return+(c0===119&&(url.charCodeAt(schemeStart+1)|32)==115);if(length===3){let c1=url.charCodeAt(schemeStart+1)|32,c2=url.charCodeAt(schemeStart+2)|32;return+(c0===119&&c1===115&&c2===115||c0===102&&c1===116&&c2===112)}if(length===4){let c1=url.charCodeAt(schemeStart+1)|32,c2=url.charCodeAt(schemeStart+2)|32,c3=url.charCodeAt(schemeStart+3)|32;return c0===104&&c1===116&&c2===116&&c3===112?1:c0===102&&c1===105&&c2===108&&c3===101?2:0}return length===5?+(c0===104&&(url.charCodeAt(schemeStart+1)|32)==116&&(url.charCodeAt(schemeStart+2)|32)==116&&(url.charCodeAt(schemeStart+3)|32)==112&&(url.charCodeAt(schemeStart+4)|32)==115):0}function extractHostname(url,urlIsValidHostname,validate=!1){let start=0,end=url.length,hasUpper=!1,isSpecial=!1;if(extractedHostnameValidated=!1,!urlIsValidHostname){if(url.startsWith(`data:`))return null;for(;start<url.length&&url.charCodeAt(start)<=32;)start+=1;for(;end>start+1&&url.charCodeAt(end-1)<=32;)--end;if(url.charCodeAt(start)===47&&url.charCodeAt(start+1)===47)start+=2;else{let indexOfProtocol=url.indexOf(`:/`,start);if(indexOfProtocol!==-1){let special=getSpecialScheme(url,start,indexOfProtocol);if(special===1)for(isSpecial=!0,start=indexOfProtocol+2;url.charCodeAt(start)===47||url.charCodeAt(start)===92;)start+=1;else if(special===2){isSpecial=!0,start=indexOfProtocol+1;let slashes=0;for(;(url.charCodeAt(start)===47||url.charCodeAt(start)===92)&&slashes<2;)start+=1,slashes+=1;if(slashes<2)return null}else{for(let i=start;i<indexOfProtocol;i+=1){let code=url.charCodeAt(i)|32;if(!(code>=97&&code<=122||code>=48&&code<=57||code===46||code===45||code===43)){let raw=url.charCodeAt(i);return raw===9||raw===10||raw===13?extractHostname(url.replace(CONTROL_CHARS,``),urlIsValidHostname,validate):null}}if(url.charCodeAt(indexOfProtocol+2)===47)start=indexOfProtocol+3;else return null}}else if(url.charCodeAt(start)!==91){let indexOfColon=-1;for(let i=start;i<end;i+=1){let code=url.charCodeAt(i);if(code===9||code===10||code===13)return extractHostname(url.replace(CONTROL_CHARS,``),urlIsValidHostname,validate);if(code===58){indexOfColon=i;break}if(code===47||code===92||code===63||code===35)break}if(indexOfColon!==-1){let hasIdentifier=!1;for(let i=indexOfColon+1;i<end;i+=1){let code=url.charCodeAt(i);if(code===47||code===92||code===63||code===35)break;if(code===64){hasIdentifier=!0;break}}if(!hasIdentifier){let allDigits=!0,i=indexOfColon+1;for(;i<end;i+=1){let code=url.charCodeAt(i);if(code===47||code===92||code===63||code===35)break;if(code<48||code>57){allDigits=!1;break}}if(i===indexOfColon+1&&(allDigits=!1),!allDigits){let special=getSpecialScheme(url,start,indexOfColon);if(special===0){let isBareIpv6=!1;for(let j=indexOfColon+1;j<end;j+=1){let code=url.charCodeAt(j);if(code===47||code===92||code===63||code===35)break;if(code===58){isBareIpv6=!0;break}}if(!isBareIpv6)return null}else if(isSpecial=!0,start=indexOfColon+1,special===2){let slashes=0;for(;(url.charCodeAt(start)===47||url.charCodeAt(start)===92)&&slashes<2;)start+=1,slashes+=1;if(slashes<2)return null}else for(;url.charCodeAt(start)===47||url.charCodeAt(start)===92;)start+=1}}}}}let indexOfIdentifier=-1,indexOfClosingBracket=-1,indexOfPort=-1,indexOfFirstColon=-1,hasControl=!1,vValid=validate,vLastDot=start-1,vLastCode=-1;if(validate&&start<end){let c0=url.charCodeAt(start);(!(isValidHostnameChar(c0)||c0===46||c0===95)||c0===45)&&(vValid=!1)}for(let i=start;i<end;i+=1){let code=url.charCodeAt(i);if(code<64){if(code===47||code===35||code===63){end=i;break}code===58?(indexOfFirstColon===-1&&(indexOfFirstColon=i),indexOfPort=i):code===9||code===10||code===13?hasControl=!0:validate&&(code===46?((i-vLastDot>64||vLastCode===46||vLastCode===45)&&(vValid=!1),vLastDot=i):(code<48||code>57)&&(code!==45||vLastCode===46)&&(vValid=!1))}else if(isSpecial&&code===92){end=i;break}else code===64?(indexOfIdentifier=i,indexOfFirstColon=-1):code===93?indexOfClosingBracket=i:code>=65&&code<=90?hasUpper=!0:validate&&!isValidHostnameChar(code)&&(vValid=!1);validate&&(vLastCode=code)}if(hasControl)return extractHostname(url.replace(CONTROL_CHARS,``),urlIsValidHostname,validate);if(indexOfIdentifier!==-1&&indexOfIdentifier>=start&&indexOfIdentifier<end&&(start=indexOfIdentifier+1),url.charCodeAt(start)===91)return indexOfClosingBracket===-1?null:url.slice(start+1,indexOfClosingBracket).toLowerCase();if(indexOfPort!==-1&&indexOfPort>start&&indexOfPort<end&&indexOfFirstColon===indexOfPort&&(end=indexOfPort),start>=end)return null;validate&&vValid&&indexOfIdentifier===-1&&indexOfPort===-1&&indexOfClosingBracket===-1&&url.charCodeAt(end-1)!==46&&end-start<=255&&end-vLastDot-1<=63&&vLastCode!==45&&(extractedHostnameValidated=!0)}for(;end>start+1&&url.charCodeAt(end-1)===46;)--end;let hostname=start!==0||end!==url.length?url.slice(start,end):url;return hasUpper?hostname.toLowerCase():hostname}function isProbablyIpv4(hostname){if(hostname.length<7||hostname.length>15)return!1;let numberOfDots=0;for(let i=0;i<hostname.length;i+=1){let code=hostname.charCodeAt(i);if(code===46)numberOfDots+=1;else if(code<48||code>57)return!1}return numberOfDots===3&&hostname.charCodeAt(0)!==46&&hostname.charCodeAt(hostname.length-1)!==46}function isProbablyIpv6(hostname){if(hostname.length<3)return!1;let start=+!!hostname.startsWith(`[`),end=hostname.length;if(hostname[end-1]===`]`&&--end,end-start>39)return!1;let hasColon=!1;for(;start<end;start+=1){let code=hostname.charCodeAt(start);if(code===58)hasColon=!0;else if(!(code>=48&&code<=57||code>=97&&code<=102||code>=65&&code<=70))return!1}return hasColon}function isIp(hostname){return isProbablyIpv6(hostname)||isProbablyIpv4(hostname)}let SPECIAL_USE_DOMAINS=[`test`,`localhost`,`invalid`,`example`,`example.com`,`example.net`,`example.org`,`local`,`onion`,`alt`,`home.arpa`,`ipv4only.arpa`,`resolver.arpa`,`service.arpa`,`6tisch.arpa`,`eap.arpa`];function isSpecialUse(hostname){for(let name of SPECIAL_USE_DOMAINS)if(hostname.endsWith(name)&&(hostname.length===name.length||hostname.charCodeAt(hostname.length-name.length-1)===46))return!0;return!1}function isValidAscii(code){return code>=97&&code<=122||code>=48&&code<=57||code>127}function isValidHostname(hostname){if(hostname.length>255||hostname.length===0||!isValidAscii(hostname.charCodeAt(0))&&hostname.charCodeAt(0)!==46&&hostname.charCodeAt(0)!==95)return!1;let lastDotIndex=-1,lastCharCode=-1,len=hostname.length;for(let i=0;i<len;i+=1){let code=hostname.charCodeAt(i);if(code===46){if(i-lastDotIndex>64||lastCharCode===46||lastCharCode===45)return!1;lastDotIndex=i}else if(!(isValidAscii(code)||code===45||code===95)||code===45&&lastCharCode===46)return!1;lastCharCode=code}return len-lastDotIndex-1<=63&&lastCharCode!==45}function setDefaultsImpl({allowIcannDomains=!0,allowPrivateDomains=!1,detectIp=!0,detectSpecialUse=!1,extractHostname=!0,mixedInputs=!0,validHosts=null,validateHostname=!0}){return{allowIcannDomains,allowPrivateDomains,detectIp,detectSpecialUse,extractHostname,mixedInputs,validHosts,validateHostname}}let DEFAULT_OPTIONS=setDefaultsImpl({});function setDefaults(options){return options===void 0?DEFAULT_OPTIONS:setDefaultsImpl(options)}function getSubdomain$1(hostname,domain){return domain.length===hostname.length?``:hostname.slice(0,-domain.length-1)}function getEmptyResult(){return{domain:null,domainWithoutSuffix:null,hostname:null,isIcann:null,isIp:null,isPrivate:null,isSpecialUse:null,publicSuffix:null,subdomain:null}}function resetResult(result){result.domain=null,result.domainWithoutSuffix=null,result.hostname=null,result.isIcann=null,result.isIp=null,result.isPrivate=null,result.isSpecialUse=null,result.publicSuffix=null,result.subdomain=null}function parseImpl(url,step,suffixLookup,partialOptions,result){let options=setDefaults(partialOptions);if(typeof url!=`string`)return result;let urlIsValid=!1;return options.extractHostname?options.mixedInputs?(urlIsValid=isValidHostname(url),result.hostname=extractHostname(url,urlIsValid,options.validateHostname)):result.hostname=extractHostname(url,!1,options.validateHostname):result.hostname=url,options.detectIp&&result.hostname!==null&&(result.isIp=isIp(result.hostname),result.isIp)?result:options.validateHostname&&options.extractHostname&&result.hostname!==null&&!(urlIsValid&&result.hostname===url)&&!extractedHostnameValidated&&!isValidHostname(result.hostname)?(result.hostname=null,result):(step===0||result.hostname===null||(step===5&&options.detectSpecialUse&&(result.isSpecialUse=isSpecialUse(result.hostname)),suffixLookup(result.hostname,options,result),step===2||result.publicSuffix===null)||(result.domain=getDomain$1(result.publicSuffix,result.hostname,options),step===3||result.domain===null)||(result.subdomain=getSubdomain$1(result.hostname,result.domain),step===4)||(result.domainWithoutSuffix=getDomainWithoutSuffix$1(result.domain,result.publicSuffix)),result)}function fastPathLookup(hostname,options,out){if(!options.allowPrivateDomains&&hostname.length>3){let last=hostname.length-1,c3=hostname.charCodeAt(last),c2=hostname.charCodeAt(last-1),c1=hostname.charCodeAt(last-2),c0=hostname.charCodeAt(last-3);if(c3===109&&c2===111&&c1===99&&c0===46)return out.isIcann=!0,out.isPrivate=!1,out.publicSuffix=`com`,!0;if(c3===103&&c2===114&&c1===111&&c0===46)return out.isIcann=!0,out.isPrivate=!1,out.publicSuffix=`org`,!0;if(c3===117&&c2===100&&c1===101&&c0===46)return out.isIcann=!0,out.isPrivate=!1,out.publicSuffix=`edu`,!0;if(c3===118&&c2===111&&c1===103&&c0===46)return out.isIcann=!0,out.isPrivate=!1,out.publicSuffix=`gov`,!0;if(c3===116&&c2===101&&c1===110&&c0===46)return out.isIcann=!0,out.isPrivate=!1,out.publicSuffix=`net`,!0;if(c3===101&&c2===100&&c1===46)return out.isIcann=!0,out.isPrivate=!1,out.publicSuffix=`de`,!0}return!1}let nodeFlags=new Uint8Array([1,2,1,1,1,1,1,1,1,1,1,1,0,2,2,2,0,2,2,0,2,0,0,1,0,0,2,1,1,1,1,1,1,0,0,0,1,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,0,1,0,1,1,0,1,1,0,0,0,0,0,0,1,1,1,0,2,0,0,0,0,0,0,0,2,0,2,2,0,0,2,2,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,2,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,2,2,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,2,2,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,0,1,0,2,2,0,0,0,2,0,1,1,0,2,0,2,2,0,1,1,1,1,1,1,1,1,0,1,1,1,0,1,1,1,1,0,0,0,0,1,0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,2,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,2,2,0,2,2,0,0,0,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,0,2,0,2,2,2,2,0,0,0,0,2,0,0,0,0,0,0,0,2,2,0,0,0,2,2,1,1,1,1,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,2,2,0,0,2,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,2,2,1,2,1,1,1,2,1,1,1,1,1,0,1,1,1,1,2,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,2,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0,0,0,0,0]),edgeStart=new Uint16Array([0,0,0,10,11,18,106,111,117,124,130,136,145,146,147,148,149,150,151,153,154,155,157,159,225,238,240,241,242,257,264,265,268,269,270,273,275,294,295,297,306,311,328,329,332,334,335,337,371,372,374,377,378,382,384,388,391,423,426,439,440,448,449,451,461,475,476,477,486,487,524,529,545,565,571,612,613,640,667,668,816,822,825,826,827,832,837,846,868,869,870,871,872,873,874,892,894,895,898,900,901,903,905,920,935,940,941,943,944,945,946,947,949,952,957,958,959,961,962,965,968,969,970,983,985,997,1008,1016,1018,1059,1062,1066,1067,1069,1072,1083,1085,1095,1097,1103,1105,1106,1108,1111,1112,1113,1165,1167,1169,1189,1190,1191,1192,1194,1205,1236,1247,1259,1268,1275,1280,1293,1304,1317,1318,1329,1363,1364,1365,1380,1395,1467,1468,1470,1471,1505,1506,1507,1508,1511,1515,1517,1546,1547,1555,1556,1557,1559,1561,1562,1564,1565,1566,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1592,1593,1594,1596,2051,2054,2055,2057,2064,2071,2081,2085,2096,2097,2098,2110,2111,2113,2115,2116,2123,2124,2126,2127,2129,2130,2131,2132,2133,2207,2209,2230,2231,2232,2234,2260,2261,2312,2313,2315,2322,2328,2338,2348,2401,2402,2403,2413,2427,2428,2431,2438,2439,2447,2448,2449,2450,2451,2462,2463,2464,2466,2467,2468,2470,2480,2492,2498,2530,2534,2536,2537,2539,2540,2551,2552,2554,2562,2569,2575,2580,2581,2587,2590,2596,2603,2604,2611,2619,2620,2621,2659,2665,2680,2681,2686,2704,2735,2753,2755,2758,2766,2768,2775,2827,2851,2852,2853,2854,2855,2856,2857,2864,2865,2866,2867,2868,2869,2871,2872,2876,2956,2969,2970,3407,3411,3425,3477,3505,3527,3585,3607,3622,3685,3736,3774,3810,3835,3977,4023,4074,4093,4127,4142,4162,4192,4223,4246,4277,4307,4339,4366,4441,4463,4501,4511,4545,4564,4590,4632,4682,4708,4777,4778,4780,4803,4826,4862,4893,4910,4967,4980,5004,5033,5035,5069,5085,5113,5418,5427,5436,5443,5460,5464,5470,5509,5511,5518,5525,5534,5541,5542,5553,5556,5571,5572,5581,5582,5591,5600,5606,5608,5609,5610,5646,5647,5649,5657,5664,5677,5681,5683,5684,5690,5697,5711,5721,5726,5734,5742,5748,5749,5753,5755,5756,5768,5769,5770,5771,5773,5774,5777,5779,5782,5786,5787,5788,5794,5795,5796,5798,5800,5802,5803,5804,5807,5809,5812,5813,5815,6013,6020,6021,6031,6036,6053,6067,6076,6077,6078,6082,6083,6085,6087,6093,6094,6097,6098,6100,6101,6102,7002,7004,7008,7026,7035,7038,7045,7046,7048,7049,7050,7052,7104,7105,7108,7109,7226,7227,7238,7249,7256,7259,7268,7269,7270,7285,7340,7531,7533,7534,7536,7541,7554,7569,7576,7585,7588,7591,7598,7606,7610,7611,7612,7626,7630,7639,7640,7641,7645,7680,7681,7698,7705,7713,7714,7719,7727,7771,7772,7778,7781,7792,7797,7798,7801,7803,7838,7839,7845,7852,7853,7862,7871,7886,7890,7942,7943,7948,7950,7953,7955,7956,7957,7966,7980,7988,8002,8014,8015,8017,8019,8041,8052,8058,8059,8071,8083,8170,8182,8190,8193,8199,8224,8227,8228,8229,8231,8234,8237,8248,8250,8252,8280,8354,8361,8365,8366,8375,8397,8398,8403,8404,8483,8485,8487,8496,8500,8506,8512,8518,8528,8533,8534,8552,8563,8568,8573,8583,8589,8593,8599,8605,10214,10215,10216,10223,10225]),edgeLength=new Uint8Array([3,3,3,3,3,3,3,3,5,8,8,2,2,3,3,3,3,3,8,5,5,5,5,5,3,3,5,5,9,12,19,8,19,8,11,9,9,8,7,7,6,8,9,16,10,7,7,11,8,6,6,9,7,11,7,14,4,4,4,4,4,4,10,7,6,6,6,6,10,10,6,10,10,22,11,9,10,10,10,9,10,8,7,7,7,8,21,13,11,11,9,10,9,13,10,8,8,9,12,9,7,10,7,7,13,7,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,8,6,3,3,3,3,3,3,2,5,3,3,3,7,2,2,2,2,2,2,3,3,3,1,1,7,8,5,2,2,7,2,2,1,4,1,11,9,9,5,5,8,5,5,5,5,5,5,5,3,3,3,3,3,5,11,9,9,13,7,14,7,6,6,6,7,6,6,6,6,6,10,7,11,9,4,4,4,4,4,6,6,6,6,6,8,7,10,9,9,9,8,9,8,7,10,6,9,8,10,10,7,8,1,9,10,12,12,12,10,9,9,10,10,9,9,1,1,5,3,3,3,3,3,3,3,3,3,3,3,3,6,6,6,4,3,3,3,7,4,4,4,3,3,6,7,3,4,1,2,2,2,6,1,2,2,2,2,2,12,5,3,8,9,13,4,4,13,9,9,11,7,3,12,9,2,2,2,3,3,3,3,3,8,2,2,3,3,3,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,4,3,7,10,15,7,15,15,20,15,9,10,10,12,14,14,14,12,12,12,12,12,14,14,10,10,10,10,14,9,9,9,10,14,14,14,13,13,9,9,9,9,9,9,7,8,6,8,8,6,8,13,8,8,6,13,8,11,13,8,6,13,8,6,9,10,10,12,14,14,14,12,12,12,12,14,14,10,10,10,10,9,9,9,10,14,14,11,13,13,9,9,9,9,9,9,2,6,9,2,2,3,3,3,3,3,3,3,3,3,4,4,4,2,3,3,3,3,3,3,7,7,2,3,2,2,5,3,3,3,3,3,3,4,2,2,2,2,2,2,3,3,3,3,3,3,3,4,5,7,2,2,12,8,10,8,10,7,18,4,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,2,2,3,3,3,5,5,3,8,8,6,8,6,6,4,6,7,7,7,10,11,2,5,5,3,3,3,3,3,3,5,5,6,11,10,7,7,7,4,4,4,2,3,3,3,3,3,2,7,5,5,3,3,3,3,3,3,3,3,7,7,7,11,7,6,9,6,6,8,10,8,6,8,13,4,4,4,4,4,10,8,11,8,8,8,10,10,7,10,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,2,2,2,2,2,2,5,5,5,5,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,10,13,7,8,7,11,8,8,6,9,8,8,6,6,6,8,8,6,6,6,6,6,9,7,6,4,4,4,4,4,4,4,6,6,6,9,7,8,10,8,8,2,3,3,3,3,3,2,8,9,9,2,2,2,3,3,3,2,3,3,3,9,2,2,3,3,3,3,3,3,5,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,12,5,5,3,5,4,2,3,2,4,3,9,2,2,2,2,2,5,5,3,8,8,13,6,10,9,4,7,9,11,2,3,7,3,3,4,1,3,4,2,9,3,3,12,5,3,7,10,10,7,4,4,6,14,7,9,7,13,2,2,2,2,2,2,3,3,3,3,3,8,15,4,4,2,3,3,3,7,4,9,9,2,3,3,3,5,3,2,2,7,2,7,6,6,7,2,4,2,2,2,2,2,2,8,8,8,9,5,2,3,3,3,3,3,3,10,7,4,4,4,4,3,4,2,3,3,3,3,3,10,7,4,4,4,4,2,3,3,3,3,10,7,4,4,4,4,3,9,6,6,6,9,13,9,2,2,2,8,7,9,5,3,3,3,5,5,13,12,9,10,7,8,7,6,8,6,11,12,7,9,10,4,4,7,8,11,6,7,9,8,7,10,8,9,15,7,8,5,4,7,2,3,3,3,2,14,10,2,14,10,2,14,3,9,13,13,10,14,16,17,11,2,14,2,14,3,9,13,10,14,16,17,11,14,10,14,2,7,3,10,7,14,10,2,14,10,9,9,17,6,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,10,10,10,12,9,4,10,11,8,8,8,7,9,5,3,3,3,3,3,3,3,3,5,8,4,4,4,4,4,4,6,16,3,3,14,3,14,2,14,9,13,10,10,14,16,17,11,6,9,10,10,12,14,14,14,12,12,12,12,14,14,10,10,10,10,14,9,9,9,10,14,14,14,9,9,9,9,9,9,2,14,9,13,10,10,14,16,17,11,6,2,14,9,17,13,10,10,14,16,17,11,6,2,14,9,13,10,14,16,17,11,2,14,9,13,10,16,11,2,14,10,19,7,2,14,9,13,10,19,10,7,14,16,17,11,6,2,14,9,13,10,19,7,14,16,17,11,2,14,9,13,17,13,10,10,14,16,17,11,6,3,2,14,9,13,10,10,14,16,17,11,6,9,10,12,14,14,14,12,12,12,12,12,14,14,14,10,10,10,14,9,9,9,9,14,14,14,13,13,14,9,9,9,9,9,9,4,11,2,14,9,13,17,13,10,19,10,7,14,16,17,11,6,2,14,9,13,17,13,10,19,10,7,14,16,17,11,6,2,9,10,10,7,17,3,3,12,12,16,15,15,12,14,14,14,20,20,13,12,12,12,12,12,12,20,25,14,14,12,12,10,10,10,10,9,9,9,25,4,9,17,10,7,14,16,21,13,13,14,20,14,13,17,24,9,12,13,25,13,21,20,17,9,9,9,9,9,9,12,17,4,4,9,9,9,10,10,12,14,14,14,12,12,12,12,12,14,14,10,10,10,10,14,9,9,9,10,14,14,14,13,13,9,9,9,9,9,9,1,5,8,7,11,11,1,3,3,3,4,8,9,10,14,14,12,12,12,12,14,14,10,10,10,10,14,9,9,9,10,14,14,14,13,13,9,9,9,9,9,7,4,4,4,4,4,4,4,4,4,4,9,12,6,14,4,12,7,2,2,1,2,7,6,4,4,4,6,8,8,7,4,5,6,3,3,3,3,4,16,8,5,4,3,3,3,5,2,2,8,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,11,12,7,7,13,9,10,17,12,8,9,7,8,5,12,10,13,14,5,5,5,13,5,5,5,3,3,3,5,16,5,5,5,5,5,7,12,14,8,12,8,10,12,9,11,7,9,7,10,7,13,9,7,12,8,17,7,7,16,10,13,13,8,10,10,14,17,7,16,16,15,8,10,10,12,17,17,7,17,14,7,10,17,8,7,7,7,8,15,15,7,14,10,10,10,11,11,7,7,13,8,10,7,16,7,8,7,14,17,12,10,11,21,8,9,7,13,9,8,13,6,12,7,6,13,10,10,10,8,18,9,17,13,10,12,6,13,6,11,8,13,10,13,18,13,11,13,8,16,7,10,8,16,12,10,8,8,14,11,8,15,8,8,7,7,12,7,8,9,14,15,8,9,10,9,15,7,8,8,12,13,9,10,15,15,13,7,10,10,20,7,6,9,6,6,14,11,14,11,12,9,10,16,16,12,7,11,28,8,11,10,7,21,8,7,9,4,4,4,17,7,8,6,9,6,6,13,6,6,6,6,18,20,14,8,11,12,9,10,13,15,19,8,9,12,7,10,16,12,9,9,9,14,12,11,9,12,11,18,9,9,9,10,7,7,16,8,9,7,13,12,10,18,7,8,11,7,7,8,8,13,7,7,7,11,15,13,11,7,8,15,11,7,8,18,14,13,18,15,10,12,12,9,7,11,11,8,7,10,8,14,12,10,18,7,10,9,7,8,13,10,14,10,8,8,23,7,7,11,12,12,17,7,7,11,11,17,16,16,7,8,11,14,14,8,10,7,7,16,16,13,9,11,9,15,15,11,11,7,7,14,7,9,7,7,16,10,13,10,11,14,7,11,10,11,7,11,10,11,15,11,15,10,12,17,10,14,13,11,11,12,13,10,7,13,10,16,12,21,9,10,10,7,11,14,17,7,7,8,11,12,8,15,14,14,8,17,12,10,10,7,9,11,7,10,7,11,18,7,11,7,12,11,8,8,14,12,7,8,15,3,7,7,5,2,9,2,2,2,2,2,2,2,3,3,3,3,3,3,3,2,5,3,3,3,3,3,3,4,4,3,3,3,3,3,3,5,11,6,4,7,10,7,7,11,1,10,2,2,3,3,3,3,3,3,3,3,5,7,3,5,6,3,3,5,2,2,5,3,4,13,11,3,3,6,3,5,14,2,2,3,8,2,2,12,5,18,5,3,3,3,16,5,5,5,10,7,13,12,13,9,12,14,19,9,9,21,9,9,10,6,9,6,15,10,6,12,8,6,10,15,4,4,6,6,9,9,12,16,14,23,7,7,7,14,9,7,7,11,14,10,7,10,10,10,12,6,11,10,13,11,15,11,7,12,10,3,7,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,4,3,7,2,5,5,3,3,5,5,5,5,7,6,6,6,4,4,4,4,4,4,6,6,6,6,6,7,10,2,2,2,5,5,5,5,3,3,3,3,3,5,5,10,9,11,8,7,12,8,9,7,6,13,11,6,13,7,9,9,4,4,4,4,4,6,10,7,8,13,8,8,9,14,7,8,10,7,7,7,9,6,9,7,2,12,5,3,3,13,4,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,4,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,8,4,4,4,4,4,4,4,4,4,4,4,4,9,3,3,3,3,3,3,3,3,3,3,4,2,2,2,5,3,3,3,3,3,3,3,3,4,4,1,7,6,4,12,3,3,3,3,3,8,7,3,3,3,3,3,3,4,4,11,14,2,8,3,5,5,8,10,8,6,4,7,17,7,4,5,2,6,3,2,4,4,2,12,5,5,3,15,13,10,8,11,2,2,3,3,3,3,3,3,3,3,4,4,5,3,3,3,3,4,18,2,12,5,3,3,3,3,3,5,16,8,8,9,6,6,4,4,4,4,31,6,6,10,11,21,10,9,7,10,7,7,2,4,4,4,4,6,5,3,3,4,3,3,3,3,3,3,3,3,3,6,6,6,2,2,2,5,3,3,3,7,7,4,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,8,2,3,3,3,3,3,5,9,11,3,3,3,3,4,4,3,3,3,3,3,5,10,9,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,2,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,11,10,10,10,10,10,11,10,11,10,11,10,9,9,11,3,3,3,3,3,3,5,3,7,8,8,7,6,6,11,4,4,4,7,8,9,9,2,3,7,4,4,2,5,5,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,2,2,5,5,5,5,5,3,3,5,5,5,7,7,6,6,6,4,4,4,4,4,4,4,4,4,4,6,6,8,8,1,2,2,2,2,2,2,3,3,3,3,3,3,3,4,4,6,9,12,3,7,10,7,2,2,3,3,3,3,3,4,3,3,2,2,2,2,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,8,8,6,6,8,6,7,4,4,4,4,4,4,6,7,5,5,20,19,8,10,9,7,10,6,8,11,6,6,6,6,13,12,8,6,7,14,11,9,2,5,3,6,2,3,2,2,2,2,2,2,2,5,4,3,7,6,4,7,4,3,6,4,7,2,7,7,7,5,5,5,5,3,3,3,3,3,3,3,3,3,5,9,10,10,11,7,8,20,7,8,9,8,12,6,6,6,8,9,8,12,6,6,8,13,10,12,6,6,7,7,9,6,4,4,4,4,4,4,10,6,6,6,7,14,11,10,7,8,10,8,11,14,11,11,9,7,9,8,11,9,17,10,9,2,2,2,9,3,3,3,3,15,14,9,5,5,2,8,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,15,12,22,19,17,18,18,19,21,7,16,16,5,5,5,5,5,5,5,5,5,5,5,7,5,5,5,5,5,5,5,5,5,5,5,9,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,7,16,11,11,7,7,7,7,17,7,8,12,15,9,19,7,19,8,21,11,12,19,14,22,7,7,7,7,7,7,7,7,7,7,7,16,16,19,24,12,7,14,7,12,7,8,10,10,13,7,12,12,7,7,10,18,15,12,16,7,14,12,17,10,16,17,12,17,25,7,7,7,13,6,9,6,9,18,6,6,11,20,10,6,6,6,6,6,6,17,6,6,6,15,6,6,6,6,6,8,14,11,12,11,15,13,19,17,21,7,18,8,13,13,8,12,8,6,6,13,6,15,15,16,6,6,16,6,6,6,14,6,18,6,6,6,17,18,9,13,15,8,19,8,15,15,18,14,16,4,4,4,4,4,4,4,4,4,4,4,4,6,11,10,11,6,21,23,12,17,12,11,14,13,22,15,15,11,12,14,12,7,12,8,12,14,12,18,10,8,16,19,17,12,14,15,8,19,17,12,13,13,15,18,13,23,24,23,21,17,24,8,21,8,14,14,16,20,14,8,8,15,20,8,19,21,9,8,13,12,13,15,11,8,11,9,9,8,11,8,21,14,21,15,15,13,7,19,7,7,7,7,7,7,16,12,17,18,7,7,11,11,7,9,9,2,2,3,3,2,2,2,3,3,3,3,3,3,3,3,3,3,4,5,5,5,5,5,5,5,5,3,3,10,10,7,9,7,7,7,6,8,6,6,6,6,6,6,6,7,6,8,6,6,9,7,7,7,4,4,4,4,4,4,4,4,8,9,8,7,8,7,8,10,7,5,5,5,5,5,5,3,9,7,7,8,6,6,6,6,6,6,6,6,9,6,6,9,11,13,7,8,9,9,5,5,5,7,8,6,6,6,6,6,6,6,7,8,9,7,10,9,10,7,8,5,5,5,5,5,5,7,7,9,8,7,7,6,6,6,6,6,6,10,6,6,6,6,6,6,6,6,6,6,6,9,10,4,4,4,4,8,7,7,10,10,9,8,8,15,9,8,8,8,8,8,9,10,9,10,7,8,13,5,5,5,5,5,3,3,7,7,8,6,6,6,4,4,11,9,7,8,9,10,7,5,5,5,5,5,3,3,7,6,6,13,7,9,8,7,5,5,5,5,5,5,5,5,3,3,3,3,7,8,7,8,13,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,6,6,6,6,7,6,7,6,6,9,7,4,4,4,4,4,4,4,7,8,7,8,9,8,8,8,7,10,7,8,5,5,5,5,5,5,5,5,3,7,7,7,7,9,7,10,9,6,6,6,6,6,8,8,6,6,6,7,6,6,6,9,9,4,4,13,7,10,9,9,12,7,8,8,10,8,8,8,8,8,8,5,5,5,5,3,7,7,11,7,9,8,8,6,6,10,6,8,8,8,6,7,6,6,12,4,4,4,4,4,4,4,4,4,9,8,8,16,8,9,8,7,5,5,5,5,5,3,3,7,7,7,10,15,8,9,8,9,9,6,6,6,6,6,6,7,4,8,7,8,8,7,8,11,8,5,5,5,5,5,3,7,7,6,11,16,7,6,4,4,4,4,9,9,8,8,8,13,12,8,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,11,7,8,8,9,13,7,7,7,9,8,8,9,12,7,12,7,12,8,7,10,12,9,9,6,6,8,8,6,6,6,6,6,6,6,9,8,9,11,8,6,6,6,6,6,12,7,6,6,6,9,7,7,6,6,6,6,6,11,9,6,6,6,6,6,7,9,4,4,4,4,4,4,4,4,9,9,9,9,7,7,7,7,7,11,7,7,8,8,8,8,8,8,9,8,9,9,7,7,11,11,7,12,8,8,8,8,8,7,8,8,8,8,8,13,12,8,8,8,8,7,7,7,9,5,5,5,5,5,5,5,3,3,7,7,11,7,8,8,8,6,6,6,6,6,6,6,6,6,6,6,10,11,6,7,9,4,4,4,4,4,4,9,9,8,9,8,8,8,7,7,5,5,5,5,5,5,5,5,5,5,3,3,11,7,7,7,9,6,6,11,8,10,6,6,6,12,8,8,7,6,6,8,7,4,4,4,4,4,4,4,4,9,10,9,9,8,10,9,11,8,5,5,5,7,6,6,8,7,4,4,4,4,8,7,7,8,7,8,8,5,5,5,5,7,7,8,8,8,6,6,6,6,6,10,8,9,13,6,7,6,6,8,7,8,4,4,4,4,11,8,8,8,10,5,5,8,7,8,13,8,7,6,8,6,9,7,8,7,5,5,5,5,5,5,3,3,7,8,9,6,4,8,10,10,8,12,9,13,2,7,5,5,5,5,5,7,7,10,6,6,6,6,6,6,6,8,4,4,9,8,8,8,14,8,8,8,9,8,5,5,5,5,5,3,3,9,6,6,6,6,10,12,6,6,6,6,6,6,6,4,4,4,4,11,8,7,8,8,8,5,5,3,3,3,3,7,7,6,8,6,8,11,7,6,6,6,7,4,8,11,9,10,5,5,5,3,3,3,7,7,8,9,8,15,9,6,6,6,6,6,6,11,11,4,4,4,4,4,7,9,9,10,8,7,5,5,5,5,5,5,3,3,8,6,6,6,6,6,6,6,6,6,9,7,4,4,4,4,4,9,9,8,8,10,13,5,5,5,3,17,7,7,7,7,7,8,6,8,13,6,6,6,6,6,6,6,6,4,4,4,9,10,8,8,8,5,5,5,5,3,7,7,7,8,8,6,6,6,8,8,8,9,10,8,4,8,10,9,8,8,8,9,13,10,5,5,5,5,5,5,5,5,5,5,3,3,7,8,9,9,7,7,7,10,9,9,8,9,8,8,8,6,6,6,6,6,6,6,6,6,6,6,6,6,8,12,6,6,6,6,6,6,6,6,6,12,4,4,4,4,4,4,4,4,4,4,4,11,8,8,9,9,10,8,9,7,7,5,5,5,5,5,5,3,7,8,7,6,6,8,6,6,10,4,7,8,9,12,8,7,7,5,5,5,5,5,5,3,3,7,14,7,9,8,8,6,6,8,12,12,6,6,7,7,10,4,4,4,4,4,9,9,14,9,13,8,7,5,5,5,6,6,6,7,4,8,7,5,5,5,5,5,5,5,5,3,3,7,7,7,8,6,6,6,6,6,6,12,6,6,6,6,4,4,9,9,8,8,11,7,7,7,5,5,5,3,9,8,6,6,7,4,4,4,4,4,4,8,8,11,5,5,5,7,7,7,9,6,6,6,6,6,6,9,8,4,4,4,4,7,12,9,8,8,8,7,10,10,5,5,5,5,5,5,5,3,11,14,8,7,8,8,6,6,6,6,6,8,7,6,6,6,7,6,8,9,4,4,4,7,8,9,7,9,7,7,9,8,5,5,5,5,5,5,5,5,5,11,3,9,7,7,12,14,8,6,6,12,11,8,6,6,6,6,6,6,6,6,6,15,7,4,4,4,16,9,9,9,8,9,9,9,9,9,8,8,8,13,11,8,5,5,5,5,3,7,6,6,8,8,8,6,6,7,10,7,4,4,4,4,9,7,8,7,7,7,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,7,7,7,9,6,6,6,6,6,8,8,7,7,9,6,6,6,7,6,6,6,6,6,15,4,4,4,4,4,8,8,7,8,12,9,8,8,8,8,8,9,8,8,10,8,8,8,8,16,9,10,2,5,5,5,5,5,5,5,9,7,6,8,9,4,4,4,4,4,7,8,8,8,9,8,11,10,5,5,5,5,3,7,8,6,6,6,6,6,8,6,6,6,6,4,12,10,12,7,7,7,7,7,7,7,5,5,5,5,3,3,7,7,10,8,9,7,6,10,7,6,6,4,4,8,9,7,9,9,9,9,8,8,8,8,10,5,5,5,5,5,5,8,7,6,6,6,10,6,7,10,7,4,4,4,4,4,4,4,12,9,10,7,7,10,8,10,5,12,9,6,6,6,6,6,7,6,4,4,4,10,9,9,8,7,7,5,5,5,5,5,5,3,3,13,7,7,9,7,7,7,8,9,9,7,8,6,6,6,6,6,6,6,6,6,6,6,6,6,7,13,9,15,15,4,4,4,4,4,10,10,9,8,9,8,8,9,7,8,7,8,5,5,7,6,6,6,4,4,4,7,8,11,8,5,5,5,5,5,5,5,7,6,6,6,6,6,6,9,11,10,7,4,4,4,9,8,8,5,5,5,5,5,9,9,6,6,6,6,6,6,6,9,9,4,4,4,4,8,8,8,9,9,8,8,8,13,2,4,2,7,5,5,5,5,5,5,9,9,6,6,6,6,10,8,8,8,6,6,6,4,4,9,8,10,8,9,8,8,8,9,8,8,5,3,3,3,11,6,6,6,7,6,6,6,4,4,9,8,5,5,5,5,5,3,11,8,6,6,6,6,6,9,7,4,4,14,10,9,8,12,8,8,8,11,15,8,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,11,11,11,10,10,7,7,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,5,5,5,3,3,3,7,11,7,7,11,11,7,8,9,10,7,7,9,9,9,9,7,7,10,8,13,8,8,8,8,11,10,6,6,8,10,11,14,14,6,6,6,6,6,6,9,11,7,7,6,8,12,11,11,6,6,10,6,6,6,6,6,10,7,7,6,6,11,6,6,6,11,8,9,7,6,10,11,9,10,11,7,11,8,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,8,6,6,8,9,10,9,6,6,6,10,6,6,6,6,11,10,11,10,9,8,7,7,7,7,11,14,8,10,9,9,8,8,7,11,8,8,8,11,11,10,10,9,10,8,11,10,8,11,9,12,8,10,8,11,8,9,9,11,11,10,11,13,8,7,8,8,9,7,8,8,8,8,7,8,2,2,2,2,2,2,2,4,4,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,4,2,3,3,3,3,3,3,3,3,8,6,4,4,4,11,7,11,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,5,5,5,5,3,3,3,3,8,7,7,8,8,4,8,7,7,7,9,7,8,9,8,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,6,3,3,3,3,3,3,3,3,4,2,2,3,3,3,3,3,4,5,5,3,8,8,6,9,4,4,10,7,3,3,3,2,5,3,3,3,3,3,3,3,3,3,3,3,3,4,3,2,2,2,3,3,3,3,3,4,10,2,3,3,3,3,3,3,3,4,2,3,3,3,3,3,3,3,3,2,2,3,3,3,5,2,4,2,6,2,2,9,5,5,3,3,3,3,3,3,3,5,5,5,9,8,7,6,6,11,4,4,4,4,4,4,4,4,6,6,7,7,11,8,8,6,5,11,2,3,3,3,3,3,3,3,3,3,3,3,3,3,4,2,2,3,3,3,3,3,3,6,4,4,4,4,3,3,3,3,5,7,2,3,3,3,3,3,8,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,6,4,4,4,4,2,2,3,3,3,3,3,3,3,4,3,3,3,3,3,3,3,3,3,3,3,3,4,2,2,3,3,3,3,3,3,2,3,3,3,3,3,6,3,3,8,10,3,4,4,1,1,1,1,1,1,1,8,9,10,7,7,1,1,3,8,7,7,8,8,8,1,6,1,1,6,3,3,4,7,3,3,5,5,4,4,4,4,4,2,7,7,8,12,3,4,5,1,3,4,4,10,4,3,3,3,8,7,7,2,2,2,2,2,2,2,2,2,12,9,20,7,5,5,5,9,13,5,5,5,5,5,3,3,3,16,5,5,5,13,7,8,8,11,8,7,9,7,11,12,9,9,8,8,11,10,14,7,12,10,11,13,7,9,11,17,17,14,13,7,8,7,10,10,7,16,13,7,8,17,12,9,8,6,7,10,6,6,12,6,8,10,8,8,8,6,8,6,14,6,6,6,13,6,10,6,6,7,14,8,6,6,10,11,10,9,9,7,7,6,6,6,9,9,7,9,10,9,13,12,4,4,4,4,4,4,4,4,4,4,6,6,6,8,8,6,8,9,10,9,7,10,10,8,7,8,7,10,12,9,8,15,8,7,8,8,7,7,15,13,7,10,9,14,18,16,7,24,7,8,10,11,16,8,14,7,9,9,9,13,19,14,15,14,11,7,13,9,10,7,13,9,10,11,12,8,9,2,3,5,8,7,4,4,10,5,3,3,3,3,3,5,4,4,4,2,2,2,2,2,1,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,2,2,2,3,3,3,3,3,3,3,3,3,3,4,2,12,5,3,8,10,15,6,7,2,3,2,5,5,12,2,5,5,5,5,2,2,5,5,12,9,5,2,2,9,5,5,12,12,5,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,9,12,5,8,8,9,5,5,5,8,19,7,16,15,14,9,9,9,9,7,11,11,11,7,14,10,10,5,5,5,5,5,5,5,5,5,15,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,9,9,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,14,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,15,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,12,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,9,9,12,9,9,12,12,12,15,7,11,7,14,11,18,13,8,18,15,18,12,14,12,8,8,8,8,9,9,9,12,7,10,10,8,8,12,12,12,7,12,12,9,7,7,7,7,7,8,15,12,9,10,10,7,10,10,13,11,10,9,22,11,9,8,8,8,8,8,13,18,13,9,15,19,9,7,7,10,7,7,7,11,8,13,17,7,7,10,10,10,7,20,16,7,7,7,7,7,7,11,21,12,12,13,11,14,16,8,8,13,11,7,7,13,7,7,14,15,15,6,6,6,6,6,6,6,6,6,6,13,10,18,6,6,6,6,6,6,6,6,6,11,8,8,12,12,11,11,8,12,9,9,9,13,13,9,9,9,9,9,9,6,10,12,6,6,6,6,17,11,7,7,7,7,14,14,12,6,7,7,6,6,15,10,13,10,6,8,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,13,9,9,15,13,6,12,12,6,19,11,10,7,7,16,8,19,17,9,9,9,9,9,6,6,6,10,8,16,8,6,6,9,6,6,6,6,6,6,6,6,8,8,8,6,7,6,6,6,6,6,6,6,6,6,6,6,14,6,6,6,6,20,6,9,6,14,9,9,9,6,9,8,8,12,9,8,8,8,8,7,8,12,7,8,8,8,6,8,6,6,6,6,6,6,6,9,8,8,6,6,13,9,12,13,12,14,13,12,11,11,6,8,8,8,6,13,12,11,11,12,6,11,12,11,13,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,15,6,6,6,6,6,6,6,13,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,6,18,6,12,13,13,13,9,10,15,9,12,6,6,6,6,6,6,6,6,9,15,10,9,10,13,9,19,8,18,17,10,10,8,8,6,6,6,6,6,6,10,14,8,16,16,9,8,15,8,8,10,12,14,7,7,8,8,7,7,7,7,8,13,13,11,9,9,9,12,10,17,8,11,9,7,7,14,8,14,14,7,7,7,7,7,7,14,7,7,7,7,7,10,10,8,14,7,7,7,7,8,8,8,8,8,17,9,7,15,7,8,12,7,9,14,7,7,7,9,13,8,14,7,16,18,13,15,14,12,13,10,15,9,7,7,7,10,13,15,15,9,9,9,9,19,11,7,11,11,13,8,8,8,8,7,12,19,17,9,9,13,7,7,7,9,7,7,7,12,13,15,10,8,8,14,15,12,13,13,8,12,14,7,11,7,14,15,13,12,8,8,8,8,11,13,15,15,8,13,12,8,8,8,13,10,16,14,11,8,8,12,12,9,15,15,12,12,13,8,8,9,12,13,9,8,8,8,8,8,8,8,8,8,8,8,11,12,11,7,14,7,13,13,13,12,18,16,7,12,11,10,10,15,9,9,9,21,7,7,7,11,16,8,8,11,11,7,7,7,7,7,19,7,7,7,7,7,7,7,7,7,12,8,9,12,14,11,9,9,9,22,12,3,4,8,8,15,4,2,2,5,5,3,3,3,3,3,3,6,6,4,4,4,12,7,10,2,3,3,3,3,3,3,3,6,7,3,7,5,14,4,4,7,8,10,4,1,3,3,6,2,4,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,4,2,2,5,3,4,2,2,2,2,2,2,11,5,5,5,11,5,5,3,5,5,5,5,11,14,13,9,11,9,12,8,11,11,8,11,16,9,9,7,10,9,12,8,15,6,7,6,6,13,10,8,11,8,6,6,6,12,16,6,11,7,8,9,18,6,6,9,4,4,6,13,6,6,6,6,8,8,9,16,7,7,14,7,8,8,8,7,7,7,7,7,7,15,13,7,10,7,7,10,12,16,15,7,9,9,14,11,11,10,9,10,8,12,7,8,7,7,10,12,7,12,8,7,2,3,3,3,3,3,3,3,3,3,3,5,3,3,5,5,5,10,4,8,7,10,3,3,3,3,3,3,3,3,3,3,1,3,3,3,3,3,3,3,7,4,5,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,9,8,2,2,2,8,12,7,7,5,5,5,5,5,5,5,5,5,5,5,5,8,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,5,7,11,9,8,8,8,7,8,9,7,7,9,7,7,7,10,7,7,10,9,10,6,6,6,6,6,6,15,7,8,9,9,8,6,6,10,9,6,8,13,9,7,6,6,6,6,6,6,12,6,6,7,6,7,6,6,6,10,10,7,6,6,6,4,4,4,4,4,4,4,4,4,4,4,4,4,4,6,14,6,6,7,7,9,6,6,6,6,9,9,8,9,10,9,8,9,12,7,7,7,8,7,10,12,11,9,10,7,7,7,9,10,10,8,12,9,7,7,9,8,8,8,10,7,7,8,9,9,7,7,7,8,2,4,6,3,4,2,3,3,3,3,2,3,3,3,3,3,3,3,3,4,4,4,4,5,5,3,3,3,3,3,3,3,3,5,8,6,4,7,3,3,3,3,3,3,3,12,3,3,3,3,3,3,4,4,2,3,5,3,4,7,3,3,3,3,3,3,4,3,3,3,3,3,3,3,4,3,3,6,4,3,4,2,2,2,5,3,3,3,3,3,5,4,4,4,4,7,6,8,9,2,2,2,2,3,3,3,5,7,2,3,3,8,7,7,2,2,8,5,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,8,8,7,7,6,10,6,9,7,11,4,6,8,8,7,8,4,5,5,5,3,3,11,8,9,6,6,8,7,4,4,7,8,7,2,2,3,3,3,3,4,3,3,3,3,3,3,3,3,7,2,2,5,3,3,2,3,3,3,3,3,3,4,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,12,5,5,3,3,3,5,10,12,6,15,4,6,6,7,14,9,3,3,3,3,3,8,2,2,3,5,3,3,3,3,3,3,8,8,8,7,5,8,4,6,11,2,2,6,7,3,3,2,9,8,5,5,3,3,3,5,5,7,7,6,6,10,6,8,6,8,9,7,4,4,4,4,7,6,6,7,7,10,9,8,11,8,3,3,3,3,3,4,4,2,3,3,3,3,3,7,6,2,5,6,7,6,4,8,9,11,2,2,3,3,3,3,3,3,3,2,2,5,3,3,3,3,3,9,9,6,4,8,7,7,5,9,8,6,8,7,8,5,5,5,5,5,3,3,3,16,8,7,7,7,8,7,7,7,7,9,6,9,6,10,7,7,7,6,10,8,9,11,11,8,4,4,10,8,8,6,9,6,11,8,8,8,15,7,8,9,5,3,3,3,3,3,5,11,2,2,3,8,9,10,3,2,2,2,2,2,2,3,6,4,2,2,3,3,3,3,3,3,3,3,3,3,4,4,2,3,3,3,3,3,3,3,11,5,3,3,3,3,3,3,3,3,6,7,4,4,2,3,3,3,3,3,3,3,3,12,7,4,12,4,6,5,4,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,2,3,3,3,3,3,3,3,3,4,4,11,10,6,4,6,10,8,3,3,3,3,3,3,3,3,5,4,4,4,2,2,2,2,2,2,2,2,5,3,4,4,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,10,5,5,5,5,5,5,3,3,3,3,3,3,3,3,7,8,8,7,13,12,10,10,8,8,7,7,9,12,11,6,6,8,8,9,7,7,7,10,15,10,4,4,4,4,4,11,8,8,9,7,9,14,14,12,2,2,2,2,2,2,2,3,3,3,3,3,12,5,5,5,11,10,7,9,3,8,7,3,15,13,11,4,4,2,2,2,19,7,5,5,3,3,3,3,3,3,3,5,22,18,6,14,17,4,4,19,16,18,2,3,3,2,3,2,3,3,6,4,2,3,3,2,5,3,3,3,3,3,3,3,9,9,2,3,2,2,2,3,3,3,5,7,14,7,7,12,9,13,6,11,6,10,9,7,7,8,12,12,8,8,8,10,7,7,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,5,8,10,7,8,11,8,12,9,4,7,7,9,13,2,3,3,3,3,3,3,2,3,3,3,1,2,2,3,3,3,3,3,3,5,2,2,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,8,4,4,4,3,2,3,3,3,3,5,2,2,2,2,5,5,5,5,3,3,3,3,3,3,3,3,3,7,7,7,7,7,8,8,8,8,8,12,9,8,8,9,8,6,17,6,6,6,8,8,6,6,6,6,6,6,6,6,6,6,6,7,4,4,8,8,9,9,9,7,7,7,7,7,7,7,9,9,9,7,8,8,8,10,7,13,10,8,9,3,3,5,13,3,3,3,3,3,7,7,6,6,10,13,11,11,8,8,9,8,9,9,10,10,10,11,10,10,13,13,16,15,11,12,9,9,10,9,11,10,9,9,14,7,8,3,10,7,7,3,2,2,2,5,3,3,3,3,3,3,3,3,3,3,3,3,6,7,2,2,3,3,3,3,3,3,3,3,4,11,6,7,4,6,2,2,3,3,3,1,3,3,3,3,3,3,6,4,4,2,2,2,3,3,3,3,4,4,6,6,6,6,5,4,4,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,9,11,6,10,9,12,7,7,11,14,9,7,12,3,3,7,12,11,12,7,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,9,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,3,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,11,5,5,5,5,5,5,5,5,11,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,3,3,3,5,5,5,5,5,5,5,5,5,5,5,3,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,5,5,5,5,5,5,5,5,5,5,5,5,5,3,10,3,3,3,11,3,5,9,11,8,12,14,9,7,8,7,7,11,11,7,7,10,9,8,10,9,7,7,7,7,7,7,8,8,7,11,8,8,8,7,7,10,8,7,13,12,7,17,10,8,8,11,7,11,11,14,7,11,7,8,6,9,20,8,7,9,16,7,10,6,11,10,8,9,7,16,11,11,9,8,9,8,8,8,11,8,15,8,8,9,7,8,8,11,10,7,5,7,10,10,15,7,7,7,8,7,8,8,10,11,10,10,10,11,11,7,8,6,8,8,8,10,6,8,6,6,7,8,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,16,6,15,6,7,11,11,7,9,10,11,13,10,6,16,8,10,12,11,6,6,6,6,6,6,6,10,6,10,7,7,7,7,11,7,11,6,6,6,6,6,6,17,7,7,6,6,12,22,6,6,6,6,6,8,6,6,6,6,7,6,6,5,6,6,8,11,6,9,14,11,9,11,7,7,8,6,6,6,8,10,9,6,6,6,6,9,7,6,6,6,6,6,15,6,4,4,4,6,4,17,8,11,6,6,9,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,6,6,6,6,10,6,10,6,6,6,6,12,8,6,6,6,6,6,6,6,6,6,9,6,6,6,6,18,6,6,6,8,9,10,7,8,9,10,11,7,13,6,8,8,6,6,14,7,7,7,7,10,7,14,9,6,6,9,15,9,7,14,6,11,14,13,7,12,8,7,7,7,7,7,12,7,10,9,16,6,8,6,5,17,6,8,10,4,6,4,10,15,17,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,8,4,4,11,7,4,4,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,19,17,6,10,11,6,6,6,6,18,6,6,11,4,4,4,5,6,6,6,9,5,6,4,6,6,4,6,6,6,6,10,6,6,4,6,6,10,6,10,6,6,6,6,11,6,6,10,6,6,8,6,6,6,8,6,11,4,11,9,10,9,11,4,8,4,11,12,7,9,8,6,7,7,8,12,12,11,13,10,11,7,7,7,9,7,11,10,7,7,7,16,11,10,11,17,9,9,8,8,7,7,7,9,7,7,7,14,7,13,9,11,10,14,10,10,12,11,10,7,10,5,14,8,8,8,9,7,8,7,7,9,8,7,8,7,7,7,7,7,7,7,11,8,10,8,7,8,14,11,8,9,9,9,8,24,10,10,12,7,7,15,11,8,8,12,11,8,9,9,7,8,9,10,11,10,11,7,12,7,7,11,9,8,14,13,12,8,11,10,8,8,7,7,14,9,10,8,9,11,7,14,8,8,13,8,8,12,7,10,14,14,11,9,10,9,9,7,7,11,11,13,9,13,5,5,5,7,9,5,11,12,14,8,7,7,11,10,9,7,8,8,7,10,11,11,5,5,7,5,5,5,7,7,15,7,7,8,7,15,12,12,10,7,8,7,11,7,7,7,23,11,8,8,11,10,7,8,11,7,19,7,7,6,9,9,9,11,3,4,7,8,6,6,4,10,8,2,2]),edgeChild=new Uint16Array([0,0,0,1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,12,1,1,1,1,1,17,1,1,1,12,1,12,1,12,13,1,1,1,1,12,1,12,1,1,1,1,1,14,21,1,1,1,1,1,1,1,19,12,1,1,1,1,1,1,1,20,1,1,1,16,18,1,1,15,1,1,1,1,12,1,1,1,1,1,1,22,1,1,1,1,12,1,1,1,1,1,1,1,1,12,12,12,12,12,12,12,12,12,12,12,12,1,24,25,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,12,12,12,12,1,32,0,0,0,1,1,1,1,35,34,1,1,1,1,1,33,1,1,1,1,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,0,0,0,0,39,40,0,0,0,0,12,1,1,12,1,1,1,1,43,44,44,44,43,44,43,43,45,44,43,44,43,43,43,43,43,43,45,43,43,43,43,43,43,44,46,46,44,43,43,43,43,43,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,49,51,49,49,49,51,49,50,49,52,49,50,50,49,49,49,50,52,50,52,49,50,50,12,54,54,53,55,50,52,49,49,47,48,56,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,59,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,66,1,12,1,1,65,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,75,78,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,12,1,1,1,1,88,1,90,1,1,1,1,1,1,1,1,93,1,1,1,1,1,1,1,1,1,1,1,1,0,1,96,96,1,1,12,1,99,1,1,1,1,1,1,1,97,1,98,1,100,1,1,1,1,1,101,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,109,110,1,1,1,1,1,1,112,112,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,120,121,1,1,1,1,1,1,1,1,1,1,1,1,1,121,1,1,1,1,1,1,1,1,1,1,121,1,1,1,1,1,1,1,1,1,125,122,124,119,1,123,1,1,113,1,1,1,1,116,1,126,1,1,1,1,1,1,118,1,107,1,108,1,12,127,105,1,111,1,1,1,1,1,106,114,1,12,12,12,117,115,1,1,1,1,1,1,0,0,0,0,1,12,12,1,1,1,1,1,12,133,1,1,1,1,1,1,1,1,1,1,1,12,135,1,1,1,1,1,1,1,1,136,137,12,12,134,132,44,44,139,49,49,138,141,140,1,1,0,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,142,0,0,0,0,1,0,143,131,1,0,1,12,12,1,1,1,1,1,0,0,0,0,0,0,0,1,147,146,20,1,1,12,12,1,20,12,12,1,1,1,1,1,133,1,1,151,1,1,1,1,152,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,1,1,135,1,1,151,1,1,1,1,152,1,1,133,1,1,1,151,1,1,1,1,152,1,1,133,1,1,1,1,1,1,1,1,133,1,1,1,1,1,1,1,1,1,1,1,159,1,1,1,151,1,1,1,1,1,152,1,1,159,1,1,1,1,1,1,1,1,1,1,133,1,1,1,1,151,1,1,1,1,152,1,1,1,133,1,1,151,1,1,1,1,163,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,1,166,1,1,159,1,1,1,1,1,151,1,1,1,1,1,152,1,1,159,1,1,1,1,1,151,1,1,1,1,1,152,1,153,157,157,12,1,12,165,1,1,1,1,1,157,157,157,153,1,1,1,156,157,160,164,1,1,1,1,156,156,1,1,155,153,153,156,169,155,169,1,1,167,1,155,154,156,1,1,1,1,156,1,158,1,1,1,12,1,161,1,161,1,1,1,161,160,162,168,155,153,1,1,1,1,1,1,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,172,171,172,171,171,171,171,173,173,171,172,171,172,171,171,12,1,12,12,12,12,1,12,12,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,193,1,1,1,1,12,199,200,201,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,1,1,1,150,1,1,1,1,1,1,1,1,1,1,1,196,1,1,1,184,1,209,1,1,1,207,1,1,204,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,12,1,1,1,1,1,1,1,1,176,190,1,1,1,186,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,182,1,1,1,1,1,1,1,191,1,1,1,1,195,1,1,1,1,170,1,1,189,1,1,1,192,1,1,1,12,1,1,1,1,1,1,1,1,1,1,1,1,180,1,12,1,1,12,1,1,1,1,183,1,1,1,188,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,208,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,194,1,1,1,1,1,12,1,1,1,1,1,1,1,1,175,12,1,1,1,178,12,1,1,1,1,1,1,1,198,1,1,1,1,1,1,1,1,1,1,177,1,1,1,1,1,1,203,1,1,1,181,1,1,1,187,1,12,1,1,12,1,1,1,1,1,1,1,1,1,1,191,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,174,1,1,1,1,1,1,1,1,1,1,185,1,1,1,1,1,1,1,1,1,1,1,205,1,1,1,1,1,1,1,1,1,1,12,1,206,1,1,12,1,1,1,1,179,1,1,1,185,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,197,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,12,1,1,1,1,1,1,1,1,1,202,1,1,12,1,1,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,219,0,0,0,0,0,220,0,0,0,0,0,0,1,12,1,1,1,224,1,1,1,0,225,222,223,1,1,1,1,1,1,230,1,232,1,1,1,1,1,1,1,1,1,1,1,228,1,1,1,1,1,234,1,1,12,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,233,1,1,1,12,1,1,1,1,229,1,1,1,227,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,231,1,1,1,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,240,13,1,1,1,12,12,237,238,1,1,1,1,239,1,1,12,1,1,1,1,1,1,1,241,1,1,12,16,1,1,1,1,1,1,242,1,1,1,12,12,1,1,1,1,1,1,242,12,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,1,251,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,255,255,1,0,0,0,0,0,1,12,0,0,0,0,0,0,0,0,171,260,261,1,12,1,1,1,1,12,263,1,1,262,1,1,265,1,1,1,1,1,1,1,1,0,1,1,1,269,270,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,12,1,0,1,0,0,0,0,1,0,1,0,1,1,1,1,1,0,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,12,0,281,0,0,282,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,12,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,59,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,1,1,0,306,0,0,0,0,0,0,0,0,0,308,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,12,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,324,324,325,324,0,185,1,1,13,320,1,318,0,0,0,0,0,0,0,321,1,1,326,1,204,1,1,1,1,319,1,316,1,322,1,314,1,323,1,315,1,1,1,1,1,1,1,12,1,1,1,1,12,317,317,1,1,1,184,1,1,12,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,12,1,1,1,1,313,1,0,0,0,1,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,329,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,265,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,369,369,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,361,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,0,1,337,348,1,1,336,371,1,342,1,1,334,366,1,1,352,333,338,1,1,1,345,376,354,1,1,1,1,1,1,355,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0,364,368,0,0,78,1,1,0,362,339,375,340,343,350,1,365,0,1,0,78,359,357,1,0,0,1,1,1,0,0,0,0,378,1,1,349,1,78,1,0,1,1,1,381,1,0,0,78,356,0,1,335,1,1,1,0,1,1,358,1,0,1,1,1,0,1,383,346,1,1,0,1,0,0,374,0,1,1,1,78,367,1,1,363,360,1,1,1,1,1,1,1,1,1,1,1,341,1,1,1,1,1,1,1,1,1,1,1,373,0,78,1,1,1,1,0,1,1,1,1,1,1,0,0,1,1,377,1,1,1,0,0,380,0,0,0,1,353,1,0,78,379,1,0,0,0,0,382,1,1,0,0,1,0,1,0,351,0,347,0,1,1,1,0,1,1,0,370,344,372,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,1,397,397,1,1,12,12,1,397,1,1,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,409,1,1,0,1,1,1,1,204,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,427,427,1,1,0,0,314,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,439,1,438,1,1,1,1,1,1,1,1,1,443,1,12,12,1,1,1,1,1,12,1,1,1,1,451,1,1,1,453,1,1,1,1,1,1,1,1,1,1,450,1,445,1,1,1,1,432,1,1,1,1,1,1,1,1,446,12,1,1,1,1,452,1,1,1,447,441,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,314,1,430,1,1,12,449,1,1,314,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,434,1,1,1,1,1,1,1,1,1,1,1,452,1,1,1,1,314,1,448,1,1,1,442,436,1,1,1,1,1,437,1,454,440,1,1,1,1,1,435,1,1,1,1,1,1,1,1,1,431,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,444,1,1,1,1,1,1,1,1,1,1,1,1,433,1,1,1,1,1,1,1,219,455,1,1,1,1,1,12,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,1,0,0,1,0,1,0,1,1,0,0,0,460,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,12,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,464,0,464,464,464,464,464,464,464,0,464,464,464,464,464,1,464,464,464,0,464,464,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,469,468,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,473,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,466,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,467,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,475,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,464,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,465,0,0,476,471,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,470,0,0,0,0,0,0,0,0,0,0,0,0,0,464,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,465,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,464,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,474,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,12,1,1,1,1,1,1,1,1,1,1,1,1,486,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,198,198,1,490,1,1,1,489,1,1,1,1,485,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,487,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,491,1,1,488,1,1,1,1,1,1,1,1,369,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,492,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,0,0,503,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,1,0,1,0,0,0,1,0,0,0,1,0,0,0,0,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0,0,0,0,1,0,1,0,0,12,1,505,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,12,12,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0,1,0,0,0,0,0,0,0,1,0,0,1,0,1,1,1,1,0,0,0,1,0,0,0,1,59,1,1,12,12,12,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,524,1,1,1,1,1,1,1,525,1,1,1,1,1,1,1,523,1,1,12,1,527,238,1,1,12,12,1,1,12,1,12,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,531,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,1,1,0,0,0,1,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,537,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,131,1,12,542,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,106,1,1,12,1,1,1,12,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,547,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,143,1,1,1,227,1,1,12,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,1,571,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,219,1,325,1,1,1,1,1,1,1,1,1,0,0,576,1,1,1,1,0,578,0,78,0,577,0,1,1,1,0,1,1,1,1,1,1,12,0,0,0,0,1,0,0,0,0,0,0,584,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,580,580,0,583,581,580,580,580,580,580,585,580,580,589,580,580,580,580,580,580,580,580,580,580,586,583,580,580,583,580,580,580,580,580,580,580,580,580,580,580,580,580,581,580,580,580,580,580,587,580,580,580,580,580,580,0,0,0,1,588,1,1,1,1,582,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,12,593,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,1,12,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,12,1,1,12,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,95,64,278,304,408,533,0,4,67,235,253,280,305,331,385,410,0,497,517,534,595,9,0,60,87,395,406,426,574,0,495,516,530,610,0,30,6,0,459,498,600,559,69,0,7,283,254,386,461,413,536,78,596,0,575,307,415,463,9,104,286,504,6,30,0,309,78,388,78,481,10,6,130,247,273,0,611,507,0,562,0,63,6,6,250,94,2,429,396,407,594,0,6,0,6,284,102,6,560,499,538,0,462,387,271,285,8,70,103,597,541,389,310,298,416,145,73,288,545,508,599,563,332,327,477,6,74,148,11,0,248,520,546,564,512,550,569,609,36,6,259,293,330,302,217,30,526,552,217,41,215,264,294,303,403,420,479,272,0,72,561,0,400,414,297,78,246,78,0,579,544,502,290,418,78,390,384,0,0,0,9,554,570,216,0,421,404,529,514,572,613,84,217,42,295,393,422,568,0,509,291,274,78,214,79,28,387,30,6,391,328,301,602,590,522,549,511,0,257,80,30,402,419,0,30,423,0,218,591,515,9,405,424,217,247,85,221,592,573,556,480,425,394,249,226,86,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,618,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,411,0,0,0,0,0,0,0,0,81,0,128,0,0,83,548,0,0,0,0,0,0,0,27,0,551,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,411,0,0,0,0,501,0,256,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,292,0,0,0,0,0,0,0,615,0,0,0,0,0,614,0,0,0,0,0,0,0,0,0,0,0,0,0,0,392,0,0,0,482,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,0,0,0,0,0,0,493,0,0,0,0,0,0,401,0,0,0,0,0,0,0,0,0,0,0,0,0,210,0,0,0,0,0,0,0,0,0,0,0,513,0,0,0,0,0,0,0,0,0,0,0,0,494,0,0,0,0,0,0,0,0,0,0,0,0,0,0,268,279,0,0,0,0,0,528,275,0,0,0,0,0,0,0,0,0,0,0,0,0,510,0,0,0,0,0,0,0,0,0,0,0,456,0,0,0,312,0,0,0,0,0,0,252,0,0,0,0,0,0,23,0,0,0,0,567,0,0,0,0,598,519,0,0,0,0,243,0,0,0,0,0,0,0,0,0,478,0,0,0,0,0,61,0,0,0,266,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,245,0,0,0,0,0,277,608,0,71,0,0,0,0,0,0,0,0,0,617,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,149,0,276,0,0,0,0,0,0,566,0,0,0,0,0,0,521,0,0,0,0,0,0,0,0,0,565,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,212,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,500,0,0,0,0,0,553,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,82,0,0,0,0,0,0,0,0,0,0,0,0,484,0,483,0,0,0,0,0,0,0,0,0,0,258,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,457,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,287,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,535,0,0,0,0,0,0,0,0,296,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,236,0,0,0,0,0,0,0,0,0,0,83,0,604,0,0,0,0,0,0,0,0,0,0,0,0,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,607,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,518,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,496,0,612,0,0,428,0,0,0,0,0,0,0,0,0,0,0,0,399,0,0,0,543,0,92,0,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,29,91,0,0,0,0,0,0,0,0,0,0,0,0,289,0,0,0,213,0,0,0,0,0,0,557,0,0,0,0,129,0,0,0,0,0,558,0,0,0,0,0,0,0,411,417,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,311,0,0,0,0,0,5,0,0,0,0,0,0,0,299,0,0,0,0,0,0,0,0,0,0,0,0,0,532,0,0,0,412,0,0,398,0,0,0,0,0,0,601,0,0,0,539,0,0,89,0,540,0,0,0,0,0,0,0,0,0,0,506,458,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,267,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,411,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,606,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,605,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,616,0,0,0,0,0,555,0,0,0,0,0,0,0,0,0,0,300,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,603,0,0,211,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,621,621,621,621,621,621,621,620,622]),labelText=`orgmilcomschnetedugovdrrformsfeedbackofficialaccoorgmilschnetgovmagazinemediaunioncargopilotgroupcaarespressworksaerodromeworkinggroupair-traffic-controlaircraftaccident-preventioneducatormarketplaceambulanceinsurancecateringairportrepbodyenginesoftwaremodellingair-surveillanceconsultingchartertrainermaintenanceservicesdesignflightskydivingfreightassociationstudentgroundhandlingdgcafuelclubtaxicrewshowballooningexpresstraderbrokerauthoragentsairtrafficjournalistsafetyconsultantmicrolightaccident-investigationparachutingequipmentproductionfederationrecreationscientistnavigationengineertradingglidingleasingresearchpassenger-associationentertainmentparaglidinghangglidingaerobaticrotorcraftemergencycertificationgovernmentaeroclubexchangelogisticschampionshiphomebuiltcouncilconferencecontrolairlinecivilaviationjournalorgcomnetedugovcoorgcomnomnetobjofforgcomnetuwukiloappsframerorgmilcomnetedugovcoradioorgcomnetcommuneedogpbcoitgvorgedugov*spreviewfrontendrelayononstagingupid*mtls*privatelinktypedreamdeveloperbravemochawindsurfaivenmirenupsunwnextbegetngrokclerkwale2bwebcsbrunputerflutterflowspawnbaseshiptodaymagicpatternsnetlifyondigitaloceanrailwayhostedclaudehasurabotdashvercelgithubluyanigadgetreplitcloudflaretelebitedgecomputeevervaultexponyatnoopencrpplxzeaburwasmerframerzeropsconvexmedusajsspritesonherculeseasypanelstreamlitsnowflakemesserliloginlinehackclubcodepennorthflankbase44corespeedleapcellngrok-freeclerkstagelovableon-fleek*us-west-3ap-south-2us-central-2us-central-1eu-central-1ap-south-1us-west-2us-east-2eu-north-1ap-north-1us-west-1us-east-1*rcloudintsegorgmilcomgobbetnetintedugovturmusicasenasamutualcoopip6uriurnin-addre164homeirisgovdixdaemoncloudnssthwien*inexexkunden4accogvormymyspreadshop4lima2ixortsinfofuturecmsfuturehosting12hpprivfuturemailinglima-cityfunkfeuer123webseitednshomemelmyspreadshopcloudletswasantqldvicactnswtascatholicwasaqldvictasidwasantozqldorgcomvicasnactnetedugovnswtasconfcomairflowlambda-urltransfer-webappairflowtransfer-webapptransfer-webapptransfer-webapp-fipstransfer-webappeu-west-3ap-south-2eu-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1mx-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1ap-southeast-7us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2ap-southeast-5us-gov-west-1us-gov-east-1ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1privatenotebookstudiolabelingnotebookstudionotebooknotebook-fipslabelingnotebookstudionotebook-fipsnotebookstudio-fipsnotebook-fipsnotebookstudionotebook-fipsnotebookstudioeu-west-3ap-south-2eu-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2experimentsus-gov-west-1us-gov-east-1ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1onrepostsagemakercopporgmilcompronetintedugovbiznameinfoshoprsorgmilcomnetedugovbrendlyresolvenzauscotvstoreorgcomnetedugovbizinfoidacaicoittvorgmilcomschnetedugovinfocloudezproxyacmymyspreadshopkuleuvenwebhostingtransurl123websitecloudnsinterhostsolutionsddns5476103298edgfacbmlonihkjutwvqpsryxzbarsycoororgcomedumyftpno-iporxcloud-ipfor-somemmafanfor-morewebhopselfipjozidyndnscloudnsdscloudfor-thefor-betteractivetrailcoeconorestooteorgcomeconeteduassurmoneyafricaarchitectesrestaurantloisirstourismavocatsinfoagrounivcoorgcomnetedugovtvdeportesaludtksatorgmilcomwebgobnetinteducienciaboliviarevistacooperativaempresanombreindustriamusicapatriamedicinademocraciapoliticapuebloindigenaplurinacionalarteblogwikiinfoagrotransportenoticiasprofesionalacademiaeconomiaecologiamovimientotecnologianaturalsimplesitecepesebamapadfmgalampbacscpirngorotomtrjspaprrprrsesmscepesebamapadfmgalampbacscpirngorotomtrjspaprrprrsesms*biaamfmtcmptvfeirasampajampanatalbelemananiradiog12medindfndbmdtrdthepoaggfjdfdefinfenflegsegongengcngorgzlgslglogppgmillelqslcimcomnomadmjabimbbibbsbabcrectecsjcetcpscpvhudieticriapipsiecnbiorioecogeoteoodoproatoartfstmatvetdetbetnetcntnotfotgrueduajuespappreptmpemparqsrvadvdevgovntrturagrjorfarjusmusdesvixxyzcozfozslzbhzmaringasantamariacampinagrandegoianiasorocabafloripasaobernardocuritibaboavistarecifeaparecidasaogoncasalvadorcuiabamorenamacapalondrinacontagemsocialfortalmaceioleilaoosascoriobranconiteroi9guacutcheblogflogvlogwikitaxicoopmanauspalmascaxiasjoinvillebaruericampinassantoandreribeiraoriopretoweorgcomnetedugovv0windsurfshiptodaycloudsitecoaccoorgnetgovofmilcomgovmediatechzacoorgcomnetedugsjgovmydnspenfnlabnbmbgcbcqconcontnuyksknsmyspreadshopno-ipawdevboxbarsyonidatemfuinabusavinstanceseceuguukussryzespawncsxcloud-ipmyphotosfantasyleaguetwmailcleverappsscrappingccwucloudnsftpaccessgame-serverccgovobjectsrmalpgcust*svcalp1aeappenginermalpgmyspreadshop4lima2ixsquare7cloudscale123websitefirenet12hpflowgotdnslinkyard-cloudcloudnslima-citydnskingobjectstorageedaccogoorusorgcomnetinteduaéroportxn--aroport-byaassogouvcomilgobgovcloudnses-1eu-west-1us-east-1euvipit1eurarubait1s3lbwebsites3websiteru-spbru-mskelasticcsrunstnukukcaukusnl-ams-1fr-par-1fr-par-2functionsnodess3ddlwhmrdbfnck8sifrs3-websitecockpitscblmgdbdtwhkafkpubprivs3ddlwhmrdbk8sifrs3-websitecockpitscblmgdbdtwhkafks3ddlrdbk8sifrs3-websitecockpitscblmgdbdtwhkafkk8sscalebookpl-wawfr-parnl-amsbaremetalsmartlabelinginstancesdechk2kuleuvenlaravelvoorloperurownoxazapscwhstgrvaporonline-serverobservablehqelementorantagonistreclaimjoteluluencowaydiademjelasticmatlabmagentositetrendhostingaxarnetperspectajenv-arubajelejoteravendbemergenttrafficplexconvexkeliwebserveboltbegetcdnstaticson-rancherprimetelonstackitunison-servicesdnshomelinkyardbarsyjelecloudnscocomnetgovmycn-northwest-1cn-north-1s3s3-accesspoints3-websites3s3-accesspointrdsdualstacks3-deprecatedemrappui-prods3-websiteemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apis3s3-accesspoints3s3-accesspointrdsdualstackemrappui-prods3-websiteemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicn-northwest-1cn-north-1cn-northwest-1ebcomputeelbcn-north-1airflowcn-northwest-1cn-north-1oncn-northwest-1cn-north-1amazonawssagemakeramazonwebservicesdirectasgdsdhehahljlnmhbacscahqhshhihnlnynsnmofjbjzjxjtjhkcqtwgsjssxnxjxgxxzgz網絡网络公司orgmilcomnetedugovxn--55qx5dcanva-appsxn--io0a7iquickconnectcanvasitekhsjxn--od0algmyqnapcloudsrvrlessclustersrealtimestorageleadpagescarrdcrdorgmilcomnomnetedugovhidnssupabaserdpareplmypiumsoxmitotaplpagesfirewalledreplitowodevwebview-assetsvfswebview-assetss3s3-accesspointdualstackemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9eu-west-3ap-south-2eu-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1ap-southeast-7us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2ap-southeast-5ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1s3s3-accesspointdualstackemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3s3-accesspointdualstackanalytics-gatewayemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3s3-accesspointdualstackemrappui-prods3-websiteemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apis3s3-accesspointdualstacks3-deprecateds3-websites3-object-lambdaexecute-apis3s3-accesspoints3-websites3-accesspoint-fipss3-fipss3s3-accesspointdualstackemrappui-prods3-websites3-accesspoint-fipsaws-cloud9s3-fipsemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3s3-accesspointdualstackemrappui-prods3-websites3-accesspoint-fipss3-fipsemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apis3s3-accesspointdualstacks3-deprecatedanalytics-gatewayemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9vfss3s3-accesspointdualstackemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9eu-west-3ap-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1mx-central-1me-central-1ca-central-1il-central-1ap-northeast-1us-northeast-1ap-southeast-1me-south-1af-south-1ap-south-1ap-southeast-7us-west-2eu-west-2ap-east-2us-east-2ap-southeast-2ap-northeast-2ap-southeast-5us-gov-west-1us-gov-east-1ap-southeast-6ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1mrapaccesspoints3s3-accesspointdualstacks3-deprecatedanalytics-gatewayemrappui-prods3-websites3-accesspoint-fipsaws-cloud9s3-fipsemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3s3-accesspointdualstacks3-deprecatedanalytics-gatewayemrappui-prods3-websites3-accesspoint-fipsaws-cloud9s3-fipsemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3eu-west-3ap-south-2eu-south-2computes3-ap-northeast-2elbrdss3-ap-east-1s3-sa-east-1s3-us-gov-west-1s3-eu-central-1s3-ca-central-1eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3s3-website-us-west-2s3-website-eu-west-1s3-external-1eu-central-1me-central-1ca-central-1il-central-1s3-us-west-1s3-eu-west-1s3-website-sa-east-1s3-website-ap-southeast-2ap-northeast-1ap-southeast-1s3-us-west-2s3-eu-west-2me-south-1af-south-1eu-south-1ap-south-1us-west-2eu-west-2us-east-2s3-website-ap-southeast-1s3-1s3-globals3-ap-northeast-3eu-north-1airflowap-southeast-2s3-us-gov-east-1s3-fips-us-gov-east-1s3-me-south-1s3-ap-south-1ap-northeast-2s3-website-us-west-1ap-southeast-5s3-eu-north-1s3-ap-southeast-1s3-website-us-gov-west-1compute-1s3-eu-west-3us-gov-west-1s3-website-ap-northeast-1us-gov-east-1s3-fips-us-gov-west-1s3-website-us-east-1s3-ap-southeast-2ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1s3-us-east-2s3-ap-northeast-1authauthauth-fipsauth-fipseu-west-3ap-south-2eu-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1mx-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1ap-southeast-7us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2ap-southeast-5us-gov-west-1us-gov-east-1ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1rframeservicesbuilderstg-builderdev-builder*ociocpocsdemoinstanceeu-west-3eu-south-2ap-southeast-3ap-northeast-3eu-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1ap-southeast-7us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2ap-southeast-5us-gov-west-1us-gov-east-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1previeweu-4us-4us-1eu-1us-2eu-2us-3eu-3appspaasrag-cloudrag-cloud-chjcloudjcloud-ver-jpcdemonodebalancermembersipeuxvsoncillaocelotonzayalilynxsphinxfentigercustomercaracalo365cloudstaticxendevapp001testcode-builder-stgplatformmediasiteprojedrydpagesjsu2u2-localx0desazacncoitrueu4uhkukgrbrushatenadiarymyspreadshopfrom-flfrom-wvwebspace-hosttheworkpchatenablogcursorusercontentservesarcasmapplinzisakuratanwixsiteappchizigiizeis-into-carsdnsiskinkyadobeaemcloudis-a-therapistpgfogmyvncdojinis-an-actress1kappfldrvkozowqa2jpnmexprgmrfirewall-gatewaydynnscafjsfbsbxooguyxnbayfrom-gawoltlab-demois-a-anarchistwiardwebteaches-yogadattowebtb-hostinglive-websiteservegamegotpantheonfrom-nhsubsc-payfrom-ohvipsinaappfrom-cadyndns-officehomelinuxfrom-mahercules-appservebbsstreakusercontentfrom-okfrom-wyfastly-terrariumis-a-llamaqualyhqportalserveexchangeon-vaporvivenushopciscofreakgrayjayleaguesmetaaiusercontentfrom-iais-a-libertariansaves-the-whalestaveusercontentyolasiteoperaunitepoint2thisis-a-catererclaudeusercontentlinodeusercontentfrom-vagithubusercontentsells-for-lesshosteurcanva-appsplaystation-cloudddnsfreefrom-pafrom-prfrom-waddnskingoutsystemscloudhotelwithflightmydattois-a-nascarfanmydbserverminiserverdamnserverservehumouris-a-playerfrom-nvfrom-nmemergentagentgentappsamplifyappfrom-kyis-an-accountantnfshostserveircfrom-akpythonanywherestackhero-networkpostman-echolikescandydyndns-mailobservableusercontentserveftpfreeboxosfrom-utcdn77-storageamazonawsneat-urldyndns-serverlinodeis-a-teacherfrom-vtgleezemythic-beastsus1-pleniteu1-plenitla1-plenitpaywhirlservecounterstrikejdevcloudhealth-carereformis-into-animegoogleapisis-a-painterafricaisa-hockeynutatmetais-an-actora2hostedis-a-democratdatadetectest-le-patrondigitaloceanspacesis-a-designeris-a-hunterlinodeobjectstemp-dnsissmarterthanyoufrom-arsimplesiteevennodetownnews-stagingis-a-liberalgooglecodejelasticservemp3qualyhqpartnerdyndns-free1cooldnsest-a-la-masiondrayddnsdynuddnsfrom-orfrom-miis-a-bloggerfrom-himydobisscanvacodeis-an-engineerest-a-la-maisonupsunappdevinappswafflecellmyasustorwpenginepoweredfrom-ctservep2psame-appmyshopblocksthingdustdatalikes-piediscordsezis-with-thebanddev-myqnapcloudlpusercontentis-leetshopitsite3utilitiesis-a-personaltrainersinaappladeskis-a-cheflogoipselfipbase44-sandboxnospamproxyalibabacloudcsmesswithdnsauthgearappsiamallamawithgooglelutrausercontentmochausercontentframercanvasmytabitdyndns-homew-credentialless-staticblitzcpserverdiscordsaysis-a-nurseappspotatlassian-isolated-3premotewdfrom-mtwixstudiocode0emm180rmyactivedirectoryawsappsmytuleapdnsabrpolyspaceqbuserrenderbuiltwithdarkboutirgotdnsabrdnsdopaascanva-hosted-embedawsglobalacceleratorhomesecuritypcmyiphostditchyouripclever-clouddyndns-ipon-aptibleis-a-musiciansecuritytacticsappspaceusercontenthomeunixstrapiappsame-previewcf-ipfsmycloudnaselasticbeanstalkis-certifieddontexistkasserverik-serverdrive-platformatlassian-3pfirebaseappherokuappawsapprunnerbarsycenteris-a-cubicle-slaveservehttpmyshopifyis-a-guruquicksytessiiitesorsitesmagicpatternsappis-a-cpameteorappfrom-wiis-a-rockstarbumbleshrimpdattolocalreadthedocs-hostedfrom-rifamilydsdyndns-picsplesknsbplaceddnsaliasdynaliasdyndns-remotedoomdnsip-ddnsblogdnsis-a-doctorroutingthecloudamazoncognitobarsyonlinedsmynasddnsgurucloudflare-ipfsdeus-canvasfrom-idsmushcdnpagespeedmobilizerdyndns-at-homeunusualpersonhosted-by-previderis-a-republicandyn-o-saurstreamlitappworkisboringonthewificprapidqualifioappis-uberleetis-slickgetmyipwpdevcloudtypeformdyndns-at-workgentlentapismynascloudw-corp-staticblitzfrom-ingeekgalaxyservebeerfrom-mdonrenderspace-to-rentaivencloudappspacehostedwafaicloudcodespotblogspotatlassian-3p-us-gov-modfrom-ndfrom-msis-a-techieis-a-studentcustomer-ociis-a-photographerdurumisfrom-ksmassivegriddyndns-wikiis-an-entertaineris-a-hard-workermysecuritycamerafrom-mnrackmazedyndns-blogis-a-bulls-fanwritesthisblogfreemyipsimple-urlfrom-sdreservdauthgear-stagingest-mon-blogueuris-into-gamesrice-labsxtooldevicesakurawebis-an-anarchistoraclecloudappsdyndns-worksells-for-urhcloudfrom-dcfastvps-serverwpmucdnis-a-geekscrysecfrom-txis-into-cartoonsmodelscapetrycloudflarelocaltonetstreak-linkbalena-devicesfrom-njforgeblocksfreebox-oswebadorsitefrom-ncdoesntexisthobby-sitestreaklinkshomesecuritymacownprovidertuleap-partnersdattorelaywphostedmailalpha-myqnapcloudservequakeis-a-socialistservehalflifepivohostingdynuhostingquipelementsw-staticblitzdyndns-webfrom-deproject-studyaliases121is-not-certifiedhercules-devis-a-financialadvisorservepicsis-a-greenloseyouripfrom-ilwithyoutubemwcloudnonprodwiredbladehostingdnsdojofrom-tnpixolinomyqnapcloudis-an-artisthostedpiis-a-landscaperauiusercontentoaiusercontenton-forgeis-a-conservativedreamhostersnet-freaksapps-1and1is-goneencoreapifastly-edgefrom-nesalesforcefrom-scdeployagentoraclegovcloudappsfrom-alis-a-lawyercechirevultrobjectsstufftoreadisa-geekddnsgeeklovableprojecttry-snowplowfrom-moblogsyteis-a-bookkeepernogmyforumravendbmyboxdeelementoredsaacficogoorinforgcomgobnatneteduidstoreorgcomnetintedudevnomepublorgcomneteduathgovtestscalculatorspaynowinfoquizzesresearchedcloudnsfunnelsassessmentsjscaleforcetmacltdorgmilcompronetgovbizpresseklogesrsccloudcustomfltusrcloude4corealmgovmunicontentproxy9metacentrumdyndyndyndnsdynpagespages-researchitionoccustomercomymyspreadshopipv64diskussionsbereich4limacomrub2ixfirewall-gatewayddnssspdnsbarsykeymachinesquare7myhome-serverspeedpartnercommunity-proschuldockxenonconnectgünstigliefernbwcloud-os-instancedyndnssecmy-routerxn--gnstigliefern-wobin-butterl-o-g-i-nisteingeekin-dslin-berlinin-brbfuettertdasnetzleitungsenin-vpnlcube-serverdyn-ip24logoipdyn-berlinruhr-uni-bochum12hpgoipsrvdnsfruskygit-repossvn-reposinternet-dnsgünstigbestellenhome-webserverxn--gnstigbestellen-zvbbplacedheimdnscosidnswebspaceconfiglima-citydyndns1istmeinvirtualuserschulplattformmy-gatewayddnsseclebtimnetztest-iservmein-iservvirtual-userhome64iservschuletaifun-dnstraeumtgeradeschulserverdynamisches-dns123webseitednshomehs-heilbronndnsupdaterbssgraphicdwadpdwdaepeweaawapaafpfwfabwbpbacwcpcciwebuserapiobjectsidsiskospockkimodorikerbonesteamsparisjanewaypicardglobaltarpitreedpikekiraworfsulukirkarchertuckerhackercanarywesleystagingprereleaset3r2lpbravepanelngrokiservstglclcrmerpflypagesbarsyvivenushoplocalcertlocalplayerbearbloggatewaydeno-stagingis-not-ais-a-goodbotdashvercelmocha-sandboxplatter-appreplitgithubpreviewworkersinbrowserevervaultis-ahrsndenoxmitmodxmyaddrstorageapipayloadgrebedocruncontainersstgstagelclstageloginlineis-a-fullstackcodepenleapcellngrok-freeis-coolstoragewebharemediatechlibp2pdiscourseimaginecomyspreadshopstoreregbiz123hjemmesidefirmcoorgcomnetedugovsldorgmilcomwebgobartnetedugovtmorgpolcomsocartnetedugovassoagrondiscoodontk12medcuegyecpaabgengorgmilgalsaltulcomadmesmgobpubdocmonfindgnriouioproartlatvetnetfotedulojgovntrturibrbarxxxofficialbasechefprofmktgpsictechinfoarqtcontdentrrpppsiqgit-pagesritmedfieorgcomlibprieduaipgovriikmeactvsportorgmilcomscieunnetedugovnameinfopintouchtawktotawkmyspreadshoporgcomnomgobedu123miwebcomputeorgcomnetedugovbiznameinfocognito-idpeusc-de-east-1onjelasticnxaspdnsbarsydirectwpdeuxfleurstransurldogadoprvwcloudnsamazonwebservicesdnshomeuserpartycokoobinmkmfidemopaasdymyspreadshopalandkapsiikixn--hkkinen-5wacloudplatformdatacenterhäkkinen123kotisivuidacorgmilcompronetedugovbiznameinforadioorgcomneteduuserexperts-comptablestmmyspreadshopgretaprdcomnomynhccifbxoshuissier-justicenotairesaeroportfreeboxoson-webavocatassoportgouvkdnschirurgiens-dentistes-en-franceavouesfbx-os123sitewebveterinairechirurgiens-dentistespharmacienchambagrimedecinfreebox-osdediboxgoupilemszicpyicpvicppleysheezypagesedugovcnpyorgcomcybllcpvtnetedugovtnxonlineschooldaemond6atcopanelorgnetplybotdashstackitkaasorgmilcomnetedugovbizmodltdorgcomedugovcoorgcomneteduappwriteacorgcomnetedugovcloudtranslateusercontentorgcomnetedumobiassoorgcomnetedugovbarsysimplesitediscourseindorgmilcomgobneteduorgcomwebnetedugovguaminfonxhra教育敎育網絡网絡组織組織网络網络组织組织公司政府個人个人箇人ltdorgcomincneteduidvgovxn--uc0ay4axn--55qx5dxn--mk0axixn--io0a7ixn--uc0atvxn--zf0avxxn--lcvr32dxn--od0algxn--wcvs22dxn--gmqw5axn--od0aq3bxn--mxtq1mxn--ciqpnxn--tn0agxn--gmq050iorgmilcomgobneteduiservwp2tempurlmircloudfreesitewpmudevmyfastgadgetcloudaccessjelehalfboltfastvpsemergenteasypanelopencraftizcombrendlynamefromrtpersoadultmedorgpolrelcomproartnetedufirminfoassoshopcoopgouvtmcomediahotelforumvideosportorgsexagrargameslakaseroticaerotikatozsdereklamcasino2000filmsuliinfoboltshopprivnewsszexcityutazasjogaszkonyveloingatlaneacaicogoormyᬩᬮᬶmilwebschnetkopbizzonedesaponpesxn--9tfkymyspreadshopgovmytabittabitorderravpageaccok12idforgnetgovmuniltdplcaccotttvorgcomnetmeca6g5gpgamubacaicniocoukuptverdruscsdelhiindorgmilcomwebnicfingenpronetintedugovresbizbiharbarsyinternetbusinessschooltravelsupabasealumnigujaratfirminfoaeropostbankcoopindevscloudnsno-ipbarsybarrell-of-knowledgebarrel-of-knowledgensupdategroks-thisdnsupdatefor-ourknowsitalldvrcammittwalddynamic-dnsv-infowebhopselfipdyndnshere-for-moreilovecollegemayfirstforumzcloudnsmittwaldservertypo3servergroks-theeusekd1cdndyndnsidrawsainaueuapjpusstagemocksysdevicesclientcustreservdcustdevdisrecprodtestingcobeebyteutwenteboxfusebravepstmndedynngrokorgmilcomnomnetedugovqcxqzzbarsythingdustmo-siemensrb-hostingfh-muenstergitbookbluebitecloudbeesusercontentnodeartkiloappsforgerockdarklangresinstagingapigeebubbleb-datascryptedhypernodedappnodepantheonsitegitlabgithubkeeneticvirtualservercleverappshostyhostingon-rioedugitticketstelebitwixstudioon-k3sicp0icp12038jeleqotolairbubbleappsmyaddrstolosmyrdbxwebflowdrive-platformbeagleboardhasura-applolipopdefinimavaporcloudmusicianwebflowtestazurecontainerresindevicereadthedocsloginlineeditorxmoonscalesandcatsbasicserverwebthingsbrowsersafetymarkbeebyteappbitbucketidaccovistablogorgschnetgovxn--mgba3a4f16axn--mgba3a4fraarvanedgeايرانایرانjclaspeziapdudcefegelemeperetevebacanatavaparasabgagfgogrgpgalclblimfmrmcbmbvbfclcmcvcrcpcchlimifibicivipirisimncnbnanenrnpntnnolomobocoaogorosopotoptvtatctbtmtltotpusulunutpspapaqsvpvvvtvavvrtrsrprgrfrcrbrarorkrvstsssbscsmsispzczbzbozen-suedtirolmyspreadshopxn--bulsan-sdtirol-nsbxn--valledaoste-ebbtrentinoaltoadigetrentin-sued-tirolxn--forlcesena-c8axn--forl-cesena-fcbxn--bozen-sdtirol-2obtriestetrentinsuedtiroltrentino-s-tirollecceudineaostesienaparmaluccapaviagenoapaduaaostamonzaabruzzoternirietiturinmilanbozenlaziofermoleccocuneonuoropratola-speziavdataaligfvgpugmolcalcamlomumbsicpmnvenvaoedugovabrsarmaremrbastoslazibxosfirenzetrentinosüdtirolval-d-aostavalle-aostamessinacremonaravennatoscanatrentin-suedtirolbolognacalabriaurbinopesarofriuli-v-giuliaogliastraxn--valle-aoste-ebblaquilaandriatranibarlettasyncloudxn--valle-d-aoste-ehbaostavalleyvalled-aostatrentino-alto-adigevallee-d-aostexn--balsan-sdtirol-nsbpistoiasicilialucaniacataniaiserniaperugiabresciaveneziagorizialiguriaimperiabulsan-suedtirolbalsan-suedtirolbarlettatraniandriaxn--trentino-sdtirol-szbforlì-cesenatuscanyvallée-d-aostemantovavallée-aostecasertapiemontevalleaostaval-daostafriulivgiuliatrevisoforli-cesenavalléedaosteferrarapescaravald-aostatrentino-altoadigefriuli-vegiuliavallee-aostecarboniaiglesiastarantomediocampidanovalleedaostetrentinosud-tirolcampobassotrentinsüd-tiroltrentinosüd-tirolmonzabrianzatrentino-südtirolxn--trentino-sd-tirol-c3bpotenzacosenzavicenzaemiliaromagnavenicefrosinonemarchepordenonetrentinosued-tirolvaresemolisevalléeaostefriuli-veneziagiuliabasilicatalatinaanconasavonaveronamodenabiellabolzano-altoadigepugliafoggiaumbriatrentino-stirolgenovapadovamateranovararagusapiacenzatrentinostirolvalleeaostetempio-olbiasudsardegnatrentinsudtirolmassa-carrarafriuliveneziagiuliatrentinosuedtirolandria-barletta-tranitrapanixn--cesenaforl-i8amaceratacaltanissettaascoli-picenobrindisicarraramassacagliaririmininapolivibo-valentiachietibulsan-sudtirolbalsan-sudtiroltrentino-a-adigebulsanbalsaniglesiascarboniamilanotorinoteramodell-ogliastraarezzotrentinoalto-adigerovigotrentovenetoiglesias-carboniatrentino-sud-tirolaltoadigereggio-emiliareggio-calabriasardegnatranibarlettaandriapiedmontxn--sdtirol-n2amedio-campidanotrentino-süd-tirolfriuli-vgiuliafriuli-ve-giuliaromeennaromapisa32-b16-b64-blodiastibarineencomonaplesforlicesenailiadboxosalessandriasicilytrani-barletta-andriaxn--trentin-sdtirol-7vbpesarourbinotrentinsued-tirolcesena-forliforlìcesenaemilia-romagnamonzaebrianzaxn--trentinsdtirol-nsbtrentinos-tiroltrentinsüdtirolvalledaostaolbia-tempiocampidanomediovibovalentiasassarivalle-daostalombardysud-sardegnafriulivegiuliareggioemiliamonzaedellabrianzaalto-adigevercellitrentin-sudtiroltraniandriabarlettatrentino-sudtirolascolipicenobozen-südtirolfriulive-giuliaflorencexn--cesena-forl-mcbcarbonia-iglesiasaosta-valleycarrara-massadellogliastratrentinoa-adigexn--valleaoste-e7apesaro-urbinoxn--trentinosdtirol-7vbxn--trentin-sd-tirol-rzbxn--trentinsd-tirol-6vbtrani-andria-barlettatrentin-süd-tirolxn--trentinosd-tirol-rzbgrossetomonza-e-della-brianzasüdtirolreggiocalabriatrentinoaadigetrentin-südtirolverbano-cusio-ossolafriuliv-giuliaverbaniacampaniatrentino-aadigefriulivenezia-giuliasardiniaandriabarlettatranibarletta-trani-andriacatanzarooristanourbino-pesarocesena-forlìvalle-d-aostacampidano-medio123homepagesiracusatempioolbiasuedtirollombardiaavellinocesenaforlìtrentinofriuli-venezia-giuliabozen-sudtirolandria-trani-barlettabulsan-südtirolbalsan-südtirolmonza-brianzabolzanotrentino-sued-tirolbellunosalernolivornocrotonesondriodnshometrentinsud-tirolmassacarraratrentin-sud-tiroltrentino-suedtirolviterbobergamocesenaforliolbiatempiopalermobeneventoagrigentoofcoorgnetfmaitvphdengorgmilcomschnetedugovperagrikanieasukehandachitatokaiaisaikonanoharuamaobuhigashiuraowariasahiinuyamatobishimaiwakurashitarainazawatoyonegamagorimihamatoyotataharakariyayatomioguchikomakimiyoshinishiotokonamekiyosuchiryutoyohashiokazakiisshikikasugaikotakiratoeianjotogofusosetohazutsushimashinshirotakahamanisshinshikatsuhekinantoyokawaichinomiyatoyoakeodateogataakitaikawakyowahonjoogayurihonjonoshirokamiokakatagamimitanegojomeyokotekosakadaisenkazunonikahohonjyomoriyoshimisatohappoukamikoanihachirogatahigashinarusesembokufujisatokitaakitaitayanagiowanitakkomutsutsurutahirosakigonoheoirasetowadamisawanohejiaomorishingohiranairokunohehashikamitsugarushichinohehachinohenakadomarisannohekuroishisakaeisumiasahiotakiinzaiabikomatsudoyachiyomutsuzawakujukuriomigawakashiwatoganemihamanaritasakuranagaramobarahanamigawachoshishiroichoseikozakishisuikatorimidorichonankyonanfuttsuonjukufunabashinagareyamanodasosatakochuotohnoshourayasukimitsuyokaichibayotsukaidosodegauratateyamakamagayayokoshibahikariyachimatakatsuuratomisatokisarazukamogawaichikawanarashinoichinomiyashimofusaminamibososhirakoichiharaoamishirasatoikatahonaiainansaijoseiyoiyoozuuwajimaniihamanamikatamasakiuchikokihokutobetoonshikokuchuomatsuyamaimabarikamijimakumakogenyawatahamamatsunosabaeikedaobamasakaifukuiohionotsurugamihamawakasaminamiechizeneiheijikatsuyamatakahamaechizensoedaukihaomutaokawanishiogoribuzenonojosueumiokiotochikugosasagurisaigawamizumakishinyoshitomikurumekurateyamadakasuganakamamiyamanogatatakatahakataiizukakawaratagawakasuyaashiyainatsukimunakataminamitsuikishonaikurogifukuchikeisenhigashimiyakoshinguyukuhashiokagakiyamekogaongausuikahotohochuotoyotsumiyawakadazaifuhisayamatachiaraiyanagawanakagawahirokawachikujochikushinochikuhochikuzennamieotamaokumashowateneiiwakikoorinangoononishigoshimogoomotegomishimafukushimaasakawakagamiishishirakawaiitatefutabahiratayugawahanawakitakatakawamatakunimiyabukibandaihigashihironoyamatomiharuyamatsuriaizubangedatesomaaizuwakamatsuyanaizuaizumisatonishiaizuizumizakikitashiobarataishinkaneyamakoriyamainawashirotanagurafurudonosamegawasukagawaishikawatamakawaikedaogakitaruiginanenahashimahichisonakatsugawaibigawashirakawamizunamiminokamomitakekawauesekigaharatomikasakahogikitagatayamagatatajimianpachimotosuyaotsukakamigaharahidakanisekitokigujominogodoyorogifukasamatsutakayamawanouchihigashishirakawakasaharashimonitatsumagoichiyodakannakanrashowameiwakiryuotaoratomiokafujiokaitakuranaganoharahigashiagatsumatakasakishibukawaminakamikatashinatsukiyonokawabanumataannakaoizumimidorishintoisesakiuenoyoshiokakusatsutakayamanakanojonanmokutamamuratatebayashimaebashiotakekaitadaiwahongofuchukuietajimashobaramiharahatsukaichihigashihiroshimamiyoshikumanokurenakasakaseraseranishiasaminamifukuyamashinichionomichiosakikamijimajinsekikogentakeharaotobenanaeikedatohmaozoraobiraabirakyowaeniwataikibibaisharirebunerimohiroooketootarupippunishiokoppechitosefurubirahakodateshiranukakitahiroshimakushiroobihironanporoiwamizawaniikappukunneppufukushimanakasatsunaitoyourakuromatsunaiakabirakamisunagawashibechaurakawakamifuranonakatombetsuasahikawashimokawakayabeokoppebiratoriabashirisaromaatsumanumatahidakabifukamukawamikasahorokanaitoyotomisarufutsuhigashikawaishikarikitamiyoichiesashiiwanaitomariminamifuranoakkeshifuranotoyakoyakumootoineppushikaoishiraoinemuronayorohaboroashorobihororishirifujiutashinaihokutotakasuebetsuurausuassabukikonaishimamakinaiedatetoyabieinikiesanuryuoumuteshikagarikubetsuashibetsukimobetsuaibetsutobetsusobetsuembetsushimizuchippubetsurishirihokuryuhoronobeshintokutsubetsushibetsuhonbetsumombetsutsukigatakuriyamakoshimizushiriuchikutchanmurorannoboribetsukamishihorowassamushinshinotsukembuchiwakkanaikamoenaikiyosatotakinoueshikabesunagawafukagawanakagawatakikawakamikawahigashikagurahamatonbetsumatsumaemoseushirankoshishakotanimakanemashikeotofuketomakomaisandatambaitamiawajikasaiasagoshisoonoakoyashirotoyookaminamiawajiinagawafukusakitakasagokamigorikasugaharimayokawaashiyahimejiakashitaishiaogakisannantakinosumototakarazukanishinomiyashingugoshikinishiwakiyokatakaaioimikisayoyabukawanishiamagasakisasayamashinonsenkakogawaichikawakamikawatatsunotsukubaiwamaogawaasahisakaitokaioaraiitakobandodaigosuifuinaamikasumigaurakashimaomitamayachiyoshimodatetomobetoridehitachinakainashikisakuragawakasamayawaramoriyahitachiomiyanamegatayamagatahitachikamisuushikutakahagiibarakitonekoganakasowayukimihojosomitoryugasakishimotsumafujishirotsuchiurachikuseihitachiotashirosatotamatsukuriuchiharashikahakuinanaotsubatawajimakahokukawakitatsurugikaganominotosuzuuchinadakomatsuanamizunakanotohakusannonoichikanazawaiwateshiwafudaikawaimoriokaofunatohanamakikuzumakikitakamininohekunoheyamadayahabasumitaichinosekitanohatahiraizumirikuzentakatajobojiotsuchihironomiyakoiwaizumikarumaiichinohenodakujitonooshushizukuishifujisawamizusawakamaishikanegasakimannoutazukotohiraayagawazentsujihigashikagawauchinomikanonjisanukimarugamemitoyotakamatsutadotsunaoshimatonoshoakuneamamiizumihiokiyusuikinkoisasookouyamanakatanekagoshimakanoyaisenkawanabeminamitanemakurazakitarumizunishinoomotematsumotosatsumasendaioimatsudaayaseebinamiurazushinakaiodawaraiseharasagamiharahakoneaikawakaiseiatsugitsukuihadanoyamatoyamakitazamaoisochigasakininomiyayokosukakamakuraminamiashigarafujisawasamukawakiyokawahiratsukayugawaraokawaumajikochitsunootoyoakiinonishitosayasudahidakamiharasakawaniyodogawahigashitsunokagamigeiseisusakiotsukinaharisukumomurototosakamiochitoyotosashimizumotoyamanankokunakamurakitagawayusuharaogunichoyoukiasoutoozugyokutoamakusamifunetakamoriyamagaminamataminamiogunikikuchisumotoyamatonagasumashikiaraokumamotokamiamakusanishiharayatsushiroayabeseikasakyoideineujinakagyokameokakyotangokyotanabekyotambaminamiyamashiroyamashinatanabeyawatawazukaminaminantanmiyazuhigashiyamafukuchiyamakitamukokamojoyokizumaizuruujitawaraoyamazakinagaokakyokumiyamakawagoeinabeshimameiwaasahitaikiudonoisetsukisosakikuwanamihamamiyamasuzukatamakimisuginabarikumanokomonominamiisewataraitobakiwatakikihotadomatsusakayokkaichikameyamaureshinoishinomakishichikashukuohirataiwaosakizaohigashimatsushimashikamaiwanumashibataogawaraonagawakawasakiseminemarumoriminamisanrikukakudamuratawakuyatomiyanatoriwataritagajomisatotomekamirifushiroishimatsushimayamamotoshiogamafurukawahyugaebinotsunosaitoayakushimanobeokakitauramiyazakitakazakigokaseshiibamimatashintomikunitomikitakatakobayashikawaminamitakaharukijotakanabemiyakonojonishimeranichinankitagawakadogawamorotsukakisofukushimaminamimakisakaeobuseikedaogawamiasaokayaasahiotakiotarichinoinaomichikumakomaganechikuhokukaruizawayasuokaooshikaikusakaminamiaikitogakushimatsukawakawakamitateshinatakamorikitaaikishiojirimiyadahakubaiizunaiijimaiiyamamiyotasuzakayasakatoguraookuwanagawaminowahirayayamagataminamiminowafujimiomachisakakitakaginaganonakanosakuhokomoronagisoshinanomachiwadauedaiidaharasuwatomiachiaokianankisosakunozawaonsenagematsutakayamashimosuwamatsumotoyamanouchinakagawamochizukiazuminotatsunoobamaomuraseihiunzenosetofutsuikichijiwanagasakiisahayahasamisaikaikawatanasasebohiradokuchinotsugototogitsutsushimashimabarashinkamigotomatsuurayamazoekashibaikomakawaitenrioyodosangokoryoudaojiikarugayamatokoriyamatenkawakatsuragikurotakikawakamimiyakemitsuetakatorikamikitayamayamatotakadahegurishinjokanmakisakuraitawaramotogoseoudanarasoniandokawanishishimoichihigashiyoshinokashiharashimokitayamanosegawayoshinomintsivorytopazsakuragehirnsumomoaseinetopalmail-boxmokurenyoitamuikaojiyagosensanjoaganomyokoseiroagaomishibataniigatanagaokamurakamiuonumayuzawakariwatagamitainaitsunanminamiuonumatochioyahikojoetsuseiroukamosadoizumozakitokamachiitoigawasekikawakashiwazakitsubamemitsukekokonoesaikiusukibeppuusahimeshimakunisakihasamataketatsukumihitaoitahijikusuyufukujukamitsuebungoonobungotakadaibaraniimibizentsuyamaokayamakasaokahayashimayakagemaniwaakaiwamisakishinjotamanotakahashikibichuowakesojanagishookumenannishiawakurakurashikiasakuchisetouchikagaminosatoshotomigusukunakagusukuyaeseizenaurumaiheyaaguniogiminanjokinminamidaitokitanakagusukuyonaguniokinawaishigakikunigamiurasoekadenataramahiraraginozataketomishimojizamamitonakiitomanhigashimotobuyonabarugushikamionnanahanagohaebarukumejimakitadaitonakijinnishiharayomitanginowantokashikiishikawaikedasuitaminohizuminishisakaikananabenodaitoosakasayamayaokishiwadatadaokakaizukatondabayashichihayaakasakakumatorikadomasayamahigashiosakashijonawatehirakatataishimisakitajirihannansennankatanotoyonominatosettsuhigashiyodogawaibarakinosekitachuohigashisumiyoshifujiiderakashiwaraizumiotsutoyonakamatsubaramoriguchiizumisanoshimamototakatsukineyagawahabikinotakaishikawachinaganoyoshinogarikamiminearitaouchiimarihizenogikashimaariakekiyamafukudomikitagatakitahataomachigenkaikanzakinishiaritakyuragisagataratosutakushiroishikaratsuhamatamakouhokukawagoeyoshidasatteogoseirumaasakaurawaogawaniizaomiyayoriiotakishikihonjooganohannohanyuinasaitamaokegawaarakawayoshikawayokozehasudasayamahidakafukayachichibuiwatsukiryokamiyoshimikamiizumifujimiwarabiranzanmiyoshiminanoyashiosakadosugitomisatohigashichichibutodasokakukiyonokazoshiraokakasukabekounosukawajimatsurugashimamiyashirokitamotohatoyamamoroyamahatogayakumagayakawaguchinagatorokamisatomatsubushinamegawatokigawakamikawafujiminohigashimatsuyamakoshigayatokorozawas3isk01isk02ryuohkoseikonanaishorittotakashimamaibarahikonetorahimenishiazaikokagamokotoyasuotsukusatsunagahamamoriyamatoyosatotakatsukinotogawaomihachimanhigashiomiakagiunnanizumogotsuamayatsukakakinokimatsuehamadamasudahikawahikimiokuizumoyasugiyakumomisatotamayuohdahigashiizumookinoshimanishinoshimatsuwanoshimaneshimadafujiedayoshidashimodagotembaiwataatamikosaiyaizuitoizumishimahaibaramakinoharaomaezakikawanehonkannamisusonohigashiizufukuroinumazukawazufujiaraishizuokahamamatsushimizuizunokunimatsuzakimorimachiminamiizunishiizukikugawakakegawafujikawafujinomiyaujiietsugaoyamayaitaohiranikkoashikagakuroisokanumasakurashioyakarasuyamamotegiichikaikaminokawatochigihagamokanogisanobatonasumibunasushiobaranishikatautsunomiyaiwafunemashikoshimotsukeohtawaratakanezawaitanokomatsushimatokushimaichibaminamiaizumiwajikikainanmiyoshinarutomimamugiananmatsushigesanagochishishikuinakagawamachidachiyodakomaefussainagitaitochofufuchuomeotahigashiyamatotoshimaokutamaaogashimakodairaedogawaarakawahachiojishinagawatachikawashibuyasuginamihinodekiyosesumidaoshimanerimamitakahamuraadachinakanomizuhobunkyomegurominatokoganeihigashikurumekokubunjihigashimurayamamusashimurayamatamakitahinochuokotokatsushikakouzushimaogasawaraakishimakunitachishinjukusetagayamusashinohachijoitabashiakirunohinoharachizunanbukotouramisasawakasayonagokogehinoyazutottorinichinansakaiminatokawaharaoyabetairainamiasahinantoimizufuchutakaokakurobeyamadajohanatoyamatonaminyuzenfunahashinakaniikawanamerikawaunazukitogahimiuozufukumitsutateyamakamiichiiwadearidayuasainamitaijikatsuragiaridagawatanabemihamahidakakainankiminomisatoshingushirahamakamitondayurakozakoyagobokitayamawakayamakudoyamahashimotokushimotokozagawahirogawakinokawanachikatsuurarsuseroeoishidasagaeoguniasahinagaitendonanyoobanazawanishikawasakataohkuratozawamikawamamurogawayamagatafunagatatakahatashonaishinjokahokuiideyuzakawanishitsuruokakaminoyamayamanobeshiratakamurayamanakayamakaneyamahigashineyonezawasakegawamitouubeyuuabushimonosekitabuseoshimatoyotaiwakunihikarishunannagatohagihofukudamatsutokuyamashowadoshitsurunanbukoshukaiminami-alpsnirasakikosugeotsukioshinohokutominobuyamanashifuefukichuokofuichikawamisatoyamanakakonakamichitabayamanishikatsuranarusawafujikawahayakawafujiyoshidafujikawaguchikouenohara長野京都岐阜大阪三重群馬千葉滋賀佐賀奈良adednelgaccogogror秋田愛知高知埼玉沖縄栃木熊本岩手青森山梨新潟島根鳥取長崎香川宮城石川大分宮崎茨城山口兵庫山形徳島広島福島福岡岡山富山静岡愛媛福井東京xn--4it168dhatenadiaryxn--vgu402ckawaiishophatenablogcocottenamaste北海道penneehimeiwateversestabachibashigagonnagunmapermahaccaakitaosakauh-ohblushkochiaichifukuikuroncapooitigohyogotokyokyotopunyuthickcheap0t00g00j0mie2-ddaapyawjg0amfemsubxiiboomoobutchueekpgwrgrherskrboyrdyupperunderflierchipsmydnsheavyangryhippygirlyrulez神奈川鹿児島和歌山bambinaxn--nit225kokayamasaitamaxn--k7yn95exn--1lqs03nsapporoparasitelolipopmcxn--efvn9sniigatafukuokatokushimafukushimahiroshimakagoshimafakefurokinawaxn--8pvr4ucoolblogxn--0trq7p7nnkawasakinagasakimiyazakichilloutxn--8ltr62kxn--klty5xpeeweezombiecutegirlxn--rny31hxn--uuwu58axn--ntso0iqx3axn--djrs72d6uytoyamanikitanyantakagawamimozanagoyaboyfriendxn--2m4a15egreaterchowderegoismyamagatafashionstorexn--elqq16hxn--pssu33lsendaimiyagixn--rht27zpecoriaomorisaloonwatsonvivianxn--djty4knobushipigboatnaganopinokoxn--f6qx53asadistvelvetsecretxn--5js045dchicappayamanashiibarakidigickgirlfriendxn--1lqs71dmongolianxn--c3s14mxn--qqqt11mtochigixn--5rtq34kparallelo0o0mondkobesagabonadecaoitanarafoolkilldecimainhiholomosblokilociaoundopupugifutankcrapflopnooroopsmodsholyjeezstripperpepperbittershizuokaxn--rht3dkitakyushureadymadeicurusversusmatrixxn--rht61ehungryfloppygloomycrankyhandcraftedlittlestarxn--klt787dxn--kltx9awhitesnowsunnydaytottorilovepoptheshopbuyshopxn--5rtp49cxn--d5qv7z876cwebaccelxn--kbrq7oxn--4pvxsxn--1ctwolovesickkumamotocatfoodxn--tor131oyokohamawakayamatonkotsuxn--ehqz56nxn--uist22hxn--6btw5axn--kltp7dyamaguchifrenchkisspussycatxn--4it797kxn--uisz3gbabybluexn--zbx025dnetgamersxn--7t0a264ckanagawaxn--6orx2rishikawaxn--ntsq17ghalfmoonschoolbusjellybeanxn--mkru45iusercontentlolitapunkxn--32vp30hsakurastoragehokkaidoshimanecandypopbabymilksupersaleweblikeraindropbackdropwebsozaikikirarahateblodaynightmeneacsccogoormobiinfoaeusxxorgmilcomnetedugovorgcomnetedugovbizinfotmprdorgmilcomnomedugovassnotairespresseassocoopgouvveterinairemedecinpharmaciensorgnetedugovtraorgcomedurepgovmeneperekgacscaiiocogoitoresmshsseoulbusanulsandaeguc01milvkimmvchungnamjeonnamjeonbukeliv-dnsgyeonggijejueliv-cdnincheondaejeongangwongyeongbukgwangjuchungbukgyeongnameliv-apicoeduindorgcomembnetedugovorgmilcomnetedugovjcloudorgcomnetintedugovperbnrinfocooyorgcomnetedugovipfscanvamypepw3sstorachakeeneticjoinmcinbrowserdwebcyonnftstoragemyfritzaemewphlxachotelltdorgcomwebsocschngonetintedugrpgovassnomgacsccoorgnetedugovbizinfo123websiteidorgmilcomasnnetedugovconfidmedorgcomplcschnetedugovaccoorgnetgovpresstmassoirseproxaccosoundcasthoptocraftvp4c66orgnetedugovitsmcdirmyboxbarsyedgestacksynologylogintonohostwebhopdiskstationi234tcp4hoocgroknoipprivmydsddnsdnsforlohmustransipdscloudfilegear-sgbrasiliafilegearframerbarsybarsyonlinecoprdorgmilcomnomedugovinforgcomnetedugovnameacprorgcomartnetedugovpresseinfoassoinstgouvorgnycedugovbarsydscloudjuorgcomnetedugovminisiteaccoororgcomnetgovorgmilcompronetintedugovbizmuseumnameinfoaerocoopaccoorgcomnetintedugovbizcooporgcomgobneteduorgmilcomnetedugovbiznameaccoorgmilneteduadvgovcoorgcomnetaltgovforgotherhiskeeneticispmanagernomassoprod5476132eastasiacentraluswesteuropewestus2eastus2rucdnwest1-usfra1-desandboxjls-sto1jls-sto3jls-sto2aglobalabglobalsslmapprodfreetlsmapvpslon-1lon-2ny-1fr-1sg-1ny-2paassnwebpaashostingjelasticnordeste-idcsocuserpagescwebfileblobservicebuscoreatlricnjsjelasticwebsitestoragesezagbinruhuukjptsmyspreadshopmynetnameakamaiorigin-stagingfrom-coipv64dynv6cdn77serveblogadobeaemcloudhicamsprytdnsupno-ipownipde5ovhicpfirewall-gatewaysytesmypsxbarsyusgovcloudapimyamazemyradwebakamaihdsaveincloudfastlylbfrom-lasubsc-paysquare7in-the-bandblackbaudcdnhomelinuxoninfernoctfcloudservebbsdns-dynamiccloudfrontakamai-stagingipifonyham-radio-opsenseeringclickrisingcommunity-profrom-nylocalcertgrafana-devedgesuite-stagingcloudflareanycasteating-organicatlassian-devmydattofeste-iplocaltotorprojectknx-serveredgekeycloudflareglobalcloudyclustercasacamserveftpakamaized-stagingakamaiorigindns-cloudmyeffectboomlabotdashbuyshousestwmailhetemlazure-mobilein-dslthruhereredirectmedynuddnsbouncemesupabaseluyanicloudappakamaicloudfunctionsdebiannhlfanpgafanstatic-accessin-vpnmysynologymafeloappudohomeftptrafficmanagersiteleafseidatmemsetcloudflarecloudaccesskeyword-onazure-apiis-a-chefdoes-itgets-itwebhopselfiphomeipkicks-assedgesuitewindowsserver-ontunnelmolemydissentscrapper-sitecloudflarecnuni5srcfggffiobbzabchrsndenodynuopikddnsvpndnsakadnselastxkinghostvps-hostfastlyhomeunixazureedgeshopselectdontexistmyfritzcloudjiffyalwaysdatasells-itsquaresbroke-itazurefddattolocalat-band-campmeinforumfamilydsazurestaticappsdefinimabplaceddnsaliasdynaliasnow-dnsblogdnsroutingthecloudendofinternetdsmynasakamaiedgemymediapcadobeio-staticakamaiedge-stagingakamaihd-stagingddns-ipprivatizehealthinsurancelive-onkrellianschokokeksmassivegridmysecuritycamerarackmazeserveminecraftfrom-azis-a-geekakamaizedmoonscaleoffice-on-theusgovtrafficmanageradobeioruntimeedgekey-stagingreserve-onlinechannelsdvrdnsdojousgovcloudappcdn77-sslapps-1and1podzoneazurewebsitesdynathomescaleforceyandexcloudvusercontentisa-geekcdn-edgescoaemalcesappwriteazimuthtlonarvonoticeablestorecomwebrecnetperotherfirminfoartslgdloncogoiltdorgmilcolcomplcschgenngonetedugovbiznamefirmmobiacincoorgmilcomnomwebgobnetintedubizinfocomyspreadshopdemongovtransurl123websitehosting-clusterkhplaycistrongsnesosvalervålerxn--vler-qoaossandeheroysandeherøybøboheroyherøyxn--hery-iraxn--b-5gavalerbøboxn--b-5gasandesandexn--hery-iraxn--vler-qoavålerhåreålaahavaofsfvfhlolnlalrlhmfmtmahcostntbuåstrmreigersundmyspreadshopgálsáeidsvolltingvollgildeskalflorøvadsøvardøvanylvenxn--bhccavuotna-k7astrandaxn--kvnangen-k0axn--sknland-fxaxn--mosjen-eyarakkestadhyllestadnannestadvevelstadvaapstenordre-landsondre-landsøndre-landtjieltexn--vrggt-xqadsør-aurdalsor-aurdalheradstordmoldefordeførdeseljefedjeryggehemnexn--krehamn-dxasognegranesøgnebrynetjomevallebykletokkegiskedovretjømehobølvoldasaudatolgasømnaviknadønnasomnadonnatranafrananesnaraumasmolatrænafrænalesjasmølaørstaorstahitrafloraaukraloppafrøyarissasnasahalsagalsaromsaraisaráisafroyasnåsagronghobolfjelltydalårdalardalaskimharamkraanghkekråanghkesorumbarumhurumbærumsørummodumsálátbálátfrognbjugnvåganvagangulenskienløtenlotenstrynvefsnxn--merker-kuaskaunsveiobømlobomloskjåkvardoflorovadsosalatbalatsálatklæbuklabuselbubarduulvikskjakklepprisørxn--nttery-byaeflåeidflahofmilgolholsellomskifetvikdepvgsfhsaskerrisorhamarasnesåsnesrørosrorosxn--slat-5namasoynaroyvaroyluroydyroyaskoyradoyandoyrodoymeloyradøyandøyrødøymeløyaskøylurøydyrøymåsøyværøynærøyhoylandethøylandetdivtasvuodnalørenskoglorenskognesoddtangenxn--tjme-hraxn--smla-hraxn--stjrdal-s1aunjargalillehammerunjárgaxn--hamary-fyadavvenjargaxn--bearalvhki-y4a123hjemmesidegjerdrumxn--brnnysund-m8acxn--tnsberg-q1axn--mlatvuopmi-s4axn--snsa-roaxn--skierv-utaxn--brum-voatysfjordkvafjordeidfjordkvæfjordsongdalenmjondalenmjøndalenxn--gls-elackragerogáŋgaviikagangaviikasørreisasorreisasør-varangersor-varangerxn--risr-iraskiervaxn--frna-woaxn--trna-woakvinesdalleksvikleirvikrøyrvikroyrviksvelvikvenneslaevje-og-hornnessandnessjøenmarnardalvindafjordsandefjordenebakksnillfjordullensvangxn--trany-yuabrønnøysundnamsskoganaustevollxn--stjrdalshalsen-sqbnord-aurdalnord-frontrøgstadtrogstadgrimstadflakstadgjerstadxn--sandy-yuaxn--leagaviika-52bnore-og-uvdalvegarsheixn--rlingen-mxaxn--ggaviika-8ya47hvegårsheikarlsoykvitsoymasfjordenhamaroyinderoyosteroydavvenjárgasauheradguovdageaidnuxn--vre-eiker-k8abronnoysiellakkrødsheradkrodsheradkvinnheradbrønnøyxn--mtta-vrjjat-k7afxn--lrenskog-54akvitsøyvárggátkarlsøyosterøyinderøyhamarøybronnoysundxn--aurskog-hland-jnbbahccavuotnabáhccavuotnagiehtavuoatnastor-elvdalmidtre-gauldalxn--gildeskl-g0akarasjokevenassixn--bievt-0qaxn--yer-znalebesbynessebyxn--hbmer-xqamalselvmålselvxn--unjrga-rtamøre-og-romsdalmore-og-romsdalhareidmelandørlandorlandstrandålgårdsolundalgardafjordåfjorddielddanuorrikautokeinoxn--stre-toten-zcbskodjeaejriestangeliernebamblestokkefauskesnåasesnaasekongsvingerlangevagberlevagxn--flor-jrahattfjelldalostre-totenøstre-totenvestfoldxn--mely-iraálaheadjualaheadjunordreisaxn--troms-zuaxn--lgrd-poacporsangerflatangerstavangerleikangerbremangersamnangergieldakarasjohkaxn--rdy-0nabfrostautsirasnoasatromsaxn--sr-aurdal-l8aflekkefjordjølsterjolsteraremarkhedmarknååmesjevuemienaamesjevuemiexn--vard-jrarollagmeråkermerakerorskogørskogxn--bdddj-mrabdákŋoluoktaxn--osyro-wuaaknoluoktatrysilskjervøymandaljondalbindalrindalmeldalsuldalorkdalsigdalalvdallærdalhurdalsirdalverdallerdallardaloppdalåseralaseralhadselkragerødivttasvuotnaoverhallasteinkjerxn--hnefoss-q1askedsmokorsettromsøxn--dyry-iravestre-totenmuseumxn--sandnessjen-ogbrahkkeravjufylkesbiblbájddarbajddarxn--laheadju-7yarennesøyxn--koluokta-7ya57hxn--hgebostad-g3aleirfjordstorfjordbalsfjordbåtsfjordbatsfjordmuosátbievátloabátkárášjohkanøtterøyxn--mjndalen-64anordkappláhppilahppialstahaugsiljanverranrøykenroykenhaldenlyngenbergenhortenhønefosshonefosstroandinbeiarnvarggatosoyroosøyrotromsoidrettmuosatbievatruovatloabatvoagattynsetnessetxn--indery-fyaskánitskanitraholtråholtxn--ystre-slidre-ujbandebusarpsborgbearduxn--karlsy-fyahordalandjorpelandjørpelanddeatnuringsakersør-odalsor-odalxn--slt-elabringerikeaudnedalnittedalnissedalhemsedalslattumsurnadalxn--blt-elabelverumstjørdalnaustdalhjartdalgjøvikfyresdalhasviknarviklarvikgjovikmalvikgamviklenvikporsgrunnstjordalengerdaldrobakdrøbakxn--msy-ula0hvestvagoyxn--vgan-qoaxn--ryken-vuaxn--lten-graxn--stfold-9xaxn--hpmir-xqaxn--lury-iramálatvuopmimalatvuopmitysværkirkenesbirkenesmoskenesbáidárxn--fjord-lraxn--rdal-poabahcavuotnabáhcavuotnaxn--frde-gralindåsbearalvahkixn--hobl-iraráhkkerávjuxn--loabt-0qavågåáltábodøsundlundraderådeetnetimeholeauregrueoddavagavegaranatanaarnasolasulaaltalekafusavangbergkvamåmliamlibokntinnroangranosenoslobodorøstroststatåmotamotivguprivøyeroyerliermossvossxn--nvuotna-hwalusterlunnermarkerhábmerhabmerhvalerfjalerxn--rholt-mratysvarbaidarfitjargaularhápmirhapmirmelhusfosnesøksnesoksnestysneshemnesevenesflesbergeidsbergtonsbergtønsberglindasxn--sndre-land-0cbnamsosxn--srum-graøystre-slidreoystre-slidrevestre-slidretrondheimbalestrandxn--langevg-jxaaustrheimxn--skjk-soavagsoyaveroysandoykarmoyfinnoytranoyvestbytranbysykkylvenxn--hyanger-q1aspjelkavikandasuoloxn--fl-ziaxn--drbak-wuastathellexn--sr-varanger-ggbtelemarkxn--bhcavuotna-s4axn--porsgu-sta26fčáhcesuolocahcesuoloakrehamnåkrehamnsandøykarmøyfinnøytranøyvågsøyaverøynamdalseidxn--lesund-huabadaddjaxn--vegrshei-c0axn--btsfjord-9zagildeskålporsanguxn--trgstad-r1anávuotnanavuotnahammerfestxn--sgne-graxn--brnny-wuacibestadharstadnarviikaevenáššivestnesgjemnessandnesagdenesrennesoyxn--avery-yuaxn--tysvr-vrabearalváhkikongsbergspydebergrandabergxn--andy-iradavvesiidaxn--krdsherad-m8aporsáŋgufredrikstadbjerkreimringeburennebuaurskog-holandnotteroyxn--vgsy-qoa0jxn--rmskog-byaskierváivelandbyglandfrolandaurlandforsandxn--bjddar-ptamidsundålesundalesundfetsundfarsundovre-eikerøvre-eikerakershusxn--moreke-juasørfoldøstfoldostfoldsorfoldhøyangerhoyangerlevangerorkangertanangerxn--vestvgy-ixa6olillesandulsteinxn--rennesy-v1agranvinskjervoyxn--klbu-woalavagisxn--h-2faxn--ryrvik-byakafjordkåfjordseljordfolkebiblxn--gjvik-wuajevnakerxn--kfjord-iuabudejjuxn--kranghke-b0axn--davvenjrga-y4axn--rland-uuaxn--ldingen-q1axn--mlselv-iuaxn--rady-iraxn--linds-prabrumunddalxn--ygarden-p1amo-i-ranaeidskogrømskogromskoghjelmelandxn--finny-yuaxn--sr-odal-q1axn--skjervy-v1aballangenkvanangenkvænangengratangenxn--hmmrfeasta-s4acvossevangensuohkanxn--rde-ulaxn--mli-tlaxn--ksnes-uuanordlandskanlandskånlandsortlandfuoiskuxn--rros-graxn--hcesuolo-7ya35bxn--eveni-0qa01gagaivuotnagáivuotnaxn--seral-lradrammenmodalenmosjoenjan-mayentorskensteigengloppenxn--snes-poamatta-varjjatxn--sr-fron-q1aomasvuotnajessheimbådåddjåxn--krager-gyaxn--kvfjord-nxaxn--asky-iraxn--snase-nraxn--bidr-5nacholtålenxn--vads-jraxn--jlster-byamosjøenxn--rst-0nastavernxn--ostery-fyaxn--oppegrd-ixaxn--sknit-yqaxn--risa-5naoppegårdskiptvetrendalenholtalenxn--mot-tlaxn--lhppi-xqaxn--holtlen-hxaxn--srreisa-q1akopervikxn--muost-0qaxn--bmlo-grahokksundkvalsundegersundxn--karmy-yuaullensakerxn--hylandet-54axn--kvitsy-fyaxn--bod-2nalangevågberlevågkristiansandxn--rsta-frahornindalstjørdalshalsenstjordalshalsensandnessjoenhámmárfeastaxn--lrdal-srasør-fronsor-fronnord-odalkristiansundmátta-várjjatvestvågøynesoddennotoddenbuskerudøygardenoygardensalangenlavangenralingenrælingenlodingenlødingenleaŋgaviikalaakesvuemieleangaviikauenorgexn--srfold-byaaskvollxn--rskog-uuaxn--nry-yla5gxn--vry-yla5ghammarfeastaxn--rhkkervju-01afxn--givuotna-8yakommunekrokstadelvanedre-eikerhagebostadhægebostadxn--berlevg-jxakviteseidxn--s-1faxn--l-1faxn--nmesjevuemie-tcbafuosskomoårekemoarekexn--lt-liacxn--jrpeland-54asvalbardoppegardholmestrandtvedestrandsogndalsokndalarendalsunndalfolldalxn--krjohka-hwab49jlyngdaletnedalnorddalsaltdalgausdalskedsmovaksdalgjesdalstordalxn--frya-hraaarbortedrangedalxn--smna-graaurskog-hølandxn--vg-yiabtjeldsundhaugesundlindesnesxn--mre-og-romsdal-qqbxn--dnna-gradynheremerseineshacknetenterprisecloudmineaccomaorimāoriorgmilcriiwigennetschoolhealthkiwigovtgeekxn--mori-qsacloudnsparliamentcomedorgcompronetedugovmuseumwebsitekinservicebarsywebsitebuildereerobookheimdnsleapcelleero-stagetechcrscsslorigingohomecdbedeeeiemesecabgngilnlalplchfisiincnnoroptatitmtltruauhulumkdkukskjplvtrgrfrkrhrusesismycynzcznetinteduassoososcloudstgbetaaezaeuhkusjshatenadiarycdn77hoptozaptois-a-knightmyftpno-ipjpnddnssdpdnsspdnsbarsysweetpepperis-a-bruinsfanis-very-sweetservegameis-a-soxfanhomelinuxcdn77-secureservebbsmisconfusedwebredirectblogsitefreedesktopcouchpotatofriestoolforgeaccesscamis-lostreadmyblogsmall-webfedorapeopleserveftpis-a-celticsfanmywirepotagertwmailin-dslsellsyourhomeread-booksfreeddnscable-modemis-savednflfanufcfanmlbfanstuff-4-saleendoftheinternetin-vpnmy-firewallhomeftpis-localis-a-chefboldlygoingnowherewebhopselfipkicks-assroxatunkcamdvrfedoraprojectgotdnsdvrdnsdyndnspubtlspimientahomeunixdontexistfedorainfracloudwmflabsfspagesbmoattachmentsteckidsfamilydsdnsaliasdynaliasnow-dnscloudnsdoomdnsduckdnsblogdnshomednsroutingthecloudendofinternetdsmynasip-dynamicpoivronhttpbinmyfirewallis-very-evilmysecuritycamerais-a-linux-userwmcloudis-a-geektuxfamilyis-a-candidatedoesntexistis-very-badhobby-sitegame-hostaltervistais-foundis-a-patsfandnsdojohepforgepodzonedynservcollegefanis-very-goodfrom-meis-very-niceisa-geeknerdpolacmedsldingorgcomnomgobabonetedupleskaemhlxmyboxrockyprvcydeuxfleurspdnscodebergheyflowstatichostorgmilcomnomgobneteduorgcomeduiorgmilcomngonetedugovcloudns1337ngrokacorggogfamcomwebgobnetedugokgopgkpgovgosbizpasaugumicsopozpapuwmwsrprusiskwpspkppspkmpspokeoiawsawifoumsdnskokwpmuppuppsppiwwiwoowuzswkzoschrzpisdnwzmiuwwitdpssewsseumigugimoirmpinbwinbwiihupporzgwgriwupowwskrwioswuozstarostwokonsulattmpccopruszkowmyspreadshopostrodakartuzyopolegminamediaustkazgorajgoraolawailawalomzawloclradombytomjaworznotargilubinkoninzagantorunkutnokepnonakloczestsopotsanokturekplockslasksklepzarowlukowmedaidgdaorgmilrelcomnomatmgsmartneteduelkgovwawsossexbiztgorysejnytychypomorzeboleslawiechomesklepsdscloudunicloudzakopanelegnicarawa-mazbydgoszczswidnikkrasnikwloclawekbielawamragowograjeworealestatebeskidykaszubymalopolskaprzeworskswiebodzinlecznadfirmaszkolawarmiagdyniamiastakazimierz-dolnymalborkswidnicadlugolekaostrolekapodlasieelblagtravelsimplesitezachpomormielecszczecinnieruchomosciwalbrzychlezajsklublinbedzinpoznanwielunmielnooleckostarachowicedkontopowiatwroclawrybniksuwalkileborkslupskgdanskostrowwlkptarnobrzegtourismwegrowkrakowglogowyou2pilanysamailwrocinfoagroautobeepshopprivlapypiszlodzcfolksecommerce-shopmazurypulawyskoczowrzeszowpomorskiezgierzkaliszolkuszlowiczostrowiecsosnowiecmazowszewodzislawbialowiezazgorzeleckatowicepabianicejelenia-gorawolominkarpaczsieradznowarudaczeladzkonskowolaskierniewiceswinoujscieturystykabieszczadycieszynketrzynolsztynbialystokbabia-goraprochowicewarszawastalowa-wolapolkowicegorlicegliwiceponiatowalimanowalubartowaugustowkobierzyceopocznognieznoszczytnokolobrzegshoparenapodhalebielskoklodzkostargardatwithplayitownnamecoorgnetedugovacorgcomproestnetedugovbiznameislaprofinforechtngrokmedaaaacacpaenglawjurbarbarsykeeneticavocatacctcloudnsorgcomsecplonetedugov123paginaweborgcomnetintedugovnomepublidkinbarsygovx443cloudnsorgmilcomnetedugovcooporgmilcomschnetedugovnamecomcannetlibassoaemclantmcontstoreorgcomnomrecwwwbarsyfirminfoshopartsstackitmyddnswebspacelima-cityacincooxorgedugovbarsybrendlyhbvpsvpsspectrumlandinghostingacppmordoviamcprecbgorgmilcomspbnetintedumsknovgovbirrasmcdirmytismircloudvladimirnalchikadygeyamarinepyatigorskmyjinobashkiriaeurodirvladikavkazna4ugroznykustanaikalmykiacldmaildagestaniranbuildcanvaliaravalwixdevelopmentappwritemigrationneedleverceldatabasestackitcodereplravendbonporterlovableaccoorgmilnetgovcoopmedorgcompubschnetedugovservicemecomygovorggovtvmedorgcomnetedugovinfoedgfacbmlonihkutwpsryxzbdtmacfhppmyspreadshopbrandpartiorgcomfhvpress123minsidaitcouldbeworlanbibkommunalforbundfhskiopsyskomvuxkomforbnaturbruksgymnloginlineorgcomnetedugovenscaledeuusentbotdaorgmilcomnetgovnowteleporthashbangplatformlovablebarsyshopwarebasehoplixbarsyonlinemsf5gitappgitpagewawamscofigma-govcaffeinefigmacanvasoltstscwputerbarsysupportchatgptsquareomniweopensocialcpanelplaycodenotionnovecorewpsquaredpreviewjelecyonbyensrhtfastvpspieboxconvexjouwwebheyflowplatformshloginlinemadethissourcecraftclouderaorgorgcomartedugouvunivmeorgcomnetedugovsurveysstatichfheiyuxs4allprojectmyfastubervibehostapp-ionosdeployagentmecoorgcomschnetedugovbizcncostoreorgmilcomneteduembaixadaconsuladokiraranohoprincipesaotomeheliohobarsystorebaseshopwaresellfyabkhaziavologdamordoviapenzalenugsochinavoiexnetspbmsknovnorth-kazakhstanashgabadkareliaarmeniageorgiavladimirnalchikivanovobukharaadygeyakhakassiakalugakrasnodarjambylaktyubinsktroitskbryanskobninskkurganazerbaijanpokrovskbashkiriatselinogradvladikavkazmurmansktulatuvamangyshlaktashkentchimkentgroznykaragandatermezarkhangelskkustanaikalmykiabalashoveast-kazakhstankaracoldagestantogliattibarsyredorgcomgobedumirenknightpointaccoorgjelasticdiscoursecleverappsschacmiincogoornetonlineshopcogoorgmilcomwebnicnetintedugovbiznametestcoorgmilcomnomnetedugovorangecloudpersoindorgcomfinnatnetgovensmincomtourismintlinfox0611oyaorgmilcomnetedugovquickconnectvpnplusnettprequalifymeaddrmyaddrntdllwadlnctvavdrk12orgmilpolbeltelcomwebgennetedutskkepgovbbsbiznameinfocoorgmilcompronetedugovbiznameinfobetter-thanworse-thansakurafromdyndnson-the-webmymailerorgmilurlcomneteduidvgovmydnsgameclubebizmeneacsccogotvorhotelmilmobiinfovodteiflgplkmsmsbcckhincndnvncoztltmkckppzpdprvcvkvlvcrkrkscxuzchernovtsyrivneyaltaodesavolynrovnolutskltdinforgcomnetedugovbizvinnicazhitomirternopilpoltavakropyvnytskyizaporizhzhiasevastopolsebastopoluzhgoroduzhhorodkharkovkharkivvinnytsiakhmelnytskyizaporizhzhecrimeaodessazhytomyrnikolaevcherkassydonetskluganskluhanskkirovogradivano-frankivskchernivtsikrymkievkyivlvivsumyzakarpattiamykolaivcherkasychernigovkhersonchernihivdnipropetrovskdnepropetrovskkhmelnitskiyneacsccogoorusorgmilcomedugovmyspreadshopadimono-ipbarsybarsyonlinelayershiftnh-servretrosnubapicampaignservicelugaffinitylotteryweeklylotteryraffleentrygluglugsmeaccoindependent-inquestnimsitecopropymntltdorgplcschnetgovnhsbarsyindependent-commissionindependent-reviewpolicepublic-inquiryindependent-panelconnhospindependent-inquiryroyal-commissionoraclegovcloudappscck12libccphxcclibpvtparochchtrcck12libcceatonk12coglibtecgendstmusann-arborwashtenawcck12glghcck12sealibforksolympiabainbridge-islkeyporthoquiamyarrow-pointcentraliaport-townsendsequimport-ludlowrentonsilverdalebremertonredmondsheltonbellevueport-orchardport-angeleskingstonchehalisaberdeengig-harborseattlepoulsboidmdndsddemenegacalamaiavawapailalflnmdcncscohnhmihiviwiriinmntnmocoutvtctmtgunjokakwvnvprarorasmskstxwynykyazisadninsnngosrvis-bymircloudservernamepointtoenscaledland-4-salefreeddnsstuff-4-saleazure-apinoipcloudnsgolffanheliohostazurewebsitesgvorgmilcomgubneteducoorgcomnetd0egvorgmilcomnetedugovmydnsiacostoree12orgmilcomnomwebgobbibrectecnetintedugovraremprendefirminfoartseducok12orgcomnethidnsidacaiiosonlahanamhanoicamauhueorgcompronetintedugovbizbacninhtayninhhoabinhnamdinhtravinhhaiphongvinhlonghaiduongquangnamquangtrithuathienhuequangninhbacgianghaugiangquangbinhsoctrangbentrethanhphohochiminhdanangkontumhatinhkhanhhoathanhhoahealthgialailaocaiyenbaibackanngheanlonganphuyenphuthocanthodaklakdongnainameinfovinhphucdongthapkiengiangtiengiangquangngailaichaulangsonlamdongdaknonghagiangangiangcaobangbinhduongninhthuanbinhthuanbaclieuthaibinhninhbinhbinhdinhtuyenquanghungyenbaria-vungtauthainguyendienbienbinhphuocschbizputerimagine-proxyorgcomnetedugovcloud66advisormypetsdyndnsxn--8dbq2axn--4dbgdty6cxn--5dbhl8dxn--hebda8bxn--80auxn--d1atxn--c1avgxn--o1acxn--o1achxn--90azhxn--55qx5dxn--uc0atvxn--od0algxn--wcvs22dxn--gmqw5axn--mxtq1mxn--12c1fe0brxn--h3cuzk1dixn--12co0c3b4evaxn--12cfi8ixb8lxn--o3cyx2axn--m3ch0j3axn--j1adpxn--90amcxn--90a1afxn--h1ahnxn--j1ael8bxn--h1alizxn--c1avgxn--j1aefxn--80aaa0cvacxn--41acaffeineexeopentunnelbotdashtelebitorgtmaccoagricorgmilnomwebnicngonetaltedugovlawnisschoolgrondaraccoorgmilcomschnetedugovbizinfoprg1-zeropstritonstackitlimazeropsaccoorgmilgovяспборгкоммскбизмирсамаракрымсочиакодпроргобрупрצהלממשלישובאקדמיהองค์กรธุรกิจรัฐบาลศึกษาทหารเน็ต教育網絡組織公司政府個人닷넷한국澳门新闻澳門联通家電嘉里招聘通販닷컴삼성コムგეбгрфеюadcdbdgdidmdsdtdaebedeeegeiejekemenepereseveyegabacalamanauavapaqasazacfbfafgfnfpfwftfbgcgagggegkgngmgsgpgvgtgugilmlnlalclglplsltlhmimjmkmmmomambmcmdmfmgmzmpmsmtmgbbblbsbecccacnclcmcvctcscmhkhghchbhthphshlinikifigiaibicivisikninhnmncnbngnsnpnvntnjoionomobocoaofodorosotoptstttytatbtetgtithtmtltrusuvuaucueuguhulumunufjdjbjtjsjlkmkhkfkdkcktkukskpkgpmpnpkpjpgqaqmqiqsvtvcvbvmvlvrwpwtwzwbwcwawgwkwmwtrsrprgrfrercrbrarnrmrlrkrirhrwsusrssspsgsesbsaslsmsissxmxaxcxuypysylymykygybycyuztzsznzmzkzdzczbzazελευ世界台灣购物公益点看臺灣网络書籍在线网站手机机构大拿游戏信息台湾谷歌慈善商标香港中国餐厅网址中國商城食品微博政务移动集团公司八卦商店健康网店政府时尚佛山中信娱乐广东企业homedepotengineeringاماراتrepublicankuokgroupversicherungchannelcitadelxn--pgbs0dhxn--b4w605ferdstatebankwebsitexn--mgb9awbf亚马逊淡马锡alibabaxn--ngbc5azdxn--mgbbh1axn--45br5cyltoshibabuildworldcloudtradeguideplacespacedancemoviephoneprimesmilebiblestyleappleazurestoreskypegripexn--l1accdrivelottehorsehouseleasechasereisestadahondaomegaaetnaamicaninjanokiamediadeltavodkaedekaosakapizzaslingemailgmailtirolshelltmallfinallegaltotalhotelamfamforumrehabmusicciticricohcoachwatchboschearthfaithirishmiamiarchidubaiguccipraxiみんなストアセールcanonsalononionnikonepsonkoelngreensevencrownikanoradioaudioweiboglobopromogalloyahoociscorodeovideomangobingotokyovolvolottokyotophotosmartsportquesttrusthyattjetztadultcymrubaidutushuxn--kprw13dubankclickblackmerckgroupsharpcheapnowtvxn--h2brj9cקוםհայоргсрбмонкомбелмкдқазрусукрمصرقطرعربكومdadcfdmedwedredphdthdbidpidkrdmsdltdiceonewmeglemoerwecfageacbanbambaaaammakianraspacpaaxawtfbcgaegongingaigvigorgdogdhlmilrilonlaolloluoljllcalgalnflafltelsrlfrllplkimibmcamcombommomifmabbjcbscbwebcabnabtabmlbpubabcbbcnecincpncllcstcwtcpwcnyckfhbzhovhmoiskiobisbitcifyituipinvinwinxincbnbcnmanfangdnmenrenkpnmtnyunrunfununobiojioriohbogmofooboooooacoecoceongoproartistottnttbbtcateatlatvetpetbetnethktmitfitintjothotgotdotbotprueduicujnjyouinknhktdkappsapgapmapdnptopgopllpjmpzipvipripesqtrvdtvitvdevmovgovhivnrwlawsewnewbmwwownowhowdvrftrmtrsfrbarcartvscrseusawsupsubssbsadsddsldssasbmsmlsxxxboxfoxgmxtjxsextaxbuyflydiysoyjoyskypaydaygayxyzanzbizwebersenerpokerlameractortatarsolarລາວคอมไทยtourslocusnexuslexusgiftsbeatsboatspartspressglassswissकॉमनेटtiresgivescodeshomesgamestunesshoescardswalesloansvegastoolsdealsautosparisファッションworkssucksrocksxeroxforexfedexpartylillymoneystudyrugbytoraytoday中文网xn--unup4y天主教飞利浦新加坡enterprises我爱你嘉里大酒店christmasxn--fct429kholdingsxn--8y0a063axn--mgbx4cd0ablifestyleabogadoallstatenetbankكاثوليكxn--s9brj9cxn--gk3at1ebestbuycharityxn--55qx5dmicrosoftpropertybasketballhomegoodscorsicajewelrygallerygrocerysurgerycountrybrusselsverisignferreroxn--czr694bhdfcbankcommbanksoftbankپاكستانپاکستانnextdirectالسعوديهالعليانxn--h2brj9c8cxn--80adxhksshikshaxn--mgbai9azgqp6jcuisinellabarclayscatholicxn--kpry57dcompanyxn--xhq521bblackfridayxn--mgba3a3ejtsandvikxn--d1acj3bacademydownloadمليسياxn--j1amhxn--w4r85el8fhu5dnraipirangaathletaxn--fhbeixn--mgbqly7cvafrzuerichxn--c2br7gஇலங்கைcontractorsxn--io0a7igraphicsinsurancetemasekxn--xkc2al3hye2amotorcyclesphotographydirectoryplumbingxn--vhquvclothingtrainingcleaningwilliamhilllightingxn--mgba3a4f16ashoppingcateringeducationokinawapicturesventuresproductionsxn--9et52uwalmartഭാരതംsupportrealestatecapitalonexn--nqv7fs00emaauspostfloristdentistxn--qxamgodaddybradescobargainsmitsubishikerryhotelsxn--9dbq2axn--3pxu8kimmobilienxn--fjq720axn--mgbtx2bholidaymckinseymadridbusinessbuildershelsinkixn--4gbrimмоскваالسعودیةcoffeedegreelacaixapartnersalsaceofficeabbvievoyageorangegeorgeonlinechromemobilekindlegoogleoraclecircleschulesecureinsurexn--mgba7c0bbn0aestatexn--mgbc0a9azcgcruisehangoutxn--vuq861bxn--42c2d9arexrothfirestoneuniversityxn--nnx388alifeinsuranceextraspaceонлайнvermögensberatersoftwarexn--fiqs8sxn--mgbab2bdxn--w4rs40ltiendaभारतम्africatoyotaotsukasakuracameracreditcardnagoyaconsultingnetworkjunipertheatermonsterprogressivepioneerxn--55qw42gracingdatingvotingvikinglivinggivingxn--bck1b9a5dre4cbrotherweatherjoburgفلسطينlplfinancialxn--clchc0ea0b2g2a9gcdfutbolschoolsocialglobaldentalwoodsidechanelairtelmatteltravelrealtorwebcamstreamభారత్unicomalstomxn--nodexn--6frz82gmuseumfurniturexn--rvc1e0am3exn--mix891faccenturexn--11b4c3dismailineustardiscountquebeccomsecclinicservicesxn--y9a3aqxn--c1avgswatchchurchsearchالاردنmarketingcontacthealthmonashshoujisanofitaipeiamericanexpresssuzukiアマゾンクラウドポイントbhartiグーグルxn--mgberp4a5d4armemorialxn--1qqw23alondonmormoninstitutevisionbostonnortoncouponmaisonamazonvirginberlindesigndurbanolayannissananquanxihuanhitachikaufengardenreisenbayerntechnologydatsunxn--90a3aclatinocasinostudiophysioxn--ngbe9e0apharmacytattootaobaoaramcoexpertreportabbottdirectselectimamatfairwindspictettargetmarketintuittravelersinsurancecreditdupontryukyusuppliesxn--tckwebnpparibasschmidtmerckmsdyodobashirestaurantbridgestonecricketxn--fpcrj9c3dbostikbroadwayattorneylefrakemerckxn--fiq228c5hscareersfarmerswinnersflowersxn--wgbh1cguitarsxn--54b7fta0ccxn--p1acfmakeupgalluplandroverxn--kcrx77d1x4agoldpointbauhausxn--mgbayh7gpahiphopplaystationxn--mgba3a4fraxn--eckvdtc9dhyundaixn--gckr3f0fistanbulticketsmarketsflightschintaireviewsxn--3e0b707ewindowsxn--fiqz9sfinancialxn--fzys8d69uvgmابوظبيdiscoverreviewবাংলাxn--5su34j936bgsgmoscowobserverapartmentsдетиارامكوсайтeurovisionxn--i1b6b1a6a2exn--xkc2dl3a5ee0hتونسموقعبارتڀارتشبكةعمانبيتكعراقreadkredbondlandbandfundfoodprodgoldfordtubecafesafelifeggeeieeefreefagepagegugezonewinememenamegamesaleablebikenikelikecarecbreherefiresaveloveliveblueartedatesitevotecaseluxebofamodaltdaasdatiaayogasinavanashiaasiajavabbvatevavivadatazaraarpacasavisasncfprofmaifsurfgolfdvagsongbingpingwangkpmggoogblogpohlfailcooldellcalldeallidlsarlfilmteamroomfarmimdbarabclubhdfcicbchsbcgmbhrichtechfishdishcashminiernikddiaudiwikimobitaxicitikiwidesiqponskinloanakdnwienopenporncerntownimmolimoolloinfonicofidolegosaxozeroaerovivoautovotomotofastbestresthostpostnextlgbtchatseatgiftmeetdietreitmintrentgentspotscotguruitausohumenucyoubanklinkpinkdclktalksilkbookseekworkrsvpaarpjeepshopcoophelpcamppccwshowbeerstarruhrflirweirhaircarsparsjprshausplusnewstipstoysjobskidsfanspicsdocsxboxamexsexynavycitysonyarmyallybabyplaydeliverybuzzgbizlamborghiniphilipsලංකාಭಾರತfitnessexpresslanxesspfizercenterwalterlawyersoccercareerkosherbrokerlockerdealerdoctorauthorxn--mgbqly7c0a67fbcvermögensberatungjaguarxn--pssy2uxn--hxt814eflickrrepairrogersairbusxn--mgbai9a5eva00beventsyachtsxn--t60b56aভাৰতভারতभारतभारोतviajeshermeshughesxn--j1aefसंगठनvillasଭାରତclaimshotelsભારતzapposphotosjuegoscondostatamotorsgratistennisਭਾਰਤtkmaxxtjmaxxschaeffleryandexxn--80aswgrealtysafetybeautyluxuryxn--3ds443gsupplyfamilyxn--o3cw4hhockeysydneyxn--90aenissayalipayenergycomputeragencyxn--rovu88b電訊盈科xn--gecrj9cstatefarmaccountantaquarelleolayangroup香格里拉xn--p1ai组织机构xn--1ck2e1bxn--mgbt3dhdschwarzموريتانياabudhabinowruzkomatsufujitsuhospitalxn--80asehdbxn--mgbtf8flxn--j6w193gxn--yfro4i67oprudentialxn--flw351ecruisescoursesrecipesxn--e1a4cferrarixn--ses554gxn--wgbl6awatchesstaplessinglesxn--mgbcpq6gpa1axn--otu796dpropertiescreditunionxn--mgbah1a3hjkrdstockholmhisamitsuالسعوديةstcgroupdomainsoriginscouponsbloombergclubmedfroganslimitedxn--80aqecdr1aexposedinternationalequipmentbarclaycardxn--q7ce6axn--mgbi4ecexpprotectionassociatesconstructionxn--cck2b3bxn--45q11candroidfoundationישראלxn--mgbca7dzdocliniqueboutiqueengineerxn--qxa6asystemsfirmdalefashionauctionxn--nqv7finfinitirentalsreliancetradingweddingfishinghostinggentingbookingcookingxn--3hcrj9cgraingerxn--czrs0tdemocratsamsungyokohamaxn--h2breg3evexn--nyqy26alundbeckmelbournevacationssolutionsfrontierxn--vermgensberatung-pwbmanagementxn--cg4bkixn--mgb2ddeslincolnhamburgsandvikcoromantblockbusterairforcebarefootxn--4dbrk0ceinvestmentsfeedbackcommunityxn--ngbrxالبحرينdiamondsamsterdamhealthcareredumbrellaxn--mxtq1mxn--2scrj9cagakhanxn--mgbpl2fhкатоликcaravanசிங்கப்பூர்richardlimortgageamericanfamilyxn--fzc2c9e2cscholarshipssaarlandxn--imr513nvlaanderensamsclubgoodyearkitchenஇந்தியாweatherchannelallfinanzxn--kput3iالسعودیۃxn--90aisxn--efvy88hالجزائرxn--mgbaam7a8hexchangejpmorganxn--tiq49xqyjfidelitysecurityxn--mk1bu44cwanggouxn--fiq64bxn--6qq986b3xlxn--mgbbh1a71exn--80ao21amarshallsxn--5tzm5gtravelerspanasoniclatrobeyoutubeaccountantsxn--rhqv96gxn--cckwcxetdanalyticsxn--ygbi2ammxبازاربھارتسوريةorganicfreseniusسورياxn--9krt00axn--qcka1pmcxn--jlq480n2rgdeloittesciencefinancexn--jvr189mxn--30rr7yhomesensehotmailbaseballfootballleclercboehringerxn--q9jyb4cxn--mix082fاليمنهمراهpolitieسودانايرانایرانnetflixyamaxunxn--lgbbat1ad8jcollegestoragecapetowncolognekerrypropertiesxn--mgbgu82axn--ogbpf8flxn--czru2dwhoswhociprianilasallexn--g2xx48cforsalebanamexaudiblexn--vermgensberater-ctbxn--zfr164bericssonvanguardxn--45brj9cindustriestheatremarriottxn--3bst00mcomparexn--mgberp4a5d4a87gcapitaldigitalالمغربbarcelonashangrilaxn--d1alfcalvinkleinwwwcitysapporokawasakinagoyasendaikobekitakyushuyokohamackjp`,numberOfNodes=nodeFlags.length,numberOfEdges=edgeLength.length,edgeOffset=new Uint32Array(numberOfEdges),edgeHash=new Uint32Array(numberOfEdges),wildcardEdge=new Int32Array(numberOfNodes).fill(-1);for(let node=0,offset=0;node<numberOfNodes;node+=1)for(let edge=edgeStart[node];edge<edgeStart[node+1];edge+=1){edgeOffset[edge]=offset;let end=offset+edgeLength[edge],hash=5381;for(let i=end-1;i>=offset;--i)hash=hash*33^labelText.charCodeAt(i);edgeHash[edge]=hash>>>0,edgeLength[edge]===1&&labelText.charCodeAt(offset)===42&&(wildcardEdge[node]=edge),offset=end}let matchNode=-1,matchStart=0,matchEnd=0;function labelEquals(edge,hostname,start,length){if(edgeLength[edge]!==length)return!1;let offset=edgeOffset[edge];for(let i=0;i<length;i+=1)if(labelText.charCodeAt(offset+i)!==hostname.charCodeAt(start+i))return!1;return!0}function findEdge(node,hash,hostname,start,length){let lo=edgeStart[node],hi=edgeStart[node+1];for(;lo<hi;){let mid=lo+hi>>>1,value=edgeHash[mid];if(value<hash)lo=mid+1;else if(value>hash)hi=mid;else{for(let e=mid;e>=lo&&edgeHash[e]===hash;--e)if(labelEquals(e,hostname,start,length))return e;for(let e=mid+1;e<hi&&edgeHash[e]===hash;e+=1)if(labelEquals(e,hostname,start,length))return e;return-1}}return-1}function walk(hostname,root,allowedMask){let node=root,end=hostname.length,hash=5381;matchNode=-1;for(let i=hostname.length-1;i>=0;--i){let code=hostname.charCodeAt(i);if(code===46){let start=i+1,edge=findEdge(node,hash>>>0,hostname,start,end-start);if(edge===-1&&(edge=wildcardEdge[node]),edge===-1)return matchNode!==-1;node=edgeChild[edge],(nodeFlags[node]&allowedMask)!==0&&(matchNode=node,matchStart=start,matchEnd=end),end=i,hash=5381}else hash=hash*33^code}let edge=findEdge(node,hash>>>0,hostname,0,end);return edge===-1&&(edge=wildcardEdge[node]),edge!==-1&&(node=edgeChild[edge],(nodeFlags[node]&allowedMask)!==0&&(matchNode=node,matchStart=0,matchEnd=end)),matchNode!==-1}function suffixLookup(hostname,options,out){if(fastPathLookup(hostname,options,out))return;let allowedMask=(options.allowPrivateDomains?2:0)|!!options.allowIcannDomains;if(walk(hostname,623,allowedMask)){out.isIcann=!!(nodeFlags[matchNode]&1),out.isPrivate=!!(nodeFlags[matchNode]&2),out.publicSuffix=hostname.slice(matchEnd+1);return}if(walk(hostname,619,allowedMask)){out.isIcann=!!(nodeFlags[matchNode]&1),out.isPrivate=!!(nodeFlags[matchNode]&2),out.publicSuffix=hostname.slice(matchStart);return}out.isIcann=!1,out.isPrivate=!1;let lastDot=hostname.lastIndexOf(`.`);out.publicSuffix=lastDot===-1?hostname:hostname.slice(lastDot+1)}let RESULT=getEmptyResult();function getDomain(url,options){return resetResult(RESULT),parseImpl(url,3,suffixLookup,options,RESULT).domain}exports.getDomain=getDomain}))();function pathMatch(reqPath,cookiePath){return!!(cookiePath===reqPath||reqPath.indexOf(cookiePath)===0&&(cookiePath[cookiePath.length-1]===`/`||reqPath.startsWith(cookiePath)&&reqPath[cookiePath.length]===`/`))}var SPECIAL_USE_DOMAINS=[`local`,`example`,`invalid`,`localhost`,`test`],SPECIAL_TREATMENT_DOMAINS=[`localhost`,`invalid`],defaultGetPublicSuffixOptions={allowSpecialUseDomain:!1,ignoreError:!1};function getPublicSuffix(domain,options={}){options={...defaultGetPublicSuffixOptions,...options};let domainParts=domain.split(`.`),topLevelDomain=domainParts[domainParts.length-1],allowSpecialUseDomain=!!options.allowSpecialUseDomain,ignoreError=!!options.ignoreError;if(allowSpecialUseDomain&&topLevelDomain!==void 0&&SPECIAL_USE_DOMAINS.includes(topLevelDomain)){if(domainParts.length>1)return`${domainParts[domainParts.length-2]}.${topLevelDomain}`;if(SPECIAL_TREATMENT_DOMAINS.includes(topLevelDomain))return topLevelDomain}if(!ignoreError&&topLevelDomain!==void 0&&SPECIAL_USE_DOMAINS.includes(topLevelDomain))throw Error(`Cookie has domain set to the public suffix "${topLevelDomain}" which is a special use domain. To allow this, configure your CookieJar with {allowSpecialUseDomain: true, rejectPublicSuffixes: false}.`);let publicSuffix=(0,import_cjs.getDomain)(domain,{allowIcannDomains:!0,allowPrivateDomains:!0});if(publicSuffix)return publicSuffix}function permuteDomain(domain,allowSpecialUseDomain){let pubSuf=getPublicSuffix(domain,{allowSpecialUseDomain});if(!pubSuf)return;if(pubSuf==domain)return[domain];domain.slice(-1)==`.`&&(domain=domain.slice(0,-1));let parts=domain.slice(0,-(pubSuf.length+1)).split(`.`).reverse(),cur=pubSuf,permutations=[cur];for(;parts.length;)cur=`${parts.shift()}.${cur}`,permutations.push(cur);return permutations}var Store=class{constructor(){this.synchronous=!1}findCookie(_domain,_path,_key,_callback){throw Error(`findCookie is not implemented`)}findCookies(_domain,_path,_allowSpecialUseDomain=!1,_callback){throw Error(`findCookies is not implemented`)}putCookie(_cookie,_callback){throw Error(`putCookie is not implemented`)}updateCookie(_oldCookie,_newCookie,_callback){throw Error(`updateCookie is not implemented`)}removeCookie(_domain,_path,_key,_callback){throw Error(`removeCookie is not implemented`)}removeCookies(_domain,_path,_callback){throw Error(`removeCookies is not implemented`)}removeAllCookies(_callback){throw Error(`removeAllCookies is not implemented`)}getAllCookies(_callback){throw Error(`getAllCookies is not implemented (therefore jar cannot be serialized)`)}},objectToString=obj=>Object.prototype.toString.call(obj),safeArrayToString=(arr,seenArrays)=>typeof arr.join==`function`?(seenArrays.add(arr),arr.map(val=>val==null||seenArrays.has(val)?``:safeToStringImpl(val,seenArrays)).join()):objectToString(arr),safeToStringImpl=(val,seenArrays=new WeakSet)=>typeof val!=`object`||!val?String(val):typeof val.toString==`function`?Array.isArray(val)?safeArrayToString(val,seenArrays):String(val):objectToString(val),safeToString=val=>safeToStringImpl(val);function createPromiseCallback(cb){let callback,resolve,reject,promise=new Promise((_resolve,_reject)=>{resolve=_resolve,reject=_reject});return callback=typeof cb==`function`?(err,result)=>{try{err?cb(err):cb(null,result)}catch(e){reject(e instanceof Error?e:Error())}}:(err,result)=>{try{err?reject(err):resolve(result)}catch(e){reject(e instanceof Error?e:Error())}},{promise,callback,resolve:value=>(callback(null,value),promise),reject:error=>(callback(error),promise)}}function inOperator(k,o){return k in o}var MemoryCookieStore=class extends Store{constructor(){super(),this.synchronous=!0,this.idx=Object.create(null)}findCookie(domain,path,key,callback){let promiseCallback=createPromiseCallback(callback);if(domain==null||path==null||key==null)return promiseCallback.resolve(void 0);let result=this.idx[domain]?.[path]?.[key];return promiseCallback.resolve(result)}findCookies(domain,path,allowSpecialUseDomain=!1,callback){typeof allowSpecialUseDomain==`function`&&(callback=allowSpecialUseDomain,allowSpecialUseDomain=!0);let results=[],promiseCallback=createPromiseCallback(callback);if(!domain)return promiseCallback.resolve([]);let pathMatcher;pathMatcher=path?function(domainIndex){for(let cookiePath in domainIndex)if(pathMatch(path,cookiePath)){let pathIndex=domainIndex[cookiePath];for(let key in pathIndex){let value=pathIndex[key];value&&results.push(value)}}}:function(domainIndex){for(let curPath in domainIndex){let pathIndex=domainIndex[curPath];for(let key in pathIndex){let value=pathIndex[key];value&&results.push(value)}}};let domains=permuteDomain(domain,allowSpecialUseDomain)||[domain],idx=this.idx;return domains.forEach(curDomain=>{let domainIndex=idx[curDomain];domainIndex&&pathMatcher(domainIndex)}),promiseCallback.resolve(results)}putCookie(cookie,callback){let promiseCallback=createPromiseCallback(callback),{domain,path,key}=cookie;if(domain==null||path==null||key==null)return promiseCallback.resolve(void 0);let domainEntry=this.idx[domain]??Object.create(null);this.idx[domain]=domainEntry;let pathEntry=domainEntry[path]??Object.create(null);return domainEntry[path]=pathEntry,pathEntry[key]=cookie,promiseCallback.resolve(void 0)}updateCookie(_oldCookie,newCookie,callback){if(callback)this.putCookie(newCookie,callback);else return this.putCookie(newCookie)}removeCookie(domain,path,key,callback){let promiseCallback=createPromiseCallback(callback);return delete this.idx[domain]?.[path]?.[key],promiseCallback.resolve(void 0)}removeCookies(domain,path,callback){let promiseCallback=createPromiseCallback(callback),domainEntry=this.idx[domain];return domainEntry&&(path?delete domainEntry[path]:delete this.idx[domain]),promiseCallback.resolve(void 0)}removeAllCookies(callback){let promiseCallback=createPromiseCallback(callback);return this.idx=Object.create(null),promiseCallback.resolve(void 0)}getAllCookies(callback){let promiseCallback=createPromiseCallback(callback),cookies=[],idx=this.idx;return Object.keys(idx).forEach(domain=>{let domainEntry=idx[domain]??{};Object.keys(domainEntry).forEach(path=>{let pathEntry=domainEntry[path]??{};Object.keys(pathEntry).forEach(key=>{let keyEntry=pathEntry[key];keyEntry!=null&&cookies.push(keyEntry)})})}),cookies.sort((a,b)=>(a.creationIndex||0)-(b.creationIndex||0)),promiseCallback.resolve(cookies)}};function isNonEmptyString(data){return isString(data)&&data!==``}function isEmptyString$1(data){return data===``||data instanceof String&&data.toString()===``}function isString(data){return typeof data==`string`||data instanceof String}function isObject$1(data){return objectToString(data)===`[object Object]`}function validate(bool,cbOrMessage,message){if(bool)return;let cb=typeof cbOrMessage==`function`?cbOrMessage:void 0,options=typeof cbOrMessage==`function`?message:cbOrMessage;isObject$1(options)||(options=`[object Object]`);let err=new ParameterError(safeToString(options));if(cb)cb(err);else throw err}var ParameterError=class extends Error{},version=`6.0.2`,PrefixSecurityEnum={SILENT:`silent`,STRICT:`strict`,DISABLED:`unsafe-disabled`};Object.freeze(PrefixSecurityEnum);var IP_V6_REGEX=`
|
|
19
|
+
const{message:message$1}=statuses_default,kSetCookie=Symbol(`kSetCookie`);function normalizeResponseInit(init={}){let status=init?.status||200,statusText=init?.statusText||message$1[status]||``,headers=new Headers(init?.headers);return{...init,headers,status,statusText}}function decorateResponse(response,init){init.type&&Object.defineProperty(response,"type",{value:init.type,enumerable:!0,writable:!1});let responseCookies=init.headers.get(`set-cookie`);return responseCookies&&Object.defineProperty(response,kSetCookie,{value:responseCookies,enumerable:!1,writable:!1}),response}function getRawSetCookie(response){return Reflect.get(response,kSetCookie)}function copyResponseOwnProperties(source,target){for(let propertyName of Reflect.ownKeys(source)){let descriptor=Object.getOwnPropertyDescriptor(source,propertyName),existingDescriptor=Object.getOwnPropertyDescriptor(target,propertyName);descriptor&&existingDescriptor==null&&Object.defineProperty(target,propertyName,descriptor)}}const bodyType=Symbol(`bodyType`),kDefaultContentType=Symbol.for(`kDefaultContentType`);var HttpResponse=class HttpResponse extends FetchResponse$1{[bodyType]=null;constructor(body,init){let responseInit=normalizeResponseInit(init);super(body,responseInit),decorateResponse(this,responseInit)}static error(){return super.error()}static text(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`text/plain`),responseInit.headers.has(`Content-Length`)||responseInit.headers.set(`Content-Length`,body?new Blob([body]).size.toString():`0`);let response=new HttpResponse(body,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static json(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`application/json`);let responseText=JSON.stringify(body);responseInit.headers.has(`Content-Length`)||responseInit.headers.set(`Content-Length`,responseText?new Blob([responseText]).size.toString():`0`);let response=new HttpResponse(responseText,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static xml(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`text/xml`);let response=new HttpResponse(body,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static html(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`text/html`);let response=new HttpResponse(body,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static arrayBuffer(body,init){let responseInit=normalizeResponseInit(init),hasExplicitContentType=responseInit.headers.has(`Content-Type`);hasExplicitContentType||responseInit.headers.set(`Content-Type`,`application/octet-stream`),body&&!responseInit.headers.has(`Content-Length`)&&responseInit.headers.set(`Content-Length`,body.byteLength.toString());let response=new HttpResponse(body,responseInit);return hasExplicitContentType||Object.defineProperty(response,kDefaultContentType,{value:!0,enumerable:!1}),response}static formData(body,init){return new HttpResponse(body,normalizeResponseInit(init))}};function createDeferredExecutor$1(){let executor=((resolve,reject)=>{executor.state=`pending`,executor.resolve=data=>executor.state===`pending`?(executor.result=data,resolve(data instanceof Promise?data:Promise.resolve(data).then(value=>(executor.state=`fulfilled`,value)))):void 0,executor.reject=reason=>{if(executor.state===`pending`)return queueMicrotask(()=>{executor.state=`rejected`}),reject(executor.rejectionReason=reason)}});return executor}var DeferredPromise$1=class extends Promise{#executor;resolve;reject;constructor(executor=null){let deferredExecutor=createDeferredExecutor$1();super((originalResolve,originalReject)=>{deferredExecutor(originalResolve,originalReject),executor?.(deferredExecutor.resolve,deferredExecutor.reject)}),this.#executor=deferredExecutor,this.resolve=this.#executor.resolve,this.reject=this.#executor.reject}get state(){return this.#executor.state}get rejectionReason(){return this.#executor.rejectionReason}then(onFulfilled,onRejected){return this.#decorate(super.then(onFulfilled,onRejected))}catch(onRejected){return this.#decorate(super.catch(onRejected))}finally(onfinally){return this.#decorate(super.finally(onfinally))}#decorate(promise){return Object.defineProperties(promise,{resolve:{configurable:!0,value:this.resolve},reject:{configurable:!0,value:this.reject}})}};function observeResponseBodyStream(response){if(response.body==null||response.bodyUsed||response.body.locked)return null;let settled=new DeferredPromise$1,reader=response.body.getReader(),observedResponse=new FetchResponse$1(new ReadableStream({async pull(controller){try{let readResult=await reader.read();if(readResult.done){settled.resolve(),controller.close();return}controller.enqueue(readResult.value)}catch(error){throw settled.resolve(),error}},async cancel(reason){settled.resolve(),await reader.cancel(reason)}}),{status:response.status,statusText:response.statusText,headers:response.headers});return copyResponseOwnProperties(response,observedResponse),{response:observedResponse,settled}}var RequestHandler=class RequestHandler{static cache=new WeakMap;kind=`request`;resolver;resolverIterator;resolverIteratorResult;resolverIteratorCleanups;options;scheduledCleanups;info;isUsed;constructor(args){this.resolver=args.resolver,this.options=args.options,this.scheduledCleanups=new Map;let callFrame=getCallFrame(Error());this.info={...args.info,callFrame},this.isUsed=!1}reset(){this.scheduledCleanups.clear();let iterator=this.resolverIterator;this.resolverIterator=void 0,this.resolverIteratorResult=void 0,this.resolverIteratorCleanups=void 0,typeof iterator?.return==`function`&&Promise.resolve(iterator.return())}restore(){this.options?.once&&(this.reset(),this.isUsed=!1)}async parse(_args){return{}}async test(args){let parsedResult=await this.parse({request:args.request,resolutionContext:args.resolutionContext});return this.predicate({request:args.request,parsedResult,resolutionContext:args.resolutionContext})}extendResolverArgs(_args){return{}}cloneRequestOrGetFromCache(request){let existingClone=RequestHandler.cache.get(request);if(existingClone!==void 0)return existingClone;let clonedRequest=request.clone();return RequestHandler.cache.set(request,clonedRequest),clonedRequest}async run(args){if(this.isUsed&&this.options?.once)return null;let requestClone=this.cloneRequestOrGetFromCache(args.request),parsedResult=await this.parse({request:args.request,resolutionContext:args.resolutionContext});if(!await this.predicate({request:args.request,parsedResult,resolutionContext:args.resolutionContext})||this.isUsed&&this.options?.once)return null;this.isUsed=!0;let executeResolver=this.wrapResolver(this.resolver),resolverExtras=this.extendResolverArgs({request:args.request,parsedResult}),listenerController=new AbortController,finalizeFunction,getFinalize=()=>(finalizeFunction??=(args.request.signal.aborted||args.request.signal.addEventListener(`abort`,()=>this.runScheduledCleanups(args.requestId),{once:!0,signal:listenerController.signal}),callback=>{this.scheduleCleanup(args.requestId,callback),args.request.signal.aborted&&this.runScheduledCleanups(args.requestId)}),finalizeFunction),mockedResponse=await executeResolver({...resolverExtras,get finalize(){return getFinalize()},requestId:args.requestId,request:args.request}).catch(errorOrResponse=>{if(errorOrResponse instanceof Response)return errorOrResponse;throw errorOrResponse}).finally(()=>{listenerController.abort()});return mockedResponse&&forwardResponseCookies(mockedResponse),this.createExecutionResult({request:requestClone,requestId:args.requestId,response:mockedResponse,parsedResult})}wrapResolver(resolver){return async info=>{if(!this.resolverIterator){let result;try{result=await resolver(info)}catch(error){throw await this.runScheduledCleanups(info.requestId),error}if(!isIterable(result))return this.complete({request:info.request,requestId:info.requestId,response:result});let existingCleanups=this.scheduledCleanups.get(info.requestId);existingCleanups!=null&&existingCleanups.length>0&&(this.resolverIteratorCleanups=existingCleanups,this.scheduledCleanups.delete(info.requestId)),this.resolverIterator=Symbol.iterator in result?result[Symbol.iterator]():result[Symbol.asyncIterator]()}this.isUsed=!1;let{done,value}=await this.resolverIterator.next(),nextResponse=await value;return nextResponse&&(this.resolverIteratorResult=nextResponse.clone()),done?(this.isUsed=!0,this.complete({request:info.request,requestId:info.requestId,response:this.resolverIteratorResult?.clone()})):nextResponse}}createExecutionResult(args){return{handler:this,request:args.request,requestId:args.requestId,response:args.response,parsedResult:args.parsedResult}}scheduleCleanup(requestId,callback){if(this.resolverIterator){(this.resolverIteratorCleanups||=[]).unshift(callback);return}let cleanups=this.scheduledCleanups.get(requestId)||[];cleanups.unshift(callback),this.scheduledCleanups.set(requestId,cleanups)}async exhaustCleanups(cleanups){let errors=[];for(let cleanup of cleanups)try{await cleanup()}catch(error){error instanceof Error&&errors.push(error)}errors.length>0&&devUtils.error(`Failed to execute cleanup for request handler "%s"`,this.info.header,AggregateError(errors,`Failed to execute cleanup for request handler "${this.info.header}"`))}takeScheduledCleanups(requestId){if(this.resolverIterator&&this.resolverIteratorCleanups!=null&&this.resolverIteratorCleanups.length>0){let cleanups2=this.resolverIteratorCleanups;return this.resolverIteratorCleanups=void 0,cleanups2}let cleanups=this.scheduledCleanups.get(requestId);if(cleanups&&cleanups.length!==0)return this.scheduledCleanups.delete(requestId),cleanups}async runScheduledCleanups(requestId){let cleanups=this.takeScheduledCleanups(requestId);cleanups&&await this.exhaustCleanups(cleanups)}async complete(args){let cleanups=this.takeScheduledCleanups(args.requestId);if(!cleanups)return args.response;let observedResponse=args.response?observeResponseBodyStream(args.response):null;if(!observedResponse)return await this.exhaustCleanups(cleanups),args.response;let listenerController=new AbortController,runCleanupsOnce=()=>{listenerController.signal.aborted||(listenerController.abort(),this.exhaustCleanups(cleanups))};return observedResponse.settled.then(runCleanupsOnce),args.request.signal.aborted?runCleanupsOnce():args.request.signal.addEventListener(`abort`,runCleanupsOnce,{once:!0,signal:listenerController.signal}),observedResponse.response}};function forwardResponseCookies(response){if(typeof document>`u`)return;let responseCookies=getRawSetCookie(response);if(!responseCookies)return;let allResponseCookies=Headers$1.prototype.getSetCookie.call(new Headers([[`set-cookie`,responseCookies]]));for(let cookieString of allResponseCookies)document.cookie=cookieString}var import_dist$1=__commonJSMin((exports=>{Object.defineProperty(exports,"__esModule",{value:!0}),exports.pathToRegexp=exports.tokensToRegexp=exports.regexpToFunction=exports.match=exports.tokensToFunction=exports.compile=exports.parse=void 0;function lexer(str){for(var tokens=[],i=0;i<str.length;){var char=str[i];if(char===`*`||char===`+`||char===`?`){tokens.push({type:`MODIFIER`,index:i,value:str[i++]});continue}if(char===`\\`){tokens.push({type:`ESCAPED_CHAR`,index:i++,value:str[i++]});continue}if(char===`{`){tokens.push({type:`OPEN`,index:i,value:str[i++]});continue}if(char===`}`){tokens.push({type:`CLOSE`,index:i,value:str[i++]});continue}if(char===`:`){for(var name=``,j=i+1;j<str.length;){var code=str.charCodeAt(j);if(code>=48&&code<=57||code>=65&&code<=90||code>=97&&code<=122||code===95){name+=str[j++];continue}break}if(!name)throw TypeError(`Missing parameter name at ${i}`);tokens.push({type:`NAME`,index:i,value:name}),i=j;continue}if(char===`(`){var count=1,pattern=``,j=i+1;if(str[j]===`?`)throw TypeError(`Pattern cannot start with "?" at ${j}`);for(;j<str.length;){if(str[j]===`\\`){pattern+=str[j++]+str[j++];continue}if(str[j]===`)`){if(count--,count===0){j++;break}}else if(str[j]===`(`&&(count++,str[j+1]!==`?`))throw TypeError(`Capturing groups are not allowed at ${j}`);pattern+=str[j++]}if(count)throw TypeError(`Unbalanced pattern at ${i}`);if(!pattern)throw TypeError(`Missing pattern at ${i}`);tokens.push({type:`PATTERN`,index:i,value:pattern}),i=j;continue}tokens.push({type:`CHAR`,index:i,value:str[i++]})}return tokens.push({type:`END`,index:i,value:``}),tokens}function parse(str,options){options===void 0&&(options={});for(var tokens=lexer(str),_a=options.prefixes,prefixes=_a===void 0?`./`:_a,_b=options.delimiter,delimiter=_b===void 0?`/#?`:_b,result=[],key=0,i=0,path=``,tryConsume=function(type){if(i<tokens.length&&tokens[i].type===type)return tokens[i++].value},mustConsume=function(type){var value=tryConsume(type);if(value!==void 0)return value;var _a=tokens[i],nextType=_a.type,index=_a.index;throw TypeError(`Unexpected ${nextType} at ${index}, expected ${type}`)},consumeText=function(){for(var result=``,value;value=tryConsume(`CHAR`)||tryConsume(`ESCAPED_CHAR`);)result+=value;return result},isSafe=function(value){for(var _i=0,delimiter_1=delimiter;_i<delimiter_1.length;_i++){var char=delimiter_1[_i];if(value.indexOf(char)>-1)return!0}return!1},safePattern=function(prefix){var prev=result[result.length-1],prevText=prefix||(prev&&typeof prev==`string`?prev:``);if(prev&&!prevText)throw TypeError(`Must have text between two parameters, missing text after "${prev.name}"`);return!prevText||isSafe(prevText)?`[^${escapeString(delimiter)}]+?`:`(?:(?!${escapeString(prevText)})[^${escapeString(delimiter)}])+?`};i<tokens.length;){var char=tryConsume(`CHAR`),name=tryConsume(`NAME`),pattern=tryConsume(`PATTERN`);if(name||pattern){var prefix=char||``;prefixes.indexOf(prefix)===-1&&(path+=prefix,prefix=``),path&&=(result.push(path),``),result.push({name:name||key++,prefix,suffix:``,pattern:pattern||safePattern(prefix),modifier:tryConsume(`MODIFIER`)||``});continue}var value=char||tryConsume(`ESCAPED_CHAR`);if(value){path+=value;continue}if(path&&=(result.push(path),``),tryConsume(`OPEN`)){var prefix=consumeText(),name_1=tryConsume(`NAME`)||``,pattern_1=tryConsume(`PATTERN`)||``,suffix=consumeText();mustConsume(`CLOSE`),result.push({name:name_1||(pattern_1?key++:``),pattern:name_1&&!pattern_1?safePattern(prefix):pattern_1,prefix,suffix,modifier:tryConsume(`MODIFIER`)||``});continue}mustConsume(`END`)}return result}exports.parse=parse;function compile(str,options){return tokensToFunction(parse(str,options),options)}exports.compile=compile;function tokensToFunction(tokens,options){options===void 0&&(options={});var reFlags=flags(options),_a=options.encode,encode=_a===void 0?function(x){return x}:_a,_b=options.validate,validate=_b===void 0||_b,matches=tokens.map(function(token){if(typeof token==`object`)return RegExp(`^(?:${token.pattern})\$`,reFlags)});return function(data){for(var path=``,i=0;i<tokens.length;i++){var token=tokens[i];if(typeof token==`string`){path+=token;continue}var value=data?data[token.name]:void 0,optional=token.modifier===`?`||token.modifier===`*`,repeat=token.modifier===`*`||token.modifier===`+`;if(Array.isArray(value)){if(!repeat)throw TypeError(`Expected "${token.name}" to not repeat, but got an array`);if(value.length===0){if(optional)continue;throw TypeError(`Expected "${token.name}" to not be empty`)}for(var j=0;j<value.length;j++){var segment=encode(value[j],token);if(validate&&!matches[i].test(segment))throw TypeError(`Expected all "${token.name}" to match "${token.pattern}", but got "${segment}"`);path+=token.prefix+segment+token.suffix}continue}if(typeof value==`string`||typeof value==`number`){var segment=encode(String(value),token);if(validate&&!matches[i].test(segment))throw TypeError(`Expected "${token.name}" to match "${token.pattern}", but got "${segment}"`);path+=token.prefix+segment+token.suffix;continue}if(!optional){var typeOfMessage=repeat?`an array`:`a string`;throw TypeError(`Expected "${token.name}" to be ${typeOfMessage}`)}}return path}}exports.tokensToFunction=tokensToFunction;function match(str,options){var keys=[];return regexpToFunction(pathToRegexp(str,keys,options),keys,options)}exports.match=match;function regexpToFunction(re,keys,options){options===void 0&&(options={});var _a=options.decode,decode=_a===void 0?function(x){return x}:_a;return function(pathname){var m=re.exec(pathname);if(!m)return!1;for(var path=m[0],index=m.index,params=Object.create(null),_loop_1=function(i){if(m[i]===void 0)return`continue`;var key=keys[i-1];key.modifier===`*`||key.modifier===`+`?params[key.name]=m[i].split(key.prefix+key.suffix).map(function(value){return decode(value,key)}):params[key.name]=decode(m[i],key)},i=1;i<m.length;i++)_loop_1(i);return{path,index,params}}}exports.regexpToFunction=regexpToFunction;function escapeString(str){return str.replace(/([.+*?=^!:${}()[\]|/\\])/g,`\\$1`)}function flags(options){return options&&options.sensitive?``:`i`}function regexpToRegexp(path,keys){if(!keys)return path;for(var groupsRegex=/\((?:\?<(.*?)>)?(?!\?)/g,index=0,execResult=groupsRegex.exec(path.source);execResult;)keys.push({name:execResult[1]||index++,prefix:``,suffix:``,modifier:``,pattern:``}),execResult=groupsRegex.exec(path.source);return path}function arrayToRegexp(paths,keys,options){var parts=paths.map(function(path){return pathToRegexp(path,keys,options).source});return RegExp(`(?:${parts.join(`|`)})`,flags(options))}function stringToRegexp(path,keys,options){return tokensToRegexp(parse(path,options),keys,options)}function tokensToRegexp(tokens,keys,options){options===void 0&&(options={});for(var _a=options.strict,strict=_a!==void 0&&_a,_b=options.start,start=_b===void 0||_b,_c=options.end,end=_c===void 0||_c,_d=options.encode,encode=_d===void 0?function(x){return x}:_d,_e=options.delimiter,delimiter=_e===void 0?`/#?`:_e,_f=options.endsWith,endsWithRe=`[${escapeString(_f===void 0?``:_f)}]|\$`,delimiterRe=`[${escapeString(delimiter)}]`,route=start?`^`:``,_i=0,tokens_1=tokens;_i<tokens_1.length;_i++){var token=tokens_1[_i];if(typeof token==`string`)route+=escapeString(encode(token));else{var prefix=escapeString(encode(token.prefix)),suffix=escapeString(encode(token.suffix));if(token.pattern){if(keys&&keys.push(token),prefix||suffix){if(token.modifier===`+`||token.modifier===`*`){var mod=token.modifier===`*`?`?`:``;route+=`(?:${prefix}((?:${token.pattern})(?:${suffix}${prefix}(?:${token.pattern}))*)${suffix})${mod}`}else route+=`(?:${prefix}(${token.pattern})${suffix})${token.modifier}`}else{if(token.modifier===`+`||token.modifier===`*`)throw TypeError(`Can not repeat "${token.name}" without a prefix and suffix`);route+=`(${token.pattern})${token.modifier}`}}else route+=`(?:${prefix}${suffix})${token.modifier}`}}if(end)strict||(route+=`${delimiterRe}?`),route+=options.endsWith?`(?=${endsWithRe})`:`$`;else{var endToken=tokens[tokens.length-1],isEndDelimited=typeof endToken==`string`?delimiterRe.indexOf(endToken[endToken.length-1])>-1:endToken===void 0;strict||(route+=`(?:${delimiterRe}(?=${endsWithRe}))?`),isEndDelimited||(route+=`(?=${delimiterRe}|${endsWithRe})`)}return new RegExp(route,flags(options))}exports.tokensToRegexp=tokensToRegexp;function pathToRegexp(path,keys,options){return path instanceof RegExp?regexpToRegexp(path,keys):Array.isArray(path)?arrayToRegexp(path,keys,options):stringToRegexp(path,keys,options)}exports.pathToRegexp=pathToRegexp}))();const REDUNDANT_CHARACTERS_EXP=/[?|#].*$/g;function cleanUrl(path){return path.endsWith(`?`)?path:path.replace(REDUNDANT_CHARACTERS_EXP,``)}function isAbsoluteUrl(url){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(url)}function getAbsoluteUrl(path,baseUrl){if(isAbsoluteUrl(path)||path.startsWith(`*`))return path;let origin=baseUrl||typeof location<`u`&&location.href;return origin?decodeURI(new URL(encodeURI(path),origin).href):path}function normalizePath(path,baseUrl){return path instanceof RegExp?path:cleanUrl(getAbsoluteUrl(path,baseUrl))}function coercePath(path){return path.replace(/([:a-zA-Z_-]*)(\*{1,2})+/g,(_,parameterName,wildcard)=>{let expression=`(.*)`;return parameterName?parameterName.startsWith(`:`)?`${parameterName}${wildcard}`:`${parameterName}${expression}`:expression}).replace(/([^/])(:)(?=(?:\d+|\(\.\*\))(?=\/|$))/,`$1\\$2`).replace(/^([^/]+)(:)(?=\/\/)/,`$1\\$2`)}function matchRequestUrl(url,path,baseUrl){let normalizedPath=normalizePath(path,baseUrl),cleanPath=typeof normalizedPath==`string`?coercePath(normalizedPath):normalizedPath,cleanUrl=getCleanUrl(url),result=(0,import_dist$1.match)(cleanPath,{decode:decodeURIComponent})(cleanUrl),params=result&&result.params||{};return{matches:result!==!1,params}}function getTimestamp(options){let now=new Date,timestamp=`${now.getHours().toString().padStart(2,`0`)}:${now.getMinutes().toString().padStart(2,`0`)}:${now.getSeconds().toString().padStart(2,`0`)}`;return options?.milliseconds?`${timestamp}.${now.getMilliseconds().toString().padStart(3,`0`)}`:timestamp}function toPublicUrl(url){let urlInstance=url instanceof URL?url:new URL(url);return typeof location<`u`&&urlInstance.origin===location.origin?urlInstance.pathname:urlInstance.origin+urlInstance.pathname}function isObject$2(value){return typeof value==`object`&&!!value&&!Array.isArray(value)}const kConnect=Symbol(`kConnect`),kAutoConnect=Symbol(`kAutoConnect`),kSiblingHandlers=Symbol(`kSiblingHandlers`);function getSiblingHandlers(owner){return Reflect.get(owner,kSiblingHandlers)||[]}function groupHandlersByKind(handlers){let groups={},pushUnique=(kind,handler)=>{let bucket=groups[kind]||=[];bucket.includes(handler)||bucket.push(handler)};for(let handler of handlers){pushUnique(handler.kind,handler);for(let sibling of getSiblingHandlers(handler))pushUnique(sibling.kind,sibling)}return groups}var HandlersController=class{getInitialState(initialHandlers){invariant$1(this.#validateHandlers(initialHandlers),devUtils.formatMessage(`Failed to apply given request handlers: invalid input. Did you forget to spread the request handlers Array?`));let normalizedInitialHandlers=groupHandlersByKind(initialHandlers);return{initialHandlers:normalizedInitialHandlers,handlers:{...normalizedInitialHandlers}}}currentHandlers(){return Object.values(this.getState().handlers).flat().filter(handler=>handler!=null)}getHandlersByKind(kind){return this.getState().handlers[kind]||[]}use(nextHandlers){if(invariant$1(this.#validateHandlers(nextHandlers),devUtils.formatMessage(`[MSW] Failed to call "use()" with the given request handlers: invalid input. Did you forget to spread the array of request handlers?`)),nextHandlers.length===0)return;let{handlers}=this.getState(),overrides=groupHandlersByKind(nextHandlers);for(let kind in overrides){let overridesForKind=overrides[kind],existingForKind=handlers[kind];handlers[kind]=existingForKind?[...overridesForKind,...existingForKind]:overridesForKind}this.setState({handlers})}reset(nextHandlers){invariant$1(nextHandlers.length>0?this.#validateHandlers(nextHandlers):!0,devUtils.formatMessage(`Failed to replace initial handlers during reset: invalid handlers. Did you forget to spread the handlers array?`));for(let handler of this.currentHandlers())`reset`in handler&&handler.reset();let{initialHandlers}=this.getState();if(nextHandlers.length===0){this.setState({handlers:{...initialHandlers}});return}let normalizedNextHandlers=groupHandlersByKind(nextHandlers);this.setState({initialHandlers:normalizedNextHandlers,handlers:{...normalizedNextHandlers}})}restore(){for(let handler of this.currentHandlers())`restore`in handler&&handler.restore()}#validateHandlers(handlers){return handlers.every(handler=>!Array.isArray(handler))}},InMemoryHandlersController=class extends HandlersController{#handlers;#initialHandlers;constructor(initialHandlers){super();let initialState=this.getInitialState(initialHandlers);this.#initialHandlers=initialState.initialHandlers,this.#handlers=initialState.handlers}getState(){return{initialHandlers:this.#initialHandlers,handlers:this.#handlers}}setState(nextState){nextState.initialHandlers&&(this.#initialHandlers=nextState.initialHandlers),nextState.handlers&&(this.#handlers=nextState.handlers)}},Disposable=class{subscriptions=[];dispose(){let subscription,errors=[];for(;subscription=this.subscriptions.shift();)try{subscription()}catch(error){error instanceof Error&&errors.push(error)}errors.length>0&&console.error(AggregateError(errors,devUtils.formatMessage(`Failed to dispose of some side effects. This is likely an issue with MSW, please report it on GitHub: https://github.com/mswjs/msw/issues`)))}};function toReadonlyArray(source){let clone=[...source];return Object.freeze(clone),clone}const executeHandlers=async({request,requestId,handlers,resolutionContext})=>{let matchingHandler=null,result=null;for(let handler of handlers)if(result=await handler.run({request,requestId,resolutionContext}),result!==null&&(matchingHandler=handler),result?.response)break;return matchingHandler?{handler:matchingHandler,parsedResult:result?.parsedResult,response:result?.response}:null};function isStringEqual(actual,expected){return actual.toLowerCase()===expected.toLowerCase()}function getStatusCodeColor(status){return status<300?`#69AB32`:status<400?`#F0BB4B`:`#E95F5D`}async function serializeRequest(request){let requestText=await request.clone().text();return{url:new URL(request.url),method:request.method,headers:Object.fromEntries(request.headers.entries()),body:requestText}}const{message}=statuses_default;async function serializeResponse(response){let responseClone=response.clone(),responseText=await responseClone.text(),responseStatus=responseClone.status||200;return{status:responseStatus,statusText:responseClone.statusText||message[responseStatus]||`OK`,headers:Object.fromEntries(responseClone.headers.entries()),body:responseText}}var __create=Object.create,__defProp$2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__copyProps=(to,from,except,desc)=>{if(from&&typeof from==`object`||typeof from==`function`)for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp$2(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},allCookie=((mod,isNodeMode,target)=>(target=mod==null?{}:__create(__getProtoOf(mod)),__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp$2(target,`default`,{value:mod,enumerable:!0}):target,mod)))(__commonJS({"node_modules/.pnpm/cookie@1.1.1/node_modules/cookie/dist/index.js"(exports){Object.defineProperty(exports,"__esModule",{value:!0}),exports.parseCookie=parseCookie,exports.parse=parseCookie,exports.stringifyCookie=stringifyCookie,exports.stringifySetCookie=stringifySetCookie,exports.serialize=stringifySetCookie,exports.parseSetCookie=parseSetCookie,exports.stringifySetCookie=stringifySetCookie,exports.serialize=stringifySetCookie;var cookieNameRegExp=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,cookieValueRegExp=/^[\u0021-\u003A\u003C-\u007E]*$/,domainValueRegExp=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,pathValueRegExp=/^[\u0020-\u003A\u003D-\u007E]*$/,maxAgeRegExp=/^-?\d+$/,__toString=Object.prototype.toString,NullObject=(()=>{let C=function(){};return C.prototype=Object.create(null),C})();function parseCookie(str,options){let obj=new NullObject,len=str.length;if(len<2)return obj;let dec=options?.decode||decode,index=0;do{let eqIdx=eqIndex(str,index,len);if(eqIdx===-1)break;let endIdx=endIndex(str,index,len);if(eqIdx>endIdx){index=str.lastIndexOf(`;`,eqIdx-1)+1;continue}let key=valueSlice(str,index,eqIdx);obj[key]===void 0&&(obj[key]=dec(valueSlice(str,eqIdx+1,endIdx))),index=endIdx+1}while(index<len);return obj}function stringifyCookie(cookie2,options){let enc=options?.encode||encodeURIComponent,cookieStrings=[];for(let name of Object.keys(cookie2)){let val=cookie2[name];if(val===void 0)continue;if(!cookieNameRegExp.test(name))throw TypeError(`cookie name is invalid: ${name}`);let value=enc(val);if(!cookieValueRegExp.test(value))throw TypeError(`cookie val is invalid: ${val}`);cookieStrings.push(`${name}=${value}`)}return cookieStrings.join(`; `)}function stringifySetCookie(_name,_val,_opts){let cookie2=typeof _name==`object`?_name:{..._opts,name:_name,value:String(_val)},enc=(typeof _val==`object`?_val:_opts)?.encode||encodeURIComponent;if(!cookieNameRegExp.test(cookie2.name))throw TypeError(`argument name is invalid: ${cookie2.name}`);let value=cookie2.value?enc(cookie2.value):``;if(!cookieValueRegExp.test(value))throw TypeError(`argument val is invalid: ${cookie2.value}`);let str=cookie2.name+`=`+value;if(cookie2.maxAge!==void 0){if(!Number.isInteger(cookie2.maxAge))throw TypeError(`option maxAge is invalid: ${cookie2.maxAge}`);str+=`; Max-Age=`+cookie2.maxAge}if(cookie2.domain){if(!domainValueRegExp.test(cookie2.domain))throw TypeError(`option domain is invalid: ${cookie2.domain}`);str+=`; Domain=`+cookie2.domain}if(cookie2.path){if(!pathValueRegExp.test(cookie2.path))throw TypeError(`option path is invalid: ${cookie2.path}`);str+=`; Path=`+cookie2.path}if(cookie2.expires){if(!isDate(cookie2.expires)||!Number.isFinite(cookie2.expires.valueOf()))throw TypeError(`option expires is invalid: ${cookie2.expires}`);str+=`; Expires=`+cookie2.expires.toUTCString()}if(cookie2.httpOnly&&(str+=`; HttpOnly`),cookie2.secure&&(str+=`; Secure`),cookie2.partitioned&&(str+=`; Partitioned`),cookie2.priority)switch(typeof cookie2.priority==`string`?cookie2.priority.toLowerCase():void 0){case`low`:str+=`; Priority=Low`;break;case`medium`:str+=`; Priority=Medium`;break;case`high`:str+=`; Priority=High`;break;default:throw TypeError(`option priority is invalid: ${cookie2.priority}`)}if(cookie2.sameSite)switch(typeof cookie2.sameSite==`string`?cookie2.sameSite.toLowerCase():cookie2.sameSite){case!0:case`strict`:str+=`; SameSite=Strict`;break;case`lax`:str+=`; SameSite=Lax`;break;case`none`:str+=`; SameSite=None`;break;default:throw TypeError(`option sameSite is invalid: ${cookie2.sameSite}`)}return str}function parseSetCookie(str,options){let dec=options?.decode||decode,len=str.length,endIdx=endIndex(str,0,len),eqIdx=eqIndex(str,0,endIdx),setCookie=eqIdx===-1?{name:``,value:dec(valueSlice(str,0,endIdx))}:{name:valueSlice(str,0,eqIdx),value:dec(valueSlice(str,eqIdx+1,endIdx))},index=endIdx+1;for(;index<len;){let endIdx2=endIndex(str,index,len),eqIdx2=eqIndex(str,index,endIdx2),attr=eqIdx2===-1?valueSlice(str,index,endIdx2):valueSlice(str,index,eqIdx2),val=eqIdx2===-1?void 0:valueSlice(str,eqIdx2+1,endIdx2);switch(attr.toLowerCase()){case`httponly`:setCookie.httpOnly=!0;break;case`secure`:setCookie.secure=!0;break;case`partitioned`:setCookie.partitioned=!0;break;case`domain`:setCookie.domain=val;break;case`path`:setCookie.path=val;break;case`max-age`:val&&maxAgeRegExp.test(val)&&(setCookie.maxAge=Number(val));break;case`expires`:if(!val)break;let date=new Date(val);Number.isFinite(date.valueOf())&&(setCookie.expires=date);break;case`priority`:if(!val)break;let priority=val.toLowerCase();(priority===`low`||priority===`medium`||priority===`high`)&&(setCookie.priority=priority);break;case`samesite`:if(!val)break;let sameSite=val.toLowerCase();(sameSite===`lax`||sameSite===`strict`||sameSite===`none`)&&(setCookie.sameSite=sameSite)}index=endIdx2+1}return setCookie}function endIndex(str,min,len){let index=str.indexOf(`;`,min);return index===-1?len:index}function eqIndex(str,min,max){let index=str.indexOf(`=`,min);return index<max?index:-1}function valueSlice(str,min,max){let start=min,end=max;do{let code=str.charCodeAt(start);if(code!==32&&code!==9)break}while(++start<end);for(;end>start;){let code=str.charCodeAt(end-1);if(code!==32&&code!==9)break;end--}return str.slice(start,end)}function decode(str){if(str.indexOf(`%`)===-1)return str;try{return decodeURIComponent(str)}catch{return str}}function isDate(val){return __toString.call(val)===`[object Date]`}}})(),1),cookie=allCookie.default||allCookie,parse$1=cookie.parse,serialize$7=cookie.serialize;function pathMatch(reqPath,cookiePath){return!!(cookiePath===reqPath||reqPath.indexOf(cookiePath)===0&&(cookiePath[cookiePath.length-1]===`/`||reqPath.startsWith(cookiePath)&&reqPath[cookiePath.length]===`/`))}var SPECIAL_USE_DOMAINS=[`local`,`example`,`invalid`,`localhost`,`test`],SPECIAL_TREATMENT_DOMAINS=[`localhost`,`invalid`],defaultGetPublicSuffixOptions={allowSpecialUseDomain:!1,ignoreError:!1};function getPublicSuffix(domain,options={}){options={...defaultGetPublicSuffixOptions,...options};let domainParts=domain.split(`.`),topLevelDomain=domainParts[domainParts.length-1],allowSpecialUseDomain=!!options.allowSpecialUseDomain,ignoreError=!!options.ignoreError;if(allowSpecialUseDomain&&topLevelDomain!==void 0&&SPECIAL_USE_DOMAINS.includes(topLevelDomain)){if(domainParts.length>1)return`${domainParts[domainParts.length-2]}.${topLevelDomain}`;if(SPECIAL_TREATMENT_DOMAINS.includes(topLevelDomain))return topLevelDomain}if(!ignoreError&&topLevelDomain!==void 0&&SPECIAL_USE_DOMAINS.includes(topLevelDomain))throw Error(`Cookie has domain set to the public suffix "${topLevelDomain}" which is a special use domain. To allow this, configure your CookieJar with {allowSpecialUseDomain: true, rejectPublicSuffixes: false}.`);let publicSuffix=getDomain(domain,{allowIcannDomains:!0,allowPrivateDomains:!0});if(publicSuffix)return publicSuffix}function permuteDomain(domain,allowSpecialUseDomain){let pubSuf=getPublicSuffix(domain,{allowSpecialUseDomain});if(!pubSuf)return;if(pubSuf==domain)return[domain];domain.slice(-1)==`.`&&(domain=domain.slice(0,-1));let parts=domain.slice(0,-(pubSuf.length+1)).split(`.`).reverse(),cur=pubSuf,permutations=[cur];for(;parts.length;)cur=`${parts.shift()}.${cur}`,permutations.push(cur);return permutations}var Store=class{constructor(){this.synchronous=!1}findCookie(_domain,_path,_key,_callback){throw Error(`findCookie is not implemented`)}findCookies(_domain,_path,_allowSpecialUseDomain=!1,_callback){throw Error(`findCookies is not implemented`)}putCookie(_cookie,_callback){throw Error(`putCookie is not implemented`)}updateCookie(_oldCookie,_newCookie,_callback){throw Error(`updateCookie is not implemented`)}removeCookie(_domain,_path,_key,_callback){throw Error(`removeCookie is not implemented`)}removeCookies(_domain,_path,_callback){throw Error(`removeCookies is not implemented`)}removeAllCookies(_callback){throw Error(`removeAllCookies is not implemented`)}getAllCookies(_callback){throw Error(`getAllCookies is not implemented (therefore jar cannot be serialized)`)}},objectToString=obj=>Object.prototype.toString.call(obj),safeArrayToString=(arr,seenArrays)=>typeof arr.join==`function`?(seenArrays.add(arr),arr.map(val=>val==null||seenArrays.has(val)?``:safeToStringImpl(val,seenArrays)).join()):objectToString(arr),safeToStringImpl=(val,seenArrays=new WeakSet)=>typeof val!=`object`||!val?String(val):typeof val.toString==`function`?Array.isArray(val)?safeArrayToString(val,seenArrays):String(val):objectToString(val),safeToString=val=>safeToStringImpl(val);function createPromiseCallback(cb){let callback,resolve,reject,promise=new Promise((_resolve,_reject)=>{resolve=_resolve,reject=_reject});return callback=typeof cb==`function`?(err,result)=>{try{err?cb(err):cb(null,result)}catch(e){reject(e instanceof Error?e:Error())}}:(err,result)=>{try{err?reject(err):resolve(result)}catch(e){reject(e instanceof Error?e:Error())}},{promise,callback,resolve:value=>(callback(null,value),promise),reject:error=>(callback(error),promise)}}function inOperator(k,o){return k in o}var MemoryCookieStore=class extends Store{constructor(){super(),this.synchronous=!0,this.idx=Object.create(null)}findCookie(domain,path,key,callback){let promiseCallback=createPromiseCallback(callback);if(domain==null||path==null||key==null)return promiseCallback.resolve(void 0);let result=this.idx[domain]?.[path]?.[key];return promiseCallback.resolve(result)}findCookies(domain,path,allowSpecialUseDomain=!1,callback){typeof allowSpecialUseDomain==`function`&&(callback=allowSpecialUseDomain,allowSpecialUseDomain=!0);let results=[],promiseCallback=createPromiseCallback(callback);if(!domain)return promiseCallback.resolve([]);let pathMatcher;pathMatcher=path?function(domainIndex){for(let cookiePath in domainIndex)if(pathMatch(path,cookiePath)){let pathIndex=domainIndex[cookiePath];for(let key in pathIndex){let value=pathIndex[key];value&&results.push(value)}}}:function(domainIndex){for(let curPath in domainIndex){let pathIndex=domainIndex[curPath];for(let key in pathIndex){let value=pathIndex[key];value&&results.push(value)}}};let domains=permuteDomain(domain,allowSpecialUseDomain)||[domain],idx=this.idx;return domains.forEach(curDomain=>{let domainIndex=idx[curDomain];domainIndex&&pathMatcher(domainIndex)}),promiseCallback.resolve(results)}putCookie(cookie,callback){let promiseCallback=createPromiseCallback(callback),{domain,path,key}=cookie;if(domain==null||path==null||key==null)return promiseCallback.resolve(void 0);let domainEntry=this.idx[domain]??Object.create(null);this.idx[domain]=domainEntry;let pathEntry=domainEntry[path]??Object.create(null);return domainEntry[path]=pathEntry,pathEntry[key]=cookie,promiseCallback.resolve(void 0)}updateCookie(_oldCookie,newCookie,callback){if(callback)this.putCookie(newCookie,callback);else return this.putCookie(newCookie)}removeCookie(domain,path,key,callback){let promiseCallback=createPromiseCallback(callback);return delete this.idx[domain]?.[path]?.[key],promiseCallback.resolve(void 0)}removeCookies(domain,path,callback){let promiseCallback=createPromiseCallback(callback),domainEntry=this.idx[domain];return domainEntry&&(path?delete domainEntry[path]:delete this.idx[domain]),promiseCallback.resolve(void 0)}removeAllCookies(callback){let promiseCallback=createPromiseCallback(callback);return this.idx=Object.create(null),promiseCallback.resolve(void 0)}getAllCookies(callback){let promiseCallback=createPromiseCallback(callback),cookies=[],idx=this.idx;return Object.keys(idx).forEach(domain=>{let domainEntry=idx[domain]??{};Object.keys(domainEntry).forEach(path=>{let pathEntry=domainEntry[path]??{};Object.keys(pathEntry).forEach(key=>{let keyEntry=pathEntry[key];keyEntry!=null&&cookies.push(keyEntry)})})}),cookies.sort((a,b)=>(a.creationIndex||0)-(b.creationIndex||0)),promiseCallback.resolve(cookies)}};function isNonEmptyString(data){return isString(data)&&data!==``}function isEmptyString$1(data){return data===``||data instanceof String&&data.toString()===``}function isString(data){return typeof data==`string`||data instanceof String}function isObject$1(data){return objectToString(data)===`[object Object]`}function validate(bool,cbOrMessage,message){if(bool)return;let cb=typeof cbOrMessage==`function`?cbOrMessage:void 0,options=typeof cbOrMessage==`function`?message:cbOrMessage;isObject$1(options)||(options=`[object Object]`);let err=new ParameterError(safeToString(options));if(cb)cb(err);else throw err}var ParameterError=class extends Error{},version=`6.0.2`,PrefixSecurityEnum={SILENT:`silent`,STRICT:`strict`,DISABLED:`unsafe-disabled`};Object.freeze(PrefixSecurityEnum);var IP_V6_REGEX=`
|
|
20
20
|
\\[?(?:
|
|
21
21
|
(?:[a-fA-F\\d]{1,4}:){7}(?:[a-fA-F\\d]{1,4}|:)|
|
|
22
22
|
(?:[a-fA-F\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|:[a-fA-F\\d]{1,4}|:)|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { S as resolveFeatures, b as PluginOverrides, x as loadPlugin, y as LOADERS } from "../../provider-
|
|
1
|
+
import { S as resolveFeatures, b as PluginOverrides, x as loadPlugin, y as LOADERS } from "../../provider-D3MUu4Pe.mjs";
|
|
2
2
|
export { LOADERS, PluginOverrides, loadPlugin, resolveFeatures };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { C as Plugin, D as PluginTeardownReason, E as PluginContext, T as PluginConfigState, w as PluginCleanup } from "../../provider-
|
|
1
|
+
import { C as Plugin, D as PluginTeardownReason, E as PluginContext, T as PluginConfigState, w as PluginCleanup } from "../../provider-D3MUu4Pe.mjs";
|
|
2
2
|
export { Plugin, PluginCleanup, PluginConfigState, PluginContext, PluginTeardownReason };
|
package/dist/plugins/logs.d.mts
CHANGED