@directo/adunit 0.0.1-beta.3 → 0.0.1-beta.4
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/esm/content.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see content.mjs.LICENSE.txt */
|
|
2
|
-
var e={15:(e,t,n)=>{var a=n(155),o="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},r=a.useState,i=a.useEffect,s=a.useLayoutEffect,c=a.useDebugValue;function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!o(e,n)}catch(e){return!0}}var u="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var n=t(),a=r({inst:{value:n,getSnapshot:t}}),o=a[0].inst,u=a[1];return s(function(){o.value=n,o.getSnapshot=t,l(o)&&u({inst:o})},[e,n,t]),i(function(){return l(o)&&u({inst:o}),e(function(){l(o)&&u({inst:o})})},[e]),c(n),n};t.useSyncExternalStore=void 0!==a.useSyncExternalStore?a.useSyncExternalStore:u},18:(e,t)=>{var n=Symbol.for("react.element"),a=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),m=Symbol.iterator,h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},f=Object.assign,g={};function k(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||h}function b(){}function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||h}k.prototype.isReactComponent={},k.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},k.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=k.prototype;var v=y.prototype=new b;v.constructor=y,f(v,k.prototype),v.isPureReactComponent=!0;var w=Array.isArray,j=Object.prototype.hasOwnProperty,_={current:null},x={key:!0,ref:!0,__self:!0,__source:!0};function z(e,t,a){var o,r={},i=null,s=null;if(null!=t)for(o in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(i=""+t.key),t)j.call(t,o)&&!x.hasOwnProperty(o)&&(r[o]=t[o]);var c=arguments.length-2;if(1===c)r.children=a;else if(1<c){for(var l=Array(c),u=0;u<c;u++)l[u]=arguments[u+2];r.children=l}if(e&&e.defaultProps)for(o in c=e.defaultProps)void 0===r[o]&&(r[o]=c[o]);return{$$typeof:n,type:e,key:i,ref:s,props:r,_owner:_.current}}function C(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var S=/\/+/g;function E(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(e){return t[e]})}(""+e.key):t.toString(36)}function O(e,t,o,r,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var c=!1;if(null===e)c=!0;else switch(s){case"string":case"number":c=!0;break;case"object":switch(e.$$typeof){case n:case a:c=!0}}if(c)return i=i(c=e),e=""===r?"."+E(c,0):r,w(i)?(o="",null!=e&&(o=e.replace(S,"$&/")+"/"),O(i,t,o,"",function(e){return e})):null!=i&&(C(i)&&(i=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,o+(!i.key||c&&c.key===i.key?"":(""+i.key).replace(S,"$&/")+"/")+e)),t.push(i)),1;if(c=0,r=""===r?".":r+":",w(e))for(var l=0;l<e.length;l++){var u=r+E(s=e[l],l);c+=O(s,t,o,u,i)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=m&&e[m]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),l=0;!(s=e.next()).done;)c+=O(s=s.value,t,o,u=r+E(s,l++),i);else if("object"===s)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return c}function A(e,t,n){if(null==e)return e;var a=[],o=0;return O(e,a,"","",function(e){return t.call(n,e,o++)}),a}function P(e){if(-1===e._status){var t=e._result;(t=t()).then(function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)},function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)}),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var N={current:null},T={transition:null},I={ReactCurrentDispatcher:N,ReactCurrentBatchConfig:T,ReactCurrentOwner:_};function L(){throw Error("act(...) is not supported in production builds of React.")}t.Children={map:A,forEach:function(e,t,n){A(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return A(e,function(){t++}),t},toArray:function(e){return A(e,function(e){return e})||[]},only:function(e){if(!C(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=k,t.Fragment=o,t.Profiler=i,t.PureComponent=y,t.StrictMode=r,t.Suspense=u,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=I,t.act=L,t.cloneElement=function(e,t,a){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var o=f({},e.props),r=e.key,i=e.ref,s=e._owner;if(null!=t){if(void 0!==t.ref&&(i=t.ref,s=_.current),void 0!==t.key&&(r=""+t.key),e.type&&e.type.defaultProps)var c=e.type.defaultProps;for(l in t)j.call(t,l)&&!x.hasOwnProperty(l)&&(o[l]=void 0===t[l]&&void 0!==c?c[l]:t[l])}var l=arguments.length-2;if(1===l)o.children=a;else if(1<l){c=Array(l);for(var u=0;u<l;u++)c[u]=arguments[u+2];o.children=c}return{$$typeof:n,type:e.type,key:r,ref:i,props:o,_owner:s}},t.createContext=function(e){return(e={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:s,_context:e},e.Consumer=e},t.createElement=z,t.createFactory=function(e){var t=z.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:l,render:e}},t.isValidElement=C,t.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:P}},t.memo=function(e,t){return{$$typeof:p,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=T.transition;T.transition={};try{e()}finally{T.transition=t}},t.unstable_act=L,t.useCallback=function(e,t){return N.current.useCallback(e,t)},t.useContext=function(e){return N.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return N.current.useDeferredValue(e)},t.useEffect=function(e,t){return N.current.useEffect(e,t)},t.useId=function(){return N.current.useId()},t.useImperativeHandle=function(e,t,n){return N.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return N.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return N.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return N.current.useMemo(e,t)},t.useReducer=function(e,t,n){return N.current.useReducer(e,t,n)},t.useRef=function(e){return N.current.useRef(e)},t.useState=function(e){return N.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return N.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return N.current.useTransition()},t.version="18.3.1"},98:(e,t,n)=>{e.exports=n(15)},155:(e,t,n)=>{e.exports=n(18)},316:(e,t,n)=>{!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=n(396)},395:(e,t)=>{var n;!function(){var a={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=i(e,r(n)))}return e}function r(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)a.call(e,n)&&e[n]&&(t=i(t,n));return t}function i(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},396:(e,t,n)=>{var a=n(155),o=n(593);function r(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var i=new Set,s={};function c(e,t){l(e,t),l(e+"Capture",t)}function l(e,t){for(s[e]=t,e=0;e<t.length;e++)i.add(t[e])}var u=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),p=Object.prototype.hasOwnProperty,d=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,m={},h={};function f(e,t,n,a,o,r,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=a,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=r,this.removeEmptyString=i}var g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){g[e]=new f(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];g[t]=new f(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){g[e]=new f(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){g[e]=new f(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){g[e]=new f(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){g[e]=new f(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){g[e]=new f(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){g[e]=new f(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){g[e]=new f(e,5,!1,e.toLowerCase(),null,!1,!1)});var k=/[\-:]([a-z])/g;function b(e){return e[1].toUpperCase()}function y(e,t,n,a){var o=g.hasOwnProperty(t)?g[t]:null;(null!==o?0!==o.type:a||!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&(function(e,t,n,a){if(null==t||function(e,t,n,a){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!a&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,a))return!0;if(a)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,o,a)&&(n=null),a||null===o?function(e){return!!p.call(h,e)||!p.call(m,e)&&(d.test(e)?h[e]=!0:(m[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,a=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,a?e.setAttributeNS(a,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(k,b);g[t]=new f(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(k,b);g[t]=new f(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(k,b);g[t]=new f(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){g[e]=new f(e,1,!1,e.toLowerCase(),null,!1,!1)}),g.xlinkHref=new f("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){g[e]=new f(e,1,!1,e.toLowerCase(),null,!0,!0)});var v=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,w=Symbol.for("react.element"),j=Symbol.for("react.portal"),_=Symbol.for("react.fragment"),x=Symbol.for("react.strict_mode"),z=Symbol.for("react.profiler"),C=Symbol.for("react.provider"),S=Symbol.for("react.context"),E=Symbol.for("react.forward_ref"),O=Symbol.for("react.suspense"),A=Symbol.for("react.suspense_list"),P=Symbol.for("react.memo"),N=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var T=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var I=Symbol.iterator;function L(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=I&&e[I]||e["@@iterator"])?e:null}var D,R=Object.assign;function M(e){if(void 0===D)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);D=t&&t[1]||""}return"\n"+D+e}var $=!1;function B(e,t){if(!e||$)return"";$=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var a=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){a=e}e.call(t.prototype)}else{try{throw Error()}catch(e){a=e}e()}}catch(t){if(t&&a&&"string"==typeof t.stack){for(var o=t.stack.split("\n"),r=a.stack.split("\n"),i=o.length-1,s=r.length-1;1<=i&&0<=s&&o[i]!==r[s];)s--;for(;1<=i&&0<=s;i--,s--)if(o[i]!==r[s]){if(1!==i||1!==s)do{if(i--,0>--s||o[i]!==r[s]){var c="\n"+o[i].replace(" at new "," at ");return e.displayName&&c.includes("<anonymous>")&&(c=c.replace("<anonymous>",e.displayName)),c}}while(1<=i&&0<=s);break}}}finally{$=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?M(e):""}function U(e){switch(e.tag){case 5:return M(e.type);case 16:return M("Lazy");case 13:return M("Suspense");case 19:return M("SuspenseList");case 0:case 2:case 15:return B(e.type,!1);case 11:return B(e.type.render,!1);case 1:return B(e.type,!0);default:return""}}function F(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case _:return"Fragment";case j:return"Portal";case z:return"Profiler";case x:return"StrictMode";case O:return"Suspense";case A:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case S:return(e.displayName||"Context")+".Consumer";case C:return(e._context.displayName||"Context")+".Provider";case E:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case P:return null!==(t=e.displayName||null)?t:F(e.type)||"Memo";case N:t=e._payload,e=e._init;try{return F(e(t))}catch(e){}}return null}function V(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return F(t);case 8:return t===x?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t}return null}function H(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function K(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function q(e){e._valueTracker||(e._valueTracker=function(e){var t=K(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),a=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var o=n.get,r=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){a=""+e,r.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return a},setValue:function(e){a=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function G(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),a="";return e&&(a=K(e)?e.checked?"true":"false":e.value),(e=a)!==n&&(t.setValue(e),!0)}function Q(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function W(e,t){var n=t.checked;return R({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function Y(e,t){var n=null==t.defaultValue?"":t.defaultValue,a=null!=t.checked?t.checked:t.defaultChecked;n=H(null!=t.value?t.value:n),e._wrapperState={initialChecked:a,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function J(e,t){null!=(t=t.checked)&&y(e,"checked",t,!1)}function Z(e,t){J(e,t);var n=H(t.value),a=t.type;if(null!=n)"number"===a?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===a||"reset"===a)return void e.removeAttribute("value");t.hasOwnProperty("value")?ee(e,t.type,n):t.hasOwnProperty("defaultValue")&&ee(e,t.type,H(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function X(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var a=t.type;if(!("submit"!==a&&"reset"!==a||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ee(e,t,n){"number"===t&&Q(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var te=Array.isArray;function ne(e,t,n,a){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&a&&(e[n].defaultSelected=!0)}else{for(n=""+H(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(a&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function ae(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(r(91));return R({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function oe(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(r(92));if(te(n)){if(1<n.length)throw Error(r(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:H(n)}}function re(e,t){var n=H(t.value),a=H(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=a&&(e.defaultValue=""+a)}function ie(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function se(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function ce(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?se(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var le,ue,pe=(ue=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((le=le||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=le.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,a){MSApp.execUnsafeLocalFunction(function(){return ue(e,t)})}:ue);function de(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var me={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},he=["Webkit","ms","Moz","O"];function fe(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||me.hasOwnProperty(e)&&me[e]?(""+t).trim():t+"px"}function ge(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var a=0===n.indexOf("--"),o=fe(n,t[n],a);"float"===n&&(n="cssFloat"),a?e.setProperty(n,o):e[n]=o}}Object.keys(me).forEach(function(e){he.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),me[t]=me[e]})});var ke=R({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function be(e,t){if(t){if(ke[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(r(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(r(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(r(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(r(62))}}function ye(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var ve=null;function we(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var je=null,_e=null,xe=null;function ze(e){if(e=vo(e)){if("function"!=typeof je)throw Error(r(280));var t=e.stateNode;t&&(t=jo(t),je(e.stateNode,e.type,t))}}function Ce(e){_e?xe?xe.push(e):xe=[e]:_e=e}function Se(){if(_e){var e=_e,t=xe;if(xe=_e=null,ze(e),t)for(e=0;e<t.length;e++)ze(t[e])}}function Ee(e,t){return e(t)}function Oe(){}var Ae=!1;function Pe(e,t,n){if(Ae)return e(t,n);Ae=!0;try{return Ee(e,t,n)}finally{Ae=!1,(null!==_e||null!==xe)&&(Oe(),Se())}}function Ne(e,t){var n=e.stateNode;if(null===n)return null;var a=jo(n);if(null===a)return null;n=a[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(a=!a.disabled)||(a=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!a;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(r(231,t,typeof n));return n}var Te=!1;if(u)try{var Ie={};Object.defineProperty(Ie,"passive",{get:function(){Te=!0}}),window.addEventListener("test",Ie,Ie),window.removeEventListener("test",Ie,Ie)}catch(ue){Te=!1}function Le(e,t,n,a,o,r,i,s,c){var l=Array.prototype.slice.call(arguments,3);try{t.apply(n,l)}catch(e){this.onError(e)}}var De=!1,Re=null,Me=!1,$e=null,Be={onError:function(e){De=!0,Re=e}};function Ue(e,t,n,a,o,r,i,s,c){De=!1,Re=null,Le.apply(Be,arguments)}function Fe(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Ve(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&null!==(e=e.alternate)&&(t=e.memoizedState),null!==t)return t.dehydrated}return null}function He(e){if(Fe(e)!==e)throw Error(r(188))}function Ke(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=Fe(e)))throw Error(r(188));return t!==e?null:e}for(var n=e,a=t;;){var o=n.return;if(null===o)break;var i=o.alternate;if(null===i){if(null!==(a=o.return)){n=a;continue}break}if(o.child===i.child){for(i=o.child;i;){if(i===n)return He(o),e;if(i===a)return He(o),t;i=i.sibling}throw Error(r(188))}if(n.return!==a.return)n=o,a=i;else{for(var s=!1,c=o.child;c;){if(c===n){s=!0,n=o,a=i;break}if(c===a){s=!0,a=o,n=i;break}c=c.sibling}if(!s){for(c=i.child;c;){if(c===n){s=!0,n=i,a=o;break}if(c===a){s=!0,a=i,n=o;break}c=c.sibling}if(!s)throw Error(r(189))}}if(n.alternate!==a)throw Error(r(190))}if(3!==n.tag)throw Error(r(188));return n.stateNode.current===n?e:t}(e))?qe(e):null}function qe(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=qe(e);if(null!==t)return t;e=e.sibling}return null}var Ge=o.unstable_scheduleCallback,Qe=o.unstable_cancelCallback,We=o.unstable_shouldYield,Ye=o.unstable_requestPaint,Je=o.unstable_now,Ze=o.unstable_getCurrentPriorityLevel,Xe=o.unstable_ImmediatePriority,et=o.unstable_UserBlockingPriority,tt=o.unstable_NormalPriority,nt=o.unstable_LowPriority,at=o.unstable_IdlePriority,ot=null,rt=null,it=Math.clz32?Math.clz32:function(e){return 0===(e>>>=0)?32:31-(st(e)/ct|0)|0},st=Math.log,ct=Math.LN2,lt=64,ut=4194304;function pt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function dt(e,t){var n=e.pendingLanes;if(0===n)return 0;var a=0,o=e.suspendedLanes,r=e.pingedLanes,i=268435455&n;if(0!==i){var s=i&~o;0!==s?a=pt(s):0!==(r&=i)&&(a=pt(r))}else 0!==(i=n&~o)?a=pt(i):0!==r&&(a=pt(r));if(0===a)return 0;if(0!==t&&t!==a&&0===(t&o)&&((o=a&-a)>=(r=t&-t)||16===o&&4194240&r))return t;if(4&a&&(a|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=a;0<t;)o=1<<(n=31-it(t)),a|=e[n],t&=~o;return a}function mt(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function ht(e){return 0!=(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function ft(){var e=lt;return!(4194240&(lt<<=1))&&(lt=64),e}function gt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function kt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-it(t)]=n}function bt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var a=31-it(n),o=1<<a;o&t|e[a]&t&&(e[a]|=t),n&=~o}}var yt=0;function vt(e){return 1<(e&=-e)?4<e?268435455&e?16:536870912:4:1}var wt,jt,_t,xt,zt,Ct=!1,St=[],Et=null,Ot=null,At=null,Pt=new Map,Nt=new Map,Tt=[],It="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Lt(e,t){switch(e){case"focusin":case"focusout":Et=null;break;case"dragenter":case"dragleave":Ot=null;break;case"mouseover":case"mouseout":At=null;break;case"pointerover":case"pointerout":Pt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Nt.delete(t.pointerId)}}function Dt(e,t,n,a,o,r){return null===e||e.nativeEvent!==r?(e={blockedOn:t,domEventName:n,eventSystemFlags:a,nativeEvent:r,targetContainers:[o]},null!==t&&null!==(t=vo(t))&&jt(t),e):(e.eventSystemFlags|=a,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function Rt(e){var t=yo(e.target);if(null!==t){var n=Fe(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Ve(n)))return e.blockedOn=t,void zt(e.priority,function(){_t(n)})}else if(3===t&&n.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Mt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Wt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=vo(n))&&jt(t),e.blockedOn=n,!1;var a=new(n=e.nativeEvent).constructor(n.type,n);ve=a,n.target.dispatchEvent(a),ve=null,t.shift()}return!0}function $t(e,t,n){Mt(e)&&n.delete(t)}function Bt(){Ct=!1,null!==Et&&Mt(Et)&&(Et=null),null!==Ot&&Mt(Ot)&&(Ot=null),null!==At&&Mt(At)&&(At=null),Pt.forEach($t),Nt.forEach($t)}function Ut(e,t){e.blockedOn===t&&(e.blockedOn=null,Ct||(Ct=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,Bt)))}function Ft(e){function t(t){return Ut(t,e)}if(0<St.length){Ut(St[0],e);for(var n=1;n<St.length;n++){var a=St[n];a.blockedOn===e&&(a.blockedOn=null)}}for(null!==Et&&Ut(Et,e),null!==Ot&&Ut(Ot,e),null!==At&&Ut(At,e),Pt.forEach(t),Nt.forEach(t),n=0;n<Tt.length;n++)(a=Tt[n]).blockedOn===e&&(a.blockedOn=null);for(;0<Tt.length&&null===(n=Tt[0]).blockedOn;)Rt(n),null===n.blockedOn&&Tt.shift()}var Vt=v.ReactCurrentBatchConfig,Ht=!0;function Kt(e,t,n,a){var o=yt,r=Vt.transition;Vt.transition=null;try{yt=1,Gt(e,t,n,a)}finally{yt=o,Vt.transition=r}}function qt(e,t,n,a){var o=yt,r=Vt.transition;Vt.transition=null;try{yt=4,Gt(e,t,n,a)}finally{yt=o,Vt.transition=r}}function Gt(e,t,n,a){if(Ht){var o=Wt(e,t,n,a);if(null===o)Ha(e,t,a,Qt,n),Lt(e,a);else if(function(e,t,n,a,o){switch(t){case"focusin":return Et=Dt(Et,e,t,n,a,o),!0;case"dragenter":return Ot=Dt(Ot,e,t,n,a,o),!0;case"mouseover":return At=Dt(At,e,t,n,a,o),!0;case"pointerover":var r=o.pointerId;return Pt.set(r,Dt(Pt.get(r)||null,e,t,n,a,o)),!0;case"gotpointercapture":return r=o.pointerId,Nt.set(r,Dt(Nt.get(r)||null,e,t,n,a,o)),!0}return!1}(o,e,t,n,a))a.stopPropagation();else if(Lt(e,a),4&t&&-1<It.indexOf(e)){for(;null!==o;){var r=vo(o);if(null!==r&&wt(r),null===(r=Wt(e,t,n,a))&&Ha(e,t,a,Qt,n),r===o)break;o=r}null!==o&&a.stopPropagation()}else Ha(e,t,a,null,n)}}var Qt=null;function Wt(e,t,n,a){if(Qt=null,null!==(e=yo(e=we(a))))if(null===(t=Fe(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=Ve(t)))return e;e=null}else if(3===n){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Qt=e,null}function Yt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Ze()){case Xe:return 1;case et:return 4;case tt:case nt:return 16;case at:return 536870912;default:return 16}default:return 16}}var Jt=null,Zt=null,Xt=null;function en(){if(Xt)return Xt;var e,t,n=Zt,a=n.length,o="value"in Jt?Jt.value:Jt.textContent,r=o.length;for(e=0;e<a&&n[e]===o[e];e++);var i=a-e;for(t=1;t<=i&&n[a-t]===o[r-t];t++);return Xt=o.slice(e,1<t?1-t:void 0)}function tn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function nn(){return!0}function an(){return!1}function on(e){function t(t,n,a,o,r){for(var i in this._reactName=t,this._targetInst=a,this.type=n,this.nativeEvent=o,this.target=r,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(o):o[i]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?nn:an,this.isPropagationStopped=an,this}return R(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=nn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=nn)},persist:function(){},isPersistent:nn}),t}var rn,sn,cn,ln={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},un=on(ln),pn=R({},ln,{view:0,detail:0}),dn=on(pn),mn=R({},pn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==cn&&(cn&&"mousemove"===e.type?(rn=e.screenX-cn.screenX,sn=e.screenY-cn.screenY):sn=rn=0,cn=e),rn)},movementY:function(e){return"movementY"in e?e.movementY:sn}}),hn=on(mn),fn=on(R({},mn,{dataTransfer:0})),gn=on(R({},pn,{relatedTarget:0})),kn=on(R({},ln,{animationName:0,elapsedTime:0,pseudoElement:0})),bn=R({},ln,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),yn=on(bn),vn=on(R({},ln,{data:0})),wn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},jn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},_n={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function xn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=_n[e])&&!!t[e]}function zn(){return xn}var Cn=R({},pn,{key:function(e){if(e.key){var t=wn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=tn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?jn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zn,charCode:function(e){return"keypress"===e.type?tn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?tn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Sn=on(Cn),En=on(R({},mn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),On=on(R({},pn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zn})),An=on(R({},ln,{propertyName:0,elapsedTime:0,pseudoElement:0})),Pn=R({},mn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),Nn=on(Pn),Tn=[9,13,27,32],In=u&&"CompositionEvent"in window,Ln=null;u&&"documentMode"in document&&(Ln=document.documentMode);var Dn=u&&"TextEvent"in window&&!Ln,Rn=u&&(!In||Ln&&8<Ln&&11>=Ln),Mn=String.fromCharCode(32),$n=!1;function Bn(e,t){switch(e){case"keyup":return-1!==Tn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Un(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Fn=!1,Vn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Hn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Vn[e.type]:"textarea"===t}function Kn(e,t,n,a){Ce(a),0<(t=qa(t,"onChange")).length&&(n=new un("onChange","change",null,n,a),e.push({event:n,listeners:t}))}var qn=null,Gn=null;function Qn(e){Ma(e,0)}function Wn(e){if(G(wo(e)))return e}function Yn(e,t){if("change"===e)return t}var Jn=!1;if(u){var Zn;if(u){var Xn="oninput"in document;if(!Xn){var ea=document.createElement("div");ea.setAttribute("oninput","return;"),Xn="function"==typeof ea.oninput}Zn=Xn}else Zn=!1;Jn=Zn&&(!document.documentMode||9<document.documentMode)}function ta(){qn&&(qn.detachEvent("onpropertychange",na),Gn=qn=null)}function na(e){if("value"===e.propertyName&&Wn(Gn)){var t=[];Kn(t,Gn,e,we(e)),Pe(Qn,t)}}function aa(e,t,n){"focusin"===e?(ta(),Gn=n,(qn=t).attachEvent("onpropertychange",na)):"focusout"===e&&ta()}function oa(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Wn(Gn)}function ra(e,t){if("click"===e)return Wn(t)}function ia(e,t){if("input"===e||"change"===e)return Wn(t)}var sa="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t};function ca(e,t){if(sa(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),a=Object.keys(t);if(n.length!==a.length)return!1;for(a=0;a<n.length;a++){var o=n[a];if(!p.call(t,o)||!sa(e[o],t[o]))return!1}return!0}function la(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ua(e,t){var n,a=la(e);for(e=0;a;){if(3===a.nodeType){if(n=e+a.textContent.length,e<=t&&n>=t)return{node:a,offset:t-e};e=n}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=la(a)}}function pa(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?pa(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function da(){for(var e=window,t=Q();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(e){n=!1}if(!n)break;t=Q((e=t.contentWindow).document)}return t}function ma(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function ha(e){var t=da(),n=e.focusedElem,a=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&pa(n.ownerDocument.documentElement,n)){if(null!==a&&ma(n))if(t=a.start,void 0===(e=a.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var o=n.textContent.length,r=Math.min(a.start,o);a=void 0===a.end?r:Math.min(a.end,o),!e.extend&&r>a&&(o=a,a=r,r=o),o=ua(n,r);var i=ua(n,a);o&&i&&(1!==e.rangeCount||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&((t=t.createRange()).setStart(o.node,o.offset),e.removeAllRanges(),r>a?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"==typeof n.focus&&n.focus(),n=0;n<t.length;n++)(e=t[n]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var fa=u&&"documentMode"in document&&11>=document.documentMode,ga=null,ka=null,ba=null,ya=!1;function va(e,t,n){var a=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;ya||null==ga||ga!==Q(a)||(a="selectionStart"in(a=ga)&&ma(a)?{start:a.selectionStart,end:a.selectionEnd}:{anchorNode:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset},ba&&ca(ba,a)||(ba=a,0<(a=qa(ka,"onSelect")).length&&(t=new un("onSelect","select",null,t,n),e.push({event:t,listeners:a}),t.target=ga)))}function wa(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var ja={animationend:wa("Animation","AnimationEnd"),animationiteration:wa("Animation","AnimationIteration"),animationstart:wa("Animation","AnimationStart"),transitionend:wa("Transition","TransitionEnd")},_a={},xa={};function za(e){if(_a[e])return _a[e];if(!ja[e])return e;var t,n=ja[e];for(t in n)if(n.hasOwnProperty(t)&&t in xa)return _a[e]=n[t];return e}u&&(xa=document.createElement("div").style,"AnimationEvent"in window||(delete ja.animationend.animation,delete ja.animationiteration.animation,delete ja.animationstart.animation),"TransitionEvent"in window||delete ja.transitionend.transition);var Ca=za("animationend"),Sa=za("animationiteration"),Ea=za("animationstart"),Oa=za("transitionend"),Aa=new Map,Pa="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Na(e,t){Aa.set(e,t),c(t,[e])}for(var Ta=0;Ta<Pa.length;Ta++){var Ia=Pa[Ta];Na(Ia.toLowerCase(),"on"+(Ia[0].toUpperCase()+Ia.slice(1)))}Na(Ca,"onAnimationEnd"),Na(Sa,"onAnimationIteration"),Na(Ea,"onAnimationStart"),Na("dblclick","onDoubleClick"),Na("focusin","onFocus"),Na("focusout","onBlur"),Na(Oa,"onTransitionEnd"),l("onMouseEnter",["mouseout","mouseover"]),l("onMouseLeave",["mouseout","mouseover"]),l("onPointerEnter",["pointerout","pointerover"]),l("onPointerLeave",["pointerout","pointerover"]),c("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),c("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),c("onBeforeInput",["compositionend","keypress","textInput","paste"]),c("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var La="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Da=new Set("cancel close invalid load scroll toggle".split(" ").concat(La));function Ra(e,t,n){var a=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,a,o,i,s,c,l){if(Ue.apply(this,arguments),De){if(!De)throw Error(r(198));var u=Re;De=!1,Re=null,Me||(Me=!0,$e=u)}}(a,t,void 0,e),e.currentTarget=null}function Ma(e,t){t=!!(4&t);for(var n=0;n<e.length;n++){var a=e[n],o=a.event;a=a.listeners;e:{var r=void 0;if(t)for(var i=a.length-1;0<=i;i--){var s=a[i],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==r&&o.isPropagationStopped())break e;Ra(o,s,l),r=c}else for(i=0;i<a.length;i++){if(c=(s=a[i]).instance,l=s.currentTarget,s=s.listener,c!==r&&o.isPropagationStopped())break e;Ra(o,s,l),r=c}}}if(Me)throw e=$e,Me=!1,$e=null,e}function $a(e,t){var n=t[go];void 0===n&&(n=t[go]=new Set);var a=e+"__bubble";n.has(a)||(Va(t,e,2,!1),n.add(a))}function Ba(e,t,n){var a=0;t&&(a|=4),Va(n,e,a,t)}var Ua="_reactListening"+Math.random().toString(36).slice(2);function Fa(e){if(!e[Ua]){e[Ua]=!0,i.forEach(function(t){"selectionchange"!==t&&(Da.has(t)||Ba(t,!1,e),Ba(t,!0,e))});var t=9===e.nodeType?e:e.ownerDocument;null===t||t[Ua]||(t[Ua]=!0,Ba("selectionchange",!1,t))}}function Va(e,t,n,a){switch(Yt(t)){case 1:var o=Kt;break;case 4:o=qt;break;default:o=Gt}n=o.bind(null,t,n,e),o=void 0,!Te||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),a?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function Ha(e,t,n,a,o){var r=a;if(!(1&t||2&t||null===a))e:for(;;){if(null===a)return;var i=a.tag;if(3===i||4===i){var s=a.stateNode.containerInfo;if(s===o||8===s.nodeType&&s.parentNode===o)break;if(4===i)for(i=a.return;null!==i;){var c=i.tag;if((3===c||4===c)&&((c=i.stateNode.containerInfo)===o||8===c.nodeType&&c.parentNode===o))return;i=i.return}for(;null!==s;){if(null===(i=yo(s)))return;if(5===(c=i.tag)||6===c){a=r=i;continue e}s=s.parentNode}}a=a.return}Pe(function(){var a=r,o=we(n),i=[];e:{var s=Aa.get(e);if(void 0!==s){var c=un,l=e;switch(e){case"keypress":if(0===tn(n))break e;case"keydown":case"keyup":c=Sn;break;case"focusin":l="focus",c=gn;break;case"focusout":l="blur",c=gn;break;case"beforeblur":case"afterblur":c=gn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":c=hn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":c=fn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":c=On;break;case Ca:case Sa:case Ea:c=kn;break;case Oa:c=An;break;case"scroll":c=dn;break;case"wheel":c=Nn;break;case"copy":case"cut":case"paste":c=yn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":c=En}var u=!!(4&t),p=!u&&"scroll"===e,d=u?null!==s?s+"Capture":null:s;u=[];for(var m,h=a;null!==h;){var f=(m=h).stateNode;if(5===m.tag&&null!==f&&(m=f,null!==d&&null!=(f=Ne(h,d))&&u.push(Ka(h,f,m))),p)break;h=h.return}0<u.length&&(s=new c(s,l,null,n,o),i.push({event:s,listeners:u}))}}if(!(7&t)){if(c="mouseout"===e||"pointerout"===e,(!(s="mouseover"===e||"pointerover"===e)||n===ve||!(l=n.relatedTarget||n.fromElement)||!yo(l)&&!l[fo])&&(c||s)&&(s=o.window===o?o:(s=o.ownerDocument)?s.defaultView||s.parentWindow:window,c?(c=a,null!==(l=(l=n.relatedTarget||n.toElement)?yo(l):null)&&(l!==(p=Fe(l))||5!==l.tag&&6!==l.tag)&&(l=null)):(c=null,l=a),c!==l)){if(u=hn,f="onMouseLeave",d="onMouseEnter",h="mouse","pointerout"!==e&&"pointerover"!==e||(u=En,f="onPointerLeave",d="onPointerEnter",h="pointer"),p=null==c?s:wo(c),m=null==l?s:wo(l),(s=new u(f,h+"leave",c,n,o)).target=p,s.relatedTarget=m,f=null,yo(o)===a&&((u=new u(d,h+"enter",l,n,o)).target=m,u.relatedTarget=p,f=u),p=f,c&&l)e:{for(d=l,h=0,m=u=c;m;m=Ga(m))h++;for(m=0,f=d;f;f=Ga(f))m++;for(;0<h-m;)u=Ga(u),h--;for(;0<m-h;)d=Ga(d),m--;for(;h--;){if(u===d||null!==d&&u===d.alternate)break e;u=Ga(u),d=Ga(d)}u=null}else u=null;null!==c&&Qa(i,s,c,u,!1),null!==l&&null!==p&&Qa(i,p,l,u,!0)}if("select"===(c=(s=a?wo(a):window).nodeName&&s.nodeName.toLowerCase())||"input"===c&&"file"===s.type)var g=Yn;else if(Hn(s))if(Jn)g=ia;else{g=oa;var k=aa}else(c=s.nodeName)&&"input"===c.toLowerCase()&&("checkbox"===s.type||"radio"===s.type)&&(g=ra);switch(g&&(g=g(e,a))?Kn(i,g,n,o):(k&&k(e,s,a),"focusout"===e&&(k=s._wrapperState)&&k.controlled&&"number"===s.type&&ee(s,"number",s.value)),k=a?wo(a):window,e){case"focusin":(Hn(k)||"true"===k.contentEditable)&&(ga=k,ka=a,ba=null);break;case"focusout":ba=ka=ga=null;break;case"mousedown":ya=!0;break;case"contextmenu":case"mouseup":case"dragend":ya=!1,va(i,n,o);break;case"selectionchange":if(fa)break;case"keydown":case"keyup":va(i,n,o)}var b;if(In)e:{switch(e){case"compositionstart":var y="onCompositionStart";break e;case"compositionend":y="onCompositionEnd";break e;case"compositionupdate":y="onCompositionUpdate";break e}y=void 0}else Fn?Bn(e,n)&&(y="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(y="onCompositionStart");y&&(Rn&&"ko"!==n.locale&&(Fn||"onCompositionStart"!==y?"onCompositionEnd"===y&&Fn&&(b=en()):(Zt="value"in(Jt=o)?Jt.value:Jt.textContent,Fn=!0)),0<(k=qa(a,y)).length&&(y=new vn(y,e,null,n,o),i.push({event:y,listeners:k}),(b||null!==(b=Un(n)))&&(y.data=b))),(b=Dn?function(e,t){switch(e){case"compositionend":return Un(t);case"keypress":return 32!==t.which?null:($n=!0,Mn);case"textInput":return(e=t.data)===Mn&&$n?null:e;default:return null}}(e,n):function(e,t){if(Fn)return"compositionend"===e||!In&&Bn(e,t)?(e=en(),Xt=Zt=Jt=null,Fn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Rn&&"ko"!==t.locale?null:t.data}}(e,n))&&0<(a=qa(a,"onBeforeInput")).length&&(o=new vn("onBeforeInput","beforeinput",null,n,o),i.push({event:o,listeners:a}),o.data=b)}Ma(i,t)})}function Ka(e,t,n){return{instance:e,listener:t,currentTarget:n}}function qa(e,t){for(var n=t+"Capture",a=[];null!==e;){var o=e,r=o.stateNode;5===o.tag&&null!==r&&(o=r,null!=(r=Ne(e,n))&&a.unshift(Ka(e,r,o)),null!=(r=Ne(e,t))&&a.push(Ka(e,r,o))),e=e.return}return a}function Ga(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Qa(e,t,n,a,o){for(var r=t._reactName,i=[];null!==n&&n!==a;){var s=n,c=s.alternate,l=s.stateNode;if(null!==c&&c===a)break;5===s.tag&&null!==l&&(s=l,o?null!=(c=Ne(n,r))&&i.unshift(Ka(n,c,s)):o||null!=(c=Ne(n,r))&&i.push(Ka(n,c,s))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}var Wa=/\r\n?/g,Ya=/\u0000|\uFFFD/g;function Ja(e){return("string"==typeof e?e:""+e).replace(Wa,"\n").replace(Ya,"")}function Za(e,t,n){if(t=Ja(t),Ja(e)!==t&&n)throw Error(r(425))}function Xa(){}var eo=null,to=null;function no(e,t){return"textarea"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var ao="function"==typeof setTimeout?setTimeout:void 0,oo="function"==typeof clearTimeout?clearTimeout:void 0,ro="function"==typeof Promise?Promise:void 0,io="function"==typeof queueMicrotask?queueMicrotask:void 0!==ro?function(e){return ro.resolve(null).then(e).catch(so)}:ao;function so(e){setTimeout(function(){throw e})}function co(e,t){var n=t,a=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&8===o.nodeType)if("/$"===(n=o.data)){if(0===a)return e.removeChild(o),void Ft(t);a--}else"$"!==n&&"$?"!==n&&"$!"!==n||a++;n=o}while(n);Ft(t)}function lo(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function uo(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var po=Math.random().toString(36).slice(2),mo="__reactFiber$"+po,ho="__reactProps$"+po,fo="__reactContainer$"+po,go="__reactEvents$"+po,ko="__reactListeners$"+po,bo="__reactHandles$"+po;function yo(e){var t=e[mo];if(t)return t;for(var n=e.parentNode;n;){if(t=n[fo]||n[mo]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=uo(e);null!==e;){if(n=e[mo])return n;e=uo(e)}return t}n=(e=n).parentNode}return null}function vo(e){return!(e=e[mo]||e[fo])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function wo(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(r(33))}function jo(e){return e[ho]||null}var _o=[],xo=-1;function zo(e){return{current:e}}function Co(e){0>xo||(e.current=_o[xo],_o[xo]=null,xo--)}function So(e,t){xo++,_o[xo]=e.current,e.current=t}var Eo={},Oo=zo(Eo),Ao=zo(!1),Po=Eo;function No(e,t){var n=e.type.contextTypes;if(!n)return Eo;var a=e.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===t)return a.__reactInternalMemoizedMaskedChildContext;var o,r={};for(o in n)r[o]=t[o];return a&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=r),r}function To(e){return null!=e.childContextTypes}function Io(){Co(Ao),Co(Oo)}function Lo(e,t,n){if(Oo.current!==Eo)throw Error(r(168));So(Oo,t),So(Ao,n)}function Do(e,t,n){var a=e.stateNode;if(t=t.childContextTypes,"function"!=typeof a.getChildContext)return n;for(var o in a=a.getChildContext())if(!(o in t))throw Error(r(108,V(e)||"Unknown",o));return R({},n,a)}function Ro(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Eo,Po=Oo.current,So(Oo,e),So(Ao,Ao.current),!0}function Mo(e,t,n){var a=e.stateNode;if(!a)throw Error(r(169));n?(e=Do(e,t,Po),a.__reactInternalMemoizedMergedChildContext=e,Co(Ao),Co(Oo),So(Oo,e)):Co(Ao),So(Ao,n)}var $o=null,Bo=!1,Uo=!1;function Fo(e){null===$o?$o=[e]:$o.push(e)}function Vo(){if(!Uo&&null!==$o){Uo=!0;var e=0,t=yt;try{var n=$o;for(yt=1;e<n.length;e++){var a=n[e];do{a=a(!0)}while(null!==a)}$o=null,Bo=!1}catch(t){throw null!==$o&&($o=$o.slice(e+1)),Ge(Xe,Vo),t}finally{yt=t,Uo=!1}}return null}var Ho=[],Ko=0,qo=null,Go=0,Qo=[],Wo=0,Yo=null,Jo=1,Zo="";function Xo(e,t){Ho[Ko++]=Go,Ho[Ko++]=qo,qo=e,Go=t}function er(e,t,n){Qo[Wo++]=Jo,Qo[Wo++]=Zo,Qo[Wo++]=Yo,Yo=e;var a=Jo;e=Zo;var o=32-it(a)-1;a&=~(1<<o),n+=1;var r=32-it(t)+o;if(30<r){var i=o-o%5;r=(a&(1<<i)-1).toString(32),a>>=i,o-=i,Jo=1<<32-it(t)+o|n<<o|a,Zo=r+e}else Jo=1<<r|n<<o|a,Zo=e}function tr(e){null!==e.return&&(Xo(e,1),er(e,1,0))}function nr(e){for(;e===qo;)qo=Ho[--Ko],Ho[Ko]=null,Go=Ho[--Ko],Ho[Ko]=null;for(;e===Yo;)Yo=Qo[--Wo],Qo[Wo]=null,Zo=Qo[--Wo],Qo[Wo]=null,Jo=Qo[--Wo],Qo[Wo]=null}var ar=null,or=null,rr=!1,ir=null;function sr(e,t){var n=Pl(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,null===(t=e.deletions)?(e.deletions=[n],e.flags|=16):t.push(n)}function cr(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,ar=e,or=lo(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,ar=e,or=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Yo?{id:Jo,overflow:Zo}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Pl(18,null,null,0)).stateNode=t,n.return=e,e.child=n,ar=e,or=null,!0);default:return!1}}function lr(e){return!(!(1&e.mode)||128&e.flags)}function ur(e){if(rr){var t=or;if(t){var n=t;if(!cr(e,t)){if(lr(e))throw Error(r(418));t=lo(n.nextSibling);var a=ar;t&&cr(e,t)?sr(a,n):(e.flags=-4097&e.flags|2,rr=!1,ar=e)}}else{if(lr(e))throw Error(r(418));e.flags=-4097&e.flags|2,rr=!1,ar=e}}}function pr(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;ar=e}function dr(e){if(e!==ar)return!1;if(!rr)return pr(e),rr=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!no(e.type,e.memoizedProps)),t&&(t=or)){if(lr(e))throw mr(),Error(r(418));for(;t;)sr(e,t),t=lo(t.nextSibling)}if(pr(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(r(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){or=lo(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}or=null}}else or=ar?lo(e.stateNode.nextSibling):null;return!0}function mr(){for(var e=or;e;)e=lo(e.nextSibling)}function hr(){or=ar=null,rr=!1}function fr(e){null===ir?ir=[e]:ir.push(e)}var gr=v.ReactCurrentBatchConfig;function kr(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(r(309));var a=n.stateNode}if(!a)throw Error(r(147,e));var o=a,i=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===i?t.ref:(t=function(e){var t=o.refs;null===e?delete t[i]:t[i]=e},t._stringRef=i,t)}if("string"!=typeof e)throw Error(r(284));if(!n._owner)throw Error(r(290,e))}return e}function br(e,t){throw e=Object.prototype.toString.call(t),Error(r(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function yr(e){return(0,e._init)(e._payload)}function vr(e){function t(t,n){if(e){var a=t.deletions;null===a?(t.deletions=[n],t.flags|=16):a.push(n)}}function n(n,a){if(!e)return null;for(;null!==a;)t(n,a),a=a.sibling;return null}function a(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=Tl(e,t)).index=0,e.sibling=null,e}function i(t,n,a){return t.index=a,e?null!==(a=t.alternate)?(a=a.index)<n?(t.flags|=2,n):a:(t.flags|=2,n):(t.flags|=1048576,n)}function s(t){return e&&null===t.alternate&&(t.flags|=2),t}function c(e,t,n,a){return null===t||6!==t.tag?((t=Rl(n,e.mode,a)).return=e,t):((t=o(t,n)).return=e,t)}function l(e,t,n,a){var r=n.type;return r===_?p(e,t,n.props.children,a,n.key):null!==t&&(t.elementType===r||"object"==typeof r&&null!==r&&r.$$typeof===N&&yr(r)===t.type)?((a=o(t,n.props)).ref=kr(e,t,n),a.return=e,a):((a=Il(n.type,n.key,n.props,null,e.mode,a)).ref=kr(e,t,n),a.return=e,a)}function u(e,t,n,a){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Ml(n,e.mode,a)).return=e,t):((t=o(t,n.children||[])).return=e,t)}function p(e,t,n,a,r){return null===t||7!==t.tag?((t=Ll(n,e.mode,a,r)).return=e,t):((t=o(t,n)).return=e,t)}function d(e,t,n){if("string"==typeof t&&""!==t||"number"==typeof t)return(t=Rl(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case w:return(n=Il(t.type,t.key,t.props,null,e.mode,n)).ref=kr(e,null,t),n.return=e,n;case j:return(t=Ml(t,e.mode,n)).return=e,t;case N:return d(e,(0,t._init)(t._payload),n)}if(te(t)||L(t))return(t=Ll(t,e.mode,n,null)).return=e,t;br(e,t)}return null}function m(e,t,n,a){var o=null!==t?t.key:null;if("string"==typeof n&&""!==n||"number"==typeof n)return null!==o?null:c(e,t,""+n,a);if("object"==typeof n&&null!==n){switch(n.$$typeof){case w:return n.key===o?l(e,t,n,a):null;case j:return n.key===o?u(e,t,n,a):null;case N:return m(e,t,(o=n._init)(n._payload),a)}if(te(n)||L(n))return null!==o?null:p(e,t,n,a,null);br(e,n)}return null}function h(e,t,n,a,o){if("string"==typeof a&&""!==a||"number"==typeof a)return c(t,e=e.get(n)||null,""+a,o);if("object"==typeof a&&null!==a){switch(a.$$typeof){case w:return l(t,e=e.get(null===a.key?n:a.key)||null,a,o);case j:return u(t,e=e.get(null===a.key?n:a.key)||null,a,o);case N:return h(e,t,n,(0,a._init)(a._payload),o)}if(te(a)||L(a))return p(t,e=e.get(n)||null,a,o,null);br(t,a)}return null}function f(o,r,s,c){for(var l=null,u=null,p=r,f=r=0,g=null;null!==p&&f<s.length;f++){p.index>f?(g=p,p=null):g=p.sibling;var k=m(o,p,s[f],c);if(null===k){null===p&&(p=g);break}e&&p&&null===k.alternate&&t(o,p),r=i(k,r,f),null===u?l=k:u.sibling=k,u=k,p=g}if(f===s.length)return n(o,p),rr&&Xo(o,f),l;if(null===p){for(;f<s.length;f++)null!==(p=d(o,s[f],c))&&(r=i(p,r,f),null===u?l=p:u.sibling=p,u=p);return rr&&Xo(o,f),l}for(p=a(o,p);f<s.length;f++)null!==(g=h(p,o,f,s[f],c))&&(e&&null!==g.alternate&&p.delete(null===g.key?f:g.key),r=i(g,r,f),null===u?l=g:u.sibling=g,u=g);return e&&p.forEach(function(e){return t(o,e)}),rr&&Xo(o,f),l}function g(o,s,c,l){var u=L(c);if("function"!=typeof u)throw Error(r(150));if(null==(c=u.call(c)))throw Error(r(151));for(var p=u=null,f=s,g=s=0,k=null,b=c.next();null!==f&&!b.done;g++,b=c.next()){f.index>g?(k=f,f=null):k=f.sibling;var y=m(o,f,b.value,l);if(null===y){null===f&&(f=k);break}e&&f&&null===y.alternate&&t(o,f),s=i(y,s,g),null===p?u=y:p.sibling=y,p=y,f=k}if(b.done)return n(o,f),rr&&Xo(o,g),u;if(null===f){for(;!b.done;g++,b=c.next())null!==(b=d(o,b.value,l))&&(s=i(b,s,g),null===p?u=b:p.sibling=b,p=b);return rr&&Xo(o,g),u}for(f=a(o,f);!b.done;g++,b=c.next())null!==(b=h(f,o,g,b.value,l))&&(e&&null!==b.alternate&&f.delete(null===b.key?g:b.key),s=i(b,s,g),null===p?u=b:p.sibling=b,p=b);return e&&f.forEach(function(e){return t(o,e)}),rr&&Xo(o,g),u}return function e(a,r,i,c){if("object"==typeof i&&null!==i&&i.type===_&&null===i.key&&(i=i.props.children),"object"==typeof i&&null!==i){switch(i.$$typeof){case w:e:{for(var l=i.key,u=r;null!==u;){if(u.key===l){if((l=i.type)===_){if(7===u.tag){n(a,u.sibling),(r=o(u,i.props.children)).return=a,a=r;break e}}else if(u.elementType===l||"object"==typeof l&&null!==l&&l.$$typeof===N&&yr(l)===u.type){n(a,u.sibling),(r=o(u,i.props)).ref=kr(a,u,i),r.return=a,a=r;break e}n(a,u);break}t(a,u),u=u.sibling}i.type===_?((r=Ll(i.props.children,a.mode,c,i.key)).return=a,a=r):((c=Il(i.type,i.key,i.props,null,a.mode,c)).ref=kr(a,r,i),c.return=a,a=c)}return s(a);case j:e:{for(u=i.key;null!==r;){if(r.key===u){if(4===r.tag&&r.stateNode.containerInfo===i.containerInfo&&r.stateNode.implementation===i.implementation){n(a,r.sibling),(r=o(r,i.children||[])).return=a,a=r;break e}n(a,r);break}t(a,r),r=r.sibling}(r=Ml(i,a.mode,c)).return=a,a=r}return s(a);case N:return e(a,r,(u=i._init)(i._payload),c)}if(te(i))return f(a,r,i,c);if(L(i))return g(a,r,i,c);br(a,i)}return"string"==typeof i&&""!==i||"number"==typeof i?(i=""+i,null!==r&&6===r.tag?(n(a,r.sibling),(r=o(r,i)).return=a,a=r):(n(a,r),(r=Rl(i,a.mode,c)).return=a,a=r),s(a)):n(a,r)}}var wr=vr(!0),jr=vr(!1),_r=zo(null),xr=null,zr=null,Cr=null;function Sr(){Cr=zr=xr=null}function Er(e){var t=_r.current;Co(_r),e._currentValue=t}function Or(e,t,n){for(;null!==e;){var a=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==a&&(a.childLanes|=t)):null!==a&&(a.childLanes&t)!==t&&(a.childLanes|=t),e===n)break;e=e.return}}function Ar(e,t){xr=e,Cr=zr=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!==(e.lanes&t)&&(ys=!0),e.firstContext=null)}function Pr(e){var t=e._currentValue;if(Cr!==e)if(e={context:e,memoizedValue:t,next:null},null===zr){if(null===xr)throw Error(r(308));zr=e,xr.dependencies={lanes:0,firstContext:e}}else zr=zr.next=e;return t}var Nr=null;function Tr(e){null===Nr?Nr=[e]:Nr.push(e)}function Ir(e,t,n,a){var o=t.interleaved;return null===o?(n.next=n,Tr(t)):(n.next=o.next,o.next=n),t.interleaved=n,Lr(e,a)}function Lr(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}var Dr=!1;function Rr(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Mr(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function $r(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Br(e,t,n){var a=e.updateQueue;if(null===a)return null;if(a=a.shared,2&Ec){var o=a.pending;return null===o?t.next=t:(t.next=o.next,o.next=t),a.pending=t,Lr(e,n)}return null===(o=a.interleaved)?(t.next=t,Tr(a)):(t.next=o.next,o.next=t),a.interleaved=t,Lr(e,n)}function Ur(e,t,n){if(null!==(t=t.updateQueue)&&(t=t.shared,4194240&n)){var a=t.lanes;n|=a&=e.pendingLanes,t.lanes=n,bt(e,n)}}function Fr(e,t){var n=e.updateQueue,a=e.alternate;if(null!==a&&n===(a=a.updateQueue)){var o=null,r=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===r?o=r=i:r=r.next=i,n=n.next}while(null!==n);null===r?o=r=t:r=r.next=t}else o=r=t;return n={baseState:a.baseState,firstBaseUpdate:o,lastBaseUpdate:r,shared:a.shared,effects:a.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Vr(e,t,n,a){var o=e.updateQueue;Dr=!1;var r=o.firstBaseUpdate,i=o.lastBaseUpdate,s=o.shared.pending;if(null!==s){o.shared.pending=null;var c=s,l=c.next;c.next=null,null===i?r=l:i.next=l,i=c;var u=e.alternate;null!==u&&(s=(u=u.updateQueue).lastBaseUpdate)!==i&&(null===s?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c)}if(null!==r){var p=o.baseState;for(i=0,u=l=c=null,s=r;;){var d=s.lane,m=s.eventTime;if((a&d)===d){null!==u&&(u=u.next={eventTime:m,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var h=e,f=s;switch(d=t,m=n,f.tag){case 1:if("function"==typeof(h=f.payload)){p=h.call(m,p,d);break e}p=h;break e;case 3:h.flags=-65537&h.flags|128;case 0:if(null==(d="function"==typeof(h=f.payload)?h.call(m,p,d):h))break e;p=R({},p,d);break e;case 2:Dr=!0}}null!==s.callback&&0!==s.lane&&(e.flags|=64,null===(d=o.effects)?o.effects=[s]:d.push(s))}else m={eventTime:m,lane:d,tag:s.tag,payload:s.payload,callback:s.callback,next:null},null===u?(l=u=m,c=p):u=u.next=m,i|=d;if(null===(s=s.next)){if(null===(s=o.shared.pending))break;s=(d=s).next,d.next=null,o.lastBaseUpdate=d,o.shared.pending=null}}if(null===u&&(c=p),o.baseState=c,o.firstBaseUpdate=l,o.lastBaseUpdate=u,null!==(t=o.shared.interleaved)){o=t;do{i|=o.lane,o=o.next}while(o!==t)}else null===r&&(o.shared.lanes=0);Dc|=i,e.lanes=i,e.memoizedState=p}}function Hr(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var a=e[t],o=a.callback;if(null!==o){if(a.callback=null,a=n,"function"!=typeof o)throw Error(r(191,o));o.call(a)}}}var Kr={},qr=zo(Kr),Gr=zo(Kr),Qr=zo(Kr);function Wr(e){if(e===Kr)throw Error(r(174));return e}function Yr(e,t){switch(So(Qr,t),So(Gr,e),So(qr,Kr),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:ce(null,"");break;default:t=ce(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Co(qr),So(qr,t)}function Jr(){Co(qr),Co(Gr),Co(Qr)}function Zr(e){Wr(Qr.current);var t=Wr(qr.current),n=ce(t,e.type);t!==n&&(So(Gr,e),So(qr,n))}function Xr(e){Gr.current===e&&(Co(qr),Co(Gr))}var ei=zo(0);function ti(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(128&t.flags)return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ni=[];function ai(){for(var e=0;e<ni.length;e++)ni[e]._workInProgressVersionPrimary=null;ni.length=0}var oi=v.ReactCurrentDispatcher,ri=v.ReactCurrentBatchConfig,ii=0,si=null,ci=null,li=null,ui=!1,pi=!1,di=0,mi=0;function hi(){throw Error(r(321))}function fi(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!sa(e[n],t[n]))return!1;return!0}function gi(e,t,n,a,o,i){if(ii=i,si=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,oi.current=null===e||null===e.memoizedState?Xi:es,e=n(a,o),pi){i=0;do{if(pi=!1,di=0,25<=i)throw Error(r(301));i+=1,li=ci=null,t.updateQueue=null,oi.current=ts,e=n(a,o)}while(pi)}if(oi.current=Zi,t=null!==ci&&null!==ci.next,ii=0,li=ci=si=null,ui=!1,t)throw Error(r(300));return e}function ki(){var e=0!==di;return di=0,e}function bi(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===li?si.memoizedState=li=e:li=li.next=e,li}function yi(){if(null===ci){var e=si.alternate;e=null!==e?e.memoizedState:null}else e=ci.next;var t=null===li?si.memoizedState:li.next;if(null!==t)li=t,ci=e;else{if(null===e)throw Error(r(310));e={memoizedState:(ci=e).memoizedState,baseState:ci.baseState,baseQueue:ci.baseQueue,queue:ci.queue,next:null},null===li?si.memoizedState=li=e:li=li.next=e}return li}function vi(e,t){return"function"==typeof t?t(e):t}function wi(e){var t=yi(),n=t.queue;if(null===n)throw Error(r(311));n.lastRenderedReducer=e;var a=ci,o=a.baseQueue,i=n.pending;if(null!==i){if(null!==o){var s=o.next;o.next=i.next,i.next=s}a.baseQueue=o=i,n.pending=null}if(null!==o){i=o.next,a=a.baseState;var c=s=null,l=null,u=i;do{var p=u.lane;if((ii&p)===p)null!==l&&(l=l.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),a=u.hasEagerState?u.eagerState:e(a,u.action);else{var d={lane:p,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===l?(c=l=d,s=a):l=l.next=d,si.lanes|=p,Dc|=p}u=u.next}while(null!==u&&u!==i);null===l?s=a:l.next=c,sa(a,t.memoizedState)||(ys=!0),t.memoizedState=a,t.baseState=s,t.baseQueue=l,n.lastRenderedState=a}if(null!==(e=n.interleaved)){o=e;do{i=o.lane,si.lanes|=i,Dc|=i,o=o.next}while(o!==e)}else null===o&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function ji(e){var t=yi(),n=t.queue;if(null===n)throw Error(r(311));n.lastRenderedReducer=e;var a=n.dispatch,o=n.pending,i=t.memoizedState;if(null!==o){n.pending=null;var s=o=o.next;do{i=e(i,s.action),s=s.next}while(s!==o);sa(i,t.memoizedState)||(ys=!0),t.memoizedState=i,null===t.baseQueue&&(t.baseState=i),n.lastRenderedState=i}return[i,a]}function _i(){}function xi(e,t){var n=si,a=yi(),o=t(),i=!sa(a.memoizedState,o);if(i&&(a.memoizedState=o,ys=!0),a=a.queue,Di(Si.bind(null,n,a,e),[e]),a.getSnapshot!==t||i||null!==li&&1&li.memoizedState.tag){if(n.flags|=2048,Pi(9,Ci.bind(null,n,a,o,t),void 0,null),null===Oc)throw Error(r(349));30&ii||zi(n,t,o)}return o}function zi(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=si.updateQueue)?(t={lastEffect:null,stores:null},si.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function Ci(e,t,n,a){t.value=n,t.getSnapshot=a,Ei(t)&&Oi(e)}function Si(e,t,n){return n(function(){Ei(t)&&Oi(e)})}function Ei(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!sa(e,n)}catch(e){return!0}}function Oi(e){var t=Lr(e,1);null!==t&&nl(t,e,1,-1)}function Ai(e){var t=bi();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:vi,lastRenderedState:e},t.queue=e,e=e.dispatch=Qi.bind(null,si,e),[t.memoizedState,e]}function Pi(e,t,n,a){return e={tag:e,create:t,destroy:n,deps:a,next:null},null===(t=si.updateQueue)?(t={lastEffect:null,stores:null},si.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(a=n.next,n.next=e,e.next=a,t.lastEffect=e),e}function Ni(){return yi().memoizedState}function Ti(e,t,n,a){var o=bi();si.flags|=e,o.memoizedState=Pi(1|t,n,void 0,void 0===a?null:a)}function Ii(e,t,n,a){var o=yi();a=void 0===a?null:a;var r=void 0;if(null!==ci){var i=ci.memoizedState;if(r=i.destroy,null!==a&&fi(a,i.deps))return void(o.memoizedState=Pi(t,n,r,a))}si.flags|=e,o.memoizedState=Pi(1|t,n,r,a)}function Li(e,t){return Ti(8390656,8,e,t)}function Di(e,t){return Ii(2048,8,e,t)}function Ri(e,t){return Ii(4,2,e,t)}function Mi(e,t){return Ii(4,4,e,t)}function $i(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Bi(e,t,n){return n=null!=n?n.concat([e]):null,Ii(4,4,$i.bind(null,t,e),n)}function Ui(){}function Fi(e,t){var n=yi();t=void 0===t?null:t;var a=n.memoizedState;return null!==a&&null!==t&&fi(t,a[1])?a[0]:(n.memoizedState=[e,t],e)}function Vi(e,t){var n=yi();t=void 0===t?null:t;var a=n.memoizedState;return null!==a&&null!==t&&fi(t,a[1])?a[0]:(e=e(),n.memoizedState=[e,t],e)}function Hi(e,t,n){return 21&ii?(sa(n,t)||(n=ft(),si.lanes|=n,Dc|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,ys=!0),e.memoizedState=n)}function Ki(e,t){var n=yt;yt=0!==n&&4>n?n:4,e(!0);var a=ri.transition;ri.transition={};try{e(!1),t()}finally{yt=n,ri.transition=a}}function qi(){return yi().memoizedState}function Gi(e,t,n){var a=tl(e);n={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null},Wi(e)?Yi(t,n):null!==(n=Ir(e,t,n,a))&&(nl(n,e,a,el()),Ji(n,t,a))}function Qi(e,t,n){var a=tl(e),o={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null};if(Wi(e))Yi(t,o);else{var r=e.alternate;if(0===e.lanes&&(null===r||0===r.lanes)&&null!==(r=t.lastRenderedReducer))try{var i=t.lastRenderedState,s=r(i,n);if(o.hasEagerState=!0,o.eagerState=s,sa(s,i)){var c=t.interleaved;return null===c?(o.next=o,Tr(t)):(o.next=c.next,c.next=o),void(t.interleaved=o)}}catch(e){}null!==(n=Ir(e,t,o,a))&&(nl(n,e,a,o=el()),Ji(n,t,a))}}function Wi(e){var t=e.alternate;return e===si||null!==t&&t===si}function Yi(e,t){pi=ui=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Ji(e,t,n){if(4194240&n){var a=t.lanes;n|=a&=e.pendingLanes,t.lanes=n,bt(e,n)}}var Zi={readContext:Pr,useCallback:hi,useContext:hi,useEffect:hi,useImperativeHandle:hi,useInsertionEffect:hi,useLayoutEffect:hi,useMemo:hi,useReducer:hi,useRef:hi,useState:hi,useDebugValue:hi,useDeferredValue:hi,useTransition:hi,useMutableSource:hi,useSyncExternalStore:hi,useId:hi,unstable_isNewReconciler:!1},Xi={readContext:Pr,useCallback:function(e,t){return bi().memoizedState=[e,void 0===t?null:t],e},useContext:Pr,useEffect:Li,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Ti(4194308,4,$i.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ti(4194308,4,e,t)},useInsertionEffect:function(e,t){return Ti(4,2,e,t)},useMemo:function(e,t){var n=bi();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var a=bi();return t=void 0!==n?n(t):t,a.memoizedState=a.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},a.queue=e,e=e.dispatch=Gi.bind(null,si,e),[a.memoizedState,e]},useRef:function(e){return e={current:e},bi().memoizedState=e},useState:Ai,useDebugValue:Ui,useDeferredValue:function(e){return bi().memoizedState=e},useTransition:function(){var e=Ai(!1),t=e[0];return e=Ki.bind(null,e[1]),bi().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var a=si,o=bi();if(rr){if(void 0===n)throw Error(r(407));n=n()}else{if(n=t(),null===Oc)throw Error(r(349));30&ii||zi(a,t,n)}o.memoizedState=n;var i={value:n,getSnapshot:t};return o.queue=i,Li(Si.bind(null,a,i,e),[e]),a.flags|=2048,Pi(9,Ci.bind(null,a,i,n,t),void 0,null),n},useId:function(){var e=bi(),t=Oc.identifierPrefix;if(rr){var n=Zo;t=":"+t+"R"+(n=(Jo&~(1<<32-it(Jo)-1)).toString(32)+n),0<(n=di++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=mi++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},es={readContext:Pr,useCallback:Fi,useContext:Pr,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Ri,useLayoutEffect:Mi,useMemo:Vi,useReducer:wi,useRef:Ni,useState:function(){return wi(vi)},useDebugValue:Ui,useDeferredValue:function(e){return Hi(yi(),ci.memoizedState,e)},useTransition:function(){return[wi(vi)[0],yi().memoizedState]},useMutableSource:_i,useSyncExternalStore:xi,useId:qi,unstable_isNewReconciler:!1},ts={readContext:Pr,useCallback:Fi,useContext:Pr,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Ri,useLayoutEffect:Mi,useMemo:Vi,useReducer:ji,useRef:Ni,useState:function(){return ji(vi)},useDebugValue:Ui,useDeferredValue:function(e){var t=yi();return null===ci?t.memoizedState=e:Hi(t,ci.memoizedState,e)},useTransition:function(){return[ji(vi)[0],yi().memoizedState]},useMutableSource:_i,useSyncExternalStore:xi,useId:qi,unstable_isNewReconciler:!1};function ns(e,t){if(e&&e.defaultProps){for(var n in t=R({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}function as(e,t,n,a){n=null==(n=n(a,t=e.memoizedState))?t:R({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var os={isMounted:function(e){return!!(e=e._reactInternals)&&Fe(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var a=el(),o=tl(e),r=$r(a,o);r.payload=t,null!=n&&(r.callback=n),null!==(t=Br(e,r,o))&&(nl(t,e,o,a),Ur(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var a=el(),o=tl(e),r=$r(a,o);r.tag=1,r.payload=t,null!=n&&(r.callback=n),null!==(t=Br(e,r,o))&&(nl(t,e,o,a),Ur(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=el(),a=tl(e),o=$r(n,a);o.tag=2,null!=t&&(o.callback=t),null!==(t=Br(e,o,a))&&(nl(t,e,a,n),Ur(t,e,a))}};function rs(e,t,n,a,o,r,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(a,r,i):!(t.prototype&&t.prototype.isPureReactComponent&&ca(n,a)&&ca(o,r))}function is(e,t,n){var a=!1,o=Eo,r=t.contextType;return"object"==typeof r&&null!==r?r=Pr(r):(o=To(t)?Po:Oo.current,r=(a=null!=(a=t.contextTypes))?No(e,o):Eo),t=new t(n,r),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=os,e.stateNode=t,t._reactInternals=e,a&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=r),t}function ss(e,t,n,a){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,a),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,a),t.state!==e&&os.enqueueReplaceState(t,t.state,null)}function cs(e,t,n,a){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs={},Rr(e);var r=t.contextType;"object"==typeof r&&null!==r?o.context=Pr(r):(r=To(t)?Po:Oo.current,o.context=No(e,r)),o.state=e.memoizedState,"function"==typeof(r=t.getDerivedStateFromProps)&&(as(e,t,r,n),o.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof o.getSnapshotBeforeUpdate||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||(t=o.state,"function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&os.enqueueReplaceState(o,o.state,null),Vr(e,n,o,a),o.state=e.memoizedState),"function"==typeof o.componentDidMount&&(e.flags|=4194308)}function ls(e,t){try{var n="",a=t;do{n+=U(a),a=a.return}while(a);var o=n}catch(e){o="\nError generating stack: "+e.message+"\n"+e.stack}return{value:e,source:t,stack:o,digest:null}}function us(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function ps(e,t){try{console.error(t.value)}catch(e){setTimeout(function(){throw e})}}var ds="function"==typeof WeakMap?WeakMap:Map;function ms(e,t,n){(n=$r(-1,n)).tag=3,n.payload={element:null};var a=t.value;return n.callback=function(){Hc||(Hc=!0,Kc=a),ps(0,t)},n}function hs(e,t,n){(n=$r(-1,n)).tag=3;var a=e.type.getDerivedStateFromError;if("function"==typeof a){var o=t.value;n.payload=function(){return a(o)},n.callback=function(){ps(0,t)}}var r=e.stateNode;return null!==r&&"function"==typeof r.componentDidCatch&&(n.callback=function(){ps(0,t),"function"!=typeof a&&(null===qc?qc=new Set([this]):qc.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function fs(e,t,n){var a=e.pingCache;if(null===a){a=e.pingCache=new ds;var o=new Set;a.set(t,o)}else void 0===(o=a.get(t))&&(o=new Set,a.set(t,o));o.has(n)||(o.add(n),e=zl.bind(null,e,t,n),t.then(e,e))}function gs(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function ks(e,t,n,a,o){return 1&e.mode?(e.flags|=65536,e.lanes=o,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=$r(-1,1)).tag=2,Br(n,t,1))),n.lanes|=1),e)}var bs=v.ReactCurrentOwner,ys=!1;function vs(e,t,n,a){t.child=null===e?jr(t,null,n,a):wr(t,e.child,n,a)}function ws(e,t,n,a,o){n=n.render;var r=t.ref;return Ar(t,o),a=gi(e,t,n,a,r,o),n=ki(),null===e||ys?(rr&&n&&tr(t),t.flags|=1,vs(e,t,a,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Hs(e,t,o))}function js(e,t,n,a,o){if(null===e){var r=n.type;return"function"!=typeof r||Nl(r)||void 0!==r.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Il(n.type,null,a,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=r,_s(e,t,r,a,o))}if(r=e.child,0===(e.lanes&o)){var i=r.memoizedProps;if((n=null!==(n=n.compare)?n:ca)(i,a)&&e.ref===t.ref)return Hs(e,t,o)}return t.flags|=1,(e=Tl(r,a)).ref=t.ref,e.return=t,t.child=e}function _s(e,t,n,a,o){if(null!==e){var r=e.memoizedProps;if(ca(r,a)&&e.ref===t.ref){if(ys=!1,t.pendingProps=a=r,0===(e.lanes&o))return t.lanes=e.lanes,Hs(e,t,o);131072&e.flags&&(ys=!0)}}return Cs(e,t,n,a,o)}function xs(e,t,n){var a=t.pendingProps,o=a.children,r=null!==e?e.memoizedState:null;if("hidden"===a.mode)if(1&t.mode){if(!(1073741824&n))return e=null!==r?r.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,So(Tc,Nc),Nc|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},a=null!==r?r.baseLanes:n,So(Tc,Nc),Nc|=a}else t.memoizedState={baseLanes:0,cachePool:null,transitions:null},So(Tc,Nc),Nc|=n;else null!==r?(a=r.baseLanes|n,t.memoizedState=null):a=n,So(Tc,Nc),Nc|=a;return vs(e,t,o,n),t.child}function zs(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Cs(e,t,n,a,o){var r=To(n)?Po:Oo.current;return r=No(t,r),Ar(t,o),n=gi(e,t,n,a,r,o),a=ki(),null===e||ys?(rr&&a&&tr(t),t.flags|=1,vs(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Hs(e,t,o))}function Ss(e,t,n,a,o){if(To(n)){var r=!0;Ro(t)}else r=!1;if(Ar(t,o),null===t.stateNode)Vs(e,t),is(t,n,a),cs(t,n,a,o),a=!0;else if(null===e){var i=t.stateNode,s=t.memoizedProps;i.props=s;var c=i.context,l=n.contextType;l="object"==typeof l&&null!==l?Pr(l):No(t,l=To(n)?Po:Oo.current);var u=n.getDerivedStateFromProps,p="function"==typeof u||"function"==typeof i.getSnapshotBeforeUpdate;p||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==a||c!==l)&&ss(t,i,a,l),Dr=!1;var d=t.memoizedState;i.state=d,Vr(t,a,i,o),c=t.memoizedState,s!==a||d!==c||Ao.current||Dr?("function"==typeof u&&(as(t,n,u,a),c=t.memoizedState),(s=Dr||rs(t,n,s,a,d,c,l))?(p||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4194308)):("function"==typeof i.componentDidMount&&(t.flags|=4194308),t.memoizedProps=a,t.memoizedState=c),i.props=a,i.state=c,i.context=l,a=s):("function"==typeof i.componentDidMount&&(t.flags|=4194308),a=!1)}else{i=t.stateNode,Mr(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:ns(t.type,s),i.props=l,p=t.pendingProps,d=i.context,c="object"==typeof(c=n.contextType)&&null!==c?Pr(c):No(t,c=To(n)?Po:Oo.current);var m=n.getDerivedStateFromProps;(u="function"==typeof m||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==p||d!==c)&&ss(t,i,a,c),Dr=!1,d=t.memoizedState,i.state=d,Vr(t,a,i,o);var h=t.memoizedState;s!==p||d!==h||Ao.current||Dr?("function"==typeof m&&(as(t,n,m,a),h=t.memoizedState),(l=Dr||rs(t,n,l,a,d,h,c)||!1)?(u||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(a,h,c),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(a,h,c)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),t.memoizedProps=a,t.memoizedState=h),i.props=a,i.state=h,i.context=c,a=l):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),a=!1)}return Es(e,t,n,a,r,o)}function Es(e,t,n,a,o,r){zs(e,t);var i=!!(128&t.flags);if(!a&&!i)return o&&Mo(t,n,!1),Hs(e,t,r);a=t.stateNode,bs.current=t;var s=i&&"function"!=typeof n.getDerivedStateFromError?null:a.render();return t.flags|=1,null!==e&&i?(t.child=wr(t,e.child,null,r),t.child=wr(t,null,s,r)):vs(e,t,s,r),t.memoizedState=a.state,o&&Mo(t,n,!0),t.child}function Os(e){var t=e.stateNode;t.pendingContext?Lo(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Lo(0,t.context,!1),Yr(e,t.containerInfo)}function As(e,t,n,a,o){return hr(),fr(o),t.flags|=256,vs(e,t,n,a),t.child}var Ps,Ns,Ts,Is,Ls={dehydrated:null,treeContext:null,retryLane:0};function Ds(e){return{baseLanes:e,cachePool:null,transitions:null}}function Rs(e,t,n){var a,o=t.pendingProps,i=ei.current,s=!1,c=!!(128&t.flags);if((a=c)||(a=(null===e||null!==e.memoizedState)&&!!(2&i)),a?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(i|=1),So(ei,1&i),null===e)return ur(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(1&t.mode?"$!"===e.data?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(c=o.children,e=o.fallback,s?(o=t.mode,s=t.child,c={mode:"hidden",children:c},1&o||null===s?s=Dl(c,o,0,null):(s.childLanes=0,s.pendingProps=c),e=Ll(e,o,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ds(n),t.memoizedState=Ls,e):Ms(t,c));if(null!==(i=e.memoizedState)&&null!==(a=i.dehydrated))return function(e,t,n,a,o,i,s){if(n)return 256&t.flags?(t.flags&=-257,$s(e,t,s,a=us(Error(r(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(i=a.fallback,o=t.mode,a=Dl({mode:"visible",children:a.children},o,0,null),(i=Ll(i,o,s,null)).flags|=2,a.return=t,i.return=t,a.sibling=i,t.child=a,1&t.mode&&wr(t,e.child,null,s),t.child.memoizedState=Ds(s),t.memoizedState=Ls,i);if(!(1&t.mode))return $s(e,t,s,null);if("$!"===o.data){if(a=o.nextSibling&&o.nextSibling.dataset)var c=a.dgst;return a=c,$s(e,t,s,a=us(i=Error(r(419)),a,void 0))}if(c=0!==(s&e.childLanes),ys||c){if(null!==(a=Oc)){switch(s&-s){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}0!==(o=0!==(o&(a.suspendedLanes|s))?0:o)&&o!==i.retryLane&&(i.retryLane=o,Lr(e,o),nl(a,e,o,-1))}return fl(),$s(e,t,s,a=us(Error(r(421))))}return"$?"===o.data?(t.flags|=128,t.child=e.child,t=Sl.bind(null,e),o._reactRetry=t,null):(e=i.treeContext,or=lo(o.nextSibling),ar=t,rr=!0,ir=null,null!==e&&(Qo[Wo++]=Jo,Qo[Wo++]=Zo,Qo[Wo++]=Yo,Jo=e.id,Zo=e.overflow,Yo=t),(t=Ms(t,a.children)).flags|=4096,t)}(e,t,c,o,a,i,n);if(s){s=o.fallback,c=t.mode,a=(i=e.child).sibling;var l={mode:"hidden",children:o.children};return 1&c||t.child===i?(o=Tl(i,l)).subtreeFlags=14680064&i.subtreeFlags:((o=t.child).childLanes=0,o.pendingProps=l,t.deletions=null),null!==a?s=Tl(a,s):(s=Ll(s,c,n,null)).flags|=2,s.return=t,o.return=t,o.sibling=s,t.child=o,o=s,s=t.child,c=null===(c=e.child.memoizedState)?Ds(n):{baseLanes:c.baseLanes|n,cachePool:null,transitions:c.transitions},s.memoizedState=c,s.childLanes=e.childLanes&~n,t.memoizedState=Ls,o}return e=(s=e.child).sibling,o=Tl(s,{mode:"visible",children:o.children}),!(1&t.mode)&&(o.lanes=n),o.return=t,o.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=o,t.memoizedState=null,o}function Ms(e,t){return(t=Dl({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function $s(e,t,n,a){return null!==a&&fr(a),wr(t,e.child,null,n),(e=Ms(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Bs(e,t,n){e.lanes|=t;var a=e.alternate;null!==a&&(a.lanes|=t),Or(e.return,t,n)}function Us(e,t,n,a,o){var r=e.memoizedState;null===r?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:a,tail:n,tailMode:o}:(r.isBackwards=t,r.rendering=null,r.renderingStartTime=0,r.last=a,r.tail=n,r.tailMode=o)}function Fs(e,t,n){var a=t.pendingProps,o=a.revealOrder,r=a.tail;if(vs(e,t,a.children,n),2&(a=ei.current))a=1&a|2,t.flags|=128;else{if(null!==e&&128&e.flags)e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Bs(e,n,t);else if(19===e.tag)Bs(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}a&=1}if(So(ei,a),1&t.mode)switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===ti(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),Us(t,!1,o,n,r);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===ti(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}Us(t,!0,n,null,r);break;case"together":Us(t,!1,null,null,void 0);break;default:t.memoizedState=null}else t.memoizedState=null;return t.child}function Vs(e,t){!(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Hs(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Dc|=t.lanes,0===(n&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(r(153));if(null!==t.child){for(n=Tl(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Tl(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function Ks(e,t){if(!rr)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var a=null;null!==n;)null!==n.alternate&&(a=n),n=n.sibling;null===a?t||null===e.tail?e.tail=null:e.tail.sibling=null:a.sibling=null}}function qs(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,a=0;if(t)for(var o=e.child;null!==o;)n|=o.lanes|o.childLanes,a|=14680064&o.subtreeFlags,a|=14680064&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)n|=o.lanes|o.childLanes,a|=o.subtreeFlags,a|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=a,e.childLanes=n,t}function Gs(e,t,n){var a=t.pendingProps;switch(nr(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return qs(t),null;case 1:case 17:return To(t.type)&&Io(),qs(t),null;case 3:return a=t.stateNode,Jr(),Co(Ao),Co(Oo),ai(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),null!==e&&null!==e.child||(dr(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&!(256&t.flags)||(t.flags|=1024,null!==ir&&(il(ir),ir=null))),Ns(e,t),qs(t),null;case 5:Xr(t);var o=Wr(Qr.current);if(n=t.type,null!==e&&null!=t.stateNode)Ts(e,t,n,a,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!a){if(null===t.stateNode)throw Error(r(166));return qs(t),null}if(e=Wr(qr.current),dr(t)){a=t.stateNode,n=t.type;var i=t.memoizedProps;switch(a[mo]=t,a[ho]=i,e=!!(1&t.mode),n){case"dialog":$a("cancel",a),$a("close",a);break;case"iframe":case"object":case"embed":$a("load",a);break;case"video":case"audio":for(o=0;o<La.length;o++)$a(La[o],a);break;case"source":$a("error",a);break;case"img":case"image":case"link":$a("error",a),$a("load",a);break;case"details":$a("toggle",a);break;case"input":Y(a,i),$a("invalid",a);break;case"select":a._wrapperState={wasMultiple:!!i.multiple},$a("invalid",a);break;case"textarea":oe(a,i),$a("invalid",a)}for(var c in be(n,i),o=null,i)if(i.hasOwnProperty(c)){var l=i[c];"children"===c?"string"==typeof l?a.textContent!==l&&(!0!==i.suppressHydrationWarning&&Za(a.textContent,l,e),o=["children",l]):"number"==typeof l&&a.textContent!==""+l&&(!0!==i.suppressHydrationWarning&&Za(a.textContent,l,e),o=["children",""+l]):s.hasOwnProperty(c)&&null!=l&&"onScroll"===c&&$a("scroll",a)}switch(n){case"input":q(a),X(a,i,!0);break;case"textarea":q(a),ie(a);break;case"select":case"option":break;default:"function"==typeof i.onClick&&(a.onclick=Xa)}a=o,t.updateQueue=a,null!==a&&(t.flags|=4)}else{c=9===o.nodeType?o:o.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=se(n)),"http://www.w3.org/1999/xhtml"===e?"script"===n?((e=c.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof a.is?e=c.createElement(n,{is:a.is}):(e=c.createElement(n),"select"===n&&(c=e,a.multiple?c.multiple=!0:a.size&&(c.size=a.size))):e=c.createElementNS(e,n),e[mo]=t,e[ho]=a,Ps(e,t,!1,!1),t.stateNode=e;e:{switch(c=ye(n,a),n){case"dialog":$a("cancel",e),$a("close",e),o=a;break;case"iframe":case"object":case"embed":$a("load",e),o=a;break;case"video":case"audio":for(o=0;o<La.length;o++)$a(La[o],e);o=a;break;case"source":$a("error",e),o=a;break;case"img":case"image":case"link":$a("error",e),$a("load",e),o=a;break;case"details":$a("toggle",e),o=a;break;case"input":Y(e,a),o=W(e,a),$a("invalid",e);break;case"option":default:o=a;break;case"select":e._wrapperState={wasMultiple:!!a.multiple},o=R({},a,{value:void 0}),$a("invalid",e);break;case"textarea":oe(e,a),o=ae(e,a),$a("invalid",e)}for(i in be(n,o),l=o)if(l.hasOwnProperty(i)){var u=l[i];"style"===i?ge(e,u):"dangerouslySetInnerHTML"===i?null!=(u=u?u.__html:void 0)&&pe(e,u):"children"===i?"string"==typeof u?("textarea"!==n||""!==u)&&de(e,u):"number"==typeof u&&de(e,""+u):"suppressContentEditableWarning"!==i&&"suppressHydrationWarning"!==i&&"autoFocus"!==i&&(s.hasOwnProperty(i)?null!=u&&"onScroll"===i&&$a("scroll",e):null!=u&&y(e,i,u,c))}switch(n){case"input":q(e),X(e,a,!1);break;case"textarea":q(e),ie(e);break;case"option":null!=a.value&&e.setAttribute("value",""+H(a.value));break;case"select":e.multiple=!!a.multiple,null!=(i=a.value)?ne(e,!!a.multiple,i,!1):null!=a.defaultValue&&ne(e,!!a.multiple,a.defaultValue,!0);break;default:"function"==typeof o.onClick&&(e.onclick=Xa)}switch(n){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}}a&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return qs(t),null;case 6:if(e&&null!=t.stateNode)Is(e,t,e.memoizedProps,a);else{if("string"!=typeof a&&null===t.stateNode)throw Error(r(166));if(n=Wr(Qr.current),Wr(qr.current),dr(t)){if(a=t.stateNode,n=t.memoizedProps,a[mo]=t,(i=a.nodeValue!==n)&&null!==(e=ar))switch(e.tag){case 3:Za(a.nodeValue,n,!!(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Za(a.nodeValue,n,!!(1&e.mode))}i&&(t.flags|=4)}else(a=(9===n.nodeType?n:n.ownerDocument).createTextNode(a))[mo]=t,t.stateNode=a}return qs(t),null;case 13:if(Co(ei),a=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(rr&&null!==or&&1&t.mode&&!(128&t.flags))mr(),hr(),t.flags|=98560,i=!1;else if(i=dr(t),null!==a&&null!==a.dehydrated){if(null===e){if(!i)throw Error(r(318));if(!(i=null!==(i=t.memoizedState)?i.dehydrated:null))throw Error(r(317));i[mo]=t}else hr(),!(128&t.flags)&&(t.memoizedState=null),t.flags|=4;qs(t),i=!1}else null!==ir&&(il(ir),ir=null),i=!0;if(!i)return 65536&t.flags?t:null}return 128&t.flags?(t.lanes=n,t):((a=null!==a)!=(null!==e&&null!==e.memoizedState)&&a&&(t.child.flags|=8192,1&t.mode&&(null===e||1&ei.current?0===Ic&&(Ic=3):fl())),null!==t.updateQueue&&(t.flags|=4),qs(t),null);case 4:return Jr(),Ns(e,t),null===e&&Fa(t.stateNode.containerInfo),qs(t),null;case 10:return Er(t.type._context),qs(t),null;case 19:if(Co(ei),null===(i=t.memoizedState))return qs(t),null;if(a=!!(128&t.flags),null===(c=i.rendering))if(a)Ks(i,!1);else{if(0!==Ic||null!==e&&128&e.flags)for(e=t.child;null!==e;){if(null!==(c=ti(e))){for(t.flags|=128,Ks(i,!1),null!==(a=c.updateQueue)&&(t.updateQueue=a,t.flags|=4),t.subtreeFlags=0,a=n,n=t.child;null!==n;)e=a,(i=n).flags&=14680066,null===(c=i.alternate)?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=c.childLanes,i.lanes=c.lanes,i.child=c.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=c.memoizedProps,i.memoizedState=c.memoizedState,i.updateQueue=c.updateQueue,i.type=c.type,e=c.dependencies,i.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return So(ei,1&ei.current|2),t.child}e=e.sibling}null!==i.tail&&Je()>Fc&&(t.flags|=128,a=!0,Ks(i,!1),t.lanes=4194304)}else{if(!a)if(null!==(e=ti(c))){if(t.flags|=128,a=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),Ks(i,!0),null===i.tail&&"hidden"===i.tailMode&&!c.alternate&&!rr)return qs(t),null}else 2*Je()-i.renderingStartTime>Fc&&1073741824!==n&&(t.flags|=128,a=!0,Ks(i,!1),t.lanes=4194304);i.isBackwards?(c.sibling=t.child,t.child=c):(null!==(n=i.last)?n.sibling=c:t.child=c,i.last=c)}return null!==i.tail?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Je(),t.sibling=null,n=ei.current,So(ei,a?1&n|2:1&n),t):(qs(t),null);case 22:case 23:return pl(),a=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==a&&(t.flags|=8192),a&&1&t.mode?!!(1073741824&Nc)&&(qs(t),6&t.subtreeFlags&&(t.flags|=8192)):qs(t),null;case 24:case 25:return null}throw Error(r(156,t.tag))}function Qs(e,t){switch(nr(t),t.tag){case 1:return To(t.type)&&Io(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return Jr(),Co(Ao),Co(Oo),ai(),65536&(e=t.flags)&&!(128&e)?(t.flags=-65537&e|128,t):null;case 5:return Xr(t),null;case 13:if(Co(ei),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(r(340));hr()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Co(ei),null;case 4:return Jr(),null;case 10:return Er(t.type._context),null;case 22:case 23:return pl(),null;default:return null}}Ps=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Ns=function(){},Ts=function(e,t,n,a){var o=e.memoizedProps;if(o!==a){e=t.stateNode,Wr(qr.current);var r,i=null;switch(n){case"input":o=W(e,o),a=W(e,a),i=[];break;case"select":o=R({},o,{value:void 0}),a=R({},a,{value:void 0}),i=[];break;case"textarea":o=ae(e,o),a=ae(e,a),i=[];break;default:"function"!=typeof o.onClick&&"function"==typeof a.onClick&&(e.onclick=Xa)}for(u in be(n,a),n=null,o)if(!a.hasOwnProperty(u)&&o.hasOwnProperty(u)&&null!=o[u])if("style"===u){var c=o[u];for(r in c)c.hasOwnProperty(r)&&(n||(n={}),n[r]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(s.hasOwnProperty(u)?i||(i=[]):(i=i||[]).push(u,null));for(u in a){var l=a[u];if(c=null!=o?o[u]:void 0,a.hasOwnProperty(u)&&l!==c&&(null!=l||null!=c))if("style"===u)if(c){for(r in c)!c.hasOwnProperty(r)||l&&l.hasOwnProperty(r)||(n||(n={}),n[r]="");for(r in l)l.hasOwnProperty(r)&&c[r]!==l[r]&&(n||(n={}),n[r]=l[r])}else n||(i||(i=[]),i.push(u,n)),n=l;else"dangerouslySetInnerHTML"===u?(l=l?l.__html:void 0,c=c?c.__html:void 0,null!=l&&c!==l&&(i=i||[]).push(u,l)):"children"===u?"string"!=typeof l&&"number"!=typeof l||(i=i||[]).push(u,""+l):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(s.hasOwnProperty(u)?(null!=l&&"onScroll"===u&&$a("scroll",e),i||c===l||(i=[])):(i=i||[]).push(u,l))}n&&(i=i||[]).push("style",n);var u=i;(t.updateQueue=u)&&(t.flags|=4)}},Is=function(e,t,n,a){n!==a&&(t.flags|=4)};var Ws=!1,Ys=!1,Js="function"==typeof WeakSet?WeakSet:Set,Zs=null;function Xs(e,t){var n=e.ref;if(null!==n)if("function"==typeof n)try{n(null)}catch(n){xl(e,t,n)}else n.current=null}function ec(e,t,n){try{n()}catch(n){xl(e,t,n)}}var tc=!1;function nc(e,t,n){var a=t.updateQueue;if(null!==(a=null!==a?a.lastEffect:null)){var o=a=a.next;do{if((o.tag&e)===e){var r=o.destroy;o.destroy=void 0,void 0!==r&&ec(t,n,r)}o=o.next}while(o!==a)}}function ac(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var a=n.create;n.destroy=a()}n=n.next}while(n!==t)}}function oc(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"==typeof t?t(e):t.current=e}}function rc(e){var t=e.alternate;null!==t&&(e.alternate=null,rc(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&null!==(t=e.stateNode)&&(delete t[mo],delete t[ho],delete t[go],delete t[ko],delete t[bo]),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function ic(e){return 5===e.tag||3===e.tag||4===e.tag}function sc(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||ic(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function cc(e,t,n){var a=e.tag;if(5===a||6===a)e=e.stateNode,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=Xa));else if(4!==a&&null!==(e=e.child))for(cc(e,t,n),e=e.sibling;null!==e;)cc(e,t,n),e=e.sibling}function lc(e,t,n){var a=e.tag;if(5===a||6===a)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==a&&null!==(e=e.child))for(lc(e,t,n),e=e.sibling;null!==e;)lc(e,t,n),e=e.sibling}var uc=null,pc=!1;function dc(e,t,n){for(n=n.child;null!==n;)mc(e,t,n),n=n.sibling}function mc(e,t,n){if(rt&&"function"==typeof rt.onCommitFiberUnmount)try{rt.onCommitFiberUnmount(ot,n)}catch(e){}switch(n.tag){case 5:Ys||Xs(n,t);case 6:var a=uc,o=pc;uc=null,dc(e,t,n),pc=o,null!==(uc=a)&&(pc?(e=uc,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):uc.removeChild(n.stateNode));break;case 18:null!==uc&&(pc?(e=uc,n=n.stateNode,8===e.nodeType?co(e.parentNode,n):1===e.nodeType&&co(e,n),Ft(e)):co(uc,n.stateNode));break;case 4:a=uc,o=pc,uc=n.stateNode.containerInfo,pc=!0,dc(e,t,n),uc=a,pc=o;break;case 0:case 11:case 14:case 15:if(!Ys&&null!==(a=n.updateQueue)&&null!==(a=a.lastEffect)){o=a=a.next;do{var r=o,i=r.destroy;r=r.tag,void 0!==i&&(2&r||4&r)&&ec(n,t,i),o=o.next}while(o!==a)}dc(e,t,n);break;case 1:if(!Ys&&(Xs(n,t),"function"==typeof(a=n.stateNode).componentWillUnmount))try{a.props=n.memoizedProps,a.state=n.memoizedState,a.componentWillUnmount()}catch(e){xl(n,t,e)}dc(e,t,n);break;case 21:dc(e,t,n);break;case 22:1&n.mode?(Ys=(a=Ys)||null!==n.memoizedState,dc(e,t,n),Ys=a):dc(e,t,n);break;default:dc(e,t,n)}}function hc(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Js),t.forEach(function(t){var a=El.bind(null,e,t);n.has(t)||(n.add(t),t.then(a,a))})}}function fc(e,t){var n=t.deletions;if(null!==n)for(var a=0;a<n.length;a++){var o=n[a];try{var i=e,s=t,c=s;e:for(;null!==c;){switch(c.tag){case 5:uc=c.stateNode,pc=!1;break e;case 3:case 4:uc=c.stateNode.containerInfo,pc=!0;break e}c=c.return}if(null===uc)throw Error(r(160));mc(i,s,o),uc=null,pc=!1;var l=o.alternate;null!==l&&(l.return=null),o.return=null}catch(e){xl(o,t,e)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)gc(t,e),t=t.sibling}function gc(e,t){var n=e.alternate,a=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(fc(t,e),kc(e),4&a){try{nc(3,e,e.return),ac(3,e)}catch(t){xl(e,e.return,t)}try{nc(5,e,e.return)}catch(t){xl(e,e.return,t)}}break;case 1:fc(t,e),kc(e),512&a&&null!==n&&Xs(n,n.return);break;case 5:if(fc(t,e),kc(e),512&a&&null!==n&&Xs(n,n.return),32&e.flags){var o=e.stateNode;try{de(o,"")}catch(t){xl(e,e.return,t)}}if(4&a&&null!=(o=e.stateNode)){var i=e.memoizedProps,s=null!==n?n.memoizedProps:i,c=e.type,l=e.updateQueue;if(e.updateQueue=null,null!==l)try{"input"===c&&"radio"===i.type&&null!=i.name&&J(o,i),ye(c,s);var u=ye(c,i);for(s=0;s<l.length;s+=2){var p=l[s],d=l[s+1];"style"===p?ge(o,d):"dangerouslySetInnerHTML"===p?pe(o,d):"children"===p?de(o,d):y(o,p,d,u)}switch(c){case"input":Z(o,i);break;case"textarea":re(o,i);break;case"select":var m=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!i.multiple;var h=i.value;null!=h?ne(o,!!i.multiple,h,!1):m!==!!i.multiple&&(null!=i.defaultValue?ne(o,!!i.multiple,i.defaultValue,!0):ne(o,!!i.multiple,i.multiple?[]:"",!1))}o[ho]=i}catch(t){xl(e,e.return,t)}}break;case 6:if(fc(t,e),kc(e),4&a){if(null===e.stateNode)throw Error(r(162));o=e.stateNode,i=e.memoizedProps;try{o.nodeValue=i}catch(t){xl(e,e.return,t)}}break;case 3:if(fc(t,e),kc(e),4&a&&null!==n&&n.memoizedState.isDehydrated)try{Ft(t.containerInfo)}catch(t){xl(e,e.return,t)}break;case 4:default:fc(t,e),kc(e);break;case 13:fc(t,e),kc(e),8192&(o=e.child).flags&&(i=null!==o.memoizedState,o.stateNode.isHidden=i,!i||null!==o.alternate&&null!==o.alternate.memoizedState||(Uc=Je())),4&a&&hc(e);break;case 22:if(p=null!==n&&null!==n.memoizedState,1&e.mode?(Ys=(u=Ys)||p,fc(t,e),Ys=u):fc(t,e),kc(e),8192&a){if(u=null!==e.memoizedState,(e.stateNode.isHidden=u)&&!p&&1&e.mode)for(Zs=e,p=e.child;null!==p;){for(d=Zs=p;null!==Zs;){switch(h=(m=Zs).child,m.tag){case 0:case 11:case 14:case 15:nc(4,m,m.return);break;case 1:Xs(m,m.return);var f=m.stateNode;if("function"==typeof f.componentWillUnmount){a=m,n=m.return;try{t=a,f.props=t.memoizedProps,f.state=t.memoizedState,f.componentWillUnmount()}catch(e){xl(a,n,e)}}break;case 5:Xs(m,m.return);break;case 22:if(null!==m.memoizedState){wc(d);continue}}null!==h?(h.return=m,Zs=h):wc(d)}p=p.sibling}e:for(p=null,d=e;;){if(5===d.tag){if(null===p){p=d;try{o=d.stateNode,u?"function"==typeof(i=o.style).setProperty?i.setProperty("display","none","important"):i.display="none":(c=d.stateNode,s=null!=(l=d.memoizedProps.style)&&l.hasOwnProperty("display")?l.display:null,c.style.display=fe("display",s))}catch(t){xl(e,e.return,t)}}}else if(6===d.tag){if(null===p)try{d.stateNode.nodeValue=u?"":d.memoizedProps}catch(t){xl(e,e.return,t)}}else if((22!==d.tag&&23!==d.tag||null===d.memoizedState||d===e)&&null!==d.child){d.child.return=d,d=d.child;continue}if(d===e)break e;for(;null===d.sibling;){if(null===d.return||d.return===e)break e;p===d&&(p=null),d=d.return}p===d&&(p=null),d.sibling.return=d.return,d=d.sibling}}break;case 19:fc(t,e),kc(e),4&a&&hc(e);case 21:}}function kc(e){var t=e.flags;if(2&t){try{e:{for(var n=e.return;null!==n;){if(ic(n)){var a=n;break e}n=n.return}throw Error(r(160))}switch(a.tag){case 5:var o=a.stateNode;32&a.flags&&(de(o,""),a.flags&=-33),lc(e,sc(e),o);break;case 3:case 4:var i=a.stateNode.containerInfo;cc(e,sc(e),i);break;default:throw Error(r(161))}}catch(t){xl(e,e.return,t)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function bc(e,t,n){Zs=e,yc(e,t,n)}function yc(e,t,n){for(var a=!!(1&e.mode);null!==Zs;){var o=Zs,r=o.child;if(22===o.tag&&a){var i=null!==o.memoizedState||Ws;if(!i){var s=o.alternate,c=null!==s&&null!==s.memoizedState||Ys;s=Ws;var l=Ys;if(Ws=i,(Ys=c)&&!l)for(Zs=o;null!==Zs;)c=(i=Zs).child,22===i.tag&&null!==i.memoizedState?jc(o):null!==c?(c.return=i,Zs=c):jc(o);for(;null!==r;)Zs=r,yc(r,t,n),r=r.sibling;Zs=o,Ws=s,Ys=l}vc(e)}else 8772&o.subtreeFlags&&null!==r?(r.return=o,Zs=r):vc(e)}}function vc(e){for(;null!==Zs;){var t=Zs;if(8772&t.flags){var n=t.alternate;try{if(8772&t.flags)switch(t.tag){case 0:case 11:case 15:Ys||ac(5,t);break;case 1:var a=t.stateNode;if(4&t.flags&&!Ys)if(null===n)a.componentDidMount();else{var o=t.elementType===t.type?n.memoizedProps:ns(t.type,n.memoizedProps);a.componentDidUpdate(o,n.memoizedState,a.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;null!==i&&Hr(t,i,a);break;case 3:var s=t.updateQueue;if(null!==s){if(n=null,null!==t.child)switch(t.child.tag){case 5:case 1:n=t.child.stateNode}Hr(t,s,n)}break;case 5:var c=t.stateNode;if(null===n&&4&t.flags){n=c;var l=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break;case"img":l.src&&(n.src=l.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var u=t.alternate;if(null!==u){var p=u.memoizedState;if(null!==p){var d=p.dehydrated;null!==d&&Ft(d)}}}break;default:throw Error(r(163))}Ys||512&t.flags&&oc(t)}catch(e){xl(t,t.return,e)}}if(t===e){Zs=null;break}if(null!==(n=t.sibling)){n.return=t.return,Zs=n;break}Zs=t.return}}function wc(e){for(;null!==Zs;){var t=Zs;if(t===e){Zs=null;break}var n=t.sibling;if(null!==n){n.return=t.return,Zs=n;break}Zs=t.return}}function jc(e){for(;null!==Zs;){var t=Zs;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{ac(4,t)}catch(e){xl(t,n,e)}break;case 1:var a=t.stateNode;if("function"==typeof a.componentDidMount){var o=t.return;try{a.componentDidMount()}catch(e){xl(t,o,e)}}var r=t.return;try{oc(t)}catch(e){xl(t,r,e)}break;case 5:var i=t.return;try{oc(t)}catch(e){xl(t,i,e)}}}catch(e){xl(t,t.return,e)}if(t===e){Zs=null;break}var s=t.sibling;if(null!==s){s.return=t.return,Zs=s;break}Zs=t.return}}var _c,xc=Math.ceil,zc=v.ReactCurrentDispatcher,Cc=v.ReactCurrentOwner,Sc=v.ReactCurrentBatchConfig,Ec=0,Oc=null,Ac=null,Pc=0,Nc=0,Tc=zo(0),Ic=0,Lc=null,Dc=0,Rc=0,Mc=0,$c=null,Bc=null,Uc=0,Fc=1/0,Vc=null,Hc=!1,Kc=null,qc=null,Gc=!1,Qc=null,Wc=0,Yc=0,Jc=null,Zc=-1,Xc=0;function el(){return 6&Ec?Je():-1!==Zc?Zc:Zc=Je()}function tl(e){return 1&e.mode?2&Ec&&0!==Pc?Pc&-Pc:null!==gr.transition?(0===Xc&&(Xc=ft()),Xc):0!==(e=yt)?e:e=void 0===(e=window.event)?16:Yt(e.type):1}function nl(e,t,n,a){if(50<Yc)throw Yc=0,Jc=null,Error(r(185));kt(e,n,a),2&Ec&&e===Oc||(e===Oc&&(!(2&Ec)&&(Rc|=n),4===Ic&&sl(e,Pc)),al(e,a),1===n&&0===Ec&&!(1&t.mode)&&(Fc=Je()+500,Bo&&Vo()))}function al(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,o=e.expirationTimes,r=e.pendingLanes;0<r;){var i=31-it(r),s=1<<i,c=o[i];-1===c?0!==(s&n)&&0===(s&a)||(o[i]=mt(s,t)):c<=t&&(e.expiredLanes|=s),r&=~s}}(e,t);var a=dt(e,e===Oc?Pc:0);if(0===a)null!==n&&Qe(n),e.callbackNode=null,e.callbackPriority=0;else if(t=a&-a,e.callbackPriority!==t){if(null!=n&&Qe(n),1===t)0===e.tag?function(e){Bo=!0,Fo(e)}(cl.bind(null,e)):Fo(cl.bind(null,e)),io(function(){!(6&Ec)&&Vo()}),n=null;else{switch(vt(a)){case 1:n=Xe;break;case 4:n=et;break;case 16:default:n=tt;break;case 536870912:n=at}n=Ol(n,ol.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function ol(e,t){if(Zc=-1,Xc=0,6&Ec)throw Error(r(327));var n=e.callbackNode;if(jl()&&e.callbackNode!==n)return null;var a=dt(e,e===Oc?Pc:0);if(0===a)return null;if(30&a||0!==(a&e.expiredLanes)||t)t=gl(e,a);else{t=a;var o=Ec;Ec|=2;var i=hl();for(Oc===e&&Pc===t||(Vc=null,Fc=Je()+500,dl(e,t));;)try{bl();break}catch(t){ml(e,t)}Sr(),zc.current=i,Ec=o,null!==Ac?t=0:(Oc=null,Pc=0,t=Ic)}if(0!==t){if(2===t&&0!==(o=ht(e))&&(a=o,t=rl(e,o)),1===t)throw n=Lc,dl(e,0),sl(e,a),al(e,Je()),n;if(6===t)sl(e,a);else{if(o=e.current.alternate,!(30&a||function(e){for(var t=e;;){if(16384&t.flags){var n=t.updateQueue;if(null!==n&&null!==(n=n.stores))for(var a=0;a<n.length;a++){var o=n[a],r=o.getSnapshot;o=o.value;try{if(!sa(r(),o))return!1}catch(e){return!1}}}if(n=t.child,16384&t.subtreeFlags&&null!==n)n.return=t,t=n;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(o)||(t=gl(e,a),2===t&&(i=ht(e),0!==i&&(a=i,t=rl(e,i))),1!==t)))throw n=Lc,dl(e,0),sl(e,a),al(e,Je()),n;switch(e.finishedWork=o,e.finishedLanes=a,t){case 0:case 1:throw Error(r(345));case 2:case 5:wl(e,Bc,Vc);break;case 3:if(sl(e,a),(130023424&a)===a&&10<(t=Uc+500-Je())){if(0!==dt(e,0))break;if(((o=e.suspendedLanes)&a)!==a){el(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=ao(wl.bind(null,e,Bc,Vc),t);break}wl(e,Bc,Vc);break;case 4:if(sl(e,a),(4194240&a)===a)break;for(t=e.eventTimes,o=-1;0<a;){var s=31-it(a);i=1<<s,(s=t[s])>o&&(o=s),a&=~i}if(a=o,10<(a=(120>(a=Je()-a)?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*xc(a/1960))-a)){e.timeoutHandle=ao(wl.bind(null,e,Bc,Vc),a);break}wl(e,Bc,Vc);break;default:throw Error(r(329))}}}return al(e,Je()),e.callbackNode===n?ol.bind(null,e):null}function rl(e,t){var n=$c;return e.current.memoizedState.isDehydrated&&(dl(e,t).flags|=256),2!==(e=gl(e,t))&&(t=Bc,Bc=n,null!==t&&il(t)),e}function il(e){null===Bc?Bc=e:Bc.push.apply(Bc,e)}function sl(e,t){for(t&=~Mc,t&=~Rc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-it(t),a=1<<n;e[n]=-1,t&=~a}}function cl(e){if(6&Ec)throw Error(r(327));jl();var t=dt(e,0);if(!(1&t))return al(e,Je()),null;var n=gl(e,t);if(0!==e.tag&&2===n){var a=ht(e);0!==a&&(t=a,n=rl(e,a))}if(1===n)throw n=Lc,dl(e,0),sl(e,t),al(e,Je()),n;if(6===n)throw Error(r(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,wl(e,Bc,Vc),al(e,Je()),null}function ll(e,t){var n=Ec;Ec|=1;try{return e(t)}finally{0===(Ec=n)&&(Fc=Je()+500,Bo&&Vo())}}function ul(e){null!==Qc&&0===Qc.tag&&!(6&Ec)&&jl();var t=Ec;Ec|=1;var n=Sc.transition,a=yt;try{if(Sc.transition=null,yt=1,e)return e()}finally{yt=a,Sc.transition=n,!(6&(Ec=t))&&Vo()}}function pl(){Nc=Tc.current,Co(Tc)}function dl(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,oo(n)),null!==Ac)for(n=Ac.return;null!==n;){var a=n;switch(nr(a),a.tag){case 1:null!=(a=a.type.childContextTypes)&&Io();break;case 3:Jr(),Co(Ao),Co(Oo),ai();break;case 5:Xr(a);break;case 4:Jr();break;case 13:case 19:Co(ei);break;case 10:Er(a.type._context);break;case 22:case 23:pl()}n=n.return}if(Oc=e,Ac=e=Tl(e.current,null),Pc=Nc=t,Ic=0,Lc=null,Mc=Rc=Dc=0,Bc=$c=null,null!==Nr){for(t=0;t<Nr.length;t++)if(null!==(a=(n=Nr[t]).interleaved)){n.interleaved=null;var o=a.next,r=n.pending;if(null!==r){var i=r.next;r.next=o,a.next=i}n.pending=a}Nr=null}return e}function ml(e,t){for(;;){var n=Ac;try{if(Sr(),oi.current=Zi,ui){for(var a=si.memoizedState;null!==a;){var o=a.queue;null!==o&&(o.pending=null),a=a.next}ui=!1}if(ii=0,li=ci=si=null,pi=!1,di=0,Cc.current=null,null===n||null===n.return){Ic=1,Lc=t,Ac=null;break}e:{var i=e,s=n.return,c=n,l=t;if(t=Pc,c.flags|=32768,null!==l&&"object"==typeof l&&"function"==typeof l.then){var u=l,p=c,d=p.tag;if(!(1&p.mode||0!==d&&11!==d&&15!==d)){var m=p.alternate;m?(p.updateQueue=m.updateQueue,p.memoizedState=m.memoizedState,p.lanes=m.lanes):(p.updateQueue=null,p.memoizedState=null)}var h=gs(s);if(null!==h){h.flags&=-257,ks(h,s,c,0,t),1&h.mode&&fs(i,u,t),l=u;var f=(t=h).updateQueue;if(null===f){var g=new Set;g.add(l),t.updateQueue=g}else f.add(l);break e}if(!(1&t)){fs(i,u,t),fl();break e}l=Error(r(426))}else if(rr&&1&c.mode){var k=gs(s);if(null!==k){!(65536&k.flags)&&(k.flags|=256),ks(k,s,c,0,t),fr(ls(l,c));break e}}i=l=ls(l,c),4!==Ic&&(Ic=2),null===$c?$c=[i]:$c.push(i),i=s;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t,Fr(i,ms(0,l,t));break e;case 1:c=l;var b=i.type,y=i.stateNode;if(!(128&i.flags||"function"!=typeof b.getDerivedStateFromError&&(null===y||"function"!=typeof y.componentDidCatch||null!==qc&&qc.has(y)))){i.flags|=65536,t&=-t,i.lanes|=t,Fr(i,hs(i,c,t));break e}}i=i.return}while(null!==i)}vl(n)}catch(e){t=e,Ac===n&&null!==n&&(Ac=n=n.return);continue}break}}function hl(){var e=zc.current;return zc.current=Zi,null===e?Zi:e}function fl(){0!==Ic&&3!==Ic&&2!==Ic||(Ic=4),null===Oc||!(268435455&Dc)&&!(268435455&Rc)||sl(Oc,Pc)}function gl(e,t){var n=Ec;Ec|=2;var a=hl();for(Oc===e&&Pc===t||(Vc=null,dl(e,t));;)try{kl();break}catch(t){ml(e,t)}if(Sr(),Ec=n,zc.current=a,null!==Ac)throw Error(r(261));return Oc=null,Pc=0,Ic}function kl(){for(;null!==Ac;)yl(Ac)}function bl(){for(;null!==Ac&&!We();)yl(Ac)}function yl(e){var t=_c(e.alternate,e,Nc);e.memoizedProps=e.pendingProps,null===t?vl(e):Ac=t,Cc.current=null}function vl(e){var t=e;do{var n=t.alternate;if(e=t.return,32768&t.flags){if(null!==(n=Qs(n,t)))return n.flags&=32767,void(Ac=n);if(null===e)return Ic=6,void(Ac=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}else if(null!==(n=Gs(n,t,Nc)))return void(Ac=n);if(null!==(t=t.sibling))return void(Ac=t);Ac=t=e}while(null!==t);0===Ic&&(Ic=5)}function wl(e,t,n){var a=yt,o=Sc.transition;try{Sc.transition=null,yt=1,function(e,t,n,a){do{jl()}while(null!==Qc);if(6&Ec)throw Error(r(327));n=e.finishedWork;var o=e.finishedLanes;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(r(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(function(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var a=e.eventTimes;for(e=e.expirationTimes;0<n;){var o=31-it(n),r=1<<o;t[o]=0,a[o]=-1,e[o]=-1,n&=~r}}(e,i),e===Oc&&(Ac=Oc=null,Pc=0),!(2064&n.subtreeFlags)&&!(2064&n.flags)||Gc||(Gc=!0,Ol(tt,function(){return jl(),null})),i=!!(15990&n.flags),15990&n.subtreeFlags||i){i=Sc.transition,Sc.transition=null;var s=yt;yt=1;var c=Ec;Ec|=4,Cc.current=null,function(e,t){if(eo=Ht,ma(e=da())){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{var a=(n=(n=e.ownerDocument)&&n.defaultView||window).getSelection&&n.getSelection();if(a&&0!==a.rangeCount){n=a.anchorNode;var o=a.anchorOffset,i=a.focusNode;a=a.focusOffset;try{n.nodeType,i.nodeType}catch(e){n=null;break e}var s=0,c=-1,l=-1,u=0,p=0,d=e,m=null;t:for(;;){for(var h;d!==n||0!==o&&3!==d.nodeType||(c=s+o),d!==i||0!==a&&3!==d.nodeType||(l=s+a),3===d.nodeType&&(s+=d.nodeValue.length),null!==(h=d.firstChild);)m=d,d=h;for(;;){if(d===e)break t;if(m===n&&++u===o&&(c=s),m===i&&++p===a&&(l=s),null!==(h=d.nextSibling))break;m=(d=m).parentNode}d=h}n=-1===c||-1===l?null:{start:c,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(to={focusedElem:e,selectionRange:n},Ht=!1,Zs=t;null!==Zs;)if(e=(t=Zs).child,1028&t.subtreeFlags&&null!==e)e.return=t,Zs=e;else for(;null!==Zs;){t=Zs;try{var f=t.alternate;if(1024&t.flags)switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==f){var g=f.memoizedProps,k=f.memoizedState,b=t.stateNode,y=b.getSnapshotBeforeUpdate(t.elementType===t.type?g:ns(t.type,g),k);b.__reactInternalSnapshotBeforeUpdate=y}break;case 3:var v=t.stateNode.containerInfo;1===v.nodeType?v.textContent="":9===v.nodeType&&v.documentElement&&v.removeChild(v.documentElement);break;default:throw Error(r(163))}}catch(e){xl(t,t.return,e)}if(null!==(e=t.sibling)){e.return=t.return,Zs=e;break}Zs=t.return}f=tc,tc=!1}(e,n),gc(n,e),ha(to),Ht=!!eo,to=eo=null,e.current=n,bc(n,e,o),Ye(),Ec=c,yt=s,Sc.transition=i}else e.current=n;if(Gc&&(Gc=!1,Qc=e,Wc=o),0===(i=e.pendingLanes)&&(qc=null),function(e){if(rt&&"function"==typeof rt.onCommitFiberRoot)try{rt.onCommitFiberRoot(ot,e,void 0,!(128&~e.current.flags))}catch(e){}}(n.stateNode),al(e,Je()),null!==t)for(a=e.onRecoverableError,n=0;n<t.length;n++)a((o=t[n]).value,{componentStack:o.stack,digest:o.digest});if(Hc)throw Hc=!1,e=Kc,Kc=null,e;!!(1&Wc)&&0!==e.tag&&jl(),1&(i=e.pendingLanes)?e===Jc?Yc++:(Yc=0,Jc=e):Yc=0,Vo()}(e,t,n,a)}finally{Sc.transition=o,yt=a}return null}function jl(){if(null!==Qc){var e=vt(Wc),t=Sc.transition,n=yt;try{if(Sc.transition=null,yt=16>e?16:e,null===Qc)var a=!1;else{if(e=Qc,Qc=null,Wc=0,6&Ec)throw Error(r(331));var o=Ec;for(Ec|=4,Zs=e.current;null!==Zs;){var i=Zs,s=i.child;if(16&Zs.flags){var c=i.deletions;if(null!==c){for(var l=0;l<c.length;l++){var u=c[l];for(Zs=u;null!==Zs;){var p=Zs;switch(p.tag){case 0:case 11:case 15:nc(8,p,i)}var d=p.child;if(null!==d)d.return=p,Zs=d;else for(;null!==Zs;){var m=(p=Zs).sibling,h=p.return;if(rc(p),p===u){Zs=null;break}if(null!==m){m.return=h,Zs=m;break}Zs=h}}}var f=i.alternate;if(null!==f){var g=f.child;if(null!==g){f.child=null;do{var k=g.sibling;g.sibling=null,g=k}while(null!==g)}}Zs=i}}if(2064&i.subtreeFlags&&null!==s)s.return=i,Zs=s;else e:for(;null!==Zs;){if(2048&(i=Zs).flags)switch(i.tag){case 0:case 11:case 15:nc(9,i,i.return)}var b=i.sibling;if(null!==b){b.return=i.return,Zs=b;break e}Zs=i.return}}var y=e.current;for(Zs=y;null!==Zs;){var v=(s=Zs).child;if(2064&s.subtreeFlags&&null!==v)v.return=s,Zs=v;else e:for(s=y;null!==Zs;){if(2048&(c=Zs).flags)try{switch(c.tag){case 0:case 11:case 15:ac(9,c)}}catch(e){xl(c,c.return,e)}if(c===s){Zs=null;break e}var w=c.sibling;if(null!==w){w.return=c.return,Zs=w;break e}Zs=c.return}}if(Ec=o,Vo(),rt&&"function"==typeof rt.onPostCommitFiberRoot)try{rt.onPostCommitFiberRoot(ot,e)}catch(e){}a=!0}return a}finally{yt=n,Sc.transition=t}}return!1}function _l(e,t,n){e=Br(e,t=ms(0,t=ls(n,t),1),1),t=el(),null!==e&&(kt(e,1,t),al(e,t))}function xl(e,t,n){if(3===e.tag)_l(e,e,n);else for(;null!==t;){if(3===t.tag){_l(t,e,n);break}if(1===t.tag){var a=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof a.componentDidCatch&&(null===qc||!qc.has(a))){t=Br(t,e=hs(t,e=ls(n,e),1),1),e=el(),null!==t&&(kt(t,1,e),al(t,e));break}}t=t.return}}function zl(e,t,n){var a=e.pingCache;null!==a&&a.delete(t),t=el(),e.pingedLanes|=e.suspendedLanes&n,Oc===e&&(Pc&n)===n&&(4===Ic||3===Ic&&(130023424&Pc)===Pc&&500>Je()-Uc?dl(e,0):Mc|=n),al(e,t)}function Cl(e,t){0===t&&(1&e.mode?(t=ut,!(130023424&(ut<<=1))&&(ut=4194304)):t=1);var n=el();null!==(e=Lr(e,t))&&(kt(e,t,n),al(e,n))}function Sl(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Cl(e,n)}function El(e,t){var n=0;switch(e.tag){case 13:var a=e.stateNode,o=e.memoizedState;null!==o&&(n=o.retryLane);break;case 19:a=e.stateNode;break;default:throw Error(r(314))}null!==a&&a.delete(t),Cl(e,n)}function Ol(e,t){return Ge(e,t)}function Al(e,t,n,a){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pl(e,t,n,a){return new Al(e,t,n,a)}function Nl(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Tl(e,t){var n=e.alternate;return null===n?((n=Pl(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Il(e,t,n,a,o,i){var s=2;if(a=e,"function"==typeof e)Nl(e)&&(s=1);else if("string"==typeof e)s=5;else e:switch(e){case _:return Ll(n.children,o,i,t);case x:s=8,o|=8;break;case z:return(e=Pl(12,n,t,2|o)).elementType=z,e.lanes=i,e;case O:return(e=Pl(13,n,t,o)).elementType=O,e.lanes=i,e;case A:return(e=Pl(19,n,t,o)).elementType=A,e.lanes=i,e;case T:return Dl(n,o,i,t);default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case C:s=10;break e;case S:s=9;break e;case E:s=11;break e;case P:s=14;break e;case N:s=16,a=null;break e}throw Error(r(130,null==e?e:typeof e,""))}return(t=Pl(s,n,t,o)).elementType=e,t.type=a,t.lanes=i,t}function Ll(e,t,n,a){return(e=Pl(7,e,a,t)).lanes=n,e}function Dl(e,t,n,a){return(e=Pl(22,e,a,t)).elementType=T,e.lanes=n,e.stateNode={isHidden:!1},e}function Rl(e,t,n){return(e=Pl(6,e,null,t)).lanes=n,e}function Ml(e,t,n){return(t=Pl(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function $l(e,t,n,a,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=a,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Bl(e,t,n,a,o,r,i,s,c){return e=new $l(e,t,n,s,c),1===t?(t=1,!0===r&&(t|=8)):t=0,r=Pl(3,null,null,t),e.current=r,r.stateNode=e,r.memoizedState={element:a,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Rr(r),e}function Ul(e){if(!e)return Eo;e:{if(Fe(e=e._reactInternals)!==e||1!==e.tag)throw Error(r(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(To(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(r(171))}if(1===e.tag){var n=e.type;if(To(n))return Do(e,n,t)}return t}function Fl(e,t,n,a,o,r,i,s,c){return(e=Bl(n,a,!0,e,0,r,0,s,c)).context=Ul(null),n=e.current,(r=$r(a=el(),o=tl(n))).callback=null!=t?t:null,Br(n,r,o),e.current.lanes=o,kt(e,o,a),al(e,a),e}function Vl(e,t,n,a){var o=t.current,r=el(),i=tl(o);return n=Ul(n),null===t.context?t.context=n:t.pendingContext=n,(t=$r(r,i)).payload={element:e},null!==(a=void 0===a?null:a)&&(t.callback=a),null!==(e=Br(o,t,i))&&(nl(e,o,i,r),Ur(e,o,i)),i}function Hl(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Kl(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function ql(e,t){Kl(e,t),(e=e.alternate)&&Kl(e,t)}_c=function(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps||Ao.current)ys=!0;else{if(0===(e.lanes&n)&&!(128&t.flags))return ys=!1,function(e,t,n){switch(t.tag){case 3:Os(t),hr();break;case 5:Zr(t);break;case 1:To(t.type)&&Ro(t);break;case 4:Yr(t,t.stateNode.containerInfo);break;case 10:var a=t.type._context,o=t.memoizedProps.value;So(_r,a._currentValue),a._currentValue=o;break;case 13:if(null!==(a=t.memoizedState))return null!==a.dehydrated?(So(ei,1&ei.current),t.flags|=128,null):0!==(n&t.child.childLanes)?Rs(e,t,n):(So(ei,1&ei.current),null!==(e=Hs(e,t,n))?e.sibling:null);So(ei,1&ei.current);break;case 19:if(a=0!==(n&t.childLanes),128&e.flags){if(a)return Fs(e,t,n);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),So(ei,ei.current),a)break;return null;case 22:case 23:return t.lanes=0,xs(e,t,n)}return Hs(e,t,n)}(e,t,n);ys=!!(131072&e.flags)}else ys=!1,rr&&1048576&t.flags&&er(t,Go,t.index);switch(t.lanes=0,t.tag){case 2:var a=t.type;Vs(e,t),e=t.pendingProps;var o=No(t,Oo.current);Ar(t,n),o=gi(null,t,a,e,o,n);var i=ki();return t.flags|=1,"object"==typeof o&&null!==o&&"function"==typeof o.render&&void 0===o.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,To(a)?(i=!0,Ro(t)):i=!1,t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,Rr(t),o.updater=os,t.stateNode=o,o._reactInternals=t,cs(t,a,e,n),t=Es(null,t,a,!0,i,n)):(t.tag=0,rr&&i&&tr(t),vs(null,t,o,n),t=t.child),t;case 16:a=t.elementType;e:{switch(Vs(e,t),e=t.pendingProps,a=(o=a._init)(a._payload),t.type=a,o=t.tag=function(e){if("function"==typeof e)return Nl(e)?1:0;if(null!=e){if((e=e.$$typeof)===E)return 11;if(e===P)return 14}return 2}(a),e=ns(a,e),o){case 0:t=Cs(null,t,a,e,n);break e;case 1:t=Ss(null,t,a,e,n);break e;case 11:t=ws(null,t,a,e,n);break e;case 14:t=js(null,t,a,ns(a.type,e),n);break e}throw Error(r(306,a,""))}return t;case 0:return a=t.type,o=t.pendingProps,Cs(e,t,a,o=t.elementType===a?o:ns(a,o),n);case 1:return a=t.type,o=t.pendingProps,Ss(e,t,a,o=t.elementType===a?o:ns(a,o),n);case 3:e:{if(Os(t),null===e)throw Error(r(387));a=t.pendingProps,o=(i=t.memoizedState).element,Mr(e,t),Vr(t,a,null,n);var s=t.memoizedState;if(a=s.element,i.isDehydrated){if(i={element:a,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=i,t.memoizedState=i,256&t.flags){t=As(e,t,a,n,o=ls(Error(r(423)),t));break e}if(a!==o){t=As(e,t,a,n,o=ls(Error(r(424)),t));break e}for(or=lo(t.stateNode.containerInfo.firstChild),ar=t,rr=!0,ir=null,n=jr(t,null,a,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(hr(),a===o){t=Hs(e,t,n);break e}vs(e,t,a,n)}t=t.child}return t;case 5:return Zr(t),null===e&&ur(t),a=t.type,o=t.pendingProps,i=null!==e?e.memoizedProps:null,s=o.children,no(a,o)?s=null:null!==i&&no(a,i)&&(t.flags|=32),zs(e,t),vs(e,t,s,n),t.child;case 6:return null===e&&ur(t),null;case 13:return Rs(e,t,n);case 4:return Yr(t,t.stateNode.containerInfo),a=t.pendingProps,null===e?t.child=wr(t,null,a,n):vs(e,t,a,n),t.child;case 11:return a=t.type,o=t.pendingProps,ws(e,t,a,o=t.elementType===a?o:ns(a,o),n);case 7:return vs(e,t,t.pendingProps,n),t.child;case 8:case 12:return vs(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(a=t.type._context,o=t.pendingProps,i=t.memoizedProps,s=o.value,So(_r,a._currentValue),a._currentValue=s,null!==i)if(sa(i.value,s)){if(i.children===o.children&&!Ao.current){t=Hs(e,t,n);break e}}else for(null!==(i=t.child)&&(i.return=t);null!==i;){var c=i.dependencies;if(null!==c){s=i.child;for(var l=c.firstContext;null!==l;){if(l.context===a){if(1===i.tag){(l=$r(-1,n&-n)).tag=2;var u=i.updateQueue;if(null!==u){var p=(u=u.shared).pending;null===p?l.next=l:(l.next=p.next,p.next=l),u.pending=l}}i.lanes|=n,null!==(l=i.alternate)&&(l.lanes|=n),Or(i.return,n,t),c.lanes|=n;break}l=l.next}}else if(10===i.tag)s=i.type===t.type?null:i.child;else if(18===i.tag){if(null===(s=i.return))throw Error(r(341));s.lanes|=n,null!==(c=s.alternate)&&(c.lanes|=n),Or(s,n,t),s=i.sibling}else s=i.child;if(null!==s)s.return=i;else for(s=i;null!==s;){if(s===t){s=null;break}if(null!==(i=s.sibling)){i.return=s.return,s=i;break}s=s.return}i=s}vs(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,a=t.pendingProps.children,Ar(t,n),a=a(o=Pr(o)),t.flags|=1,vs(e,t,a,n),t.child;case 14:return o=ns(a=t.type,t.pendingProps),js(e,t,a,o=ns(a.type,o),n);case 15:return _s(e,t,t.type,t.pendingProps,n);case 17:return a=t.type,o=t.pendingProps,o=t.elementType===a?o:ns(a,o),Vs(e,t),t.tag=1,To(a)?(e=!0,Ro(t)):e=!1,Ar(t,n),is(t,a,o),cs(t,a,o,n),Es(null,t,a,!0,e,n);case 19:return Fs(e,t,n);case 22:return xs(e,t,n)}throw Error(r(156,t.tag))};var Gl="function"==typeof reportError?reportError:function(e){console.error(e)};function Ql(e){this._internalRoot=e}function Wl(e){this._internalRoot=e}function Yl(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Jl(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Zl(){}function Xl(e,t,n,a,o){var r=n._reactRootContainer;if(r){var i=r;if("function"==typeof o){var s=o;o=function(){var e=Hl(i);s.call(e)}}Vl(t,i,e,o)}else i=function(e,t,n,a,o){if(o){if("function"==typeof a){var r=a;a=function(){var e=Hl(i);r.call(e)}}var i=Fl(t,a,e,0,null,!1,0,"",Zl);return e._reactRootContainer=i,e[fo]=i.current,Fa(8===e.nodeType?e.parentNode:e),ul(),i}for(;o=e.lastChild;)e.removeChild(o);if("function"==typeof a){var s=a;a=function(){var e=Hl(c);s.call(e)}}var c=Bl(e,0,!1,null,0,!1,0,"",Zl);return e._reactRootContainer=c,e[fo]=c.current,Fa(8===e.nodeType?e.parentNode:e),ul(function(){Vl(t,c,n,a)}),c}(n,t,e,o,a);return Hl(i)}Wl.prototype.render=Ql.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(r(409));Vl(e,t,null,null)},Wl.prototype.unmount=Ql.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;ul(function(){Vl(null,e,null,null)}),t[fo]=null}},Wl.prototype.unstable_scheduleHydration=function(e){if(e){var t=xt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Tt.length&&0!==t&&t<Tt[n].priority;n++);Tt.splice(n,0,e),0===n&&Rt(e)}},wt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=pt(t.pendingLanes);0!==n&&(bt(t,1|n),al(t,Je()),!(6&Ec)&&(Fc=Je()+500,Vo()))}break;case 13:ul(function(){var t=Lr(e,1);if(null!==t){var n=el();nl(t,e,1,n)}}),ql(e,1)}},jt=function(e){if(13===e.tag){var t=Lr(e,134217728);null!==t&&nl(t,e,134217728,el()),ql(e,134217728)}},_t=function(e){if(13===e.tag){var t=tl(e),n=Lr(e,t);null!==n&&nl(n,e,t,el()),ql(e,t)}},xt=function(){return yt},zt=function(e,t){var n=yt;try{return yt=e,t()}finally{yt=n}},je=function(e,t,n){switch(t){case"input":if(Z(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var a=n[t];if(a!==e&&a.form===e.form){var o=jo(a);if(!o)throw Error(r(90));G(a),Z(a,o)}}}break;case"textarea":re(e,n);break;case"select":null!=(t=n.value)&&ne(e,!!n.multiple,t,!1)}},Ee=ll,Oe=ul;var eu={usingClientEntryPoint:!1,Events:[vo,wo,jo,Ce,Se,ll]},tu={findFiberByHostInstance:yo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},nu={bundleType:tu.bundleType,version:tu.version,rendererPackageName:tu.rendererPackageName,rendererConfig:tu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:v.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ke(e))?null:e.stateNode},findFiberByHostInstance:tu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var au=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!au.isDisabled&&au.supportsFiber)try{ot=au.inject(nu),rt=au}catch(ue){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=eu,t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Yl(t))throw Error(r(200));return function(e,t,n){var a=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:j,key:null==a?null:""+a,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},t.createRoot=function(e,t){if(!Yl(e))throw Error(r(299));var n=!1,a="",o=Gl;return null!=t&&(!0===t.unstable_strictMode&&(n=!0),void 0!==t.identifierPrefix&&(a=t.identifierPrefix),void 0!==t.onRecoverableError&&(o=t.onRecoverableError)),t=Bl(e,1,!1,null,0,n,0,a,o),e[fo]=t.current,Fa(8===e.nodeType?e.parentNode:e),new Ql(t)},t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"==typeof e.render)throw Error(r(188));throw e=Object.keys(e).join(","),Error(r(268,e))}return null===(e=Ke(t))?null:e.stateNode},t.flushSync=function(e){return ul(e)},t.hydrate=function(e,t,n){if(!Jl(t))throw Error(r(200));return Xl(null,e,t,!0,n)},t.hydrateRoot=function(e,t,n){if(!Yl(e))throw Error(r(405));var a=null!=n&&n.hydratedSources||null,o=!1,i="",s=Gl;if(null!=n&&(!0===n.unstable_strictMode&&(o=!0),void 0!==n.identifierPrefix&&(i=n.identifierPrefix),void 0!==n.onRecoverableError&&(s=n.onRecoverableError)),t=Fl(t,null,e,1,null!=n?n:null,o,0,i,s),e[fo]=t.current,Fa(e),a)for(e=0;e<a.length;e++)o=(o=(n=a[e])._getVersion)(n._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[n,o]:t.mutableSourceEagerHydrationData.push(n,o);return new Wl(t)},t.render=function(e,t,n){if(!Jl(t))throw Error(r(200));return Xl(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Jl(e))throw Error(r(40));return!!e._reactRootContainer&&(ul(function(){Xl(null,null,e,!1,function(){e._reactRootContainer=null,e[fo]=null})}),!0)},t.unstable_batchedUpdates=ll,t.unstable_renderSubtreeIntoContainer=function(e,t,n,a){if(!Jl(n))throw Error(r(200));if(null==e||void 0===e._reactInternals)throw Error(r(38));return Xl(e,t,n,!1,a)},t.version="18.3.1-next-f1338f8080-20240426"},593:(e,t,n)=>{e.exports=n(910)},723:(e,t,n)=>{e.exports=n(921)},910:(e,t)=>{function n(e,t){var n=e.length;e.push(t);e:for(;0<n;){var a=n-1>>>1,o=e[a];if(!(0<r(o,t)))break e;e[a]=t,e[n]=o,n=a}}function a(e){return 0===e.length?null:e[0]}function o(e){if(0===e.length)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;e:for(var a=0,o=e.length,i=o>>>1;a<i;){var s=2*(a+1)-1,c=e[s],l=s+1,u=e[l];if(0>r(c,n))l<o&&0>r(u,c)?(e[a]=u,e[l]=n,a=l):(e[a]=c,e[s]=n,a=s);else{if(!(l<o&&0>r(u,n)))break e;e[a]=u,e[l]=n,a=l}}}return t}function r(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var s=Date,c=s.now();t.unstable_now=function(){return s.now()-c}}var l=[],u=[],p=1,d=null,m=3,h=!1,f=!1,g=!1,k="function"==typeof setTimeout?setTimeout:null,b="function"==typeof clearTimeout?clearTimeout:null,y="undefined"!=typeof setImmediate?setImmediate:null;function v(e){for(var t=a(u);null!==t;){if(null===t.callback)o(u);else{if(!(t.startTime<=e))break;o(u),t.sortIndex=t.expirationTime,n(l,t)}t=a(u)}}function w(e){if(g=!1,v(e),!f)if(null!==a(l))f=!0,T(j);else{var t=a(u);null!==t&&I(w,t.startTime-e)}}function j(e,n){f=!1,g&&(g=!1,b(C),C=-1),h=!0;var r=m;try{for(v(n),d=a(l);null!==d&&(!(d.expirationTime>n)||e&&!O());){var i=d.callback;if("function"==typeof i){d.callback=null,m=d.priorityLevel;var s=i(d.expirationTime<=n);n=t.unstable_now(),"function"==typeof s?d.callback=s:d===a(l)&&o(l),v(n)}else o(l);d=a(l)}if(null!==d)var c=!0;else{var p=a(u);null!==p&&I(w,p.startTime-n),c=!1}return c}finally{d=null,m=r,h=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var _,x=!1,z=null,C=-1,S=5,E=-1;function O(){return!(t.unstable_now()-E<S)}function A(){if(null!==z){var e=t.unstable_now();E=e;var n=!0;try{n=z(!0,e)}finally{n?_():(x=!1,z=null)}}else x=!1}if("function"==typeof y)_=function(){y(A)};else if("undefined"!=typeof MessageChannel){var P=new MessageChannel,N=P.port2;P.port1.onmessage=A,_=function(){N.postMessage(null)}}else _=function(){k(A,0)};function T(e){z=e,x||(x=!0,_())}function I(e,n){C=k(function(){e(t.unstable_now())},n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){f||h||(f=!0,T(j))},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):S=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return m},t.unstable_getFirstCallbackNode=function(){return a(l)},t.unstable_next=function(e){switch(m){case 1:case 2:case 3:var t=3;break;default:t=m}var n=m;m=t;try{return e()}finally{m=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=m;m=e;try{return t()}finally{m=n}},t.unstable_scheduleCallback=function(e,o,r){var i=t.unstable_now();switch(r="object"==typeof r&&null!==r&&"number"==typeof(r=r.delay)&&0<r?i+r:i,e){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return e={id:p++,callback:o,priorityLevel:e,startTime:r,expirationTime:s=r+s,sortIndex:-1},r>i?(e.sortIndex=r,n(u,e),null===a(l)&&e===a(u)&&(g?(b(C),C=-1):g=!0,I(w,r-i))):(e.sortIndex=s,n(l,e),f||h||(f=!0,T(j))),e},t.unstable_shouldYield=O,t.unstable_wrapCallback=function(e){var t=m;return function(){var n=m;m=t;try{return e.apply(this,arguments)}finally{m=n}}}},921:(e,t,n)=>{var a=n(155),o=Symbol.for("react.element"),r=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),i=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var a,c={},l=null,u=null;for(a in void 0!==n&&(l=""+n),void 0!==t.key&&(l=""+t.key),void 0!==t.ref&&(u=t.ref),t)r.call(t,a)&&!s.hasOwnProperty(a)&&(c[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===c[a]&&(c[a]=t[a]);return{$$typeof:o,type:e,key:l,ref:u,props:c,_owner:i.current}}t.jsx=c,t.jsxs=c},997:(e,t,n)=>{var a=n(316);t.H=a.createRoot,a.hydrateRoot}},t={};function n(a){var o=t[a];if(void 0!==o)return o.exports;var r=t[a]={exports:{}};return e[a](r,r.exports,n),r.exports}function a(e,t,n,a){if(void 0===n)e.searchParams[a](t,"undefined");else if(null===n)e.searchParams[a](t,"null");else if("boolean"==typeof n)e.searchParams[a](t,n?"true":"false");else if("number"==typeof n)e.searchParams[a](t,n.toString(10));else if("string"==typeof n)e.searchParams[a](t,n);else{if("object"!=typeof n)throw new Error(`Unsupported query param value: ${n.toString()}`);e.searchParams[a](t,JSON.stringify(n))}}n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);class o extends Error{source;constructor(e,t){super(e),this.name="ApiError",this.source=t}}class r extends o{constructor(e){super(`Fetch error: ${e.message}`,e)}}class i extends o{status;statusText;response;constructor(e){const{status:t,statusText:n}=e;super(`Status error (${t}): ${n}`),this.status=t,this.statusText=n,this.response=e}}class s extends o{response;constructor(e,t){const[n,a]="string"==typeof t?[t,void 0]:[t.message,t];super(`Response body error: ${n}`,a),this.response=e}}async function c(e,t){try{return await fetch(e,t)}catch(e){if(e instanceof TypeError)throw new r(e);throw e}}function l(e){return new Promise(t=>{setTimeout(t,e)})}function u(e,{backoffMultiplier:t=1,retryAfter:n=null}={}){if(n){const e=function(e){const t=function(e){const t=function(e){const t=e.trim();return/^[+-]?\d+$/.test(t)?parseInt(t,10):null}(e);return null===t||t<0?null:t}(e);if(null!==t)return 1e3*t;const n=Date.parse(e);return isNaN(n)?null:n-Date.now()}(n);if(null!==e)return Math.max(Math.min(e,1e4),500)}return Math.min(500*Math.pow(2,e),1e4)*t*(1+.1*(2*Math.random()-1))}class p{name="JsonBodyParser";async parse(e){try{return e.json()}catch(t){throw new s(e,t instanceof Error?t:"Failed to parse JSON")}}checkContentType(e){return e?.includes("application/json")??!1}}class d{name="VoidBodyParser";async parse(e){}checkContentType(e){return!0}}async function m(e,t,n,a,o){if(e.status>=200&&e.status<300){const{parser:n,ignoreContentTypeHeader:a=!1}=t??{},o=e.headers.get("Content-Type");if(!a&&!n.checkContentType(o))throw new s(e,`Did not expect Content-Type "${o}" for parser ${n.name}`);return t.parser.parse(e)}if(n>=5)throw new i(e);if(401===e.status&&o)return o(n+1);if(429===e.status||503===e.status){const t=u(n+2,{backoffMultiplier:2,retryAfter:e.headers.get("Retry-After")});return await l(t),a(n+3)}if(e.status>=400&&e.status<=499)throw new i(e);{const e=u(n);return await l(e),a(n+1)}}class h{rootUrl;appVersion;truesignEndpoint;tsToken=null;injectInto;partnerKey;constructor(e,t){this.truesignEndpoint=t?.truesignEndpoint,this.rootUrl=e,this.injectInto=t.injectInto??"query",this.appVersion=t.appVersion,this.partnerKey=t.partnerKey}async createTSToken(){try{const e={signal:AbortSignal.timeout(1e3)},t=await fetch(`https://edge.truesign.ai/v2/${this.truesignEndpoint}`,{...e}),n=await t.json();return this.tsToken=n.token,this.tsToken||"no-token"}catch(e){return console.error("Unable to request authentication token",e),this.tsToken="unauthenticated",this.tsToken}}async getTsToken(){return this.tsToken?this.tsToken:await this.createTSToken()}buildUrl(e){return new URL(`${this.rootUrl}${e}`)}async applyQueryParams(e,t){return function(e,t){const n=new URL(e);for(const[e,o]of Object.entries(t))if(Array.isArray(o)){n.searchParams.delete(e);for(const t of o)a(n,e,t,"append")}else a(n,e,o,"set");return n}(e,{...t,..."query"===this.injectInto?{...this.truesignEndpoint?{tsToken:await this.getTsToken()}:{},...this.partnerKey?{partnerKey:this.partnerKey}:{},appVersion:this.appVersion}:{}})}async applyHeaders(e){const t=new Headers(e);return"headers"===this.injectInto&&(this.truesignEndpoint&&t.set("X-TS-Token",await this.getTsToken()),this.partnerKey&&t.set("X-Partner-Key",this.partnerKey),t.set("X-App-Version",this.appVersion)),t}async get(e,{params:t={},request:n={},parser:a=new p,ignoreContentTypeHeader:o}={}){const r=this.buildUrl(e),i=await this.applyQueryParams(r,t),s=await this.applyHeaders(n?.headers);return this._get(i,0,{...n,headers:s},{parser:a,ignoreContentTypeHeader:o})}async _get(e,t,n,a){try{return m(await c(e,{...n,body:void 0,method:"GET"}),a,t,t=>this._get(e,t,n,a),this.truesignEndpoint?async t=>{await this.createTSToken();const o=await this.applyQueryParams(e),r=await this.applyHeaders(n.headers);return this._get(o,t,{...n,headers:r},a)}:null)}catch(t){throw console.error(`Error on get ${e.origin}${e.pathname}`,t),t}}async post(e,{params:t={},body:n=null,request:a={},parser:o=new d,ignoreContentTypeHeader:r}={}){const i=this.buildUrl(e),s=await this.applyQueryParams(i,t),c=await this.applyHeaders(a?.headers);n&&!c.has("Content-Type")&&c.set("Content-Type",n.getContentType());const l=n?n.getSerialized():null;return this._post(s,l,0,{...a,headers:c},{parser:o,ignoreContentTypeHeader:r})}async _post(e,t,n,a,o){try{return m(await c(e,{...a,body:t,method:"POST"}),o,n,n=>this._post(e,t,n,a,o),this.truesignEndpoint?async n=>{await this.createTSToken();const r=await this.applyQueryParams(e),i=await this.applyHeaders(a.headers);return this._post(r,t,n,{...a,headers:i},o)}:null)}catch(t){throw console.error(`Error on post ${e.origin}${e.pathname}`,t),t}}}class f{apiService=null;rootUrl;options;constructor(e,t){this.rootUrl=e,this.options=t,this.apiService=null}initialize(e){if(this.apiService)throw new Error("APIService already initialized");this.apiService=new h(this.rootUrl,{...this.options,...e})}get(){if(!this.apiService)throw new Error("APIService not initialized");return this.apiService}}const g=new f("https://events.getdirecto.com",{truesignEndpoint:"80298941"}),k=(g.get.bind(g),new f("https://vio-wrapper-api-cd-6981968610.europe-west4.run.app",{truesignEndpoint:"1678801807",injectInto:"headers"}));k.get.bind(k);const b=new f("https://rateshops.getdirecto.com",{truesignEndpoint:"1010119886",injectInto:"headers"}),y=b.get.bind(b);function v(e){if(e.success)return e.response;throw new Error(e.errorMessage)}const w=function(){const e=new Map;return new Proxy({},{get(t,n){if("string"!=typeof n)return;const a=n;return e.has(a)||e.set(a,function(e,t){return function(...n){let a;a=1===n.length?n[0]:void 0;const o={serverId:e,handlerId:t,...void 0!==a?{payload:a}:{}};return chrome.runtime.sendMessage(o).then(v)}}("DIRECTO_CORE_BACKGROUND",a)),e.get(a)}})}(),j=Array.isArray,_="object"==typeof global&&global&&global.Object===Object&&global;var x="object"==typeof self&&self&&self.Object===Object&&self;const z=_||x||Function("return this")(),C=z.Symbol;var S=Object.prototype,E=S.hasOwnProperty,O=S.toString,A=C?C.toStringTag:void 0;var P=Object.prototype.toString;var N=C?C.toStringTag:void 0;const T=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":N&&N in Object(e)?function(e){var t=E.call(e,A),n=e[A];try{e[A]=void 0;var a=!0}catch(e){}var o=O.call(e);return a&&(t?e[A]=n:delete e[A]),o}(e):function(e){return P.call(e)}(e)},I=function(e){return null!=e&&"object"==typeof e},L=function(e){return"symbol"==typeof e||I(e)&&"[object Symbol]"==T(e)};var D=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,R=/^\w*$/;const M=function(e,t){if(j(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!L(e))||R.test(e)||!D.test(e)||null!=t&&e in Object(t)},$=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},B=function(e){if(!$(e))return!1;var t=T(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},U=z["__core-js_shared__"];var F,V=(F=/[^.]+$/.exec(U&&U.keys&&U.keys.IE_PROTO||""))?"Symbol(src)_1."+F:"";var H=Function.prototype.toString;const K=function(e){if(null!=e){try{return H.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var q=/^\[object .+?Constructor\]$/,G=Function.prototype,Q=Object.prototype,W=G.toString,Y=Q.hasOwnProperty,J=RegExp("^"+W.call(Y).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const Z=function(e){return!(!$(e)||(t=e,V&&V in t))&&(B(e)?J:q).test(K(e));var t},X=function(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return Z(n)?n:void 0},ee=X(Object,"create");var te=Object.prototype.hasOwnProperty;var ne=Object.prototype.hasOwnProperty;function ae(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}ae.prototype.clear=function(){this.__data__=ee?ee(null):{},this.size=0},ae.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},ae.prototype.get=function(e){var t=this.__data__;if(ee){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return te.call(t,e)?t[e]:void 0},ae.prototype.has=function(e){var t=this.__data__;return ee?void 0!==t[e]:ne.call(t,e)},ae.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=ee&&void 0===t?"__lodash_hash_undefined__":t,this};const oe=ae,re=function(e,t){return e===t||e!=e&&t!=t},ie=function(e,t){for(var n=e.length;n--;)if(re(e[n][0],t))return n;return-1};var se=Array.prototype.splice;function ce(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}ce.prototype.clear=function(){this.__data__=[],this.size=0},ce.prototype.delete=function(e){var t=this.__data__,n=ie(t,e);return!(n<0||(n==t.length-1?t.pop():se.call(t,n,1),--this.size,0))},ce.prototype.get=function(e){var t=this.__data__,n=ie(t,e);return n<0?void 0:t[n][1]},ce.prototype.has=function(e){return ie(this.__data__,e)>-1},ce.prototype.set=function(e,t){var n=this.__data__,a=ie(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this};const le=ce,ue=X(z,"Map"),pe=function(e,t){var n,a,o=e.__data__;return("string"==(a=typeof(n=t))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?o["string"==typeof t?"string":"hash"]:o.map};function de(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}de.prototype.clear=function(){this.size=0,this.__data__={hash:new oe,map:new(ue||le),string:new oe}},de.prototype.delete=function(e){var t=pe(this,e).delete(e);return this.size-=t?1:0,t},de.prototype.get=function(e){return pe(this,e).get(e)},de.prototype.has=function(e){return pe(this,e).has(e)},de.prototype.set=function(e,t){var n=pe(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this};const me=de;function he(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var a=arguments,o=t?t.apply(this,a):a[0],r=n.cache;if(r.has(o))return r.get(o);var i=e.apply(this,a);return n.cache=r.set(o,i)||r,i};return n.cache=new(he.Cache||me),n}he.Cache=me;var fe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ge=/\\(\\)?/g;const ke=(be=function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(fe,function(e,n,a,o){t.push(a?o.replace(ge,"$1"):n||e)}),t},ye=he(be,function(e){return 500===ve.size&&ve.clear(),e}),ve=ye.cache,ye);var be,ye,ve;const we=function(e,t){for(var n=-1,a=null==e?0:e.length,o=Array(a);++n<a;)o[n]=t(e[n],n,e);return o};var je=C?C.prototype:void 0,_e=je?je.toString:void 0;const xe=function e(t){if("string"==typeof t)return t;if(j(t))return we(t,e)+"";if(L(t))return _e?_e.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n},ze=function(e){return null==e?"":xe(e)},Ce=function(e,t){return j(e)?e:M(e,t)?[e]:ke(ze(e))},Se=function(e){if("string"==typeof e||L(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t},Ee=function(e,t){for(var n=0,a=(t=Ce(t,e)).length;null!=e&&n<a;)e=e[Se(t[n++])];return n&&n==a?e:void 0},Oe=function(e,t,n){var a=null==e?void 0:Ee(e,t);return void 0===a?n:a},Ae=function(e,t){for(var n=-1,a=null==e?0:e.length;++n<a&&!1!==t(e[n],n,e););return e},Pe=function(e,t,n){for(var a=-1,o=Object(e),r=n(e),i=r.length;i--;){var s=r[++a];if(!1===t(o[s],s,o))break}return e},Ne=function(e){return I(e)&&"[object Arguments]"==T(e)};var Te=Object.prototype,Ie=Te.hasOwnProperty,Le=Te.propertyIsEnumerable;const De=Ne(function(){return arguments}())?Ne:function(e){return I(e)&&Ie.call(e,"callee")&&!Le.call(e,"callee")};var Re="object"==typeof exports&&exports&&!exports.nodeType&&exports,Me=Re&&"object"==typeof module&&module&&!module.nodeType&&module,$e=Me&&Me.exports===Re?z.Buffer:void 0;const Be=($e?$e.isBuffer:void 0)||function(){return!1};var Ue=/^(?:0|[1-9]\d*)$/;const Fe=function(e,t){var n=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&Ue.test(e))&&e>-1&&e%1==0&&e<t},Ve=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var He={};He["[object Float32Array]"]=He["[object Float64Array]"]=He["[object Int8Array]"]=He["[object Int16Array]"]=He["[object Int32Array]"]=He["[object Uint8Array]"]=He["[object Uint8ClampedArray]"]=He["[object Uint16Array]"]=He["[object Uint32Array]"]=!0,He["[object Arguments]"]=He["[object Array]"]=He["[object ArrayBuffer]"]=He["[object Boolean]"]=He["[object DataView]"]=He["[object Date]"]=He["[object Error]"]=He["[object Function]"]=He["[object Map]"]=He["[object Number]"]=He["[object Object]"]=He["[object RegExp]"]=He["[object Set]"]=He["[object String]"]=He["[object WeakMap]"]=!1;const Ke=function(e){return function(t){return e(t)}};var qe="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ge=qe&&"object"==typeof module&&module&&!module.nodeType&&module,Qe=Ge&&Ge.exports===qe&&_.process,We=function(){try{return Ge&&Ge.require&&Ge.require("util").types||Qe&&Qe.binding&&Qe.binding("util")}catch(e){}}(),Ye=We&&We.isTypedArray;const Je=Ye?Ke(Ye):function(e){return I(e)&&Ve(e.length)&&!!He[T(e)]};var Ze=Object.prototype.hasOwnProperty;const Xe=function(e,t){var n=j(e),a=!n&&De(e),o=!n&&!a&&Be(e),r=!n&&!a&&!o&&Je(e),i=n||a||o||r,s=i?function(e,t){for(var n=-1,a=Array(e);++n<e;)a[n]=t(n);return a}(e.length,String):[],c=s.length;for(var l in e)!t&&!Ze.call(e,l)||i&&("length"==l||o&&("offset"==l||"parent"==l)||r&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||Fe(l,c))||s.push(l);return s};var et=Object.prototype;const tt=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||et)},nt=function(e,t){return function(n){return e(t(n))}},at=nt(Object.keys,Object);var ot=Object.prototype.hasOwnProperty;const rt=function(e){if(!tt(e))return at(e);var t=[];for(var n in Object(e))ot.call(e,n)&&"constructor"!=n&&t.push(n);return t},it=function(e){return null!=e&&Ve(e.length)&&!B(e)},st=function(e){return it(e)?Xe(e):rt(e)},ct=function(e,t){return e&&Pe(e,t,st)},lt=(ut=ct,function(e,t){if(null==e)return e;if(!it(e))return ut(e,t);for(var n=e.length,a=-1,o=Object(e);++a<n&&!1!==t(o[a],a,o););return e});var ut;const pt=function(e){return e},dt=function(e,t){return(j(e)?Ae:lt)(e,"function"==typeof(n=t)?n:pt);var n},mt="userLocale";function ht(){let e;return e=null!=navigator.languages?navigator.languages[0]:navigator.language,e=e.split("-")[0]||e||"en",e}let ft=null;function gt(){return ft=ft||ht(),ft}!async function(){const{[mt]:e}=await chrome.storage.local.get(mt);ft=e??null}();const kt=X(z,"DataView"),bt=X(z,"Promise"),yt=X(z,"Set"),vt=X(z,"WeakMap");var wt="[object Map]",jt="[object Promise]",_t="[object Set]",xt="[object WeakMap]",zt="[object DataView]",Ct=K(kt),St=K(ue),Et=K(bt),Ot=K(yt),At=K(vt),Pt=T;(kt&&Pt(new kt(new ArrayBuffer(1)))!=zt||ue&&Pt(new ue)!=wt||bt&&Pt(bt.resolve())!=jt||yt&&Pt(new yt)!=_t||vt&&Pt(new vt)!=xt)&&(Pt=function(e){var t=T(e),n="[object Object]"==t?e.constructor:void 0,a=n?K(n):"";if(a)switch(a){case Ct:return zt;case St:return wt;case Et:return jt;case Ot:return _t;case At:return xt}return t});const Nt=Pt;var Tt=Object.prototype.hasOwnProperty;const It=function(e){if(null==e)return!0;if(it(e)&&(j(e)||"string"==typeof e||"function"==typeof e.splice||Be(e)||Je(e)||De(e)))return!e.length;var t=Nt(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(tt(e))return!rt(e).length;for(var n in e)if(Tt.call(e,n))return!1;return!0},Lt=function(e){return function(e){return"number"==typeof e||I(e)&&"[object Number]"==T(e)}(e)&&e!=+e};function Dt(e,t=It,n=10){let a=0;return async function o(...r){const i=await e(...r);return t(i)&&a<=n?(a+=1,await new Promise(e=>setTimeout(e,2**a)),o(...r)):i}}function Rt(e){return e?.includes("NaN")||Lt(e)?null:e}function Mt(e,t=2){const n="0".repeat(t)+e;return n.slice(n.length-t,n.length)}function $t(e){if(function(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}(e))return e}function Bt(e,t){const n="function"==typeof t?t:e=>t.test(e),a=Object.keys(e).find(n);if(a)return e[a]}function Ut(e,t=document){let n=null;for(const a of e){const e=t.querySelector(a);if(e){n=e;break}}return n}function Ft(e,t=document){let n=null;for(const a of e){const e=t.querySelectorAll(a);if(e.length){n=e;break}}return n}async function Vt(e,t,n){if(n.signal?.aborted)return;const a=await Dt(Ut,e=>!e)(e);if(n.signal?.aborted)return;if(!a){if(null!==n.retryMs){const a=setTimeout(()=>{Vt(e,t,n)},n.retryMs),o=()=>{n.signal?.removeEventListener("abort",o),clearTimeout(a)};n.signal?.addEventListener("abort",o)}return}const o=await t(a);if(!n.signal?.aborted&&null!==n.checkIntervalMs){const r=setInterval(()=>{a.isConnected||(o?.(),clearInterval(r),Vt(e,t,n))},n.checkIntervalMs),i=()=>{n.signal?.removeEventListener("abort",i),clearInterval(r)};n.signal?.addEventListener("abort",i)}}function Ht(){let e=document.documentElement.lang;return e=e.split("-")[0],e?e.toLowerCase():null}async function Kt(e){const t=await Dt(Ut,e=>!e||!e.textContent,10)(e);if(!t||!t.textContent)return null;let n;try{n=JSON.parse(t.textContent)}catch(t){return console.error("Error parsing JSON from selectors",e,t),null}const a=$t(n);return!a||It(a)?null:a}function qt(e){return e.checkVisibility({contentVisibilityAuto:!0,opacityProperty:!0,visibilityProperty:!0})}function Gt(e){const t=e.textContent.trim();return""!==t?t:"value"in e&&"string"==typeof e.value?e.value.trim():null}class Qt{platform;constructor(e){this.platform=e}}class Wt extends Qt{constructor(e){super(e)}async getDestination(){return null}async shouldActivate(){return!1}async handleCrossSell(){}async getQueryParamMap(e){throw new Error("Method not implemented.")}async buildQueryParams(e,t=window.location.href){const n=new URL(t),a=(await this.getQueryParamMap(n))[e];return(B(a)?await a():Rt(n.searchParams.get(a)))||null}}class Yt{year;month;day;constructor(e,t,n){this.year=e,this.month=t,this.day=n}static today(){return Yt.fromDate(new Date)}static fromRaw(e){return new Yt(e.year,e.month,e.day)}static fromDate(e){return new Yt(e.getFullYear(),e.getMonth()+1,e.getDate())}static tryFromSlashDDMMYY(e){const t=e.match(/^(\d{2})\/(\d{2})\/(\d{2})$/);if(!t)return null;const[,n,a,o]=t;return new Yt(2e3+parseInt(o,10),parseInt(a,10),parseInt(n,10))}static tryFromSlashDMY(e){const t=e.match(/^(\d{1,2})\/(\d{1,2})\/(\d{1,2})$/);if(!t)return null;const[,n,a,o]=t;return new Yt(2e3+parseInt(o,10),parseInt(a,10),parseInt(n,10))}static tryFromDashYYYYMMDD(e){const t=e.match(/^(\d{4})-(\d{2})-(\d{2})$/);if(!t)return null;const[,n,a,o]=t;return new Yt(parseInt(n,10),parseInt(a,10),parseInt(o,10))}static tryFromSlashDDMMYYYY(e){const t=e.match(/^(\d{2})\/(\d{2})\/(\d{4})$/);if(!t)return null;const[,n,a,o]=t;return new Yt(parseInt(o,10),parseInt(a,10),parseInt(n,10))}toDashYYYYMMDD(){return`${Mt(this.year,4)}-${Mt(this.month)}-${Mt(this.day)}`}unsafe_toDate(){return new Date(this.year,this.month-1,this.day,0,0,0,0)}}function Jt(e,t){const n=new Date(e);return n.setDate(e.getDate()+t),n}function Zt(e){if(!e)return null;const t=new Date(e);if(!isNaN(t.getTime()))return`${t.getFullYear()}-${Mt(t.getUTCMonth()+1)}-${Mt(t.getUTCDate())}`;const n=e?.split("/");return 3===n?.length?`${2===n[2].length?`20${n[2]}`:n[2]}-${Mt(n[1])}-${Mt(n[0])}`:e}function Xt(e){if(!e)return null;if(e.includes("-")){if(/^\d{4}-\d{1,2}-\d{1,2}$/.test(e)){const[t,n,a]=e.split("-");return`${t}-${Mt(n)}-${Mt(a)}`}if(/^\d{1,2}-\d{1,2}-\d{2,4}$/.test(e)){const[t,n,a]=e.split("-");return`${2===a.length?"20":""}${a}-${Mt(n)}-${Mt(t)}`}return null}if(/^\d{8}$/.test(e))return`${e.substring(0,4)}-${e.substring(4,6)}-${e.substring(6,8)}`;if(e.includes("/")){const[t,n,a]=e.split("/");return t&&n&&a?`${2===a.length?"20":""}${a}-${Mt(n)}-${Mt(t)}`:null}return null}function en(e){return e.toISOString().split("T")[0]}function tn(e){return e.trim().normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function nn(e){const t=new Date(e.year,e.month-1,e.day+1);return Yt.fromDate(t)}function an(e,t){const n=new AbortController;return e.addEventListener("click",async n=>{if(n instanceof MouseEvent&&null!==n.view&&"isSynthetic"in n.view&&"boolean"==typeof n.view.isSynthetic&&n.view.isSynthetic)return;n.preventDefault(),n.stopPropagation(),n.stopImmediatePropagation();try{await t()}catch(e){console.error(e)}const a=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:Object.assign(window,{isSynthetic:!0})});setTimeout(()=>{e.dispatchEvent(a)},100)},{capture:!0,signal:n.signal}),n}const on="EUR",rn=1e3;function sn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var cn,ln;const un=sn(function(){if(ln)return cn;ln=1;const e=2147483647,t=36,n=/^xn--/,a=/[^\0-\x7F]/,o=/[\x2E\u3002\uFF0E\uFF61]/g,r={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},i=Math.floor,s=String.fromCharCode;function c(e){throw new RangeError(r[e])}function l(e,t){const n=e.split("@");let a="";n.length>1&&(a=n[0]+"@",e=n[1]);const r=function(e,t){const n=[];let a=e.length;for(;a--;)n[a]=t(e[a]);return n}((e=e.replace(o,".")).split("."),t).join(".");return a+r}function u(e){const t=[];let n=0;const a=e.length;for(;n<a;){const o=e.charCodeAt(n++);if(o>=55296&&o<=56319&&n<a){const a=e.charCodeAt(n++);56320==(64512&a)?t.push(((1023&o)<<10)+(1023&a)+65536):(t.push(o),n--)}else t.push(o)}return t}const p=function(e){return e>=48&&e<58?e-48+26:e>=65&&e<91?e-65:e>=97&&e<123?e-97:t},d=function(e,t){return e+22+75*(e<26)-((0!=t)<<5)},m=function(e,n,a){let o=0;for(e=a?i(e/700):e>>1,e+=i(e/n);e>455;o+=t)e=i(e/35);return i(o+36*e/(e+38))},h=function(n){const a=[],o=n.length;let r=0,s=128,l=72,u=n.lastIndexOf("-");u<0&&(u=0);for(let e=0;e<u;++e)n.charCodeAt(e)>=128&&c("not-basic"),a.push(n.charCodeAt(e));for(let d=u>0?u+1:0;d<o;){const u=r;for(let a=1,s=t;;s+=t){d>=o&&c("invalid-input");const u=p(n.charCodeAt(d++));u>=t&&c("invalid-input"),u>i((e-r)/a)&&c("overflow"),r+=u*a;const m=s<=l?1:s>=l+26?26:s-l;if(u<m)break;const h=t-m;a>i(e/h)&&c("overflow"),a*=h}const h=a.length+1;l=m(r-u,h,0==u),i(r/h)>e-s&&c("overflow"),s+=i(r/h),r%=h,a.splice(r++,0,s)}return String.fromCodePoint(...a)},f=function(n){const a=[],o=(n=u(n)).length;let r=128,l=0,p=72;for(const e of n)e<128&&a.push(s(e));const h=a.length;let f=h;for(h&&a.push("-");f<o;){let o=e;for(const e of n)e>=r&&e<o&&(o=e);const u=f+1;o-r>i((e-l)/u)&&c("overflow"),l+=(o-r)*u,r=o;for(const o of n)if(o<r&&++l>e&&c("overflow"),o===r){let e=l;for(let n=t;;n+=t){const o=n<=p?1:n>=p+26?26:n-p;if(e<o)break;const r=e-o,c=t-o;a.push(s(d(o+r%c,0))),e=i(r/c)}a.push(s(d(e,0))),p=m(l,u,f===h),l=0,++f}++l,++r}return a.join("")};return cn={version:"2.3.1",ucs2:{decode:u,encode:e=>String.fromCodePoint(...e)},decode:h,encode:f,toASCII:function(e){return l(e,function(e){return a.test(e)?"xn--"+f(e):e})},toUnicode:function(e){return l(e,function(e){return n.test(e)?h(e.slice(4).toLowerCase()):e})}}}());function pn(e){let t=e.trim();return/^(?:f|ht)tps?\:\/\//.test(t)||(t="http://"+t),new URL(t)}function dn(e){return e.hostname.replace(/^www\./,"")}function mn(e){try{return dn("string"==typeof e?pn(e):e)}catch(t){return console.error("Invalid URL:",e,t),e.toString()}}["ac","com.ac","edu.ac","gov.ac","mil.ac","net.ac","org.ac","ad","ae","ac.ae","co.ae","gov.ae","mil.ae","net.ae","org.ae","sch.ae","aero","airline.aero","airport.aero","accident-investigation.aero","accident-prevention.aero","aerobatic.aero","aeroclub.aero","aerodrome.aero","agents.aero","air-surveillance.aero","air-traffic-control.aero","aircraft.aero","airtraffic.aero","ambulance.aero","association.aero","author.aero","ballooning.aero","broker.aero","caa.aero","cargo.aero","catering.aero","certification.aero","championship.aero","charter.aero","civilaviation.aero","club.aero","conference.aero","consultant.aero","consulting.aero","control.aero","council.aero","crew.aero","design.aero","dgca.aero","educator.aero","emergency.aero","engine.aero","engineer.aero","entertainment.aero","equipment.aero","exchange.aero","express.aero","federation.aero","flight.aero","freight.aero","fuel.aero","gliding.aero","government.aero","groundhandling.aero","group.aero","hanggliding.aero","homebuilt.aero","insurance.aero","journal.aero","journalist.aero","leasing.aero","logistics.aero","magazine.aero","maintenance.aero","marketplace.aero","media.aero","microlight.aero","modelling.aero","navigation.aero","parachuting.aero","paragliding.aero","passenger-association.aero","pilot.aero","press.aero","production.aero","recreation.aero","repbody.aero","res.aero","research.aero","rotorcraft.aero","safety.aero","scientist.aero","services.aero","show.aero","skydiving.aero","software.aero","student.aero","taxi.aero","trader.aero","trading.aero","trainer.aero","union.aero","workinggroup.aero","works.aero","af","com.af","edu.af","gov.af","net.af","org.af","ag","co.ag","com.ag","net.ag","nom.ag","org.ag","ai","com.ai","net.ai","off.ai","org.ai","al","com.al","edu.al","gov.al","mil.al","net.al","org.al","am","co.am","com.am","commune.am","net.am","org.am","ao","co.ao","ed.ao","edu.ao","gov.ao","gv.ao","it.ao","og.ao","org.ao","pb.ao","aq","ar","bet.ar","com.ar","coop.ar","edu.ar","gob.ar","gov.ar","int.ar","mil.ar","musica.ar","mutual.ar","net.ar","org.ar","senasa.ar","tur.ar","arpa","e164.arpa","home.arpa","in-addr.arpa","ip6.arpa","iris.arpa","uri.arpa","urn.arpa","as","gov.as","asia","at","ac.at","sth.ac.at","co.at","gv.at","or.at","au","asn.au","com.au","edu.au","gov.au","id.au","net.au","org.au","conf.au","oz.au","act.au","nsw.au","nt.au","qld.au","sa.au","tas.au","vic.au","wa.au","act.edu.au","catholic.edu.au","nsw.edu.au","nt.edu.au","qld.edu.au","sa.edu.au","tas.edu.au","vic.edu.au","wa.edu.au","qld.gov.au","sa.gov.au","tas.gov.au","vic.gov.au","wa.gov.au","schools.nsw.edu.au","aw","com.aw","ax","az","biz.az","com.az","edu.az","gov.az","info.az","int.az","mil.az","name.az","net.az","org.az","pp.az","pro.az","ba","com.ba","edu.ba","gov.ba","mil.ba","net.ba","org.ba","bb","biz.bb","co.bb","com.bb","edu.bb","gov.bb","info.bb","net.bb","org.bb","store.bb","tv.bb","*.bd","be","ac.be","bf","gov.bf","bg","0.bg","1.bg","2.bg","3.bg","4.bg","5.bg","6.bg","7.bg","8.bg","9.bg","a.bg","b.bg","c.bg","d.bg","e.bg","f.bg","g.bg","h.bg","i.bg","j.bg","k.bg","l.bg","m.bg","n.bg","o.bg","p.bg","q.bg","r.bg","s.bg","t.bg","u.bg","v.bg","w.bg","x.bg","y.bg","z.bg","bh","com.bh","edu.bh","gov.bh","net.bh","org.bh","bi","co.bi","com.bi","edu.bi","or.bi","org.bi","biz","bj","africa.bj","agro.bj","architectes.bj","assur.bj","avocats.bj","co.bj","com.bj","eco.bj","econo.bj","edu.bj","info.bj","loisirs.bj","money.bj","net.bj","org.bj","ote.bj","restaurant.bj","resto.bj","tourism.bj","univ.bj","bm","com.bm","edu.bm","gov.bm","net.bm","org.bm","bn","com.bn","edu.bn","gov.bn","net.bn","org.bn","bo","com.bo","edu.bo","gob.bo","int.bo","mil.bo","net.bo","org.bo","tv.bo","web.bo","academia.bo","agro.bo","arte.bo","blog.bo","bolivia.bo","ciencia.bo","cooperativa.bo","democracia.bo","deporte.bo","ecologia.bo","economia.bo","empresa.bo","indigena.bo","industria.bo","info.bo","medicina.bo","movimiento.bo","musica.bo","natural.bo","nombre.bo","noticias.bo","patria.bo","plurinacional.bo","politica.bo","profesional.bo","pueblo.bo","revista.bo","salud.bo","tecnologia.bo","tksat.bo","transporte.bo","wiki.bo","br","9guacu.br","abc.br","adm.br","adv.br","agr.br","aju.br","am.br","anani.br","aparecida.br","app.br","arq.br","art.br","ato.br","b.br","barueri.br","belem.br","bet.br","bhz.br","bib.br","bio.br","blog.br","bmd.br","boavista.br","bsb.br","campinagrande.br","campinas.br","caxias.br","cim.br","cng.br","cnt.br","com.br","contagem.br","coop.br","coz.br","cri.br","cuiaba.br","curitiba.br","def.br","des.br","det.br","dev.br","ecn.br","eco.br","edu.br","emp.br","enf.br","eng.br","esp.br","etc.br","eti.br","far.br","feira.br","flog.br","floripa.br","fm.br","fnd.br","fortal.br","fot.br","foz.br","fst.br","g12.br","geo.br","ggf.br","goiania.br","gov.br","ac.gov.br","al.gov.br","am.gov.br","ap.gov.br","ba.gov.br","ce.gov.br","df.gov.br","es.gov.br","go.gov.br","ma.gov.br","mg.gov.br","ms.gov.br","mt.gov.br","pa.gov.br","pb.gov.br","pe.gov.br","pi.gov.br","pr.gov.br","rj.gov.br","rn.gov.br","ro.gov.br","rr.gov.br","rs.gov.br","sc.gov.br","se.gov.br","sp.gov.br","to.gov.br","gru.br","imb.br","ind.br","inf.br","jab.br","jampa.br","jdf.br","joinville.br","jor.br","jus.br","leg.br","leilao.br","lel.br","log.br","londrina.br","macapa.br","maceio.br","manaus.br","maringa.br","mat.br","med.br","mil.br","morena.br","mp.br","mus.br","natal.br","net.br","niteroi.br","*.nom.br","not.br","ntr.br","odo.br","ong.br","org.br","osasco.br","palmas.br","poa.br","ppg.br","pro.br","psc.br","psi.br","pvh.br","qsl.br","radio.br","rec.br","recife.br","rep.br","ribeirao.br","rio.br","riobranco.br","riopreto.br","salvador.br","sampa.br","santamaria.br","santoandre.br","saobernardo.br","saogonca.br","seg.br","sjc.br","slg.br","slz.br","sorocaba.br","srv.br","taxi.br","tc.br","tec.br","teo.br","the.br","tmp.br","trd.br","tur.br","tv.br","udi.br","vet.br","vix.br","vlog.br","wiki.br","zlg.br","bs","com.bs","edu.bs","gov.bs","net.bs","org.bs","bt","com.bt","edu.bt","gov.bt","net.bt","org.bt","bv","bw","co.bw","org.bw","by","gov.by","mil.by","com.by","of.by","bz","co.bz","com.bz","edu.bz","gov.bz","net.bz","org.bz","ca","ab.ca","bc.ca","mb.ca","nb.ca","nf.ca","nl.ca","ns.ca","nt.ca","nu.ca","on.ca","pe.ca","qc.ca","sk.ca","yk.ca","gc.ca","cat","cc","cd","gov.cd","cf","cg","ch","ci","ac.ci","aéroport.ci","asso.ci","co.ci","com.ci","ed.ci","edu.ci","go.ci","gouv.ci","int.ci","net.ci","or.ci","org.ci","*.ck","!www.ck","cl","co.cl","gob.cl","gov.cl","mil.cl","cm","co.cm","com.cm","gov.cm","net.cm","cn","ac.cn","com.cn","edu.cn","gov.cn","mil.cn","net.cn","org.cn","公司.cn","網絡.cn","网络.cn","ah.cn","bj.cn","cq.cn","fj.cn","gd.cn","gs.cn","gx.cn","gz.cn","ha.cn","hb.cn","he.cn","hi.cn","hk.cn","hl.cn","hn.cn","jl.cn","js.cn","jx.cn","ln.cn","mo.cn","nm.cn","nx.cn","qh.cn","sc.cn","sd.cn","sh.cn","sn.cn","sx.cn","tj.cn","tw.cn","xj.cn","xz.cn","yn.cn","zj.cn","co","com.co","edu.co","gov.co","mil.co","net.co","nom.co","org.co","com","coop","cr","ac.cr","co.cr","ed.cr","fi.cr","go.cr","or.cr","sa.cr","cu","com.cu","edu.cu","gob.cu","inf.cu","nat.cu","net.cu","org.cu","cv","com.cv","edu.cv","id.cv","int.cv","net.cv","nome.cv","org.cv","publ.cv","cw","com.cw","edu.cw","net.cw","org.cw","cx","gov.cx","cy","ac.cy","biz.cy","com.cy","ekloges.cy","gov.cy","ltd.cy","mil.cy","net.cy","org.cy","press.cy","pro.cy","tm.cy","cz","de","dj","dk","dm","co.dm","com.dm","edu.dm","gov.dm","net.dm","org.dm","do","art.do","com.do","edu.do","gob.do","gov.do","mil.do","net.do","org.do","sld.do","web.do","dz","art.dz","asso.dz","com.dz","edu.dz","gov.dz","net.dz","org.dz","pol.dz","soc.dz","tm.dz","ec","com.ec","edu.ec","fin.ec","gob.ec","gov.ec","info.ec","k12.ec","med.ec","mil.ec","net.ec","org.ec","pro.ec","edu","ee","aip.ee","com.ee","edu.ee","fie.ee","gov.ee","lib.ee","med.ee","org.ee","pri.ee","riik.ee","eg","ac.eg","com.eg","edu.eg","eun.eg","gov.eg","info.eg","me.eg","mil.eg","name.eg","net.eg","org.eg","sci.eg","sport.eg","tv.eg","*.er","es","com.es","edu.es","gob.es","nom.es","org.es","et","biz.et","com.et","edu.et","gov.et","info.et","name.et","net.et","org.et","eu","fi","aland.fi","fj","ac.fj","biz.fj","com.fj","gov.fj","info.fj","mil.fj","name.fj","net.fj","org.fj","pro.fj","*.fk","fm","com.fm","edu.fm","net.fm","org.fm","fo","fr","asso.fr","com.fr","gouv.fr","nom.fr","prd.fr","tm.fr","avoues.fr","cci.fr","greta.fr","huissier-justice.fr","ga","gb","gd","edu.gd","gov.gd","ge","com.ge","edu.ge","gov.ge","net.ge","org.ge","pvt.ge","school.ge","gf","gg","co.gg","net.gg","org.gg","gh","com.gh","edu.gh","gov.gh","mil.gh","org.gh","gi","com.gi","edu.gi","gov.gi","ltd.gi","mod.gi","org.gi","gl","co.gl","com.gl","edu.gl","net.gl","org.gl","gm","gn","ac.gn","com.gn","edu.gn","gov.gn","net.gn","org.gn","gov","gp","asso.gp","com.gp","edu.gp","mobi.gp","net.gp","org.gp","gq","gr","com.gr","edu.gr","gov.gr","net.gr","org.gr","gs","gt","com.gt","edu.gt","gob.gt","ind.gt","mil.gt","net.gt","org.gt","gu","com.gu","edu.gu","gov.gu","guam.gu","info.gu","net.gu","org.gu","web.gu","gw","gy","co.gy","com.gy","edu.gy","gov.gy","net.gy","org.gy","hk","com.hk","edu.hk","gov.hk","idv.hk","net.hk","org.hk","个人.hk","個人.hk","公司.hk","政府.hk","敎育.hk","教育.hk","箇人.hk","組織.hk","組织.hk","網絡.hk","網络.hk","组織.hk","组织.hk","网絡.hk","网络.hk","hm","hn","com.hn","edu.hn","gob.hn","mil.hn","net.hn","org.hn","hr","com.hr","from.hr","iz.hr","name.hr","ht","adult.ht","art.ht","asso.ht","com.ht","coop.ht","edu.ht","firm.ht","gouv.ht","info.ht","med.ht","net.ht","org.ht","perso.ht","pol.ht","pro.ht","rel.ht","shop.ht","hu","2000.hu","agrar.hu","bolt.hu","casino.hu","city.hu","co.hu","erotica.hu","erotika.hu","film.hu","forum.hu","games.hu","hotel.hu","info.hu","ingatlan.hu","jogasz.hu","konyvelo.hu","lakas.hu","media.hu","news.hu","org.hu","priv.hu","reklam.hu","sex.hu","shop.hu","sport.hu","suli.hu","szex.hu","tm.hu","tozsde.hu","utazas.hu","video.hu","id","ac.id","biz.id","co.id","desa.id","go.id","mil.id","my.id","net.id","or.id","ponpes.id","sch.id","web.id","ie","gov.ie","il","ac.il","co.il","gov.il","idf.il","k12.il","muni.il","net.il","org.il","ישראל","אקדמיה.ישראל","ישוב.ישראל","צהל.ישראל","ממשל.ישראל","im","ac.im","co.im","ltd.co.im","plc.co.im","com.im","net.im","org.im","tt.im","tv.im","in","5g.in","6g.in","ac.in","ai.in","am.in","bihar.in","biz.in","business.in","ca.in","cn.in","co.in","com.in","coop.in","cs.in","delhi.in","dr.in","edu.in","er.in","firm.in","gen.in","gov.in","gujarat.in","ind.in","info.in","int.in","internet.in","io.in","me.in","mil.in","net.in","nic.in","org.in","pg.in","post.in","pro.in","res.in","travel.in","tv.in","uk.in","up.in","us.in","info","int","eu.int","io","co.io","com.io","edu.io","gov.io","mil.io","net.io","nom.io","org.io","iq","com.iq","edu.iq","gov.iq","mil.iq","net.iq","org.iq","ir","ac.ir","co.ir","gov.ir","id.ir","net.ir","org.ir","sch.ir","ایران.ir","ايران.ir","is","it","edu.it","gov.it","abr.it","abruzzo.it","aosta-valley.it","aostavalley.it","bas.it","basilicata.it","cal.it","calabria.it","cam.it","campania.it","emilia-romagna.it","emiliaromagna.it","emr.it","friuli-v-giulia.it","friuli-ve-giulia.it","friuli-vegiulia.it","friuli-venezia-giulia.it","friuli-veneziagiulia.it","friuli-vgiulia.it","friuliv-giulia.it","friulive-giulia.it","friulivegiulia.it","friulivenezia-giulia.it","friuliveneziagiulia.it","friulivgiulia.it","fvg.it","laz.it","lazio.it","lig.it","liguria.it","lom.it","lombardia.it","lombardy.it","lucania.it","mar.it","marche.it","mol.it","molise.it","piedmont.it","piemonte.it","pmn.it","pug.it","puglia.it","sar.it","sardegna.it","sardinia.it","sic.it","sicilia.it","sicily.it","taa.it","tos.it","toscana.it","trentin-sud-tirol.it","trentin-süd-tirol.it","trentin-sudtirol.it","trentin-südtirol.it","trentin-sued-tirol.it","trentin-suedtirol.it","trentino.it","trentino-a-adige.it","trentino-aadige.it","trentino-alto-adige.it","trentino-altoadige.it","trentino-s-tirol.it","trentino-stirol.it","trentino-sud-tirol.it","trentino-süd-tirol.it","trentino-sudtirol.it","trentino-südtirol.it","trentino-sued-tirol.it","trentino-suedtirol.it","trentinoa-adige.it","trentinoaadige.it","trentinoalto-adige.it","trentinoaltoadige.it","trentinos-tirol.it","trentinostirol.it","trentinosud-tirol.it","trentinosüd-tirol.it","trentinosudtirol.it","trentinosüdtirol.it","trentinosued-tirol.it","trentinosuedtirol.it","trentinsud-tirol.it","trentinsüd-tirol.it","trentinsudtirol.it","trentinsüdtirol.it","trentinsued-tirol.it","trentinsuedtirol.it","tuscany.it","umb.it","umbria.it","val-d-aosta.it","val-daosta.it","vald-aosta.it","valdaosta.it","valle-aosta.it","valle-d-aosta.it","valle-daosta.it","valleaosta.it","valled-aosta.it","valledaosta.it","vallee-aoste.it","vallée-aoste.it","vallee-d-aoste.it","vallée-d-aoste.it","valleeaoste.it","valléeaoste.it","valleedaoste.it","valléedaoste.it","vao.it","vda.it","ven.it","veneto.it","ag.it","agrigento.it","al.it","alessandria.it","alto-adige.it","altoadige.it","an.it","ancona.it","andria-barletta-trani.it","andria-trani-barletta.it","andriabarlettatrani.it","andriatranibarletta.it","ao.it","aosta.it","aoste.it","ap.it","aq.it","aquila.it","ar.it","arezzo.it","ascoli-piceno.it","ascolipiceno.it","asti.it","at.it","av.it","avellino.it","ba.it","balsan.it","balsan-sudtirol.it","balsan-südtirol.it","balsan-suedtirol.it","bari.it","barletta-trani-andria.it","barlettatraniandria.it","belluno.it","benevento.it","bergamo.it","bg.it","bi.it","biella.it","bl.it","bn.it","bo.it","bologna.it","bolzano.it","bolzano-altoadige.it","bozen.it","bozen-sudtirol.it","bozen-südtirol.it","bozen-suedtirol.it","br.it","brescia.it","brindisi.it","bs.it","bt.it","bulsan.it","bulsan-sudtirol.it","bulsan-südtirol.it","bulsan-suedtirol.it","bz.it","ca.it","cagliari.it","caltanissetta.it","campidano-medio.it","campidanomedio.it","campobasso.it","carbonia-iglesias.it","carboniaiglesias.it","carrara-massa.it","carraramassa.it","caserta.it","catania.it","catanzaro.it","cb.it","ce.it","cesena-forli.it","cesena-forlì.it","cesenaforli.it","cesenaforlì.it","ch.it","chieti.it","ci.it","cl.it","cn.it","co.it","como.it","cosenza.it","cr.it","cremona.it","crotone.it","cs.it","ct.it","cuneo.it","cz.it","dell-ogliastra.it","dellogliastra.it","en.it","enna.it","fc.it","fe.it","fermo.it","ferrara.it","fg.it","fi.it","firenze.it","florence.it","fm.it","foggia.it","forli-cesena.it","forlì-cesena.it","forlicesena.it","forlìcesena.it","fr.it","frosinone.it","ge.it","genoa.it","genova.it","go.it","gorizia.it","gr.it","grosseto.it","iglesias-carbonia.it","iglesiascarbonia.it","im.it","imperia.it","is.it","isernia.it","kr.it","la-spezia.it","laquila.it","laspezia.it","latina.it","lc.it","le.it","lecce.it","lecco.it","li.it","livorno.it","lo.it","lodi.it","lt.it","lu.it","lucca.it","macerata.it","mantova.it","massa-carrara.it","massacarrara.it","matera.it","mb.it","mc.it","me.it","medio-campidano.it","mediocampidano.it","messina.it","mi.it","milan.it","milano.it","mn.it","mo.it","modena.it","monza.it","monza-brianza.it","monza-e-della-brianza.it","monzabrianza.it","monzaebrianza.it","monzaedellabrianza.it","ms.it","mt.it","na.it","naples.it","napoli.it","no.it","novara.it","nu.it","nuoro.it","og.it","ogliastra.it","olbia-tempio.it","olbiatempio.it","or.it","oristano.it","ot.it","pa.it","padova.it","padua.it","palermo.it","parma.it","pavia.it","pc.it","pd.it","pe.it","perugia.it","pesaro-urbino.it","pesarourbino.it","pescara.it","pg.it","pi.it","piacenza.it","pisa.it","pistoia.it","pn.it","po.it","pordenone.it","potenza.it","pr.it","prato.it","pt.it","pu.it","pv.it","pz.it","ra.it","ragusa.it","ravenna.it","rc.it","re.it","reggio-calabria.it","reggio-emilia.it","reggiocalabria.it","reggioemilia.it","rg.it","ri.it","rieti.it","rimini.it","rm.it","rn.it","ro.it","roma.it","rome.it","rovigo.it","sa.it","salerno.it","sassari.it","savona.it","si.it","siena.it","siracusa.it","so.it","sondrio.it","sp.it","sr.it","ss.it","südtirol.it","suedtirol.it","sv.it","ta.it","taranto.it","te.it","tempio-olbia.it","tempioolbia.it","teramo.it","terni.it","tn.it","to.it","torino.it","tp.it","tr.it","trani-andria-barletta.it","trani-barletta-andria.it","traniandriabarletta.it","tranibarlettaandria.it","trapani.it","trento.it","treviso.it","trieste.it","ts.it","turin.it","tv.it","ud.it","udine.it","urbino-pesaro.it","urbinopesaro.it","va.it","varese.it","vb.it","vc.it","ve.it","venezia.it","venice.it","verbania.it","vercelli.it","verona.it","vi.it","vibo-valentia.it","vibovalentia.it","vicenza.it","viterbo.it","vr.it","vs.it","vt.it","vv.it","je","co.je","net.je","org.je","*.jm","jo","agri.jo","ai.jo","com.jo","edu.jo","eng.jo","fm.jo","gov.jo","mil.jo","net.jo","org.jo","per.jo","phd.jo","sch.jo","tv.jo","jobs","jp","ac.jp","ad.jp","co.jp","ed.jp","go.jp","gr.jp","lg.jp","ne.jp","or.jp","aichi.jp","akita.jp","aomori.jp","chiba.jp","ehime.jp","fukui.jp","fukuoka.jp","fukushima.jp","gifu.jp","gunma.jp","hiroshima.jp","hokkaido.jp","hyogo.jp","ibaraki.jp","ishikawa.jp","iwate.jp","kagawa.jp","kagoshima.jp","kanagawa.jp","kochi.jp","kumamoto.jp","kyoto.jp","mie.jp","miyagi.jp","miyazaki.jp","nagano.jp","nagasaki.jp","nara.jp","niigata.jp","oita.jp","okayama.jp","okinawa.jp","osaka.jp","saga.jp","saitama.jp","shiga.jp","shimane.jp","shizuoka.jp","tochigi.jp","tokushima.jp","tokyo.jp","tottori.jp","toyama.jp","wakayama.jp","yamagata.jp","yamaguchi.jp","yamanashi.jp","三重.jp","京都.jp","佐賀.jp","兵庫.jp","北海道.jp","千葉.jp","和歌山.jp","埼玉.jp","大分.jp","大阪.jp","奈良.jp","宮城.jp","宮崎.jp","富山.jp","山口.jp","山形.jp","山梨.jp","岐阜.jp","岡山.jp","岩手.jp","島根.jp","広島.jp","徳島.jp","愛媛.jp","愛知.jp","新潟.jp","東京.jp","栃木.jp","沖縄.jp","滋賀.jp","熊本.jp","石川.jp","神奈川.jp","福井.jp","福岡.jp","福島.jp","秋田.jp","群馬.jp","茨城.jp","長崎.jp","長野.jp","青森.jp","静岡.jp","香川.jp","高知.jp","鳥取.jp","鹿児島.jp","*.kawasaki.jp","!city.kawasaki.jp","*.kitakyushu.jp","!city.kitakyushu.jp","*.kobe.jp","!city.kobe.jp","*.nagoya.jp","!city.nagoya.jp","*.sapporo.jp","!city.sapporo.jp","*.sendai.jp","!city.sendai.jp","*.yokohama.jp","!city.yokohama.jp","aisai.aichi.jp","ama.aichi.jp","anjo.aichi.jp","asuke.aichi.jp","chiryu.aichi.jp","chita.aichi.jp","fuso.aichi.jp","gamagori.aichi.jp","handa.aichi.jp","hazu.aichi.jp","hekinan.aichi.jp","higashiura.aichi.jp","ichinomiya.aichi.jp","inazawa.aichi.jp","inuyama.aichi.jp","isshiki.aichi.jp","iwakura.aichi.jp","kanie.aichi.jp","kariya.aichi.jp","kasugai.aichi.jp","kira.aichi.jp","kiyosu.aichi.jp","komaki.aichi.jp","konan.aichi.jp","kota.aichi.jp","mihama.aichi.jp","miyoshi.aichi.jp","nishio.aichi.jp","nisshin.aichi.jp","obu.aichi.jp","oguchi.aichi.jp","oharu.aichi.jp","okazaki.aichi.jp","owariasahi.aichi.jp","seto.aichi.jp","shikatsu.aichi.jp","shinshiro.aichi.jp","shitara.aichi.jp","tahara.aichi.jp","takahama.aichi.jp","tobishima.aichi.jp","toei.aichi.jp","togo.aichi.jp","tokai.aichi.jp","tokoname.aichi.jp","toyoake.aichi.jp","toyohashi.aichi.jp","toyokawa.aichi.jp","toyone.aichi.jp","toyota.aichi.jp","tsushima.aichi.jp","yatomi.aichi.jp","akita.akita.jp","daisen.akita.jp","fujisato.akita.jp","gojome.akita.jp","hachirogata.akita.jp","happou.akita.jp","higashinaruse.akita.jp","honjo.akita.jp","honjyo.akita.jp","ikawa.akita.jp","kamikoani.akita.jp","kamioka.akita.jp","katagami.akita.jp","kazuno.akita.jp","kitaakita.akita.jp","kosaka.akita.jp","kyowa.akita.jp","misato.akita.jp","mitane.akita.jp","moriyoshi.akita.jp","nikaho.akita.jp","noshiro.akita.jp","odate.akita.jp","oga.akita.jp","ogata.akita.jp","semboku.akita.jp","yokote.akita.jp","yurihonjo.akita.jp","aomori.aomori.jp","gonohe.aomori.jp","hachinohe.aomori.jp","hashikami.aomori.jp","hiranai.aomori.jp","hirosaki.aomori.jp","itayanagi.aomori.jp","kuroishi.aomori.jp","misawa.aomori.jp","mutsu.aomori.jp","nakadomari.aomori.jp","noheji.aomori.jp","oirase.aomori.jp","owani.aomori.jp","rokunohe.aomori.jp","sannohe.aomori.jp","shichinohe.aomori.jp","shingo.aomori.jp","takko.aomori.jp","towada.aomori.jp","tsugaru.aomori.jp","tsuruta.aomori.jp","abiko.chiba.jp","asahi.chiba.jp","chonan.chiba.jp","chosei.chiba.jp","choshi.chiba.jp","chuo.chiba.jp","funabashi.chiba.jp","futtsu.chiba.jp","hanamigawa.chiba.jp","ichihara.chiba.jp","ichikawa.chiba.jp","ichinomiya.chiba.jp","inzai.chiba.jp","isumi.chiba.jp","kamagaya.chiba.jp","kamogawa.chiba.jp","kashiwa.chiba.jp","katori.chiba.jp","katsuura.chiba.jp","kimitsu.chiba.jp","kisarazu.chiba.jp","kozaki.chiba.jp","kujukuri.chiba.jp","kyonan.chiba.jp","matsudo.chiba.jp","midori.chiba.jp","mihama.chiba.jp","minamiboso.chiba.jp","mobara.chiba.jp","mutsuzawa.chiba.jp","nagara.chiba.jp","nagareyama.chiba.jp","narashino.chiba.jp","narita.chiba.jp","noda.chiba.jp","oamishirasato.chiba.jp","omigawa.chiba.jp","onjuku.chiba.jp","otaki.chiba.jp","sakae.chiba.jp","sakura.chiba.jp","shimofusa.chiba.jp","shirako.chiba.jp","shiroi.chiba.jp","shisui.chiba.jp","sodegaura.chiba.jp","sosa.chiba.jp","tako.chiba.jp","tateyama.chiba.jp","togane.chiba.jp","tohnosho.chiba.jp","tomisato.chiba.jp","urayasu.chiba.jp","yachimata.chiba.jp","yachiyo.chiba.jp","yokaichiba.chiba.jp","yokoshibahikari.chiba.jp","yotsukaido.chiba.jp","ainan.ehime.jp","honai.ehime.jp","ikata.ehime.jp","imabari.ehime.jp","iyo.ehime.jp","kamijima.ehime.jp","kihoku.ehime.jp","kumakogen.ehime.jp","masaki.ehime.jp","matsuno.ehime.jp","matsuyama.ehime.jp","namikata.ehime.jp","niihama.ehime.jp","ozu.ehime.jp","saijo.ehime.jp","seiyo.ehime.jp","shikokuchuo.ehime.jp","tobe.ehime.jp","toon.ehime.jp","uchiko.ehime.jp","uwajima.ehime.jp","yawatahama.ehime.jp","echizen.fukui.jp","eiheiji.fukui.jp","fukui.fukui.jp","ikeda.fukui.jp","katsuyama.fukui.jp","mihama.fukui.jp","minamiechizen.fukui.jp","obama.fukui.jp","ohi.fukui.jp","ono.fukui.jp","sabae.fukui.jp","sakai.fukui.jp","takahama.fukui.jp","tsuruga.fukui.jp","wakasa.fukui.jp","ashiya.fukuoka.jp","buzen.fukuoka.jp","chikugo.fukuoka.jp","chikuho.fukuoka.jp","chikujo.fukuoka.jp","chikushino.fukuoka.jp","chikuzen.fukuoka.jp","chuo.fukuoka.jp","dazaifu.fukuoka.jp","fukuchi.fukuoka.jp","hakata.fukuoka.jp","higashi.fukuoka.jp","hirokawa.fukuoka.jp","hisayama.fukuoka.jp","iizuka.fukuoka.jp","inatsuki.fukuoka.jp","kaho.fukuoka.jp","kasuga.fukuoka.jp","kasuya.fukuoka.jp","kawara.fukuoka.jp","keisen.fukuoka.jp","koga.fukuoka.jp","kurate.fukuoka.jp","kurogi.fukuoka.jp","kurume.fukuoka.jp","minami.fukuoka.jp","miyako.fukuoka.jp","miyama.fukuoka.jp","miyawaka.fukuoka.jp","mizumaki.fukuoka.jp","munakata.fukuoka.jp","nakagawa.fukuoka.jp","nakama.fukuoka.jp","nishi.fukuoka.jp","nogata.fukuoka.jp","ogori.fukuoka.jp","okagaki.fukuoka.jp","okawa.fukuoka.jp","oki.fukuoka.jp","omuta.fukuoka.jp","onga.fukuoka.jp","onojo.fukuoka.jp","oto.fukuoka.jp","saigawa.fukuoka.jp","sasaguri.fukuoka.jp","shingu.fukuoka.jp","shinyoshitomi.fukuoka.jp","shonai.fukuoka.jp","soeda.fukuoka.jp","sue.fukuoka.jp","tachiarai.fukuoka.jp","tagawa.fukuoka.jp","takata.fukuoka.jp","toho.fukuoka.jp","toyotsu.fukuoka.jp","tsuiki.fukuoka.jp","ukiha.fukuoka.jp","umi.fukuoka.jp","usui.fukuoka.jp","yamada.fukuoka.jp","yame.fukuoka.jp","yanagawa.fukuoka.jp","yukuhashi.fukuoka.jp","aizubange.fukushima.jp","aizumisato.fukushima.jp","aizuwakamatsu.fukushima.jp","asakawa.fukushima.jp","bandai.fukushima.jp","date.fukushima.jp","fukushima.fukushima.jp","furudono.fukushima.jp","futaba.fukushima.jp","hanawa.fukushima.jp","higashi.fukushima.jp","hirata.fukushima.jp","hirono.fukushima.jp","iitate.fukushima.jp","inawashiro.fukushima.jp","ishikawa.fukushima.jp","iwaki.fukushima.jp","izumizaki.fukushima.jp","kagamiishi.fukushima.jp","kaneyama.fukushima.jp","kawamata.fukushima.jp","kitakata.fukushima.jp","kitashiobara.fukushima.jp","koori.fukushima.jp","koriyama.fukushima.jp","kunimi.fukushima.jp","miharu.fukushima.jp","mishima.fukushima.jp","namie.fukushima.jp","nango.fukushima.jp","nishiaizu.fukushima.jp","nishigo.fukushima.jp","okuma.fukushima.jp","omotego.fukushima.jp","ono.fukushima.jp","otama.fukushima.jp","samegawa.fukushima.jp","shimogo.fukushima.jp","shirakawa.fukushima.jp","showa.fukushima.jp","soma.fukushima.jp","sukagawa.fukushima.jp","taishin.fukushima.jp","tamakawa.fukushima.jp","tanagura.fukushima.jp","tenei.fukushima.jp","yabuki.fukushima.jp","yamato.fukushima.jp","yamatsuri.fukushima.jp","yanaizu.fukushima.jp","yugawa.fukushima.jp","anpachi.gifu.jp","ena.gifu.jp","gifu.gifu.jp","ginan.gifu.jp","godo.gifu.jp","gujo.gifu.jp","hashima.gifu.jp","hichiso.gifu.jp","hida.gifu.jp","higashishirakawa.gifu.jp","ibigawa.gifu.jp","ikeda.gifu.jp","kakamigahara.gifu.jp","kani.gifu.jp","kasahara.gifu.jp","kasamatsu.gifu.jp","kawaue.gifu.jp","kitagata.gifu.jp","mino.gifu.jp","minokamo.gifu.jp","mitake.gifu.jp","mizunami.gifu.jp","motosu.gifu.jp","nakatsugawa.gifu.jp","ogaki.gifu.jp","sakahogi.gifu.jp","seki.gifu.jp","sekigahara.gifu.jp","shirakawa.gifu.jp","tajimi.gifu.jp","takayama.gifu.jp","tarui.gifu.jp","toki.gifu.jp","tomika.gifu.jp","wanouchi.gifu.jp","yamagata.gifu.jp","yaotsu.gifu.jp","yoro.gifu.jp","annaka.gunma.jp","chiyoda.gunma.jp","fujioka.gunma.jp","higashiagatsuma.gunma.jp","isesaki.gunma.jp","itakura.gunma.jp","kanna.gunma.jp","kanra.gunma.jp","katashina.gunma.jp","kawaba.gunma.jp","kiryu.gunma.jp","kusatsu.gunma.jp","maebashi.gunma.jp","meiwa.gunma.jp","midori.gunma.jp","minakami.gunma.jp","naganohara.gunma.jp","nakanojo.gunma.jp","nanmoku.gunma.jp","numata.gunma.jp","oizumi.gunma.jp","ora.gunma.jp","ota.gunma.jp","shibukawa.gunma.jp","shimonita.gunma.jp","shinto.gunma.jp","showa.gunma.jp","takasaki.gunma.jp","takayama.gunma.jp","tamamura.gunma.jp","tatebayashi.gunma.jp","tomioka.gunma.jp","tsukiyono.gunma.jp","tsumagoi.gunma.jp","ueno.gunma.jp","yoshioka.gunma.jp","asaminami.hiroshima.jp","daiwa.hiroshima.jp","etajima.hiroshima.jp","fuchu.hiroshima.jp","fukuyama.hiroshima.jp","hatsukaichi.hiroshima.jp","higashihiroshima.hiroshima.jp","hongo.hiroshima.jp","jinsekikogen.hiroshima.jp","kaita.hiroshima.jp","kui.hiroshima.jp","kumano.hiroshima.jp","kure.hiroshima.jp","mihara.hiroshima.jp","miyoshi.hiroshima.jp","naka.hiroshima.jp","onomichi.hiroshima.jp","osakikamijima.hiroshima.jp","otake.hiroshima.jp","saka.hiroshima.jp","sera.hiroshima.jp","seranishi.hiroshima.jp","shinichi.hiroshima.jp","shobara.hiroshima.jp","takehara.hiroshima.jp","abashiri.hokkaido.jp","abira.hokkaido.jp","aibetsu.hokkaido.jp","akabira.hokkaido.jp","akkeshi.hokkaido.jp","asahikawa.hokkaido.jp","ashibetsu.hokkaido.jp","ashoro.hokkaido.jp","assabu.hokkaido.jp","atsuma.hokkaido.jp","bibai.hokkaido.jp","biei.hokkaido.jp","bifuka.hokkaido.jp","bihoro.hokkaido.jp","biratori.hokkaido.jp","chippubetsu.hokkaido.jp","chitose.hokkaido.jp","date.hokkaido.jp","ebetsu.hokkaido.jp","embetsu.hokkaido.jp","eniwa.hokkaido.jp","erimo.hokkaido.jp","esan.hokkaido.jp","esashi.hokkaido.jp","fukagawa.hokkaido.jp","fukushima.hokkaido.jp","furano.hokkaido.jp","furubira.hokkaido.jp","haboro.hokkaido.jp","hakodate.hokkaido.jp","hamatonbetsu.hokkaido.jp","hidaka.hokkaido.jp","higashikagura.hokkaido.jp","higashikawa.hokkaido.jp","hiroo.hokkaido.jp","hokuryu.hokkaido.jp","hokuto.hokkaido.jp","honbetsu.hokkaido.jp","horokanai.hokkaido.jp","horonobe.hokkaido.jp","ikeda.hokkaido.jp","imakane.hokkaido.jp","ishikari.hokkaido.jp","iwamizawa.hokkaido.jp","iwanai.hokkaido.jp","kamifurano.hokkaido.jp","kamikawa.hokkaido.jp","kamishihoro.hokkaido.jp","kamisunagawa.hokkaido.jp","kamoenai.hokkaido.jp","kayabe.hokkaido.jp","kembuchi.hokkaido.jp","kikonai.hokkaido.jp","kimobetsu.hokkaido.jp","kitahiroshima.hokkaido.jp","kitami.hokkaido.jp","kiyosato.hokkaido.jp","koshimizu.hokkaido.jp","kunneppu.hokkaido.jp","kuriyama.hokkaido.jp","kuromatsunai.hokkaido.jp","kushiro.hokkaido.jp","kutchan.hokkaido.jp","kyowa.hokkaido.jp","mashike.hokkaido.jp","matsumae.hokkaido.jp","mikasa.hokkaido.jp","minamifurano.hokkaido.jp","mombetsu.hokkaido.jp","moseushi.hokkaido.jp","mukawa.hokkaido.jp","muroran.hokkaido.jp","naie.hokkaido.jp","nakagawa.hokkaido.jp","nakasatsunai.hokkaido.jp","nakatombetsu.hokkaido.jp","nanae.hokkaido.jp","nanporo.hokkaido.jp","nayoro.hokkaido.jp","nemuro.hokkaido.jp","niikappu.hokkaido.jp","niki.hokkaido.jp","nishiokoppe.hokkaido.jp","noboribetsu.hokkaido.jp","numata.hokkaido.jp","obihiro.hokkaido.jp","obira.hokkaido.jp","oketo.hokkaido.jp","okoppe.hokkaido.jp","otaru.hokkaido.jp","otobe.hokkaido.jp","otofuke.hokkaido.jp","otoineppu.hokkaido.jp","oumu.hokkaido.jp","ozora.hokkaido.jp","pippu.hokkaido.jp","rankoshi.hokkaido.jp","rebun.hokkaido.jp","rikubetsu.hokkaido.jp","rishiri.hokkaido.jp","rishirifuji.hokkaido.jp","saroma.hokkaido.jp","sarufutsu.hokkaido.jp","shakotan.hokkaido.jp","shari.hokkaido.jp","shibecha.hokkaido.jp","shibetsu.hokkaido.jp","shikabe.hokkaido.jp","shikaoi.hokkaido.jp","shimamaki.hokkaido.jp","shimizu.hokkaido.jp","shimokawa.hokkaido.jp","shinshinotsu.hokkaido.jp","shintoku.hokkaido.jp","shiranuka.hokkaido.jp","shiraoi.hokkaido.jp","shiriuchi.hokkaido.jp","sobetsu.hokkaido.jp","sunagawa.hokkaido.jp","taiki.hokkaido.jp","takasu.hokkaido.jp","takikawa.hokkaido.jp","takinoue.hokkaido.jp","teshikaga.hokkaido.jp","tobetsu.hokkaido.jp","tohma.hokkaido.jp","tomakomai.hokkaido.jp","tomari.hokkaido.jp","toya.hokkaido.jp","toyako.hokkaido.jp","toyotomi.hokkaido.jp","toyoura.hokkaido.jp","tsubetsu.hokkaido.jp","tsukigata.hokkaido.jp","urakawa.hokkaido.jp","urausu.hokkaido.jp","uryu.hokkaido.jp","utashinai.hokkaido.jp","wakkanai.hokkaido.jp","wassamu.hokkaido.jp","yakumo.hokkaido.jp","yoichi.hokkaido.jp","aioi.hyogo.jp","akashi.hyogo.jp","ako.hyogo.jp","amagasaki.hyogo.jp","aogaki.hyogo.jp","asago.hyogo.jp","ashiya.hyogo.jp","awaji.hyogo.jp","fukusaki.hyogo.jp","goshiki.hyogo.jp","harima.hyogo.jp","himeji.hyogo.jp","ichikawa.hyogo.jp","inagawa.hyogo.jp","itami.hyogo.jp","kakogawa.hyogo.jp","kamigori.hyogo.jp","kamikawa.hyogo.jp","kasai.hyogo.jp","kasuga.hyogo.jp","kawanishi.hyogo.jp","miki.hyogo.jp","minamiawaji.hyogo.jp","nishinomiya.hyogo.jp","nishiwaki.hyogo.jp","ono.hyogo.jp","sanda.hyogo.jp","sannan.hyogo.jp","sasayama.hyogo.jp","sayo.hyogo.jp","shingu.hyogo.jp","shinonsen.hyogo.jp","shiso.hyogo.jp","sumoto.hyogo.jp","taishi.hyogo.jp","taka.hyogo.jp","takarazuka.hyogo.jp","takasago.hyogo.jp","takino.hyogo.jp","tamba.hyogo.jp","tatsuno.hyogo.jp","toyooka.hyogo.jp","yabu.hyogo.jp","yashiro.hyogo.jp","yoka.hyogo.jp","yokawa.hyogo.jp","ami.ibaraki.jp","asahi.ibaraki.jp","bando.ibaraki.jp","chikusei.ibaraki.jp","daigo.ibaraki.jp","fujishiro.ibaraki.jp","hitachi.ibaraki.jp","hitachinaka.ibaraki.jp","hitachiomiya.ibaraki.jp","hitachiota.ibaraki.jp","ibaraki.ibaraki.jp","ina.ibaraki.jp","inashiki.ibaraki.jp","itako.ibaraki.jp","iwama.ibaraki.jp","joso.ibaraki.jp","kamisu.ibaraki.jp","kasama.ibaraki.jp","kashima.ibaraki.jp","kasumigaura.ibaraki.jp","koga.ibaraki.jp","miho.ibaraki.jp","mito.ibaraki.jp","moriya.ibaraki.jp","naka.ibaraki.jp","namegata.ibaraki.jp","oarai.ibaraki.jp","ogawa.ibaraki.jp","omitama.ibaraki.jp","ryugasaki.ibaraki.jp","sakai.ibaraki.jp","sakuragawa.ibaraki.jp","shimodate.ibaraki.jp","shimotsuma.ibaraki.jp","shirosato.ibaraki.jp","sowa.ibaraki.jp","suifu.ibaraki.jp","takahagi.ibaraki.jp","tamatsukuri.ibaraki.jp","tokai.ibaraki.jp","tomobe.ibaraki.jp","tone.ibaraki.jp","toride.ibaraki.jp","tsuchiura.ibaraki.jp","tsukuba.ibaraki.jp","uchihara.ibaraki.jp","ushiku.ibaraki.jp","yachiyo.ibaraki.jp","yamagata.ibaraki.jp","yawara.ibaraki.jp","yuki.ibaraki.jp","anamizu.ishikawa.jp","hakui.ishikawa.jp","hakusan.ishikawa.jp","kaga.ishikawa.jp","kahoku.ishikawa.jp","kanazawa.ishikawa.jp","kawakita.ishikawa.jp","komatsu.ishikawa.jp","nakanoto.ishikawa.jp","nanao.ishikawa.jp","nomi.ishikawa.jp","nonoichi.ishikawa.jp","noto.ishikawa.jp","shika.ishikawa.jp","suzu.ishikawa.jp","tsubata.ishikawa.jp","tsurugi.ishikawa.jp","uchinada.ishikawa.jp","wajima.ishikawa.jp","fudai.iwate.jp","fujisawa.iwate.jp","hanamaki.iwate.jp","hiraizumi.iwate.jp","hirono.iwate.jp","ichinohe.iwate.jp","ichinoseki.iwate.jp","iwaizumi.iwate.jp","iwate.iwate.jp","joboji.iwate.jp","kamaishi.iwate.jp","kanegasaki.iwate.jp","karumai.iwate.jp","kawai.iwate.jp","kitakami.iwate.jp","kuji.iwate.jp","kunohe.iwate.jp","kuzumaki.iwate.jp","miyako.iwate.jp","mizusawa.iwate.jp","morioka.iwate.jp","ninohe.iwate.jp","noda.iwate.jp","ofunato.iwate.jp","oshu.iwate.jp","otsuchi.iwate.jp","rikuzentakata.iwate.jp","shiwa.iwate.jp","shizukuishi.iwate.jp","sumita.iwate.jp","tanohata.iwate.jp","tono.iwate.jp","yahaba.iwate.jp","yamada.iwate.jp","ayagawa.kagawa.jp","higashikagawa.kagawa.jp","kanonji.kagawa.jp","kotohira.kagawa.jp","manno.kagawa.jp","marugame.kagawa.jp","mitoyo.kagawa.jp","naoshima.kagawa.jp","sanuki.kagawa.jp","tadotsu.kagawa.jp","takamatsu.kagawa.jp","tonosho.kagawa.jp","uchinomi.kagawa.jp","utazu.kagawa.jp","zentsuji.kagawa.jp","akune.kagoshima.jp","amami.kagoshima.jp","hioki.kagoshima.jp","isa.kagoshima.jp","isen.kagoshima.jp","izumi.kagoshima.jp","kagoshima.kagoshima.jp","kanoya.kagoshima.jp","kawanabe.kagoshima.jp","kinko.kagoshima.jp","kouyama.kagoshima.jp","makurazaki.kagoshima.jp","matsumoto.kagoshima.jp","minamitane.kagoshima.jp","nakatane.kagoshima.jp","nishinoomote.kagoshima.jp","satsumasendai.kagoshima.jp","soo.kagoshima.jp","tarumizu.kagoshima.jp","yusui.kagoshima.jp","aikawa.kanagawa.jp","atsugi.kanagawa.jp","ayase.kanagawa.jp","chigasaki.kanagawa.jp","ebina.kanagawa.jp","fujisawa.kanagawa.jp","hadano.kanagawa.jp","hakone.kanagawa.jp","hiratsuka.kanagawa.jp","isehara.kanagawa.jp","kaisei.kanagawa.jp","kamakura.kanagawa.jp","kiyokawa.kanagawa.jp","matsuda.kanagawa.jp","minamiashigara.kanagawa.jp","miura.kanagawa.jp","nakai.kanagawa.jp","ninomiya.kanagawa.jp","odawara.kanagawa.jp","oi.kanagawa.jp","oiso.kanagawa.jp","sagamihara.kanagawa.jp","samukawa.kanagawa.jp","tsukui.kanagawa.jp","yamakita.kanagawa.jp","yamato.kanagawa.jp","yokosuka.kanagawa.jp","yugawara.kanagawa.jp","zama.kanagawa.jp","zushi.kanagawa.jp","aki.kochi.jp","geisei.kochi.jp","hidaka.kochi.jp","higashitsuno.kochi.jp","ino.kochi.jp","kagami.kochi.jp","kami.kochi.jp","kitagawa.kochi.jp","kochi.kochi.jp","mihara.kochi.jp","motoyama.kochi.jp","muroto.kochi.jp","nahari.kochi.jp","nakamura.kochi.jp","nankoku.kochi.jp","nishitosa.kochi.jp","niyodogawa.kochi.jp","ochi.kochi.jp","okawa.kochi.jp","otoyo.kochi.jp","otsuki.kochi.jp","sakawa.kochi.jp","sukumo.kochi.jp","susaki.kochi.jp","tosa.kochi.jp","tosashimizu.kochi.jp","toyo.kochi.jp","tsuno.kochi.jp","umaji.kochi.jp","yasuda.kochi.jp","yusuhara.kochi.jp","amakusa.kumamoto.jp","arao.kumamoto.jp","aso.kumamoto.jp","choyo.kumamoto.jp","gyokuto.kumamoto.jp","kamiamakusa.kumamoto.jp","kikuchi.kumamoto.jp","kumamoto.kumamoto.jp","mashiki.kumamoto.jp","mifune.kumamoto.jp","minamata.kumamoto.jp","minamioguni.kumamoto.jp","nagasu.kumamoto.jp","nishihara.kumamoto.jp","oguni.kumamoto.jp","ozu.kumamoto.jp","sumoto.kumamoto.jp","takamori.kumamoto.jp","uki.kumamoto.jp","uto.kumamoto.jp","yamaga.kumamoto.jp","yamato.kumamoto.jp","yatsushiro.kumamoto.jp","ayabe.kyoto.jp","fukuchiyama.kyoto.jp","higashiyama.kyoto.jp","ide.kyoto.jp","ine.kyoto.jp","joyo.kyoto.jp","kameoka.kyoto.jp","kamo.kyoto.jp","kita.kyoto.jp","kizu.kyoto.jp","kumiyama.kyoto.jp","kyotamba.kyoto.jp","kyotanabe.kyoto.jp","kyotango.kyoto.jp","maizuru.kyoto.jp","minami.kyoto.jp","minamiyamashiro.kyoto.jp","miyazu.kyoto.jp","muko.kyoto.jp","nagaokakyo.kyoto.jp","nakagyo.kyoto.jp","nantan.kyoto.jp","oyamazaki.kyoto.jp","sakyo.kyoto.jp","seika.kyoto.jp","tanabe.kyoto.jp","uji.kyoto.jp","ujitawara.kyoto.jp","wazuka.kyoto.jp","yamashina.kyoto.jp","yawata.kyoto.jp","asahi.mie.jp","inabe.mie.jp","ise.mie.jp","kameyama.mie.jp","kawagoe.mie.jp","kiho.mie.jp","kisosaki.mie.jp","kiwa.mie.jp","komono.mie.jp","kumano.mie.jp","kuwana.mie.jp","matsusaka.mie.jp","meiwa.mie.jp","mihama.mie.jp","minamiise.mie.jp","misugi.mie.jp","miyama.mie.jp","nabari.mie.jp","shima.mie.jp","suzuka.mie.jp","tado.mie.jp","taiki.mie.jp","taki.mie.jp","tamaki.mie.jp","toba.mie.jp","tsu.mie.jp","udono.mie.jp","ureshino.mie.jp","watarai.mie.jp","yokkaichi.mie.jp","furukawa.miyagi.jp","higashimatsushima.miyagi.jp","ishinomaki.miyagi.jp","iwanuma.miyagi.jp","kakuda.miyagi.jp","kami.miyagi.jp","kawasaki.miyagi.jp","marumori.miyagi.jp","matsushima.miyagi.jp","minamisanriku.miyagi.jp","misato.miyagi.jp","murata.miyagi.jp","natori.miyagi.jp","ogawara.miyagi.jp","ohira.miyagi.jp","onagawa.miyagi.jp","osaki.miyagi.jp","rifu.miyagi.jp","semine.miyagi.jp","shibata.miyagi.jp","shichikashuku.miyagi.jp","shikama.miyagi.jp","shiogama.miyagi.jp","shiroishi.miyagi.jp","tagajo.miyagi.jp","taiwa.miyagi.jp","tome.miyagi.jp","tomiya.miyagi.jp","wakuya.miyagi.jp","watari.miyagi.jp","yamamoto.miyagi.jp","zao.miyagi.jp","aya.miyazaki.jp","ebino.miyazaki.jp","gokase.miyazaki.jp","hyuga.miyazaki.jp","kadogawa.miyazaki.jp","kawaminami.miyazaki.jp","kijo.miyazaki.jp","kitagawa.miyazaki.jp","kitakata.miyazaki.jp","kitaura.miyazaki.jp","kobayashi.miyazaki.jp","kunitomi.miyazaki.jp","kushima.miyazaki.jp","mimata.miyazaki.jp","miyakonojo.miyazaki.jp","miyazaki.miyazaki.jp","morotsuka.miyazaki.jp","nichinan.miyazaki.jp","nishimera.miyazaki.jp","nobeoka.miyazaki.jp","saito.miyazaki.jp","shiiba.miyazaki.jp","shintomi.miyazaki.jp","takaharu.miyazaki.jp","takanabe.miyazaki.jp","takazaki.miyazaki.jp","tsuno.miyazaki.jp","achi.nagano.jp","agematsu.nagano.jp","anan.nagano.jp","aoki.nagano.jp","asahi.nagano.jp","azumino.nagano.jp","chikuhoku.nagano.jp","chikuma.nagano.jp","chino.nagano.jp","fujimi.nagano.jp","hakuba.nagano.jp","hara.nagano.jp","hiraya.nagano.jp","iida.nagano.jp","iijima.nagano.jp","iiyama.nagano.jp","iizuna.nagano.jp","ikeda.nagano.jp","ikusaka.nagano.jp","ina.nagano.jp","karuizawa.nagano.jp","kawakami.nagano.jp","kiso.nagano.jp","kisofukushima.nagano.jp","kitaaiki.nagano.jp","komagane.nagano.jp","komoro.nagano.jp","matsukawa.nagano.jp","matsumoto.nagano.jp","miasa.nagano.jp","minamiaiki.nagano.jp","minamimaki.nagano.jp","minamiminowa.nagano.jp","minowa.nagano.jp","miyada.nagano.jp","miyota.nagano.jp","mochizuki.nagano.jp","nagano.nagano.jp","nagawa.nagano.jp","nagiso.nagano.jp","nakagawa.nagano.jp","nakano.nagano.jp","nozawaonsen.nagano.jp","obuse.nagano.jp","ogawa.nagano.jp","okaya.nagano.jp","omachi.nagano.jp","omi.nagano.jp","ookuwa.nagano.jp","ooshika.nagano.jp","otaki.nagano.jp","otari.nagano.jp","sakae.nagano.jp","sakaki.nagano.jp","saku.nagano.jp","sakuho.nagano.jp","shimosuwa.nagano.jp","shinanomachi.nagano.jp","shiojiri.nagano.jp","suwa.nagano.jp","suzaka.nagano.jp","takagi.nagano.jp","takamori.nagano.jp","takayama.nagano.jp","tateshina.nagano.jp","tatsuno.nagano.jp","togakushi.nagano.jp","togura.nagano.jp","tomi.nagano.jp","ueda.nagano.jp","wada.nagano.jp","yamagata.nagano.jp","yamanouchi.nagano.jp","yasaka.nagano.jp","yasuoka.nagano.jp","chijiwa.nagasaki.jp","futsu.nagasaki.jp","goto.nagasaki.jp","hasami.nagasaki.jp","hirado.nagasaki.jp","iki.nagasaki.jp","isahaya.nagasaki.jp","kawatana.nagasaki.jp","kuchinotsu.nagasaki.jp","matsuura.nagasaki.jp","nagasaki.nagasaki.jp","obama.nagasaki.jp","omura.nagasaki.jp","oseto.nagasaki.jp","saikai.nagasaki.jp","sasebo.nagasaki.jp","seihi.nagasaki.jp","shimabara.nagasaki.jp","shinkamigoto.nagasaki.jp","togitsu.nagasaki.jp","tsushima.nagasaki.jp","unzen.nagasaki.jp","ando.nara.jp","gose.nara.jp","heguri.nara.jp","higashiyoshino.nara.jp","ikaruga.nara.jp","ikoma.nara.jp","kamikitayama.nara.jp","kanmaki.nara.jp","kashiba.nara.jp","kashihara.nara.jp","katsuragi.nara.jp","kawai.nara.jp","kawakami.nara.jp","kawanishi.nara.jp","koryo.nara.jp","kurotaki.nara.jp","mitsue.nara.jp","miyake.nara.jp","nara.nara.jp","nosegawa.nara.jp","oji.nara.jp","ouda.nara.jp","oyodo.nara.jp","sakurai.nara.jp","sango.nara.jp","shimoichi.nara.jp","shimokitayama.nara.jp","shinjo.nara.jp","soni.nara.jp","takatori.nara.jp","tawaramoto.nara.jp","tenkawa.nara.jp","tenri.nara.jp","uda.nara.jp","yamatokoriyama.nara.jp","yamatotakada.nara.jp","yamazoe.nara.jp","yoshino.nara.jp","aga.niigata.jp","agano.niigata.jp","gosen.niigata.jp","itoigawa.niigata.jp","izumozaki.niigata.jp","joetsu.niigata.jp","kamo.niigata.jp","kariwa.niigata.jp","kashiwazaki.niigata.jp","minamiuonuma.niigata.jp","mitsuke.niigata.jp","muika.niigata.jp","murakami.niigata.jp","myoko.niigata.jp","nagaoka.niigata.jp","niigata.niigata.jp","ojiya.niigata.jp","omi.niigata.jp","sado.niigata.jp","sanjo.niigata.jp","seiro.niigata.jp","seirou.niigata.jp","sekikawa.niigata.jp","shibata.niigata.jp","tagami.niigata.jp","tainai.niigata.jp","tochio.niigata.jp","tokamachi.niigata.jp","tsubame.niigata.jp","tsunan.niigata.jp","uonuma.niigata.jp","yahiko.niigata.jp","yoita.niigata.jp","yuzawa.niigata.jp","beppu.oita.jp","bungoono.oita.jp","bungotakada.oita.jp","hasama.oita.jp","hiji.oita.jp","himeshima.oita.jp","hita.oita.jp","kamitsue.oita.jp","kokonoe.oita.jp","kuju.oita.jp","kunisaki.oita.jp","kusu.oita.jp","oita.oita.jp","saiki.oita.jp","taketa.oita.jp","tsukumi.oita.jp","usa.oita.jp","usuki.oita.jp","yufu.oita.jp","akaiwa.okayama.jp","asakuchi.okayama.jp","bizen.okayama.jp","hayashima.okayama.jp","ibara.okayama.jp","kagamino.okayama.jp","kasaoka.okayama.jp","kibichuo.okayama.jp","kumenan.okayama.jp","kurashiki.okayama.jp","maniwa.okayama.jp","misaki.okayama.jp","nagi.okayama.jp","niimi.okayama.jp","nishiawakura.okayama.jp","okayama.okayama.jp","satosho.okayama.jp","setouchi.okayama.jp","shinjo.okayama.jp","shoo.okayama.jp","soja.okayama.jp","takahashi.okayama.jp","tamano.okayama.jp","tsuyama.okayama.jp","wake.okayama.jp","yakage.okayama.jp","aguni.okinawa.jp","ginowan.okinawa.jp","ginoza.okinawa.jp","gushikami.okinawa.jp","haebaru.okinawa.jp","higashi.okinawa.jp","hirara.okinawa.jp","iheya.okinawa.jp","ishigaki.okinawa.jp","ishikawa.okinawa.jp","itoman.okinawa.jp","izena.okinawa.jp","kadena.okinawa.jp","kin.okinawa.jp","kitadaito.okinawa.jp","kitanakagusuku.okinawa.jp","kumejima.okinawa.jp","kunigami.okinawa.jp","minamidaito.okinawa.jp","motobu.okinawa.jp","nago.okinawa.jp","naha.okinawa.jp","nakagusuku.okinawa.jp","nakijin.okinawa.jp","nanjo.okinawa.jp","nishihara.okinawa.jp","ogimi.okinawa.jp","okinawa.okinawa.jp","onna.okinawa.jp","shimoji.okinawa.jp","taketomi.okinawa.jp","tarama.okinawa.jp","tokashiki.okinawa.jp","tomigusuku.okinawa.jp","tonaki.okinawa.jp","urasoe.okinawa.jp","uruma.okinawa.jp","yaese.okinawa.jp","yomitan.okinawa.jp","yonabaru.okinawa.jp","yonaguni.okinawa.jp","zamami.okinawa.jp","abeno.osaka.jp","chihayaakasaka.osaka.jp","chuo.osaka.jp","daito.osaka.jp","fujiidera.osaka.jp","habikino.osaka.jp","hannan.osaka.jp","higashiosaka.osaka.jp","higashisumiyoshi.osaka.jp","higashiyodogawa.osaka.jp","hirakata.osaka.jp","ibaraki.osaka.jp","ikeda.osaka.jp","izumi.osaka.jp","izumiotsu.osaka.jp","izumisano.osaka.jp","kadoma.osaka.jp","kaizuka.osaka.jp","kanan.osaka.jp","kashiwara.osaka.jp","katano.osaka.jp","kawachinagano.osaka.jp","kishiwada.osaka.jp","kita.osaka.jp","kumatori.osaka.jp","matsubara.osaka.jp","minato.osaka.jp","minoh.osaka.jp","misaki.osaka.jp","moriguchi.osaka.jp","neyagawa.osaka.jp","nishi.osaka.jp","nose.osaka.jp","osakasayama.osaka.jp","sakai.osaka.jp","sayama.osaka.jp","sennan.osaka.jp","settsu.osaka.jp","shijonawate.osaka.jp","shimamoto.osaka.jp","suita.osaka.jp","tadaoka.osaka.jp","taishi.osaka.jp","tajiri.osaka.jp","takaishi.osaka.jp","takatsuki.osaka.jp","tondabayashi.osaka.jp","toyonaka.osaka.jp","toyono.osaka.jp","yao.osaka.jp","ariake.saga.jp","arita.saga.jp","fukudomi.saga.jp","genkai.saga.jp","hamatama.saga.jp","hizen.saga.jp","imari.saga.jp","kamimine.saga.jp","kanzaki.saga.jp","karatsu.saga.jp","kashima.saga.jp","kitagata.saga.jp","kitahata.saga.jp","kiyama.saga.jp","kouhoku.saga.jp","kyuragi.saga.jp","nishiarita.saga.jp","ogi.saga.jp","omachi.saga.jp","ouchi.saga.jp","saga.saga.jp","shiroishi.saga.jp","taku.saga.jp","tara.saga.jp","tosu.saga.jp","yoshinogari.saga.jp","arakawa.saitama.jp","asaka.saitama.jp","chichibu.saitama.jp","fujimi.saitama.jp","fujimino.saitama.jp","fukaya.saitama.jp","hanno.saitama.jp","hanyu.saitama.jp","hasuda.saitama.jp","hatogaya.saitama.jp","hatoyama.saitama.jp","hidaka.saitama.jp","higashichichibu.saitama.jp","higashimatsuyama.saitama.jp","honjo.saitama.jp","ina.saitama.jp","iruma.saitama.jp","iwatsuki.saitama.jp","kamiizumi.saitama.jp","kamikawa.saitama.jp","kamisato.saitama.jp","kasukabe.saitama.jp","kawagoe.saitama.jp","kawaguchi.saitama.jp","kawajima.saitama.jp","kazo.saitama.jp","kitamoto.saitama.jp","koshigaya.saitama.jp","kounosu.saitama.jp","kuki.saitama.jp","kumagaya.saitama.jp","matsubushi.saitama.jp","minano.saitama.jp","misato.saitama.jp","miyashiro.saitama.jp","miyoshi.saitama.jp","moroyama.saitama.jp","nagatoro.saitama.jp","namegawa.saitama.jp","niiza.saitama.jp","ogano.saitama.jp","ogawa.saitama.jp","ogose.saitama.jp","okegawa.saitama.jp","omiya.saitama.jp","otaki.saitama.jp","ranzan.saitama.jp","ryokami.saitama.jp","saitama.saitama.jp","sakado.saitama.jp","satte.saitama.jp","sayama.saitama.jp","shiki.saitama.jp","shiraoka.saitama.jp","soka.saitama.jp","sugito.saitama.jp","toda.saitama.jp","tokigawa.saitama.jp","tokorozawa.saitama.jp","tsurugashima.saitama.jp","urawa.saitama.jp","warabi.saitama.jp","yashio.saitama.jp","yokoze.saitama.jp","yono.saitama.jp","yorii.saitama.jp","yoshida.saitama.jp","yoshikawa.saitama.jp","yoshimi.saitama.jp","aisho.shiga.jp","gamo.shiga.jp","higashiomi.shiga.jp","hikone.shiga.jp","koka.shiga.jp","konan.shiga.jp","kosei.shiga.jp","koto.shiga.jp","kusatsu.shiga.jp","maibara.shiga.jp","moriyama.shiga.jp","nagahama.shiga.jp","nishiazai.shiga.jp","notogawa.shiga.jp","omihachiman.shiga.jp","otsu.shiga.jp","ritto.shiga.jp","ryuoh.shiga.jp","takashima.shiga.jp","takatsuki.shiga.jp","torahime.shiga.jp","toyosato.shiga.jp","yasu.shiga.jp","akagi.shimane.jp","ama.shimane.jp","gotsu.shimane.jp","hamada.shimane.jp","higashiizumo.shimane.jp","hikawa.shimane.jp","hikimi.shimane.jp","izumo.shimane.jp","kakinoki.shimane.jp","masuda.shimane.jp","matsue.shimane.jp","misato.shimane.jp","nishinoshima.shimane.jp","ohda.shimane.jp","okinoshima.shimane.jp","okuizumo.shimane.jp","shimane.shimane.jp","tamayu.shimane.jp","tsuwano.shimane.jp","unnan.shimane.jp","yakumo.shimane.jp","yasugi.shimane.jp","yatsuka.shimane.jp","arai.shizuoka.jp","atami.shizuoka.jp","fuji.shizuoka.jp","fujieda.shizuoka.jp","fujikawa.shizuoka.jp","fujinomiya.shizuoka.jp","fukuroi.shizuoka.jp","gotemba.shizuoka.jp","haibara.shizuoka.jp","hamamatsu.shizuoka.jp","higashiizu.shizuoka.jp","ito.shizuoka.jp","iwata.shizuoka.jp","izu.shizuoka.jp","izunokuni.shizuoka.jp","kakegawa.shizuoka.jp","kannami.shizuoka.jp","kawanehon.shizuoka.jp","kawazu.shizuoka.jp","kikugawa.shizuoka.jp","kosai.shizuoka.jp","makinohara.shizuoka.jp","matsuzaki.shizuoka.jp","minamiizu.shizuoka.jp","mishima.shizuoka.jp","morimachi.shizuoka.jp","nishiizu.shizuoka.jp","numazu.shizuoka.jp","omaezaki.shizuoka.jp","shimada.shizuoka.jp","shimizu.shizuoka.jp","shimoda.shizuoka.jp","shizuoka.shizuoka.jp","susono.shizuoka.jp","yaizu.shizuoka.jp","yoshida.shizuoka.jp","ashikaga.tochigi.jp","bato.tochigi.jp","haga.tochigi.jp","ichikai.tochigi.jp","iwafune.tochigi.jp","kaminokawa.tochigi.jp","kanuma.tochigi.jp","karasuyama.tochigi.jp","kuroiso.tochigi.jp","mashiko.tochigi.jp","mibu.tochigi.jp","moka.tochigi.jp","motegi.tochigi.jp","nasu.tochigi.jp","nasushiobara.tochigi.jp","nikko.tochigi.jp","nishikata.tochigi.jp","nogi.tochigi.jp","ohira.tochigi.jp","ohtawara.tochigi.jp","oyama.tochigi.jp","sakura.tochigi.jp","sano.tochigi.jp","shimotsuke.tochigi.jp","shioya.tochigi.jp","takanezawa.tochigi.jp","tochigi.tochigi.jp","tsuga.tochigi.jp","ujiie.tochigi.jp","utsunomiya.tochigi.jp","yaita.tochigi.jp","aizumi.tokushima.jp","anan.tokushima.jp","ichiba.tokushima.jp","itano.tokushima.jp","kainan.tokushima.jp","komatsushima.tokushima.jp","matsushige.tokushima.jp","mima.tokushima.jp","minami.tokushima.jp","miyoshi.tokushima.jp","mugi.tokushima.jp","nakagawa.tokushima.jp","naruto.tokushima.jp","sanagochi.tokushima.jp","shishikui.tokushima.jp","tokushima.tokushima.jp","wajiki.tokushima.jp","adachi.tokyo.jp","akiruno.tokyo.jp","akishima.tokyo.jp","aogashima.tokyo.jp","arakawa.tokyo.jp","bunkyo.tokyo.jp","chiyoda.tokyo.jp","chofu.tokyo.jp","chuo.tokyo.jp","edogawa.tokyo.jp","fuchu.tokyo.jp","fussa.tokyo.jp","hachijo.tokyo.jp","hachioji.tokyo.jp","hamura.tokyo.jp","higashikurume.tokyo.jp","higashimurayama.tokyo.jp","higashiyamato.tokyo.jp","hino.tokyo.jp","hinode.tokyo.jp","hinohara.tokyo.jp","inagi.tokyo.jp","itabashi.tokyo.jp","katsushika.tokyo.jp","kita.tokyo.jp","kiyose.tokyo.jp","kodaira.tokyo.jp","koganei.tokyo.jp","kokubunji.tokyo.jp","komae.tokyo.jp","koto.tokyo.jp","kouzushima.tokyo.jp","kunitachi.tokyo.jp","machida.tokyo.jp","meguro.tokyo.jp","minato.tokyo.jp","mitaka.tokyo.jp","mizuho.tokyo.jp","musashimurayama.tokyo.jp","musashino.tokyo.jp","nakano.tokyo.jp","nerima.tokyo.jp","ogasawara.tokyo.jp","okutama.tokyo.jp","ome.tokyo.jp","oshima.tokyo.jp","ota.tokyo.jp","setagaya.tokyo.jp","shibuya.tokyo.jp","shinagawa.tokyo.jp","shinjuku.tokyo.jp","suginami.tokyo.jp","sumida.tokyo.jp","tachikawa.tokyo.jp","taito.tokyo.jp","tama.tokyo.jp","toshima.tokyo.jp","chizu.tottori.jp","hino.tottori.jp","kawahara.tottori.jp","koge.tottori.jp","kotoura.tottori.jp","misasa.tottori.jp","nanbu.tottori.jp","nichinan.tottori.jp","sakaiminato.tottori.jp","tottori.tottori.jp","wakasa.tottori.jp","yazu.tottori.jp","yonago.tottori.jp","asahi.toyama.jp","fuchu.toyama.jp","fukumitsu.toyama.jp","funahashi.toyama.jp","himi.toyama.jp","imizu.toyama.jp","inami.toyama.jp","johana.toyama.jp","kamiichi.toyama.jp","kurobe.toyama.jp","nakaniikawa.toyama.jp","namerikawa.toyama.jp","nanto.toyama.jp","nyuzen.toyama.jp","oyabe.toyama.jp","taira.toyama.jp","takaoka.toyama.jp","tateyama.toyama.jp","toga.toyama.jp","tonami.toyama.jp","toyama.toyama.jp","unazuki.toyama.jp","uozu.toyama.jp","yamada.toyama.jp","arida.wakayama.jp","aridagawa.wakayama.jp","gobo.wakayama.jp","hashimoto.wakayama.jp","hidaka.wakayama.jp","hirogawa.wakayama.jp","inami.wakayama.jp","iwade.wakayama.jp","kainan.wakayama.jp","kamitonda.wakayama.jp","katsuragi.wakayama.jp","kimino.wakayama.jp","kinokawa.wakayama.jp","kitayama.wakayama.jp","koya.wakayama.jp","koza.wakayama.jp","kozagawa.wakayama.jp","kudoyama.wakayama.jp","kushimoto.wakayama.jp","mihama.wakayama.jp","misato.wakayama.jp","nachikatsuura.wakayama.jp","shingu.wakayama.jp","shirahama.wakayama.jp","taiji.wakayama.jp","tanabe.wakayama.jp","wakayama.wakayama.jp","yuasa.wakayama.jp","yura.wakayama.jp","asahi.yamagata.jp","funagata.yamagata.jp","higashine.yamagata.jp","iide.yamagata.jp","kahoku.yamagata.jp","kaminoyama.yamagata.jp","kaneyama.yamagata.jp","kawanishi.yamagata.jp","mamurogawa.yamagata.jp","mikawa.yamagata.jp","murayama.yamagata.jp","nagai.yamagata.jp","nakayama.yamagata.jp","nanyo.yamagata.jp","nishikawa.yamagata.jp","obanazawa.yamagata.jp","oe.yamagata.jp","oguni.yamagata.jp","ohkura.yamagata.jp","oishida.yamagata.jp","sagae.yamagata.jp","sakata.yamagata.jp","sakegawa.yamagata.jp","shinjo.yamagata.jp","shirataka.yamagata.jp","shonai.yamagata.jp","takahata.yamagata.jp","tendo.yamagata.jp","tozawa.yamagata.jp","tsuruoka.yamagata.jp","yamagata.yamagata.jp","yamanobe.yamagata.jp","yonezawa.yamagata.jp","yuza.yamagata.jp","abu.yamaguchi.jp","hagi.yamaguchi.jp","hikari.yamaguchi.jp","hofu.yamaguchi.jp","iwakuni.yamaguchi.jp","kudamatsu.yamaguchi.jp","mitou.yamaguchi.jp","nagato.yamaguchi.jp","oshima.yamaguchi.jp","shimonoseki.yamaguchi.jp","shunan.yamaguchi.jp","tabuse.yamaguchi.jp","tokuyama.yamaguchi.jp","toyota.yamaguchi.jp","ube.yamaguchi.jp","yuu.yamaguchi.jp","chuo.yamanashi.jp","doshi.yamanashi.jp","fuefuki.yamanashi.jp","fujikawa.yamanashi.jp","fujikawaguchiko.yamanashi.jp","fujiyoshida.yamanashi.jp","hayakawa.yamanashi.jp","hokuto.yamanashi.jp","ichikawamisato.yamanashi.jp","kai.yamanashi.jp","kofu.yamanashi.jp","koshu.yamanashi.jp","kosuge.yamanashi.jp","minami-alps.yamanashi.jp","minobu.yamanashi.jp","nakamichi.yamanashi.jp","nanbu.yamanashi.jp","narusawa.yamanashi.jp","nirasaki.yamanashi.jp","nishikatsura.yamanashi.jp","oshino.yamanashi.jp","otsuki.yamanashi.jp","showa.yamanashi.jp","tabayama.yamanashi.jp","tsuru.yamanashi.jp","uenohara.yamanashi.jp","yamanakako.yamanashi.jp","yamanashi.yamanashi.jp","ke","ac.ke","co.ke","go.ke","info.ke","me.ke","mobi.ke","ne.ke","or.ke","sc.ke","kg","com.kg","edu.kg","gov.kg","mil.kg","net.kg","org.kg","*.kh","ki","biz.ki","com.ki","edu.ki","gov.ki","info.ki","net.ki","org.ki","km","ass.km","com.km","edu.km","gov.km","mil.km","nom.km","org.km","prd.km","tm.km","asso.km","coop.km","gouv.km","medecin.km","notaires.km","pharmaciens.km","presse.km","veterinaire.km","kn","edu.kn","gov.kn","net.kn","org.kn","kp","com.kp","edu.kp","gov.kp","org.kp","rep.kp","tra.kp","kr","ac.kr","co.kr","es.kr","go.kr","hs.kr","kg.kr","mil.kr","ms.kr","ne.kr","or.kr","pe.kr","re.kr","sc.kr","busan.kr","chungbuk.kr","chungnam.kr","daegu.kr","daejeon.kr","gangwon.kr","gwangju.kr","gyeongbuk.kr","gyeonggi.kr","gyeongnam.kr","incheon.kr","jeju.kr","jeonbuk.kr","jeonnam.kr","seoul.kr","ulsan.kr","kw","com.kw","edu.kw","emb.kw","gov.kw","ind.kw","net.kw","org.kw","ky","com.ky","edu.ky","net.ky","org.ky","kz","com.kz","edu.kz","gov.kz","mil.kz","net.kz","org.kz","la","com.la","edu.la","gov.la","info.la","int.la","net.la","org.la","per.la","lb","com.lb","edu.lb","gov.lb","net.lb","org.lb","lc","co.lc","com.lc","edu.lc","gov.lc","net.lc","org.lc","li","lk","ac.lk","assn.lk","com.lk","edu.lk","gov.lk","grp.lk","hotel.lk","int.lk","ltd.lk","net.lk","ngo.lk","org.lk","sch.lk","soc.lk","web.lk","lr","com.lr","edu.lr","gov.lr","net.lr","org.lr","ls","ac.ls","biz.ls","co.ls","edu.ls","gov.ls","info.ls","net.ls","org.ls","sc.ls","lt","gov.lt","lu","lv","asn.lv","com.lv","conf.lv","edu.lv","gov.lv","id.lv","mil.lv","net.lv","org.lv","ly","com.ly","edu.ly","gov.ly","id.ly","med.ly","net.ly","org.ly","plc.ly","sch.ly","ma","ac.ma","co.ma","gov.ma","net.ma","org.ma","press.ma","mc","asso.mc","tm.mc","md","me","ac.me","co.me","edu.me","gov.me","its.me","net.me","org.me","priv.me","mg","co.mg","com.mg","edu.mg","gov.mg","mil.mg","nom.mg","org.mg","prd.mg","mh","mil","mk","com.mk","edu.mk","gov.mk","inf.mk","name.mk","net.mk","org.mk","ml","com.ml","edu.ml","gouv.ml","gov.ml","net.ml","org.ml","presse.ml","*.mm","mn","edu.mn","gov.mn","org.mn","mo","com.mo","edu.mo","gov.mo","net.mo","org.mo","mobi","mp","mq","mr","gov.mr","ms","com.ms","edu.ms","gov.ms","net.ms","org.ms","mt","com.mt","edu.mt","net.mt","org.mt","mu","ac.mu","co.mu","com.mu","gov.mu","net.mu","or.mu","org.mu","museum","mv","aero.mv","biz.mv","com.mv","coop.mv","edu.mv","gov.mv","info.mv","int.mv","mil.mv","museum.mv","name.mv","net.mv","org.mv","pro.mv","mw","ac.mw","biz.mw","co.mw","com.mw","coop.mw","edu.mw","gov.mw","int.mw","net.mw","org.mw","mx","com.mx","edu.mx","gob.mx","net.mx","org.mx","my","biz.my","com.my","edu.my","gov.my","mil.my","name.my","net.my","org.my","mz","ac.mz","adv.mz","co.mz","edu.mz","gov.mz","mil.mz","net.mz","org.mz","na","alt.na","co.na","com.na","gov.na","net.na","org.na","name","nc","asso.nc","nom.nc","ne","net","nf","arts.nf","com.nf","firm.nf","info.nf","net.nf","other.nf","per.nf","rec.nf","store.nf","web.nf","ng","com.ng","edu.ng","gov.ng","i.ng","mil.ng","mobi.ng","name.ng","net.ng","org.ng","sch.ng","ni","ac.ni","biz.ni","co.ni","com.ni","edu.ni","gob.ni","in.ni","info.ni","int.ni","mil.ni","net.ni","nom.ni","org.ni","web.ni","nl","no","fhs.no","folkebibl.no","fylkesbibl.no","idrett.no","museum.no","priv.no","vgs.no","dep.no","herad.no","kommune.no","mil.no","stat.no","aa.no","ah.no","bu.no","fm.no","hl.no","hm.no","jan-mayen.no","mr.no","nl.no","nt.no","of.no","ol.no","oslo.no","rl.no","sf.no","st.no","svalbard.no","tm.no","tr.no","va.no","vf.no","gs.aa.no","gs.ah.no","gs.bu.no","gs.fm.no","gs.hl.no","gs.hm.no","gs.jan-mayen.no","gs.mr.no","gs.nl.no","gs.nt.no","gs.of.no","gs.ol.no","gs.oslo.no","gs.rl.no","gs.sf.no","gs.st.no","gs.svalbard.no","gs.tm.no","gs.tr.no","gs.va.no","gs.vf.no","akrehamn.no","åkrehamn.no","algard.no","ålgård.no","arna.no","bronnoysund.no","brønnøysund.no","brumunddal.no","bryne.no","drobak.no","drøbak.no","egersund.no","fetsund.no","floro.no","florø.no","fredrikstad.no","hokksund.no","honefoss.no","hønefoss.no","jessheim.no","jorpeland.no","jørpeland.no","kirkenes.no","kopervik.no","krokstadelva.no","langevag.no","langevåg.no","leirvik.no","mjondalen.no","mjøndalen.no","mo-i-rana.no","mosjoen.no","mosjøen.no","nesoddtangen.no","orkanger.no","osoyro.no","osøyro.no","raholt.no","råholt.no","sandnessjoen.no","sandnessjøen.no","skedsmokorset.no","slattum.no","spjelkavik.no","stathelle.no","stavern.no","stjordalshalsen.no","stjørdalshalsen.no","tananger.no","tranby.no","vossevangen.no","aarborte.no","aejrie.no","afjord.no","åfjord.no","agdenes.no","nes.akershus.no","aknoluokta.no","ákŋoluokta.no","al.no","ål.no","alaheadju.no","álaheadju.no","alesund.no","ålesund.no","alstahaug.no","alta.no","áltá.no","alvdal.no","amli.no","åmli.no","amot.no","åmot.no","andasuolo.no","andebu.no","andoy.no","andøy.no","ardal.no","årdal.no","aremark.no","arendal.no","ås.no","aseral.no","åseral.no","asker.no","askim.no","askoy.no","askøy.no","askvoll.no","asnes.no","åsnes.no","audnedaln.no","aukra.no","aure.no","aurland.no","aurskog-holand.no","aurskog-høland.no","austevoll.no","austrheim.no","averoy.no","averøy.no","badaddja.no","bådåddjå.no","bærum.no","bahcavuotna.no","báhcavuotna.no","bahccavuotna.no","báhccavuotna.no","baidar.no","báidár.no","bajddar.no","bájddar.no","balat.no","bálát.no","balestrand.no","ballangen.no","balsfjord.no","bamble.no","bardu.no","barum.no","batsfjord.no","båtsfjord.no","bearalvahki.no","bearalváhki.no","beardu.no","beiarn.no","berg.no","bergen.no","berlevag.no","berlevåg.no","bievat.no","bievát.no","bindal.no","birkenes.no","bjarkoy.no","bjarkøy.no","bjerkreim.no","bjugn.no","bodo.no","bodø.no","bokn.no","bomlo.no","bømlo.no","bremanger.no","bronnoy.no","brønnøy.no","budejju.no","nes.buskerud.no","bygland.no","bykle.no","cahcesuolo.no","čáhcesuolo.no","davvenjarga.no","davvenjárga.no","davvesiida.no","deatnu.no","dielddanuorri.no","divtasvuodna.no","divttasvuotna.no","donna.no","dønna.no","dovre.no","drammen.no","drangedal.no","dyroy.no","dyrøy.no","eid.no","eidfjord.no","eidsberg.no","eidskog.no","eidsvoll.no","eigersund.no","elverum.no","enebakk.no","engerdal.no","etne.no","etnedal.no","evenassi.no","evenášši.no","evenes.no","evje-og-hornnes.no","farsund.no","fauske.no","fedje.no","fet.no","finnoy.no","finnøy.no","fitjar.no","fjaler.no","fjell.no","fla.no","flå.no","flakstad.no","flatanger.no","flekkefjord.no","flesberg.no","flora.no","folldal.no","forde.no","førde.no","forsand.no","fosnes.no","fræna.no","frana.no","frei.no","frogn.no","froland.no","frosta.no","froya.no","frøya.no","fuoisku.no","fuossko.no","fusa.no","fyresdal.no","gaivuotna.no","gáivuotna.no","galsa.no","gálsá.no","gamvik.no","gangaviika.no","gáŋgaviika.no","gaular.no","gausdal.no","giehtavuoatna.no","gildeskal.no","gildeskål.no","giske.no","gjemnes.no","gjerdrum.no","gjerstad.no","gjesdal.no","gjovik.no","gjøvik.no","gloppen.no","gol.no","gran.no","grane.no","granvin.no","gratangen.no","grimstad.no","grong.no","grue.no","gulen.no","guovdageaidnu.no","ha.no","hå.no","habmer.no","hábmer.no","hadsel.no","hægebostad.no","hagebostad.no","halden.no","halsa.no","hamar.no","hamaroy.no","hammarfeasta.no","hámmárfeasta.no","hammerfest.no","hapmir.no","hápmir.no","haram.no","hareid.no","harstad.no","hasvik.no","hattfjelldal.no","haugesund.no","os.hedmark.no","valer.hedmark.no","våler.hedmark.no","hemne.no","hemnes.no","hemsedal.no","hitra.no","hjartdal.no","hjelmeland.no","hobol.no","hobøl.no","hof.no","hol.no","hole.no","holmestrand.no","holtalen.no","holtålen.no","os.hordaland.no","hornindal.no","horten.no","hoyanger.no","høyanger.no","hoylandet.no","høylandet.no","hurdal.no","hurum.no","hvaler.no","hyllestad.no","ibestad.no","inderoy.no","inderøy.no","iveland.no","ivgu.no","jevnaker.no","jolster.no","jølster.no","jondal.no","kafjord.no","kåfjord.no","karasjohka.no","kárášjohka.no","karasjok.no","karlsoy.no","karmoy.no","karmøy.no","kautokeino.no","klabu.no","klæbu.no","klepp.no","kongsberg.no","kongsvinger.no","kraanghke.no","kråanghke.no","kragero.no","kragerø.no","kristiansand.no","kristiansund.no","krodsherad.no","krødsherad.no","kvæfjord.no","kvænangen.no","kvafjord.no","kvalsund.no","kvam.no","kvanangen.no","kvinesdal.no","kvinnherad.no","kviteseid.no","kvitsoy.no","kvitsøy.no","laakesvuemie.no","lærdal.no","lahppi.no","láhppi.no","lardal.no","larvik.no","lavagis.no","lavangen.no","leangaviika.no","leaŋgaviika.no","lebesby.no","leikanger.no","leirfjord.no","leka.no","leksvik.no","lenvik.no","lerdal.no","lesja.no","levanger.no","lier.no","lierne.no","lillehammer.no","lillesand.no","lindas.no","lindås.no","lindesnes.no","loabat.no","loabát.no","lodingen.no","lødingen.no","lom.no","loppa.no","lorenskog.no","lørenskog.no","loten.no","løten.no","lund.no","lunner.no","luroy.no","lurøy.no","luster.no","lyngdal.no","lyngen.no","malatvuopmi.no","málatvuopmi.no","malselv.no","målselv.no","malvik.no","mandal.no","marker.no","marnardal.no","masfjorden.no","masoy.no","måsøy.no","matta-varjjat.no","mátta-várjjat.no","meland.no","meldal.no","melhus.no","meloy.no","meløy.no","meraker.no","meråker.no","midsund.no","midtre-gauldal.no","moareke.no","moåreke.no","modalen.no","modum.no","molde.no","heroy.more-og-romsdal.no","sande.more-og-romsdal.no","herøy.møre-og-romsdal.no","sande.møre-og-romsdal.no","moskenes.no","moss.no","mosvik.no","muosat.no","muosát.no","naamesjevuemie.no","nååmesjevuemie.no","nærøy.no","namdalseid.no","namsos.no","namsskogan.no","nannestad.no","naroy.no","narviika.no","narvik.no","naustdal.no","navuotna.no","návuotna.no","nedre-eiker.no","nesna.no","nesodden.no","nesseby.no","nesset.no","nissedal.no","nittedal.no","nord-aurdal.no","nord-fron.no","nord-odal.no","norddal.no","nordkapp.no","bo.nordland.no","bø.nordland.no","heroy.nordland.no","herøy.nordland.no","nordre-land.no","nordreisa.no","nore-og-uvdal.no","notodden.no","notteroy.no","nøtterøy.no","odda.no","oksnes.no","øksnes.no","omasvuotna.no","oppdal.no","oppegard.no","oppegård.no","orkdal.no","orland.no","ørland.no","orskog.no","ørskog.no","orsta.no","ørsta.no","osen.no","osteroy.no","osterøy.no","valer.ostfold.no","våler.østfold.no","ostre-toten.no","østre-toten.no","overhalla.no","ovre-eiker.no","øvre-eiker.no","oyer.no","øyer.no","oygarden.no","øygarden.no","oystre-slidre.no","øystre-slidre.no","porsanger.no","porsangu.no","porsáŋgu.no","porsgrunn.no","rade.no","råde.no","radoy.no","radøy.no","rælingen.no","rahkkeravju.no","ráhkkerávju.no","raisa.no","ráisa.no","rakkestad.no","ralingen.no","rana.no","randaberg.no","rauma.no","rendalen.no","rennebu.no","rennesoy.no","rennesøy.no","rindal.no","ringebu.no","ringerike.no","ringsaker.no","risor.no","risør.no","rissa.no","roan.no","rodoy.no","rødøy.no","rollag.no","romsa.no","romskog.no","rømskog.no","roros.no","røros.no","rost.no","røst.no","royken.no","røyken.no","royrvik.no","røyrvik.no","ruovat.no","rygge.no","salangen.no","salat.no","sálat.no","sálát.no","saltdal.no","samnanger.no","sandefjord.no","sandnes.no","sandoy.no","sandøy.no","sarpsborg.no","sauda.no","sauherad.no","sel.no","selbu.no","selje.no","seljord.no","siellak.no","sigdal.no","siljan.no","sirdal.no","skanit.no","skánit.no","skanland.no","skånland.no","skaun.no","skedsmo.no","ski.no","skien.no","skierva.no","skiervá.no","skiptvet.no","skjak.no","skjåk.no","skjervoy.no","skjervøy.no","skodje.no","smola.no","smøla.no","snaase.no","snåase.no","snasa.no","snåsa.no","snillfjord.no","snoasa.no","sogndal.no","sogne.no","søgne.no","sokndal.no","sola.no","solund.no","somna.no","sømna.no","sondre-land.no","søndre-land.no","songdalen.no","sor-aurdal.no","sør-aurdal.no","sor-fron.no","sør-fron.no","sor-odal.no","sør-odal.no","sor-varanger.no","sør-varanger.no","sorfold.no","sørfold.no","sorreisa.no","sørreisa.no","sortland.no","sorum.no","sørum.no","spydeberg.no","stange.no","stavanger.no","steigen.no","steinkjer.no","stjordal.no","stjørdal.no","stokke.no","stor-elvdal.no","stord.no","stordal.no","storfjord.no","strand.no","stranda.no","stryn.no","sula.no","suldal.no","sund.no","sunndal.no","surnadal.no","sveio.no","svelvik.no","sykkylven.no","tana.no","bo.telemark.no","bø.telemark.no","time.no","tingvoll.no","tinn.no","tjeldsund.no","tjome.no","tjøme.no","tokke.no","tolga.no","tonsberg.no","tønsberg.no","torsken.no","træna.no","trana.no","tranoy.no","tranøy.no","troandin.no","trogstad.no","trøgstad.no","tromsa.no","tromso.no","tromsø.no","trondheim.no","trysil.no","tvedestrand.no","tydal.no","tynset.no","tysfjord.no","tysnes.no","tysvær.no","tysvar.no","ullensaker.no","ullensvang.no","ulvik.no","unjarga.no","unjárga.no","utsira.no","vaapste.no","vadso.no","vadsø.no","værøy.no","vaga.no","vågå.no","vagan.no","vågan.no","vagsoy.no","vågsøy.no","vaksdal.no","valle.no","vang.no","vanylven.no","vardo.no","vardø.no","varggat.no","várggát.no","varoy.no","vefsn.no","vega.no","vegarshei.no","vegårshei.no","vennesla.no","verdal.no","verran.no","vestby.no","sande.vestfold.no","vestnes.no","vestre-slidre.no","vestre-toten.no","vestvagoy.no","vestvågøy.no","vevelstad.no","vik.no","vikna.no","vindafjord.no","voagat.no","volda.no","voss.no","*.np","nr","biz.nr","com.nr","edu.nr","gov.nr","info.nr","net.nr","org.nr","nu","nz","ac.nz","co.nz","cri.nz","geek.nz","gen.nz","govt.nz","health.nz","iwi.nz","kiwi.nz","maori.nz","māori.nz","mil.nz","net.nz","org.nz","parliament.nz","school.nz","om","co.om","com.om","edu.om","gov.om","med.om","museum.om","net.om","org.om","pro.om","onion","org","pa","abo.pa","ac.pa","com.pa","edu.pa","gob.pa","ing.pa","med.pa","net.pa","nom.pa","org.pa","sld.pa","pe","com.pe","edu.pe","gob.pe","mil.pe","net.pe","nom.pe","org.pe","pf","com.pf","edu.pf","org.pf","*.pg","ph","com.ph","edu.ph","gov.ph","i.ph","mil.ph","net.ph","ngo.ph","org.ph","pk","ac.pk","biz.pk","com.pk","edu.pk","fam.pk","gkp.pk","gob.pk","gog.pk","gok.pk","gon.pk","gop.pk","gos.pk","gov.pk","net.pk","org.pk","web.pk","pl","com.pl","net.pl","org.pl","agro.pl","aid.pl","atm.pl","auto.pl","biz.pl","edu.pl","gmina.pl","gsm.pl","info.pl","mail.pl","media.pl","miasta.pl","mil.pl","nieruchomosci.pl","nom.pl","pc.pl","powiat.pl","priv.pl","realestate.pl","rel.pl","sex.pl","shop.pl","sklep.pl","sos.pl","szkola.pl","targi.pl","tm.pl","tourism.pl","travel.pl","turystyka.pl","gov.pl","ap.gov.pl","griw.gov.pl","ic.gov.pl","is.gov.pl","kmpsp.gov.pl","konsulat.gov.pl","kppsp.gov.pl","kwp.gov.pl","kwpsp.gov.pl","mup.gov.pl","mw.gov.pl","oia.gov.pl","oirm.gov.pl","oke.gov.pl","oow.gov.pl","oschr.gov.pl","oum.gov.pl","pa.gov.pl","pinb.gov.pl","piw.gov.pl","po.gov.pl","pr.gov.pl","psp.gov.pl","psse.gov.pl","pup.gov.pl","rzgw.gov.pl","sa.gov.pl","sdn.gov.pl","sko.gov.pl","so.gov.pl","sr.gov.pl","starostwo.gov.pl","ug.gov.pl","ugim.gov.pl","um.gov.pl","umig.gov.pl","upow.gov.pl","uppo.gov.pl","us.gov.pl","uw.gov.pl","uzs.gov.pl","wif.gov.pl","wiih.gov.pl","winb.gov.pl","wios.gov.pl","witd.gov.pl","wiw.gov.pl","wkz.gov.pl","wsa.gov.pl","wskr.gov.pl","wsse.gov.pl","wuoz.gov.pl","wzmiuw.gov.pl","zp.gov.pl","zpisdn.gov.pl","augustow.pl","babia-gora.pl","bedzin.pl","beskidy.pl","bialowieza.pl","bialystok.pl","bielawa.pl","bieszczady.pl","boleslawiec.pl","bydgoszcz.pl","bytom.pl","cieszyn.pl","czeladz.pl","czest.pl","dlugoleka.pl","elblag.pl","elk.pl","glogow.pl","gniezno.pl","gorlice.pl","grajewo.pl","ilawa.pl","jaworzno.pl","jelenia-gora.pl","jgora.pl","kalisz.pl","karpacz.pl","kartuzy.pl","kaszuby.pl","katowice.pl","kazimierz-dolny.pl","kepno.pl","ketrzyn.pl","klodzko.pl","kobierzyce.pl","kolobrzeg.pl","konin.pl","konskowola.pl","kutno.pl","lapy.pl","lebork.pl","legnica.pl","lezajsk.pl","limanowa.pl","lomza.pl","lowicz.pl","lubin.pl","lukow.pl","malbork.pl","malopolska.pl","mazowsze.pl","mazury.pl","mielec.pl","mielno.pl","mragowo.pl","naklo.pl","nowaruda.pl","nysa.pl","olawa.pl","olecko.pl","olkusz.pl","olsztyn.pl","opoczno.pl","opole.pl","ostroda.pl","ostroleka.pl","ostrowiec.pl","ostrowwlkp.pl","pila.pl","pisz.pl","podhale.pl","podlasie.pl","polkowice.pl","pomorskie.pl","pomorze.pl","prochowice.pl","pruszkow.pl","przeworsk.pl","pulawy.pl","radom.pl","rawa-maz.pl","rybnik.pl","rzeszow.pl","sanok.pl","sejny.pl","skoczow.pl","slask.pl","slupsk.pl","sosnowiec.pl","stalowa-wola.pl","starachowice.pl","stargard.pl","suwalki.pl","swidnica.pl","swiebodzin.pl","swinoujscie.pl","szczecin.pl","szczytno.pl","tarnobrzeg.pl","tgory.pl","turek.pl","tychy.pl","ustka.pl","walbrzych.pl","warmia.pl","warszawa.pl","waw.pl","wegrow.pl","wielun.pl","wlocl.pl","wloclawek.pl","wodzislaw.pl","wolomin.pl","wroclaw.pl","zachpomor.pl","zagan.pl","zarow.pl","zgora.pl","zgorzelec.pl","pm","pn","co.pn","edu.pn","gov.pn","net.pn","org.pn","post","pr","biz.pr","com.pr","edu.pr","gov.pr","info.pr","isla.pr","name.pr","net.pr","org.pr","pro.pr","ac.pr","est.pr","prof.pr","pro","aaa.pro","aca.pro","acct.pro","avocat.pro","bar.pro","cpa.pro","eng.pro","jur.pro","law.pro","med.pro","recht.pro","ps","com.ps","edu.ps","gov.ps","net.ps","org.ps","plo.ps","sec.ps","pt","com.pt","edu.pt","gov.pt","int.pt","net.pt","nome.pt","org.pt","publ.pt","pw","belau.pw","co.pw","ed.pw","go.pw","or.pw","py","com.py","coop.py","edu.py","gov.py","mil.py","net.py","org.py","qa","com.qa","edu.qa","gov.qa","mil.qa","name.qa","net.qa","org.qa","sch.qa","re","asso.re","com.re","ro","arts.ro","com.ro","firm.ro","info.ro","nom.ro","nt.ro","org.ro","rec.ro","store.ro","tm.ro","www.ro","rs","ac.rs","co.rs","edu.rs","gov.rs","in.rs","org.rs","ru","rw","ac.rw","co.rw","coop.rw","gov.rw","mil.rw","net.rw","org.rw","sa","com.sa","edu.sa","gov.sa","med.sa","net.sa","org.sa","pub.sa","sch.sa","sb","com.sb","edu.sb","gov.sb","net.sb","org.sb","sc","com.sc","edu.sc","gov.sc","net.sc","org.sc","sd","com.sd","edu.sd","gov.sd","info.sd","med.sd","net.sd","org.sd","tv.sd","se","a.se","ac.se","b.se","bd.se","brand.se","c.se","d.se","e.se","f.se","fh.se","fhsk.se","fhv.se","g.se","h.se","i.se","k.se","komforb.se","kommunalforbund.se","komvux.se","l.se","lanbib.se","m.se","n.se","naturbruksgymn.se","o.se","org.se","p.se","parti.se","pp.se","press.se","r.se","s.se","t.se","tm.se","u.se","w.se","x.se","y.se","z.se","sg","com.sg","edu.sg","gov.sg","net.sg","org.sg","sh","com.sh","gov.sh","mil.sh","net.sh","org.sh","si","sj","sk","sl","com.sl","edu.sl","gov.sl","net.sl","org.sl","sm","sn","art.sn","com.sn","edu.sn","gouv.sn","org.sn","perso.sn","univ.sn","so","com.so","edu.so","gov.so","me.so","net.so","org.so","sr","ss","biz.ss","co.ss","com.ss","edu.ss","gov.ss","me.ss","net.ss","org.ss","sch.ss","st","co.st","com.st","consulado.st","edu.st","embaixada.st","mil.st","net.st","org.st","principe.st","saotome.st","store.st","su","sv","com.sv","edu.sv","gob.sv","org.sv","red.sv","sx","gov.sx","sy","com.sy","edu.sy","gov.sy","mil.sy","net.sy","org.sy","sz","ac.sz","co.sz","org.sz","tc","td","tel","tf","tg","th","ac.th","co.th","go.th","in.th","mi.th","net.th","or.th","tj","ac.tj","biz.tj","co.tj","com.tj","edu.tj","go.tj","gov.tj","int.tj","mil.tj","name.tj","net.tj","nic.tj","org.tj","test.tj","web.tj","tk","tl","gov.tl","tm","co.tm","com.tm","edu.tm","gov.tm","mil.tm","net.tm","nom.tm","org.tm","tn","com.tn","ens.tn","fin.tn","gov.tn","ind.tn","info.tn","intl.tn","mincom.tn","nat.tn","net.tn","org.tn","perso.tn","tourism.tn","to","com.to","edu.to","gov.to","mil.to","net.to","org.to","tr","av.tr","bbs.tr","bel.tr","biz.tr","com.tr","dr.tr","edu.tr","gen.tr","gov.tr","info.tr","k12.tr","kep.tr","mil.tr","name.tr","net.tr","org.tr","pol.tr","tel.tr","tsk.tr","tv.tr","web.tr","nc.tr","gov.nc.tr","tt","biz.tt","co.tt","com.tt","edu.tt","gov.tt","info.tt","mil.tt","name.tt","net.tt","org.tt","pro.tt","tv","tw","club.tw","com.tw","ebiz.tw","edu.tw","game.tw","gov.tw","idv.tw","mil.tw","net.tw","org.tw","tz","ac.tz","co.tz","go.tz","hotel.tz","info.tz","me.tz","mil.tz","mobi.tz","ne.tz","or.tz","sc.tz","tv.tz","ua","com.ua","edu.ua","gov.ua","in.ua","net.ua","org.ua","cherkassy.ua","cherkasy.ua","chernigov.ua","chernihiv.ua","chernivtsi.ua","chernovtsy.ua","ck.ua","cn.ua","cr.ua","crimea.ua","cv.ua","dn.ua","dnepropetrovsk.ua","dnipropetrovsk.ua","donetsk.ua","dp.ua","if.ua","ivano-frankivsk.ua","kh.ua","kharkiv.ua","kharkov.ua","kherson.ua","khmelnitskiy.ua","khmelnytskyi.ua","kiev.ua","kirovograd.ua","km.ua","kr.ua","kropyvnytskyi.ua","krym.ua","ks.ua","kv.ua","kyiv.ua","lg.ua","lt.ua","lugansk.ua","luhansk.ua","lutsk.ua","lv.ua","lviv.ua","mk.ua","mykolaiv.ua","nikolaev.ua","od.ua","odesa.ua","odessa.ua","pl.ua","poltava.ua","rivne.ua","rovno.ua","rv.ua","sb.ua","sebastopol.ua","sevastopol.ua","sm.ua","sumy.ua","te.ua","ternopil.ua","uz.ua","uzhgorod.ua","uzhhorod.ua","vinnica.ua","vinnytsia.ua","vn.ua","volyn.ua","yalta.ua","zakarpattia.ua","zaporizhzhe.ua","zaporizhzhia.ua","zhitomir.ua","zhytomyr.ua","zp.ua","zt.ua","ug","ac.ug","co.ug","com.ug","go.ug","ne.ug","or.ug","org.ug","sc.ug","uk","ac.uk","co.uk","gov.uk","ltd.uk","me.uk","net.uk","nhs.uk","org.uk","plc.uk","police.uk","*.sch.uk","us","dni.us","fed.us","isa.us","kids.us","nsn.us","ak.us","al.us","ar.us","as.us","az.us","ca.us","co.us","ct.us","dc.us","de.us","fl.us","ga.us","gu.us","hi.us","ia.us","id.us","il.us","in.us","ks.us","ky.us","la.us","ma.us","md.us","me.us","mi.us","mn.us","mo.us","ms.us","mt.us","nc.us","nd.us","ne.us","nh.us","nj.us","nm.us","nv.us","ny.us","oh.us","ok.us","or.us","pa.us","pr.us","ri.us","sc.us","sd.us","tn.us","tx.us","ut.us","va.us","vi.us","vt.us","wa.us","wi.us","wv.us","wy.us","k12.ak.us","k12.al.us","k12.ar.us","k12.as.us","k12.az.us","k12.ca.us","k12.co.us","k12.ct.us","k12.dc.us","k12.fl.us","k12.ga.us","k12.gu.us","k12.ia.us","k12.id.us","k12.il.us","k12.in.us","k12.ks.us","k12.ky.us","k12.la.us","k12.ma.us","k12.md.us","k12.me.us","k12.mi.us","k12.mn.us","k12.mo.us","k12.ms.us","k12.mt.us","k12.nc.us","k12.ne.us","k12.nh.us","k12.nj.us","k12.nm.us","k12.nv.us","k12.ny.us","k12.oh.us","k12.ok.us","k12.or.us","k12.pa.us","k12.pr.us","k12.sc.us","k12.tn.us","k12.tx.us","k12.ut.us","k12.va.us","k12.vi.us","k12.vt.us","k12.wa.us","k12.wi.us","cc.ak.us","lib.ak.us","cc.al.us","lib.al.us","cc.ar.us","lib.ar.us","cc.as.us","lib.as.us","cc.az.us","lib.az.us","cc.ca.us","lib.ca.us","cc.co.us","lib.co.us","cc.ct.us","lib.ct.us","cc.dc.us","lib.dc.us","cc.de.us","cc.fl.us","cc.ga.us","cc.gu.us","cc.hi.us","cc.ia.us","cc.id.us","cc.il.us","cc.in.us","cc.ks.us","cc.ky.us","cc.la.us","cc.ma.us","cc.md.us","cc.me.us","cc.mi.us","cc.mn.us","cc.mo.us","cc.ms.us","cc.mt.us","cc.nc.us","cc.nd.us","cc.ne.us","cc.nh.us","cc.nj.us","cc.nm.us","cc.nv.us","cc.ny.us","cc.oh.us","cc.ok.us","cc.or.us","cc.pa.us","cc.pr.us","cc.ri.us","cc.sc.us","cc.sd.us","cc.tn.us","cc.tx.us","cc.ut.us","cc.va.us","cc.vi.us","cc.vt.us","cc.wa.us","cc.wi.us","cc.wv.us","cc.wy.us","k12.wy.us","lib.fl.us","lib.ga.us","lib.gu.us","lib.hi.us","lib.ia.us","lib.id.us","lib.il.us","lib.in.us","lib.ks.us","lib.ky.us","lib.la.us","lib.ma.us","lib.md.us","lib.me.us","lib.mi.us","lib.mn.us","lib.mo.us","lib.ms.us","lib.mt.us","lib.nc.us","lib.nd.us","lib.ne.us","lib.nh.us","lib.nj.us","lib.nm.us","lib.nv.us","lib.ny.us","lib.oh.us","lib.ok.us","lib.or.us","lib.pa.us","lib.pr.us","lib.ri.us","lib.sc.us","lib.sd.us","lib.tn.us","lib.tx.us","lib.ut.us","lib.va.us","lib.vi.us","lib.vt.us","lib.wa.us","lib.wi.us","lib.wy.us","chtr.k12.ma.us","paroch.k12.ma.us","pvt.k12.ma.us","ann-arbor.mi.us","cog.mi.us","dst.mi.us","eaton.mi.us","gen.mi.us","mus.mi.us","tec.mi.us","washtenaw.mi.us","uy","com.uy","edu.uy","gub.uy","mil.uy","net.uy","org.uy","uz","co.uz","com.uz","net.uz","org.uz","va","vc","com.vc","edu.vc","gov.vc","mil.vc","net.vc","org.vc","ve","arts.ve","bib.ve","co.ve","com.ve","e12.ve","edu.ve","firm.ve","gob.ve","gov.ve","info.ve","int.ve","mil.ve","net.ve","nom.ve","org.ve","rar.ve","rec.ve","store.ve","tec.ve","web.ve","vg","vi","co.vi","com.vi","k12.vi","net.vi","org.vi","vn","ac.vn","ai.vn","biz.vn","com.vn","edu.vn","gov.vn","health.vn","id.vn","info.vn","int.vn","io.vn","name.vn","net.vn","org.vn","pro.vn","angiang.vn","bacgiang.vn","backan.vn","baclieu.vn","bacninh.vn","baria-vungtau.vn","bentre.vn","binhdinh.vn","binhduong.vn","binhphuoc.vn","binhthuan.vn","camau.vn","cantho.vn","caobang.vn","daklak.vn","daknong.vn","danang.vn","dienbien.vn","dongnai.vn","dongthap.vn","gialai.vn","hagiang.vn","haiduong.vn","haiphong.vn","hanam.vn","hanoi.vn","hatinh.vn","haugiang.vn","hoabinh.vn","hungyen.vn","khanhhoa.vn","kiengiang.vn","kontum.vn","laichau.vn","lamdong.vn","langson.vn","laocai.vn","longan.vn","namdinh.vn","nghean.vn","ninhbinh.vn","ninhthuan.vn","phutho.vn","phuyen.vn","quangbinh.vn","quangnam.vn","quangngai.vn","quangninh.vn","quangtri.vn","soctrang.vn","sonla.vn","tayninh.vn","thaibinh.vn","thainguyen.vn","thanhhoa.vn","thanhphohochiminh.vn","thuathienhue.vn","tiengiang.vn","travinh.vn","tuyenquang.vn","vinhlong.vn","vinhphuc.vn","yenbai.vn","vu","com.vu","edu.vu","net.vu","org.vu","wf","ws","com.ws","edu.ws","gov.ws","net.ws","org.ws","yt","امارات","հայ","বাংলা","бг","البحرين","бел","中国","中國","الجزائر","مصر","ею","ευ","موريتانيا","გე","ελ","香港","個人.香港","公司.香港","政府.香港","教育.香港","組織.香港","網絡.香港","ಭಾರತ","ଭାରତ","ভাৰত","भारतम्","भारोत","ڀارت","ഭാരതം","भारत","بارت","بھارت","భారత్","ભારત","ਭਾਰਤ","ভারত","இந்தியா","ایران","ايران","عراق","الاردن","한국","қаз","ລາວ","ලංකා","இலங்கை","المغرب","мкд","мон","澳門","澳门","مليسيا","عمان","پاکستان","پاكستان","فلسطين","срб","ак.срб","обр.срб","од.срб","орг.срб","пр.срб","упр.срб","рф","قطر","السعودية","السعودیة","السعودیۃ","السعوديه","سودان","新加坡","சிங்கப்பூர்","سورية","سوريا","ไทย","ทหาร.ไทย","ธุรกิจ.ไทย","เน็ต.ไทย","รัฐบาล.ไทย","ศึกษา.ไทย","องค์กร.ไทย","تونس","台灣","台湾","臺灣","укр","اليمن","xxx","ye","com.ye","edu.ye","gov.ye","mil.ye","net.ye","org.ye","ac.za","agric.za","alt.za","co.za","edu.za","gov.za","grondar.za","law.za","mil.za","net.za","ngo.za","nic.za","nis.za","nom.za","org.za","school.za","tm.za","web.za","zm","ac.zm","biz.zm","co.zm","com.zm","edu.zm","gov.zm","info.zm","mil.zm","net.zm","org.zm","sch.zm","zw","ac.zw","co.zw","gov.zw","mil.zw","org.zw","aaa","aarp","abb","abbott","abbvie","abc","able","abogado","abudhabi","academy","accenture","accountant","accountants","aco","actor","ads","adult","aeg","aetna","afl","africa","agakhan","agency","aig","airbus","airforce","airtel","akdn","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","aol","apartments","app","apple","aquarelle","arab","aramco","archi","army","art","arte","asda","associates","athleta","attorney","auction","audi","audible","audio","auspost","author","auto","autos","aws","axa","azure","baby","baidu","banamex","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bbc","bbt","bbva","bcg","bcn","beats","beauty","beer","bentley","berlin","best","bestbuy","bet","bharti","bible","bid","bike","bing","bingo","bio","black","blackfriday","blockbuster","blog","bloomberg","blue","bms","bmw","bnpparibas","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","bradesco","bridgestone","broadway","broker","brother","brussels","build","builders","business","buy","buzz","bzh","cab","cafe","cal","call","calvinklein","cam","camera","camp","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","cash","casino","catering","catholic","cba","cbn","cbre","center","ceo","cern","cfa","cfd","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","cipriani","circle","cisco","citadel","citi","citic","city","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","coach","codes","coffee","college","cologne","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cool","corsica","country","coupon","coupons","courses","cpa","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","cuisinella","cymru","cyou","dad","dance","data","date","dating","datsun","day","dclk","dds","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dnp","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","dunlop","dupont","durban","dvag","dvr","earth","eat","eco","edeka","education","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","ericsson","erni","esq","estate","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","flickr","flights","flir","florist","flowers","fly","foo","food","football","ford","forex","forsale","forum","foundation","fox","free","fresenius","frl","frogans","frontier","ftr","fujitsu","fun","fund","furniture","futbol","fyi","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gbiz","gdn","gea","gent","genting","george","ggee","gift","gifts","gives","giving","glass","gle","global","globo","gmail","gmbh","gmo","gmx","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","grainger","graphics","gratis","green","gripe","grocery","group","gucci","guge","guide","guitars","guru","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hiphop","hisamitsu","hitachi","hiv","hkt","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hotels","hotmail","house","how","hsbc","hughes","hyatt","hyundai","ibm","icbc","ice","icu","ieee","ifm","ikano","imamat","imdb","immo","immobilien","inc","industries","infiniti","ing","ink","institute","insurance","insure","international","intuit","investments","ipiranga","irish","ismaili","ist","istanbul","itau","itv","jaguar","java","jcb","jeep","jetzt","jewelry","jio","jll","jmp","jnj","joburg","jot","joy","jpmorgan","jprs","juegos","juniper","kaufen","kddi","kerryhotels","kerrylogistics","kerryproperties","kfh","kia","kids","kim","kindle","kitchen","kiwi","koeln","komatsu","kosher","kpmg","kpn","krd","kred","kuokgroup","kyoto","lacaixa","lamborghini","lamer","lancaster","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","link","lipsy","live","living","llc","llp","loan","loans","locker","locus","lol","london","lotte","lotto","love","lpl","lplfinancial","ltd","ltda","lundbeck","luxe","luxury","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","mattel","mba","mckinsey","med","media","meet","melbourne","meme","memorial","men","menu","merck","merckmsd","miami","microsoft","mini","mint","mit","mitsubishi","mlb","mls","mma","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","msd","mtn","mtr","music","nab","nagoya","navy","nba","nec","netbank","netflix","network","neustar","new","news","next","nextdirect","nexus","nfl","ngo","nhk","nico","nike","nikon","ninja","nissan","nissay","nokia","norton","now","nowruz","nowtv","nra","nrw","ntt","nyc","obi","observer","office","okinawa","olayan","olayangroup","ollo","omega","one","ong","onl","online","ooo","open","oracle","orange","organic","origins","osaka","otsuka","ott","ovh","page","panasonic","paris","pars","partners","parts","party","pay","pccw","pet","pfizer","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","place","play","playstation","plumbing","plus","pnc","pohl","poker","politie","porn","pramerica","praxi","press","prime","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","pub","pwc","qpon","quebec","quest","racing","radio","read","realestate","realtor","realty","recipes","red","redstone","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","ril","rio","rip","rocks","rodeo","rogers","room","rsvp","rugby","ruhr","run","rwe","ryukyu","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sbi","sbs","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scot","search","seat","secure","security","seek","select","sener","services","seven","sew","sex","sexy","sfr","shangrila","sharp","shell","shia","shiksha","shoes","shop","shopping","shouji","show","silk","sina","singles","site","ski","skin","sky","skype","sling","smart","smile","sncf","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","srl","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","sucks","supplies","supply","support","surf","surgery","suzuki","swatch","swiss","sydney","systems","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tci","tdk","team","tech","technology","temasek","tennis","teva","thd","theater","theatre","tiaa","tickets","tienda","tips","tires","tirol","tjmaxx","tjx","tkmaxx","tmall","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","trade","trading","training","travel","travelers","travelersinsurance","trust","trv","tube","tui","tunes","tushu","tvs","ubank","ubs","unicom","university","uno","uol","ups","vacations","vana","vanguard","vegas","ventures","verisign","versicherung","vet","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vodka","volvo","vote","voting","voto","voyage","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wed","wedding","weibo","weir","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","wtc","wtf","xbox","xerox","xihuan","xin","कॉम","セール","佛山","慈善","集团","在线","点看","คอม","八卦","موقع","公益","公司","香格里拉","网站","移动","我爱你","москва","католик","онлайн","сайт","联通","קום","时尚","微博","淡马锡","ファッション","орг","नेट","ストア","アマゾン","삼성","商标","商店","商城","дети","ポイント","新闻","家電","كوم","中文网","中信","娱乐","谷歌","電訊盈科","购物","クラウド","通販","网店","संगठन","餐厅","网络","ком","亚马逊","食品","飞利浦","手机","ارامكو","العليان","بازار","ابوظبي","كاثوليك","همراه","닷컴","政府","شبكة","بيتك","عرب","机构","组织机构","健康","招聘","рус","大拿","みんな","グーグル","世界","書籍","网址","닷넷","コム","天主教","游戏","vermögensberater","vermögensberatung","企业","信息","嘉里大酒店","嘉里","广东","政务","xyz","yachts","yahoo","yamaxun","yandex","yodobashi","yoga","yokohama","you","youtube","yun","zappos","zara","zero","zip","zone","zuerich","co.krd","edu.krd","art.pl","gliwice.pl","krakow.pl","poznan.pl","wroc.pl","zakopane.pl","lib.de.us","12chars.dev","12chars.it","12chars.pro","cc.ua","inf.ua","ltd.ua","611.to","a2hosted.com","cpserver.com","aaa.vodka","*.on-acorn.io","activetrail.biz","adaptable.app","adobeaemcloud.com","*.dev.adobeaemcloud.com","aem.live","hlx.live","adobeaemcloud.net","aem.page","hlx.page","hlx3.page","adobeio-static.net","adobeioruntime.net","africa.com","beep.pl","airkitapps.com","airkitapps-au.com","airkitapps.eu","aivencloud.com","akadns.net","akamai.net","akamai-staging.net","akamaiedge.net","akamaiedge-staging.net","akamaihd.net","akamaihd-staging.net","akamaiorigin.net","akamaiorigin-staging.net","akamaized.net","akamaized-staging.net","edgekey.net","edgekey-staging.net","edgesuite.net","edgesuite-staging.net","barsy.ca","*.compute.estate","*.alces.network","kasserver.com","altervista.org","alwaysdata.net","myamaze.net","execute-api.cn-north-1.amazonaws.com.cn","execute-api.cn-northwest-1.amazonaws.com.cn","execute-api.af-south-1.amazonaws.com","execute-api.ap-east-1.amazonaws.com","execute-api.ap-northeast-1.amazonaws.com","execute-api.ap-northeast-2.amazonaws.com","execute-api.ap-northeast-3.amazonaws.com","execute-api.ap-south-1.amazonaws.com","execute-api.ap-south-2.amazonaws.com","execute-api.ap-southeast-1.amazonaws.com","execute-api.ap-southeast-2.amazonaws.com","execute-api.ap-southeast-3.amazonaws.com","execute-api.ap-southeast-4.amazonaws.com","execute-api.ap-southeast-5.amazonaws.com","execute-api.ca-central-1.amazonaws.com","execute-api.ca-west-1.amazonaws.com","execute-api.eu-central-1.amazonaws.com","execute-api.eu-central-2.amazonaws.com","execute-api.eu-north-1.amazonaws.com","execute-api.eu-south-1.amazonaws.com","execute-api.eu-south-2.amazonaws.com","execute-api.eu-west-1.amazonaws.com","execute-api.eu-west-2.amazonaws.com","execute-api.eu-west-3.amazonaws.com","execute-api.il-central-1.amazonaws.com","execute-api.me-central-1.amazonaws.com","execute-api.me-south-1.amazonaws.com","execute-api.sa-east-1.amazonaws.com","execute-api.us-east-1.amazonaws.com","execute-api.us-east-2.amazonaws.com","execute-api.us-gov-east-1.amazonaws.com","execute-api.us-gov-west-1.amazonaws.com","execute-api.us-west-1.amazonaws.com","execute-api.us-west-2.amazonaws.com","cloudfront.net","auth.af-south-1.amazoncognito.com","auth.ap-east-1.amazoncognito.com","auth.ap-northeast-1.amazoncognito.com","auth.ap-northeast-2.amazoncognito.com","auth.ap-northeast-3.amazoncognito.com","auth.ap-south-1.amazoncognito.com","auth.ap-south-2.amazoncognito.com","auth.ap-southeast-1.amazoncognito.com","auth.ap-southeast-2.amazoncognito.com","auth.ap-southeast-3.amazoncognito.com","auth.ap-southeast-4.amazoncognito.com","auth.ca-central-1.amazoncognito.com","auth.ca-west-1.amazoncognito.com","auth.eu-central-1.amazoncognito.com","auth.eu-central-2.amazoncognito.com","auth.eu-north-1.amazoncognito.com","auth.eu-south-1.amazoncognito.com","auth.eu-south-2.amazoncognito.com","auth.eu-west-1.amazoncognito.com","auth.eu-west-2.amazoncognito.com","auth.eu-west-3.amazoncognito.com","auth.il-central-1.amazoncognito.com","auth.me-central-1.amazoncognito.com","auth.me-south-1.amazoncognito.com","auth.sa-east-1.amazoncognito.com","auth.us-east-1.amazoncognito.com","auth-fips.us-east-1.amazoncognito.com","auth.us-east-2.amazoncognito.com","auth-fips.us-east-2.amazoncognito.com","auth-fips.us-gov-west-1.amazoncognito.com","auth.us-west-1.amazoncognito.com","auth-fips.us-west-1.amazoncognito.com","auth.us-west-2.amazoncognito.com","auth-fips.us-west-2.amazoncognito.com","*.compute.amazonaws.com.cn","*.compute.amazonaws.com","*.compute-1.amazonaws.com","us-east-1.amazonaws.com","emrappui-prod.cn-north-1.amazonaws.com.cn","emrnotebooks-prod.cn-north-1.amazonaws.com.cn","emrstudio-prod.cn-north-1.amazonaws.com.cn","emrappui-prod.cn-northwest-1.amazonaws.com.cn","emrnotebooks-prod.cn-northwest-1.amazonaws.com.cn","emrstudio-prod.cn-northwest-1.amazonaws.com.cn","emrappui-prod.af-south-1.amazonaws.com","emrnotebooks-prod.af-south-1.amazonaws.com","emrstudio-prod.af-south-1.amazonaws.com","emrappui-prod.ap-east-1.amazonaws.com","emrnotebooks-prod.ap-east-1.amazonaws.com","emrstudio-prod.ap-east-1.amazonaws.com","emrappui-prod.ap-northeast-1.amazonaws.com","emrnotebooks-prod.ap-northeast-1.amazonaws.com","emrstudio-prod.ap-northeast-1.amazonaws.com","emrappui-prod.ap-northeast-2.amazonaws.com","emrnotebooks-prod.ap-northeast-2.amazonaws.com","emrstudio-prod.ap-northeast-2.amazonaws.com","emrappui-prod.ap-northeast-3.amazonaws.com","emrnotebooks-prod.ap-northeast-3.amazonaws.com","emrstudio-prod.ap-northeast-3.amazonaws.com","emrappui-prod.ap-south-1.amazonaws.com","emrnotebooks-prod.ap-south-1.amazonaws.com","emrstudio-prod.ap-south-1.amazonaws.com","emrappui-prod.ap-south-2.amazonaws.com","emrnotebooks-prod.ap-south-2.amazonaws.com","emrstudio-prod.ap-south-2.amazonaws.com","emrappui-prod.ap-southeast-1.amazonaws.com","emrnotebooks-prod.ap-southeast-1.amazonaws.com","emrstudio-prod.ap-southeast-1.amazonaws.com","emrappui-prod.ap-southeast-2.amazonaws.com","emrnotebooks-prod.ap-southeast-2.amazonaws.com","emrstudio-prod.ap-southeast-2.amazonaws.com","emrappui-prod.ap-southeast-3.amazonaws.com","emrnotebooks-prod.ap-southeast-3.amazonaws.com","emrstudio-prod.ap-southeast-3.amazonaws.com","emrappui-prod.ap-southeast-4.amazonaws.com","emrnotebooks-prod.ap-southeast-4.amazonaws.com","emrstudio-prod.ap-southeast-4.amazonaws.com","emrappui-prod.ca-central-1.amazonaws.com","emrnotebooks-prod.ca-central-1.amazonaws.com","emrstudio-prod.ca-central-1.amazonaws.com","emrappui-prod.ca-west-1.amazonaws.com","emrnotebooks-prod.ca-west-1.amazonaws.com","emrstudio-prod.ca-west-1.amazonaws.com","emrappui-prod.eu-central-1.amazonaws.com","emrnotebooks-prod.eu-central-1.amazonaws.com","emrstudio-prod.eu-central-1.amazonaws.com","emrappui-prod.eu-central-2.amazonaws.com","emrnotebooks-prod.eu-central-2.amazonaws.com","emrstudio-prod.eu-central-2.amazonaws.com","emrappui-prod.eu-north-1.amazonaws.com","emrnotebooks-prod.eu-north-1.amazonaws.com","emrstudio-prod.eu-north-1.amazonaws.com","emrappui-prod.eu-south-1.amazonaws.com","emrnotebooks-prod.eu-south-1.amazonaws.com","emrstudio-prod.eu-south-1.amazonaws.com","emrappui-prod.eu-south-2.amazonaws.com","emrnotebooks-prod.eu-south-2.amazonaws.com","emrstudio-prod.eu-south-2.amazonaws.com","emrappui-prod.eu-west-1.amazonaws.com","emrnotebooks-prod.eu-west-1.amazonaws.com","emrstudio-prod.eu-west-1.amazonaws.com","emrappui-prod.eu-west-2.amazonaws.com","emrnotebooks-prod.eu-west-2.amazonaws.com","emrstudio-prod.eu-west-2.amazonaws.com","emrappui-prod.eu-west-3.amazonaws.com","emrnotebooks-prod.eu-west-3.amazonaws.com","emrstudio-prod.eu-west-3.amazonaws.com","emrappui-prod.il-central-1.amazonaws.com","emrnotebooks-prod.il-central-1.amazonaws.com","emrstudio-prod.il-central-1.amazonaws.com","emrappui-prod.me-central-1.amazonaws.com","emrnotebooks-prod.me-central-1.amazonaws.com","emrstudio-prod.me-central-1.amazonaws.com","emrappui-prod.me-south-1.amazonaws.com","emrnotebooks-prod.me-south-1.amazonaws.com","emrstudio-prod.me-south-1.amazonaws.com","emrappui-prod.sa-east-1.amazonaws.com","emrnotebooks-prod.sa-east-1.amazonaws.com","emrstudio-prod.sa-east-1.amazonaws.com","emrappui-prod.us-east-1.amazonaws.com","emrnotebooks-prod.us-east-1.amazonaws.com","emrstudio-prod.us-east-1.amazonaws.com","emrappui-prod.us-east-2.amazonaws.com","emrnotebooks-prod.us-east-2.amazonaws.com","emrstudio-prod.us-east-2.amazonaws.com","emrappui-prod.us-gov-east-1.amazonaws.com","emrnotebooks-prod.us-gov-east-1.amazonaws.com","emrstudio-prod.us-gov-east-1.amazonaws.com","emrappui-prod.us-gov-west-1.amazonaws.com","emrnotebooks-prod.us-gov-west-1.amazonaws.com","emrstudio-prod.us-gov-west-1.amazonaws.com","emrappui-prod.us-west-1.amazonaws.com","emrnotebooks-prod.us-west-1.amazonaws.com","emrstudio-prod.us-west-1.amazonaws.com","emrappui-prod.us-west-2.amazonaws.com","emrnotebooks-prod.us-west-2.amazonaws.com","emrstudio-prod.us-west-2.amazonaws.com","*.cn-north-1.airflow.amazonaws.com.cn","*.cn-northwest-1.airflow.amazonaws.com.cn","*.af-south-1.airflow.amazonaws.com","*.ap-east-1.airflow.amazonaws.com","*.ap-northeast-1.airflow.amazonaws.com","*.ap-northeast-2.airflow.amazonaws.com","*.ap-northeast-3.airflow.amazonaws.com","*.ap-south-1.airflow.amazonaws.com","*.ap-south-2.airflow.amazonaws.com","*.ap-southeast-1.airflow.amazonaws.com","*.ap-southeast-2.airflow.amazonaws.com","*.ap-southeast-3.airflow.amazonaws.com","*.ap-southeast-4.airflow.amazonaws.com","*.ca-central-1.airflow.amazonaws.com","*.ca-west-1.airflow.amazonaws.com","*.eu-central-1.airflow.amazonaws.com","*.eu-central-2.airflow.amazonaws.com","*.eu-north-1.airflow.amazonaws.com","*.eu-south-1.airflow.amazonaws.com","*.eu-south-2.airflow.amazonaws.com","*.eu-west-1.airflow.amazonaws.com","*.eu-west-2.airflow.amazonaws.com","*.eu-west-3.airflow.amazonaws.com","*.il-central-1.airflow.amazonaws.com","*.me-central-1.airflow.amazonaws.com","*.me-south-1.airflow.amazonaws.com","*.sa-east-1.airflow.amazonaws.com","*.us-east-1.airflow.amazonaws.com","*.us-east-2.airflow.amazonaws.com","*.us-west-1.airflow.amazonaws.com","*.us-west-2.airflow.amazonaws.com","s3.dualstack.cn-north-1.amazonaws.com.cn","s3-accesspoint.dualstack.cn-north-1.amazonaws.com.cn","s3-website.dualstack.cn-north-1.amazonaws.com.cn","s3.cn-north-1.amazonaws.com.cn","s3-accesspoint.cn-north-1.amazonaws.com.cn","s3-deprecated.cn-north-1.amazonaws.com.cn","s3-object-lambda.cn-north-1.amazonaws.com.cn","s3-website.cn-north-1.amazonaws.com.cn","s3.dualstack.cn-northwest-1.amazonaws.com.cn","s3-accesspoint.dualstack.cn-northwest-1.amazonaws.com.cn","s3.cn-northwest-1.amazonaws.com.cn","s3-accesspoint.cn-northwest-1.amazonaws.com.cn","s3-object-lambda.cn-northwest-1.amazonaws.com.cn","s3-website.cn-northwest-1.amazonaws.com.cn","s3.dualstack.af-south-1.amazonaws.com","s3-accesspoint.dualstack.af-south-1.amazonaws.com","s3-website.dualstack.af-south-1.amazonaws.com","s3.af-south-1.amazonaws.com","s3-accesspoint.af-south-1.amazonaws.com","s3-object-lambda.af-south-1.amazonaws.com","s3-website.af-south-1.amazonaws.com","s3.dualstack.ap-east-1.amazonaws.com","s3-accesspoint.dualstack.ap-east-1.amazonaws.com","s3.ap-east-1.amazonaws.com","s3-accesspoint.ap-east-1.amazonaws.com","s3-object-lambda.ap-east-1.amazonaws.com","s3-website.ap-east-1.amazonaws.com","s3.dualstack.ap-northeast-1.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-1.amazonaws.com","s3-website.dualstack.ap-northeast-1.amazonaws.com","s3.ap-northeast-1.amazonaws.com","s3-accesspoint.ap-northeast-1.amazonaws.com","s3-object-lambda.ap-northeast-1.amazonaws.com","s3-website.ap-northeast-1.amazonaws.com","s3.dualstack.ap-northeast-2.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-2.amazonaws.com","s3-website.dualstack.ap-northeast-2.amazonaws.com","s3.ap-northeast-2.amazonaws.com","s3-accesspoint.ap-northeast-2.amazonaws.com","s3-object-lambda.ap-northeast-2.amazonaws.com","s3-website.ap-northeast-2.amazonaws.com","s3.dualstack.ap-northeast-3.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-3.amazonaws.com","s3-website.dualstack.ap-northeast-3.amazonaws.com","s3.ap-northeast-3.amazonaws.com","s3-accesspoint.ap-northeast-3.amazonaws.com","s3-object-lambda.ap-northeast-3.amazonaws.com","s3-website.ap-northeast-3.amazonaws.com","s3.dualstack.ap-south-1.amazonaws.com","s3-accesspoint.dualstack.ap-south-1.amazonaws.com","s3-website.dualstack.ap-south-1.amazonaws.com","s3.ap-south-1.amazonaws.com","s3-accesspoint.ap-south-1.amazonaws.com","s3-object-lambda.ap-south-1.amazonaws.com","s3-website.ap-south-1.amazonaws.com","s3.dualstack.ap-south-2.amazonaws.com","s3-accesspoint.dualstack.ap-south-2.amazonaws.com","s3-website.dualstack.ap-south-2.amazonaws.com","s3.ap-south-2.amazonaws.com","s3-accesspoint.ap-south-2.amazonaws.com","s3-object-lambda.ap-south-2.amazonaws.com","s3-website.ap-south-2.amazonaws.com","s3.dualstack.ap-southeast-1.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-1.amazonaws.com","s3-website.dualstack.ap-southeast-1.amazonaws.com","s3.ap-southeast-1.amazonaws.com","s3-accesspoint.ap-southeast-1.amazonaws.com","s3-object-lambda.ap-southeast-1.amazonaws.com","s3-website.ap-southeast-1.amazonaws.com","s3.dualstack.ap-southeast-2.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-2.amazonaws.com","s3-website.dualstack.ap-southeast-2.amazonaws.com","s3.ap-southeast-2.amazonaws.com","s3-accesspoint.ap-southeast-2.amazonaws.com","s3-object-lambda.ap-southeast-2.amazonaws.com","s3-website.ap-southeast-2.amazonaws.com","s3.dualstack.ap-southeast-3.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-3.amazonaws.com","s3-website.dualstack.ap-southeast-3.amazonaws.com","s3.ap-southeast-3.amazonaws.com","s3-accesspoint.ap-southeast-3.amazonaws.com","s3-object-lambda.ap-southeast-3.amazonaws.com","s3-website.ap-southeast-3.amazonaws.com","s3.dualstack.ap-southeast-4.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-4.amazonaws.com","s3-website.dualstack.ap-southeast-4.amazonaws.com","s3.ap-southeast-4.amazonaws.com","s3-accesspoint.ap-southeast-4.amazonaws.com","s3-object-lambda.ap-southeast-4.amazonaws.com","s3-website.ap-southeast-4.amazonaws.com","s3.dualstack.ap-southeast-5.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-5.amazonaws.com","s3-website.dualstack.ap-southeast-5.amazonaws.com","s3.ap-southeast-5.amazonaws.com","s3-accesspoint.ap-southeast-5.amazonaws.com","s3-deprecated.ap-southeast-5.amazonaws.com","s3-object-lambda.ap-southeast-5.amazonaws.com","s3-website.ap-southeast-5.amazonaws.com","s3.dualstack.ca-central-1.amazonaws.com","s3-accesspoint.dualstack.ca-central-1.amazonaws.com","s3-accesspoint-fips.dualstack.ca-central-1.amazonaws.com","s3-fips.dualstack.ca-central-1.amazonaws.com","s3-website.dualstack.ca-central-1.amazonaws.com","s3.ca-central-1.amazonaws.com","s3-accesspoint.ca-central-1.amazonaws.com","s3-accesspoint-fips.ca-central-1.amazonaws.com","s3-fips.ca-central-1.amazonaws.com","s3-object-lambda.ca-central-1.amazonaws.com","s3-website.ca-central-1.amazonaws.com","s3.dualstack.ca-west-1.amazonaws.com","s3-accesspoint.dualstack.ca-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.ca-west-1.amazonaws.com","s3-fips.dualstack.ca-west-1.amazonaws.com","s3-website.dualstack.ca-west-1.amazonaws.com","s3.ca-west-1.amazonaws.com","s3-accesspoint.ca-west-1.amazonaws.com","s3-accesspoint-fips.ca-west-1.amazonaws.com","s3-fips.ca-west-1.amazonaws.com","s3-object-lambda.ca-west-1.amazonaws.com","s3-website.ca-west-1.amazonaws.com","s3.dualstack.eu-central-1.amazonaws.com","s3-accesspoint.dualstack.eu-central-1.amazonaws.com","s3-website.dualstack.eu-central-1.amazonaws.com","s3.eu-central-1.amazonaws.com","s3-accesspoint.eu-central-1.amazonaws.com","s3-object-lambda.eu-central-1.amazonaws.com","s3-website.eu-central-1.amazonaws.com","s3.dualstack.eu-central-2.amazonaws.com","s3-accesspoint.dualstack.eu-central-2.amazonaws.com","s3-website.dualstack.eu-central-2.amazonaws.com","s3.eu-central-2.amazonaws.com","s3-accesspoint.eu-central-2.amazonaws.com","s3-object-lambda.eu-central-2.amazonaws.com","s3-website.eu-central-2.amazonaws.com","s3.dualstack.eu-north-1.amazonaws.com","s3-accesspoint.dualstack.eu-north-1.amazonaws.com","s3.eu-north-1.amazonaws.com","s3-accesspoint.eu-north-1.amazonaws.com","s3-object-lambda.eu-north-1.amazonaws.com","s3-website.eu-north-1.amazonaws.com","s3.dualstack.eu-south-1.amazonaws.com","s3-accesspoint.dualstack.eu-south-1.amazonaws.com","s3-website.dualstack.eu-south-1.amazonaws.com","s3.eu-south-1.amazonaws.com","s3-accesspoint.eu-south-1.amazonaws.com","s3-object-lambda.eu-south-1.amazonaws.com","s3-website.eu-south-1.amazonaws.com","s3.dualstack.eu-south-2.amazonaws.com","s3-accesspoint.dualstack.eu-south-2.amazonaws.com","s3-website.dualstack.eu-south-2.amazonaws.com","s3.eu-south-2.amazonaws.com","s3-accesspoint.eu-south-2.amazonaws.com","s3-object-lambda.eu-south-2.amazonaws.com","s3-website.eu-south-2.amazonaws.com","s3.dualstack.eu-west-1.amazonaws.com","s3-accesspoint.dualstack.eu-west-1.amazonaws.com","s3-website.dualstack.eu-west-1.amazonaws.com","s3.eu-west-1.amazonaws.com","s3-accesspoint.eu-west-1.amazonaws.com","s3-deprecated.eu-west-1.amazonaws.com","s3-object-lambda.eu-west-1.amazonaws.com","s3-website.eu-west-1.amazonaws.com","s3.dualstack.eu-west-2.amazonaws.com","s3-accesspoint.dualstack.eu-west-2.amazonaws.com","s3.eu-west-2.amazonaws.com","s3-accesspoint.eu-west-2.amazonaws.com","s3-object-lambda.eu-west-2.amazonaws.com","s3-website.eu-west-2.amazonaws.com","s3.dualstack.eu-west-3.amazonaws.com","s3-accesspoint.dualstack.eu-west-3.amazonaws.com","s3-website.dualstack.eu-west-3.amazonaws.com","s3.eu-west-3.amazonaws.com","s3-accesspoint.eu-west-3.amazonaws.com","s3-object-lambda.eu-west-3.amazonaws.com","s3-website.eu-west-3.amazonaws.com","s3.dualstack.il-central-1.amazonaws.com","s3-accesspoint.dualstack.il-central-1.amazonaws.com","s3-website.dualstack.il-central-1.amazonaws.com","s3.il-central-1.amazonaws.com","s3-accesspoint.il-central-1.amazonaws.com","s3-object-lambda.il-central-1.amazonaws.com","s3-website.il-central-1.amazonaws.com","s3.dualstack.me-central-1.amazonaws.com","s3-accesspoint.dualstack.me-central-1.amazonaws.com","s3-website.dualstack.me-central-1.amazonaws.com","s3.me-central-1.amazonaws.com","s3-accesspoint.me-central-1.amazonaws.com","s3-object-lambda.me-central-1.amazonaws.com","s3-website.me-central-1.amazonaws.com","s3.dualstack.me-south-1.amazonaws.com","s3-accesspoint.dualstack.me-south-1.amazonaws.com","s3.me-south-1.amazonaws.com","s3-accesspoint.me-south-1.amazonaws.com","s3-object-lambda.me-south-1.amazonaws.com","s3-website.me-south-1.amazonaws.com","s3.amazonaws.com","s3-1.amazonaws.com","s3-ap-east-1.amazonaws.com","s3-ap-northeast-1.amazonaws.com","s3-ap-northeast-2.amazonaws.com","s3-ap-northeast-3.amazonaws.com","s3-ap-south-1.amazonaws.com","s3-ap-southeast-1.amazonaws.com","s3-ap-southeast-2.amazonaws.com","s3-ca-central-1.amazonaws.com","s3-eu-central-1.amazonaws.com","s3-eu-north-1.amazonaws.com","s3-eu-west-1.amazonaws.com","s3-eu-west-2.amazonaws.com","s3-eu-west-3.amazonaws.com","s3-external-1.amazonaws.com","s3-fips-us-gov-east-1.amazonaws.com","s3-fips-us-gov-west-1.amazonaws.com","mrap.accesspoint.s3-global.amazonaws.com","s3-me-south-1.amazonaws.com","s3-sa-east-1.amazonaws.com","s3-us-east-2.amazonaws.com","s3-us-gov-east-1.amazonaws.com","s3-us-gov-west-1.amazonaws.com","s3-us-west-1.amazonaws.com","s3-us-west-2.amazonaws.com","s3-website-ap-northeast-1.amazonaws.com","s3-website-ap-southeast-1.amazonaws.com","s3-website-ap-southeast-2.amazonaws.com","s3-website-eu-west-1.amazonaws.com","s3-website-sa-east-1.amazonaws.com","s3-website-us-east-1.amazonaws.com","s3-website-us-gov-west-1.amazonaws.com","s3-website-us-west-1.amazonaws.com","s3-website-us-west-2.amazonaws.com","s3.dualstack.sa-east-1.amazonaws.com","s3-accesspoint.dualstack.sa-east-1.amazonaws.com","s3-website.dualstack.sa-east-1.amazonaws.com","s3.sa-east-1.amazonaws.com","s3-accesspoint.sa-east-1.amazonaws.com","s3-object-lambda.sa-east-1.amazonaws.com","s3-website.sa-east-1.amazonaws.com","s3.dualstack.us-east-1.amazonaws.com","s3-accesspoint.dualstack.us-east-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-east-1.amazonaws.com","s3-fips.dualstack.us-east-1.amazonaws.com","s3-website.dualstack.us-east-1.amazonaws.com","s3.us-east-1.amazonaws.com","s3-accesspoint.us-east-1.amazonaws.com","s3-accesspoint-fips.us-east-1.amazonaws.com","s3-deprecated.us-east-1.amazonaws.com","s3-fips.us-east-1.amazonaws.com","s3-object-lambda.us-east-1.amazonaws.com","s3-website.us-east-1.amazonaws.com","s3.dualstack.us-east-2.amazonaws.com","s3-accesspoint.dualstack.us-east-2.amazonaws.com","s3-accesspoint-fips.dualstack.us-east-2.amazonaws.com","s3-fips.dualstack.us-east-2.amazonaws.com","s3-website.dualstack.us-east-2.amazonaws.com","s3.us-east-2.amazonaws.com","s3-accesspoint.us-east-2.amazonaws.com","s3-accesspoint-fips.us-east-2.amazonaws.com","s3-deprecated.us-east-2.amazonaws.com","s3-fips.us-east-2.amazonaws.com","s3-object-lambda.us-east-2.amazonaws.com","s3-website.us-east-2.amazonaws.com","s3.dualstack.us-gov-east-1.amazonaws.com","s3-accesspoint.dualstack.us-gov-east-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-gov-east-1.amazonaws.com","s3-fips.dualstack.us-gov-east-1.amazonaws.com","s3.us-gov-east-1.amazonaws.com","s3-accesspoint.us-gov-east-1.amazonaws.com","s3-accesspoint-fips.us-gov-east-1.amazonaws.com","s3-fips.us-gov-east-1.amazonaws.com","s3-object-lambda.us-gov-east-1.amazonaws.com","s3-website.us-gov-east-1.amazonaws.com","s3.dualstack.us-gov-west-1.amazonaws.com","s3-accesspoint.dualstack.us-gov-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-gov-west-1.amazonaws.com","s3-fips.dualstack.us-gov-west-1.amazonaws.com","s3.us-gov-west-1.amazonaws.com","s3-accesspoint.us-gov-west-1.amazonaws.com","s3-accesspoint-fips.us-gov-west-1.amazonaws.com","s3-fips.us-gov-west-1.amazonaws.com","s3-object-lambda.us-gov-west-1.amazonaws.com","s3-website.us-gov-west-1.amazonaws.com","s3.dualstack.us-west-1.amazonaws.com","s3-accesspoint.dualstack.us-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-west-1.amazonaws.com","s3-fips.dualstack.us-west-1.amazonaws.com","s3-website.dualstack.us-west-1.amazonaws.com","s3.us-west-1.amazonaws.com","s3-accesspoint.us-west-1.amazonaws.com","s3-accesspoint-fips.us-west-1.amazonaws.com","s3-fips.us-west-1.amazonaws.com","s3-object-lambda.us-west-1.amazonaws.com","s3-website.us-west-1.amazonaws.com","s3.dualstack.us-west-2.amazonaws.com","s3-accesspoint.dualstack.us-west-2.amazonaws.com","s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com","s3-fips.dualstack.us-west-2.amazonaws.com","s3-website.dualstack.us-west-2.amazonaws.com","s3.us-west-2.amazonaws.com","s3-accesspoint.us-west-2.amazonaws.com","s3-accesspoint-fips.us-west-2.amazonaws.com","s3-deprecated.us-west-2.amazonaws.com","s3-fips.us-west-2.amazonaws.com","s3-object-lambda.us-west-2.amazonaws.com","s3-website.us-west-2.amazonaws.com","labeling.ap-northeast-1.sagemaker.aws","labeling.ap-northeast-2.sagemaker.aws","labeling.ap-south-1.sagemaker.aws","labeling.ap-southeast-1.sagemaker.aws","labeling.ap-southeast-2.sagemaker.aws","labeling.ca-central-1.sagemaker.aws","labeling.eu-central-1.sagemaker.aws","labeling.eu-west-1.sagemaker.aws","labeling.eu-west-2.sagemaker.aws","labeling.us-east-1.sagemaker.aws","labeling.us-east-2.sagemaker.aws","labeling.us-west-2.sagemaker.aws","notebook.af-south-1.sagemaker.aws","notebook.ap-east-1.sagemaker.aws","notebook.ap-northeast-1.sagemaker.aws","notebook.ap-northeast-2.sagemaker.aws","notebook.ap-northeast-3.sagemaker.aws","notebook.ap-south-1.sagemaker.aws","notebook.ap-south-2.sagemaker.aws","notebook.ap-southeast-1.sagemaker.aws","notebook.ap-southeast-2.sagemaker.aws","notebook.ap-southeast-3.sagemaker.aws","notebook.ap-southeast-4.sagemaker.aws","notebook.ca-central-1.sagemaker.aws","notebook-fips.ca-central-1.sagemaker.aws","notebook.ca-west-1.sagemaker.aws","notebook-fips.ca-west-1.sagemaker.aws","notebook.eu-central-1.sagemaker.aws","notebook.eu-central-2.sagemaker.aws","notebook.eu-north-1.sagemaker.aws","notebook.eu-south-1.sagemaker.aws","notebook.eu-south-2.sagemaker.aws","notebook.eu-west-1.sagemaker.aws","notebook.eu-west-2.sagemaker.aws","notebook.eu-west-3.sagemaker.aws","notebook.il-central-1.sagemaker.aws","notebook.me-central-1.sagemaker.aws","notebook.me-south-1.sagemaker.aws","notebook.sa-east-1.sagemaker.aws","notebook.us-east-1.sagemaker.aws","notebook-fips.us-east-1.sagemaker.aws","notebook.us-east-2.sagemaker.aws","notebook-fips.us-east-2.sagemaker.aws","notebook.us-gov-east-1.sagemaker.aws","notebook-fips.us-gov-east-1.sagemaker.aws","notebook.us-gov-west-1.sagemaker.aws","notebook-fips.us-gov-west-1.sagemaker.aws","notebook.us-west-1.sagemaker.aws","notebook-fips.us-west-1.sagemaker.aws","notebook.us-west-2.sagemaker.aws","notebook-fips.us-west-2.sagemaker.aws","notebook.cn-north-1.sagemaker.com.cn","notebook.cn-northwest-1.sagemaker.com.cn","studio.af-south-1.sagemaker.aws","studio.ap-east-1.sagemaker.aws","studio.ap-northeast-1.sagemaker.aws","studio.ap-northeast-2.sagemaker.aws","studio.ap-northeast-3.sagemaker.aws","studio.ap-south-1.sagemaker.aws","studio.ap-southeast-1.sagemaker.aws","studio.ap-southeast-2.sagemaker.aws","studio.ap-southeast-3.sagemaker.aws","studio.ca-central-1.sagemaker.aws","studio.eu-central-1.sagemaker.aws","studio.eu-north-1.sagemaker.aws","studio.eu-south-1.sagemaker.aws","studio.eu-south-2.sagemaker.aws","studio.eu-west-1.sagemaker.aws","studio.eu-west-2.sagemaker.aws","studio.eu-west-3.sagemaker.aws","studio.il-central-1.sagemaker.aws","studio.me-central-1.sagemaker.aws","studio.me-south-1.sagemaker.aws","studio.sa-east-1.sagemaker.aws","studio.us-east-1.sagemaker.aws","studio.us-east-2.sagemaker.aws","studio.us-gov-east-1.sagemaker.aws","studio-fips.us-gov-east-1.sagemaker.aws","studio.us-gov-west-1.sagemaker.aws","studio-fips.us-gov-west-1.sagemaker.aws","studio.us-west-1.sagemaker.aws","studio.us-west-2.sagemaker.aws","studio.cn-north-1.sagemaker.com.cn","studio.cn-northwest-1.sagemaker.com.cn","*.experiments.sagemaker.aws","analytics-gateway.ap-northeast-1.amazonaws.com","analytics-gateway.ap-northeast-2.amazonaws.com","analytics-gateway.ap-south-1.amazonaws.com","analytics-gateway.ap-southeast-1.amazonaws.com","analytics-gateway.ap-southeast-2.amazonaws.com","analytics-gateway.eu-central-1.amazonaws.com","analytics-gateway.eu-west-1.amazonaws.com","analytics-gateway.us-east-1.amazonaws.com","analytics-gateway.us-east-2.amazonaws.com","analytics-gateway.us-west-2.amazonaws.com","amplifyapp.com","*.awsapprunner.com","webview-assets.aws-cloud9.af-south-1.amazonaws.com","vfs.cloud9.af-south-1.amazonaws.com","webview-assets.cloud9.af-south-1.amazonaws.com","webview-assets.aws-cloud9.ap-east-1.amazonaws.com","vfs.cloud9.ap-east-1.amazonaws.com","webview-assets.cloud9.ap-east-1.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-1.amazonaws.com","vfs.cloud9.ap-northeast-1.amazonaws.com","webview-assets.cloud9.ap-northeast-1.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-2.amazonaws.com","vfs.cloud9.ap-northeast-2.amazonaws.com","webview-assets.cloud9.ap-northeast-2.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-3.amazonaws.com","vfs.cloud9.ap-northeast-3.amazonaws.com","webview-assets.cloud9.ap-northeast-3.amazonaws.com","webview-assets.aws-cloud9.ap-south-1.amazonaws.com","vfs.cloud9.ap-south-1.amazonaws.com","webview-assets.cloud9.ap-south-1.amazonaws.com","webview-assets.aws-cloud9.ap-southeast-1.amazonaws.com","vfs.cloud9.ap-southeast-1.amazonaws.com","webview-assets.cloud9.ap-southeast-1.amazonaws.com","webview-assets.aws-cloud9.ap-southeast-2.amazonaws.com","vfs.cloud9.ap-southeast-2.amazonaws.com","webview-assets.cloud9.ap-southeast-2.amazonaws.com","webview-assets.aws-cloud9.ca-central-1.amazonaws.com","vfs.cloud9.ca-central-1.amazonaws.com","webview-assets.cloud9.ca-central-1.amazonaws.com","webview-assets.aws-cloud9.eu-central-1.amazonaws.com","vfs.cloud9.eu-central-1.amazonaws.com","webview-assets.cloud9.eu-central-1.amazonaws.com","webview-assets.aws-cloud9.eu-north-1.amazonaws.com","vfs.cloud9.eu-north-1.amazonaws.com","webview-assets.cloud9.eu-north-1.amazonaws.com","webview-assets.aws-cloud9.eu-south-1.amazonaws.com","vfs.cloud9.eu-south-1.amazonaws.com","webview-assets.cloud9.eu-south-1.amazonaws.com","webview-assets.aws-cloud9.eu-west-1.amazonaws.com","vfs.cloud9.eu-west-1.amazonaws.com","webview-assets.cloud9.eu-west-1.amazonaws.com","webview-assets.aws-cloud9.eu-west-2.amazonaws.com","vfs.cloud9.eu-west-2.amazonaws.com","webview-assets.cloud9.eu-west-2.amazonaws.com","webview-assets.aws-cloud9.eu-west-3.amazonaws.com","vfs.cloud9.eu-west-3.amazonaws.com","webview-assets.cloud9.eu-west-3.amazonaws.com","webview-assets.aws-cloud9.il-central-1.amazonaws.com","vfs.cloud9.il-central-1.amazonaws.com","webview-assets.aws-cloud9.me-south-1.amazonaws.com","vfs.cloud9.me-south-1.amazonaws.com","webview-assets.cloud9.me-south-1.amazonaws.com","webview-assets.aws-cloud9.sa-east-1.amazonaws.com","vfs.cloud9.sa-east-1.amazonaws.com","webview-assets.cloud9.sa-east-1.amazonaws.com","webview-assets.aws-cloud9.us-east-1.amazonaws.com","vfs.cloud9.us-east-1.amazonaws.com","webview-assets.cloud9.us-east-1.amazonaws.com","webview-assets.aws-cloud9.us-east-2.amazonaws.com","vfs.cloud9.us-east-2.amazonaws.com","webview-assets.cloud9.us-east-2.amazonaws.com","webview-assets.aws-cloud9.us-west-1.amazonaws.com","vfs.cloud9.us-west-1.amazonaws.com","webview-assets.cloud9.us-west-1.amazonaws.com","webview-assets.aws-cloud9.us-west-2.amazonaws.com","vfs.cloud9.us-west-2.amazonaws.com","webview-assets.cloud9.us-west-2.amazonaws.com","awsapps.com","cn-north-1.eb.amazonaws.com.cn","cn-northwest-1.eb.amazonaws.com.cn","elasticbeanstalk.com","af-south-1.elasticbeanstalk.com","ap-east-1.elasticbeanstalk.com","ap-northeast-1.elasticbeanstalk.com","ap-northeast-2.elasticbeanstalk.com","ap-northeast-3.elasticbeanstalk.com","ap-south-1.elasticbeanstalk.com","ap-southeast-1.elasticbeanstalk.com","ap-southeast-2.elasticbeanstalk.com","ap-southeast-3.elasticbeanstalk.com","ca-central-1.elasticbeanstalk.com","eu-central-1.elasticbeanstalk.com","eu-north-1.elasticbeanstalk.com","eu-south-1.elasticbeanstalk.com","eu-west-1.elasticbeanstalk.com","eu-west-2.elasticbeanstalk.com","eu-west-3.elasticbeanstalk.com","il-central-1.elasticbeanstalk.com","me-south-1.elasticbeanstalk.com","sa-east-1.elasticbeanstalk.com","us-east-1.elasticbeanstalk.com","us-east-2.elasticbeanstalk.com","us-gov-east-1.elasticbeanstalk.com","us-gov-west-1.elasticbeanstalk.com","us-west-1.elasticbeanstalk.com","us-west-2.elasticbeanstalk.com","*.elb.amazonaws.com.cn","*.elb.amazonaws.com","awsglobalaccelerator.com","*.private.repost.aws","eero.online","eero-stage.online","apigee.io","panel.dev","siiites.com","appspacehosted.com","appspaceusercontent.com","appudo.net","on-aptible.com","f5.si","arvanedge.ir","user.aseinet.ne.jp","gv.vc","d.gv.vc","user.party.eus","pimienta.org","poivron.org","potager.org","sweetpepper.org","myasustor.com","cdn.prod.atlassian-dev.net","translated.page","myfritz.link","myfritz.net","onavstack.net","*.awdev.ca","*.advisor.ws","ecommerce-shop.pl","b-data.io","balena-devices.com","base.ec","official.ec","buyshop.jp","fashionstore.jp","handcrafted.jp","kawaiishop.jp","supersale.jp","theshop.jp","shopselect.net","base.shop","beagleboard.io","*.beget.app","pages.gay","bnr.la","bitbucket.io","blackbaudcdn.net","of.je","bluebite.io","boomla.net","boutir.com","boxfuse.io","square7.ch","bplaced.com","bplaced.de","square7.de","bplaced.net","square7.net","*.s.brave.io","shop.brendly.hr","shop.brendly.rs","browsersafetymark.io","radio.am","radio.fm","uk0.bigv.io","dh.bytemark.co.uk","vm.bytemark.co.uk","cafjs.com","canva-apps.cn","*.my.canvasite.cn","canva-apps.com","*.my.canva.site","drr.ac","uwu.ai","carrd.co","crd.co","ju.mp","api.gov.uk","cdn77-storage.com","rsc.contentproxy9.cz","r.cdn77.net","cdn77-ssl.net","c.cdn77.org","rsc.cdn77.org","ssl.origin.cdn77-secure.org","za.bz","br.com","cn.com","de.com","eu.com","jpn.com","mex.com","ru.com","sa.com","uk.com","us.com","za.com","com.de","gb.net","hu.net","jp.net","se.net","uk.net","ae.org","com.se","cx.ua","discourse.group","discourse.team","clerk.app","clerkstage.app","*.lcl.dev","*.lclstage.dev","*.stg.dev","*.stgstage.dev","cleverapps.cc","*.services.clever-cloud.com","cleverapps.io","cleverapps.tech","clickrising.net","cloudns.asia","cloudns.be","cloud-ip.biz","cloudns.biz","cloudns.cc","cloudns.ch","cloudns.cl","cloudns.club","dnsabr.com","ip-ddns.com","cloudns.cx","cloudns.eu","cloudns.in","cloudns.info","ddns-ip.net","dns-cloud.net","dns-dynamic.net","cloudns.nz","cloudns.org","ip-dynamic.org","cloudns.ph","cloudns.pro","cloudns.pw","cloudns.us","c66.me","cloud66.ws","cloud66.zone","jdevcloud.com","wpdevcloud.com","cloudaccess.host","freesite.host","cloudaccess.net","*.cloudera.site","cf-ipfs.com","cloudflare-ipfs.com","trycloudflare.com","pages.dev","r2.dev","workers.dev","cloudflare.net","cdn.cloudflare.net","cdn.cloudflareanycast.net","cdn.cloudflarecn.net","cdn.cloudflareglobal.net","cust.cloudscale.ch","objects.lpg.cloudscale.ch","objects.rma.cloudscale.ch","wnext.app","cnpy.gdn","*.otap.co","co.ca","co.com","codeberg.page","csb.app","preview.csb.app","co.nl","co.no","webhosting.be","hosting-cluster.nl","ctfcloud.net","convex.site","ac.ru","edu.ru","gov.ru","int.ru","mil.ru","test.ru","dyn.cosidns.de","dnsupdater.de","dynamisches-dns.de","internet-dns.de","l-o-g-i-n.de","dynamic-dns.info","feste-ip.net","knx-server.net","static-access.net","craft.me","realm.cz","on.crisp.email","*.cryptonomic.net","curv.dev","cfolks.pl","cyon.link","cyon.site","platform0.app","fnwk.site","folionetwork.site","biz.dk","co.dk","firm.dk","reg.dk","store.dk","dyndns.dappnode.io","builtwithdark.com","darklang.io","demo.datadetect.com","instance.datadetect.com","edgestack.me","dattolocal.com","dattorelay.com","dattoweb.com","mydatto.com","dattolocal.net","mydatto.net","ddnss.de","dyn.ddnss.de","dyndns.ddnss.de","dyn-ip24.de","dyndns1.de","home-webserver.de","dyn.home-webserver.de","myhome-server.de","ddnss.org","debian.net","definima.io","definima.net","deno.dev","deno-staging.dev","dedyn.io","deta.app","deta.dev","dfirma.pl","dkonto.pl","you2.pl","ondigitalocean.app","*.digitaloceanspaces.com","us.kg","rss.my.id","diher.solutions","discordsays.com","discordsez.com","jozi.biz","dnshome.de","online.th","shop.th","drayddns.com","shoparena.pl","dreamhosters.com","durumis.com","mydrobo.com","drud.io","drud.us","duckdns.org","dy.fi","tunk.org","dyndns.biz","for-better.biz","for-more.biz","for-some.biz","for-the.biz","selfip.biz","webhop.biz","ftpaccess.cc","game-server.cc","myphotos.cc","scrapping.cc","blogdns.com","cechire.com","dnsalias.com","dnsdojo.com","doesntexist.com","dontexist.com","doomdns.com","dyn-o-saur.com","dynalias.com","dyndns-at-home.com","dyndns-at-work.com","dyndns-blog.com","dyndns-free.com","dyndns-home.com","dyndns-ip.com","dyndns-mail.com","dyndns-office.com","dyndns-pics.com","dyndns-remote.com","dyndns-server.com","dyndns-web.com","dyndns-wiki.com","dyndns-work.com","est-a-la-maison.com","est-a-la-masion.com","est-le-patron.com","est-mon-blogueur.com","from-ak.com","from-al.com","from-ar.com","from-ca.com","from-ct.com","from-dc.com","from-de.com","from-fl.com","from-ga.com","from-hi.com","from-ia.com","from-id.com","from-il.com","from-in.com","from-ks.com","from-ky.com","from-ma.com","from-md.com","from-mi.com","from-mn.com","from-mo.com","from-ms.com","from-mt.com","from-nc.com","from-nd.com","from-ne.com","from-nh.com","from-nj.com","from-nm.com","from-nv.com","from-oh.com","from-ok.com","from-or.com","from-pa.com","from-pr.com","from-ri.com","from-sc.com","from-sd.com","from-tn.com","from-tx.com","from-ut.com","from-va.com","from-vt.com","from-wa.com","from-wi.com","from-wv.com","from-wy.com","getmyip.com","gotdns.com","hobby-site.com","homelinux.com","homeunix.com","iamallama.com","is-a-anarchist.com","is-a-blogger.com","is-a-bookkeeper.com","is-a-bulls-fan.com","is-a-caterer.com","is-a-chef.com","is-a-conservative.com","is-a-cpa.com","is-a-cubicle-slave.com","is-a-democrat.com","is-a-designer.com","is-a-doctor.com","is-a-financialadvisor.com","is-a-geek.com","is-a-green.com","is-a-guru.com","is-a-hard-worker.com","is-a-hunter.com","is-a-landscaper.com","is-a-lawyer.com","is-a-liberal.com","is-a-libertarian.com","is-a-llama.com","is-a-musician.com","is-a-nascarfan.com","is-a-nurse.com","is-a-painter.com","is-a-personaltrainer.com","is-a-photographer.com","is-a-player.com","is-a-republican.com","is-a-rockstar.com","is-a-socialist.com","is-a-student.com","is-a-teacher.com","is-a-techie.com","is-a-therapist.com","is-an-accountant.com","is-an-actor.com","is-an-actress.com","is-an-anarchist.com","is-an-artist.com","is-an-engineer.com","is-an-entertainer.com","is-certified.com","is-gone.com","is-into-anime.com","is-into-cars.com","is-into-cartoons.com","is-into-games.com","is-leet.com","is-not-certified.com","is-slick.com","is-uberleet.com","is-with-theband.com","isa-geek.com","isa-hockeynut.com","issmarterthanyou.com","likes-pie.com","likescandy.com","neat-url.com","saves-the-whales.com","selfip.com","sells-for-less.com","sells-for-u.com","servebbs.com","simple-url.com","space-to-rent.com","teaches-yoga.com","writesthisblog.com","ath.cx","fuettertdasnetz.de","isteingeek.de","istmein.de","lebtimnetz.de","leitungsen.de","traeumtgerade.de","barrel-of-knowledge.info","barrell-of-knowledge.info","dyndns.info","for-our.info","groks-the.info","groks-this.info","here-for-more.info","knowsitall.info","selfip.info","webhop.info","forgot.her.name","forgot.his.name","at-band-camp.net","blogdns.net","broke-it.net","buyshouses.net","dnsalias.net","dnsdojo.net","does-it.net","dontexist.net","dynalias.net","dynathome.net","endofinternet.net","from-az.net","from-co.net","from-la.net","from-ny.net","gets-it.net","ham-radio-op.net","homeftp.net","homeip.net","homelinux.net","homeunix.net","in-the-band.net","is-a-chef.net","is-a-geek.net","isa-geek.net","kicks-ass.net","office-on-the.net","podzone.net","scrapper-site.net","selfip.net","sells-it.net","servebbs.net","serveftp.net","thruhere.net","webhop.net","merseine.nu","mine.nu","shacknet.nu","blogdns.org","blogsite.org","boldlygoingnowhere.org","dnsalias.org","dnsdojo.org","doesntexist.org","dontexist.org","doomdns.org","dvrdns.org","dynalias.org","dyndns.org","go.dyndns.org","home.dyndns.org","endofinternet.org","endoftheinternet.org","from-me.org","game-host.org","gotdns.org","hobby-site.org","homedns.org","homeftp.org","homelinux.org","homeunix.org","is-a-bruinsfan.org","is-a-candidate.org","is-a-celticsfan.org","is-a-chef.org","is-a-geek.org","is-a-knight.org","is-a-linux-user.org","is-a-patsfan.org","is-a-soxfan.org","is-found.org","is-lost.org","is-saved.org","is-very-bad.org","is-very-evil.org","is-very-good.org","is-very-nice.org","is-very-sweet.org","isa-geek.org","kicks-ass.org","misconfused.org","podzone.org","readmyblog.org","selfip.org","sellsyourhome.org","servebbs.org","serveftp.org","servegame.org","stuff-4-sale.org","webhop.org","better-than.tv","dyndns.tv","on-the-web.tv","worse-than.tv","is-by.us","land-4-sale.us","stuff-4-sale.us","dyndns.ws","mypets.ws","ddnsfree.com","ddnsgeek.com","giize.com","gleeze.com","kozow.com","loseyourip.com","ooguy.com","theworkpc.com","casacam.net","dynu.net","accesscam.org","camdvr.org","freeddns.org","mywire.org","webredirect.org","myddns.rocks","dynv6.net","e4.cz","easypanel.app","easypanel.host","*.ewp.live","twmail.cc","twmail.net","twmail.org","mymailer.com.tw","url.tw","at.emf.camp","rt.ht","elementor.cloud","elementor.cool","en-root.fr","mytuleap.com","tuleap-partners.com","encr.app","encoreapi.com","eu.encoway.cloud","eu.org","al.eu.org","asso.eu.org","at.eu.org","au.eu.org","be.eu.org","bg.eu.org","ca.eu.org","cd.eu.org","ch.eu.org","cn.eu.org","cy.eu.org","cz.eu.org","de.eu.org","dk.eu.org","edu.eu.org","ee.eu.org","es.eu.org","fi.eu.org","fr.eu.org","gr.eu.org","hr.eu.org","hu.eu.org","ie.eu.org","il.eu.org","in.eu.org","int.eu.org","is.eu.org","it.eu.org","jp.eu.org","kr.eu.org","lt.eu.org","lu.eu.org","lv.eu.org","me.eu.org","mk.eu.org","mt.eu.org","my.eu.org","net.eu.org","ng.eu.org","nl.eu.org","no.eu.org","nz.eu.org","pl.eu.org","pt.eu.org","ro.eu.org","ru.eu.org","se.eu.org","si.eu.org","sk.eu.org","tr.eu.org","uk.eu.org","us.eu.org","eurodir.ru","eu-1.evennode.com","eu-2.evennode.com","eu-3.evennode.com","eu-4.evennode.com","us-1.evennode.com","us-2.evennode.com","us-3.evennode.com","us-4.evennode.com","relay.evervault.app","relay.evervault.dev","expo.app","staging.expo.app","onfabrica.com","ru.net","adygeya.ru","bashkiria.ru","bir.ru","cbg.ru","com.ru","dagestan.ru","grozny.ru","kalmykia.ru","kustanai.ru","marine.ru","mordovia.ru","msk.ru","mytis.ru","nalchik.ru","nov.ru","pyatigorsk.ru","spb.ru","vladikavkaz.ru","vladimir.ru","abkhazia.su","adygeya.su","aktyubinsk.su","arkhangelsk.su","armenia.su","ashgabad.su","azerbaijan.su","balashov.su","bashkiria.su","bryansk.su","bukhara.su","chimkent.su","dagestan.su","east-kazakhstan.su","exnet.su","georgia.su","grozny.su","ivanovo.su","jambyl.su","kalmykia.su","kaluga.su","karacol.su","karaganda.su","karelia.su","khakassia.su","krasnodar.su","kurgan.su","kustanai.su","lenug.su","mangyshlak.su","mordovia.su","msk.su","murmansk.su","nalchik.su","navoi.su","north-kazakhstan.su","nov.su","obninsk.su","penza.su","pokrovsk.su","sochi.su","spb.su","tashkent.su","termez.su","togliatti.su","troitsk.su","tselinograd.su","tula.su","tuva.su","vladikavkaz.su","vladimir.su","vologda.su","channelsdvr.net","u.channelsdvr.net","edgecompute.app","fastly-edge.com","fastly-terrarium.com","freetls.fastly.net","map.fastly.net","a.prod.fastly.net","global.prod.fastly.net","a.ssl.fastly.net","b.ssl.fastly.net","global.ssl.fastly.net","fastlylb.net","map.fastlylb.net","*.user.fm","fastvps-server.com","fastvps.host","myfast.host","fastvps.site","myfast.space","conn.uk","copro.uk","hosp.uk","fedorainfracloud.org","fedorapeople.org","cloud.fedoraproject.org","app.os.fedoraproject.org","app.os.stg.fedoraproject.org","mydobiss.com","fh-muenster.io","filegear.me","firebaseapp.com","fldrv.com","flutterflow.app","fly.dev","shw.io","edgeapp.net","forgeblocks.com","id.forgerock.io","framer.ai","framer.app","framercanvas.com","framer.media","framer.photos","framer.website","framer.wiki","0e.vc","freebox-os.com","freeboxos.com","fbx-os.fr","fbxos.fr","freebox-os.fr","freeboxos.fr","freedesktop.org","freemyip.com","*.frusky.de","wien.funkfeuer.at","daemon.asia","dix.asia","mydns.bz","0am.jp","0g0.jp","0j0.jp","0t0.jp","mydns.jp","pgw.jp","wjg.jp","keyword-on.net","live-on.net","server-on.net","mydns.tw","mydns.vc","*.futurecms.at","*.ex.futurecms.at","*.in.futurecms.at","futurehosting.at","futuremailing.at","*.ex.ortsinfo.at","*.kunden.ortsinfo.at","*.statics.cloud","aliases121.com","campaign.gov.uk","service.gov.uk","independent-commission.uk","independent-inquest.uk","independent-inquiry.uk","independent-panel.uk","independent-review.uk","public-inquiry.uk","royal-commission.uk","gehirn.ne.jp","usercontent.jp","gentapps.com","gentlentapis.com","lab.ms","cdn-edges.net","localcert.net","localhostcert.net","gsj.bz","githubusercontent.com","githubpreview.dev","github.io","gitlab.io","gitapp.si","gitpage.si","glitch.me","nog.community","co.ro","shop.ro","lolipop.io","angry.jp","babyblue.jp","babymilk.jp","backdrop.jp","bambina.jp","bitter.jp","blush.jp","boo.jp","boy.jp","boyfriend.jp","but.jp","candypop.jp","capoo.jp","catfood.jp","cheap.jp","chicappa.jp","chillout.jp","chips.jp","chowder.jp","chu.jp","ciao.jp","cocotte.jp","coolblog.jp","cranky.jp","cutegirl.jp","daa.jp","deca.jp","deci.jp","digick.jp","egoism.jp","fakefur.jp","fem.jp","flier.jp","floppy.jp","fool.jp","frenchkiss.jp","girlfriend.jp","girly.jp","gloomy.jp","gonna.jp","greater.jp","hacca.jp","heavy.jp","her.jp","hiho.jp","hippy.jp","holy.jp","hungry.jp","icurus.jp","itigo.jp","jellybean.jp","kikirara.jp","kill.jp","kilo.jp","kuron.jp","littlestar.jp","lolipopmc.jp","lolitapunk.jp","lomo.jp","lovepop.jp","lovesick.jp","main.jp","mods.jp","mond.jp","mongolian.jp","moo.jp","namaste.jp","nikita.jp","nobushi.jp","noor.jp","oops.jp","parallel.jp","parasite.jp","pecori.jp","peewee.jp","penne.jp","pepper.jp","perma.jp","pigboat.jp","pinoko.jp","punyu.jp","pupu.jp","pussycat.jp","pya.jp","raindrop.jp","readymade.jp","sadist.jp","schoolbus.jp","secret.jp","staba.jp","stripper.jp","sub.jp","sunnyday.jp","thick.jp","tonkotsu.jp","under.jp","upper.jp","velvet.jp","verse.jp","versus.jp","vivian.jp","watson.jp","weblike.jp","whitesnow.jp","zombie.jp","heteml.net","graphic.design","goip.de","blogspot.ae","blogspot.al","blogspot.am","*.hosted.app","*.run.app","web.app","blogspot.com.ar","blogspot.co.at","blogspot.com.au","blogspot.ba","blogspot.be","blogspot.bg","blogspot.bj","blogspot.com.br","blogspot.com.by","blogspot.ca","blogspot.cf","blogspot.ch","blogspot.cl","blogspot.com.co","*.0emm.com","appspot.com","*.r.appspot.com","blogspot.com","codespot.com","googleapis.com","googlecode.com","pagespeedmobilizer.com","withgoogle.com","withyoutube.com","blogspot.cv","blogspot.com.cy","blogspot.cz","blogspot.de","*.gateway.dev","blogspot.dk","blogspot.com.ee","blogspot.com.eg","blogspot.com.es","blogspot.fi","blogspot.fr","cloud.goog","translate.goog","*.usercontent.goog","blogspot.gr","blogspot.hk","blogspot.hr","blogspot.hu","blogspot.co.id","blogspot.ie","blogspot.co.il","blogspot.in","blogspot.is","blogspot.it","blogspot.jp","blogspot.co.ke","blogspot.kr","blogspot.li","blogspot.lt","blogspot.lu","blogspot.md","blogspot.mk","blogspot.com.mt","blogspot.mx","blogspot.my","cloudfunctions.net","blogspot.com.ng","blogspot.nl","blogspot.no","blogspot.co.nz","blogspot.pe","blogspot.pt","blogspot.qa","blogspot.re","blogspot.ro","blogspot.rs","blogspot.ru","blogspot.se","blogspot.sg","blogspot.si","blogspot.sk","blogspot.sn","blogspot.td","blogspot.com.tr","blogspot.tw","blogspot.ug","blogspot.co.uk","blogspot.com.uy","blogspot.vn","blogspot.co.za","goupile.fr","pymnt.uk","cloudapps.digital","london.cloudapps.digital","gov.nl","grafana-dev.net","grayjayleagues.com","günstigbestellen.de","günstigliefern.de","fin.ci","free.hr","caa.li","ua.rs","conf.se","häkkinen.fi","hrsn.dev","hashbang.sh","hasura.app","hasura-app.io","hatenablog.com","hatenadiary.com","hateblo.jp","hatenablog.jp","hatenadiary.jp","hatenadiary.org","pages.it.hs-heilbronn.de","pages-research.it.hs-heilbronn.de","heiyu.space","helioho.st","heliohost.us","hepforge.org","herokuapp.com","herokussl.com","heyflow.page","heyflow.site","ravendb.cloud","ravendb.community","development.run","ravendb.run","homesklep.pl","*.kin.one","*.id.pub","*.kin.pub","secaas.hk","hoplix.shop","orx.biz","biz.gl","biz.ng","co.biz.ng","dl.biz.ng","go.biz.ng","lg.biz.ng","on.biz.ng","col.ng","firm.ng","gen.ng","ltd.ng","ngo.ng","plc.ng","ie.ua","hostyhosting.io","hf.space","static.hf.space","hypernode.io","iobb.net","co.cz","*.moonscale.io","moonscale.net","gr.com","iki.fi","ibxos.it","iliadboxos.it","smushcdn.com","wphostedmail.com","wpmucdn.com","tempurl.host","wpmudev.host","dyn-berlin.de","in-berlin.de","in-brb.de","in-butter.de","in-dsl.de","in-vpn.de","in-dsl.net","in-vpn.net","in-dsl.org","in-vpn.org","biz.at","info.at","info.cx","ac.leg.br","al.leg.br","am.leg.br","ap.leg.br","ba.leg.br","ce.leg.br","df.leg.br","es.leg.br","go.leg.br","ma.leg.br","mg.leg.br","ms.leg.br","mt.leg.br","pa.leg.br","pb.leg.br","pe.leg.br","pi.leg.br","pr.leg.br","rj.leg.br","rn.leg.br","ro.leg.br","rr.leg.br","rs.leg.br","sc.leg.br","se.leg.br","sp.leg.br","to.leg.br","pixolino.com","na4u.ru","apps-1and1.com","live-website.com","apps-1and1.net","websitebuilder.online","app-ionos.space","iopsys.se","*.dweb.link","ipifony.net","ir.md","is-a-good.dev","is-a.dev","iservschule.de","mein-iserv.de","schulplattform.de","schulserver.de","test-iserv.de","iserv.dev","mel.cloudlets.com.au","cloud.interhostsolutions.be","alp1.ae.flow.ch","appengine.flow.ch","es-1.axarnet.cloud","diadem.cloud","vip.jelastic.cloud","jele.cloud","it1.eur.aruba.jenv-aruba.cloud","it1.jenv-aruba.cloud","keliweb.cloud","cs.keliweb.cloud","oxa.cloud","tn.oxa.cloud","uk.oxa.cloud","primetel.cloud","uk.primetel.cloud","ca.reclaim.cloud","uk.reclaim.cloud","us.reclaim.cloud","ch.trendhosting.cloud","de.trendhosting.cloud","jele.club","dopaas.com","paas.hosted-by-previder.com","rag-cloud.hosteur.com","rag-cloud-ch.hosteur.com","jcloud.ik-server.com","jcloud-ver-jpc.ik-server.com","demo.jelastic.com","paas.massivegrid.com","jed.wafaicloud.com","ryd.wafaicloud.com","j.scaleforce.com.cy","jelastic.dogado.eu","fi.cloudplatform.fi","demo.datacenter.fi","paas.datacenter.fi","jele.host","mircloud.host","paas.beebyte.io","sekd1.beebyteapp.io","jele.io","jc.neen.it","jcloud.kz","cloudjiffy.net","fra1-de.cloudjiffy.net","west1-us.cloudjiffy.net","jls-sto1.elastx.net","jls-sto2.elastx.net","jls-sto3.elastx.net","fr-1.paas.massivegrid.net","lon-1.paas.massivegrid.net","lon-2.paas.massivegrid.net","ny-1.paas.massivegrid.net","ny-2.paas.massivegrid.net","sg-1.paas.massivegrid.net","jelastic.saveincloud.net","nordeste-idc.saveincloud.net","j.scaleforce.net","sdscloud.pl","unicloud.pl","mircloud.ru","enscaled.sg","jele.site","jelastic.team","orangecloud.tn","j.layershift.co.uk","phx.enscaled.us","mircloud.us","myjino.ru","*.hosting.myjino.ru","*.landing.myjino.ru","*.spectrum.myjino.ru","*.vps.myjino.ru","jotelulu.cloud","webadorsite.com","jouwweb.site","*.cns.joyent.com","*.triton.zone","js.org","kaas.gg","khplay.nl","kapsi.fi","ezproxy.kuleuven.be","kuleuven.cloud","keymachine.de","kinghost.net","uni5.net","knightpoint.systems","koobin.events","webthings.io","krellian.net","oya.to","git-repos.de","lcube-server.de","svn-repos.de","leadpages.co","lpages.co","lpusercontent.com","lelux.site","libp2p.direct","runcontainers.dev","co.business","co.education","co.events","co.financial","co.network","co.place","co.technology","linkyard-cloud.ch","linkyard.cloud","members.linode.com","*.nodebalancer.linode.com","*.linodeobjects.com","ip.linodeusercontent.com","we.bs","filegear-sg.me","ggff.net","*.user.localcert.dev","lodz.pl","pabianice.pl","plock.pl","sieradz.pl","skierniewice.pl","zgierz.pl","loginline.app","loginline.dev","loginline.io","loginline.services","loginline.site","lohmus.me","servers.run","krasnik.pl","leczna.pl","lubartow.pl","lublin.pl","poniatowa.pl","swidnik.pl","glug.org.uk","lug.org.uk","lugs.org.uk","barsy.bg","barsy.club","barsycenter.com","barsyonline.com","barsy.de","barsy.dev","barsy.eu","barsy.gr","barsy.in","barsy.info","barsy.io","barsy.me","barsy.menu","barsyonline.menu","barsy.mobi","barsy.net","barsy.online","barsy.org","barsy.pro","barsy.pub","barsy.ro","barsy.rs","barsy.shop","barsyonline.shop","barsy.site","barsy.store","barsy.support","barsy.uk","barsy.co.uk","barsyonline.co.uk","*.magentosite.cloud","hb.cldmail.ru","matlab.cloud","modelscape.com","mwcloudnonprod.com","polyspace.com","mayfirst.info","mayfirst.org","mazeplay.com","mcdir.me","mcdir.ru","vps.mcdir.ru","mcpre.ru","mediatech.by","mediatech.dev","hra.health","medusajs.app","miniserver.com","memset.net","messerli.app","atmeta.com","apps.fbsbx.com","*.cloud.metacentrum.cz","custom.metacentrum.cz","flt.cloud.muni.cz","usr.cloud.muni.cz","meteorapp.com","eu.meteorapp.com","co.pl","*.azurecontainer.io","azure-api.net","azure-mobile.net","azureedge.net","azurefd.net","azurestaticapps.net","1.azurestaticapps.net","2.azurestaticapps.net","3.azurestaticapps.net","4.azurestaticapps.net","5.azurestaticapps.net","6.azurestaticapps.net","7.azurestaticapps.net","centralus.azurestaticapps.net","eastasia.azurestaticapps.net","eastus2.azurestaticapps.net","westeurope.azurestaticapps.net","westus2.azurestaticapps.net","azurewebsites.net","cloudapp.net","trafficmanager.net","blob.core.windows.net","servicebus.windows.net","routingthecloud.com","sn.mynetname.net","routingthecloud.net","routingthecloud.org","csx.cc","mydbserver.com","webspaceconfig.de","mittwald.info","mittwaldserver.info","typo3server.info","project.space","modx.dev","bmoattachments.org","net.ru","org.ru","pp.ru","hostedpi.com","caracal.mythic-beasts.com","customer.mythic-beasts.com","fentiger.mythic-beasts.com","lynx.mythic-beasts.com","ocelot.mythic-beasts.com","oncilla.mythic-beasts.com","onza.mythic-beasts.com","sphinx.mythic-beasts.com","vs.mythic-beasts.com","x.mythic-beasts.com","yali.mythic-beasts.com","cust.retrosnub.co.uk","ui.nabu.casa","cloud.nospamproxy.com","netfy.app","netlify.app","4u.com","nfshost.com","ipfs.nftstorage.link","ngo.us","ngrok.app","ngrok-free.app","ngrok.dev","ngrok-free.dev","ngrok.io","ap.ngrok.io","au.ngrok.io","eu.ngrok.io","in.ngrok.io","jp.ngrok.io","sa.ngrok.io","us.ngrok.io","ngrok.pizza","ngrok.pro","torun.pl","nh-serv.co.uk","nimsite.uk","mmafan.biz","myftp.biz","no-ip.biz","no-ip.ca","fantasyleague.cc","gotdns.ch","3utilities.com","blogsyte.com","ciscofreak.com","damnserver.com","ddnsking.com","ditchyourip.com","dnsiskinky.com","dynns.com","geekgalaxy.com","health-carereform.com","homesecuritymac.com","homesecuritypc.com","myactivedirectory.com","mysecuritycamera.com","myvnc.com","net-freaks.com","onthewifi.com","point2this.com","quicksytes.com","securitytactics.com","servebeer.com","servecounterstrike.com","serveexchange.com","serveftp.com","servegame.com","servehalflife.com","servehttp.com","servehumour.com","serveirc.com","servemp3.com","servep2p.com","servepics.com","servequake.com","servesarcasm.com","stufftoread.com","unusualperson.com","workisboring.com","dvrcam.info","ilovecollege.info","no-ip.info","brasilia.me","ddns.me","dnsfor.me","hopto.me","loginto.me","noip.me","webhop.me","bounceme.net","ddns.net","eating-organic.net","mydissent.net","myeffect.net","mymediapc.net","mypsx.net","mysecuritycamera.net","nhlfan.net","no-ip.net","pgafan.net","privatizehealthinsurance.net","redirectme.net","serveblog.net","serveminecraft.net","sytes.net","cable-modem.org","collegefan.org","couchpotatofries.org","hopto.org","mlbfan.org","myftp.org","mysecuritycamera.org","nflfan.org","no-ip.org","read-books.org","ufcfan.org","zapto.org","no-ip.co.uk","golffan.us","noip.us","pointto.us","stage.nodeart.io","*.developer.app","noop.app","*.northflank.app","*.build.run","*.code.run","*.database.run","*.migration.run","noticeable.news","notion.site","dnsking.ch","mypi.co","n4t.co","001www.com","myiphost.com","forumz.info","soundcast.me","tcp4.me","dnsup.net","hicam.net","now-dns.net","ownip.net","vpndns.net","dynserv.org","now-dns.org","x443.pw","now-dns.top","ntdll.top","freeddns.us","nsupdate.info","nerdpol.ovh","nyc.mn","prvcy.page","obl.ong","observablehq.cloud","static.observableusercontent.com","omg.lol","cloudycluster.net","omniwe.site","123webseite.at","123website.be","simplesite.com.br","123website.ch","simplesite.com","123webseite.de","123hjemmeside.dk","123miweb.es","123kotisivu.fi","123siteweb.fr","simplesite.gr","123homepage.it","123website.lu","123website.nl","123hjemmeside.no","service.one","simplesite.pl","123paginaweb.pt","123minsida.se","is-a-fullstack.dev","is-cool.dev","is-not-a.dev","localplayer.dev","is-local.org","opensocial.site","opencraft.hosting","16-b.it","32-b.it","64-b.it","orsites.com","operaunite.com","*.customer-oci.com","*.oci.customer-oci.com","*.ocp.customer-oci.com","*.ocs.customer-oci.com","*.oraclecloudapps.com","*.oraclegovcloudapps.com","*.oraclegovcloudapps.uk","tech.orange","can.re","authgear-staging.com","authgearapps.com","skygearapp.com","outsystemscloud.com","*.hosting.ovh.net","*.webpaas.ovh.net","ownprovider.com","own.pm","*.owo.codes","ox.rs","oy.lc","pgfog.com","pagexl.com","gotpantheon.com","pantheonsite.io","*.paywhirl.com","*.xmit.co","xmit.dev","madethis.site","srv.us","gh.srv.us","gl.srv.us","lk3.ru","mypep.link","perspecta.cloud","on-web.fr","*.upsun.app","upsunapp.com","ent.platform.sh","eu.platform.sh","us.platform.sh","*.platformsh.site","*.tst.site","platter-app.com","platter-app.dev","platterp.us","pley.games","onporter.run","co.bn","postman-echo.com","pstmn.io","mock.pstmn.io","httpbin.org","prequalifyme.today","xen.prgmr.com","priv.at","protonet.io","chirurgiens-dentistes-en-france.fr","byen.site","pubtls.org","pythonanywhere.com","eu.pythonanywhere.com","qa2.com","qcx.io","*.sys.qcx.io","myqnapcloud.cn","alpha-myqnapcloud.com","dev-myqnapcloud.com","mycloudnas.com","mynascloud.com","myqnapcloud.com","qoto.io","qualifioapp.com","ladesk.com","qbuser.com","*.quipelements.com","vapor.cloud","vaporcloud.io","rackmaze.com","rackmaze.net","cloudsite.builders","myradweb.net","servername.us","web.in","in.net","myrdbx.io","site.rb-hosting.io","*.on-rancher.cloud","*.on-k3s.io","*.on-rio.io","ravpage.co.il","readthedocs-hosted.com","readthedocs.io","rhcloud.com","instances.spawn.cc","onrender.com","app.render.com","replit.app","id.replit.app","firewalledreplit.co","id.firewalledreplit.co","repl.co","id.repl.co","replit.dev","archer.replit.dev","bones.replit.dev","canary.replit.dev","global.replit.dev","hacker.replit.dev","id.replit.dev","janeway.replit.dev","kim.replit.dev","kira.replit.dev","kirk.replit.dev","odo.replit.dev","paris.replit.dev","picard.replit.dev","pike.replit.dev","prerelease.replit.dev","reed.replit.dev","riker.replit.dev","sisko.replit.dev","spock.replit.dev","staging.replit.dev","sulu.replit.dev","tarpit.replit.dev","teams.replit.dev","tucker.replit.dev","wesley.replit.dev","worf.replit.dev","repl.run","resindevice.io","devices.resinstaging.io","hzc.io","adimo.co.uk","itcouldbewor.se","aus.basketball","nz.basketball","git-pages.rit.edu","rocky.page","rub.de","ruhr-uni-bochum.de","io.noc.ruhr-uni-bochum.de","биз.рус","ком.рус","крым.рус","мир.рус","мск.рус","орг.рус","самара.рус","сочи.рус","спб.рус","я.рус","ras.ru","nyat.app","180r.com","dojin.com","sakuratan.com","sakuraweb.com","x0.com","2-d.jp","bona.jp","crap.jp","daynight.jp","eek.jp","flop.jp","halfmoon.jp","jeez.jp","matrix.jp","mimoza.jp","ivory.ne.jp","mail-box.ne.jp","mints.ne.jp","mokuren.ne.jp","opal.ne.jp","sakura.ne.jp","sumomo.ne.jp","topaz.ne.jp","netgamers.jp","nyanta.jp","o0o0.jp","rdy.jp","rgr.jp","rulez.jp","s3.isk01.sakurastorage.jp","s3.isk02.sakurastorage.jp","saloon.jp","sblo.jp","skr.jp","tank.jp","uh-oh.jp","undo.jp","rs.webaccel.jp","user.webaccel.jp","websozai.jp","xii.jp","squares.net","jpn.org","kirara.st","x0.to","from.tv","sakura.tv","*.builder.code.com","*.dev-builder.code.com","*.stg-builder.code.com","*.001.test.code-builder-stg.platform.salesforce.com","*.d.crm.dev","*.w.crm.dev","*.wa.crm.dev","*.wb.crm.dev","*.wc.crm.dev","*.wd.crm.dev","*.we.crm.dev","*.wf.crm.dev","sandcats.io","logoip.com","logoip.de","fr-par-1.baremetal.scw.cloud","fr-par-2.baremetal.scw.cloud","nl-ams-1.baremetal.scw.cloud","cockpit.fr-par.scw.cloud","fnc.fr-par.scw.cloud","functions.fnc.fr-par.scw.cloud","k8s.fr-par.scw.cloud","nodes.k8s.fr-par.scw.cloud","s3.fr-par.scw.cloud","s3-website.fr-par.scw.cloud","whm.fr-par.scw.cloud","priv.instances.scw.cloud","pub.instances.scw.cloud","k8s.scw.cloud","cockpit.nl-ams.scw.cloud","k8s.nl-ams.scw.cloud","nodes.k8s.nl-ams.scw.cloud","s3.nl-ams.scw.cloud","s3-website.nl-ams.scw.cloud","whm.nl-ams.scw.cloud","cockpit.pl-waw.scw.cloud","k8s.pl-waw.scw.cloud","nodes.k8s.pl-waw.scw.cloud","s3.pl-waw.scw.cloud","s3-website.pl-waw.scw.cloud","scalebook.scw.cloud","smartlabeling.scw.cloud","dedibox.fr","schokokeks.net","gov.scot","service.gov.scot","scrysec.com","client.scrypted.io","firewall-gateway.com","firewall-gateway.de","my-gateway.de","my-router.de","spdns.de","spdns.eu","firewall-gateway.net","my-firewall.org","myfirewall.org","spdns.org","seidat.net","sellfy.store","minisite.ms","senseering.net","servebolt.cloud","biz.ua","co.ua","pp.ua","as.sh.cn","sheezy.games","shiftedit.io","myshopblocks.com","myshopify.com","shopitsite.com","shopware.shop","shopware.store","mo-siemens.io","1kapp.com","appchizi.com","applinzi.com","sinaapp.com","vipsinaapp.com","siteleaf.net","small-web.org","aeroport.fr","avocat.fr","chambagri.fr","chirurgiens-dentistes.fr","experts-comptables.fr","medecin.fr","notaires.fr","pharmacien.fr","port.fr","veterinaire.fr","vp4.me","*.snowflake.app","*.privatelink.snowflake.app","streamlit.app","streamlitapp.com","try-snowplow.com","mafelo.net","playstation-cloud.com","srht.site","apps.lair.io","*.stolos.io","spacekit.io","ind.mom","customer.speedpartner.de","myspreadshop.at","myspreadshop.com.au","myspreadshop.be","myspreadshop.ca","myspreadshop.ch","myspreadshop.com","myspreadshop.de","myspreadshop.dk","myspreadshop.es","myspreadshop.fi","myspreadshop.fr","myspreadshop.ie","myspreadshop.it","myspreadshop.net","myspreadshop.nl","myspreadshop.no","myspreadshop.pl","myspreadshop.se","myspreadshop.co.uk","w-corp-staticblitz.com","w-credentialless-staticblitz.com","w-staticblitz.com","stackhero-network.com","runs.onstackit.cloud","stackit.gg","stackit.rocks","stackit.run","stackit.zone","musician.io","novecore.site","api.stdlib.com","feedback.ac","forms.ac","assessments.cx","calculators.cx","funnels.cx","paynow.cx","quizzes.cx","researched.cx","tests.cx","surveys.so","storebase.store","storipress.app","storj.farm","strapiapp.com","media.strapiapp.com","vps-host.net","atl.jelastic.vps-host.net","njs.jelastic.vps-host.net","ric.jelastic.vps-host.net","streak-link.com","streaklinks.com","streakusercontent.com","soc.srcf.net","user.srcf.net","utwente.io","temp-dns.com","supabase.co","supabase.in","supabase.net","syncloud.it","dscloud.biz","direct.quickconnect.cn","dsmynas.com","familyds.com","diskstation.me","dscloud.me","i234.me","myds.me","synology.me","dscloud.mobi","dsmynas.net","familyds.net","dsmynas.org","familyds.org","direct.quickconnect.to","vpnplus.to","mytabit.com","mytabit.co.il","tabitorder.co.il","taifun-dns.de","ts.net","*.c.ts.net","gda.pl","gdansk.pl","gdynia.pl","med.pl","sopot.pl","taveusercontent.com","p.tawk.email","p.tawkto.email","site.tb-hosting.com","edugit.io","s3.teckids.org","telebit.app","telebit.io","*.telebit.xyz","*.firenet.ch","*.svc.firenet.ch","reservd.com","thingdustdata.com","cust.dev.thingdust.io","reservd.dev.thingdust.io","cust.disrec.thingdust.io","reservd.disrec.thingdust.io","cust.prod.thingdust.io","cust.testing.thingdust.io","reservd.testing.thingdust.io","tickets.io","arvo.network","azimuth.network","tlon.network","torproject.net","pages.torproject.net","townnews-staging.com","12hp.at","2ix.at","4lima.at","lima-city.at","12hp.ch","2ix.ch","4lima.ch","lima-city.ch","trafficplex.cloud","de.cool","12hp.de","2ix.de","4lima.de","lima-city.de","1337.pictures","clan.rip","lima-city.rocks","webspace.rocks","lima.zone","*.transurl.be","*.transurl.eu","site.transip.me","*.transurl.nl","tuxfamily.org","dd-dns.de","dray-dns.de","draydns.de","dyn-vpn.de","dynvpn.de","mein-vigor.de","my-vigor.de","my-wan.de","syno-ds.de","synology-diskstation.de","synology-ds.de","diskstation.eu","diskstation.org","typedream.app","pro.typeform.com","*.uberspace.de","uber.space","hk.com","inc.hk","ltd.hk","hk.org","it.com","unison-services.cloud","virtual-user.de","virtualuser.de","name.pm","sch.tf","biz.wf","sch.wf","org.yt","rs.ba","bielsko.pl","upli.io","urown.cloud","dnsupdate.info","us.org","v.ua","express.val.run","web.val.run","vercel.app","v0.build","vercel.dev","vusercontent.net","now.sh","2038.io","router.management","v-info.info","voorloper.cloud","*.vultrobjects.com","wafflecell.com","webflow.io","webflowtest.io","*.webhare.dev","bookonline.app","hotelwithflight.com","reserve-online.com","reserve-online.net","cprapid.com","pleskns.com","wp2.host","pdns.page","plesk.page","wpsquared.site","*.wadl.top","remotewd.com","box.ca","pages.wiardweb.com","toolforge.org","wmcloud.org","wmflabs.org","wdh.app","panel.gg","daemon.panel.gg","wixsite.com","wixstudio.com","editorx.io","wixstudio.io","wix.run","messwithdns.com","woltlab-demo.com","myforum.community","community-pro.de","diskussionsbereich.de","community-pro.net","meinforum.net","affinitylottery.org.uk","raffleentry.org.uk","weeklylottery.org.uk","wpenginepowered.com","js.wpenginepowered.com","half.host","xnbay.com","u2.xnbay.com","u2-local.xnbay.com","cistron.nl","demon.nl","xs4all.space","yandexcloud.net","storage.yandexcloud.net","website.yandexcloud.net","official.academy","yolasite.com","yombo.me","ynh.fr","nohost.me","noho.st","za.net","za.org","zap.cloud","zeabur.app","bss.design","basicserver.io","virtualserver.io","enterprisecloud.nu"].reduce((e,t)=>{const n=t.replace(/^(\*\.|\!)/,""),a=un.toASCII(n),o=t.charAt(0);if(e.has(a))throw new Error(`Multiple rules found for ${t} (${a})`);return e.set(a,{rule:t,suffix:n,punySuffix:a,wildcard:"*"===o,exception:"!"===o}),e},new Map);const hn={en:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Find me accommodation"},"skyscanner":{"find_me_accommodation":"Find me accommodation"},"ryanair":{"find_me_accommodation":"Find me accommodation"},"latam_airlines":{"find_me_accommodation":"Find me accommodation"},"iberia":{"find_me_accommodation":"Find me accommodation"},"booking":{"explore_activities_with":"Explore activities with ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Compare price","book_with_discount":"Save up to {discount}%","book_with_discount_barcelo":"Get Promo","save":"Save {price}","popover":{"header":{"text":"Book with"},"support_hotel":"Support the property directly","feedback":{"text_checked":"{positiveFeedback}/10 users found a good direct deal","text_unchecked":"Help other travelers find better deals"},"discount":{"text_checked":"Discount detected","text_unchecked":"Price discount detected"},"coupon":{"text_checked":"Coupon found"}}},"alternative_offers":{"best_offer":"Best offer with","save":"Save {price}","no_discount":"Alternative offer with {provider}","popover":{"header":{"text":"Book with"}}},"label":{"tooltip":"Direct website found","coupon_tooltip":"Coupon found","discount_tooltip":"Better price found","score_tooltip":"Popular deal found","high_score_tooltip":"Very popular deal found"}}'),es:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Buscar alojamiento"},"skyscanner":{"find_me_accommodation":"Buscar alojamiento"},"ryanair":{"find_me_accommodation":"Buscar alojamiento"},"latam_airlines":{"find_me_accommodation":"Buscar alojamiento"},"iberia":{"find_me_accommodation":"Buscar alojamiento"},"booking":{"explore_activities_with":"Explora actividades con ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Comparar precio","book_with_discount":"Ahorra hasta {discount}%","book_with_discount_barcelo":"Ver promo","save":"Ahorra {price}","popover":{"header":{"text":"Reserva con"},"support_hotel":"Apoya al alojamiento directamente","feedback":{"text_checked":"{positiveFeedback}/10 usuarios encontraron una buena oferta directa","text_unchecked":"Ayuda a otros viajeros a encontrar mejores ofertas"},"discount":{"text_checked":"Descuento detectado","text_unchecked":"Descuento en precio detectado"},"coupon":{"text_checked":"Cupón encontrado"}}},"alternative_offers":{"best_offer":"La mejor oferta con","save":"Ahorra {price}","no_discount":"Oferta alternativa con {provider}","popover":{"header":{"text":"Reserva con"}}},"label":{"tooltip":"Web directa encontrada","coupon_tooltip":"Cupón encontrado","discount_tooltip":"Mejor precio encontrado","score_tooltip":"Oferta popular encontrada","high_score_tooltip":"Oferta muy popular encontrada"}}'),fr:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Trouver un hébergement"},"skyscanner":{"find_me_accommodation":"Trouver un hébergement"},"ryanair":{"find_me_accommodation":"Trouver un hébergement"},"latam_airlines":{"find_me_accommodation":"Trouver un hébergement"},"iberia":{"find_me_accommodation":"Trouver un hébergement"},"booking":{"explore_activities_with":"Découvrez des activités avec ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Comparer les prix","book_with_discount":"Économisez jusqu\'à {discount}%","book_with_discount_barcelo":"Voir la promo","save":"Économisez {price}","popover":{"header":{"text":"Réservez avec"},"support_hotel":"Soutenez le bien directement","feedback":{"text_checked":"{positiveFeedback}/10 utilisateurs ont trouvé une bonne offre directe","text_unchecked":"Aidez d\'autres voyageurs à trouver de meilleures offres"},"discount":{"text_checked":"Réduction détectée","text_unchecked":"Réduction de prix détectée"},"coupon":{"text_checked":"Coupon trouvé"}}},"alternative_offers":{"best_offer":"La meilleure offre avec","save":"Économisez {price}","no_discount":"Offre alternative avec {provider}","popover":{"header":{"text":"Réservez avec"}}},"label":{"tooltip":"Site web direct trouvé","coupon_tooltip":"Coupon trouvé","discount_tooltip":"Meilleur prix trouvé","score_tooltip":"Offre populaire trouvée","high_score_tooltip":"Offre très populaire trouvée"}}'),it:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Trova un alloggio"},"skyscanner":{"find_me_accommodation":"Trova un alloggio"},"ryanair":{"find_me_accommodation":"Trova un alloggio"},"latam_airlines":{"find_me_accommodation":"Trova un alloggio"},"iberia":{"find_me_accommodation":"Trova un alloggio"},"booking":{"explore_activities_with":"Esplora le attività con ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Confronta il prezzo","book_with_discount":"Risparmia fino al {discount}%","book_with_discount_barcelo":"Vedi la promo","save":"Risparmia {price}","popover":{"header":{"text":"Prenota con"},"support_hotel":"Supporta l\'alojamento direttamente","feedback":{"text_checked":"{positiveFeedback}/10 utenti hanno trovato una buona offerta diretta","text_unchecked":"Aiuta altri viaggiatori a trovare offerte migliori"},"discount":{"text_checked":"Sconto rilevato","text_unchecked":"Sconto sul prezzo rilevato"},"coupon":{"text_checked":"Coupon trovato"}}},"alternative_offers":{"best_offer":"La migliore offerta con","save":"Risparmia {price}","no_discount":"Offerta alternativa con {provider}","popover":{"header":{"text":"Prenota con"}}},"label":{"tooltip":"Sito web diretto trovato","coupon_tooltip":"Coupon trovato","discount_tooltip":"Prezzo migliore trovato","score_tooltip":"Offerta popolare trovata","high_score_tooltip":"Offerta molto popolare trovata"}}'),pt:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Encontre um alojamento"},"skyscanner":{"find_me_accommodation":"Encontre um alojamento"},"ryanair":{"find_me_accommodation":"Encontre um alojamento"},"latam_airlines":{"find_me_accommodation":"Encontre um alojamento"},"iberia":{"find_me_accommodation":"Encontre um alojamento"},"booking":{"explore_activities_with":"Explore atividades com a ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Comparar preço","book_with_discount":"Economize até {discount}%","book_with_discount_barcelo":"Ver promoção","save":"Economize {price}","popover":{"header":{"text":"Reserve com"},"support_hotel":"Apoie o alojamento diretamente","feedback":{"text_checked":"{positiveFeedback}/10 usuários encontraram uma boa oferta direta","text_unchecked":"Ajude outros viajantes a encontrar melhores ofertas"},"discount":{"text_checked":"Desconto detectado","text_unchecked":"Desconto no preço detectado"},"coupon":{"text_checked":"Cupom encontrado"}}},"alternative_offers":{"best_offer":"A melhor oferta com","save":"Economize {price}","no_discount":"Oferta alternativa com {provider}","popover":{"header":{"text":"Reserve com"}}},"label":{"tooltip":"Encontre uma oferta melhor","coupon_tooltip":"Cupom encontrado","discount_tooltip":"Melhor preço encontrado","score_tooltip":"Oferta popular","high_score_tooltip":"Oferta muito popular"}}')},fn=new class{translations;constructor(e){this.translations=e}getLocalisedString(e,t){const n=t&&Object.keys(this.translations).includes(t)?t:gt(),a=`{${e}}`,o=Oe(this.translations,`${n}.${e}`)??Oe(this.translations,`en.${e}`)??a;return"string"!=typeof o?(console.warn(`i18n: The path "${e}" for locale "${n}" does not resolve to a string.`),a):o}translate(e,t,n){const a=this.getLocalisedString(e,n);if(!t)return a;let o=a;return dt(t,(e,t)=>{null!=e&&(o=o.replace(`{${t}}`,e.toString()))}),o}}(hn),gn=fn.translate.bind(fn);class kn extends Wt{latestCheckbox=null;constructor(){super("RENFE")}async shouldActivate(){return"renfe.com"===dn(new URL(window.location.href))}async getDestination(){try{const e=Ut(["#destination"]);if(e){const t=Gt(e);return t?tn(t):null}return null}catch(e){return console.error(e),""}}async handleCrossSell(){this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){await l(100),Vt(["#promotionsv2"],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new bn(t),this.latestCheckbox.injectInto(e),e.style.display="flex"},{retryMs:rn,checkIntervalMs:rn})}async attachSearchInterceptor(){Vt(['button[type="submit"]',".rf-button--primary"],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){if(null===this.latestCheckbox||!this.latestCheckbox.isVisible||!this.latestCheckbox.checked)return;const e=await this.getDestination();if(!e)return;const t=`${e.replace(/\(TODAS\)/,"")} Spain`,n=await this.getQueryParamMap(new URL(location.href)),a=n.checkin();if(!a)return;const o=n.checkout()??nn(a),r=n.adults(),i=n.currency(),s=n.children(),{partnerKey:c}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"RENFE_KAYAK",partnerKey:c??null,destination:t,checkin:a,checkout:o,adults:r,currency:i,children:s})}async getQueryParamMap(e){return{checkin(){const e=Ut(["#first-input"]);if(e){const t=Gt(e);if(t){const[e,n]=t.split(",");if(n)return Yt.tryFromSlashDDMMYY(n.trim())}}return null},checkout(){const e=Ut(["#second-input"]);if(e){const t=Gt(e);if(t){const[e,n]=t.split(",");if(n)return Yt.tryFromSlashDDMMYY(n.trim())}}return null},adults(){const e=Ut(["#passengersSelection"]);if(e&&"value"in e&&"string"==typeof e.value&&e.value){const[t,n,a]=e.value.matchAll(/(\d+)/g);return t?parseInt(t[1]):2}return 2},children(){const e=Ut(["#passengersSelection"]);if(e&&"value"in e&&"string"==typeof e.value&&e.value){const[t,n,a]=e.value.matchAll(/(\d+)/g);return n?parseInt(n[1]):0}return 0},currency:()=>on}}}class bn{$checkboxContainer;$checkbox;$text;$label;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e;const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.renfe.find_me_accommodation",{},t)),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$text),this.$checkboxContainer=document.createElement("div"),this.$checkboxContainer.className="dir-checkbox-container",this.$checkboxContainer.appendChild(this.$label),this.$style=document.createElement("style"),this.$style.textContent="\n .dir-label {\n display: flex;\n align-items: center;\n font-size: 14px;\n margin-left: 8px;\n color: black;\n }\n\n .dir-checkbox {\n margin-right: 8px;\n }\n\n .dir-checkbox-container {\n align-self: center;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$checkboxContainer)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}const yn=["skyscanner.com","skyscanner.net","skyscanner.es","skyscanner.fr","skyscanner.it","skyscanner.pt","skyscanner.com.br","skyscanner.co.in","skyscanner.com.mx","skyscanner.de","skyscanner.com","skyscanner.com.au","skyscanner.com.my","skyscanner.co.il","skyscanner.com.ph","skyscanner.co.nz"];class vn extends Wt{latestCheckbox=null;constructor(){super("SKYSCANNER")}async shouldActivate(){const e=dn(new URL(window.location.href));return yn.includes(e)}async getDestination(){try{const e=Ut(['input[name="destinationInput-search"]']);return e?tn(e.value):null}catch(e){return console.error(e),null}}async handleCrossSell(){this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){Vt(['[class*="SearchControls_DestinationInput__"] fieldset'],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new wn(t),this.latestCheckbox.injectInto(e)},{retryMs:rn,checkIntervalMs:rn})}async attachSearchInterceptor(){Vt(['[data-testid="desktop-cta"]','[data-testid="mobile-cta"]'],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){if(null===this.latestCheckbox||!this.latestCheckbox.isVisible||!this.latestCheckbox.checked)return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(location.href)),n=t.checkin();if(!n)return;const a=t.checkout()??nn(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"SKYSCANNER_KAYAK",partnerKey:s??null,destination:e,checkin:n,checkout:a,adults:o,currency:r,children:i})}async getQueryParamMap(e){return{checkin(){const e=Ut(['[data-testid="depart-btn"] [class*="SearchControlButton_value__"]']);if(e){const t=Gt(e);if(t)return Yt.tryFromSlashDMY(t)}return null},checkout(){const e=Ut(['[data-testid="return-btn"] [class*="SearchControlButton_value__"]']);if(e){const t=Gt(e);if(t)return Yt.tryFromSlashDMY(t)}return null},adults(){const e=Ut(['[data-testid="traveller-button"] [class*="SearchControlButton_value__"]']);if(e){const t=e.textContent;if(t){const[e]=t.matchAll(/(\d+)/g);return e?parseInt(e[1]):2}}return 2},children:()=>0,currency:()=>on}}}class wn{$checkbox;$text;$span;$label;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e;const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.skyscanner.find_me_accommodation",{},t)),this.$span=document.createElement("span"),this.$span.className="dir-span",this.$span.appendChild(this.$text),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$span),this.$style=document.createElement("style"),this.$style.textContent="\n .dir-checkbox {\n background-color: #fff;\n -webkit-appearance: none;\n appearance: none;\n border: .1875rem solid #626971;border-radius: .25rem;\n cursor: pointer;\n height: 1.25rem;\n left: 0;\n margin: 0;\n padding: 0;\n position: absolute;\n top: .125rem;\n vertical-align: text-bottom;\n width: 1.25rem;\n }\n\n .dir-checkbox:checked {\n background-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='13' height='9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.354 3.646 5.5 7.5l6-6' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\");\n background-position: .0625rem;\n background-repeat: no-repeat;\n background-size: calc(100% - .15625rem) auto;\n background-color: #0062e3;\n background-color: var(--bpk-checkbox-checked-color, #0062e3);\n border-color: #0062e3;\n border-color: var(--bpk-checkbox-checked-color, #0062e3);\n }\n\n .dir-label {\n margin-bottom: 1rem;\n margin-top: .5rem;\n width: 100%;\n color: #fff;\n display: inline-block;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5rem;\n margin: 0;\n padding-left: 1.75rem;\n position: relative;\n }\n\n .dir-span {\n word-wrap: break-word;\n cursor: pointer;\n -webkit-hyphens: auto;\n hyphens: auto;\n overflow-wrap: break-word;\n word-break: break-word;\n vertical-align: initial;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$label)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}const jn=["ryanair.com"];class _n extends Wt{latestCheckbox=null;constructor(){super("RYANAIR")}async shouldActivate(){const e=dn(new URL(window.location.href));return jn.includes(e)}async getDestination(){return new URL(window.location.href).searchParams.get("destinationIata")||null}async handleCrossSell(){const e=new URL(window.location.href);e.pathname.endsWith("/trip/flights/select")||e.pathname.endsWith("/fare-finder")?this.maybeOpenTab():this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){Vt([".filters-container"],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new xn(t),this.latestCheckbox.injectInto(e)},{retryMs:rn,checkIntervalMs:rn})}async attachSearchInterceptor(){Vt([".flight-search-widget__start-search button"],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await w.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await w.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(location.href)),n=t.checkin();if(!n)return;const a=t.checkout()??nn(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"RYANAIR_KAYAK",partnerKey:s??null,destination:e,checkin:n,checkout:a,adults:o,currency:r,children:i})}async getQueryParamMap(e){return{checkin(){const t=e.searchParams.get("dateOut");return t?Yt.tryFromDashYYYYMMDD(t):null},checkout(){const t=e.searchParams.get("dateIn");return t?Yt.tryFromDashYYYYMMDD(t):null},adults(){const t=e.searchParams.get("adults");if(!t)return 2;const n=parseInt(t,10);return Number.isNaN(n)?2:n},children(){const t=e.searchParams.get("teens"),n=e.searchParams.get("children");if(!t&&!n)return 0;const a=parseInt(t??"0",10),o=parseInt(n??"0",10);return Number.isNaN(a)&&Number.isNaN(o)?0:(Number.isNaN(a)?0:a)+(Number.isNaN(o)?0:o)},currency:()=>e.searchParams.get("currency")??on}}}class xn{$checkbox;$text;$label;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e;const t=/^https?:\/\/(?:www\.)?ryanair\.com\/[^/]+\/([^/]+)/i.exec(location.href),n=t?t[1].toLowerCase():ht();this.$text=document.createTextNode(gn("cross_sell.ryanair.find_me_accommodation",{},n)),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$text),this.$style=document.createElement("style"),this.$style.textContent="\n .dir-label {\n margin-left: 1rem;\n }\n\n .dir-checkbox {\n margin-right: 0.5em;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$label)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}const zn=["latamairlines.com"];class Cn extends Wt{latestCheckbox=null;constructor(){super("LATAM_AIRLINES")}async shouldActivate(){const e=dn(new URL(window.location.href));return zn.includes(e)}async getDestination(){return new URL(window.location.href).searchParams.get("destination")||null}async handleCrossSell(){const e=new URL(window.location.href);e.pathname.endsWith("/es/ofertas-vuelos")||e.pathname.endsWith("/en/flight-offers")||e.pathname.endsWith("/pt/oferta-voos")?this.maybeOpenTab():this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){Vt(['[class*="LoyaltyBoxstyles__CheckboxContainer"]'],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new Sn(t),this.latestCheckbox.injectInto(e)},{retryMs:rn,checkIntervalMs:rn})}async attachSearchInterceptor(){Vt(["button#fsb-search-flights",'button[type="submit"]'],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await w.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await w.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(location.href)),n=t.checkin();if(!n)return;const a=t.checkout()??nn(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"LATAM_AIRLINES_KAYAK",partnerKey:s??null,destination:e,checkin:n,checkout:a,adults:o,currency:r,children:i})}async getQueryParamMap(e){return{checkin(){const t=e.searchParams.get("outbound");if(!t)return null;const[n,a]=t.split("T");return n?Yt.tryFromDashYYYYMMDD(n):null},checkout(){const t=e.searchParams.get("inbound");if(!t)return null;const[n,a]=t.split("T");return n?Yt.tryFromDashYYYYMMDD(n):null},adults(){const t=e.searchParams.get("adt");if(!t)return 2;const n=parseInt(t,10);return Number.isNaN(n)?2:n},children(){const t=e.searchParams.get("chd");if(!t)return 0;const n=parseInt(t,10);return Number.isNaN(n)?0:n},currency(){const e=Ut(['[data-testid="current-currency__name-and-symbol"]']);if(e){const t=e.textContent;if(t){const e=t.match(/^(.+?) · (.+)$/);if(e)return e[1]}}return on}}}}class Sn{$checkboxContainer;$checkbox;$checkboxIconWrapper;$checkboxIconI;$span;$text;$label;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e,this.$checkboxIconI=document.createElement("i"),this.$checkboxIconI.className="dir-checkbox-icon-i",this.$checkboxIconI.ariaHidden="true",this.$checkboxIconI.innerHTML='\n <svg xmlns="http://www.w3.org/2000/svg" fill="none" focusable="false" viewBox="0 0 32 32">\n <path d="M12.57 21.6161L4.38 13.2161L2 15.7186L12.57 26.376L30 8.75351L27.5325 6.37354L12.57 21.6161Z" fill="currentColor"></path>\n </svg>\n ',this.$checkboxIconWrapper=document.createElement("span"),this.$checkboxIconWrapper.className="dir-checkbox-icon-wrapper",this.$checkboxIconWrapper.appendChild(this.$checkboxIconI);const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.latam_airlines.find_me_accommodation",{},t)),this.$span=document.createElement("span"),this.$span.className="dir-span",this.$span.appendChild(this.$text),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$checkboxIconWrapper),this.$label.appendChild(this.$span),this.$checkboxContainer=document.createElement("div"),this.$checkboxContainer.className="dir-checkbox-container",this.$checkboxContainer.appendChild(this.$label),this.$style=document.createElement("style"),this.$style.textContent="\n * {\n box-sizing: border-box;\n }\n\n .dir-checkbox {\n position: absolute;\n height: 0px;\n width: 0px;\n appearance: none;\n }\n\n .dir-checkbox-container {\n display: inline-block;\n padding: 0.5rem 0px;\n position: relative;\n width: initial;\n }\n\n .dir-label {\n cursor: pointer;\n display: flex;\n flex-direction: row;\n gap: 0.75rem;\n -webkit-box-pack: justify;\n justify-content: space-between;\n pointer-events: initial;\n width: initial;\n align-items: center;\n }\n\n .dir-span {\n display: flex;\n flex-direction: column;\n margin-right: 0px;\n margin-left: 0.5rem;\n text-align: initial;\n }\n\n .dir-checkbox-icon-wrapper {\n --checkbox-size: 1.5rem;\n background: transparent;\n border-radius: 0.25rem;\n border: 2px solid rgb(70, 88, 223);\n cursor: pointer;\n display: inline-flex;\n height: var(--checkbox-size);\n width: var(--checkbox-size);\n flex-shrink: 0;\n }\n\n .dir-checkbox:checked + .dir-checkbox-icon-wrapper {\n background: rgb(70, 88, 223);\n }\n\n .dir-checkbox-icon-wrapper:hover {\n box-shadow: rgb(238, 237, 249) 0px 0px 0px 0.5rem;\n }\n\n .dir-checkbox-icon-i {\n color: rgb(255, 255, 255);\n display: none;\n height: 100%;\n margin: auto;\n width: 100%;\n }\n\n .dir-checkbox:checked + .dir-checkbox-icon-wrapper .dir-checkbox-icon-i {\n display: flex;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$checkboxContainer)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}const En=["iberia.com"];class On extends Wt{latestTabCheckbox=null;latestAccordionCheckbox=null;latestChecked=!0;constructor(){super("IBERIA")}async shouldActivate(){const e=dn(new URL(window.location.href));return En.includes(e)}async getDestination(){return new URL(window.location.href).searchParams.get("END_CITY_01")||null}async handleCrossSell(){const e=new URL(window.location.href);!e.pathname.endsWith("/flights/")||"1"!==e.searchParams.get("TRIP_TYPE")&&"2"!==e.searchParams.get("TRIP_TYPE")?this.injectUI():this.maybeOpenTab()}async injectUI(){await l(500),this.injectTabCheckbox(),this.injectAccordionCheckbox(),this.attachSearchInterceptor()}async injectTabCheckbox(){const e=new AbortController;Vt(["#tab-flights .ibe-searcher__options .ibe-form__radio-group"],t=>{this.latestTabCheckbox&&(this.latestTabCheckbox.remove(),this.latestTabCheckbox=null),this.latestTabCheckbox=new An(this.latestChecked),this.latestTabCheckbox.addEventListener("change",e=>{this.latestChecked=e.checked,this.latestAccordionCheckbox&&(this.latestAccordionCheckbox.checked=this.latestChecked)}),this.latestTabCheckbox.injectInto(t);let n=!1;const a=async()=>{n||(n=!0,o(),this.latestTabCheckbox?.remove(),this.latestTabCheckbox=null,await this.injectTabCheckbox(),n=!1)};window.addEventListener("resize",a);const o=()=>{e.abort(),window.removeEventListener("resize",a)};return o},{retryMs:rn,checkIntervalMs:rn,signal:e.signal})}async injectAccordionCheckbox(){const e=new AbortController;Vt(["#m-tab-searcher-1 .ibe-searcher__options"],t=>{this.latestAccordionCheckbox&&(this.latestAccordionCheckbox.remove(),this.latestAccordionCheckbox=null),this.latestAccordionCheckbox=new An(this.latestChecked),this.latestAccordionCheckbox.addEventListener("change",e=>{this.latestChecked=e.checked,this.latestTabCheckbox&&(this.latestTabCheckbox.checked=this.latestChecked)}),this.latestAccordionCheckbox.injectInto(t);let n=!1;const a=async()=>{n||(n=!0,o(),this.latestAccordionCheckbox?.remove(),this.latestAccordionCheckbox=null,await this.injectAccordionCheckbox(),n=!1)};window.addEventListener("resize",a);const o=()=>{e.abort(),window.removeEventListener("resize",a)};return o},{retryMs:rn,checkIntervalMs:rn,signal:e.signal})}async attachSearchInterceptor(){Vt(["#buttonSubmit1"],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>t.abort()},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){const e=null!==this.latestTabCheckbox&&this.latestTabCheckbox.isVisible&&this.latestTabCheckbox.checked,t=null!==this.latestAccordionCheckbox&&this.latestAccordionCheckbox.isVisible&&this.latestAccordionCheckbox.checked;await w.setCrossSellWasChecked({crossSellId:this.platform,checked:e||t})}async maybeOpenTab(){if(!await w.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(location.href)),n=t.checkin();if(!n)return;const a=t.checkout()??nn(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"IBERIA_KAYAK",partnerKey:s??null,destination:e,checkin:n,checkout:a,adults:o,currency:r,children:i})}async getQueryParamMap(e){return{checkin(){const t=e.searchParams.get("BEGIN_YEAR_01");if(!t)return null;const n=e.searchParams.get("BEGIN_MONTH_01");if(!n)return null;const a=e.searchParams.get("BEGIN_DAY_01");return a?Pn(t,n,a):null},checkout(){const t=e.searchParams.get("END_YEAR_01");if(!t)return null;const n=e.searchParams.get("END_MONTH_01");if(!n)return null;const a=e.searchParams.get("END_DAY_01");return a?Pn(t,n,a):null},adults(){const t=e.searchParams.get("ADT");if(!t)return 2;const n=parseInt(t,10);return Number.isNaN(n)?2:n},children(){const t=e.searchParams.get("CHD");if(!t)return 0;const n=parseInt(t,10);return Number.isNaN(n)?0:n},currency:()=>on}}}class An{eventTarget=new EventTarget;$checkboxContainer;$checkbox;$text;$span;$label;$style;$rootHost;$root;constructor(e){this.$checkboxContainer=document.createElement("div"),this.$checkboxContainer.className="dir-checkbox-container",this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e,this.$checkbox.addEventListener("click",()=>{this.dispatchEvent(new Nn(this.$checkbox.checked))});const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.iberia.find_me_accommodation",{},t)),this.$span=document.createElement("span"),this.$span.className="dir-span",this.$span.appendChild(this.$text),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$span),this.$style=document.createElement("style"),this.$style.textContent='\n .dir-checkbox {\n margin: 0;\n margin-right: 0.9375rem;\n\n -webkit-appearance: none;\n appearance: none;\n cursor: pointer;\n \n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAABWSURBVHja7NVBEcBADELRuEYBOnCBrwhgtrcKSPfUyRfwjlBJbJPEKJK2k5RtSd19RnW3JNtFcqy8FskCcD4HYKGFFlrof9C1qb02/rfu6AEAAP//AwC94S6rHK/aNAAAAABJRU5ErkJggg==) no-repeat;\n content: "";\n display: inline-block;\n height: 1.625rem;\n overflow: hidden;\n vertical-align: middle;\n width: 1.625rem;\n margin-top: 0;\n }\n\n .dir-checkbox:checked {\n \n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAEDSURBVHjaYvj79++2bdtaW1vLyQKtra3btm37+/cvw7Zt2+bPn//x48f/ZIGPHz/Onz9/27ZtDK2trWSbAjertbWVoby8/D/FoLy8fNQgahv05syZXR6en+7cIdagz/fvf33yBFnk39+/V3p7V8nI7nR1+/P9O7EG7fLwXKuiemfRIgj36+PHe/z8V0hKrdPU+vLwIQlee75//wpJqRWSUvtDw27Pn79WTX2FpNRKKelne/aQHEanS8sgZsHR5a5ucgL799evW8wt4KYcjIr6/+8fmbH26sSJldIyKySlNpua/Xz/nqLof3v+/M1Zs789fz6aRQaVQVQraqlW+FOrOgIMANiB7jjdFd/sAAAAAElFTkSuQmCC) no-repeat;\n }\n\n .dir-label {\n color: #666;\n cursor: pointer;\n font-size: .8125rem;\n display: inline-block;\n }\n\n @media screen and (max-width: 25.999rem) {\n\n .dir-checkbox-container {\n display: block;\n }\n\n .dir-checkbox {\n margin-right: 0.3125rem;\n }\n }\n\n @media screen and (min-width: 26rem) and (max-width: 29.999rem) {\n\n .dir-checkbox-container {\n display: inline-block;\n margin-left: 1rem;\n }\n\n .dir-checkbox {\n margin-right: 0.3125rem;\n }\n }\n\n @media screen and (min-width: 30rem) and (max-width: 47.999rem) {\n }\n\n @media screen and (min-width: 48rem) and (max-width: 63.999rem) {\n\n .dir-checkbox-container {\n margin-left: 1rem;\n display: inline-block;\n }\n }\n\n @media screen and (min-width: 64rem) and (max-width: 79.999rem) {\n\n .dir-label {\n padding-top: .3125rem;\n }\n }\n\n @media screen and (min-width: 80rem) {\n\n .dir-label {\n padding-top: .3125rem;\n }\n }\n ',this.$checkboxContainer.appendChild(this.$label),this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$checkboxContainer)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}set checked(e){this.$checkbox.checked=e}get isVisible(){return qt(this.$checkbox)}addEventListener(e,t,n){return this.eventTarget.addEventListener(e,t,n)}dispatchEvent(e){return this.eventTarget.dispatchEvent(e)}removeEventListener(e,t,n){return this.eventTarget.removeEventListener(e,t,n)}}function Pn(e,t,n){if(6!==t.length)return null;if(t.slice(0,4)!==e)return null;const a=t.slice(4,6),o=parseInt(e,10);if(Number.isNaN(o))return null;const r=parseInt(a,10);if(Number.isNaN(r))return null;const i=parseInt(n,10);return Number.isNaN(i)?null:new Yt(o,r,i)}class Nn extends Event{checked;constructor(e){super("change"),this.checked=e}}function Tn(e){try{const t=dn(new URL(e));return/^airbnb\.[.a-z]{2,7}/i.exec(t)?"AIRBNB":/^(secure\.)?booking\.com/i.exec(t)?"BOOKING":/^vrbo\.com/i.exec(t)||/^abritel\.fr/i.exec(t)?"VRBO":/^expedia\.[.a-z]{2,7}/i.exec(t)?"EXPEDIA":/google\.[a-z.]{2,7}\/(search\?|travel\/flights\?)/i.exec(e)?"GOOGLE":null}catch(e){return console.error("Error in getPlatform",e),null}}const In=/(www\.)?airbnb\.[.a-z]{2,7}\/rooms\/(plus\/)?(\d+)/i,Ln=/[https:\/\/]*[www]*\.airbnb\..*?\/homes/i,Dn=/[https:\/\/]*[www]*\.airbnb\..*?\/book\/stays/i,Rn=/^(?:https:\/\/)?(?:www\.)?booking\.com\/hotel\/[\w\-\/]*/i,Mn=/^(?:https:\/\/)?(?:www\.)?booking\.com\/searchresults/i,$n=/^(?:https:\/\/)?secure\.booking\.com\/(?:tpi_)?book(?:\.[a-z]+)?\.html/i,Bn=/^(?:https:\/\/)?secure\.booking\.com\/confirmation\.[^.]+\.html/i,Un=/(?:www\.)vrbo\.com\/(?:[a-z]{2}-[a-z]{2}\/)?(?:[a-z0-9-]+\/)?p?\d+[a-zA-Z]*/,Fn=/(www\.)?vrbo\.com(\/\w{0,2}-\w{0,2})*\/search/,Vn=/[https:\/\/]*[www]*\.vrbo\.com(\/\w{0,2}-\w{0,2})?\/td\/tc\/checkout/,Hn=/(www\.)?abritel\.fr\/location-vacances\/(\w*)/,Kn=/(www\.)?abritel\.fr\/search/,qn=/[https:\/\/]*[www]*\.abritel\.fr\/\/td\/tc\/checkout/,Gn=/expedia.[a-z.]{2,7}\/(?:[a-z0-9-]+\/)?[\w-]*?\.h(\d*)\.[\w-]*\??/g,Qn=/expedia\.[a-z.]{2,7}\/Hotel-Search/,Wn=/[https:\/\/]*[www]*\.expedia\.com\/HotelCheckout/,Yn=/[https:\/\/]*[www]*\.google\.[a-z.]{2,7}\/search\?/g,Jn=nt(Object.getPrototypeOf,Object);var Zn=Function.prototype,Xn=Object.prototype,ea=Zn.toString,ta=Xn.hasOwnProperty,na=ea.call(Object);const aa=function(e){if(!I(e)||"[object Object]"!=T(e))return!1;var t=Jn(e);if(null===t)return!0;var n=ta.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&ea.call(n)==na};function oa(){return"es"===gt()?"civitatis":"viator"}function ra(e){const t=/(http[s]?:\/\/www\.booking\.com\/[\w\/-]+)\./.exec(e);return(t?t[1]:e).replace(/http[s]?:\/\/www\.booking\.com\/hotel\//,"")}function ia(e){const t=e||window.location.href;try{const{pathname:e}=new URL(t),n=ra(t.replace(/\.html?[^]*/,""));return e.includes("searchresults")?null:n}catch(e){return console.error(e),null}}class sa extends Wt{latestCheckbox=null;confirmationInfo=null;constructor(){super("BOOKING_ACTIVITIES")}async shouldActivate(){return sa.isCheckout(window.location)||sa.isConfirmation(window.location)}static isCheckout(e){return $n.test(e.href)&&null!==sa.getCheckoutType(e.pathname)}static isConfirmation(e){return Bn.test(e.href)}static getCheckoutType(e){return/\/book(?:\.[a-z]+)?\.html$/i.test(window.location.pathname)?"book":/\/tpi_book(?:\.[a-z]+)?\.html$/i.test(window.location.pathname)?"tpi_book":null}async getConfirmationInfoJson(){if(null!==this.confirmationInfo)return this.confirmationInfo;if(!sa.isConfirmation(window.location))return null;const e=await Kt(['script[data-capla-namespace*="b-post-booking-web-"][data-capla-store-data="apollo"]']);return this.confirmationInfo=e,this.confirmationInfo}async getDestination(){const e=await this.getConfirmationInfoJson();if(!e)return null;const t=Bt(e,e=>e.startsWith("PostBookingProperty:"));if(!aa(t))return null;if(!("hotelCity"in t))return null;const n=t.hotelCity;if(!aa(n))return null;const a=n;return"rawValue"in a&&"string"==typeof a.rawValue?a.rawValue:null}async handleCrossSell(){sa.isConfirmation(window.location)?this.maybeOpenTab():this.injectUI()}injectUI(){switch(sa.getCheckoutType(window.location.pathname)){case"book":return this.injectBookCheckbox(),void this.attachBookSearchInterceptor();case"tpi_book":return this.injectTpiBookCheckbox(),void this.attachTpiBookSearchInterceptor();default:return}}async injectBookCheckbox(){Vt(['button[name="book"][class*="complete-booking"]'],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new ca(t);const n=e.parentElement?.parentElement?.parentElement;n&&n.before(this.latestCheckbox.$rootElement)},{retryMs:rn,checkIntervalMs:rn})}async attachBookSearchInterceptor(){Vt(['button[name="book"][class*="complete-booking"]'],e=>{const t=an(e,this.handleSubmitClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async injectTpiBookCheckbox(){}async attachTpiBookSearchInterceptor(){}async handleSubmitClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await w.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await w.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(window.location.href)),n=ia(Ut(['[data-c360-id="hotelTitle"] a'])?.getAttribute("href")??"");w.openActivitiesCrossSellTab({provider:oa(),sourceUrl:window.location.href,destination:e,checkin:t.checkin(),checkout:t.checkout(),adults:t.adults(),currency:t.currency(),children:t.children(),sourceId:n})}async getQueryParamMap(e){const t=await this.getConfirmationInfoJson(),n=t?.body;return{checkin(){const e=n?.trans_checkin;return e&&"string"==typeof e?Yt.fromDate(new Date(e)):Yt.fromDate(new Date)},checkout(){const e=n?.trans_checkout;return e&&"string"==typeof e?Yt.fromDate(new Date(e)):Yt.fromDate(new Date)},adults(){const e=n?.num_adults;return e?Number.isNaN(e)?2:e:2},children(){const e=n?.child_ages;return e?e.length:0},currency:()=>n?.trans_currencycode}}}class ca{$checkbox;$linkText;$link;$text;$label;$wrapper;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e;const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.booking.explore_activities_with",{},t));const n=oa();this.$linkText=document.createTextNode(gn(`cross_sell.booking.${n}`,{},t)),this.$link=document.createElement("a"),this.$link.href=function(e){switch(e){case"viator":return(()=>{const e=new URL("/","https://www.viator.com");return e.searchParams.append("pid","P00253809"),e.searchParams.append("mcid","42383"),e.searchParams.append("medium","link"),e.toString()})();case"civitatis":return(()=>{const e=new URL("/","https://www.civitatis.com");return e.searchParams.append("aid","110241"),e.toString()})();default:throw new Error(`Unknown provider: ${e.toString()}`)}}(n),this.$link.target="_blank",this.$link.rel="noopener noreferrer",this.$link.appendChild(this.$linkText),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$text),this.$label.appendChild(this.$link),this.$wrapper=document.createElement("div"),this.$wrapper.className="dir-wrapper",this.$wrapper.appendChild(this.$label),this.$style=document.createElement("style"),this.$style.textContent="\n .dir-wrapper {\n width: 100%;\n display: flex;\n justify-content: flex-end;\n }\n\n .dir-label {\n margin-right: 0.1em;\n }\n\n .dir-checkbox {\n margin-right: 0.5em;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$wrapper)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get $rootElement(){return this.$rootHost}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}class la{platforms=[];constructor(){this.platforms=[new kn,new vn,new _n,new Cn,new On,new sa]}async initialize(e){for(const t of this.platforms)await t.shouldActivate(e)&&await t.handleCrossSell()}}const ua="directoUserId";let pa="";async function da(){if(pa)return pa;const{[ua]:e}=await chrome.storage.local.get(ua);return pa=e||"",pa}class ma{partner_name=""}class ha extends ma{info=null;parserType="json";constructor(e){if(!e)throw new Error("Partner name is required");super(),this.partner_name=e}shouldHandle(e){throw new Error("Method not implemented.")}async getLocale(){return gt()}async isReservation(){return!!await this.getReservationId()}async getReservationDetails(){try{if(await this.isReservation())return{platform_reservation_id:await this.getReservationId(),reservation_url:window.location.href,booking_reference:await this.getBookingReference(),partner_name:this.partner_name,status:await this.getStatus(),property_name:await this.getPropertyName(),guest_name:await this.getGuestName(),guest_email:await this.getGuestEmail(),...await this.getPrice(),...await this.getStayParams(),locale:await this.getLocale(),clean_html:"html"===this.parserType?await this.getCleanHTML():null}}catch(e){console.error("Error getting reservation details",e)}return null}async getStayParams(){return{checkin:await this.buildQueryParams("checkin"),checkout:await this.buildQueryParams("checkout"),adults:await this.buildQueryParams("adults"),children:await this.buildQueryParams("children")}}async buildQueryParams(e,t=window.location.href){const n=new URL(t),a=(await this.getQueryParamMap(n))[e];return(B(a)?await a():Rt(n.searchParams.get(a)))??a??null}async getInfoJSON(e="#__NEXT_DATA__"){try{if(this.info)return this.info;const t=await Dt(()=>Ut([e]),e=>!e||!e.textContent,10)(),n=JSON.parse(t?.textContent??"{}");return this.info=It(n)?null:n,this.info}catch(e){return console.error("Error getting info",e),null}}async getReservationId(){throw new Error("Method not implemented.")}async getBookingReference(){throw new Error("Method not implemented.")}async getPropertyName(){return null}async getGuestName(){return null}async getGuestEmail(){return null}async getPrice(){throw new Error("Method not implemented.")}async getStatus(){throw new Error("Method not implemented.")}async getQueryParamMap(e){throw new Error("Method not implemented.")}async getCleanHTML(){return await function({timeout:e=2e3,stableThreshold:t=1e3,checkInterval:n=300,minTextLength:a=200,minElementCount:o=30}){const r=Date.now()+e;return new Promise(i=>{let s=!1,c=Date.now(),l=Date.now(),u=0,p={elements:0,text:0};const d=()=>{s||(s=!0,m.disconnect(),clearTimeout(g),i())},m=new MutationObserver(()=>{c=Date.now()}),h=()=>{if(s)return;const e=Date.now();if(e>=r)return void d();const i=document.body?.getElementsByTagName("*").length??0,m=(document.body?.innerText??"").replace(/\s+/g," ").trim().length;i!==p.elements||m!==p.text?(p={elements:i,text:m},l=e,u=0):e-c>=n&&(()=>{const e=document.querySelector('main, [role="main"], article')??document.body;if(!e)return!1;const t=(e.textContent??"").replace(/\s+/g," ").trim(),n=e.querySelectorAll("section, article, div, p, span").length;return t.length>=a&&n>=o})()?u+=1:u=0,u>=3&&e-l>=t?d():setTimeout(h,n)},f=()=>{s||(document.body?(p={elements:document.body.getElementsByTagName("*").length,text:(document.body.innerText??"").replace(/\s+/g," ").trim().length},m.observe(document.body,{childList:!0,subtree:!0}),h()):setTimeout(f,50))},g=setTimeout(d,e);(e=>{if("complete"===document.readyState)return e();const t=()=>{window.removeEventListener("load",t),document.removeEventListener("DOMContentLoaded",t),e()};window.addEventListener("load",t,{once:!0}),document.addEventListener("DOMContentLoaded",t,{once:!0})})(f)})}({timeout:5e3}),function(e){const t=e.body||e,n=t.querySelector("main")||t||e;if(!n)return"";n.querySelectorAll("script, noscript, style, svg, link, iframe, img, select, textarea, command, object, param, track, base").forEach(e=>e.remove()),n.querySelectorAll("[style]").forEach(e=>{e.removeAttribute("style")});const a=e.createTreeWalker(n,NodeFilter.SHOW_COMMENT,null),o=[];let r;for(;r=a.nextNode();)o.push(r);o.forEach(e=>{e.parentNode&&e.parentNode.removeChild(e)});const i=[/tracking/i,/banner/i];return n.querySelectorAll("[class], [id]").forEach(e=>{const t=`${e.className} ${e.id}`;i.some(e=>e.test(t))&&e.remove()}),n.innerHTML.trim().replace(/\s+/g," ").replace(/\n\s*\n/g,"\n").replace(/^\s+|\s+$/g,"").replace(/\n\s+/g,"\n").replace(/\s+\n/g,"\n")}(document.cloneNode(!0))}}function fa(e){return Math.round(e)/100}function ga(e){if(!e)return null;const t=/([\d,]+)(\.\d+)*/.exec(e),n=Oe(t,"0",e).replace(/,(\d{1})$/,"$10p").replace(/,(\d{2})$/,"$1p").replace(",","").replace(/\.(\d{1})$/,"$10p").replace(/\.(\d{2})$/,"$1p").replace(".","");return n?n.endsWith("p")?parseInt(n.slice(0,-1).trim(),10):parseInt(`${n.trim()}00`,10):null}class ka extends ha{constructor(){super("HYATT")}shouldHandle(e){return/hyatt\.com(?:[a-zA-Z0-9-\/]*?)\/book\/confirm\//i.test(e)||/hyatt\.com(?:[a-zA-Z0-9-\/]*?)\/reservation\/detail\//i.test(e)}async getReservationId(){try{return(new URL(window.location.href).pathname.split("/").pop()??null)||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();return e?e.confirmation_number:null}async getPropertyName(){const e=await this.getInfoJSON();return e?.hotel_name??null}async getGuestName(){const e=Ut(['[data-locator="guest-name"]']),t=Ut(['[data-js="firstName"]']),n=Ut(['[data-js="lastName"]']);return e?.textContent?.trim()||t?.getAttribute("value")+" "+n?.getAttribute("value")||await this.getGuestEmail()||null}async getGuestEmail(){const e=await this.getInfoJSON();return e?.customer_email||Ut(['[data-js="email"]'])?.getAttribute("value")||null}async getPrice(){try{const e=Ut(['[data-js="cash-total-price"']),t=e?.getAttribute("data-currency")?.trim()??"",n=e?.getAttribute("data-price")?.trim()??"";return{currency:t,net_total_price:ga(n),gross_total_price:ga(n),total_tax_price:null}}catch(e){return console.error("Error getting price",e),null}}async getInfoJSON(){if(this.info)return this.info;try{const e=Ft(['script[type="text/javascript"]']),t=Array.from(e).find(e=>/utag_data\s*=\s*\{/.test(e.textContent||""));if(t){const e=t.textContent,n=e?.match(/utag_data\s*=\s*(\{[\s\S]*?\})/);if(n){const e=n[1],t=JSON.parse(e);return this.info=t,this.info}}return null}catch(e){return console.error("Error getting info",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){try{const e=await this.getInfoJSON();return{checkin:e?.date_checkin||Ut([".originalCheckinDate"])?.textContent?.trim()||null,checkout:e?.date_checkout||Ut([".originalCheckoutDate"])?.textContent?.trim()||null,adults:e?.number_of_adults||Ut(['[data-id="adults"]'])?.getAttribute("data-value")||null,children:e?.number_of_children||null}}catch(e){return console.error("Error getting query param map",e),{checkin:null,checkout:null,adults:null,children:null}}}}class ba extends ha{constructor(){super("BARCELO"),this.parserType="html"}shouldHandle(e){return/reservation\.barcelo\.com(?:[a-zA-Z\/]*?)\/booking-confirmation/i.test(e)}async getReservationId(){try{const e=new URL(window.location.href).searchParams.get("itineraryNumber");if(e)return e;const t=await Dt(()=>Ft(['[class*="Alert_success__"] span']),e=>!Oe(e,"[1].textContent",null),10)();return t?.[1]?.textContent?.trim()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class ya extends ha{constructor(){super("MARRIOTT"),this.parserType="html"}shouldHandle(e){return/www\.marriott\.com(?:[a-zA-Z-\/]*?)\/reservation\/(confirmation|upcomingReservation)\.mi/i.test(e)}async getReservationId(){try{const e=await Dt(Ft,e=>!Oe(e,"[1].textContent",null))([".booking-id-wrapper span"]),t=e?.length?e[1]?.textContent:null;if(t)return t.trim().replace(/\s/g,"").replace("#","");return new URL(window.location.href).searchParams.get("confirmationNumber")||null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getStatus(){return"BOOKED"}async getPrice(){return null}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}var va=Object.prototype.toString;const wa={...(ja=function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=va.call(t)),e[t]=n},xa=pt,_a=function(){return xa},function(e,t){return function(e,t,n,a){return ct(e,function(e,o,r){t(a,n(e),o,r)}),a}(e,ja,_a(t),{})})({AED:"د.إ",AFN:"؋",ALL:"L",AMD:"֏",ANG:"ƒ",AOA:"Kz",ARS:"AR$",AUD:"$",AWG:"ƒ",AZN:"ман",BAM:"KM",BBD:"$",BDT:"৳",BGN:"лв",BHD:".د.ب",BIF:"FBu",BMD:"$",BND:"$",BOB:"$b",BRL:"R$",BSD:"$",BTC:"฿",BTN:"Nu.",BWP:"P",BYR:"p.",BZD:"BZ$",CAD:"$",CDF:"FC",CHF:"CHF",CLP:"$",CNY:"¥",COP:"$",CRC:"₡",CUC:"$",CUP:"₱",CVE:"$",CZK:"Kč",DJF:"Fdj",DKK:"kr",DOP:"RD$",DZD:"دج",EEK:"kr",EGP:"£",ERN:"Nfk",ETB:"Br",ETH:"Ξ",EUR:"€",FJD:"$",FKP:"£",GEL:"₾",GGP:"£",GHC:"₵",GHS:"GH₵",GIP:"£",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"$",HKD:"$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"₪",IMP:"£",INR:"₹",IQD:"ع.د",IRR:"﷼",ISK:"kr",JEP:"£",JMD:"J$",JOD:"JD",JPY:"¥",KES:"KSh",KGS:"лв",KHR:"៛",KMF:"CF",KPW:"₩",KRW:"₩",KWD:"KD",KYD:"$",KZT:"лв",LAK:"₭",LBP:"£",LKR:"₨",LRD:"$",LSL:"M",LTC:"Ł",LTL:"Lt",LVL:"Ls",LYD:"LD",MAD:"MAD",MDL:"lei",MGA:"Ar",MKD:"ден",MMK:"K",MNT:"₮",MOP:"MOP$",MUR:"₨",MVR:"Rf",MWK:"MK",MXN:"$",MYR:"RM",MZN:"MT",NAD:"$",NGN:"₦",NIO:"C$",NOK:"kr",NPR:"₨",NZD:"$",OMR:"﷼",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"₱",PKR:"₨",PLN:"zł",PYG:"Gs",QAR:"﷼",RMB:"¥",RON:"lei",RSD:"Дин.",RUB:"₽",RWF:"R₣",SAR:"﷼",SBD:"$",SCR:"₨",SDG:"ج.س.",SEK:"kr",SGD:"$",SHP:"£",SLL:"Le",SOS:"S",SRD:"$",SSP:"£",STD:"Db",SVC:"$",SYP:"£",SZL:"E",THB:"฿",TJS:"SM",TMT:"T",TND:"د.ت",TOP:"T$",TRL:"₤",TRY:"₺",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"₴",UGX:"USh",UYU:"$U",UZS:"лв",VEF:"Bs",VND:"₫",VUV:"VT",WST:"WS$",XAF:"FCFA",XBT:"Ƀ",XCD:"$",XOF:"CFA",XPF:"₣",YER:"﷼",ZAR:"R",ZWD:"Z$",USD:"$",GBP:"£"}),$:"USD"};var ja,_a,xa;function za(e){return wa[e]||e||"USD"}class Ca extends ha{constructor(){super("HOLIDU")}shouldHandle(e){return/holidu\.[.a-z]{2,7}\/reservations\//i.test(e)}async getReservationId(){try{return new URL(window.location.href).pathname.split("/").pop()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();if(e)return e.booking.bookingDetails.externalBookingId||e.booking.bookingDetails.bookingId;const t=Ut(["#contact b"]);return t?.textContent?.trim()??null}async getPrice(){try{const e=await this.getInfoJSON();if(e)return{currency:e.booking.bookingDetails.receipt.priceTotal.price.local.currency,gross_total_price:ga(e.booking.bookingDetails.receipt.priceTotalWithTaxes.price.local.value),net_total_price:ga(e.booking.bookingDetails.receipt.priceTotal.price.local.value)};const t=Ut(["#payment-schedule .mb-xxl"]);if(t?.textContent){const e=t.textContent.trim(),n=e.replace(/[\d,.\s]*/g,""),a=ga(e.replace(/[^0-9.,]/g,""));return{currency:za(n),gross_total_price:a,net_total_price:a}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=await this.getInfoJSON();if(e)return e.apartment.details.name;const t=Ut([".text-2xl"]);return t?.textContent?.trim()??null}async getGuestName(){const e=await this.getInfoJSON();return e?`${e.booking.bookingDetails.customer.firstName} ${e.booking.bookingDetails.customer.lastName}`:null}async getGuestEmail(){const e=await this.getInfoJSON();if(e)return e.booking.bookingDetails.customer.email;const t=Ft([".tw-reset-button.cursor-pointer.text-black-ultra"]);return t?.[5]?.textContent?.trim()??null}async getStatus(){const e=Ut([".pr-m .p-m.bg-error-light"]);return e?.textContent?.trim()?.includes("cancel")||window.location.href.includes("cancel")?"CANCELLED":"BOOKED"}async getLocale(){const e=Ut(['[data-testid="Navbar__LocaleCurrencySelector"]']);return e?.textContent?.trim()?.split("/")[0]?.toLowerCase()?.trim()||this.getLocale()}async getInfoJSON(){try{if(this.info)return this.info;const e=await Dt(()=>Ut(['script[data-key="initial-state"]']),e=>!e||!e.textContent,10)(),t=e?.textContent?.trim()?.replace(/<!--/,"").replace(/-->/,""),n=JSON.parse(t??"{}");return this.info=It(n)?null:n,this.info}catch(e){return console.error("Error getting info",e),null}}async getQueryParamMap(e){const t=await this.getInfoJSON();if(t)return{checkin:t.booking.bookingDetails.checkin,checkout:t.booking.bookingDetails.checkout,adults:t.booking.bookingDetails.guests.adults,children:t.booking.bookingDetails.guests.kids};const n=Ut([".pr-m .mt-s:not(.gap-xs)"]);return{checkin:async()=>{try{if(n){const e=n.children[0],t=e?.children[1]?.children[0];return Zt(t?.textContent?.trim()??null)??null}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(n){const e=n.children[1],t=e?.children[1]?.children[0];return Zt(t?.textContent?.trim()??null)??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=Ut(["#root > section > div > div > div.pr-m > div:nth-child(2) > div > div.mt-xl.w-full > div > div:nth-child(2) > span:nth-child(1)"]);return e?.textContent?.trim().replace(/[^0-9]/g,"")??""}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{const e=Ut(["#root > section > div > div > div.pr-m > div:nth-child(2) > div > div.mt-xl.w-full > div > div:nth-child(2) > span:nth-child(2)"]),t=e?.textContent?.trim().match(/\d+/g)??[];return t?.length>0&&t[0]||null}catch(e){return console.error("Error getting children",e),null}}}}}const Sa=".confirmation-page .row > div.col-lg-5.col-12";class Ea extends ha{constructor(){super("MEININGER")}shouldHandle(e){return/book\.meininger-hotels\.com\/reservations\/[a-f0-9-]+-(?!guest-details)[^\/]+/i.test(e)}async getReservationId(){try{return(new URL(window.location.href).pathname.split("/").pop()??null)||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();if(e)return e.props.bookingCartConfirmation.info.bookingReservationNumber;const t=Ut([`${Sa} > div:nth-child(2) > div > div:nth-child(2)`]);return t?.textContent?.trim()??null}async getPropertyName(){const e=await this.getInfoJSON();return e?.props?.bookingCartConfirmation?.info?.hotelFullName??null}async getGuestName(){const e=await this.getInfoJSON(),t=e?.props?.bookingCartConfirmation?.info?.guest;return void 0!==t?`${t.name} ${t.surname}`:null}async getGuestEmail(){const e=await this.getInfoJSON();return e?.props?.bookingCartConfirmation?.info?.guest?.email??null}async getPrice(){try{const e=await this.getInfoJSON();if(e)return{currency:e.props.bookingCartConfirmation.info.currency,net_total_price:e.props.bookingCartConfirmation.totalAmount,gross_total_price:e.props.bookingCartConfirmation.totalAmountWithCityTax,total_tax_price:e.props.bookingCartConfirmation.totalCityTax};const t=Ut([".bookingCart"]),n=Ut([".bookingCart"])?.children[0],a=n?.getAttribute("data-currency")?.trim()??"",o=t?.children[1];return{currency:za(a),net_total_price:ga(o?.textContent?.trim().replace(/[\s]/g,"")||""),gross_total_price:null,total_tax_price:null}}catch(e){return console.error("Error getting price",e),null}}async getInfoJSON(){try{if(this.info)return this.info;const e=await Dt(()=>Ut(["#app"]),e=>!e||!e.getAttribute("data-page"),10)(),t=JSON.parse(e?.getAttribute("data-page")||"{}");return this.info=It(t)?null:t,this.info}catch(e){return console.error("Error getting info",e),null}}async getStatus(){const e=Ut([".pr-m .p-m.bg-error-light"]);return e?.textContent?.trim()?.includes("cancel")?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();if(t)return{checkin:t.props.bookingCartConfirmation.info.arrivalDate,checkout:t.props.bookingCartConfirmation.info.departureDate,adults:t.props.bookingCartConfirmation.info.adults,children:t.props.bookingCartConfirmation.info.children};const n=Ut([`${Sa} > div:nth-child(3) > div > div:nth-child(2)`]);return{checkin:async()=>{try{if(n){const e=n.textContent;return Zt(Xt(e?.split(" - ")[0]??null))??null}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(n){const e=n.textContent;return Zt(Xt(e?.split(" - ")[1]??null))??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=Ut([`${Sa} > div:nth-child(4) > div > div.text-sm.d-flex.flex-column`]),t=e?.textContent?.trim().match(/\d+/g)??[];return t?.length>0&&t[0]||null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{const e=Ut([`${Sa} > div:nth-child(4) > div > div.text-sm.d-flex.flex-column > span:nth-child(2)`]),t=e?.textContent?.trim().match(/\d+/g)??[];return t?.length>0&&t[0]||null}catch(e){return console.error("Error getting children",e),null}}}}}class Oa extends ha{constructor(){super("EVOLVE")}shouldHandle(e){return/evolve\.com\/booking\/(\d+)\/confirmation/i.test(e)}async getReservationId(){try{const e=new URL(window.location.href),t=e.pathname.match(/\/booking\/(\d+)\/confirmation/),n=await this.getQueryParamMap(e);return t&&t[1]?`${t[1]}-${Object.values(n).map(e=>e()).join("-")}`:null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return this.getReservationId()}async getPrice(){return{currency:null,gross_total_price:null,net_total_price:null}}async getPropertyName(){const e=Ut([".Confirmation_listingCopy__t0MUM .Confirmation_sectionHeading__Mlxru"]);return e?.textContent?.trim()??null}async getGuestName(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:async()=>{try{return Zt(Xt(e.searchParams.get("startDate")))??null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return Zt(Xt(e.searchParams.get("endDate")))??null}catch(e){return console.error("Error getting checkout",e),null}},adults:"adults",children:"children"}}}class Aa extends ha{constructor(){super("ACCOR")}shouldHandle(e){return/secure\.accor\.com\/managebookings\/index(?:\.[a-z]{2}(?:-[a-z]{2})?)?\.shtml#\/details/i.test(e)}async getReservationId(){try{const e=await Dt(()=>Ut([".bd-info__booking-number"]),e=>!e,15)();return e?.textContent?.trim()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPrice(){try{const e=Ut(["#afterTaxValue"]);if(e?.textContent){const t=Ut([".price-display__value"],e),n=t?.textContent?.trim()??e.textContent.trim(),a=ga(n)??Math.round(100*parseFloat(n.replace(/[^0-9.,]/g,"").replace(",","."))),o=Ut([".js-currency-text"]);return{currency:o?.textContent?.trim()??"",gross_total_price:Number(a),net_total_price:Number(a)}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=Ut(["#hotelName"]);return e?.textContent?.trim()??null}async getGuestName(){const e=Ut(["#reserveeFullName"]);return e?.textContent?.trim()??null}async getGuestEmail(){return null}async getStatus(){const e=Ut([".is-cancellation-message"]);return e?.textContent?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=Ut([".bd-info__date"]);return{checkin:async()=>{try{if(t){const e=Ut([".bd-info__date-in-value"],t);return e?.textContent?.trim()??null}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t){const e=Ut([".bd-info__date-out-value"],t);return e?.textContent?.trim()??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=Ut(["#roomListPaxAdults_0"]);return e?Number(e.textContent?.trim().match(/\d+/g)?.[0]??null):null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class Pa extends ha{constructor(){super("ACCOR")}shouldHandle(e){return/secure\.accor\.com\/ssr\/app\/accor\/confirmation\/index(?:\.[a-z]{2}(?:-[a-z]{2})?)?\.shtml/i.test(e)}async getReservationId(){try{const e=await this.getManageReservationButton(),t=e?.getAttribute("href");if(t){return new URL(t,window.location.origin).searchParams.get("historic.folderNumber")??null}return null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPropertyName(){const e=Ut([".hotelTitle__text"]);return e?.textContent?.trim()??null}async getGuestName(){const e=await this.getManageReservationButton(),t=e?.getAttribute("href");return t?new URL(t,window.location.origin).searchParams.get("historic.bookingName")??null:null}async getGuestEmail(){return null}async getPrice(){try{const e=Ut([".booking-price"]);if(e?.textContent){const t=Ut([".mcp-price-number"],e),n=Ut([".mcp-price-cent"],e),a=Ut([".js-currency-text"]),o=`${t?.textContent?.trim()??""}${n?.textContent?.trim()??"00"}`;return{currency:a?.textContent?.trim()??"",gross_total_price:Number(o),net_total_price:Number(o)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getManageReservationButton(){return await Dt(()=>Ut(["a.btn--manage-reservation"]),e=>!e,15)()}async getQueryParamMap(e){const t=Ut(["li.confirmation-booking-summary__body-items-item"]);return{checkin:async()=>{try{const t=await this.getManageReservationButton(),n=t?.getAttribute("href");if(n){const t=new URL(n,e.origin),a=t.searchParams.get("historic.dayIn")??null,o=t.searchParams.get("historic.monthIn")??null;return`${t.searchParams.get("historic.yearIn")??null}-${o}-${a}`}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t){const n=Number(t.children[0]?.textContent?.trim().match(/\d+/g)?.[0]??null);if(n){const t=await(await this.getQueryParamMap(e)).checkin(),a=new Date(t).getTime()+24*n*60*60*1e3;return Zt(new Date(a).toISOString())??null}return null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?Number(t.children[1]?.textContent?.trim().match(/\d+/g)?.[1]??null):null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?Number(t.children[1]?.textContent?.trim().match(/\d+/g)?.[2]??null):null}catch(e){return console.error("Error getting children",e),null}}}}}class Na extends ha{constructor(){super("GUESTREADY")}shouldHandle(e){return/book\.guestready\.com\/(?:[a-zA-Z]{2}\/)*reservations\/([a-zA-Z0-9]+)/i.test(e)}async getReservationId(){try{const e=/\/reservations\/([a-zA-Z0-9]+)/,t=new URL(window.location.href);return t.pathname.match(e)?.[1]??null}catch(e){return console.error("Error getting reservation id",e),null}}async getPropertyName(){return null}async getGuestName(){return null}async getBookingReference(){const e=await this.getInfoJSON();return e?.props?.pageProps?.reservation?.booking_number??null}async getPrice(){try{const e=await this.getInfoJSON();if(e?.props?.pageProps?.reservation?.receipts?.payments[0]){const t=e.props.pageProps.reservation.receipts.payments[0].amount_formatted,n=t.replace(/[0-9.,\s]/g,""),a=ga(t);return{currency:za(n),gross_total_price:a,net_total_price:a}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await this.getInfoJSON();return"CANCELLED"===e?.props?.pageProps?.reservation?.ongoing_status?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();return{checkin:async()=>{try{return t?.props?.pageProps?.reservation?.check_in_date?t.props.pageProps.reservation.check_in_date:null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.props?.pageProps?.reservation?.check_out_date?t.props.pageProps.reservation.check_out_date:null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.props?.pageProps?.reservation?.adults?t.props.pageProps.reservation.adults:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?.props?.pageProps?.reservation?.children?t.props.pageProps.reservation.children:null}catch(e){return console.error("Error getting children",e),null}}}}}const Ta=(e,t,n)=>{if(e.searchParams.get(t)&&e.searchParams.get(n)){const a=e.searchParams.get(t),o=`${(parseInt(a?.slice(0,2)||"",10)||0)+1}`.padStart(2,"0"),r=a?.slice(2);return`${r}-${o}-${e.searchParams.get(n)}`}return null};class Ia extends ha{constructor(){super("IHG")}shouldHandle(e){return/www\.ihg\.com(?:[a-zA-Z\/]*?)\/pay\/confirmation/i.test(e)}async getReservationId(){try{const e=new URL(window.location.href);return`${e.searchParams.get("confirmationNumber")}-${e.searchParams.get("lastName")}`}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(()=>Ut(['[data-slnm-ihg="reservationConfirmationMessage"] .notranslate']),e=>!e||!e?.textContent?.trim(),10)();return e?.textContent?.trim()??this.getReservationId()}async getPrice(){try{const e=await Dt(()=>Ut([".table-bottom._total .side-panel-total"]),e=>!e||!e?.textContent?.trim(),10)();if(e?.textContent){const t=e.textContent.replace(/[^0-9.,]/g,""),n=Ut([".brandThemeLink"],e),a=ga(t);return{currency:n?.textContent?.trim()??"",gross_total_price:a,net_total_price:a}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=Ut([".hotelInfoSummary .ng-star-inserted"]);return e?.textContent?.trim()??null}async getGuestName(){const e=Ut(['[data-slnm-ihg="quickEnrollWelcomeContentSID"] .notranslate']);return e?.textContent?.trim()??null}async getGuestEmail(){return await this.getGuestName()}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await Dt(()=>Ut(['[data-slnm-ihg="duplicateReservationButton"]']),e=>!e||!e?.getAttribute("href"),10)(),n=t?.getAttribute("href");if(!n)return{checkin:async()=>null,checkout:async()=>null,adults:async()=>null,children:async()=>null};const a=new URL(`${window.location.origin}${n}`);return{checkin:async()=>{try{return Ta(a,"qCiMy","qCiD")}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return Ta(a,"qCoMy","qCoD")}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return a.searchParams.get("qAdlt")?a.searchParams.get("qAdlt"):null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return a.searchParams.get("qChld")?a.searchParams.get("qChld"):null}catch(e){return console.error("Error getting children",e),null}}}}}class La extends ha{constructor(){super("MELIA")}shouldHandle(e){return/www\.melia\.com(?:[a-zA-Z\/]*?)\/checkout\/confirmation/i.test(e)}async getReservationId(){try{return new URL(window.location.href).searchParams.get("loc")??(await this.getInfoJSON())?.props?.pageProps?.checkOutDetails?.summary?.locatorCode??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();return e?.props?.pageProps?.checkOutDetails?.summary?.selectedConfig?.locator??null}async getPrice(){try{const e=await this.getInfoJSON();if(e?.props?.pageProps?.checkOutDetails?.summary?.selectedRoomRate?.currencyPrice){const t=e.props.pageProps.checkOutDetails.summary.selectedRoomRate.currencyPrice||e.props.pageProps.checkOutDetails.summary.selectedRoomRate.price,n=e.props.pageProps.checkOutDetails.currency,a=ga(t);return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:(a||0)-(ga(e.props.pageProps.checkOutDetails.summary.selectedRoomRate.currencyPriceWithoutTax||e.props.pageProps.checkOutDetails.summary.selectedRoomRate.priceWithoutTax)||0)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await this.getInfoJSON();return"CANCELLED"===e?.props?.pageProps?.reservation?.ongoing_status?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON(),n=t?.props?.pageProps?.checkOutDetails?.summary?.selectedConfig?.dates,a=t?.props?.pageProps?.checkOutDetails?.summary?.selectedConfig?.occupancy[0];return{checkin:async()=>{try{return n?n[0]:null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return n?n[1]:null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return a?a.adults:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return a?a.children:null}catch(e){return console.error("Error getting children",e),null}}}}}class Da extends ha{constructor(){super("MELIA")}shouldHandle(e){return/www\.melia\.com(?:[a-zA-Z\/]*?)\/reservation/i.test(e)}async getReservationId(){try{return this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(()=>Ut([".definition-list-wrapper___2kUGk dd"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPrice(){try{const e=await Dt(()=>Ut([".c-payment-card___1_CuQ"]),e=>!e||!e.textContent,10)();if(e){const t=Ut([".price___14pEy.featured___2Dap0"],e),n=ga((t?.textContent??"").replace(/[a-zA-Z\s]/g,"")),a=t?.textContent?.replace(/[0-9.,\s]/g,"")??null,o=Ut([".summary___3U0EP .price___14pEy"],e);return{currency:a,gross_total_price:n,net_total_price:n,total_tax_price:ga((o?.textContent??"").replace(/[a-zA-Z\s]/g,""))}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=Ft([".c-definition-list___21ds4"]);if(e){const t=e[3];if(t)return t.textContent?.toLocaleLowerCase().includes("cance")?"CANCELLED":"BOOKED"}return"BOOKED"}async getQueryParamMap(e){const t=Ft([".details-section___2hrKe"]);return{checkin:async()=>{try{if(t&&t[1]){const e=Ut([".detail___2S67E"],t[1]);return e?.textContent}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t&&t[1]){const e=(Ft([".detail___2S67E"],t[1])||[])[2];return e?.textContent}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{if(t&&t[2]){const e=Ut([".capacity___BYiON"],t[2]);return e?.textContent?.match(/\d+/)?.[0]}return null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{if(t&&t[2]){const e=Ut([".capacity___BYiON"],t[2]);return e?.textContent?.match(/\d+[^]*?(\d+)/)?.[1]}return null}catch(e){return console.error("Error getting children",e),null}}}}}class Ra extends ha{constructor(){super("IBEROSTAR")}shouldHandle(e){return/booking\.iberostar\.com\/Book\/Confirm\.aspx/i.test(e)}async getReservationId(){try{return this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(()=>Ut(["#cphMain_ctl01_Label1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getGuestName(){const e=await Dt(()=>Ut(["#ContentPlaceHolder3_lblcodclinombre1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getGuestEmail(){const e=await Dt(()=>Ut(["#ContentPlaceHolder3_lblcodemail1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPropertyName(){const e=await Dt(()=>Ut([".hname"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPrice(){try{const e=await Dt(()=>Ft(["#Totales div"]),e=>!e||It(e),10)(),t=Array.from(e||[]).find(e=>"none"!==e.style.display);if(t){const e=ga((t?.textContent??"").replace(/[a-zA-Z\s]/g,"")),n=Ut([".currency"],t);return{currency:n?.textContent?.trim()??null,gross_total_price:e,net_total_price:e,total_tax_price:null}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return Ft([".alert-cancelled"])?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=Ut(["#reservationData"]);return{checkin:async()=>{try{if(t&&t){const e=Ut([".checkin .fieldvalue"],t);return Xt(e?.textContent?.trim()??null)}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t&&t){const e=Ut([".checkout .fieldvalue"],t);return Xt(e?.textContent?.trim()??null)}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{if(t&&t){const e=Ut([".people .fieldvalue"],t);return e?.textContent?.trim()?.match(/\d+/)?.[0]}return null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class Ma extends ha{constructor(){super("SONDER")}shouldHandle(e){return/www\.sonder\.com(?:[a-zA-Z-/]*?)\/bookings\/[a-zA-Z0-9]*?\/confirmations/i.test(e)}async getReservationId(){try{return await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getGuestName(){const e=await this.getInfoJSON(),t=e?.props?.pageProps?.confirmation?.guestInfo;return t?`${t?.firstName}-${t?.lastName}`:null}async getBookingReference(){const e=await this.getInfoJSON();return e?.props?.pageProps?.bookingUniqKey??null}async getPropertyName(){const e=await this.getProductInfo();return e?`${e?.title} - ${e?.subtitle}`:null}async getPrice(){try{const e=await this.getInfoJSON(),t=e?.props?.pageProps?.confirmation?.invoiceInfo;if(t){const e=t?.total?.value.replace(/[^\d.,]/g,""),n=t?.total?.currency,a=ga(e);return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:ga(t?.lineItems?.find(e=>"taxes"===e.type)?.value)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await this.getInfoJSON();return"CANCELLED"===e?.props?.pageProps?.reservation?.ongoing_status?"CANCELLED":"BOOKED"}async getProductInfo(){const e=await this.getInfoJSON();return e?.props?.pageProps?.confirmation?.productInfo}async getQueryParamMap(e){const t=await this.getProductInfo();return{checkin:async()=>{try{return t?.checkInDate?t?.checkInDate:null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.checkOutDate?t?.checkOutDate:null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.numberOfGuests?t?.numberOfGuests:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class $a extends ha{constructor(){super("CHOICEHOTELS")}shouldHandle(e){return/www\.choicehotels\.com(?:[a-zA-Z-/]*?)\/confirmation/i.test(e)||/www\.choicehotels\.com(?:[a-zA-Z-/]*?)\/reservations\/reservation-details/i.test(e)}async getReservationId(){try{const e=await Dt(()=>Ut([".confirmation-number-heading"]),e=>!e,15)(),t=(e?.textContent?.trim()??"").split(" ");return t[t.length-1].trim()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getGuestName(){try{const e=await Dt(()=>Ut([".reservation-guest-details .user-name"]),e=>!e,10)();return e?.textContent?.trim()??null}catch(e){return console.error("Error getting guest name",e),null}}async getPropertyName(){try{const e=await Dt(()=>Ut(['[data-track-id="BackToPropertyPage"]']),e=>!e,10)();return e?.textContent?.trim()??null}catch(e){return console.error("Error getting property name",e),null}}async getPrice(){try{const e=Ut(['[data-track-id="summaryOfCharges"]']);if(e?.textContent){const t=Ut([".summary-of-charges-total-amount"],e),n=ga(t?.textContent?.trim()||""),a=Ut([".currency-code"]),o=Ut([".taxes-total"]),r=ga(o?.textContent?.trim()||"");return{currency:a?.textContent?.trim().replace(/[()]/g,"")??"",gross_total_price:Number(n),net_total_price:Number(n),total_tax_price:Number(r)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await Dt(()=>Ut([".booking-summary"]),e=>!e,15)();return{checkin:async()=>{try{if(t){const e=Ut(['[data-track-id="CheckInDate"] .select-day'],t);return e?.textContent?.trim()??null}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t){const e=Ut(['[data-track-id="CheckOutDate"] .select-day'],t);return e?.textContent?.trim()??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=Ut([".occupancy-description"]);return e?Number(e.textContent?.trim().match(/\d+/g)?.[0]??null):null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class Ba extends ha{constructor(){super("WYNDHAMHOTELS")}shouldHandle(e){return/wyndhamhotels\.com(?:[a-zA-Z0-9-\/]*?)\/reservation\/confirm/i.test(e)||/wyndhamhotels\.com(?:[a-zA-Z0-9-\/]*?)\/reservation\/view/i.test(e)}async getReservationId(){try{return await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getInfoJSON(){if(this.info)return this.info;try{const e=Ut(["script"],await Dt(Ut,e=>!e||!e.textContent,10)([".container.component-spacer"])),t=e?.textContent?.match(/var\s+reservationDataFromAEM\s*=\s*(\{[\s\S]*?\});/),n=function(e,t){let n=e;return t.forEach(e=>{n=function(e,t){const n=new RegExp(`${t}\\s*:\\s*("[^"]*"|\\[[\\s\\S]*?\\]|'[^']*'),?`);return e.replace(n,"")}(n,e)}),n}(t?.[1],["taxList","dateRateMap","checkInTime","checkOutTime"])?.replace(/([a-zA-Z0-9_]+)\s*:/g,'"$1":').replace(/\n/g,"");return t?(this.info=JSON.parse(n||"{}"),this.info):null}catch(e){return console.error("Error getting info",e),null}}async getGuestName(){const e=await this.getInfoJSON();return`${e?.firstName}-${e?.lastName}`}async getBookingReference(){const e=await this.getInfoJSON();return e?.confirmationNumber}async getPropertyName(){const e=await this.getInfoJSON();return e?.propertyId}async getPrice(){try{const e=await this.getInfoJSON();if(e){const t=e?.totalCash?.replace(/[^\d.,]/g,""),n=e?.subtotal?.replace(/[^\d.,]/g,""),a=e?.taxTotal?.replace(/[^\d.,]/g,""),o=e?.currencyCode,r=ga(t);return{currency:o,gross_total_price:r,net_total_price:ga(n),total_tax_price:ga(a)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();return{checkin:async()=>{try{return t?.checkInDate?t?.checkInDate:null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.checkOutDate?t?.checkOutDate:null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.adults?t?.adults:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?.children?t?.children:null}catch(e){return console.error("Error getting children",e),null}}}}}class Ua extends ha{constructor(){super("OYOROOMS")}shouldHandle(e){return/oyorooms\.com(?:[a-zA-Z0-9-\/]*?)\/booking\/([a-zA-Z0-9-]+)/i.test(e)}async getReservationId(){try{return new URL(window.location.href).pathname.split("/").pop()||await this.getBookingReference()||null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getBookingData();return e?.invoice??null}async getGuestName(){const e=await this.getBookingData();return e?.guest_name||e?.guest.name||await this.getGuestEmail()||null}async getGuestEmail(){const e=await this.getBookingData();return e?.guest.email||e?.guest_email||null}async getPropertyName(){const e=await this.getBookingData();return e?.get_alias_name||null}async getBookingData(){const e=await this.getInfoJSON();return e?.bookingDetailPage?.bookingData?.data??null}async getInfoJSON(){if(this.info)return this.info;try{const e=Ft(["script"]),t=Array.from(e).find(e=>/window\.__PRELOADED_STATE__\s*=\s*\{/.test(e.textContent||""));if(t){const e=t.textContent,n=e?.match(/window\.__PRELOADED_STATE__\s*=\s*(\{[\s\S]*?\}\n)/);if(n){const e=n[1],t=JSON.parse(e);return this.info=t,this.info}}return null}catch(e){return console.error("Error getting info",e),null}}async getPrice(){try{const e=await this.getBookingData();return e?{currency:e.currency_symbol,gross_total_price:ga(e.total_amount_excluding_wizard||e.final_amount_excluding_oyo_money),net_total_price:ga(e.total_tariff),total_tax_price:0}:null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await this.getBookingData();return"cancelled"===e?.morphedStatus?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await this.getBookingData();return t?{checkin:async()=>{try{return t.checkin}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t.checkout}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t.no_of_adults}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t.no_of_children}catch(e){return console.error("Error getting children",e),null}}}:{checkin:null,checkout:null,adults:null,children:null}}}class Fa extends ha{constructor(){super("CITIZENM")}shouldHandle(e){return/citizenm\.com(?:[a-zA-Z0-9-\/]*?)\/book\/confirmation/i.test(e)}async getReservationId(){try{return new URL(window.location.href).searchParams.get("bookingCode")??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPrice(){try{const e=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-stay-price-total-amount"']);if(e?.textContent){const t=e.textContent.trim(),n=t.replace(/[0-9.,]/g,"").trim(),a=3===n.length?n:za(n),o=ga(t.replace(/[^0-9.]/g,""));return{currency:za(a),gross_total_price:o,net_total_price:o}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-info-hotel"] h1']);return e?.textContent?.trim()??null}async getGuestName(){const e=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-booker-firstname"] .value']),t=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-booker-lastname"] .value']);return`${e?.textContent?.trim()} ${t?.textContent?.trim()}`}async getGuestEmail(){const e=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-booker-email"] .value']);return e?.textContent?.trim()??null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:async()=>{try{const e=await Dt(Ut,e=>!e,10)(['[name="startdate"]']);return e?.getAttribute("value")??null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{const e=await Dt(Ut,e=>!e,10)(['[name="enddate"]']);return e?.getAttribute("value")??null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=await Dt(Ut,e=>!e,10)([".rd-guests .value"]);return e?.textContent?.trim().replace(/[^0-9]/g,"")??""}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class Va extends ha{constructor(){super("HOTEL-BB")}shouldHandle(e){return/hotel-bb\.com(?:[a-zA-Z0-9-\/]*?)\/checkout-confirmation\/([a-zA-Z0-9-]+)/i.test(e)}async getReservationId(){try{return new URL(window.location.href).pathname.split("/").pop()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();return e?.transactionId??null}async getInfoJSON(){try{if(this.info)return this.info;const e=await Dt(()=>Ut(['[data-drupal-selector="drupal-settings-json"]']),e=>!e||!e.textContent,10)(),t=JSON.parse(e?.textContent||"{}");return this.info=It(t)?null:t,this.info}catch(e){return console.error("Error getting info",e),null}}async getRoomData(){const e=await this.getInfoJSON();return Object.values(e?.bookingData?.rooms??{})[0]??null}async getPrice(){try{const e=await this.getInfoJSON();if(e?.bookingData?.totalAmount){const t=e.bookingData.totalAmount||(await this.getRoomData())?.room_info?.price,n=(e?.bbh_datalayer_ga4?.page_data?.currency||(await this.getRoomData())?.room_info?.currency_code)??"",a=ga(t.replace(/[^0-9.]/g,""));return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:ga((await this.getRoomData())?.cityTaxAmount)}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=await this.getInfoJSON();return e?.bookingData?.hotelName??null}async getGuestName(){const e=(await this.getRoomData())?.occupant||(await this.getRoomData())?.occupants_title;if(e)return e;const t=await Dt(Ut,e=>!e,10)([".confirmation__txt-box h1"]);return t?.textContent?.trim().split(",")[0]??null}async getGuestEmail(){const e=(await this.getRoomData())?.booker_email||(await this.getRoomData())?.occupant_email;if(e)return e;const t=await Dt(Ut,e=>!e,10)([".confirmation__txt-box strong"]);return t?.textContent?.trim()??null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();return{checkin:async()=>{try{if(t?.bbh_datalayer_ga4?.page_data?.booking_checkin_date){const e=t.bbh_datalayer_ga4.page_data.booking_checkin_date,[n,a,o]=e.split("/");return`${o}-${a}-${n}`}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t?.bbh_datalayer_ga4?.page_data?.booking_checkout_date){const e=t.bbh_datalayer_ga4.page_data.booking_checkout_date,[n,a,o]=e.split("/");return`${o}-${a}-${n}`}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=await this.getRoomData();return e?.room_info?.adultsCount||e?.guestCount||null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{const e=await this.getRoomData();return e?.room_info?.childrenCount||null}catch(e){return console.error("Error getting children",e),null}}}}}class Ha extends ha{constructor(){super("ZENITHOTELES")}shouldHandle(e){return/zenithoteles\.com(?:[a-zA-Z0-9-\/]*?)\/bookcore\/your-booking\/confirmation\/([a-zA-Z0-9-]+)/i.test(e)}async getReservationId(){try{return(new URL(window.location.href).pathname.split("/").pop()??null)||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoComponent();if(e)return e.getAttribute("data-booking-code")??null;const t=window.location.href.match(/bookcore\/your-booking\/confirmation\/([a-zA-Z0-9]+)\//);return t?t[1]:null}async getPropertyName(){const e=await this.getInfoComponent(),t=e?.getAttribute("data-hotel-info")||"{}",n=JSON.parse(t);return n?.hotelName??null}async getGuestName(){const e=Ut([".voucher__client .voucher__client-info-value"]);return e?.textContent?.trim()??null??null}async getGuestEmail(){const e=Ft([".voucher__client .voucher__client-info-value"]);return e?.[1]?.textContent?.trim()??null??null}async getPrice(){try{const e=await this.getInfoJSON();if(e)return{currency:e.currency,net_total_price:ga(String(parseFloat(e.value)-parseFloat(e.tax))),gross_total_price:ga(e.value),total_tax_price:ga(e.tax)};const t=Ut([".bookingCart"]);let n=Ut([".bookingCart"])?.children[0],a=n?.getAttribute("data-currency")?.trim()??"";const o=t?.children[1];return{currency:za(a),net_total_price:ga(o?.textContent?.trim().replace(/[\s]/g,"")||""),gross_total_price:null,total_tax_price:null}}catch(e){return console.error("Error getting price",e),null}}async getInfoComponent(){return await Dt(Ut,e=>!e||!e.getAttribute("data-ga4-event-data"),10)(["#roi-voucher-trackings"])}async getInfoJSON(){try{if(this.info)return this.info;const e=await this.getInfoComponent(),t=JSON.parse(e?.getAttribute("data-ga4-event-data")||"{}");return this.info=It(t)?null:t,this.info}catch(e){return console.error("Error getting info",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();if(t){const e=t.items[0].item_category2.split("-");return{checkin:t.items[0].item_category3,checkout:t.items[0].item_category4,adults:e[0],children:e[1]}}return{checkin:null,checkout:null,adults:null,children:null}}}class Ka extends ha{constructor(){super("RADISSON"),this.parserType="html"}shouldHandle(e){return/radissonhotels\.com(?:[a-zA-Z0-9-\/]*?)\/booking\/confirmation/i.test(e)||/radisson-confirmation/i.test(e)}async getReservationId(){try{return(new URL(window.location.href).searchParams.get("bookingId")??null)||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(async()=>Ut(['[name="bookingId"]']),e=>!e,10)();return e?e.getAttribute("value"):null}async getPropertyName(){const e=Ut(['[data-test="propertyName"]']);return e?.textContent?.trim()??null}async getGuestName(){const e=Ut(['[data-test="first-name"]']),t=Ut(['[data-test="last-name"]']);return e?.textContent?.trim()+" "+t?.textContent?.trim()}async getGuestEmail(){const e=Ut(['[data-test="email"]']);return e?.textContent?.trim()??null}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=Ut(['[data-testid="people"]']);return{checkin:null,checkout:null,adults:t?.textContent?.replace(/\D/g,"")??null,children:null}}}class qa extends ha{constructor(){super("NOVASOL")}shouldHandle(e){return/checkout\.novasol\.com(?:[a-zA-Z0-9-\/]*?)\/booking-complete\?/i.test(e)}async getReservationId(){try{const e=await this.getInfoJSON();return e?.bookingDetails?.bookingId??null}catch(e){return console.error("Error getting reservation id",e),null}}async getInfoJSON(){const e=await super.getInfoJSON();return e?e.props?.pageProps:null}async getPropertyName(){const e=await this.getInfoJSON();return e?.property?.propertyCode||e?.propertyUnitCode||null}async getGuestName(){const e=await this.getInfoJSON(),t=e?.customerSession?.customer;return t?`${t.firstName} ${t.lastName}`:null}async getGuestEmail(){const e=await this.getInfoJSON();return e?.customerSession?.customer?.email??null}async getBookingReference(){const e=await this.getInfoJSON();return e?.bookingDetails?.bookingId??null}async getPrice(){try{const e=await this.getInfoJSON(),t=e?.customerSession?.initialQuote?.totalCost;if(t){const e=t.value,n=t.currency,a=ga(e);return{currency:n,gross_total_price:a,net_total_price:a}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON(),n=new URL(window.location.href);return{checkin:async()=>{try{return t?.bookingDetails?.startDate?t.bookingDetails.startDate?.split("T")[0]:n.searchParams.get("start")}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.bookingDetails?.endDate?t.bookingDetails.endDate?.split("T")[0]:n.searchParams.get("end")}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.bookingDetails?.numberOfAdults?t.bookingDetails.numberOfAdults:n.searchParams.get("adult")}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?.bookingDetails?.numberOfChildren?t.bookingDetails.numberOfChildren:n.searchParams.get("child")}catch(e){return console.error("Error getting children",e),null}}}}}class Ga extends ha{reservationInfo=null;constructor(){super("BOOKING")}shouldHandle(e){return/secure\.booking\.com\/confirmation(?:\.[a-zA-Z-]{2,5})*\.html/i.test(e)}async getReservationId(){try{return await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getGuestName(){return null}async getBookingReference(){const e=await this.getReservationInfo();return e?.identity?.reservationId??null}async getPropertyName(){const e=await this.findJSONPartFromRegex(/^PostBookingProperty:{/);return ra(e?.url?.replace(".html",""))??null}async getPrice(){try{const e=await this.getReservationInfo(),t=e?.price;if(t){const n=t?.userTotalPretty?.replace(/[^\d.,]/g,""),a=e?.context?.selectedCurrency,o=ga(n);return{currency:a,gross_total_price:o,net_total_price:o,total_tax_price:null}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getReservationInfo(){try{if(this.reservationInfo)return this.reservationInfo;const e=await this.findJSONPartFromRegex(/^PostBookingReservation:{/);return this.reservationInfo=e,this.reservationInfo}catch(e){return console.error("Error getting reservation info",e),null}}async findJSONPartFromRegex(e){const t=await this.getInfoJSON();if(!t)return null;const n=Bt(t,e);return n?$t(n)??null:null}async getInfoJSON(){if(this.info)return this.info;const e=await Kt(['script[data-capla-namespace*="b-post-booking-web-"][data-capla-store-data="apollo"]']);return this.info=e,this.info}buildDate(e){const t=new Date(parseInt(e,10));return`${t.getUTCFullYear()}-${Mt(t.getUTCMonth()+1)}-${Mt(t.getUTCDate())}`}async getQueryParamMap(e){const t=await this.getReservationInfo();return{checkin:async()=>{try{return t?.reservationCheckinDate?this.buildDate(t?.reservationCheckinDate?.rawDate+"000"):null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.reservationCheckoutDate?this.buildDate(t?.reservationCheckoutDate?.rawDate+"000"):null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.bookedOccupancyInfo?t?.bookedOccupancyInfo?.numberOfAdults??null:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?.bookedOccupancyInfo?t?.bookedOccupancyInfo?.numberOfChildren??null:null}catch(e){return console.error("Error getting children",e),null}}}}}class Qa extends ha{constructor(){super("EUROSTARSHOTELS"),this.parserType="html"}shouldHandle(e){return/eurostarshotels\.com(?:[^]*?)#confirmation\//i.test(e)}async getReservationId(){try{const e=new URL(window.location.href),t=e.searchParams.get("id_hotel"),n=e.hash.split("/").pop();return t&&n?`${t}-${n}`:null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return null}async getPropertyName(){return null}async getGuestName(){return null}async getGuestEmail(){return null}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=Ut(['[data-testid="people"]']);return{checkin:null,checkout:null,adults:t?.textContent?.replace(/\D/g,"")??null,children:null}}}class Wa extends ha{constructor(){super("DIRECT_BOOK"),this.parserType="html"}shouldHandle(e){return/direct-book\.com\/properties\/[a-zA-Z0-9-]+\/reservations\/[a-zA-Z0-9-]+/i.test(e)}async getReservationId(){try{return new URL(window.location.href).pathname.split("/").pop()||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(()=>Ut(['[data-cy="reservation-reference-id"]']),e=>!e,10)();if(!e)return null;const t=e.textContent;if(!t)return null;const n=t.split(":")[1];return n?n.replace("#","").replace("\n","").trim()??null:null}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class Ya extends ha{constructor(){super("BESTWESTERN"),this.parserType="html"}shouldHandle(e){return/bestwestern\.[.a-z]{2,7}(?:[a-zA-Z_\/]*?)\/reservations\/reservation-details\.(thankyou|rewards)\.html/i.test(e)}async getReservationId(){try{const e=await Dt(Ft,e=>!Oe(e,"[1].textContent",null))([".confirmationNumberContainer div"]),t=e?.length?e[1]?.textContent:null;return t?t.trim().replace(/\s/g,"").replace("#",""):null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getStatus(){return"BOOKED"}async getPrice(){return null}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class Ja extends ha{constructor(){super("GETDIRECTO"),this.parserType="html"}shouldHandle(e){return/secure\.getdirecto\.com\/confirmation\//i.test(e)}async getBookingReference(){try{const e=await Dt(Ut,e=>!Oe(e,"textContent",null))([".confirmation-bookingId span"]),t=e?.textContent;return t??null}catch(e){return console.error("Error getting booking reference",e),null}}async getReservationId(){try{const e=new URL(window.location.href).pathname.split("/").pop();if(e)return e}catch(e){console.error("Error getting reservation id from URL",e)}return await this.getBookingReference()}async getStatus(){return"BOOKED"}async getPrice(){return null}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class Za extends ha{constructor(){super("ADAGIO_CITY"),this.parserType="html"}shouldHandle(e){return/adagio-city.com(?:[a-zA-Z\/]*?)\/booking\/confirmation\/[a-zA-Z0-9-_]+/i.test(e)}async getReservationId(){try{const e=await Dt(()=>Ut([".confirmation-info-top dd"]),e=>!e,10)();return e?.textContent?.trim()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class Xa{trackers=[];activeTracker=null;constructor(){this.trackers=[new ka,new ba,new ya,new Ca,new Ea,new Oa,new Aa,new Pa,new Na,new Ia,new La,new Da,new Ra,new Ma,new $a,new Ba,new Ua,new Fa,new Va,new Ha,new Ka,new qa,new Ga,new Qa,new Wa,new Ya,new Ja,new Za]}async initialize(e){try{const t=this.getTrackerForUrl(e);if(t&&await t.isReservation()){const e=await t.getReservationDetails(),n=await w.getSessionId(),a=await da();"html"===t.parserType?w.sendConversionHTMLEvent({...e,session_id:n,user_id:a}):w.sendConversionEvent({...e,session_id:n,user_id:a})}}catch(e){console.error("Error handling reservation tracker",e)}}getTrackerForUrl(e){if(this.activeTracker&&this.activeTracker.shouldHandle(e))return this.activeTracker;for(const t of this.trackers)if(t.shouldHandle(e))return this.activeTracker=t,t;return this.activeTracker=null,null}}const eo={utm_source:"getdirecto",utm_medium:"extension"};function to(e){const t=pn(e);for(const[e,n]of Object.entries(eo))t.searchParams.set(e,n);return t.toString()}const no=function(){try{var e=X(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();var ao=Object.prototype.hasOwnProperty;const oo=function(e,t,n){var a=e[t];ao.call(e,t)&&re(a,n)&&(void 0!==n||t in e)||function(e,t,n){"__proto__"==t&&no?no(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}(e,t,n)},ro=function(e,t,n){return null==e?e:function(e,t,n,a){if(!$(e))return e;for(var o=-1,r=(t=Ce(t,e)).length,i=r-1,s=e;null!=s&&++o<r;){var c=Se(t[o]),l=n;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(o!=i){var u=s[c];void 0===(l=a?a(u,c,s):void 0)&&(l=$(u)?u:Fe(t[o+1])?[]:{})}oo(s,c,l),s=s[c]}return e}(e,t,n)};function io(e,t){return Math.floor(Math.random()*(t-e+1)+e)}var so=n(723),co=n(997);function lo(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];throw new Error("number"==typeof e?"[MobX] minified error nr: "+e+(n.length?" "+n.map(String).join(","):"")+". Find the full error at: https://github.com/mobxjs/mobx/blob/main/packages/mobx/src/errors.ts":"[MobX] "+e)}var uo={};function po(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:"undefined"!=typeof self?self:uo}var mo=Object.assign,ho=Object.getOwnPropertyDescriptor,fo=Object.defineProperty,go=Object.prototype,ko=[];Object.freeze(ko);var bo={};Object.freeze(bo);var yo="undefined"!=typeof Proxy,vo=Object.toString();function wo(){yo||lo("Proxy not available")}function jo(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var _o=function(){};function xo(e){return"function"==typeof e}function zo(e){switch(typeof e){case"string":case"symbol":case"number":return!0}return!1}function Co(e){return null!==e&&"object"==typeof e}function So(e){if(!Co(e))return!1;var t=Object.getPrototypeOf(e);if(null==t)return!0;var n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n.toString()===vo}function Eo(e){var t=null==e?void 0:e.constructor;return!!t&&("GeneratorFunction"===t.name||"GeneratorFunction"===t.displayName)}function Oo(e,t,n){fo(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function Ao(e,t,n){fo(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function Po(e,t){var n="isMobX"+e;return t.prototype[n]=!0,function(e){return Co(e)&&!0===e[n]}}function No(e){return null!=e&&"[object Map]"===Object.prototype.toString.call(e)}function To(e){return null!=e&&"[object Set]"===Object.prototype.toString.call(e)}var Io=void 0!==Object.getOwnPropertySymbols,Lo="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:Io?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames;function Do(e){return null===e?null:"object"==typeof e?""+e:e}function Ro(e,t){return go.hasOwnProperty.call(e,t)}var Mo=Object.getOwnPropertyDescriptors||function(e){var t={};return Lo(e).forEach(function(n){t[n]=ho(e,n)}),t};function $o(e,t){return!!(e&t)}function Bo(e,t,n){return n?e|=t:e&=~t,e}function Uo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}function Fo(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,Qo(a.key),a)}}function Vo(e,t,n){return t&&Fo(e.prototype,t),n&&Fo(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ho(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Uo(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Uo(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function Ko(){return Ko=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)({}).hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},Ko.apply(null,arguments)}function qo(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Go(e,t)}function Go(e,t){return Go=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Go(e,t)}function Qo(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}var Wo=Symbol("mobx-stored-annotations");function Yo(e){return Object.assign(function(t,n){if(Zo(n))return e.decorate_20223_(t,n);Jo(t,n,e)},e)}function Jo(e,t,n){Ro(e,Wo)||Oo(e,Wo,Ko({},e[Wo])),function(e){return e.annotationType_===ir}(n)||(e[Wo][t]=n)}function Zo(e){return"object"==typeof e&&"string"==typeof e.kind}var Xo=Symbol("mobx administration"),er=function(){function e(e){void 0===e&&(e="Atom"),this.name_=void 0,this.flags_=0,this.observers_=new Set,this.lastAccessedBy_=0,this.lowestObserverState_=ai.NOT_TRACKING_,this.onBOL=void 0,this.onBUOL=void 0,this.name_=e}var t=e.prototype;return t.onBO=function(){this.onBOL&&this.onBOL.forEach(function(e){return e()})},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach(function(e){return e()})},t.reportObserved=function(){return Ci(this)},t.reportChanged=function(){xi(),Si(this),zi()},t.toString=function(){return this.name_},Vo(e,[{key:"isBeingObserved",get:function(){return $o(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isBeingObservedMask_,t)}},{key:"isPendingUnobservation",get:function(){return $o(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isPendingUnobservationMask_,t)}},{key:"diffValue",get:function(){return $o(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Bo(this.flags_,e.diffValueMask_,1===t)}}])}();er.isBeingObservedMask_=1,er.isPendingUnobservationMask_=2,er.diffValueMask_=4;var tr=Po("Atom",er);function nr(e,t,n){void 0===t&&(t=_o),void 0===n&&(n=_o);var a=new er(e);return t!==_o&&Wi(qi,a,t,undefined),n!==_o&&Qi(a,n),a}var ar={identity:function(e,t){return e===t},structural:function(e,t){return uc(e,t)},default:function(e,t){return Object.is?Object.is(e,t):e===t?0!==e||1/e==1/t:e!=e&&t!=t},shallow:function(e,t){return uc(e,t,1)}};function or(e,t,n){return is(e)?e:Array.isArray(e)?Fr.array(e,{name:n}):So(e)?Fr.object(e,void 0,{name:n}):No(e)?Fr.map(e,{name:n}):To(e)?Fr.set(e,{name:n}):"function"!=typeof e||Hi(e)||rs(e)?e:Eo(e)?as(e):Fi(n,e)}function rr(e){return e}var ir="override";function sr(e,t){return{annotationType_:e,options_:t,make_:cr,extend_:lr,decorate_20223_:ur}}function cr(e,t,n,a){var o;if(null!=(o=this.options_)&&o.bound)return null===this.extend_(e,t,n,!1)?0:1;if(a===e.target_)return null===this.extend_(e,t,n,!1)?0:2;if(Hi(n.value))return 1;var r=pr(e,this,t,n,!1);return fo(a,t,r),2}function lr(e,t,n,a){var o=pr(e,this,t,n);return e.defineProperty_(t,o,a)}function ur(e,t){var n,a=t.kind,o=t.name,r=t.addInitializer,i=this,s=function(e){var t,n,a,r;return Jr(null!=(t=null==(n=i.options_)?void 0:n.name)?t:o.toString(),e,null!=(a=null==(r=i.options_)?void 0:r.autoAction)&&a)};return"field"==a?function(e){var t,n=e;return Hi(n)||(n=s(n)),null!=(t=i.options_)&&t.bound&&((n=n.bind(this)).isMobxAction=!0),n}:"method"==a?(Hi(e)||(e=s(e)),null!=(n=this.options_)&&n.bound&&r(function(){var e=this,t=e[o].bind(e);t.isMobxAction=!0,e[o]=t}),e):void lo("Cannot apply '"+i.annotationType_+"' to '"+String(o)+"' (kind: "+a+"):\n'"+i.annotationType_+"' can only be used on properties with a function value.")}function pr(e,t,n,a,o){var r,i,s,c,l,u,p,d;void 0===o&&(o=vi.safeDescriptors),d=a,t.annotationType_,d.value;var m,h=a.value;return null!=(r=t.options_)&&r.bound&&(h=h.bind(null!=(m=e.proxy_)?m:e.target_)),{value:Jr(null!=(i=null==(s=t.options_)?void 0:s.name)?i:n.toString(),h,null!=(c=null==(l=t.options_)?void 0:l.autoAction)&&c,null!=(u=t.options_)&&u.bound?null!=(p=e.proxy_)?p:e.target_:void 0),configurable:!o||e.isPlainObject_,enumerable:!1,writable:!o}}function dr(e,t){return{annotationType_:e,options_:t,make_:mr,extend_:hr,decorate_20223_:fr}}function mr(e,t,n,a){var o;if(a===e.target_)return null===this.extend_(e,t,n,!1)?0:2;if(null!=(o=this.options_)&&o.bound&&(!Ro(e.target_,t)||!rs(e.target_[t]))&&null===this.extend_(e,t,n,!1))return 0;if(rs(n.value))return 1;var r=gr(e,this,0,n,!1,!1);return fo(a,t,r),2}function hr(e,t,n,a){var o,r=gr(e,this,0,n,null==(o=this.options_)?void 0:o.bound);return e.defineProperty_(t,r,a)}function fr(e,t){var n,a=t.name,o=t.addInitializer;return rs(e)||(e=as(e)),null!=(n=this.options_)&&n.bound&&o(function(){var e=this,t=e[a].bind(e);t.isMobXFlow=!0,e[a]=t}),e}function gr(e,t,n,a,o,r){var i;void 0===r&&(r=vi.safeDescriptors),i=a,t.annotationType_,i.value;var s,c=a.value;return rs(c)||(c=as(c)),o&&((c=c.bind(null!=(s=e.proxy_)?s:e.target_)).isMobXFlow=!0),{value:c,configurable:!r||e.isPlainObject_,enumerable:!1,writable:!r}}function kr(e,t){return{annotationType_:e,options_:t,make_:br,extend_:yr,decorate_20223_:vr}}function br(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function yr(e,t,n,a){return o=n,this.annotationType_,o.get,e.defineComputedProperty_(t,Ko({},this.options_,{get:n.get,set:n.set}),a);var o}function vr(e,t){var n=this,a=t.name;return(0,t.addInitializer)(function(){var t=Fs(this)[Xo],o=Ko({},n.options_,{get:e,context:this});o.name||(o.name="ObservableObject."+a.toString()),t.values_.set(a,new ni(o))}),function(){return this[Xo].getObservablePropValue_(a)}}function wr(e,t){return{annotationType_:e,options_:t,make_:jr,extend_:_r,decorate_20223_:xr}}function jr(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function _r(e,t,n,a){var o,r;return this.annotationType_,e.defineObservableProperty_(t,n.value,null!=(o=null==(r=this.options_)?void 0:r.enhancer)?o:or,a)}function xr(e,t){var n=this,a=t.kind,o=t.name,r=new WeakSet;function i(e,t){var a,i,s=Fs(e)[Xo],c=new ti(t,null!=(a=null==(i=n.options_)?void 0:i.enhancer)?a:or,"ObservableObject."+o.toString(),!1);s.values_.set(o,c),r.add(e)}if("accessor"==a)return{get:function(){return r.has(this)||i(this,e.get.call(this)),this[Xo].getObservablePropValue_(o)},set:function(e){return r.has(this)||i(this,e),this[Xo].setObservablePropValue_(o,e)},init:function(e){return r.has(this)||i(this,e),e}}}var zr="true",Cr=Sr();function Sr(e){return{annotationType_:zr,options_:e,make_:Er,extend_:Or,decorate_20223_:Ar}}function Er(e,t,n,a){var o,r,i,s;if(n.get)return qr.make_(e,t,n,a);if(n.set){var c=Hi(n.set)?n.set:Jr(t.toString(),n.set);return a===e.target_?null===e.defineProperty_(t,{configurable:!vi.safeDescriptors||e.isPlainObject_,set:c})?0:2:(fo(a,t,{configurable:!0,set:c}),2)}if(a!==e.target_&&"function"==typeof n.value)return Eo(n.value)?(null!=(s=this.options_)&&s.autoBind?as.bound:as).make_(e,t,n,a):(null!=(i=this.options_)&&i.autoBind?Fi.bound:Fi).make_(e,t,n,a);var l,u=!1===(null==(o=this.options_)?void 0:o.deep)?Fr.ref:Fr;return"function"==typeof n.value&&null!=(r=this.options_)&&r.autoBind&&(n.value=n.value.bind(null!=(l=e.proxy_)?l:e.target_)),u.make_(e,t,n,a)}function Or(e,t,n,a){var o,r,i;return n.get?qr.extend_(e,t,n,a):n.set?e.defineProperty_(t,{configurable:!vi.safeDescriptors||e.isPlainObject_,set:Jr(t.toString(),n.set)},a):("function"==typeof n.value&&null!=(o=this.options_)&&o.autoBind&&(n.value=n.value.bind(null!=(i=e.proxy_)?i:e.target_)),(!1===(null==(r=this.options_)?void 0:r.deep)?Fr.ref:Fr).extend_(e,t,n,a))}function Ar(e,t){lo("'"+this.annotationType_+"' cannot be used as a decorator")}var Pr={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};function Nr(e){return e||Pr}Object.freeze(Pr);var Tr=wr("observable"),Ir=wr("observable.ref",{enhancer:rr}),Lr=wr("observable.shallow",{enhancer:function(e,t,n){return null==e||Ks(e)||Es(e)||Ts(e)||Rs(e)?e:Array.isArray(e)?Fr.array(e,{name:n,deep:!1}):So(e)?Fr.object(e,void 0,{name:n,deep:!1}):No(e)?Fr.map(e,{name:n,deep:!1}):To(e)?Fr.set(e,{name:n,deep:!1}):void 0}}),Dr=wr("observable.struct",{enhancer:function(e,t){return uc(e,t)?t:e}}),Rr=Yo(Tr);function Mr(e){return!0===e.deep?or:!1===e.deep?rr:(t=e.defaultDecorator)&&null!=(n=null==(a=t.options_)?void 0:a.enhancer)?n:or;var t,n,a}function $r(e,t,n){return Zo(t)?Tr.decorate_20223_(e,t):zo(t)?void Jo(e,t,Tr):is(e)?e:So(e)?Fr.object(e,t,n):Array.isArray(e)?Fr.array(e,t):No(e)?Fr.map(e,t):To(e)?Fr.set(e,t):"object"==typeof e&&null!==e?e:Fr.box(e,t)}mo($r,Rr);var Br,Ur,Fr=mo($r,{box:function(e,t){var n=Nr(t);return new ti(e,Mr(n),n.name,!0,n.equals)},array:function(e,t){var n=Nr(t);return(!1===vi.useProxies||!1===n.proxy?ac:ws)(e,Mr(n),n.name)},map:function(e,t){var n=Nr(t);return new Ns(e,Mr(n),n.name)},set:function(e,t){var n=Nr(t);return new Ds(e,Mr(n),n.name)},object:function(e,t,n){return sc(function(){return function(e,t,n,a){var o=Mo(t);return sc(function(){var t=Fs(e,a)[Xo];Lo(o).forEach(function(e){t.extend_(e,o[e],!n||!(e in n)||n[e])})}),e}(!1===vi.useProxies||!1===(null==n?void 0:n.proxy)?Fs({},n):function(e,t){var n,a;return wo(),null!=(a=(n=(e=Fs(e,t))[Xo]).proxy_)?a:n.proxy_=new Proxy(e,ls)}({},n),e,t)})},ref:Yo(Ir),shallow:Yo(Lr),deep:Rr,struct:Yo(Dr)}),Vr="computed",Hr=kr(Vr),Kr=kr("computed.struct",{equals:ar.structural}),qr=function(e,t){if(Zo(t))return Hr.decorate_20223_(e,t);if(zo(t))return Jo(e,t,Hr);if(So(e))return Yo(kr(Vr,e));var n=So(t)?t:{};return n.get=e,n.name||(n.name=e.name||""),new ni(n)};Object.assign(qr,Hr),qr.struct=Yo(Kr);var Gr=0,Qr=1,Wr=null!=(Br=null==(Ur=ho(function(){},"name"))?void 0:Ur.configurable)&&Br,Yr={value:"action",configurable:!0,writable:!1,enumerable:!1};function Jr(e,t,n,a){function o(){return Zr(0,n,t,a||this,arguments)}return void 0===n&&(n=!1),o.isMobxAction=!0,o.toString=function(){return t.toString()},Wr&&(Yr.value=e,fo(o,"name",Yr)),o}function Zr(e,t,n,a,o){var r=function(e,t){var n=vi.trackingDerivation,a=!t||!n;xi();var o=vi.allowStateChanges;a&&(di(),o=Xr(!0));var r={runAsAction_:a,prevDerivation_:n,prevAllowStateChanges_:o,prevAllowStateReads_:hi(!0),notifySpy_:!1,startTime_:0,actionId_:Qr++,parentActionId_:Gr};return Gr=r.actionId_,r}(0,t);try{return n.apply(a,o)}catch(e){throw r.error_=e,e}finally{!function(e){Gr!==e.actionId_&&lo(30),Gr=e.parentActionId_,void 0!==e.error_&&(vi.suppressReactionErrors=!0),ei(e.prevAllowStateChanges_),fi(e.prevAllowStateReads_),zi(),e.runAsAction_&&mi(e.prevDerivation_),vi.suppressReactionErrors=!1}(r)}}function Xr(e){var t=vi.allowStateChanges;return vi.allowStateChanges=e,t}function ei(e){vi.allowStateChanges=e}var ti=function(e){function t(t,n,a,o,r){var i;return void 0===a&&(a="ObservableValue"),void 0===o&&(o=!0),void 0===r&&(r=ar.default),(i=e.call(this,a)||this).enhancer=void 0,i.name_=void 0,i.equals=void 0,i.hasUnreportedChange_=!1,i.interceptors_=void 0,i.changeListeners_=void 0,i.value_=void 0,i.dehancer=void 0,i.enhancer=n,i.name_=a,i.equals=r,i.value_=n(t,void 0,a),i}qo(t,e);var n=t.prototype;return n.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},n.set=function(e){this.value_,(e=this.prepareNewValue_(e))!==vi.UNCHANGED&&this.setNewValue_(e)},n.prepareNewValue_=function(e){if(us(this)){var t=ds(this,{object:this,type:bs,newValue:e});if(!t)return vi.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value_,this.name_),this.equals(this.value_,e)?vi.UNCHANGED:e},n.setNewValue_=function(e){var t=this.value_;this.value_=e,this.reportChanged(),ms(this)&&fs(this,{type:bs,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.value_)},n.intercept_=function(e){return ps(this,e)},n.observe_=function(e,t){return t&&e({observableKind:"value",debugObjectName:this.name_,object:this,type:bs,newValue:this.value_,oldValue:void 0}),hs(this,e)},n.raw=function(){return this.value_},n.toJSON=function(){return this.get()},n.toString=function(){return this.name_+"["+this.value_+"]"},n.valueOf=function(){return Do(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},t}(er),ni=function(){function e(e){this.dependenciesState_=ai.NOT_TRACKING_,this.observing_=[],this.newObserving_=null,this.observers_=new Set,this.runId_=0,this.lastAccessedBy_=0,this.lowestObserverState_=ai.UP_TO_DATE_,this.unboundDepsCount_=0,this.value_=new ii(null),this.name_=void 0,this.triggeredBy_=void 0,this.flags_=0,this.derivation=void 0,this.setter_=void 0,this.isTracing_=oi.NONE,this.scope_=void 0,this.equals_=void 0,this.requiresReaction_=void 0,this.keepAlive_=void 0,this.onBOL=void 0,this.onBUOL=void 0,e.get||lo(31),this.derivation=e.get,this.name_=e.name||"ComputedValue",e.set&&(this.setter_=Jr("ComputedValue-setter",e.set)),this.equals_=e.equals||(e.compareStructural||e.struct?ar.structural:ar.default),this.scope_=e.context,this.requiresReaction_=e.requiresReaction,this.keepAlive_=!!e.keepAlive}var t=e.prototype;return t.onBecomeStale_=function(){var e;(e=this).lowestObserverState_===ai.UP_TO_DATE_&&(e.lowestObserverState_=ai.POSSIBLY_STALE_,e.observers_.forEach(function(e){e.dependenciesState_===ai.UP_TO_DATE_&&(e.dependenciesState_=ai.POSSIBLY_STALE_,e.onBecomeStale_())}))},t.onBO=function(){this.onBOL&&this.onBOL.forEach(function(e){return e()})},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach(function(e){return e()})},t.get=function(){if(this.isComputing&&lo(32,this.name_,this.derivation),0!==vi.inBatch||0!==this.observers_.size||this.keepAlive_){if(Ci(this),ci(this)){var e=vi.trackingContext;this.keepAlive_&&!e&&(vi.trackingContext=this),this.trackAndCompute()&&((t=this).lowestObserverState_!==ai.STALE_&&(t.lowestObserverState_=ai.STALE_,t.observers_.forEach(function(e){e.dependenciesState_===ai.POSSIBLY_STALE_?e.dependenciesState_=ai.STALE_:e.dependenciesState_===ai.UP_TO_DATE_&&(t.lowestObserverState_=ai.UP_TO_DATE_)}))),vi.trackingContext=e}}else ci(this)&&(this.warnAboutUntrackedRead_(),xi(),this.value_=this.computeValue_(!1),zi());var t,n=this.value_;if(si(n))throw n.cause;return n},t.set=function(e){if(this.setter_){this.isRunningSetter&&lo(33,this.name_),this.isRunningSetter=!0;try{this.setter_.call(this.scope_,e)}finally{this.isRunningSetter=!1}}else lo(34,this.name_)},t.trackAndCompute=function(){var e=this.value_,t=this.dependenciesState_===ai.NOT_TRACKING_,n=this.computeValue_(!0),a=t||si(e)||si(n)||!this.equals_(e,n);return a&&(this.value_=n),a},t.computeValue_=function(e){this.isComputing=!0;var t,n=Xr(!1);if(e)t=li(this,this.derivation,this.scope_);else if(!0===vi.disableErrorBoundaries)t=this.derivation.call(this.scope_);else try{t=this.derivation.call(this.scope_)}catch(e){t=new ii(e)}return ei(n),this.isComputing=!1,t},t.suspend_=function(){this.keepAlive_||(ui(this),this.value_=void 0)},t.observe_=function(e,t){var n=this,a=!0,o=void 0;return function(e,t){var n,a,o,r;void 0===t&&(t=bo);var i,s=null!=(n=null==(a=t)?void 0:a.name)?n:"Autorun";if(t.scheduler||t.delay){var c=function(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:Ki}(t),l=!1;i=new Ei(s,function(){l||(l=!0,c(function(){l=!1,i.isDisposed||i.track(u)}))},t.onError,t.requiresObservable)}else i=new Ei(s,function(){this.track(u)},t.onError,t.requiresObservable);function u(){e(i)}return null!=(o=t)&&null!=(o=o.signal)&&o.aborted||i.schedule_(),i.getDisposer_(null==(r=t)?void 0:r.signal)}(function(){var r=n.get();if(!a||t){var i=di();e({observableKind:"computed",debugObjectName:n.name_,type:bs,object:n,newValue:r,oldValue:o}),mi(i)}a=!1,o=r})},t.warnAboutUntrackedRead_=function(){},t.toString=function(){return this.name_+"["+this.derivation.toString()+"]"},t.valueOf=function(){return Do(this.get())},t[Symbol.toPrimitive]=function(){return this.valueOf()},Vo(e,[{key:"isComputing",get:function(){return $o(this.flags_,e.isComputingMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isComputingMask_,t)}},{key:"isRunningSetter",get:function(){return $o(this.flags_,e.isRunningSetterMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isRunningSetterMask_,t)}},{key:"isBeingObserved",get:function(){return $o(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isBeingObservedMask_,t)}},{key:"isPendingUnobservation",get:function(){return $o(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isPendingUnobservationMask_,t)}},{key:"diffValue",get:function(){return $o(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Bo(this.flags_,e.diffValueMask_,1===t)}}])}();ni.isComputingMask_=1,ni.isRunningSetterMask_=2,ni.isBeingObservedMask_=4,ni.isPendingUnobservationMask_=8,ni.diffValueMask_=16;var ai,oi,ri=Po("ComputedValue",ni);!function(e){e[e.NOT_TRACKING_=-1]="NOT_TRACKING_",e[e.UP_TO_DATE_=0]="UP_TO_DATE_",e[e.POSSIBLY_STALE_=1]="POSSIBLY_STALE_",e[e.STALE_=2]="STALE_"}(ai||(ai={})),function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(oi||(oi={}));var ii=function(e){this.cause=void 0,this.cause=e};function si(e){return e instanceof ii}function ci(e){switch(e.dependenciesState_){case ai.UP_TO_DATE_:return!1;case ai.NOT_TRACKING_:case ai.STALE_:return!0;case ai.POSSIBLY_STALE_:for(var t=hi(!0),n=di(),a=e.observing_,o=a.length,r=0;r<o;r++){var i=a[r];if(ri(i)){if(vi.disableErrorBoundaries)i.get();else try{i.get()}catch(e){return mi(n),fi(t),!0}if(e.dependenciesState_===ai.STALE_)return mi(n),fi(t),!0}}return gi(e),mi(n),fi(t),!1}}function li(e,t,n){var a=hi(!0);gi(e),e.newObserving_=new Array(0===e.runId_?100:e.observing_.length),e.unboundDepsCount_=0,e.runId_=++vi.runId;var o,r=vi.trackingDerivation;if(vi.trackingDerivation=e,vi.inBatch++,!0===vi.disableErrorBoundaries)o=t.call(n);else try{o=t.call(n)}catch(e){o=new ii(e)}return vi.inBatch--,vi.trackingDerivation=r,function(e){for(var t=e.observing_,n=e.observing_=e.newObserving_,a=ai.UP_TO_DATE_,o=0,r=e.unboundDepsCount_,i=0;i<r;i++){var s=n[i];0===s.diffValue&&(s.diffValue=1,o!==i&&(n[o]=s),o++),s.dependenciesState_>a&&(a=s.dependenciesState_)}for(n.length=o,e.newObserving_=null,r=t.length;r--;){var c=t[r];0===c.diffValue&&ji(c,e),c.diffValue=0}for(;o--;){var l=n[o];1===l.diffValue&&(l.diffValue=0,wi(l,e))}a!==ai.UP_TO_DATE_&&(e.dependenciesState_=a,e.onBecomeStale_())}(e),fi(a),o}function ui(e){var t=e.observing_;e.observing_=[];for(var n=t.length;n--;)ji(t[n],e);e.dependenciesState_=ai.NOT_TRACKING_}function pi(e){var t=di();try{return e()}finally{mi(t)}}function di(){var e=vi.trackingDerivation;return vi.trackingDerivation=null,e}function mi(e){vi.trackingDerivation=e}function hi(e){var t=vi.allowStateReads;return vi.allowStateReads=e,t}function fi(e){vi.allowStateReads=e}function gi(e){if(e.dependenciesState_!==ai.UP_TO_DATE_){e.dependenciesState_=ai.UP_TO_DATE_;for(var t=e.observing_,n=t.length;n--;)t[n].lowestObserverState_=ai.UP_TO_DATE_}}var ki=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},bi=!0,yi=!1,vi=function(){var e=po();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(bi=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new ki).version&&(bi=!1),bi?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new ki):(setTimeout(function(){yi||lo(35)},1),new ki)}();function wi(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function ji(e,t){e.observers_.delete(t),0===e.observers_.size&&_i(e)}function _i(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,vi.pendingUnobservations.push(e))}function xi(){vi.inBatch++}function zi(){if(0===--vi.inBatch){Pi();for(var e=vi.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation=!1,0===n.observers_.size&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBUO()),n instanceof ni&&n.suspend_())}vi.pendingUnobservations=[]}}function Ci(e){var t=vi.trackingDerivation;return null!==t?(t.runId_!==e.lastAccessedBy_&&(e.lastAccessedBy_=t.runId_,t.newObserving_[t.unboundDepsCount_++]=e,!e.isBeingObserved&&vi.trackingContext&&(e.isBeingObserved=!0,e.onBO())),e.isBeingObserved):(0===e.observers_.size&&vi.inBatch>0&&_i(e),!1)}function Si(e){e.lowestObserverState_!==ai.STALE_&&(e.lowestObserverState_=ai.STALE_,e.observers_.forEach(function(e){e.dependenciesState_===ai.UP_TO_DATE_&&e.onBecomeStale_(),e.dependenciesState_=ai.STALE_}))}var Ei=function(){function e(e,t,n,a){void 0===e&&(e="Reaction"),this.name_=void 0,this.onInvalidate_=void 0,this.errorHandler_=void 0,this.requiresObservable_=void 0,this.observing_=[],this.newObserving_=[],this.dependenciesState_=ai.NOT_TRACKING_,this.runId_=0,this.unboundDepsCount_=0,this.flags_=0,this.isTracing_=oi.NONE,this.name_=e,this.onInvalidate_=t,this.errorHandler_=n,this.requiresObservable_=a}var t=e.prototype;return t.onBecomeStale_=function(){this.schedule_()},t.schedule_=function(){this.isScheduled||(this.isScheduled=!0,vi.pendingReactions.push(this),Pi())},t.runReaction_=function(){if(!this.isDisposed){xi(),this.isScheduled=!1;var e=vi.trackingContext;if(vi.trackingContext=this,ci(this)){this.isTrackPending=!0;try{this.onInvalidate_()}catch(e){this.reportExceptionInDerivation_(e)}}vi.trackingContext=e,zi()}},t.track=function(e){if(!this.isDisposed){xi(),this.isRunning=!0;var t=vi.trackingContext;vi.trackingContext=this;var n=li(this,e,void 0);vi.trackingContext=t,this.isRunning=!1,this.isTrackPending=!1,this.isDisposed&&ui(this),si(n)&&this.reportExceptionInDerivation_(n.cause),zi()}},t.reportExceptionInDerivation_=function(e){var t=this;if(this.errorHandler_)this.errorHandler_(e,this);else{if(vi.disableErrorBoundaries)throw e;var n="[mobx] uncaught error in '"+this+"'";vi.suppressReactionErrors||console.error(n,e),vi.globalReactionErrorHandlers.forEach(function(n){return n(e,t)})}},t.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.isRunning||(xi(),ui(this),zi()))},t.getDisposer_=function(e){var t=this,n=function n(){t.dispose(),null==e||null==e.removeEventListener||e.removeEventListener("abort",n)};return null==e||null==e.addEventListener||e.addEventListener("abort",n),n[Xo]=this,"dispose"in Symbol&&"symbol"==typeof Symbol.dispose&&(n[Symbol.dispose]=n),n},t.toString=function(){return"Reaction["+this.name_+"]"},t.trace=function(e){void 0===e&&(e=!1)},Vo(e,[{key:"isDisposed",get:function(){return $o(this.flags_,e.isDisposedMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isDisposedMask_,t)}},{key:"isScheduled",get:function(){return $o(this.flags_,e.isScheduledMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isScheduledMask_,t)}},{key:"isTrackPending",get:function(){return $o(this.flags_,e.isTrackPendingMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isTrackPendingMask_,t)}},{key:"isRunning",get:function(){return $o(this.flags_,e.isRunningMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isRunningMask_,t)}},{key:"diffValue",get:function(){return $o(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Bo(this.flags_,e.diffValueMask_,1===t)}}])}();Ei.isDisposedMask_=1,Ei.isScheduledMask_=2,Ei.isTrackPendingMask_=4,Ei.isRunningMask_=8,Ei.diffValueMask_=16;var Oi=100,Ai=function(e){return e()};function Pi(){vi.inBatch>0||vi.isRunningReactions||Ai(Ni)}function Ni(){vi.isRunningReactions=!0;for(var e=vi.pendingReactions,t=0;e.length>0;){++t===Oi&&(console.error("[mobx] cycle in reaction: "+e[0]),e.splice(0));for(var n=e.splice(0),a=0,o=n.length;a<o;a++)n[a].runReaction_()}vi.isRunningReactions=!1}var Ti=Po("Reaction",Ei),Ii="action",Li="autoAction",Di=sr(Ii),Ri=sr("action.bound",{bound:!0}),Mi=sr(Li,{autoAction:!0}),$i=sr("autoAction.bound",{autoAction:!0,bound:!0});function Bi(e){return function(t,n){return xo(t)?Jr(t.name||"<unnamed action>",t,e):xo(n)?Jr(t,n,e):Zo(n)?(e?Mi:Di).decorate_20223_(t,n):zo(n)?Jo(t,n,e?Mi:Di):zo(t)?Yo(sr(e?Li:Ii,{name:t,autoAction:e})):void 0}}var Ui=Bi(!1);Object.assign(Ui,Di);var Fi=Bi(!0);function Vi(e){return Zr(e.name,!1,e,this,void 0)}function Hi(e){return xo(e)&&!0===e.isMobxAction}Object.assign(Fi,Mi),Ui.bound=Yo(Ri),Fi.bound=Yo($i);var Ki=function(e){return e()};var qi="onBO",Gi="onBUO";function Qi(e,t,n){return Wi(Gi,e,t,n)}function Wi(e,t,n,a){var o="function"==typeof a?oc(t,n):oc(t),r=xo(a)?a:n,i=e+"L";return o[i]?o[i].add(r):o[i]=new Set([r]),function(){var e=o[i];e&&(e.delete(r),0===e.size&&delete o[i])}}var Yi="always";function Ji(e){!0===e.isolateGlobalState&&function(){if((vi.pendingReactions.length||vi.inBatch||vi.isRunningReactions)&&lo(36),yi=!0,bi){var e=po();0===--e.__mobxInstanceCount&&(e.__mobxGlobals=void 0),vi=new ki}}();var t,n,a=e.useProxies,o=e.enforceActions;if(void 0!==a&&(vi.useProxies=a===Yi||"never"!==a&&"undefined"!=typeof Proxy),"ifavailable"===a&&(vi.verifyProxies=!0),void 0!==o){var r=o===Yi?Yi:"observed"===o;vi.enforceActions=r,vi.allowStateChanges=!0!==r&&r!==Yi}["computedRequiresReaction","reactionRequiresObservable","observableRequiresReaction","disableErrorBoundaries","safeDescriptors"].forEach(function(t){t in e&&(vi[t]=!!e[t])}),vi.allowStateReads=!vi.observableRequiresReaction,e.reactionScheduler&&(t=e.reactionScheduler,n=Ai,Ai=function(e){return t(function(){return n(e)})})}function Zi(e){var t,n={name:e.name_};return e.observing_&&e.observing_.length>0&&(n.dependencies=(t=e.observing_,Array.from(new Set(t))).map(Zi)),n}var Xi=0;function es(){this.message="FLOW_CANCELLED"}es.prototype=Object.create(Error.prototype);var ts=dr("flow"),ns=dr("flow.bound",{bound:!0}),as=Object.assign(function(e,t){if(Zo(t))return ts.decorate_20223_(e,t);if(zo(t))return Jo(e,t,ts);var n=e,a=n.name||"<unnamed flow>",o=function(){var e,t=arguments,o=++Xi,r=Ui(a+" - runid: "+o+" - init",n).apply(this,t),i=void 0,s=new Promise(function(t,n){var s=0;function c(e){var t;i=void 0;try{t=Ui(a+" - runid: "+o+" - yield "+s++,r.next).call(r,e)}catch(e){return n(e)}u(t)}function l(e){var t;i=void 0;try{t=Ui(a+" - runid: "+o+" - yield "+s++,r.throw).call(r,e)}catch(e){return n(e)}u(t)}function u(e){if(!xo(null==e?void 0:e.then))return e.done?t(e.value):(i=Promise.resolve(e.value)).then(c,l);e.then(u,n)}e=n,c(void 0)});return s.cancel=Ui(a+" - runid: "+o+" - cancel",function(){try{i&&os(i);var t=r.return(void 0),n=Promise.resolve(t.value);n.then(_o,_o),os(n),e(new es)}catch(t){e(t)}}),s};return o.isMobXFlow=!0,o},ts);function os(e){xo(e.cancel)&&e.cancel()}function rs(e){return!0===(null==e?void 0:e.isMobXFlow)}function is(e){return function(e,t){return!!e&&(void 0!==t?!!Ks(e)&&e[Xo].values_.has(t):Ks(e)||!!e[Xo]||tr(e)||Ti(e)||ri(e))}(e)}function ss(e,t){void 0===t&&(t=void 0),xi();try{return e.apply(t)}finally{zi()}}function cs(e){return e[Xo]}as.bound=Yo(ns);var ls={has:function(e,t){return cs(e).has_(t)},get:function(e,t){return cs(e).get_(t)},set:function(e,t,n){var a;return!!zo(t)&&(null==(a=cs(e).set_(t,n,!0))||a)},deleteProperty:function(e,t){var n;return!!zo(t)&&(null==(n=cs(e).delete_(t,!0))||n)},defineProperty:function(e,t,n){var a;return null==(a=cs(e).defineProperty_(t,n))||a},ownKeys:function(e){return cs(e).ownKeys_()},preventExtensions:function(e){lo(13)}};function us(e){return void 0!==e.interceptors_&&e.interceptors_.length>0}function ps(e,t){var n=e.interceptors_||(e.interceptors_=[]);return n.push(t),jo(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function ds(e,t){var n=di();try{for(var a=[].concat(e.interceptors_||[]),o=0,r=a.length;o<r&&((t=a[o](t))&&!t.type&&lo(14),t);o++);return t}finally{mi(n)}}function ms(e){return void 0!==e.changeListeners_&&e.changeListeners_.length>0}function hs(e,t){var n=e.changeListeners_||(e.changeListeners_=[]);return n.push(t),jo(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function fs(e,t){var n=di(),a=e.changeListeners_;if(a){for(var o=0,r=(a=a.slice()).length;o<r;o++)a[o](t);mi(n)}}function gs(e,t,n){return sc(function(){var a=Fs(e,n)[Xo];null!=t||(t=function(e){return Ro(e,Wo)||Oo(e,Wo,Ko({},e[Wo])),e[Wo]}(e)),Lo(t).forEach(function(e){return a.make_(e,t[e])})}),e}var ks="splice",bs="update",ys={get:function(e,t){var n=e[Xo];return t===Xo?n:"length"===t?n.getArrayLength_():"string"!=typeof t||isNaN(t)?Ro(js,t)?js[t]:e[t]:n.get_(parseInt(t))},set:function(e,t,n){var a=e[Xo];return"length"===t&&a.setArrayLength_(n),"symbol"==typeof t||isNaN(t)?e[t]=n:a.set_(parseInt(t),n),!0},preventExtensions:function(){lo(15)}},vs=function(){function e(e,t,n,a){void 0===e&&(e="ObservableArray"),this.owned_=void 0,this.legacyMode_=void 0,this.atom_=void 0,this.values_=[],this.interceptors_=void 0,this.changeListeners_=void 0,this.enhancer_=void 0,this.dehancer=void 0,this.proxy_=void 0,this.lastKnownLength_=0,this.owned_=n,this.legacyMode_=a,this.atom_=new er(e),this.enhancer_=function(e,n){return t(e,n,"ObservableArray[..]")}}var t=e.prototype;return t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.dehanceValues_=function(e){return void 0!==this.dehancer&&e.length>0?e.map(this.dehancer):e},t.intercept_=function(e){return ps(this,e)},t.observe_=function(e,t){return void 0===t&&(t=!1),t&&e({observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:"splice",index:0,added:this.values_.slice(),addedCount:this.values_.length,removed:[],removedCount:0}),hs(this,e)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(e){("number"!=typeof e||isNaN(e)||e<0)&&lo("Out of range: "+e);var t=this.values_.length;if(e!==t)if(e>t){for(var n=new Array(e-t),a=0;a<e-t;a++)n[a]=void 0;this.spliceWithArray_(t,0,n)}else this.spliceWithArray_(e,t-e)},t.updateArrayLength_=function(e,t){e!==this.lastKnownLength_&&lo(16),this.lastKnownLength_+=t,this.legacyMode_&&t>0&&nc(e+t+1)},t.spliceWithArray_=function(e,t,n){var a=this;this.atom_;var o=this.values_.length;if(void 0===e?e=0:e>o?e=o:e<0&&(e=Math.max(0,o+e)),t=1===arguments.length?o-e:null==t?0:Math.max(0,Math.min(t,o-e)),void 0===n&&(n=ko),us(this)){var r=ds(this,{object:this.proxy_,type:ks,index:e,removedCount:t,added:n});if(!r)return ko;t=r.removedCount,n=r.added}if(n=0===n.length?n:n.map(function(e){return a.enhancer_(e,void 0)}),this.legacyMode_){var i=n.length-t;this.updateArrayLength_(o,i)}var s=this.spliceItemsIntoValues_(e,t,n);return 0===t&&0===n.length||this.notifyArraySplice_(e,n,s),this.dehanceValues_(s)},t.spliceItemsIntoValues_=function(e,t,n){var a;if(n.length<1e4)return(a=this.values_).splice.apply(a,[e,t].concat(n));var o=this.values_.slice(e,e+t),r=this.values_.slice(e+t);this.values_.length+=n.length-t;for(var i=0;i<n.length;i++)this.values_[e+i]=n[i];for(var s=0;s<r.length;s++)this.values_[e+n.length+s]=r[s];return o},t.notifyArrayChildUpdate_=function(e,t,n){var a=!this.owned_&&!1,o=ms(this),r=o||a?{observableKind:"array",object:this.proxy_,type:bs,debugObjectName:this.atom_.name_,index:e,newValue:t,oldValue:n}:null;this.atom_.reportChanged(),o&&fs(this,r)},t.notifyArraySplice_=function(e,t,n){var a=!this.owned_&&!1,o=ms(this),r=o||a?{observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:ks,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;this.atom_.reportChanged(),o&&fs(this,r)},t.get_=function(e){if(!(this.legacyMode_&&e>=this.values_.length))return this.atom_.reportObserved(),this.dehanceValue_(this.values_[e]);console.warn("[mobx] Out of bounds read: "+e)},t.set_=function(e,t){var n=this.values_;if(this.legacyMode_&&e>n.length&&lo(17,e,n.length),e<n.length){this.atom_;var a=n[e];if(us(this)){var o=ds(this,{type:bs,object:this.proxy_,index:e,newValue:t});if(!o)return;t=o.newValue}(t=this.enhancer_(t,a))!==a&&(n[e]=t,this.notifyArrayChildUpdate_(e,t,a))}else{for(var r=new Array(e+1-n.length),i=0;i<r.length-1;i++)r[i]=void 0;r[r.length-1]=t,this.spliceWithArray_(n.length,0,r)}},e}();function ws(e,t,n,a){return void 0===n&&(n="ObservableArray"),void 0===a&&(a=!1),wo(),sc(function(){var o=new vs(n,t,a,!1);Ao(o.values_,Xo,o);var r=new Proxy(o.values_,ys);return o.proxy_=r,e&&e.length&&o.spliceWithArray_(0,0,e),r})}var js={clear:function(){return this.splice(0)},replace:function(e){var t=this[Xo];return t.spliceWithArray_(0,t.values_.length,e)},toJSON:function(){return this.slice()},splice:function(e,t){for(var n=arguments.length,a=new Array(n>2?n-2:0),o=2;o<n;o++)a[o-2]=arguments[o];var r=this[Xo];switch(arguments.length){case 0:return[];case 1:return r.spliceWithArray_(e);case 2:return r.spliceWithArray_(e,t)}return r.spliceWithArray_(e,t,a)},spliceWithArray:function(e,t,n){return this[Xo].spliceWithArray_(e,t,n)},push:function(){for(var e=this[Xo],t=arguments.length,n=new Array(t),a=0;a<t;a++)n[a]=arguments[a];return e.spliceWithArray_(e.values_.length,0,n),e.values_.length},pop:function(){return this.splice(Math.max(this[Xo].values_.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){for(var e=this[Xo],t=arguments.length,n=new Array(t),a=0;a<t;a++)n[a]=arguments[a];return e.spliceWithArray_(0,0,n),e.values_.length},reverse:function(){return vi.trackingDerivation&&lo(37,"reverse"),this.replace(this.slice().reverse()),this},sort:function(){vi.trackingDerivation&&lo(37,"sort");var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[Xo],n=t.dehanceValues_(t.values_).indexOf(e);return n>-1&&(this.splice(n,1),!0)}};function _s(e,t){"function"==typeof Array.prototype[e]&&(js[e]=t(e))}function xs(e){return function(){var t=this[Xo];t.atom_.reportObserved();var n=t.dehanceValues_(t.values_);return n[e].apply(n,arguments)}}function zs(e){return function(t,n){var a=this,o=this[Xo];return o.atom_.reportObserved(),o.dehanceValues_(o.values_)[e](function(e,o){return t.call(n,e,o,a)})}}function Cs(e){return function(){var t=this,n=this[Xo];n.atom_.reportObserved();var a=n.dehanceValues_(n.values_),o=arguments[0];return arguments[0]=function(e,n,a){return o(e,n,a,t)},a[e].apply(a,arguments)}}_s("at",xs),_s("concat",xs),_s("flat",xs),_s("includes",xs),_s("indexOf",xs),_s("join",xs),_s("lastIndexOf",xs),_s("slice",xs),_s("toString",xs),_s("toLocaleString",xs),_s("toSorted",xs),_s("toSpliced",xs),_s("with",xs),_s("every",zs),_s("filter",zs),_s("find",zs),_s("findIndex",zs),_s("findLast",zs),_s("findLastIndex",zs),_s("flatMap",zs),_s("forEach",zs),_s("map",zs),_s("some",zs),_s("toReversed",zs),_s("reduce",Cs),_s("reduceRight",Cs);var Ss=Po("ObservableArrayAdministration",vs);function Es(e){return Co(e)&&Ss(e[Xo])}var Os={},As="add",Ps="delete",Ns=function(){function e(e,t,n){var a=this;void 0===t&&(t=or),void 0===n&&(n="ObservableMap"),this.enhancer_=void 0,this.name_=void 0,this[Xo]=Os,this.data_=void 0,this.hasMap_=void 0,this.keysAtom_=void 0,this.interceptors_=void 0,this.changeListeners_=void 0,this.dehancer=void 0,this.enhancer_=t,this.name_=n,xo(Map)||lo(18),sc(function(){a.keysAtom_=nr("ObservableMap.keys()"),a.data_=new Map,a.hasMap_=new Map,e&&a.merge(e)})}var t=e.prototype;return t.has_=function(e){return this.data_.has(e)},t.has=function(e){var t=this;if(!vi.trackingDerivation)return this.has_(e);var n=this.hasMap_.get(e);if(!n){var a=n=new ti(this.has_(e),rr,"ObservableMap.key?",!1);this.hasMap_.set(e,a),Qi(a,function(){return t.hasMap_.delete(e)})}return n.get()},t.set=function(e,t){var n=this.has_(e);if(us(this)){var a=ds(this,{type:n?bs:As,object:this,newValue:t,name:e});if(!a)return this;t=a.newValue}return n?this.updateValue_(e,t):this.addValue_(e,t),this},t.delete=function(e){var t=this;if(this.keysAtom_,us(this)&&!ds(this,{type:Ps,object:this,name:e}))return!1;if(this.has_(e)){var n=ms(this),a=n?{observableKind:"map",debugObjectName:this.name_,type:Ps,object:this,oldValue:this.data_.get(e).value_,name:e}:null;return ss(function(){var n;t.keysAtom_.reportChanged(),null==(n=t.hasMap_.get(e))||n.setNewValue_(!1),t.data_.get(e).setNewValue_(void 0),t.data_.delete(e)}),n&&fs(this,a),!0}return!1},t.updateValue_=function(e,t){var n=this.data_.get(e);if((t=n.prepareNewValue_(t))!==vi.UNCHANGED){var a=ms(this),o=a?{observableKind:"map",debugObjectName:this.name_,type:bs,object:this,oldValue:n.value_,name:e,newValue:t}:null;n.setNewValue_(t),a&&fs(this,o)}},t.addValue_=function(e,t){var n=this;this.keysAtom_,ss(function(){var a,o=new ti(t,n.enhancer_,"ObservableMap.key",!1);n.data_.set(e,o),t=o.value_,null==(a=n.hasMap_.get(e))||a.setNewValue_(!0),n.keysAtom_.reportChanged()});var a=ms(this),o=a?{observableKind:"map",debugObjectName:this.name_,type:As,object:this,name:e,newValue:t}:null;a&&fs(this,o)},t.get=function(e){return this.has(e)?this.dehanceValue_(this.data_.get(e).get()):this.dehanceValue_(void 0)},t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.keys=function(){return this.keysAtom_.reportObserved(),this.data_.keys()},t.values=function(){var e=this,t=this.keys();return Is({next:function(){var n=t.next(),a=n.done,o=n.value;return{done:a,value:a?void 0:e.get(o)}}})},t.entries=function(){var e=this,t=this.keys();return Is({next:function(){var n=t.next(),a=n.done,o=n.value;return{done:a,value:a?void 0:[o,e.get(o)]}}})},t[Symbol.iterator]=function(){return this.entries()},t.forEach=function(e,t){for(var n,a=Ho(this);!(n=a()).done;){var o=n.value,r=o[0],i=o[1];e.call(t,i,r,this)}},t.merge=function(e){var t=this;return Ts(e)&&(e=new Map(e)),ss(function(){So(e)?function(e){var t=Object.keys(e);if(!Io)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter(function(t){return go.propertyIsEnumerable.call(e,t)})):t}(e).forEach(function(n){return t.set(n,e[n])}):Array.isArray(e)?e.forEach(function(e){var n=e[0],a=e[1];return t.set(n,a)}):No(e)?(function(e){var t=Object.getPrototypeOf(e),n=Object.getPrototypeOf(t);return null===Object.getPrototypeOf(n)}(e)||lo(19,e),e.forEach(function(e,n){return t.set(n,e)})):null!=e&&lo(20,e)}),this},t.clear=function(){var e=this;ss(function(){pi(function(){for(var t,n=Ho(e.keys());!(t=n()).done;){var a=t.value;e.delete(a)}})})},t.replace=function(e){var t=this;return ss(function(){for(var n,a=function(e){if(No(e)||Ts(e))return e;if(Array.isArray(e))return new Map(e);if(So(e)){var t=new Map;for(var n in e)t.set(n,e[n]);return t}return lo(21,e)}(e),o=new Map,r=!1,i=Ho(t.data_.keys());!(n=i()).done;){var s=n.value;if(!a.has(s))if(t.delete(s))r=!0;else{var c=t.data_.get(s);o.set(s,c)}}for(var l,u=Ho(a.entries());!(l=u()).done;){var p=l.value,d=p[0],m=p[1],h=t.data_.has(d);if(t.set(d,m),t.data_.has(d)){var f=t.data_.get(d);o.set(d,f),h||(r=!0)}}if(!r)if(t.data_.size!==o.size)t.keysAtom_.reportChanged();else for(var g=t.data_.keys(),k=o.keys(),b=g.next(),y=k.next();!b.done;){if(b.value!==y.value){t.keysAtom_.reportChanged();break}b=g.next(),y=k.next()}t.data_=o}),this},t.toString=function(){return"[object ObservableMap]"},t.toJSON=function(){return Array.from(this)},t.observe_=function(e,t){return hs(this,e)},t.intercept_=function(e){return ps(this,e)},Vo(e,[{key:"size",get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return"Map"}}])}(),Ts=Po("ObservableMap",Ns);function Is(e){return e[Symbol.toStringTag]="MapIterator",hc(e)}var Ls={},Ds=function(){function e(e,t,n){var a=this;void 0===t&&(t=or),void 0===n&&(n="ObservableSet"),this.name_=void 0,this[Xo]=Ls,this.data_=new Set,this.atom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.dehancer=void 0,this.enhancer_=void 0,this.name_=n,xo(Set)||lo(22),this.enhancer_=function(e,a){return t(e,a,n)},sc(function(){a.atom_=nr(a.name_),e&&a.replace(e)})}var t=e.prototype;return t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.clear=function(){var e=this;ss(function(){pi(function(){for(var t,n=Ho(e.data_.values());!(t=n()).done;){var a=t.value;e.delete(a)}})})},t.forEach=function(e,t){for(var n,a=Ho(this);!(n=a()).done;){var o=n.value;e.call(t,o,o,this)}},t.add=function(e){var t=this;if(this.atom_,us(this)){var n=ds(this,{type:As,object:this,newValue:e});if(!n)return this;e=n.newValue}if(!this.has(e)){ss(function(){t.data_.add(t.enhancer_(e,void 0)),t.atom_.reportChanged()});var a=ms(this),o=a?{observableKind:"set",debugObjectName:this.name_,type:As,object:this,newValue:e}:null;a&&fs(this,o)}return this},t.delete=function(e){var t=this;if(us(this)&&!ds(this,{type:Ps,object:this,oldValue:e}))return!1;if(this.has(e)){var n=ms(this),a=n?{observableKind:"set",debugObjectName:this.name_,type:Ps,object:this,oldValue:e}:null;return ss(function(){t.atom_.reportChanged(),t.data_.delete(e)}),n&&fs(this,a),!0}return!1},t.has=function(e){return this.atom_.reportObserved(),this.data_.has(this.dehanceValue_(e))},t.entries=function(){var e=this.values();return Ms({next:function(){var t=e.next(),n=t.value,a=t.done;return a?{value:void 0,done:a}:{value:[n,n],done:a}}})},t.keys=function(){return this.values()},t.values=function(){this.atom_.reportObserved();var e=this,t=this.data_.values();return Ms({next:function(){var n=t.next(),a=n.value,o=n.done;return o?{value:void 0,done:o}:{value:e.dehanceValue_(a),done:o}}})},t.intersection=function(e){return To(e)&&!Rs(e)?e.intersection(this):new Set(this).intersection(e)},t.union=function(e){return To(e)&&!Rs(e)?e.union(this):new Set(this).union(e)},t.difference=function(e){return new Set(this).difference(e)},t.symmetricDifference=function(e){return To(e)&&!Rs(e)?e.symmetricDifference(this):new Set(this).symmetricDifference(e)},t.isSubsetOf=function(e){return new Set(this).isSubsetOf(e)},t.isSupersetOf=function(e){return new Set(this).isSupersetOf(e)},t.isDisjointFrom=function(e){return To(e)&&!Rs(e)?e.isDisjointFrom(this):new Set(this).isDisjointFrom(e)},t.replace=function(e){var t=this;return Rs(e)&&(e=new Set(e)),ss(function(){Array.isArray(e)||To(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):null!=e&&lo("Cannot initialize set from "+e)}),this},t.observe_=function(e,t){return hs(this,e)},t.intercept_=function(e){return ps(this,e)},t.toJSON=function(){return Array.from(this)},t.toString=function(){return"[object ObservableSet]"},t[Symbol.iterator]=function(){return this.values()},Vo(e,[{key:"size",get:function(){return this.atom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return"Set"}}])}(),Rs=Po("ObservableSet",Ds);function Ms(e){return e[Symbol.toStringTag]="SetIterator",hc(e)}var $s=Object.create(null),Bs="remove",Us=function(){function e(e,t,n,a){void 0===t&&(t=new Map),void 0===a&&(a=Cr),this.target_=void 0,this.values_=void 0,this.name_=void 0,this.defaultAnnotation_=void 0,this.keysAtom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.proxy_=void 0,this.isPlainObject_=void 0,this.appliedAnnotations_=void 0,this.pendingKeys_=void 0,this.target_=e,this.values_=t,this.name_=n,this.defaultAnnotation_=a,this.keysAtom_=new er("ObservableObject.keys"),this.isPlainObject_=So(this.target_)}var t=e.prototype;return t.getObservablePropValue_=function(e){return this.values_.get(e).get()},t.setObservablePropValue_=function(e,t){var n=this.values_.get(e);if(n instanceof ni)return n.set(t),!0;if(us(this)){var a=ds(this,{type:bs,object:this.proxy_||this.target_,name:e,newValue:t});if(!a)return null;t=a.newValue}if((t=n.prepareNewValue_(t))!==vi.UNCHANGED){var o=ms(this),r=o?{type:bs,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,oldValue:n.value_,name:e,newValue:t}:null;n.setNewValue_(t),o&&fs(this,r)}return!0},t.get_=function(e){return vi.trackingDerivation&&!Ro(this.target_,e)&&this.has_(e),this.target_[e]},t.set_=function(e,t,n){return void 0===n&&(n=!1),Ro(this.target_,e)?this.values_.has(e)?this.setObservablePropValue_(e,t):n?Reflect.set(this.target_,e,t):(this.target_[e]=t,!0):this.extend_(e,{value:t,enumerable:!0,writable:!0,configurable:!0},this.defaultAnnotation_,n)},t.has_=function(e){if(!vi.trackingDerivation)return e in this.target_;this.pendingKeys_||(this.pendingKeys_=new Map);var t=this.pendingKeys_.get(e);return t||(t=new ti(e in this.target_,rr,"ObservableObject.key?",!1),this.pendingKeys_.set(e,t)),t.get()},t.make_=function(e,t){if(!0===t&&(t=this.defaultAnnotation_),!1!==t){if(!(e in this.target_)){var n;if(null!=(n=this.target_[Wo])&&n[e])return;lo(1,t.annotationType_,this.name_+"."+e.toString())}for(var a=this.target_;a&&a!==go;){var o=ho(a,e);if(o){var r=t.make_(this,e,o,a);if(0===r)return;if(1===r)break}a=Object.getPrototypeOf(a)}qs(this,0,e)}},t.extend_=function(e,t,n,a){if(void 0===a&&(a=!1),!0===n&&(n=this.defaultAnnotation_),!1===n)return this.defineProperty_(e,t,a);var o=n.extend_(this,e,t,a);return o&&qs(this,0,e),o},t.defineProperty_=function(e,t,n){void 0===n&&(n=!1),this.keysAtom_;try{xi();var a=this.delete_(e);if(!a)return a;if(us(this)){var o=ds(this,{object:this.proxy_||this.target_,name:e,type:As,newValue:t.value});if(!o)return null;var r=o.newValue;t.value!==r&&(t=Ko({},t,{value:r}))}if(n){if(!Reflect.defineProperty(this.target_,e,t))return!1}else fo(this.target_,e,t);this.notifyPropertyAddition_(e,t.value)}finally{zi()}return!0},t.defineObservableProperty_=function(e,t,n,a){void 0===a&&(a=!1),this.keysAtom_;try{xi();var o=this.delete_(e);if(!o)return o;if(us(this)){var r=ds(this,{object:this.proxy_||this.target_,name:e,type:As,newValue:t});if(!r)return null;t=r.newValue}var i=Hs(e),s={configurable:!vi.safeDescriptors||this.isPlainObject_,enumerable:!0,get:i.get,set:i.set};if(a){if(!Reflect.defineProperty(this.target_,e,s))return!1}else fo(this.target_,e,s);var c=new ti(t,n,"ObservableObject.key",!1);this.values_.set(e,c),this.notifyPropertyAddition_(e,c.value_)}finally{zi()}return!0},t.defineComputedProperty_=function(e,t,n){void 0===n&&(n=!1),this.keysAtom_;try{xi();var a=this.delete_(e);if(!a)return a;if(us(this)&&!ds(this,{object:this.proxy_||this.target_,name:e,type:As,newValue:void 0}))return null;t.name||(t.name="ObservableObject.key"),t.context=this.proxy_||this.target_;var o=Hs(e),r={configurable:!vi.safeDescriptors||this.isPlainObject_,enumerable:!1,get:o.get,set:o.set};if(n){if(!Reflect.defineProperty(this.target_,e,r))return!1}else fo(this.target_,e,r);this.values_.set(e,new ni(t)),this.notifyPropertyAddition_(e,void 0)}finally{zi()}return!0},t.delete_=function(e,t){if(void 0===t&&(t=!1),this.keysAtom_,!Ro(this.target_,e))return!0;if(us(this)&&!ds(this,{object:this.proxy_||this.target_,name:e,type:Bs}))return null;try{var n;xi();var a,o=ms(this),r=this.values_.get(e),i=void 0;if(!r&&o&&(i=null==(a=ho(this.target_,e))?void 0:a.value),t){if(!Reflect.deleteProperty(this.target_,e))return!1}else delete this.target_[e];if(r&&(this.values_.delete(e),r instanceof ti&&(i=r.value_),Si(r)),this.keysAtom_.reportChanged(),null==(n=this.pendingKeys_)||null==(n=n.get(e))||n.set(e in this.target_),o){var s={type:Bs,observableKind:"object",object:this.proxy_||this.target_,debugObjectName:this.name_,oldValue:i,name:e};o&&fs(this,s)}}finally{zi()}return!0},t.observe_=function(e,t){return hs(this,e)},t.intercept_=function(e){return ps(this,e)},t.notifyPropertyAddition_=function(e,t){var n,a=ms(this);if(a){var o=a?{type:As,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,name:e,newValue:t}:null;a&&fs(this,o)}null==(n=this.pendingKeys_)||null==(n=n.get(e))||n.set(!0),this.keysAtom_.reportChanged()},t.ownKeys_=function(){return this.keysAtom_.reportObserved(),Lo(this.target_)},t.keys_=function(){return this.keysAtom_.reportObserved(),Object.keys(this.target_)},e}();function Fs(e,t){var n;if(Ro(e,Xo))return e;var a=null!=(n=null==t?void 0:t.name)?n:"ObservableObject",o=new Us(e,new Map,String(a),function(e){var t;return e?null!=(t=e.defaultDecorator)?t:Sr(e):void 0}(t));return Oo(e,Xo,o),e}var Vs=Po("ObservableObjectAdministration",Us);function Hs(e){return $s[e]||($s[e]={get:function(){return this[Xo].getObservablePropValue_(e)},set:function(t){return this[Xo].setObservablePropValue_(e,t)}})}function Ks(e){return!!Co(e)&&Vs(e[Xo])}function qs(e,t,n){var a;null==(a=e.target_[Wo])||delete a[n]}var Gs,Qs,Ws=ec(0),Ys=function(){var e=!1,t={};return Object.defineProperty(t,"0",{set:function(){e=!0}}),Object.create(t)[0]=1,!1===e}(),Js=0,Zs=function(){};Gs=Zs,Qs=Array.prototype,Object.setPrototypeOf?Object.setPrototypeOf(Gs.prototype,Qs):void 0!==Gs.prototype.__proto__?Gs.prototype.__proto__=Qs:Gs.prototype=Qs;var Xs=function(e){function t(t,n,a,o){var r;return void 0===a&&(a="ObservableArray"),void 0===o&&(o=!1),r=e.call(this)||this,sc(function(){var e=new vs(a,n,o,!0);e.proxy_=r,Ao(r,Xo,e),t&&t.length&&r.spliceWithArray(0,0,t),Ys&&Object.defineProperty(r,"0",Ws)}),r}qo(t,e);var n=t.prototype;return n.concat=function(){this[Xo].atom_.reportObserved();for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return Array.prototype.concat.apply(this.slice(),t.map(function(e){return Es(e)?e.slice():e}))},n[Symbol.iterator]=function(){var e=this,t=0;return hc({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},Vo(t,[{key:"length",get:function(){return this[Xo].getArrayLength_()},set:function(e){this[Xo].setArrayLength_(e)}},{key:Symbol.toStringTag,get:function(){return"Array"}}])}(Zs);function ec(e){return{enumerable:!1,configurable:!0,get:function(){return this[Xo].get_(e)},set:function(t){this[Xo].set_(e,t)}}}function tc(e){fo(Xs.prototype,""+e,ec(e))}function nc(e){if(e>Js){for(var t=Js;t<e+100;t++)tc(t);Js=e}}function ac(e,t,n){return new Xs(e,t,n)}function oc(e,t){if("object"==typeof e&&null!==e){if(Es(e))return void 0!==t&&lo(23),e[Xo].atom_;if(Rs(e))return e.atom_;if(Ts(e)){if(void 0===t)return e.keysAtom_;var n=e.data_.get(t)||e.hasMap_.get(t);return n||lo(25,t,ic(e)),n}if(Ks(e)){if(!t)return lo(26);var a=e[Xo].values_.get(t);return a||lo(27,t,ic(e)),a}if(tr(e)||ri(e)||Ti(e))return e}else if(xo(e)&&Ti(e[Xo]))return e[Xo];lo(28)}function rc(e,t){return e||lo(29),void 0!==t?rc(oc(e,t)):tr(e)||ri(e)||Ti(e)||Ts(e)||Rs(e)?e:e[Xo]?e[Xo]:void lo(24,e)}function ic(e,t){var n;if(void 0!==t)n=oc(e,t);else{if(Hi(e))return e.name;n=Ks(e)||Ts(e)||Rs(e)?rc(e):oc(e)}return n.name_}function sc(e){var t=di(),n=Xr(!0);xi();try{return e()}finally{zi(),ei(n),mi(t)}}Object.entries(js).forEach(function(e){var t=e[0],n=e[1];"concat"!==t&&Oo(Xs.prototype,t,n)}),nc(1e3);var cc,lc=go.toString;function uc(e,t,n){return void 0===n&&(n=-1),pc(e,t,n)}function pc(e,t,n,a,o){if(e===t)return 0!==e||1/e==1/t;if(null==e||null==t)return!1;if(e!=e)return t!=t;var r=typeof e;if("function"!==r&&"object"!==r&&"object"!=typeof t)return!1;var i=lc.call(e);if(i!==lc.call(t))return!1;switch(i){case"[object RegExp]":case"[object String]":return""+e==""+t;case"[object Number]":return+e!=+e?+t!=+t:0===+e?1/+e==1/t:+e===+t;case"[object Date]":case"[object Boolean]":return+e===+t;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t);case"[object Map]":case"[object Set]":n>=0&&n++}e=dc(e),t=dc(t);var s="[object Array]"===i;if(!s){if("object"!=typeof e||"object"!=typeof t)return!1;var c=e.constructor,l=t.constructor;if(c!==l&&!(xo(c)&&c instanceof c&&xo(l)&&l instanceof l)&&"constructor"in e&&"constructor"in t)return!1}if(0===n)return!1;n<0&&(n=-1),o=o||[];for(var u=(a=a||[]).length;u--;)if(a[u]===e)return o[u]===t;if(a.push(e),o.push(t),s){if((u=e.length)!==t.length)return!1;for(;u--;)if(!pc(e[u],t[u],n-1,a,o))return!1}else{var p=Object.keys(e),d=p.length;if(Object.keys(t).length!==d)return!1;for(var m=0;m<d;m++){var h=p[m];if(!Ro(t,h)||!pc(e[h],t[h],n-1,a,o))return!1}}return a.pop(),o.pop(),!0}function dc(e){return Es(e)?e.slice():No(e)||Ts(e)||To(e)||Rs(e)?Array.from(e.entries()):e}var mc=(null==(cc=po().Iterator)?void 0:cc.prototype)||{};function hc(e){return e[Symbol.iterator]=fc,Object.assign(Object.create(mc),e)}function fc(){return this}["Symbol","Map","Set"].forEach(function(e){void 0===po()[e]&&lo("MobX requires global '"+e+"' to be available or polyfilled")}),"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:function(e){return console.warn("[mobx.spy] Is a no-op in production builds"),function(){}},extras:{getDebugName:ic},$mobx:Xo});const gc={USD:1,EUR:.92,GBP:.79,CAD:1.35,AUD:1.54,CHF:.89,JPY:149.5,NOK:10.8,SEK:10.7,DKK:6.9,PLN:4.1,BRL:5,INR:83.2,ARS:350,CLP:880,COP:4100,MXN:17.5,PEN:3.8,UYU:39.5};function kc(e){return gc[e]||1}function bc(e,t){return e.toLocaleString(gt(),{style:"currency",currency:t,currencyDisplay:"narrowSymbol",minimumFractionDigits:0})}const yc=new class{displayPrices=null;areDisplayPricesLoading=!1;constructor(){this.setDisplayPrices=this.setDisplayPrices.bind(this),this.getListingDirectoPrice=this.getListingDirectoPrice.bind(this),gs(this,{displayPrices:Fr,areDisplayPricesLoading:Fr,setDisplayPrices:Ui,getListingDirectoPrice:Ui})}setDisplayPrices(e){this.displayPrices=e}async getListingDirectoPrice(e,t){try{const{checkin:n,checkout:a,...o}=await Wu(window.location.href),r=Hu.get();if(!r||r&&!await r.canMakePricingRequest())return null;Vi(()=>{yc.areDisplayPricesLoading=!0});const i={url:e.directo_url,checkin:n,checkout:a,...o,isUrlParametrised:e.stay_parametrised??!1,..."BOOKING"===r.platform?{hotelId:r.getHotelIdInDetail()}:{}},{value:s,elapsed:c}=await async function(){const e=performance.now();return{value:await async function(e){return await y().get("/shop",{params:e,parser:new p})}(i),elapsed:performance.now()-e}}(),l=null!==s.price?function(e){if(Number.isNaN(e.otaTotalPrice)||Number.isNaN(e.directoPrice)||e.otaTotalPrice<=0||e.directoPrice<=0)return null;const t=e.directoIsNightly&&e.lengthOfStay?e.directoPrice*e.lengthOfStay:e.directoPrice,{price1:n,price2:a}=function(e,t,n,a,o){const r=e/kc(t),i=n/kc(a),s=kc(o);return{price1:r*s,price2:i*s,currency:o}}(e.otaTotalPrice,e.otaCurrency,t,e.directoCurrency,e.displayCurrency),o=fa(n),r=fa(a),i=Math.max(o-r,0),s=i>0;return{displayedOtaPrice:o,displayedDirectoPrice:r,displayedPriceDifference:i,displayedCurrency:e.displayCurrency,thereIsDiscount:s}}({otaTotalPrice:t.totalPrice,otaCurrency:t.currency,directoPrice:s.price,directoIsNightly:s.nightly||!1,directoCurrency:s.currency||"USD",lengthOfStay:await Ku(),displayCurrency:i.currency||"USD"}):null;return yc.setDisplayPrices(l),{displayPrices:l,priceFromShop:s,shopEndpointResponseTimeMs:c,pricingParams:i}}catch(e){throw yc.setDisplayPrices(null),e}finally{Vi(()=>{yc.areDisplayPricesLoading=!1})}}};var vc=n(155);const wc=({width:e="29",height:t="31",viewBox:n="0 0 29 31",fill:a="none",style:o={}})=>(0,so.jsxs)("svg",{width:e,height:t,viewBox:n,style:o,fill:a,xmlns:"http://www.w3.org/2000/svg",children:[(0,so.jsx)("path",{d:"M23.0716 26.6715C21.7556 25.5134 20.4569 24.3399 19.1234 23.1974C18.8924 22.9998 18.7424 23.0044 18.5196 23.163C17.9021 23.6022 17.2174 23.9458 16.5035 24.2399C15.0518 24.8382 13.516 25.0848 11.9241 25.084C11.2304 25.084 10.5366 25.0821 9.84291 25.0817C9.69079 25.0817 9.56738 25.192 9.56738 25.328V30.3459C9.56738 30.4815 9.69036 30.5914 9.84205 30.5918C10.6313 30.5934 11.4206 30.596 12.2104 30.5995C13.0472 30.6033 13.8862 30.5658 14.6991 30.4478C16.1646 30.2353 17.5992 29.8856 18.9631 29.328C20.4393 28.7244 21.8079 27.9768 23.0596 27.0526C23.2588 26.9055 23.2511 26.8293 23.0716 26.6715Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M11.9914 6.24371C13.0108 6.25367 14.0341 6.32835 15.0046 6.6133C16.1354 6.94497 17.2632 7.30574 18.2239 7.97061C18.3289 8.043 18.4395 8.11155 18.532 8.19505C18.7 8.34633 18.832 8.32756 18.9845 8.18432C19.1632 8.01619 19.341 7.84729 19.5279 7.68605C20.7084 6.66883 21.8898 5.65237 23.0754 4.63975C23.2177 4.51834 23.2687 4.44902 23.0758 4.30769C22.4382 3.84045 21.7818 3.39924 21.082 3.00821C18.502 1.56625 15.6816 0.791076 12.6509 0.747798C11.7155 0.734394 10.7796 0.726734 9.84419 0.722904C9.69165 0.722138 9.56738 0.832822 9.56738 0.969167V5.9917C9.56738 6.12766 9.69079 6.23797 9.84291 6.23758C10.5589 6.23682 11.275 6.23682 11.991 6.24371H11.9914Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M6.70176 0.717285H1.12783C0.951519 0.717285 0.808594 0.845031 0.808594 1.00261V30.3052C0.808594 30.4628 0.951519 30.5905 1.12783 30.5905H6.70176C6.87806 30.5905 7.02099 30.4628 7.02099 30.3052V1.00261C7.02099 0.845031 6.87806 0.717285 6.70176 0.717285Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M25.0106 6.09228C25.5783 6.67174 26.0904 7.28721 26.5364 7.94748C27.1895 8.91453 27.678 9.94209 28.0923 11.0091C28.4973 12.0528 28.6978 13.1205 28.8306 14.2109C28.9073 14.8421 28.9819 15.4713 28.9459 16.1044C28.8345 18.0542 28.3944 19.9351 27.5023 21.7302C27.1826 22.3736 26.8205 23.0032 26.41 23.5892C26.0004 24.174 25.5629 24.7711 24.9428 25.2862C24.6219 24.9867 24.3048 24.6811 23.9766 24.3854C22.8946 23.4103 21.8114 22.4364 20.7213 21.4682C20.5854 21.3475 20.5709 21.289 20.7011 21.1423C21.4459 20.3012 21.9421 19.3384 22.3024 18.3242C22.6928 17.2262 22.8625 16.0849 22.7104 14.9455C22.6101 14.1925 22.4948 13.4288 22.1996 12.6969C21.9001 11.9555 21.514 11.2603 21.0474 10.5962C20.9295 10.4285 20.8267 10.2473 20.6788 10.1033C20.531 9.95971 20.5404 9.87775 20.6943 9.74562C21.7762 8.81534 22.8676 7.89425 23.9252 6.94098C24.2504 6.64799 24.5902 6.3596 24.9424 6.08691C24.9651 6.08845 24.9883 6.08998 25.011 6.09113L25.0106 6.09228Z",fill:"#000141"})]}),jc=({})=>(0,so.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,so.jsx)("path",{d:"M10.4306 12.1599C9.8141 11.6173 9.20561 11.0675 8.58086 10.5322C8.47266 10.4396 8.40239 10.4418 8.298 10.5161C8.00871 10.7219 7.6879 10.8828 7.35345 11.0206C6.67329 11.3009 5.95378 11.4165 5.20798 11.4161C4.88296 11.4161 4.55793 11.4152 4.23291 11.415C4.16164 11.415 4.10383 11.4667 4.10383 11.5304V13.8814C4.10383 13.9449 4.16144 13.9964 4.23251 13.9966C4.6023 13.9973 4.97209 13.9985 5.34208 14.0001C5.73416 14.0019 6.12723 13.9843 6.50807 13.9291C7.19465 13.8295 7.86678 13.6657 8.50578 13.4044C9.19738 13.1216 9.83859 12.7714 10.425 12.3384C10.5183 12.2695 10.5147 12.2338 10.4306 12.1599Z",fill:"white"}),(0,so.jsx)("path",{d:"M5.2395 2.58924C5.71709 2.5939 6.1965 2.62889 6.65121 2.76239C7.181 2.91778 7.70938 3.08681 8.15948 3.3983C8.20866 3.43222 8.26046 3.46433 8.30382 3.50345C8.38252 3.57433 8.44435 3.56553 8.51582 3.49843C8.59953 3.41966 8.68285 3.34052 8.77038 3.26498C9.32346 2.78841 9.87694 2.31219 10.4324 1.83777C10.4991 1.78089 10.523 1.74841 10.4326 1.6822C10.1339 1.46329 9.82635 1.25659 9.49851 1.07338C8.28977 0.397817 6.9684 0.0346442 5.54846 0.0143682C5.11021 0.00808808 4.67176 0.00449952 4.23351 0.00270519C4.16204 0.00234632 4.10383 0.0542024 4.10383 0.118081V2.47117C4.10383 2.53487 4.16164 2.58655 4.23291 2.58637C4.56837 2.58601 4.90403 2.58601 5.2395 2.58924Z",fill:"white"}),(0,so.jsx)("path",{d:"M2.76098 0H0.149562C0.0669613 0 0 0.0598496 0 0.133678V13.8621C0 13.936 0.0669613 13.9958 0.149562 13.9958H2.76098C2.84358 13.9958 2.91055 13.936 2.91055 13.8621V0.133678C2.91055 0.0598496 2.84358 0 2.76098 0Z",fill:"white"}),(0,so.jsx)("path",{d:"M11.339 2.5184C11.605 2.78989 11.8449 3.07824 12.0538 3.38758C12.3598 3.84065 12.5887 4.32207 12.7828 4.82197C12.9725 5.31093 13.0665 5.81119 13.1287 6.32203C13.1646 6.61774 13.1996 6.91255 13.1827 7.20915C13.1305 8.12265 12.9243 9.00385 12.5063 9.84485C12.3566 10.1463 12.1869 10.4413 11.9946 10.7158C11.8027 10.9898 11.5977 11.2696 11.3072 11.5109C11.1569 11.3706 11.0083 11.2274 10.8545 11.0889C10.3476 10.632 9.84012 10.1757 9.3294 9.72212C9.26576 9.6656 9.25893 9.63814 9.31996 9.56942C9.66888 9.17539 9.90135 8.72429 10.0702 8.24915C10.2531 7.73471 10.3326 7.2 10.2613 6.66619C10.2143 6.31342 10.1603 5.95563 10.022 5.61273C9.88168 5.26535 9.7008 4.93968 9.48217 4.62854C9.42697 4.54995 9.37878 4.46508 9.30952 4.39761C9.24026 4.33032 9.24468 4.29192 9.31675 4.23002C9.82366 3.79418 10.335 3.36264 10.8304 2.91603C10.9828 2.77876 11.142 2.64365 11.307 2.51589C11.3177 2.51661 11.3283 2.51787 11.339 2.5184Z",fill:"white"})]}),_c=({})=>(0,so.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,so.jsx)("path",{d:"M10.4306 12.1599C9.8141 11.6173 9.20561 11.0675 8.58086 10.5322C8.47266 10.4396 8.40239 10.4418 8.298 10.5161C8.00871 10.7219 7.6879 10.8828 7.35345 11.0206C6.67329 11.3009 5.95378 11.4165 5.20798 11.4161C4.88296 11.4161 4.55793 11.4152 4.23291 11.415C4.16164 11.415 4.10383 11.4667 4.10383 11.5304V13.8814C4.10383 13.9449 4.16144 13.9964 4.23251 13.9966C4.6023 13.9973 4.97209 13.9985 5.34208 14.0001C5.73416 14.0019 6.12723 13.9843 6.50807 13.9291C7.19465 13.8295 7.86678 13.6657 8.50578 13.4044C9.19738 13.1216 9.83859 12.7714 10.425 12.3384C10.5183 12.2695 10.5147 12.2338 10.4306 12.1599Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M5.2395 2.58924C5.71709 2.5939 6.1965 2.62889 6.65121 2.76239C7.181 2.91778 7.70938 3.08681 8.15948 3.3983C8.20866 3.43222 8.26046 3.46433 8.30382 3.50345C8.38252 3.57433 8.44435 3.56553 8.51582 3.49843C8.59953 3.41966 8.68285 3.34052 8.77038 3.26498C9.32346 2.78841 9.87694 2.31219 10.4324 1.83777C10.4991 1.78089 10.523 1.74841 10.4326 1.6822C10.1339 1.46329 9.82635 1.25659 9.49851 1.07338C8.28977 0.397817 6.9684 0.0346442 5.54846 0.0143682C5.11021 0.00808808 4.67176 0.00449952 4.23351 0.00270519C4.16204 0.00234632 4.10383 0.0542024 4.10383 0.118081V2.47117C4.10383 2.53487 4.16164 2.58655 4.23291 2.58637C4.56837 2.58601 4.90403 2.58601 5.2395 2.58924Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M2.76098 0H0.149562C0.0669613 0 0 0.0598496 0 0.133678V13.8621C0 13.936 0.0669613 13.9958 0.149562 13.9958H2.76098C2.84358 13.9958 2.91055 13.936 2.91055 13.8621V0.133678C2.91055 0.0598496 2.84358 0 2.76098 0Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M11.339 2.5184C11.605 2.78989 11.8449 3.07824 12.0538 3.38758C12.3598 3.84065 12.5887 4.32207 12.7828 4.82197C12.9725 5.31093 13.0665 5.81119 13.1287 6.32203C13.1646 6.61774 13.1996 6.91255 13.1827 7.20915C13.1305 8.12265 12.9243 9.00385 12.5063 9.84485C12.3566 10.1463 12.1869 10.4413 11.9946 10.7158C11.8027 10.9898 11.5977 11.2696 11.3072 11.5109C11.1569 11.3706 11.0083 11.2274 10.8545 11.0889C10.3476 10.632 9.84012 10.1757 9.3294 9.72212C9.26576 9.6656 9.25893 9.63814 9.31996 9.56942C9.66888 9.17539 9.90135 8.72429 10.0702 8.24915C10.2531 7.73471 10.3326 7.2 10.2613 6.66619C10.2143 6.31342 10.1603 5.95563 10.022 5.61273C9.88168 5.26535 9.7008 4.93968 9.48217 4.62854C9.42697 4.54995 9.37878 4.46508 9.30952 4.39761C9.24026 4.33032 9.24468 4.29192 9.31675 4.23002C9.82366 3.79418 10.335 3.36264 10.8304 2.91603C10.9828 2.77876 11.142 2.64365 11.307 2.51589C11.3177 2.51661 11.3283 2.51787 11.339 2.5184Z",fill:"#000141"})]}),xc=({className:e,style:t})=>(0,so.jsxs)("svg",{width:"100%",height:"100%",className:e,viewBox:"0 0 32 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:t,children:[(0,so.jsxs)("g",{clipPath:"url(#clip0_38_1686)",children:[(0,so.jsx)("path",{d:"M25.0747 27.7915C23.6506 26.5506 22.2436 25.2944 20.8003 24.0707C20.5503 23.8588 20.388 23.8645 20.1474 24.0344C19.4793 24.5041 18.7366 24.8725 17.9654 25.1875C16.3942 25.829 14.7314 26.0924 13.0075 26.0924C12.2573 26.0924 11.5051 26.0905 10.7548 26.0905C10.5907 26.0905 10.457 26.2089 10.457 26.354V31.728C10.457 31.8731 10.5907 31.9914 10.7548 31.9914C11.6101 31.9914 12.4634 31.9953 13.3187 31.9991C14.2255 32.0029 15.1323 31.9628 16.0124 31.8368C17.5988 31.6096 19.1528 31.2354 20.6285 30.6379C22.2264 29.9907 23.7079 29.1908 25.0633 28.2019C25.279 28.0454 25.2714 27.9633 25.0767 27.7934L25.0747 27.7915Z",fill:"#FDC307"}),(0,so.jsx)("path",{d:"M13.0791 5.91629C14.1825 5.92774 15.2898 6.00601 16.3417 6.31146C17.5654 6.66655 18.7872 7.05218 19.8276 7.76426C19.9422 7.84254 20.0605 7.91508 20.1617 8.00481C20.3431 8.16708 20.4862 8.14608 20.6523 7.99335C20.8452 7.8139 21.038 7.63254 21.2403 7.46072C22.5175 6.37065 23.7966 5.28248 25.0814 4.19813C25.236 4.06831 25.2914 3.99386 25.0814 3.84304C24.3903 3.34286 23.6801 2.86942 22.9222 2.45133C20.1293 0.906895 17.0747 0.0764508 13.7931 0.0306332C12.7793 0.0153607 11.7675 0.00772438 10.7538 0.00390625C10.5877 0.00390625 10.4541 0.122268 10.4541 0.267358V5.6452C10.4541 5.79029 10.5877 5.90865 10.7519 5.90865C11.527 5.90865 12.3021 5.90865 13.0772 5.91438L13.0791 5.91629Z",fill:"#FDC307"}),(0,so.jsx)("path",{d:"M7.35178 0H1.31722C1.12631 0 0.97168 0.137453 0.97168 0.305451V31.6829C0.97168 31.8509 1.12631 31.9883 1.31722 31.9883H7.35178C7.54269 31.9883 7.69732 31.8509 7.69732 31.6829V0.305451C7.69732 0.137453 7.54269 0 7.35178 0Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M27.1757 5.75577C27.7905 6.37622 28.3441 7.03485 28.8271 7.74311C29.5334 8.77782 30.0622 9.87936 30.5109 11.021C30.95 12.1378 31.1657 13.2813 31.3108 14.4497C31.3929 15.1255 31.475 15.7994 31.4349 16.4771C31.3146 18.5656 30.8373 20.5797 29.8713 22.5002C29.5258 23.1894 29.1325 23.8633 28.6896 24.4914C28.2467 25.1175 27.7733 25.7571 27.1013 26.3088C26.7538 25.9881 26.4102 25.6616 26.0551 25.3447C24.8829 24.3004 23.7108 23.2581 22.531 22.2215C22.384 22.0917 22.3687 22.0306 22.51 21.8721C23.3156 20.971 23.854 19.9401 24.2434 18.8539C24.6653 17.6779 24.8505 16.4561 24.6844 15.2362C24.5756 14.4306 24.4515 13.6116 24.1308 12.8289C23.8062 12.0347 23.3881 11.2902 22.8842 10.58C22.7562 10.4005 22.6455 10.2058 22.4852 10.0531C22.3248 9.89845 22.3362 9.81063 22.5023 9.66936C23.6745 8.67283 24.8562 7.68775 25.9998 6.6664C26.351 6.35331 26.7195 6.04404 27.1013 5.75195C27.1261 5.75195 27.1509 5.75577 27.1757 5.75577Z",fill:"#FDC307"})]}),(0,so.jsx)("defs",{children:(0,so.jsx)("clipPath",{id:"clip0_38_1686",children:(0,so.jsx)("rect",{width:"32",height:"32",fill:"white"})})})]}),zc=({style:e})=>(0,so.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:e,children:(0,so.jsx)("path",{d:"M5.50008 14.6666V7.33331M2.16675 8.66665V13.3333C2.16675 14.0697 2.7637 14.6666 3.50008 14.6666H12.4509C13.4381 14.6666 14.2776 13.9464 14.4277 12.9708L15.1456 8.30409C15.332 7.09258 14.3946 5.99998 13.1689 5.99998H10.8334C10.4652 5.99998 10.1667 5.7015 10.1667 5.33331V2.97721C10.1667 2.06931 9.43075 1.33331 8.52286 1.33331C8.30631 1.33331 8.11007 1.46084 8.02212 1.65873L5.67604 6.93741C5.56904 7.17816 5.33029 7.33331 5.06683 7.33331H3.50008C2.7637 7.33331 2.16675 7.93027 2.16675 8.66665Z",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})}),Cc=({className:e=""})=>(0,so.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:e,children:(0,so.jsx)("path",{d:"M10.3602 7.52685L6.58682 3.76019C6.52484 3.6977 6.45111 3.64811 6.36987 3.61426C6.28863 3.58041 6.20149 3.56299 6.11348 3.56299C6.02548 3.56299 5.93834 3.58041 5.8571 3.61426C5.77586 3.64811 5.70213 3.6977 5.64015 3.76019C5.51598 3.8851 5.44629 4.05406 5.44629 4.23019C5.44629 4.40631 5.51598 4.57528 5.64015 4.70019L8.94015 8.03352L5.64015 11.3335C5.51598 11.4584 5.44629 11.6274 5.44629 11.8035C5.44629 11.9796 5.51598 12.1486 5.64015 12.2735C5.70189 12.3365 5.77552 12.3866 5.85677 12.421C5.93802 12.4553 6.02528 12.4732 6.11348 12.4735C6.20169 12.4732 6.28894 12.4553 6.37019 12.421C6.45144 12.3866 6.52507 12.3365 6.58682 12.2735L10.3602 8.50685C10.4278 8.44443 10.4818 8.36866 10.5188 8.28433C10.5557 8.19999 10.5748 8.10892 10.5748 8.01685C10.5748 7.92479 10.5557 7.83372 10.5188 7.74938C10.4818 7.66505 10.4278 7.58928 10.3602 7.52685V7.52685Z",fill:"currentColor"})}),Sc=({className:e="",style:t={}})=>(0,so.jsxs)("svg",{width:"29",height:"24",viewBox:"0 0 29 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:e,style:t,children:[(0,so.jsx)("path",{d:"M0.81897 1.81898C1.34335 1.29459 2.05456 1 2.79615 1H25.1654C25.9069 1 26.6182 1.29459 27.1425 1.81898C27.6669 2.34335 27.9615 3.05458 27.9615 3.79614V8.78571C27.9615 9.11857 27.6886 9.38196 27.3634 9.45315C26.8451 9.56668 26.3654 9.82636 25.9843 10.2074C25.4599 10.7318 25.1654 11.443 25.1654 12.1846C25.1654 12.9262 25.4599 13.6374 25.9843 14.1618C26.3654 14.5428 26.8451 14.8025 27.3634 14.9161C27.6886 14.9873 27.9615 15.2506 27.9615 15.5835V20.5731C27.9615 21.3146 27.6669 22.0259 27.1425 22.5503C26.6182 23.0746 25.9069 23.3692 25.1654 23.3692H2.79615C2.05456 23.3692 1.34335 23.0746 0.81897 22.5503C0.294594 22.0259 0 21.3146 0 20.5731V15.5835C0 15.2506 0.272938 14.9873 0.598128 14.9161C1.11644 14.8025 1.59613 14.5428 1.97717 14.1618C2.50156 13.6374 2.79615 12.9262 2.79615 12.1846C2.79615 11.443 2.50156 10.7318 1.97717 10.2074C1.59613 9.82636 1.11644 9.56668 0.598128 9.45315C0.272938 9.38196 0 9.11857 0 8.78571V3.79614C0 3.05458 0.294594 2.34335 0.81897 1.81898Z",fill:"#FDC307"}),(0,so.jsx)("path",{d:"M27.789 1.17254L27.7889 1.17252C27.3584 0.741918 26.7743 0.5 26.1654 0.5H3.79615C3.18717 0.5 2.60314 0.741915 2.17252 1.17253C1.74192 1.60314 1.5 2.18719 1.5 2.79614V7.78571C1.5 7.80892 1.50815 7.83953 1.5422 7.87591C1.57863 7.91484 1.63663 7.94973 1.70505 7.96471L1.70512 7.96473C2.31604 8.09855 2.88153 8.40465 3.33075 8.85391C3.94889 9.47202 4.29615 10.3104 4.29615 11.1846C4.29615 12.0588 3.9489 12.8972 3.33075 13.5153C2.88153 13.9646 2.31604 14.2707 1.70512 14.4045L1.70505 14.4045C1.63663 14.4195 1.57863 14.4544 1.5422 14.4933C1.50815 14.5297 1.5 14.5603 1.5 14.5835V19.5731C1.5 20.182 1.74191 20.7661 2.17251 21.1967C2.60313 21.6273 3.18718 21.8692 3.79615 21.8692H26.1654C26.7743 21.8692 27.3584 21.6273 27.789 21.1967C28.2196 20.7661 28.4615 20.182 28.4615 19.5731V14.5835C28.4615 14.5603 28.4534 14.5297 28.4193 14.4933C28.3829 14.4544 28.3249 14.4195 28.2565 14.4045L28.2564 14.4045C27.6455 14.2707 27.08 13.9646 26.6308 13.5153C26.6308 13.5153 26.6308 13.5153 26.6308 13.5153M27.789 1.17254L26.9843 9.20744C26.4599 9.73178 26.1654 10.443 26.1654 11.1846C26.1654 11.9262 26.4599 12.6374 26.9843 13.1618L26.6308 13.5153M27.789 1.17254C28.2196 1.60315 28.4615 2.1872 28.4615 2.79614V7.78571C28.4615 7.8089 28.4534 7.83952 28.4193 7.87591C28.3829 7.91484 28.3249 7.94974 28.2565 7.96471L28.2564 7.96473C27.6455 8.09855 27.08 8.40462 26.6308 8.85387M27.789 1.17254L26.6308 8.85387M26.6308 13.5153C26.0126 12.8972 25.6654 12.0588 25.6654 11.1846C25.6654 10.3104 26.0126 9.47204 26.6308 8.85391M26.6308 13.5153V8.85391M26.6308 8.85391C26.6308 8.8539 26.6308 8.85388 26.6308 8.85387M26.6308 8.85391L26.6308 8.85387",fill:"#000141",stroke:"#FDC307"}),(0,so.jsx)("path",{d:"M15.779 12.7709C14.4908 14.4694 13.203 16.1677 11.9214 17.8705C11.7811 18.0567 11.6186 18.2124 11.4182 18.3158C11.2155 18.4204 10.9905 18.4627 10.7403 18.4463C10.5788 18.4356 10.4148 18.438 10.2381 18.4406L10.2341 18.4407C10.0853 18.4429 9.92771 18.4453 9.76896 18.4381C9.60837 18.4307 9.41512 18.3864 9.25901 18.2838C9.10235 18.1815 9.00935 18.0237 9.00066 17.8415C8.99252 17.6697 9.06061 17.5059 9.16241 17.3695C9.42982 17.011 9.70024 16.6551 9.9699 16.3003L9.98153 16.285L9.98236 16.2839L9.98485 16.2806L9.98696 16.2778C10.0951 16.1355 10.2031 15.9934 10.3109 15.8512L18.1623 5.48965C18.2352 5.39339 18.3086 5.29773 18.3815 5.20279C18.5489 4.98468 18.7132 4.77051 18.8699 4.55174C18.9944 4.37797 19.1449 4.22651 19.3342 4.12598C19.5267 4.02368 19.7434 3.98255 19.9842 4.00675C20.0696 4.01527 20.159 4.01333 20.2679 4.01057C20.3151 4.00935 20.3672 4.00802 20.4187 4.00802L20.723 4.00824L21.0269 4.00841C21.2472 4.00841 21.5392 4.06498 21.697 4.36928C21.776 4.52151 21.7838 4.67319 21.7438 4.8128C21.7075 4.93979 21.6345 5.04558 21.5753 5.12352C20.3497 6.73933 19.1249 8.35589 17.9002 9.97239L17.6144 10.3496L17.6099 10.3556L17.036 11.1129C16.6321 11.646 16.228 12.1788 15.824 12.7116L15.7813 12.7678L15.779 12.7709Z",fill:"#FDC307"}),(0,so.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.06166 5.59643C6.964 6.35766 7.00404 7.81567 7.03529 8.21069C7.12611 9.36352 7.6183 10.2209 8.58998 10.699C9.23256 11.0149 9.90736 11.0481 10.5919 10.9543C11.9122 10.7742 12.8683 9.73754 12.9601 8.30151C13.0158 7.44067 13.0128 6.56811 12.9552 5.70776C12.8839 4.65258 12.3898 3.86059 11.5245 3.38842C10.9884 3.09594 10.4357 2.97534 9.87709 3.00415C9.5597 3.02075 9.24037 3.08569 8.92201 3.19506C7.86634 3.55786 7.21986 4.36401 7.06166 5.59643ZM10.0001 5.00024C9.4474 5.00024 9.00013 5.44799 9.00013 6.00024V8.00024C9.00013 8.55249 9.4474 9.00024 10.0001 9.00024C10.2911 9.00024 10.5529 8.8767 10.7355 8.67895C10.8995 8.50024 11.0001 8.26196 11.0001 8.00024V6.00024C11.0001 5.44799 10.5529 5.00024 10.0001 5.00024Z",fill:"#FDC307"}),(0,so.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M18.0617 13.5964C17.964 14.3577 18.004 15.8157 18.0353 16.2107C18.1261 17.3635 18.6183 18.2209 19.59 18.699C20.2326 19.0149 20.9074 19.0481 21.5919 18.9543C22.9122 18.7742 23.8683 17.7375 23.9601 16.3015C24.0158 15.4407 24.0128 14.5681 23.9552 13.7078C23.8839 12.6526 23.3898 11.8606 22.5245 11.3884C21.9884 11.0959 21.4357 10.9753 20.8771 11.0041C20.5597 11.0207 20.2404 11.0857 19.922 11.1951C18.8663 11.5579 18.2199 12.364 18.0617 13.5964ZM21.0001 13.0002C20.4474 13.0002 20.0001 13.448 20.0001 14.0002V16.0002C20.0001 16.5525 20.4474 17.0002 21.0001 17.0002C21.2911 17.0002 21.5529 16.8767 21.7355 16.679C21.8995 16.5002 22.0001 16.262 22.0001 16.0002V14.0002C22.0001 13.448 21.5529 13.0002 21.0001 13.0002Z",fill:"#FDC307"})]}),Ec=({style:e})=>(0,so.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"size-6",style:e,children:(0,so.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v12m-3-2.818.879.659c1.171.879 3.07.879 4.242 0 1.172-.879 1.172-2.303 0-3.182C13.536 12.219 12.768 12 12 12c-.725 0-1.45-.22-2.003-.659-1.106-.879-1.106-2.303 0-3.182s2.9-.879 4.006 0l.415.33M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})}),Oc=({style:e})=>(0,so.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"size-6",style:e,children:(0,so.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M21 8.25c0-2.485-2.099-4.5-4.688-4.5-1.935 0-3.597 1.126-4.312 2.733-.715-1.607-2.377-2.733-4.313-2.733C5.1 3.75 3 5.765 3 8.25c0 7.22 9 12 9 12s9-4.78 9-12Z"})}),Ac=({style:e})=>(0,so.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"size-6",style:e,children:(0,so.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M16.5 6v.75m0 3v.75m0 3v.75m0 3V18m-9-5.25h5.25M7.5 15h3M3.375 5.25c-.621 0-1.125.504-1.125 1.125v3.026a2.999 2.999 0 0 1 0 5.198v3.026c0 .621.504 1.125 1.125 1.125h17.25c.621 0 1.125-.504 1.125-1.125v-3.026a2.999 2.999 0 0 1 0-5.198V6.375c0-.621-.504-1.125-1.125-1.125H3.375Z"})});function Pc(e){var t=this.__data__=new le(e);this.size=t.size}Pc.prototype.clear=function(){this.__data__=new le,this.size=0},Pc.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Pc.prototype.get=function(e){return this.__data__.get(e)},Pc.prototype.has=function(e){return this.__data__.has(e)},Pc.prototype.set=function(e,t){var n=this.__data__;if(n instanceof le){var a=n.__data__;if(!ue||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new me(a)}return n.set(e,t),this.size=n.size,this};const Nc=Pc;function Tc(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new me;++t<n;)this.add(e[t])}Tc.prototype.add=Tc.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Tc.prototype.has=function(e){return this.__data__.has(e)};const Ic=Tc,Lc=function(e,t){for(var n=-1,a=null==e?0:e.length;++n<a;)if(t(e[n],n,e))return!0;return!1},Dc=function(e,t){return e.has(t)},Rc=function(e,t,n,a,o,r){var i=1&n,s=e.length,c=t.length;if(s!=c&&!(i&&c>s))return!1;var l=r.get(e),u=r.get(t);if(l&&u)return l==t&&u==e;var p=-1,d=!0,m=2&n?new Ic:void 0;for(r.set(e,t),r.set(t,e);++p<s;){var h=e[p],f=t[p];if(a)var g=i?a(f,h,p,t,e,r):a(h,f,p,e,t,r);if(void 0!==g){if(g)continue;d=!1;break}if(m){if(!Lc(t,function(e,t){if(!Dc(m,t)&&(h===e||o(h,e,n,a,r)))return m.push(t)})){d=!1;break}}else if(h!==f&&!o(h,f,n,a,r)){d=!1;break}}return r.delete(e),r.delete(t),d},Mc=z.Uint8Array,$c=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e,a){n[++t]=[a,e]}),n},Bc=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n};var Uc=C?C.prototype:void 0,Fc=Uc?Uc.valueOf:void 0;var Vc=Object.prototype.propertyIsEnumerable,Hc=Object.getOwnPropertySymbols;const Kc=Hc?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var n=-1,a=null==e?0:e.length,o=0,r=[];++n<a;){var i=e[n];t(i,n,e)&&(r[o++]=i)}return r}(Hc(e),function(t){return Vc.call(e,t)}))}:function(){return[]},qc=function(e){return function(e,t,n){var a=t(e);return j(e)?a:function(e,t){for(var n=-1,a=t.length,o=e.length;++n<a;)e[o+n]=t[n];return e}(a,n(e))}(e,st,Kc)};var Gc=Object.prototype.hasOwnProperty;var Qc="[object Arguments]",Wc="[object Array]",Yc="[object Object]",Jc=Object.prototype.hasOwnProperty;const Zc=function(e,t,n,a,o,r){var i=j(e),s=j(t),c=i?Wc:Nt(e),l=s?Wc:Nt(t),u=(c=c==Qc?Yc:c)==Yc,p=(l=l==Qc?Yc:l)==Yc,d=c==l;if(d&&Be(e)){if(!Be(t))return!1;i=!0,u=!1}if(d&&!u)return r||(r=new Nc),i||Je(e)?Rc(e,t,n,a,o,r):function(e,t,n,a,o,r,i){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!r(new Mc(e),new Mc(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return re(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var s=$c;case"[object Set]":var c=1&a;if(s||(s=Bc),e.size!=t.size&&!c)return!1;var l=i.get(e);if(l)return l==t;a|=2,i.set(e,t);var u=Rc(s(e),s(t),a,o,r,i);return i.delete(e),u;case"[object Symbol]":if(Fc)return Fc.call(e)==Fc.call(t)}return!1}(e,t,c,n,a,o,r);if(!(1&n)){var m=u&&Jc.call(e,"__wrapped__"),h=p&&Jc.call(t,"__wrapped__");if(m||h){var f=m?e.value():e,g=h?t.value():t;return r||(r=new Nc),o(f,g,n,a,r)}}return!!d&&(r||(r=new Nc),function(e,t,n,a,o,r){var i=1&n,s=qc(e),c=s.length;if(c!=qc(t).length&&!i)return!1;for(var l=c;l--;){var u=s[l];if(!(i?u in t:Gc.call(t,u)))return!1}var p=r.get(e),d=r.get(t);if(p&&d)return p==t&&d==e;var m=!0;r.set(e,t),r.set(t,e);for(var h=i;++l<c;){var f=e[u=s[l]],g=t[u];if(a)var k=i?a(g,f,u,t,e,r):a(f,g,u,e,t,r);if(!(void 0===k?f===g||o(f,g,n,a,r):k)){m=!1;break}h||(h="constructor"==u)}if(m&&!h){var b=e.constructor,y=t.constructor;b==y||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof y&&y instanceof y||(m=!1)}return r.delete(e),r.delete(t),m}(e,t,n,a,o,r))},Xc=function e(t,n,a,o,r){return t===n||(null==t||null==n||!I(t)&&!I(n)?t!=t&&n!=n:Zc(t,n,a,o,e,r))},el=function(e){return e==e&&!$(e)},tl=function(e,t){return function(n){return null!=n&&n[e]===t&&(void 0!==t||e in Object(n))}},nl=function(e){var t=function(e){for(var t=st(e),n=t.length;n--;){var a=t[n],o=e[a];t[n]=[a,o,el(o)]}return t}(e);return 1==t.length&&t[0][2]?tl(t[0][0],t[0][1]):function(n){return n===e||function(e,t,n,a){var o=n.length,r=o,i=!a;if(null==e)return!r;for(e=Object(e);o--;){var s=n[o];if(i&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++o<r;){var c=(s=n[o])[0],l=e[c],u=s[1];if(i&&s[2]){if(void 0===l&&!(c in e))return!1}else{var p=new Nc;if(a)var d=a(l,u,c,e,t,p);if(!(void 0===d?Xc(u,l,3,a,p):d))return!1}}return!0}(n,e,t)}},al=function(e,t){return null!=e&&t in Object(e)},ol=function(e,t){return null!=e&&function(e,t,n){for(var a=-1,o=(t=Ce(t,e)).length,r=!1;++a<o;){var i=Se(t[a]);if(!(r=null!=e&&n(e,i)))break;e=e[i]}return r||++a!=o?r:!!(o=null==e?0:e.length)&&Ve(o)&&Fe(i,o)&&(j(e)||De(e))}(e,t,al)},rl=function(e){return M(e)?(t=Se(e),function(e){return null==e?void 0:e[t]}):function(e){return function(t){return Ee(t,e)}}(e);var t},il=function(e){return"function"==typeof e?e:null==e?pt:"object"==typeof e?j(e)?(t=e[0],n=e[1],M(t)&&el(n)?tl(Se(t),n):function(e){var a=Oe(e,t);return void 0===a&&a===n?ol(e,t):Xc(n,a,3)}):nl(e):rl(e);var t,n},sl=function(e,t){if(e!==t){var n=void 0!==e,a=null===e,o=e==e,r=L(e),i=void 0!==t,s=null===t,c=t==t,l=L(t);if(!s&&!l&&!r&&e>t||r&&i&&c&&!s&&!l||a&&i&&c||!n&&c||!o)return 1;if(!a&&!r&&!l&&e<t||l&&n&&o&&!a&&!r||s&&n&&o||!i&&o||!c)return-1}return 0},cl=function(e,t,n){t=t.length?we(t,function(e){return j(e)?function(t){return Ee(t,1===e.length?e[0]:e)}:e}):[pt];var a=-1;t=we(t,Ke(il));var o=function(e,t){var n=-1,a=it(e)?Array(e.length):[];return lt(e,function(e,o,r){a[++n]=t(e,o,r)}),a}(e,function(e,n,o){return{criteria:we(t,function(t){return t(e)}),index:++a,value:e}});return function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}(o,function(e,t){return function(e,t,n){for(var a=-1,o=e.criteria,r=t.criteria,i=o.length,s=n.length;++a<i;){var c=sl(o[a],r[a]);if(c)return a>=s?c:c*("desc"==n[a]?-1:1)}return e.index-t.index}(e,t,n)})};if(!vc.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!gs)throw new Error("mobx-react-lite@3 requires mobx at least version 6 to be available");var ll=n(316);function ul(e){e()}function pl(e){return Zi(oc(e,t));var t}var dl,ml,hl=function(){function e(e){var t=this;Object.defineProperty(this,"finalize",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"registrations",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"sweepTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sweep",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=1e4),clearTimeout(t.sweepTimeout),t.sweepTimeout=void 0;var n=Date.now();t.registrations.forEach(function(a,o){n-a.registeredAt>=e&&(t.finalize(a.value),t.registrations.delete(o))}),t.registrations.size>0&&t.scheduleSweep()}}),Object.defineProperty(this,"finalizeAllImmediately",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.sweep(0)}})}return Object.defineProperty(e.prototype,"register",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,n){this.registrations.set(n,{value:t,registeredAt:Date.now()}),this.scheduleSweep()}}),Object.defineProperty(e.prototype,"unregister",{enumerable:!1,configurable:!0,writable:!0,value:function(e){this.registrations.delete(e)}}),Object.defineProperty(e.prototype,"scheduleSweep",{enumerable:!1,configurable:!0,writable:!0,value:function(){void 0===this.sweepTimeout&&(this.sweepTimeout=setTimeout(this.sweep,1e4))}}),e}(),fl=new("undefined"!=typeof FinalizationRegistry?FinalizationRegistry:hl)(function(e){var t;null===(t=e.reaction)||void 0===t||t.dispose(),e.reaction=null}),gl=n(98);function kl(e){e.reaction=new Ei("observer".concat(e.name),function(){var t;e.stateVersion=Symbol(),null===(t=e.onStoreChange)||void 0===t||t.call(e)})}var bl="function"==typeof Symbol&&Symbol.for,yl=null!==(ml=null===(dl=Object.getOwnPropertyDescriptor(function(){},"name"))||void 0===dl?void 0:dl.configurable)&&void 0!==ml&&ml,vl=bl?Symbol.for("react.forward_ref"):"function"==typeof vc.forwardRef&&(0,vc.forwardRef)(function(e){return null}).$$typeof,wl=bl?Symbol.for("react.memo"):"function"==typeof vc.memo&&(0,vc.memo)(function(e){return null}).$$typeof;function jl(e,t){var n;if(wl&&e.$$typeof===wl)throw new Error("[mobx-react-lite] You are trying to use `observer` on a function component wrapped in either another `observer` or `React.memo`. The observer already applies 'React.memo' for you.");var a=null!==(n=null==t?void 0:t.forwardRef)&&void 0!==n&&n,o=e,r=e.displayName||e.name;if(vl&&e.$$typeof===vl&&(a=!0,"function"!=typeof(o=e.render)))throw new Error("[mobx-react-lite] `render` property of ForwardRef was not a function");var i,s,c=function(e,t){return function(e,t){void 0===t&&(t="observed");var n=vc.useRef(null);if(!n.current){var a={reaction:null,onStoreChange:null,stateVersion:Symbol(),name:t,subscribe:function(e){return fl.unregister(a),a.onStoreChange=e,a.reaction||(kl(a),a.stateVersion=Symbol()),function(){var e;a.onStoreChange=null,null===(e=a.reaction)||void 0===e||e.dispose(),a.reaction=null}},getSnapshot:function(){return a.stateVersion}};n.current=a}var o,r,i=n.current;if(i.reaction||(kl(i),fl.register(n,i,i)),vc.useDebugValue(i.reaction,pl),(0,gl.useSyncExternalStore)(i.subscribe,i.getSnapshot,i.getSnapshot),i.reaction.track(function(){try{o=e()}catch(e){r=e}}),r)throw r;return o}(function(){return o(e,t)},r)};return c.displayName=e.displayName,yl&&Object.defineProperty(c,"name",{value:e.name,writable:!0,configurable:!0}),e.contextTypes&&(c.contextTypes=e.contextTypes),a&&(c=(0,vc.forwardRef)(c)),c=(0,vc.memo)(c),i=e,s=c,Object.keys(i).forEach(function(e){_l[e]||Object.defineProperty(s,e,Object.getOwnPropertyDescriptor(i,e))}),c}var _l={$$typeof:!0,render:!0,compare:!0,type:!0,displayName:!0};function xl(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}!function(e){e||(e=ul),Ji({reactionScheduler:e})}(ll.unstable_batchedUpdates),fl.finalizeAllImmediately;var zl=Symbol("patchMixins"),Cl=Symbol("patchedDefinition");function Sl(e,t){for(var n=this,a=arguments.length,o=new Array(a>2?a-2:0),r=2;r<a;r++)o[r-2]=arguments[r];t.locks++;try{var i;return null!=e&&(i=e.apply(this,o)),i}finally{t.locks--,0===t.locks&&t.methods.forEach(function(e){e.apply(n,o)})}}function El(e,t){return function(){for(var n=arguments.length,a=new Array(n),o=0;o<n;o++)a[o]=arguments[o];Sl.call.apply(Sl,[this,e,t].concat(a))}}function Ol(e,t,n){var a=function(e,t){var n=e[zl]=e[zl]||{},a=n[t]=n[t]||{};return a.locks=a.locks||0,a.methods=a.methods||[],a}(e,t);a.methods.indexOf(n)<0&&a.methods.push(n);var o=Object.getOwnPropertyDescriptor(e,t);if(!o||!o[Cl]){var r=e[t],i=Al(e,t,o?o.enumerable:void 0,a,r);Object.defineProperty(e,t,i)}}function Al(e,t,n,a,o){var r,i=El(o,a);return(r={})[Cl]=!0,r.get=function(){return i},r.set=function(o){if(this===e)i=El(o,a);else{var r=Al(this,t,n,a,o);Object.defineProperty(this,t,r)}},r.configurable=!0,r.enumerable=n,r}var Pl=Symbol("ObserverAdministration"),Nl=Symbol("isMobXReactObserver");function Tl(e){var t;return null!=(t=e[Pl])?t:e[Pl]={reaction:null,mounted:!1,reactionInvalidatedBeforeMount:!1,forceUpdate:null,name:Il(e.constructor),state:void 0,props:void 0,context:void 0}}function Il(e){return e.displayName||e.name||"<component>"}function Ll(e){var t=e.bind(this),n=Tl(this);return function(){n.reaction||(n.reaction=function(e){return new Ei(e.name+".render()",function(){if(e.mounted)try{null==e.forceUpdate||e.forceUpdate()}catch(n){var t;null==(t=e.reaction)||t.dispose(),e.reaction=null}else e.reactionInvalidatedBeforeMount=!0})}(n),n.mounted||fl.register(this,n,this));var e=void 0,a=void 0;if(n.reaction.track(function(){try{a=function(e,t){var n=Xr(e);try{return t()}finally{ei(n)}}(!1,t)}catch(t){e=t}}),e)throw e;return a}}function Dl(e,t){return this.state!==t||!function(e,t){if(xl(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),a=Object.keys(t);if(n.length!==a.length)return!1;for(var o=0;o<n.length;o++)if(!Object.hasOwnProperty.call(t,n[o])||!xl(e[n[o]],t[n[o]]))return!1;return!0}(this.props,e)}function Rl(e,t){if(t&&"class"!==t.kind)throw new Error("The @observer decorator can be used on classes only");return!0===e.isMobxInjector&&console.warn("Mobx observer: You are trying to use `observer` on a component that already has `inject`. Please apply `observer` before applying `inject`"),Object.prototype.isPrototypeOf.call(vc.Component,e)||Object.prototype.isPrototypeOf.call(vc.PureComponent,e)?function(e){var t=e.prototype;if(e[Nl]){var n=Il(e);throw new Error("The provided component class ("+n+") has already been declared as an observer component.")}if(e[Nl]=!0,t.componentWillReact)throw new Error("The componentWillReact life-cycle event is no longer supported");if(e.__proto__!==vc.PureComponent)if(t.shouldComponentUpdate){if(t.shouldComponentUpdate!==Dl)throw new Error("It is not allowed to use shouldComponentUpdate in observer based components.")}else t.shouldComponentUpdate=Dl;var a=t.render;if("function"!=typeof a){var o=Il(e);throw new Error("[mobx-react] class component ("+o+") is missing `render` method.\n`observer` requires `render` being a function defined on prototype.\n`render = () => {}` or `render = function() {}` is not supported.")}t.render=function(){return Object.defineProperty(this,"render",{configurable:!1,writable:!1,value:Ll.call(this,a)}),this.render()};var r=t.componentDidMount;return t.componentDidMount=function(){var e=this,t=Tl(this);return t.mounted=!0,fl.unregister(this),t.forceUpdate=function(){return e.forceUpdate()},t.reaction&&!t.reactionInvalidatedBeforeMount||t.forceUpdate(),null==r?void 0:r.apply(this,arguments)},Ol(t,"componentWillUnmount",function(){var e,t=Tl(this);null==(e=t.reaction)||e.dispose(),t.reaction=null,t.forceUpdate=null,t.mounted=!1,t.reactionInvalidatedBeforeMount=!1}),e}(e):jl(e)}if(vc.version.split(".")[0],!vc.Component)throw new Error("mobx-react requires React to be available");if(!Fr)throw new Error("mobx-react requires mobx to be available");const Ml=({icon:e,text:t,check:n})=>(0,so.jsxs)("div",{className:"popover__bullet-point "+(n?"":"popover__bullet-text-disabled"),children:[e,(0,so.jsx)("span",{className:"popover__bullet-text",children:t}),n&&(0,so.jsx)("span",{className:"popover__bullet-check",children:"✓"})]}),$l=Rl(({item:e})=>{const{displayPrices:t}=yc,n=!!e.discount||!!t?.thereIsDiscount,a=!!e.coupon,o=e.score&&e.score>50?Math.ceil((e.score||0)/10):0,r=[{icon:(0,so.jsx)(Ac,{style:{height:16,width:16}}),text:gn("secondary_cta.popover.coupon.text_checked"),check:a,hide:!a},{icon:(0,so.jsx)(Ec,{style:{height:16,width:16}}),text:n?gn("secondary_cta.popover.discount.text_checked",{discount:e.discount}):gn("secondary_cta.popover.discount.text_unchecked"),check:n},{icon:(0,so.jsx)(zc,{style:{height:16,width:16}}),text:o?gn("secondary_cta.popover.feedback.text_checked",{positiveFeedback:o}):gn("secondary_cta.popover.feedback.text_unchecked"),check:!!o}];return!function(e){try{const t=new URL(e).hostname.toLowerCase();return"getdirecto.com"===t||t.endsWith(".getdirecto.com")}catch{return!1}}(e.directo_url)&&r.unshift({icon:(0,so.jsx)(Oc,{style:{height:16,width:16}}),text:gn("secondary_cta.popover.support_hotel"),check:!0}),(0,so.jsx)("div",{className:"popover__bullet-points",children:(i=r,s="check",c="desc",null==i?[]:(j(s)||(s=null==s?[]:[s]),j(c=l?void 0:c)||(c=null==c?[]:[c]),cl(i,s,c))).map((e,t)=>!e.hide&&(0,so.jsx)(Ml,{...e},t))});var i,s,c,l}),Bl=({domainName:e,item:t})=>(0,so.jsxs)("div",{className:"popover__content",children:[(0,so.jsxs)("div",{className:"popover__header",children:[(0,so.jsxs)("div",{className:"popover__header-text",children:[gn("secondary_cta.popover.header.text")," ",(0,so.jsx)(xc,{className:"popover__directo-logo",style:{width:"20px",height:"20px",marginLeft:"2px",visibility:"visible",opacity:1}}),"irecto"]}),(0,so.jsx)("div",{className:"popover__domain",children:(0,so.jsx)("span",{className:"popover__domain-text",children:e})})]}),(0,so.jsx)($l,{item:t})]}),Ul=Date.now(),Fl=function(){let e="";let t=0;for(;t<14;)e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random())),t+=1;return e}();async function Vl(){const{hostname:e}=new URL(window.location.href);return{engagement_time_msec:""+(Date.now()-Ul),session_id:Fl,user_id_dimension:await da(),platform:(Tn(window.location.href)||e).toLowerCase(),page_location:window.location.href,page_title:window.document.title,page_referrer:window.document.referrer,language:window.navigator.language,screen_resolution:`${window.screen.availHeight}x${window.screen.availWidth}`}}async function Hl(){return{user_id:await da(),client_id:"GTM-PQTC3VG"}}async function Kl(e){return{events:e,...await Hl()}}async function ql(e,t={}){return{name:e,params:{...await Vl(),...t}}}function Gl(e){if(e.status>=200&&e.status<300)return e;throw new Error(e.statusText)}function Ql(e,t){const n=function(e){const t=new URL(`https://www.google-analytics.com${e}`);return Object.entries({api_secret:"GE9ObhGLSdmUus1uyoSEaw",measurement_id:"G-KXK74ZXW09"}).forEach(([e,n])=>{if(Array.isArray(n)&&n.length)return n.forEach(n=>t.searchParams.append(e,n));t.searchParams.append(e,n)}),t}(e);return fetch(n.toString(),{body:JSON.stringify(t),method:"POST"}).then(Gl).catch(console.error)}const Wl=(e="/mp/collect")=>({async pageView(t,n={}){const a=await ql("page_view",{page_location:t,...n}),o=await Kl([a]);return Ql(e,o)},async event(t,n={}){const a=await ql(t,n),o=await Kl([a]);return Ql(e,o)},async exception(t={}){const n=await ql("exception",t),a=await Kl([n]);return Ql(e,a)}}),Yl=Wl(),Jl=Rl(({item:e,cta:t})=>{const{displayPrices:n,areDisplayPricesLoading:a}=yc,o=!a&&n&&!!n.displayedDirectoPrice&&!!n.displayedOtaPrice&&function(e){try{return!!(e.displayedDirectoPrice&&e.displayedOtaPrice&&e.thereIsDiscount)&&(t=e.displayedOtaPrice,n=e.displayedDirectoPrice,Math.round((t-n)/((t+n)/2)*100)>=2)}catch(e){return!1}var t,n}(n),r=o?gn("secondary_cta.save",{price:bc(n.displayedPriceDifference,n.displayedCurrency)}):function(e){const t=e.directo_url?mn(e.directo_url):"";return e.discount?"reservation.barcelo.com"===t?gn("secondary_cta.book_with_discount_barcelo"):gn("secondary_cta.book_with_discount",{discount:e.discount}):gn("secondary_cta.compare_price")}(e),i=o||e.discount;return(0,so.jsxs)("button",{onClick:n=>{const a=to(e.directo_url);Yl.event("click_out_ext_secondary",{outbound_url:a}),Ju.navigateToDirectLink(a,t,{parametrised:e.stay_parametrised,sourceId:e.source_id,coupon:e.coupon,verified:e.verified,discount:e.discount}),n.stopPropagation()},className:i?"directo-cta-button-shine":"directo-cta-button-dark",disabled:!e.directo_url,children:[i?(0,so.jsx)(_c,{}):(0,so.jsx)(jc,{}),r,(0,so.jsx)(Cc,{})]})}),Zl=async(e,t)=>{const n=e.directo_url?mn(e.directo_url):"",a=document.createElement("div"),o=a.attachShadow({mode:"closed"}),r=document.createElement("style");r.innerHTML="\n .secondary-button {\n position: relative;\n width: 100%;\n border: none;\n outline: none;\n color: white;\n cursor: pointer;\n border-radius: 5px;\n font-size: 14px;\n font-weight: bold;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n }\n .secondary-button:before{\n position: absolute;\n content: '';\n top: -2px;\n left: -2px;\n height: calc(100% + 4px);\n width: calc(100% + 4px);\n border-radius: 5px;\n z-index: -1;\n opacity: 1;\n filter: blur(5px);\n background: linear-gradient(45deg, #ff0000, #ff7300, #fffb00, #48ff00, #00ffd5, #002bff, #7a00ff, #ff00c8, #ff0000);\n background-size: 400%;\n transition: opacity 1s ease-in-out;\n animation: animate 20s linear infinite;\n z-index: 1;\n }\n .secondary-button:hover:before{\n opacity: 1;\n }\n .secondary-button:hover:active{\n background: none;\n }\n .secondary-button:hover:active:before{\n filter: blur(2px);\n }\n @keyframes animate {\n 0% { background-position: 0 0; }\n 50% { background-position: 400% 0; }\n 100% { background-position: 0 0; }\n }\n .secondary-button-span {\n z-index: 2;\n position: relative;\n display: flex;\n align-items: center;\n gap: 6px;\n /*background: radial-gradient(85.26% 304.19% at 109.77% -9.38%, #1E40AF 0%, #172554 100%);*/\n background: rgba(0,0,0,.5);\n padding: 8px 12px;\n width: 100%;\n border-radius: 4px;\n justify-content: center;\n transition: background .2s ease-in-out;\n white-space: nowrap;\n }\n .secondary-button-span:hover {\n background: rgba(0, 0, 0, .8);\n }\n .secondary-button-container {\n padding: 4px;\n background: rgba(0,0,0,.5);\n border-radius: 8px;\n width: 100%;\n }\n\n .directo-cta-button-shine:hover {\n background-color: #edb602;\n}\n .directo-cta-button-shine {\n white-space: nowrap;\n font-weight: 600;\n width: 100%;\n min-height: 36px;\n cursor: pointer;\n border-width: 1px;\n border-color: rgb(0 0 0 / 0.1);\n border-radius: 4px;\n padding: 4px 12px;\n background-color: #FDC307;\n display: flex;\n gap: 0.5rem;\n justify-content: space-between;\n align-items: center;\n color: #000141;\n position: relative;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n }\n\n .directo-cta-button-shine {\n overflow: hidden;\n}\n\n.directo-cta-button-dark {\n white-space: nowrap;\n font-weight: 600;\n width: 100%;\n min-height: 36px;\n cursor: pointer;\n border-width: 1px;\n border-color: rgb(0 0 0 / 0.1);\n border-radius: 4px;\n padding: 4px 12px;\n background-color: #000141;\n display: flex;\n gap: 0.5rem;\n justify-content: space-between;\n align-items: center;\n color: #ffffff;\n position: relative;\n}\n\n.directo-cta-button-shine::before {\n background: linear-gradient(to right, rgba(216, 182, 182, 0) 0%, #ffffffbe);\n content: '';\n display: block;\n height: 100%;\n left: -75%;\n position: absolute;\n top: 0;\n transform: skewX(-25deg);\n width: 50%;\n z-index: 2;\n -webkit-animation: shine 2s ease-in-out infinite;\n animation: shine 2s ease-in-out infinite;\n}\n\n@keyframes shine {\n 100% {\n left: 125%;\n }\n}\n\n.popover {\n position: relative;\n z-index: auto;\n}\n.popover__content {\n position: absolute;\n min-width: 130px;\n // width: 362px;\n width: 300px;\n text-align: left;\n display: flex;\n padding: 1rem; /* p-4 */\n visibility: hidden;\n overflow: hidden;\n opacity: 0;\n background: white;\n transition: all 0.25s cubic-bezier(0, 0, 0.2, 1);\n color: #0f172a;\n border-radius: 0.5rem; /* Tailwind rounded-lg */\n font-weight: 500;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),\n 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n z-index: 999999999;\n flex-direction: column;\n gap: 0.5rem; /* gap-2 */\n align-items: flex-start;\n background-color: #ffffff;\n\n}\n\n.popover__trigger {\n cursor: pointer;\n z-index: 5;\n}\n\n.popover[data-direction=top] .popover__trigger:hover ~ .popover__content {\n transform: translate3d(-50%, 0, 0);\n visibility: visible;\n opacity: 1;\n}\n.popover[data-direction=top] .popover__content {\n bottom: calc(100% + .5rem);\n left: 50%;\n transform: translate3d(-50%, -15px, 0);\n}\n.popover[data-direction=top] .popover__content:after {\n bottom: -0.5em;\n left: 50%;\n transform: translate3d(-50%, 0, 0);\n border-width: 0 0.5em 0.5em 0.5em;\n border-color: transparent transparent white transparent;\n filter: drop-shadow(1px -1px 1px #bcbcbc);\n}\n\n\n/* Title */\n.popover__title {\n font-size: 1.125rem; /* text-lg */\n line-height: 1.75rem; /* leading-7 */\n color: #000000;\n margin: 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.popover__title-text {\n font-weight: bold;\n}\n\n/* Domain / subtitle */\n.popover__domain {\n font-size: 0.875rem; /* text-sm */\n line-height: 1.25rem; /* leading-5 */\n color: #4B5563; /* text-gray-600 */\n}\n\n.popover__domain-text {\n font-weight: normal;\n}\n\n/* Bullet points */\n.popover__bullet-points {\n display: flex;\n flex-direction: column;\n gap: 0.5rem; /* gap-2 */\n align-items: flex-start;\n width: 100%;\n position: relative;\n}\n\n.popover__bullet-point {\n display: flex;\n align-items: center;\n gap: 0.5rem; /* gap-2 */\n width: 100%;\n position: relative;\n color: #000141;\n}\n\n.popover__bullet-text-disabled {\n --tw-text-opacity: 1;\n color: rgb(100 116 139 / var(--tw-text-opacity));\n}\n\n.popover__bullet-check {\n color: limegreen;\n font-size: 18px;\n font-weight: 700;\n}\n\n.popover__header {\n width:100%;\n display: flex;\n flex-direction: column;\n}\n.popover__header-text {\n align-items: center;\n display: inline;\n font-size: 20px;\n font-weight: bold;\n color: #000141;\n}\n ",o.appendChild(r);const i=document.createElement("div");return o.appendChild(i),(0,co.H)(i).render((0,so.jsxs)("div",{className:"popover","data-direction":"top",children:[(0,so.jsx)("div",{className:"popover__trigger",children:(0,so.jsx)(Jl,{item:e,cta:t})}),(0,so.jsx)(Bl,{domainName:n,item:e})]})),Object.assign(a,{$reactRoot:i})};var Xl=n(395);const eu=({offer:e,listingPrice:t,bestOffer:n,thereIsDiscount:a})=>{const o=e.rate.base+(e.rate.taxes||0)+(e.rate.hotelFees||0),r=e.currency,i=fa(t.totalPrice)-o;return(0,so.jsxs)("div",{className:"popover__content",children:[(0,so.jsxs)("div",{className:"popover__header",children:[(0,so.jsxs)("div",{className:"popover__header-text",children:[gn(n&&a?"alternative_offers.best_offer":"alternative_offers.popover.header.text")," ",(0,so.jsx)("img",{className:"popover__directo-logo",style:{marginLeft:"6px",visibility:"visible",opacity:1,transform:"scale(1.2) translateY(4px)"},src:e.provider.logoUrl})]}),(0,so.jsx)("div",{className:"popover__domain",children:(0,so.jsx)("span",{className:"popover__domain-text",children:e.provider.name})})]}),(0,so.jsx)("span",{style:{color:a?"green":"auto",fontSize:a?"20px":"16px"},children:a?gn("alternative_offers.save",{price:bc(Math.round(i),r)}):gn("alternative_offers.no_discount",{provider:e.provider.name})})]})},tu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAtCAYAAADV2ImkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAwaSURBVHgB7Vl5jFXVGf+du7335s3K7AgCioqQWhWVtpg4iq0akVBbjEUtRdtKamrb1MZKY2KUWv9oTVWUaCqgSBFwSbS1LlSpaCUhpiLrFBiwDsww896bmbfe/fT77r0PBpkFXP5o6pmc3Pvucs7v/L7ft5w7wJftC21Cwf9Y0/A5N/m39yb6W7YsRKFYsKZfuLriulkH8Tk2gc/Q5PMvXSg/3L0EBdMRp076jXnJhdnYaxvfREfnRJgW4Kp7xFUXz3ATxjnq5u13oncgJqrGLBIP/2wPPl0Tn4VhIdv3rMPh1ERAgdzXcWUs29+Lw70tUDwgTlxY7hlyR/su1fWakRoASiXI/tyfpJRtQgiJk2/ypBiW27dX4oNd30B/wbSnThqnP/fyM/A8gVgMULVoOBl2Sd2n34QdPnXXAWzqA7b02mbO1CqScfejLk377a0bTgK8OCnA3tInnhS7P1oYAGuq85FJqeC5FPZdJRwuwCuPHgPAhNjnczradNSTPhRNoCcLYRgPiHVLFp8ohhMGLB98MCG3bCugZoyATmwqKvWIGDm4DwLrl18WR5/jax6d2LSSfBFeuj+lbVrdJEIoozE9eliTMhhDuf2xx3ykMllIN5zVi0zME7tRd+ie7UbX6ei64TU36p4XLqSM3HdgF/q6L4VQEZhoVAJH1bC45557xOzW1jHTEk3XxnZsfQCZTF34KnWNmE6QfqurANMEsiVyNAIr/YhdEcpFi+Ti+iG7PC1JRDoeqcRIuadN/Gl2xnlvtlw7M00E+SNoelQNK4dXrpzUsCe9Ab3picLK0UR2eEfXgbMmAQu/DzTUEzQC8K8PgRXPkmMVQibZgKc0AYsWQFZVw7zvD4j3ZELA1INHhE6PJWnA2L72OmXG2Y8u7sNRMR0HeKSwxosRta++M1/05ydCJ6sZ1FUlZK21Abj1FjJmDOmVa1Bx9hTELzgX/pwBCPotfHpGF/CvmgXUNyL19Bq477yL+rHjaa0xBKGQDeW7EG4B0vRPb0r736ZLK6K5h2RZGQWwYn2wvRvpbjJ5PgxNjhPq8YLzAWKt65FlOPTA/dh1y80w+/rhTJtGlmeze/DPmABx0XTkOw8hu3YdsSlg9Q2Q/G2SgwNJWvdKBdh9PSh270X/wfZunpNliKH1LJXhmG1ra+N76n1m98uO7XwcarDsYDRZU0MgVberG1WxClQrGuz+fngxA6ZtwW+ohvjxApSyBWSWPYFYoQSFxmCwTqEI1yrBJbB8dGi8kuJsPX37O29PnjxZ2bhx47BEDnWDTSFyuRwDV5VvzTGUtkuKwaMcT70QtGSmSIT65NNgGHEkTxmLWGsLrM6DyB06CGf2FbDiFci8+jr8tzdBIz2zK/kkAddksBTS7BJ1k+RMeh475WOaT9+7d69GgIfzrSCcHHdx3rx5yoYNG9RXHn587K3VzX9V2jvOBrERZjAEDlVq3w3/sktR8fWLYEw9C5Xzr4efTCKz6s+wcllU/eJ25A91YWDJ/YhR6FM469F7LAtBppEsGVq8T+zyMaYaZ/7q4jln9JxW/xdbUVyyMHbu3Dmk+Y+lV9J6RbAQfaBtzneqLLEKMSVIEoGA2PODMsFCpqURFb/8OWLjx8PL5ZBa/wIyzz6L8WueAerqkXloKfDKq1CMGJRkJfRCAYYMS8QgURBw3w9DHfFPkU5Bp+fPmr7z7X/SIw5h8cQnAtlxUUJETzQ3Nyv5dF8uqRBSUSFghNmtnI9U1UBs915kbvoB/HiMTOvShBI1ty2CaGnBwN//gYHXX0Pjr+9A9RXfpEyswuvPwlz7PPw1a6HJMCn5nku4iXFyZBrD74nJ0rhx40RnZ2cZyzHRYkhxT506VTl8+LCYsm3Tu3vSvUvNfC4YnJ0syLxkAIWcLJGsQW1FHWqUODleEuqESai5YT6sdB/SD/8RFTcvQMXll6GfNNx+/+8opzhQbroBhfFj4RBQj+Tg0tGmY94q4oDqLrlu97Z/E9ggQkVZFiMB5swWaKehoUGQJrXzOnc+6NZUbZFBamDAYcDnVxXdoCLNACvIIwar7r6TnKmE/tWrIShiJGdfjVIqjb133Qlz3VrsX7kcNqVj67zzKaM7cNgBGThpOKOqL13Z2bE8F2JSpk+ffsTaw0pCRgJm4KlUKjje+72bJlQbTV/x9+8jk4egy44X0ECJhBeg33wjjDPPQuatjXDXPwdjTB0EOWHx40OIUz2RoPKz2NUVJFe3MgnTtaEzCVEl19Q6eeblKmrfOnjALJDWS6XSkLF4SIa51dXVBQ8vyhtfox1EnN0i0BxNwLrzHCc40i94zQ2Iz50LO5tHbumjiHMZSU4oKXQZLc1wyAEtWmzlOV9lO6O048Mg9jqk20AaxLTX1VH/IxmbwWAZB1uZsAQcDgu4XHRQ8EZfX1/AZfHAXsfJZeBSvHQp6LuORedWED+9YEIbxl13kGmpPH5qJeLd3QhCTLGI9LJlUJMVmPjUCox7+ilMuPEGlDo64G5+j97zYNG7DNoi8MVSTg4U+0oRq4IwHCHvGIw4vin0MAdwTviJec3jmh6qablXg5yrV1ZBcE1xpAyWKE45He7130XhwEewn1yOBGc0cGHmIaeSycnJai6bBT2eQH7XDvQ8shQVlFw0hHHZp4XarufkdfWFa1Ndiy3LYoq506aQc1NQvY0ImK+xthlwBfVkDDHj6pam6sebxr+oqtopLIMgatAfs9RfLATllU5hT1XCUpx17VJyKJBFssSiSxc0mlinzsFRRIU+KXXrbZmeH+4vFvNKPF4yTZPBlsjp7Pfff7+8wRpaEuUFsIci5DF4wYKlbc6m3YQeb2YkHunOJQ07XMTTUwmKFnFyKoXf9kOdEzGU3WjVVBDWqjp1CoOUdNSgLiLde36Q4VTHb2ovFl3K7yxJv7q6mgH6BLZc6WMkwCxyVFVVlTczfgTarU8kSm4u77oWadkOwfLR5ULICwGGQKgop1rDdcOQ5ZM0OBL4XLD7IVCWC4c0h57zpJePMdFCeBQZ/Gw262OErdKQ9XBjY2OwOooUPjkf74ncbel0cptR9+hYXf+JKb0iwfSTRqxRkE4ZlMes0p8vQ7kEsxJITzJAAsrRhGXCzum7HboUtUJ6Slpoy6VhGHaoXTciSA4HeriqKCgtEeo4Ti1J2kog1DRfVxc0n5JcnKh6Q1EU4RBgm5nlVChEBDyUhsPscs0QmEvClMK53S217ctk/EEAi9zJsiWqEvncwdEPBMe046o1GVZUQWghswoyER+V8iJ0XVcJiLa1kJPzE5XnKq7XyoDz8A71eM7WuO+fytz45HAlMnlKyA2m4ySE71dxKOuB//KKTGozjeOrquppmkZr9cxkMmnl83mLIpSTyWTKLI/O8NFkF0YLkofR29tbjhjMcjzq6tW1DfG5mnGJpwv397mBTZ2mKVc3jr271rYvJ+XiP6qyalGm94mLkkljtqJdQNvU6qdLhTcOmPwdK2DXjsViJbJSkRZQInJMcniHo0OUdeWogD9xj1kth7hYBDgRnRvRvfL2XCG22BpYWFd/aj+F6Bf70ym6Vp7Up3s+M+tQY9kSIO6kNpMTBq0HFtXi3rRp0yRnuaFYHmkTOugDQsCGUllZKchswNHooSPSdAQ8iDqrcgP7GTiDpWN5DBmN4xFYx7ZtZpm34OaYMWMskgHfkyOBLbM4NNpQGnIQGK22tjZGetMIRJxCkBEB1gYDJgYFERiMS+e013QGh0gG5ZAT28SqQ05mkZOxgwVOxuyuX79+xLB2Ip+qAgckbamkLS0CqZOTaFSoBLIgHQYOSWlVIfYCiRCDMnrXp/se3WOLeIlEgirQkh2xW44G5Ygw+KPXkO2EPlWxA1xzzTUe7bN4Aqu1tbVEYFl3HDvzZPoCeTxrJU9Ag873iMk8AcwT2OA3SapAC+J3OHRZtFFwaMxAJlwzjAb2ZFvZCYNijMJP4IQURSrpSN+qUFtTU8Ofseqj3hAdx1Dn69XUk7RYjjb8rk4SUHGSH9U/zRf4wd8tEG3JVVqApAqvHDHK40ran0na8ki+TwvyOe1zJo20GjyDL7pFRXWZ8TLrWrmTqY84JC1Mi5hUBzH6qf9V8Zn+xzF4nEEZ8pNNDnP+Zfuy/V+2/wLQlMJlaj4ozgAAAABJRU5ErkJggg==",nu=({offer:e,bestOffer:t,ctaPrefix:n})=>{const a=e.rate.base+(e.rate.taxes||0)+(e.rate.hotelFees||0),o=e.currency,r=`${n}_${e.provider.name.replace(".","_").toUpperCase()}`;return(0,so.jsxs)("button",{onClick:async()=>{w.openOutclickTab({cta:r,sourceUrl:window.location.href,targetUrl:e.url,sourceId:e.source_id??qu(),stayParams:await Wu(window.location.href)})},className:"directo-cta-button-light "+(t?"directo-cta-button-light-shadow-pulse":""),children:[t&&(0,so.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,so.jsx)("img",{src:tu,alt:"Directo",style:{width:"40px",height:"40px"}})}),(0,so.jsx)("img",{src:e.provider.logoUrl,style:{maxWidth:"5rem",maxHeight:"1.5rem"}}),(0,so.jsx)("span",{style:{fontSize:"20px"},children:bc(Math.floor(a),o)}),(0,so.jsx)(Cc,{})]})};class au{renderedLabels={};renderedSecondaryCTAs={};renderedAlternativeOffers={};debouncedRenderMLs=null;platform=null;displayName=null}class ou extends au{listingsInPage=new Set;rendererConfig;constructor(e){super(),this.rendererConfig=e}shouldActivate(e){throw new Error("Method not implemented.")}getLinkId(){if(!this.platform)throw new Error("Platform not set");return`${this.platform.substring(0,3)}${this.getItemId()}`}async getLoS(){const e=await this.buildQueryParams("checkin"),t=await this.buildQueryParams("checkout");return e&&t?function(e,t){const n=new Date(e),a=new Date(t);return Math.ceil((a.getTime()-n.getTime())/864e5)||1}(e,t):1}async getPrice(e){return await this.getLoS()?this.isDetailView()?await this.getDetailPrice():await this.getPriceFromList(e):{priceString:"",currency:"",priceStringIsNightly:!1,nightlyPrice:0,totalPrice:0}}isDetailView(){return!!this.getItemId()}async getDestinationInUrl(){return null}async getListingName(e){try{const t=mn(e.directo_url);return this.isDetailView()?(await this.getDetailsInfo()).title||t:await this.getListingNameFromList(e)||t}catch(t){return e.directo_url}}getHotelIdInDetail(){return null}cleanRenderedLabel(e){this.renderedLabels[e]&&(this.renderedLabels[e].remove(),delete this.renderedLabels[e])}filterNewListingsInPage(e){const t=[];return e.forEach(e=>{this.listingsInPage.has(e)||t.push(e),this.listingsInPage.add(e)}),this.listingsInPage.forEach(t=>{e.find(e=>e===t)||this.listingsInPage.delete(t)}),t}cleanAllRenderedLabels(){Object.keys(this.renderedLabels).forEach(e=>{this.cleanRenderedLabel(e)}),Object.keys(this.renderedSecondaryCTAs).forEach(e=>{this.cleanRenderedSecondaryCTAs(e)}),Object.keys(this.renderedAlternativeOffers).forEach(e=>{this.cleanRenderedAlternativeOffer(e)}),this.listingsInPage.clear()}cleanRenderedSecondaryCTAs(e){this.renderedSecondaryCTAs[e]&&(this.renderedSecondaryCTAs[e].forEach(e=>e&&e.remove&&e.remove()),delete this.renderedSecondaryCTAs[e])}cleanRenderedAlternativeOffer(e){this.renderedAlternativeOffers[e]&&(this.renderedAlternativeOffers[e].remove(),delete this.renderedAlternativeOffers[e])}setRenderedSecondaryCTA(e,t){this.renderedSecondaryCTAs[e]||(this.renderedSecondaryCTAs[e]=new Set),this.renderedSecondaryCTAs[e].add(t)}setRenderedAlternativeOffer(e,t){this.renderedAlternativeOffers[e]=t}async insertSecondaryCTA(e,t,n,a,o=document.body){if(!1===this.rendererConfig.renderSecondaryCTAs)return null;const r=a||e.source_id,i=this.renderedSecondaryCTAs[r];if(i&&[...i].every(e=>e.isConnected))return null;const s=await Dt(Ut,e=>!e,10)(t,o);if(!s)return null;this.cleanRenderedSecondaryCTAs(r);const c=await Zl(e,n);return s.appendChild(c),this.setRenderedSecondaryCTA(r,c),c}async insertAlternativeOffers(e,t){if(!1===this.rendererConfig.renderAlternativeOffers)return null;if(0===e.length)return null;const{id:n,selector:a,container:o=document.body,vertical:r=!1,styles:i,ctaPrefix:s}=t,c=e[0].source_id,l=`${c}${n?`-${n}`:""}`,u=this.renderedAlternativeOffers[l];if(u&&u.isConnected)return null;let p=null;if(p=a?await Dt(Ut,e=>!e,10)(a,o):o,!p)return null;const d=await(async(e,t,n)=>{const a=document.createElement("div"),o=a.attachShadow({mode:"closed"}),r=document.createElement("style");r.innerHTML="\n.offers-container {\n display: flex;\n gap: 10px;\n}\n.offers-container.offers-container-vertical {\n flex-direction: column;\n}\n.offers-container.offers-container-horizontal {\n flex-direction: row-reverse;\n}\n.secondary-button {\n position: relative;\n width: 100%;\n border: none;\n outline: none;\n color: white;\n cursor: pointer;\n border-radius: 5px;\n font-size: 14px;\n font-weight: bold;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n}\n.secondary-button:before{\n position: absolute;\n content: '';\n top: -2px;\n left: -2px;\n height: calc(100% + 4px);\n width: calc(100% + 4px);\n border-radius: 5px;\n z-index: -1;\n opacity: 1;\n filter: blur(5px);\n background: linear-gradient(45deg, #ff0000, #ff7300, #fffb00, #48ff00, #00ffd5, #002bff, #7a00ff, #ff00c8, #ff0000);\n background-size: 400%;\n transition: opacity 1s ease-in-out;\n animation: animate 20s linear infinite;\n z-index: 1;\n}\n.secondary-button:hover:before{\n opacity: 1;\n}\n.secondary-button:hover:active{\n background: none;\n}\n.secondary-button:hover:active:before{\n filter: blur(2px);\n}\n@keyframes animate {\n 0% { background-position: 0 0; }\n 50% { background-position: 400% 0; }\n 100% { background-position: 0 0; }\n}\n.secondary-button-span {\n z-index: 2;\n position: relative;\n display: flex;\n align-items: center;\n gap: 6px;\n /*background: radial-gradient(85.26% 304.19% at 109.77% -9.38%, #1E40AF 0%, #172554 100%);*/\n background: rgba(0,0,0,.5);\n padding: 8px 12px;\n width: 100%;\n border-radius: 4px;\n justify-content: center;\n transition: background .2s ease-in-out;\n white-space: nowrap;\n}\n.secondary-button-span:hover {\n background: rgba(0, 0, 0, .8);\n}\n.secondary-button-container {\n padding: 4px;\n background: rgba(0,0,0,.5);\n border-radius: 8px;\n width: 100%;\n}\n\n.directo-cta-button-shine:hover {\n background-color: #edb602;\n}\n.directo-cta-button-shine {\n white-space: nowrap;\n font-weight: 600;\n width: 100%;\n min-height: 36px;\n cursor: pointer;\n border-width: 1px;\n border-color: rgb(0 0 0 / 0.1);\n border-radius: 4px;\n padding: 4px 12px;\n background-color: #FDC307;\n display: flex;\n gap: 0.5rem;\n justify-content: space-between;\n align-items: center;\n color: #000141;\n position: relative;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.directo-cta-button-shine {\n overflow: hidden;\n}\n\n.directo-cta-button-light {\n box-shadow: 0 0 5px 1px rgba(253, 195, 7, 0.5);\n white-space: nowrap;\n font-weight: 600;\n width: 100%;\n min-height: 36px;\n cursor: pointer;\n border-width: 1px;\n border-color: rgb(0 0 0 / 0.1);\n border-radius: 4px;\n padding: 4px 12px;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n display: flex;\n gap: 0.5rem;\n justify-content: flex-end;\n align-items: center;\n color: #000141;\n position: relative;\n}\n\n.directo-cta-button-light img {\n margin-right: auto;\n}\n\n.directo-cta-button-light-shadow-pulse {\n animation: pulse-shadow 2s infinite ease-in-out;\n background-color: #edb602;\n}\n\n@keyframes pulse-shadow {\n 0% {\n box-shadow: 0 0 10px 2px rgba(253, 195, 7, 0.5);\n }\n 50% {\n box-shadow: 0 0 20px 10px rgba(253, 195, 7, 0.7);\n }\n 100% {\n box-shadow: 0 0 10px 2px rgba(253, 195, 7, 0.5);\n }\n}\n\n.directo-cta-button-shine::before {\n background: linear-gradient(to right, rgba(216, 182, 182, 0) 0%, #ffffffbe);\n content: '';\n display: block;\n height: 100%;\n left: -75%;\n position: absolute;\n top: 0;\n transform: skewX(-25deg);\n width: 50%;\n z-index: 2;\n -webkit-animation: shine 2s ease-in-out infinite;\n animation: shine 2s ease-in-out infinite;\n}\n\n@keyframes shine {\n 100% {\n left: 125%;\n }\n}\n\n.popover {\n position: relative;\n z-index: auto;\n}\n.popover__content {\n position: absolute;\n min-width: 130px;\n // width: 362px;\n width: 300px;\n text-align: left;\n display: flex;\n padding: 1rem; /* p-4 */\n visibility: hidden;\n overflow: hidden;\n opacity: 0;\n background: white;\n transition: all 0.25s cubic-bezier(0, 0, 0.2, 1);\n color: #0f172a;\n border-radius: 0.5rem; /* Tailwind rounded-lg */\n font-weight: 500;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),\n 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n z-index: 999999999;\n flex-direction: column;\n gap: 0.5rem; /* gap-2 */\n align-items: flex-start;\n background-color: #ffffff;\n\n}\n\n.popover__trigger {\n cursor: pointer;\n z-index: 5;\n}\n\n/*\n.popover[data-direction=top] .popover__trigger:hover ~ .popover__content {\n transform: translate3d(-50%, 0, 0);\n visibility: visible;\n opacity: 1;\n}\n.popover[data-direction=top] .popover__content {\n bottom: calc(100% + .5rem);\n left: 50%;\n transform: translate3d(-50%, -15px, 0);\n}\n.popover[data-direction=top] .popover__content:after {\n bottom: -0.5em;\n left: 50%;\n transform: translate3d(-50%, 0, 0);\n border-width: 0 0.5em 0.5em 0.5em;\n border-color: transparent transparent white transparent;\n filter: drop-shadow(1px -1px 1px #bcbcbc);\n}\n*/\n\n.popover[data-direction=top] .popover__trigger:hover {\n box-shadow: 0 0 10px 1px rgba(253, 195, 7, 0.7);\n border-radius: 5px;\n}\n\n/* Title */\n.popover__title {\n font-size: 1.125rem; /* text-lg */\n line-height: 1.75rem; /* leading-7 */\n color: #000000;\n margin: 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.popover__title-text {\n font-weight: bold;\n}\n\n/* Domain / subtitle */\n.popover__domain {\n font-size: 0.875rem; /* text-sm */\n line-height: 1.25rem; /* leading-5 */\n color: #4B5563; /* text-gray-600 */\n}\n\n.popover__domain-text {\n font-weight: normal;\n}\n\n/* Bullet points */\n.popover__bullet-points {\n display: flex;\n flex-direction: column;\n gap: 0.5rem; /* gap-2 */\n align-items: flex-start;\n width: 100%;\n position: relative;\n}\n\n.popover__bullet-point {\n display: flex;\n align-items: center;\n gap: 0.5rem; /* gap-2 */\n width: 100%;\n position: relative;\n color: #000141;\n}\n\n.popover__bullet-text-disabled {\n --tw-text-opacity: 1;\n color: rgb(100 116 139 / var(--tw-text-opacity));\n}\n\n.popover__bullet-check {\n color: limegreen;\n font-size: 18px;\n font-weight: 700;\n}\n\n.popover__header {\n width:100%;\n display: flex;\n flex-direction: column;\n}\n.popover__header-text {\n align-items: center;\n display: inline;\n font-size: 20px;\n font-weight: bold;\n color: #000141;\n}\n\n.popover[data-direction=top] .popover__trigger:hover ~ .popover__content {\n transform: translate3d(-50%, 0, 0);\n visibility: visible;\n opacity: 1;\n}\n.popover[data-direction=top] .popover__content {\n bottom: calc(100% + .5rem);\n left: 50%;\n transform: translate3d(-50%, -15px, 0);\n}\n.popover[data-direction=top] .popover__content:after {\n bottom: -0.5em;\n left: 50%;\n transform: translate3d(-50%, 0, 0);\n border-width: 0 0.5em 0.5em 0.5em;\n border-color: transparent transparent white transparent;\n filter: drop-shadow(1px -1px 1px #bcbcbc);\n}\n\n\n/* Title */\n.popover__title {\n font-size: 1.125rem; /* text-lg */\n line-height: 1.75rem; /* leading-7 */\n color: #000000;\n margin: 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.popover__title-text {\n font-weight: bold;\n}\n\n/* Domain / subtitle */\n.popover__domain {\n font-size: 0.875rem; /* text-sm */\n line-height: 1.25rem; /* leading-5 */\n color: #4B5563; /* text-gray-600 */\n}\n\n.popover__domain-text {\n font-weight: normal;\n}\n\n.dr-floating-coupon-icon {\n position: absolute;\n top: -16px;\n left: -16px;\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n border-radius: 99px;\n font-size: 12px;\n z-index: 99;\n}\n"+(n.styles?"\n"+n.styles:""),o.appendChild(r);const i=document.createElement("div");return o.appendChild(i),e=[...e].sort((e,t)=>e.rate.base+(e.rate.taxes||0)+(e.rate.hotelFees||0)-(t.rate.base+(t.rate.taxes||0)+(t.rate.hotelFees||0))).slice(0,4),(0,co.H)(i).render((0,so.jsx)("div",{className:Xl("offers-container",n.vertical?"offers-container-vertical":"offers-container-horizontal"),children:e.map((e,a)=>{const o=e.rate.base+(e.rate.taxes||0)+(e.rate.hotelFees||0),r=t.totalPrice/100-o>0,i=0===a&&r;return(0,so.jsxs)("div",{className:"popover","data-direction":"top",children:[(0,so.jsx)("div",{className:"popover__trigger",children:(0,so.jsx)(nu,{offer:e,bestOffer:i,ctaPrefix:n.ctaPrefix})}),(0,so.jsx)(eu,{offer:e,listingPrice:t,bestOffer:i,thereIsDiscount:r})]},a)})})),a})(e,await this.getPrice(c),{vertical:r,styles:i,ctaPrefix:s});return this.cleanRenderedAlternativeOffer(l),p.appendChild(d),this.setRenderedAlternativeOffer(l,d),d}async canMakePricingRequest(){const e=await this.buildQueryParams("checkin"),t=await this.buildQueryParams("checkout");return!!e&&!!t}async renderAlternativeOffersInList(e,t){}async renderAlternativeOffersInDetail(e){}getListingNameFromList(e){return null}async insertSecondaryCTAInDetailView(e){throw new Error("Method not implemented.")}async insertSecondaryCTAInCheckoutView(e){throw new Error("Method not implemented.")}getItemId(e){throw new Error("Method not implemented.")}getItemIdOnOTACheckout(){throw new Error("Method not implemented.")}getListingNameOnOTACheckout(){throw new Error("Method not implemented.")}async getDetailsInfo(){throw new Error("Method not implemented.")}setMLRenderer(e){throw new Error("Method not implemented.")}getListingsInPage(){throw new Error("Method not implemented.")}markListingAsMultilisting(e,t){throw new Error("Method not implemented.")}getPriceFromList(e){throw new Error("Method not implemented.")}getDetailPrice(){throw new Error("Method not implemented.")}async getQueryParamMap(e){throw new Error("Method not implemented.")}async buildQueryParams(e,t=window.location.href){const n=new URL(t),a=(await this.getQueryParamMap(n))[e];return(B(a)?await a():Rt(n.searchParams.get(a)))||null}static getSection(e){throw new Error("Method not implemented.")}}const ru=function(){return z.Date.now()};var iu=/\s/;var su=/^\s+/;const cu=function(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&iu.test(e.charAt(t)););return t}(e)+1).replace(su,""):e};var lu=/^[-+]0x[0-9a-f]+$/i,uu=/^0b[01]+$/i,pu=/^0o[0-7]+$/i,du=parseInt;const mu=function(e){if("number"==typeof e)return e;if(L(e))return NaN;if($(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=$(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=cu(e);var n=uu.test(e);return n||pu.test(e)?du(e.slice(2),n?2:8):lu.test(e)?NaN:+e};var hu=Math.max,fu=Math.min;const gu=function(e,t,n){var a,o,r,i,s,c,l=0,u=!1,p=!1,d=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function m(t){var n=a,r=o;return a=o=void 0,l=t,i=e.apply(r,n)}function h(e){var n=e-c;return void 0===c||n>=t||n<0||p&&e-l>=r}function f(){var e=ru();if(h(e))return g(e);s=setTimeout(f,function(e){var n=t-(e-c);return p?fu(n,r-(e-l)):n}(e))}function g(e){return s=void 0,d&&a?m(e):(a=o=void 0,i)}function k(){var e=ru(),n=h(e);if(a=arguments,o=this,c=e,n){if(void 0===s)return function(e){return l=e,s=setTimeout(f,t),u?m(e):i}(c);if(p)return clearTimeout(s),s=setTimeout(f,t),m(c)}return void 0===s&&(s=setTimeout(f,t)),i}return t=mu(t)||0,$(n)&&(u=!!n.leading,r=(p="maxWait"in n)?hu(mu(n.maxWait)||0,t):r,d="trailing"in n?!!n.trailing:d),k.cancel=function(){void 0!==s&&clearTimeout(s),l=0,a=c=o=s=void 0},k.flush=function(){return void 0===s?i:g(ru())},k},ku=Wl(),bu=()=>(0,so.jsx)("div",{className:"dr-floating-directo dr-direct",children:(0,so.jsx)("span",{style:{position:"relative",zIndex:10},children:(0,so.jsx)(wc,{})})});class yu extends vc.Component{box=vc.createRef();item;backgroundColor;platform;constructor(e){super(e),this.state={hidden:!0},this.navigate=this.navigate.bind(this),this.item=e.item,this.backgroundColor=e.backgroundColor,this.platform=e.platform}navigate(e){return t=>{t.preventDefault();const n=to(e);ku.event("click_out_ml",{outbound_url:n}),Ju.navigateToDirectLink(n,"LIST",{parametrised:this.item.stay_parametrised,sourceId:this.item.source_id,verified:this.item.verified,coupon:this.item.coupon,discount:this.item.discount})}}getThumbs(){const e=this.item.score??0;let t="👍";return e>=70?t="👍👍👍":e>=50&&(t="👍👍"),e?(0,so.jsx)("div",{className:"dr-floating-score-icon",children:t}):null}getFloatingLabel(){return this.item.coupon?(0,so.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,so.jsx)(Sc,{})}):this.item.discount?(0,so.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,so.jsx)("img",{src:tu,alt:"Directo",className:"dr-h-7 dr-w-7"})}):this.getThumbs()}getTooltipText(){const{score:e,discount:t,coupon:n}=this.item;return gn(n?"label.coupon_tooltip":t?"label.discount_tooltip":e&&e>70?"label.high_score_tooltip":e?"label.score_tooltip":"label.tooltip")}render(){const e="GOOGLE"===Tn(window.location.href);return(0,so.jsxs)("button",{onClick:this.navigate(this.item.directo_url),ref:this.box,style:{position:"relative",backgroundColor:this.backgroundColor},className:"dr-floating-container",children:[this.getFloatingLabel(),!e&&(0,so.jsx)("span",{className:"dr-floating-container-before",style:{boxShadow:`${"booking"===this.platform?"-10px":"10px"} 10px 0 ${this.backgroundColor}`}}),(0,so.jsx)(bu,{},this.item.source_id),(0,so.jsx)("div",{className:"dr-floating-label-popover",children:this.getTooltipText()}),!e&&(0,so.jsx)("span",{className:"dr-floating-container-after",style:{boxShadow:`${"booking"===this.platform?"-10px":"10px"} 10px 0 ${this.backgroundColor}`}})]})}}const vu=function(e,t,n="white",a=!1){const o=Tn(window.location.href)?.toLowerCase(),r=document.createElement("div"),i=r.attachShadow({mode:"closed"}),s=function(e,t,n=!1){const a=document.createElement("style");return a.innerHTML='.dr-floating-directo {\n position: relative;\n margin-top: 5px;\n }\n .dr-floating-directo:before {\n content: "";\n position: absolute;\n width: 29px;\n height: 31px;\n background-color: #FDC307;\n left: 0;\n top: 0;\n border-top-right-radius: 100%;\n border-bottom-right-radius: 100%;\n border-top-left-radius: 8px;\n border-bottom-left-radius: 8px;\n animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;\n}\n.dr-floating-directo:after {\n content: "";\n position: absolute;\n width: 39px;\n height: 41px;\n background-color: #FDC307;\n left: -5px;\n top: -5px;\n border-top-right-radius: 100%;\n border-bottom-right-radius: 100%;\n border-top-left-radius: 8px;\n border-bottom-left-radius: 8px;\n}\n.dr-floating-container {\n outline: none;\n border: 0;\n cursor: pointer;\n width: 50px;\n height: 55px;\n background: white;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.dr-floating-score-icon {\n position: absolute;\n top: -12px;\n left: -20px;\n background-color: #3B82F6;\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n border: 3px solid white;\n border-radius: 99px;\n padding: 2px 6px;\n font-size: 12px;\n z-index: 99;\n}\n\n.dr-floating-coupon-icon {\n position: absolute;\n top: -16px;\n left: -16px;\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n border-radius: 99px;\n font-size: 12px;\n z-index: 99;\n}\n\n.dr-floating-container-before,\n.dr-floating-container-after {\n z-index: -1;\n}\n.dr-floating-container-before {\n position: absolute;\n width: 20px;\n height: 20px;\n bottom: 0px;\n background: transparent;\n border-radius: 50%;\n}\n.dr-floating-container-after {\n position: absolute;\n width: 20px;\n height: 20px;\n top: -20px;\n background: transparent;\n border-radius: 50%;\n}\n @keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}',a.innerHTML+=`.dr-floating-container {\n\n ${"booking"===t?"border-top-right-radius: 25px; margin-left: 0;":"border-top-left-radius: 10px; margin-left: 5px;"}\n }\n .dr-floating-container-before,\n .dr-floating-container-after {\n box-shadow: ${"booking"===t?"-10px":"10px"} 10px 0 ${e};\n }\n .dr-floating-container-before {\n ${"booking"===t?"right: -20px;":"left: -20px;"}\n }\n.dr-floating-container-after {\n ${"booking"===t?"left: 0px;":"vrbo"===t?"left: 30px;":"left: 25px;"}\n\n}\n `,a.innerHTML+=`\n .dr-floating-label-popover {\n position: absolute;\n ${["booking","google"].includes(t)?"top: -51px;left: 50%; border-radius: 8px;":"left: -60px;top: -33px;border-radius: 8px 8px 2px 8px;"}\n color: #000141;\n transform: translateX(-50%);\n background: white;\n padding-top: 8px;\n padding-right: 16px;\n padding-bottom: 8px;\n padding-left: 16px;\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n z-index: 999;\n visibility: hidden;\n opacity: 0;\n transition: all .15s ease-in-out;\n font-weight: 600;\n width: 148px;\n padding-top: 8px;\n padding-bottom: 8px;\n text-align: center;\n pointer-events: none;\n }\n .dr-floating-container:hover .dr-floating-label-popover {\n visibility: visible;\n opacity: 1;\n ${["booking","google"].includes(t)?`top: -41px;left: ${n?130:50}%;`:"left: -60px;top: -23px;border-radius: 8px 8px 2px 8px;"}\n }\n `,a}(n,o,a);i.appendChild(s);const c=document.createElement("div");return Object.assign(c.style,t),i.appendChild(c),(0,co.H)(c).render((0,so.jsx)(yu,{item:e,backgroundColor:n,platform:o})),r},wu='[data-testid="content-scroller"]';function ju(e){if("childList"===e.type){if(e.removedNodes.length)return!0;if(e.addedNodes&&e.addedNodes[0]&&e.addedNodes[0]?.firstChild&&"dr-floating-container"===(e.addedNodes[0]?.firstChild).className)return!0;if(!e.addedNodes[0]?.firstChild?.className)return!0}return!1}class _u extends ou{constructor(e){super(e),this.platform="AIRBNB",this.displayName="Airbnb"}shouldActivate(e){return/airbnb\.[.a-z]{2,7}/i.test(e)}getListingsInPage(){const e=document.querySelectorAll("a.bn2bl2p");return Array.from(e).map(e=>{const t=e.getAttribute("target")?.replace("listing_","");return t})}findListingElement(e){return document.querySelector(`[target=listing_${e}]`)}async renderAlternativeCTAInList(e,t){const n=t.closest('[itemprop="itemListElement"]');if(!n)return;const a=await this.insertSecondaryCTA(e,['[data-testid="price-availability-row"]'],"SECONDARY_CTA_IN_LIST_ITEM",`${e.source_id}-list`,n);if(!a)return;a.style.marginTop="12px",a.style.display="flex",a.style.justifyContent="center",a.style.background="#F3F4F6",a.style.padding="6px",a.style.borderRadius="8px";const o=Ut([".directo-cta-button-shine",".directo-cta-button-dark"],a.$reactRoot);o&&(o.style.borderRadius="8px")}async markListingAsMultilisting(e,t){this.cleanRenderedLabel(e);const n=this.findListingElement(e);if(!n)return;const a=null!==n.closest(wu),o=this.getLabelPlacement(n),r=vu(t,o,a?"#F7F6F2":"white");this.renderedLabels[e]||(this.renderedLabels[e]=r,this.appendLabel(n,r),this.renderAlternativeCTAInList(t,n))}async insertSecondaryCTAInDetailView(e){this.cleanRenderedLabel(e.source_id);const t=await this.insertSecondaryCTA(e,['._wgmchy[data-testid="book-it-default"]'],"SECONDARY_CTA_IN_DETAIL_BOOK");if(!t)return;t.style.marginTop="10px";const n=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();n&&(n.style.borderRadius="8px",n.style.padding="15px 12px")}async insertSecondaryCTAInCheckoutView(e){this.cleanRenderedLabel(e.source_id);const t=await this.insertSecondaryCTA(e,['[data-plugin-in-point-id="CONFIRM_AND_PAY"][data-section-id="CONFIRM_AND_PAY"]'],"SECONDARY_CTA_IN_CHECKOUT_FOOTER");if(!t)return;t.parentElement&&(t.parentElement.style.display="flex"),t.style.marginLeft="10px";const n=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();n&&(n.style.borderRadius="8px",n.style.padding="18px 12px",n.style.fontSize="16px",n.style.gap="12px")}getLabelPlacement(e){const{top:t,right:n}=function(e){const t=e.parentElement?.parentElement;if(!t)return console.warn("Parent element not found."),{right:-5,top:0};const n=Ut(["picture img"],t);if(!n)return console.warn("Picture element not found."),{right:-5,top:0};const a=null!==e.closest(wu);return{right:-5,top:n.height-(a?70:54)}}(e);return{position:"absolute",top:`${t}px`,right:`${n}px`,zIndex:"1",borderTopLeftRadius:"25px"}}appendLabel(e,t){if(!1===this.rendererConfig.renderLabels)return;const n=io(1,3);try{switch(n){case 1:return e.append(t);case 2:return e.parentElement.append(t);case 3:return e.parentElement.children[1].append(t)}}catch(n){return e.append(t)}}async getDetailsInfo(){const e=Ut(['[data-section-id="TITLE_DEFAULT"] h1']),t=Oe(e,"textContent"),n=Ut(["#FMP-target"]);let a=null;n&&(a=n.getAttribute("src"));const o=Ut(['[data-section-id="TITLE_DEFAULT"] [aria-hidden=false]']);return{title:t,image:a,market:Oe(o,"textContent")}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=gu(e,2e3,{trailing:!0})),setTimeout(async()=>{const e=await Dt(Ut,e=>!e)(["[itemprop=itemListElement]"]);new MutationObserver(e=>{for(const t of e)!ju(t)&&this.debouncedRenderMLs&&this.debouncedRenderMLs()}).observe(e,{childList:!0,subtree:!0})},800),this.debouncedRenderMLs()}async getPriceFromList(e){const t={priceString:"",currency:"EUR",priceStringIsNightly:!0,nightlyPrice:0,totalPrice:0};if(!e)return t;const n=this.findListingElement(e);if(!n)return t;if(null!==n.closest(wu))return t;const a=await Dt(Ut,e=>!e,2)(['[data-testid="price-availability-row"] [role="presentation"] [aria-hidden="true"] [role="button"]','[data-testid="price-availability-row"] [role="presentation"] [aria-hidden="true"]'],n.parentElement);if(!a)return t;const o=[...a.querySelectorAll("span")].find(e=>"clip"!==getComputedStyle(e).overflow);if(!o)return t;const r=o.textContent,i=ga(r.replace(/[^0-9.]/g,""));return null===i?t:{priceString:r,currency:await this.buildQueryParams("currency"),priceStringIsNightly:!1,totalPrice:i,nightlyPrice:i/await this.getLoS()}}async canMakePricingRequest(){const{hash:e}=window.location,t=e.includes("availability-calendar");return await super.canMakePricingRequest()&&!t}async getDetailPrice(){let e="";const t=await Dt(()=>{const e=Ut(['[data-testid="book-it-default"] button']);if(!e)return null;const t="dialog"===e.getAttribute("aria-haspopup");return[...e.querySelectorAll("span")].find(e=>{const n=getComputedStyle(e);return"solid"===n.textDecorationStyle&&(!!t||"underline"===n.textDecorationLine)})||null},e=>!e)();t&&(e=t.textContent||"");const n=e.replace(/\n/gm,""),a=await this.buildQueryParams("currency"),o=ga(n.replace(/[^0-9.]/g,""))||0;return{priceString:n,currency:a,priceStringIsNightly:!1,totalPrice:o,nightlyPrice:o/await this.getLoS()}}getItemId(e){return(In.exec(e||location.href)||[])[3]??null}async getItemIdOnOTACheckout(){return(/(www\.)?airbnb\.[.a-z]{2,7}\/book\/stays\/(\d+)/i.exec(location.href)||[])[2]??null}getListingNameOnOTACheckout(){const e=Ut(["#LISTING_CARD-title"]);return e?.textContent||null}getListingNameFromList(e){const t=this.findListingElement(e.source_id),n=t?.parentElement?.querySelector('[data-testid="listing-card-title"]')?.textContent;return n||e.directo_url}async getDestinationInUrl(){const e=/[https:\/\/]*[www]*\.airbnb\.[^\/]+\/s\/([^\/]+)\/homes/i.exec(location.href);return e?.length?decodeURIComponent(e[1]):null}async getQueryParamMap(e){return{checkin:()=>e.searchParams.get("check_in")||e.searchParams.get("checkin")||en(new Date(Date.now()+8641e4)),checkout:()=>e.searchParams.get("check_out")||e.searchParams.get("checkout")||en(new Date(Date.now()+16641e4)),adults:()=>e.searchParams.get("adults")||"2",children:()=>e.searchParams.get("children")||"0",currency:async()=>{if(e.searchParams.has("display_currency"))return e.searchParams.get("display_currency");if(e.searchParams.has("currency"))return e.searchParams.get("currency");const t=await Dt(()=>Ft(['footer .dir-ltr [type="button"] span']),e=>!e,8)(),n=(r=null==(o=t)?0:o.length)?o[r-1]:void 0,a=Oe(n,"textContent","EUR")?.replace(/\n/gm,"");var o,r;return a??null}}}static getSection(e){const t=e.href;return Ln.test(t)?"LIST":In.test(t)?"DETAIL":Dn.test(t)?"CHECKOUT":"UNKNOWN"}cleanRenderedSecondaryCTA(e,t){e.remove(),delete this.renderedSecondaryCTAs[t]}}function xu(e){if("childList"===e.type){if(e.removedNodes.length)return!0;const t=e.addedNodes[0];if(""===t?.className&&"DIV"===t?.nodeName)return!0;if(t&&"dr-floating-container"===t?.firstChild?.className)return!0}return!1}class zu extends ou{lastUrl="";mapWasOpen=!1;isGridMode=void 0;embeddedInfoCache=null;constructor(e){super(e),this.platform="BOOKING",this.displayName="Booking.com",this.mapWasOpen=this.isMapOpen()}shouldActivate(e){return/booking\.com/i.test(e)}static getItemId(e){return ia(e)}isDetailView(){return![null,"searchresults"].includes(this.getItemId())}getListingsInPage(){if(this.isMapOpen())return[];const e=Ft(['[data-testid="property-card"]','[data-testid="property-card-desktop-single-image"]']),t=Array.from(e||[]).map(e=>{const t=e.querySelector("a");let n=t?.getAttribute("href");return ra((a=n.match(/[^]+?\.html/))&&a.length?a[0]:void 0);var a});return this.filterNewListingsInPage(t)}getListingCardContainer(e){const t=e.closest('[data-testid="property-card-container"]');return t?.firstChild?.firstChild??null}findListingElement(e){const t=Ft(['[data-testid="property-card"]','[data-testid="property-card-desktop-single-image"]']);if(!t||0===t.length)return null;let n=null;for(const a of t){const t=a.querySelector("a")||a,o=t.getAttribute("href");if(o&&ra(o)===e){n=t;break}}return n?this.getListingCardContainer(n):null}isMapOpen(){const{hash:e}=window.location,t=e.includes("map_opened");return this.mapWasOpen!==t&&(this.mapWasOpen=t,this.listingsInPage.clear(),this.renderedLabels=[]),t}async setGridMode(){const e=await Dt(Ut,e=>!e,5)(['[role="radiogroup"]']);return void 0===this.isGridMode&&(this.isGridMode="grid"===e.querySelector("[checked]")?.getAttribute("value")),e&&e.addEventListener("change",()=>{this.cleanAllRenderedLabels(),this.isGridMode=!this.isGridMode,this.debouncedRenderMLs&&this.debouncedRenderMLs()}),this.isGridMode}async renderAlternativeCTAInList(e,t){const n=await this.insertSecondaryCTA(e,['[data-testid="availability-cta"]','[data-testid="availability-group"'],"SECONDARY_CTA_IN_LIST_ITEM",`${e.source_id}-list`,t);if(n){n.style.marginTop="10px";const e=await Dt(()=>Ut([".popover"],n.$reactRoot))();e&&(e.style.zIndex="auto")}setTimeout(()=>{const n=this.findListingElement(e.source_id);if(!n)return;const a=n.closest('[data-testid="property-card"]');a&&(a===t||this.renderAlternativeCTAInList(e,a))},2e3)}async renderAlternativeOfferInList(e,t){if(0===e.length)return;const n=`${e[0].source_id}-list`;this.cleanRenderedSecondaryCTAs(n),await this.insertAlternativeOffers(e,{id:n,vertical:!0,container:t,styles:Cu,ctaPrefix:"VIO_BOOKING_LIST"})}async renderAlternativeOffersInList(e,t){if(this.isMapOpen())return;if(0===t.length)return;const n=this.findListingElement(e);if(!n)return;const a=n.closest('[data-testid="property-card"]');a&&this.renderAlternativeOfferInList(t,a)}async renderAlternativeOffersInDetail(e){if(0===e.length)return;const t=await Dt(e=>Ut(e),e=>null===e,10)([".hprt-reservation-cta"]);if(!t)return;const n=`${e[0].source_id}-detail`;this.cleanRenderedAlternativeOffer(n),await this.insertAlternativeOffers(e,{id:n,vertical:!0,container:t,styles:Su,ctaPrefix:"VIO_BOOKING_DETAIL"})}async markListingAsMultilisting(e,t){if(this.isMapOpen())return;const n=this.findListingElement(e);if(!n)return;const a=n.closest('[data-testid="property-card"]');if(!a)return;const o=window.getComputedStyle(a).getPropertyValue("background-color"),r=this.getLabelPlacement(n),i=vu(t,r,o);this.appendLabel(e,a,i),this.renderAlternativeCTAInList(t,a),this.rankListing(t,a)}rankListing(e,t){if(t&&t.parentElement)try{const n=new URL(window.location.href).searchParams.get("order");if(e.ranking&&(!n||"popularity"===n)){const e=t.parentElement;e.insertBefore(t,e.firstChild)}}catch(e){console.error(e)}}async insertSecondaryCTAInDetailView(e){const t=await this.insertSecondaryCTA(e,["#top-book"],"SECONDARY_CTA_IN_DETAIL_ALT",`${e.source_id}-1`);t&&(t.style.marginTop="10px");const n=await this.insertSecondaryCTA(e,[".ph-footer"],"SECONDARY_CTA_IN_DETAIL_BOOK",`${e.source_id}-2`);n&&(n.style.marginTop="10px");const a=await this.insertSecondaryCTA(e,[".hprt-reservation-cta"],"SECONDARY_CTA_IN_DETAIL_BOOK",`${e.source_id}-3`);a&&(a.style.marginTop="10px")}async insertSecondaryCTAInCheckoutView(e){return this.debouncedInsertSecondaryCTAInCheckoutView(e)}debouncedInsertSecondaryCTAInCheckoutView=gu(this.insertSecondaryCTAInCheckoutViewToDebounce,9e3,{leading:!0});async insertSecondaryCTAInCheckoutViewToDebounce(e){const t=await this.insertSecondaryCTA(e,[".bui-group.bui-button-group.bui-group--vertical-align-middle.bui-group--inline.bui-group--align-end"],"SECONDARY_CTA_IN_CHECKOUT_FOOTER");if(!t)return;const n=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();n&&(n.style.padding="14px 15px",n.style.fontSize="15px")}appendLabel(e,t,n){!1!==this.rendererConfig.renderLabels&&(this.cleanRenderedLabel(e),t.append(n),this.renderedLabels[e]=n,setTimeout(()=>{const a=this.findListingElement(e);a&&(a===t||this.appendLabel(e,a,n))},2e3))}getLabelPlacement(e){return{position:"absolute",zIndex:"200",bottom:"0px",borderTopRightRadius:"25px"}}async getDetailsInfo(){const e=Ut([".pp-header__title"]),t=Oe(e,"textContent",""),n=Ut([".slick-slide.slick-active img",".bh-photo-grid .bh-photo-grid-photo1.active-image",".bh-photo-grid-item.bh-photo-grid-photo1.active-image"]);let a=null;n&&(a=n.getAttribute("data-thumb-url"));const o=Ut([".sb-destination__input"]);return{title:t,image:a,market:Oe(o,"value")}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=gu(e,2500,{trailing:!0})),setTimeout(async()=>{const e=(await Dt(Ut,e=>!e)(['[data-testid="property-card"]'])).parentElement,t=new MutationObserver(e=>{this.cleanAllRenderedLabels()});t.disconnect();const n=e.parentElement?.parentElement?.parentElement?.querySelector(".d3c5f9b609");t.observe(n,{childList:!0,subtree:!0});const a=new MutationObserver(e=>{for(const t of e)!xu(t)&&this.debouncedRenderMLs&&this.debouncedRenderMLs()});a.disconnect();const o=e.parentElement?.parentElement?.parentElement?.querySelector('[data-results-container="1"]');a.observe(o,{childList:!0,subtree:!0}),this.setGridMode&&this.setGridMode(),this.lastUrl=window.location.href},2e3),this.lastUrl!==window.location.href&&this.listingsInPage.clear(),this.debouncedRenderMLs()}async getPriceObject(e){const t=ga(e.replace(/[^0-9,]/g,""))||0;return{priceString:e,currency:await this.buildQueryParams("currency"),priceStringIsNightly:!1,nightlyPrice:t/(await this.getLoS()||1),totalPrice:t}}async getPriceFromList(e){const t=this.findListingElement(e),n=await Dt(Ut,e=>!e,2)(['[data-testid="price-and-discounted-price"]'],t?.parentElement?.parentElement?.parentElement),a=n?.textContent?.replace(/\n/gm,"")||"";return this.getPriceObject(a)}async getDetailPrice(){let e="";const t=await Dt(Ut,e=>!e,2)(["#hprt-table .bui-price-display__value"]);t&&(e=t.textContent||"");const n=e.replace(/\n/gm,"");return this.getPriceObject(n)}getItemId(e){return zu.getItemId(e)}async getItemIdOnOTACheckout(){try{return this.getItemIdOnOTACheckoutFromJsonApplicationContext()||this.getItemIdOnOTACheckoutFromSidebar()}catch(e){return console.error(e),null}}getItemIdOnOTACheckoutFromJsonApplicationContext(){const e=Ut(['[data-capla-application-context="data-capla-application-context"]']);if(!e)return null;const t=JSON.parse(e.textContent||"{}"),n=Oe(t,"body.BPRenderData.bookingSummaryDetails.hotelAbsoluteUrl",null);return"string"!=typeof n?null:this.getItemId(n)}getItemIdOnOTACheckoutFromSidebar(){const e=Ut(['[data-testid="booking-details-date-summary"]'])?.parentElement,t=e?.querySelector("a"),n=t?.getAttribute("href");return n?this.getItemId(n):null}getListingNameOnOTACheckout(){const e=Ut([".bp-mfe-container--property-details h1"]);return e?.textContent||null}getListingNameFromList(e){const t=this.findListingElement(e.source_id),n=t?.parentElement?.parentElement?.parentElement?.querySelector('[data-testid="title"]')?.textContent;return n||e.directo_url}async getDestinationInUrl(){return null}getHotelIdInDetail(){const e=/window\.utag_data = ({\n[^]*?});/gm.exec(window.document.body.innerHTML),t=e?e[1]:"{}";try{const e=t.replace(/'/g,'"').replace(/([a-zA-Z0-9_]+):/g,'"$1":');return JSON.parse(e.split("\n").filter(e=>(e.match(/"/g)||[]).length<=4).join("\n")).hotel_id}catch(e){return console.error(e),null}}async getQueryParamMap(e){const{search:t}=e;return dt(t?.split(";").slice(1),t=>{const[n,a]=t.split("=");e.searchParams.set(n,a)}),e.searchParams.forEach((t,n)=>{e.searchParams.set(n,t.split(";")[0])}),{checkin:async()=>{const t=e.searchParams.get("checkin");if(t)return t;return await this.getEmbeddedValue(e,Au[zu.getSection(e)]("checkin"))||Yt.fromDate(Jt(new Date,1)).toDashYYYYMMDD()},checkout:async()=>{const t=e.searchParams.get("checkout");if(t)return t;const n=await this.getEmbeddedValue(e,Au[zu.getSection(e)]("checkout"));if(n)return n;return function(e,t){if(!e||!t)return null;const n=Yt.tryFromDashYYYYMMDD(e);if(!n)return null;const a=parseInt(t,10);if(Number.isNaN(a)||a<0)return null;const o=Jt(n.unsafe_toDate(),a);return Yt.fromDate(o).toDashYYYYMMDD()}(e.searchParams.get("checkin"),e.searchParams.get("interval"))||Yt.fromDate(Jt(new Date,2)).toDashYYYYMMDD()},adults:()=>e.searchParams.get("req_adults")||e.searchParams.get("group_adults")||"2",children:()=>e.searchParams.get("req_children")||e.searchParams.get("group_children")||"0",currency:async()=>{const e=await Dt(Ut,e=>!e,4)(['[data-testid="header-currency-picker-trigger"]']),t=Oe(e,"textContent","EUR")?.replace(/\n/gm,"");return t??null}}}static getSection(e){const t=e.href;return Mn.test(t)?"LIST":Rn.test(t)?"DETAIL":$n.test(t)?"CHECKOUT":Bn.test(t)?"CONFIRMATION":"UNKNOWN"}async getEmbeddedInfoJson(e){if(null!==this.embeddedInfoCache)return this.embeddedInfoCache;const t=Eu[zu.getSection(e)];if(!t)return null;const n=await Kt([t]);return this.embeddedInfoCache=n,this.embeddedInfoCache}async getEmbeddedValue(e,t){const n=await this.getEmbeddedInfoJson(e);if(!n)return null;const a=t(n);return"string"!=typeof a?null:a}}const Cu="\n.offers-container {\n margin-top: 20px;\n}\n",Su="\n.offers-container {\n margin-top: 10px;\n}\n",Eu={LIST:'script[data-capla-namespace*="b-search-web-searchresults"][data-capla-store-data="apollo"]',DETAIL:'script[data-capla-namespace*="b-property-web-property"][data-capla-store-data="apollo"]',CHECKOUT:'script[data-capla-namespace*="b-checkout-bp-accommodation"][data-capla-store-data="apollo"]',CONFIRMATION:'script[data-capla-namespace*="b-post-booking-web"][data-capla-store-data="apollo"]',UNKNOWN:null},Ou=()=>()=>null,Au={LIST:function(e){return t=>{if(!t.ROOT_QUERY)return null;const n=$t(t.ROOT_QUERY);if(!n||!n.searchQueries)return null;const a=$t(n.searchQueries);if(!a)return null;const o=Bt(a,/^search\(.*\)$/);if(!o)return null;const r=$t(o);if(!r||!r.searchMeta)return null;const i=$t(r.searchMeta);if(!i||!i.dates)return null;const s=$t(i.dates);if(!s)return null;const c=s[e];return"string"!=typeof c?null:c}},DETAIL:function(e){return t=>{if(!t.ROOT_QUERY)return null;const n=$t(t.ROOT_QUERY);if(!n)return null;const a=Bt(n,/^hotelPageByPageName\(.*\)$/);if(!a)return null;const o=$t(a);if(!o||!o.propertyFullExtended)return null;const r=$t(o.propertyFullExtended);if(!r||!r.searchBoxPrefillData)return null;const i=$t(r.searchBoxPrefillData);if(!i||!i.dates)return null;const s=$t(i.dates);if(!s)return null;const c=s[e];return"string"!=typeof c?null:c}},CHECKOUT:Ou,CONFIRMATION:Ou,UNKNOWN:Ou},Pu=function(e,t,n,a){var o=-1,r=null==e?0:e.length;for(a&&r&&(n=e[++o]);++o<r;)n=t(n,e[o],o,e);return n},Nu=function(e,t,n,a,o){return o(e,function(e,o,r){n=a?(a=!1,e):t(n,e,o,r)}),n};class Tu extends ou{constructor(e){super(e),this.platform="VRBO",this.displayName="Vrbo"}shouldActivate(e){return/vrbo\.com/i.test(e)}getListingsInPage(){const e=function(e,t,n){var a=j(e)?Pu:Nu,o=arguments.length<3;return a(e,il(t),n,o,lt)}(Ft(['[data-stid="open-hotel-information"]','[role="listitem"] a']),(e,t)=>{const n=t.getAttribute("href");return e.push(this.getIdFromUrl(n)),e},[]);return this.filterNewListingsInPage(e)}findListingElement(e){const t=Ft(['[data-stid="open-hotel-information"]','[role="listitem"] .HitCarousel a']);let n=null;return t?.forEach(t=>{const a=t.getAttribute("href");a?.indexOf(e)>-1&&(n=t)}),n}async renderAlternativeCTAInList(e,t){const n=t.parentElement;if(!n)return null;const a=await this.insertSecondaryCTA(e,['[data-test-id="price-summary"]'],"SECONDARY_CTA_IN_LIST_ITEM",`${e.source_id}-list`,n);if(!a)return;a.style.marginTop="12px";const o=await Dt(()=>Ut([".popover__content"],a.$reactRoot))();o&&(o.style.left="39px");const r=await Dt(()=>Ut([".popover"],a.$reactRoot))();r&&(r.style.zIndex="999")}async markListingAsMultilisting(e,t){this.cleanRenderedLabel(e);const n=this.findListingElement(e);if(!n||!n.parentElement)return;const a=this.getLabelPlacement(n),o=vu(t,a);if(this.renderedLabels[e])return;const r=Ut(["figure",".LazyLoad"],n.parentElement)||n;this.appendLabel(e,r,o),this.renderAlternativeCTAInList(t,n)}async insertSecondaryCTAInDetailView(e){this.cleanRenderedLabel(e.source_id);const t=await this.insertSecondaryCTA(e,[".uitk-spacing.uitk-spacing-padding-blockstart-three.uitk-spacing-padding-inline-three"],"SECONDARY_CTA_IN_DETAIL_BOOK");if(!t)return;const n=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();n&&(n.style.borderRadius="30px",t.style.padding="10px 0px")}async insertSecondaryCTAInCheckoutView(e){return this.debouncedInsertSecondaryCTAInCheckoutView(e)}debouncedInsertSecondaryCTAInCheckoutView=gu(this.insertSecondaryCTAInCheckoutViewToDebounce,9e3,{leading:!0});async insertSecondaryCTAInCheckoutViewToDebounce(e){this.cleanRenderedLabel(e.source_id);const t=await this.insertSecondaryCTA(e,['[data-at-id="contact-continue-button-standard"]'],"SECONDARY_CTA_IN_CHECKOUT_FOOTER");if(t){t.parentElement?.parentElement&&(t.parentElement.parentElement.style.display="flex",t.parentElement.parentElement.appendChild(t)),t.style.marginLeft="10px";const e=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();e&&(e.style.borderRadius="99px",e.style.padding="18px 28px",e.style.gap="16px",e.style.fontSize="16px")}await this.insertSecondaryCTA(e,[".price-details"],"SECONDARY_CTA_IN_CHECKOUT_SUMMARY")}appendLabel(e,t,n){if(!1===this.rendererConfig.renderLabels)return;const a=io(1,5);try{switch(a){case 1:return t.append(n);case 2:return t.children[0].append(n);case 3:return t.children[0].children[0].append(n);case 4:return t.children[0].children[0].children[0].append(n);case 5:return t.children[0].children[0].children[1].append(n)}}catch(e){return t.append(n)}finally{this.renderedLabels[e]=n}}getLabelPlacement(e){const{bottom:t,left:n}=function(e){const t=e.parentElement?.parentElement;return t?{left:(Ut(["figure",".LazyLoad"],t)||t).clientWidth-50,bottom:t.clientHeight-e.clientHeight}:(console.warn("Parent element not found."),{left:0,bottom:0})}(e);return{position:"absolute",bottom:`${t}px`,left:`${n}px`,zIndex:"999"}}async getDetailsInfo(){const e=Ut([".property-headline",'[data-stid="content-hotel-title"]',"h1.uitk-heading-3"]),t=Oe(e,"textContent",""),n=Ut([".photo-grid__photo-wrapper img",".uitk-image-placeholder img"]);let a,o=null;n&&(o=n.getAttribute("src"));const r=Ut([".HeadlineBreadcrumbs",'[data-stid="content-hotel-address"]']);return r&&(a=r.textContent?.split("/")[0]),{title:t,image:o,market:a}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=gu(e,2e3,{leading:!0}));const t=await Dt(Ut,e=>!e)([".HitCollection",'[data-stid="property-listing-results"]']);new MutationObserver(e=>{for(const t of e)"childList"===t.type&&this.debouncedRenderMLs&&this.debouncedRenderMLs()}).observe(t,{childList:!0,subtree:!0}),this.debouncedRenderMLs()}async getPriceObject(e){const t=ga(e.replace(/[^0-9.]/g,""))||0;return{priceString:e,currency:await this.buildQueryParams("currency"),priceStringIsNightly:!1,nightlyPrice:t/await this.getLoS(),totalPrice:t}}async getPriceString(e){const t=await Dt(Ut,e=>!e,10)(['[data-test-id="price-summary-message-line"] span'],e);return t?.textContent||""}async getDetailPrice(){const e=await this.getPriceString();return this.getPriceObject(e)}async getPriceFromList(e){const t=e?this.findListingElement(e)?.parentElement:document,n=await this.getPriceString(t);return this.getPriceObject(n)}getItemId(e){const{href:t}=window.location;return this.getIdFromUrl(e||t)}isDetailView(){return!window.location.pathname.includes("/search")}async getItemIdOnOTACheckout(){try{const{pathname:e}=new URL(window.location.href),t=/checkout\/\d{3}\.(\d+)\.\d+/i.exec(e);return t&&t.length>1?t[1]:null}catch(e){return console.error(e),null}}getListingNameOnOTACheckout(){const e=Ut([".property-details h3"]);return e?.textContent||null}getListingNameFromList(e){const t=this.findListingElement(e.source_id);if(!t||!t.parentElement)return null;const n=Ut(["h3.uitk-heading"],t.parentElement),a=n?.textContent;return a||e.directo_url}getIdFromUrl(e){const t=/(\/[a-z-]*\/)?([a-z]*)?[0-9]+[a-z]*/.exec(e);if(t&&t[0])return t[0];const n=new URL(e).pathname.split("/");return n[n.length-1].replace(/[a-z]*/g,"")}async getQueryParamMap(e){return{checkin:()=>e.searchParams.get("startDate")||e.searchParams.get("chkin")||en(new Date(Date.now()+8641e4)),checkout:()=>e.searchParams.get("endDate")||e.searchParams.get("chkout")||en(new Date(Date.now()+16641e4)),children:()=>{const t=e.searchParams.get("children")||"";return t?.includes("_")&&t.split("_")[0]||"0"},adults:()=>e.searchParams.get("adults")||"2",currency:async()=>e.searchParams.get("top_cur")||function(){if(!("APOLLO_STATE"in window))return null;const e=window.APOLLO_STATE;if(!e)return null;const t=$t(e);if(!t||!t.ROOT_QUERY)return null;const n=$t(t.ROOT_QUERY);if(!n)return null;const a=Bt(n,/^localePreferences\(.*\)$/);if(!a)return null;const o=$t(a);if(!o||!o.trigger)return null;const r=$t(o.trigger);if(!r)return null;const i=r.text;return"string"!=typeof i?null:i}()||"EUR"}}static getSection(e){const t=e.href;return Fn.test(t)?"LIST":Un.test(t)?"DETAIL":Vn.test(t)?"CHECKOUT":"UNKNOWN"}}class Iu extends Tu{constructor(e){super(e),this.displayName="Abritel"}shouldActivate(e){return/abritel\.fr/i.test(e)}getIdFromUrl(e){const t=/\/location-vacances\/([a-z]*[0-9]+[a-z]*)|$|\?/.exec(e);let n=null;return t&&t[1]&&(n=t[1]),function(e){return/p(\d+)$/.test(e)?e.replace(/^p/,"")+"a":/p(\d+)a$/.test(e)?e.replace(/^p/,"").replace(/a$/,"ha"):/p(\d+)vb$/.test(e)?e.replace(/^p/,"").replace("vb",""):e}(n)}static getSection(e){const t=e.href;return Kn.test(t)?"LIST":Hn.test(t)?"DETAIL":qn.test(t)?"CHECKOUT":"UNKNOWN"}}class Lu extends Tu{constructor(e){super(e),this.platform="EXPEDIA",this.displayName="Expedia"}shouldActivate(e){return/expedia\.[a-z.]{2,7}/i.test(e)}getLabelPlacement(e){const{bottom:t,left:n}=function(e){const t=e.parentElement?.parentElement;return t?{left:(Ut(["figure",".LazyLoad"],t)||t).clientWidth-50,bottom:t.clientHeight-e.clientHeight}:(console.warn("Parent element not found."),{left:0,bottom:0})}(e);return{position:"absolute",bottom:`${t}px`,left:`${n}px`,zIndex:"999"}}getItemId(e){const{href:t}=window.location;return this.getIdFromUrl(e||t)}getHotelIdInDetail(){const{href:e}=window.location;return this.getIdFromUrl(e)||null}async getItemIdOnOTACheckout(){try{const e=Ut([".hotel-details img"]);return new URL(e?.getAttribute("src")||"").pathname.split("/").slice(-2)[0]||null}catch(e){return console.error(e),null}}getListingNameOnOTACheckout(){const e=Ut(['[data-stid="product-details-wrapper"] h2']);return e?.textContent||null}getIdFromUrl(e){const t=/\/[\w-]*?\.h(\d*)\.[\w-]*\??/g.exec(e);return t?t[1]:""}isDetailView(){return!!this.getItemId()}async insertSecondaryCTAInDetailView(e){this.cleanRenderedLabel(e.source_id);const t=await Dt(Ut,e=>!e,10)(['[data-stid="submit-hotel-reserve"]']);if(!t)return;const n=await Zl(e,"SECONDARY_CTA_IN_DETAIL_BOOK");t.parentElement?.appendChild(n),this.setRenderedSecondaryCTA(e.source_id,n),n.style.marginTop="10px";const a=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],n.$reactRoot))();a&&(a.style.borderRadius="99px")}async insertSecondaryCTAInCheckoutView(e){return this.debouncedInsertSecondaryCTAInCheckoutView(e)}async insertSecondaryCTAInCheckoutViewToDebounce(e){this.cleanRenderedLabel(e.source_id);const t=await Dt(Ut,e=>!e,10)([".book-button-wrapper .complete-booking-cta"]),n=await Zl(e,"SECONDARY_CTA_IN_CHECKOUT_FOOTER");t.parentElement?.appendChild(n),this.setRenderedSecondaryCTA(e.source_id,n),n.parentElement.style.display="flex";const a=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],n.$reactRoot))();a&&(a.style.padding="14px 20px",a.style.gap="16px",a.style.fontSize="14px",a.style.marginTop="18px")}debouncedInsertSecondaryCTAInCheckoutView=gu(this.insertSecondaryCTAInCheckoutViewToDebounce,9e3,{leading:!0});async getPriceString(e){const t=await Dt(Ut,e=>!e,10)(['[data-test-id="price-summary-message-line"] .uitk-text-emphasis-theme'],e);return t?.textContent||""}async getPriceObject(e){const t=ga(e.replace(/[^0-9.]/g,""))||0,n=await this.buildQueryParams("checkin"),a=await this.buildQueryParams("checkout");return{priceString:e,currency:await this.buildQueryParams("currency"),nightlyPrice:t,totalPrice:t*Math.floor((new Date(a).getTime()-new Date(n).getTime())/864e5),priceStringIsNightly:!0}}async renderAlternativeOffersInDetail(e){const t=e.filter(e=>"Expedia"!==e.provider.name);if(0===t.length)return;const n=await Dt(e=>{const t=Ut(e);return t?t.parentElement:null},e=>null===e,10)(['[data-stid="submit-hotel-reserve"]']);if(!n)return;const a=`${t[0].source_id}-list`;this.cleanRenderedSecondaryCTAs(a),await this.insertAlternativeOffers(t,{id:a,vertical:!0,container:n,styles:Du,ctaPrefix:"VIO_EXEDIA_DETAIL"})}static getSection(e){const t=e.href;return Qn.test(t)?"LIST":Gn.test(t)?"DETAIL":Wn.test(t)?"CHECKOUT":"UNKNOWN"}}const Du="\n.offers-container {\n margin: 2em 0;\n}\n\n.offers-container.offers-container-horizontal {\n flex-direction: row;\n}\n\n@media screen and (min-width: 992px) {\n .offers-container {\n margin: 2em 0 2em 0;\n }\n}\n";var Ru=1/0;const Mu=function(e){var t=function(e){return e?(e=mu(e))===Ru||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}(e),n=t%1;return t==t?n?t-n:t:0};var $u=Math.max;const Bu=(Uu=function(e,t,n){var a=null==e?0:e.length;if(!a)return-1;var o=null==n?0:Mu(n);return o<0&&(o=$u(a+o,0)),function(e,t,n,a){for(var o=e.length,r=n+(a?1:-1);a?r--:++r<o;)if(t(e[r],r,e))return r;return-1}(e,il(t),o)},function(e,t,n){var a=Object(e);if(!it(e)){var o=il(t);e=st(e),t=function(e){return o(a[e],e,a)}}var r=Uu(e,t,n);return r>-1?a[o?e[r]:r]:void 0});var Uu;function Fu(e){if("childList"===e.type){if(e.removedNodes.length)return!0;if(e.addedNodes&&e.addedNodes[0]&&e.addedNodes[0]?.firstChild&&"dr-floating-container"===(e.addedNodes[0]?.firstChild).className)return!0;if(!e.addedNodes[0]?.firstChild?.className)return!0}return!1}class Vu extends ou{constructor(e){super(e),this.platform="GOOGLE",this.displayName="Google"}shouldActivate(e){return null!==/google\.[a-z.]{2,7}\/search\?/i.exec(e)}getListingsInPage(){const e=Ft(['#search [jsname="UWckNb"]'])||[];return function(e){for(var t=-1,n=null==e?0:e.length,a=0,o=[];++t<n;){var r=e[t];r&&(o[a++]=r)}return o}(Array.from(e).map(e=>{const t=e.getAttribute("href"),n=Tn(t);if(!n)return null;const a=function(e,t){switch(e){case"AIRBNB":return new _u(t);case"BOOKING":return new zu(t);case"VRBO":return new Tu(t);case"EXPEDIA":return new Lu(t);default:return null}}(n,this.rendererConfig);return a?`${n}::${a.getItemId(t)}`:null}))}findListingElement(e){const t=Ft(['#search [jsname="UWckNb"]']);return Bu(t,t=>{const n=t.getAttribute("href");return!!n&&function(e){const t=Tn(e);return"GOOGLE"!==t&&null!==t}(n)&&n.includes(e)})??null}markListingAsMultilisting(e,t){this.cleanRenderedLabel(e);const n=this.findListingElement(e);if(!n)return;const a=this.getLabelPlacement(n),o=vu(t,{...a,transform:"scaleY(-1)"},"transparent");this.renderedLabels[e]||(this.renderedLabels[e]=o,this.appendLabel(n,o))}getLabelPlacement(e){return{position:"absolute",top:"0px",left:"-85px",zIndex:"127",borderTopLeftRadius:"25px"}}appendLabel(e,t){if(!1!==this.rendererConfig.renderLabels)return e.append(t)}async getDetailsInfo(){return{title:"",image:"",market:""}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=gu(e,2e3,{trailing:!0})),setTimeout(async()=>{const e=await Dt(Ut,e=>!e)(["#search"]);new MutationObserver(e=>{for(const t of e)!Fu(t)&&this.debouncedRenderMLs&&this.debouncedRenderMLs()}).observe(e,{childList:!0,subtree:!0})},800),this.debouncedRenderMLs()}async getPriceFromList(e){return{priceString:"",currency:"USD",priceStringIsNightly:!0,nightlyPrice:0,totalPrice:0}}async getDetailPrice(){return{priceString:"",currency:"USD",priceStringIsNightly:!0,nightlyPrice:0,totalPrice:0}}getItemId(){return""}getListingNameFromList(e){const t=this.findListingElement(e.source_id),n=t?.parentElement?.querySelector('[data-testid="listing-card-title"]')?.textContent;return n||e.directo_url}async getDestinationInUrl(){return""}async getQueryParamMap(e){return{checkin:()=>e.searchParams.get("check_in")||e.searchParams.get("checkin"),checkout:()=>e.searchParams.get("check_out")||e.searchParams.get("checkout"),adults:()=>e.searchParams.get("adults")||"2",children:()=>e.searchParams.get("children")||"0",currency:async()=>e.searchParams.has("display_currency")?e.searchParams.get("display_currency"):e.searchParams.has("currency")?e.searchParams.get("currency"):"USD"}}static getSection(e){const t=e.href;return Yn.test(t)?"LIST":"UNKNOWN"}}const Hu=new class{renderer=void 0;availableRenderers=[];initialize(e){if(void 0!==this.renderer)throw new Error("PlatformContentFactory already initialized");this.availableRenderers=[new _u(e),new zu(e),new Tu(e),new Iu(e),new Lu(e),new Vu(e)],this.renderer=this.getActivableRenderer(window.location.href)}get(){if(void 0===this.renderer)throw new Error("PlatformContentFactory not initialized");return this.renderer}getActivableRenderer(e){for(const t of this.availableRenderers)if(t.shouldActivate(e))return t;return null}};async function Ku(){const e=Hu.get();return e?await e.getLoS():null}function qu(){const e=Hu.get();return e?e.getItemId():null}function Gu(){const e=Hu.get();return e?e.getHotelIdInDetail():null}const Qu=["checkin","checkout","currency","children","adults"];async function Wu(e){return Qu.reduce(async(t,n)=>{const a=await async function(e,t=window.location.href){const n=Hu.get();return n?await n.buildQueryParams(e,t):null}(n,e);return ro(await t,n,"checkin"===n||"checkout"===n?Xt(a):a),t},Promise.resolve({checkin:null,checkout:null,currency:null,adults:null,children:null}))}const Yu=["vidahotels.com","addresshotels.com"],Ju=new class{config=null;constructor(){}initialize(e){if(this.config)throw new Error("FrontNavigationFactory is already initialized");this.config=e}async navigateToDirectLink(e,t,n){if(!this.config)throw new Error("FrontNavigationFactory is not initialized");try{const t=new URL(e),n=dn(t);if(Yu.includes(n)){const e=to(t.hostname);await w.maybeOpenTempTab({url:e})}}catch(e){console.error("Error opening new tab",e)}const a=await Wu(window.location.href);this.config.onBeforeOpenOutclickTab?.({targetUrl:e,stayParams:a,outclickExtraParams:n}),await w.openOutclickTab({sourceUrl:window.location.href,targetUrl:e,cta:t,sourceId:n.sourceId,stayParams:a,useRedirectEngine:!0}),this.config.onAfterOpenOutclickTab?.({targetUrl:e,stayParams:a,outclickExtraParams:n})}};async function Zu(e){const t=await w.getConfig();Hu.initialize(e.platformContentRendererConfig),g.initialize(t),k.initialize(t),b.initialize(t),Ju.initialize(e.frontNavigationFactoryConfig);const n=new la,a=new Xa;!function(e,t=500){let n="";!function a(o=""){o!==n&&(e(o),n=o,setTimeout(()=>a(window.location.href),t))}(window.location.href)}(t=>{a.initialize(t),n.initialize(t),"DETAIL"===function(e){const t=Hu.get();return t?t.constructor.getSection(new URL(e)):null}(t)&&e.platformContentRendererConfig.renderAlternativeOffers&&async function(){const e=await async function(){const[e,t]=await Promise.all([Dt(Gu,e=>null===e)(),Dt(qu,e=>null===e)()]);return null===e||null===t?null:{hotelId:e,listingId:t}}();if(null===e)return[];const t=Tn(window.location.href);if(!t)return[];const n=await async function(e){const t=await Wu(e);if(!t.checkin||!t.checkout||!t.adults)return null;const n=parseInt(t.adults,10);if(!Number.isInteger(n))return null;const a=null!==t.children?parseInt(t.children,10):null;return null===a||Number.isInteger(a)?{checkin:t.checkin,checkout:t.checkout,adults:n,children:a??void 0,currency:t.currency??void 0}:null}(window.location.href);if(!n)return[];const{offers:a}=await w.getAlternativeOffersByHotelIds({id:[e],language:gt(),platform:t,...n,currency:n.currency||"EUR"});(function(e){const t=Hu.get();t&&t.renderAlternativeOffersInDetail(e)})(a)}()})}function Xu(){return Zu({platformContentRendererConfig:{renderLabels:!1,renderSecondaryCTAs:!1,renderAlternativeOffers:!0},frontNavigationFactoryConfig:{}})}export{Xu as initializeAdUnit};
|
|
2
|
+
var e={15:(e,t,n)=>{var a=n(155),o="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},r=a.useState,i=a.useEffect,s=a.useLayoutEffect,c=a.useDebugValue;function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!o(e,n)}catch(e){return!0}}var u="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var n=t(),a=r({inst:{value:n,getSnapshot:t}}),o=a[0].inst,u=a[1];return s(function(){o.value=n,o.getSnapshot=t,l(o)&&u({inst:o})},[e,n,t]),i(function(){return l(o)&&u({inst:o}),e(function(){l(o)&&u({inst:o})})},[e]),c(n),n};t.useSyncExternalStore=void 0!==a.useSyncExternalStore?a.useSyncExternalStore:u},18:(e,t)=>{var n=Symbol.for("react.element"),a=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),m=Symbol.iterator,h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},f=Object.assign,g={};function k(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||h}function b(){}function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||h}k.prototype.isReactComponent={},k.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},k.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=k.prototype;var v=y.prototype=new b;v.constructor=y,f(v,k.prototype),v.isPureReactComponent=!0;var w=Array.isArray,j=Object.prototype.hasOwnProperty,_={current:null},x={key:!0,ref:!0,__self:!0,__source:!0};function z(e,t,a){var o,r={},i=null,s=null;if(null!=t)for(o in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(i=""+t.key),t)j.call(t,o)&&!x.hasOwnProperty(o)&&(r[o]=t[o]);var c=arguments.length-2;if(1===c)r.children=a;else if(1<c){for(var l=Array(c),u=0;u<c;u++)l[u]=arguments[u+2];r.children=l}if(e&&e.defaultProps)for(o in c=e.defaultProps)void 0===r[o]&&(r[o]=c[o]);return{$$typeof:n,type:e,key:i,ref:s,props:r,_owner:_.current}}function C(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var S=/\/+/g;function E(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(e){return t[e]})}(""+e.key):t.toString(36)}function O(e,t,o,r,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var c=!1;if(null===e)c=!0;else switch(s){case"string":case"number":c=!0;break;case"object":switch(e.$$typeof){case n:case a:c=!0}}if(c)return i=i(c=e),e=""===r?"."+E(c,0):r,w(i)?(o="",null!=e&&(o=e.replace(S,"$&/")+"/"),O(i,t,o,"",function(e){return e})):null!=i&&(C(i)&&(i=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,o+(!i.key||c&&c.key===i.key?"":(""+i.key).replace(S,"$&/")+"/")+e)),t.push(i)),1;if(c=0,r=""===r?".":r+":",w(e))for(var l=0;l<e.length;l++){var u=r+E(s=e[l],l);c+=O(s,t,o,u,i)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=m&&e[m]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),l=0;!(s=e.next()).done;)c+=O(s=s.value,t,o,u=r+E(s,l++),i);else if("object"===s)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return c}function A(e,t,n){if(null==e)return e;var a=[],o=0;return O(e,a,"","",function(e){return t.call(n,e,o++)}),a}function P(e){if(-1===e._status){var t=e._result;(t=t()).then(function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)},function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)}),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var N={current:null},T={transition:null},I={ReactCurrentDispatcher:N,ReactCurrentBatchConfig:T,ReactCurrentOwner:_};function L(){throw Error("act(...) is not supported in production builds of React.")}t.Children={map:A,forEach:function(e,t,n){A(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return A(e,function(){t++}),t},toArray:function(e){return A(e,function(e){return e})||[]},only:function(e){if(!C(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=k,t.Fragment=o,t.Profiler=i,t.PureComponent=y,t.StrictMode=r,t.Suspense=u,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=I,t.act=L,t.cloneElement=function(e,t,a){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var o=f({},e.props),r=e.key,i=e.ref,s=e._owner;if(null!=t){if(void 0!==t.ref&&(i=t.ref,s=_.current),void 0!==t.key&&(r=""+t.key),e.type&&e.type.defaultProps)var c=e.type.defaultProps;for(l in t)j.call(t,l)&&!x.hasOwnProperty(l)&&(o[l]=void 0===t[l]&&void 0!==c?c[l]:t[l])}var l=arguments.length-2;if(1===l)o.children=a;else if(1<l){c=Array(l);for(var u=0;u<l;u++)c[u]=arguments[u+2];o.children=c}return{$$typeof:n,type:e.type,key:r,ref:i,props:o,_owner:s}},t.createContext=function(e){return(e={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:s,_context:e},e.Consumer=e},t.createElement=z,t.createFactory=function(e){var t=z.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:l,render:e}},t.isValidElement=C,t.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:P}},t.memo=function(e,t){return{$$typeof:p,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=T.transition;T.transition={};try{e()}finally{T.transition=t}},t.unstable_act=L,t.useCallback=function(e,t){return N.current.useCallback(e,t)},t.useContext=function(e){return N.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return N.current.useDeferredValue(e)},t.useEffect=function(e,t){return N.current.useEffect(e,t)},t.useId=function(){return N.current.useId()},t.useImperativeHandle=function(e,t,n){return N.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return N.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return N.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return N.current.useMemo(e,t)},t.useReducer=function(e,t,n){return N.current.useReducer(e,t,n)},t.useRef=function(e){return N.current.useRef(e)},t.useState=function(e){return N.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return N.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return N.current.useTransition()},t.version="18.3.1"},98:(e,t,n)=>{e.exports=n(15)},155:(e,t,n)=>{e.exports=n(18)},316:(e,t,n)=>{!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=n(396)},395:(e,t)=>{var n;!function(){var a={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=i(e,r(n)))}return e}function r(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)a.call(e,n)&&e[n]&&(t=i(t,n));return t}function i(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},396:(e,t,n)=>{var a=n(155),o=n(593);function r(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var i=new Set,s={};function c(e,t){l(e,t),l(e+"Capture",t)}function l(e,t){for(s[e]=t,e=0;e<t.length;e++)i.add(t[e])}var u=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),p=Object.prototype.hasOwnProperty,d=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,m={},h={};function f(e,t,n,a,o,r,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=a,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=r,this.removeEmptyString=i}var g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){g[e]=new f(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];g[t]=new f(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){g[e]=new f(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){g[e]=new f(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){g[e]=new f(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){g[e]=new f(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){g[e]=new f(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){g[e]=new f(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){g[e]=new f(e,5,!1,e.toLowerCase(),null,!1,!1)});var k=/[\-:]([a-z])/g;function b(e){return e[1].toUpperCase()}function y(e,t,n,a){var o=g.hasOwnProperty(t)?g[t]:null;(null!==o?0!==o.type:a||!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&(function(e,t,n,a){if(null==t||function(e,t,n,a){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!a&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,a))return!0;if(a)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,o,a)&&(n=null),a||null===o?function(e){return!!p.call(h,e)||!p.call(m,e)&&(d.test(e)?h[e]=!0:(m[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,a=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,a?e.setAttributeNS(a,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(k,b);g[t]=new f(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(k,b);g[t]=new f(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(k,b);g[t]=new f(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){g[e]=new f(e,1,!1,e.toLowerCase(),null,!1,!1)}),g.xlinkHref=new f("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){g[e]=new f(e,1,!1,e.toLowerCase(),null,!0,!0)});var v=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,w=Symbol.for("react.element"),j=Symbol.for("react.portal"),_=Symbol.for("react.fragment"),x=Symbol.for("react.strict_mode"),z=Symbol.for("react.profiler"),C=Symbol.for("react.provider"),S=Symbol.for("react.context"),E=Symbol.for("react.forward_ref"),O=Symbol.for("react.suspense"),A=Symbol.for("react.suspense_list"),P=Symbol.for("react.memo"),N=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var T=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var I=Symbol.iterator;function L(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=I&&e[I]||e["@@iterator"])?e:null}var D,R=Object.assign;function M(e){if(void 0===D)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);D=t&&t[1]||""}return"\n"+D+e}var $=!1;function B(e,t){if(!e||$)return"";$=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var a=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){a=e}e.call(t.prototype)}else{try{throw Error()}catch(e){a=e}e()}}catch(t){if(t&&a&&"string"==typeof t.stack){for(var o=t.stack.split("\n"),r=a.stack.split("\n"),i=o.length-1,s=r.length-1;1<=i&&0<=s&&o[i]!==r[s];)s--;for(;1<=i&&0<=s;i--,s--)if(o[i]!==r[s]){if(1!==i||1!==s)do{if(i--,0>--s||o[i]!==r[s]){var c="\n"+o[i].replace(" at new "," at ");return e.displayName&&c.includes("<anonymous>")&&(c=c.replace("<anonymous>",e.displayName)),c}}while(1<=i&&0<=s);break}}}finally{$=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?M(e):""}function U(e){switch(e.tag){case 5:return M(e.type);case 16:return M("Lazy");case 13:return M("Suspense");case 19:return M("SuspenseList");case 0:case 2:case 15:return B(e.type,!1);case 11:return B(e.type.render,!1);case 1:return B(e.type,!0);default:return""}}function F(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case _:return"Fragment";case j:return"Portal";case z:return"Profiler";case x:return"StrictMode";case O:return"Suspense";case A:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case S:return(e.displayName||"Context")+".Consumer";case C:return(e._context.displayName||"Context")+".Provider";case E:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case P:return null!==(t=e.displayName||null)?t:F(e.type)||"Memo";case N:t=e._payload,e=e._init;try{return F(e(t))}catch(e){}}return null}function V(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return F(t);case 8:return t===x?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t}return null}function H(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function K(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function q(e){e._valueTracker||(e._valueTracker=function(e){var t=K(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),a=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var o=n.get,r=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){a=""+e,r.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return a},setValue:function(e){a=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function G(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),a="";return e&&(a=K(e)?e.checked?"true":"false":e.value),(e=a)!==n&&(t.setValue(e),!0)}function Q(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function W(e,t){var n=t.checked;return R({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function Y(e,t){var n=null==t.defaultValue?"":t.defaultValue,a=null!=t.checked?t.checked:t.defaultChecked;n=H(null!=t.value?t.value:n),e._wrapperState={initialChecked:a,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function J(e,t){null!=(t=t.checked)&&y(e,"checked",t,!1)}function Z(e,t){J(e,t);var n=H(t.value),a=t.type;if(null!=n)"number"===a?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===a||"reset"===a)return void e.removeAttribute("value");t.hasOwnProperty("value")?ee(e,t.type,n):t.hasOwnProperty("defaultValue")&&ee(e,t.type,H(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function X(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var a=t.type;if(!("submit"!==a&&"reset"!==a||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ee(e,t,n){"number"===t&&Q(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var te=Array.isArray;function ne(e,t,n,a){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&a&&(e[n].defaultSelected=!0)}else{for(n=""+H(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(a&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function ae(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(r(91));return R({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function oe(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(r(92));if(te(n)){if(1<n.length)throw Error(r(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:H(n)}}function re(e,t){var n=H(t.value),a=H(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=a&&(e.defaultValue=""+a)}function ie(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function se(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function ce(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?se(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var le,ue,pe=(ue=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((le=le||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=le.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,a){MSApp.execUnsafeLocalFunction(function(){return ue(e,t)})}:ue);function de(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var me={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},he=["Webkit","ms","Moz","O"];function fe(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||me.hasOwnProperty(e)&&me[e]?(""+t).trim():t+"px"}function ge(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var a=0===n.indexOf("--"),o=fe(n,t[n],a);"float"===n&&(n="cssFloat"),a?e.setProperty(n,o):e[n]=o}}Object.keys(me).forEach(function(e){he.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),me[t]=me[e]})});var ke=R({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function be(e,t){if(t){if(ke[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(r(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(r(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(r(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(r(62))}}function ye(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var ve=null;function we(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var je=null,_e=null,xe=null;function ze(e){if(e=vo(e)){if("function"!=typeof je)throw Error(r(280));var t=e.stateNode;t&&(t=jo(t),je(e.stateNode,e.type,t))}}function Ce(e){_e?xe?xe.push(e):xe=[e]:_e=e}function Se(){if(_e){var e=_e,t=xe;if(xe=_e=null,ze(e),t)for(e=0;e<t.length;e++)ze(t[e])}}function Ee(e,t){return e(t)}function Oe(){}var Ae=!1;function Pe(e,t,n){if(Ae)return e(t,n);Ae=!0;try{return Ee(e,t,n)}finally{Ae=!1,(null!==_e||null!==xe)&&(Oe(),Se())}}function Ne(e,t){var n=e.stateNode;if(null===n)return null;var a=jo(n);if(null===a)return null;n=a[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(a=!a.disabled)||(a=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!a;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(r(231,t,typeof n));return n}var Te=!1;if(u)try{var Ie={};Object.defineProperty(Ie,"passive",{get:function(){Te=!0}}),window.addEventListener("test",Ie,Ie),window.removeEventListener("test",Ie,Ie)}catch(ue){Te=!1}function Le(e,t,n,a,o,r,i,s,c){var l=Array.prototype.slice.call(arguments,3);try{t.apply(n,l)}catch(e){this.onError(e)}}var De=!1,Re=null,Me=!1,$e=null,Be={onError:function(e){De=!0,Re=e}};function Ue(e,t,n,a,o,r,i,s,c){De=!1,Re=null,Le.apply(Be,arguments)}function Fe(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Ve(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&null!==(e=e.alternate)&&(t=e.memoizedState),null!==t)return t.dehydrated}return null}function He(e){if(Fe(e)!==e)throw Error(r(188))}function Ke(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=Fe(e)))throw Error(r(188));return t!==e?null:e}for(var n=e,a=t;;){var o=n.return;if(null===o)break;var i=o.alternate;if(null===i){if(null!==(a=o.return)){n=a;continue}break}if(o.child===i.child){for(i=o.child;i;){if(i===n)return He(o),e;if(i===a)return He(o),t;i=i.sibling}throw Error(r(188))}if(n.return!==a.return)n=o,a=i;else{for(var s=!1,c=o.child;c;){if(c===n){s=!0,n=o,a=i;break}if(c===a){s=!0,a=o,n=i;break}c=c.sibling}if(!s){for(c=i.child;c;){if(c===n){s=!0,n=i,a=o;break}if(c===a){s=!0,a=i,n=o;break}c=c.sibling}if(!s)throw Error(r(189))}}if(n.alternate!==a)throw Error(r(190))}if(3!==n.tag)throw Error(r(188));return n.stateNode.current===n?e:t}(e))?qe(e):null}function qe(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=qe(e);if(null!==t)return t;e=e.sibling}return null}var Ge=o.unstable_scheduleCallback,Qe=o.unstable_cancelCallback,We=o.unstable_shouldYield,Ye=o.unstable_requestPaint,Je=o.unstable_now,Ze=o.unstable_getCurrentPriorityLevel,Xe=o.unstable_ImmediatePriority,et=o.unstable_UserBlockingPriority,tt=o.unstable_NormalPriority,nt=o.unstable_LowPriority,at=o.unstable_IdlePriority,ot=null,rt=null,it=Math.clz32?Math.clz32:function(e){return 0===(e>>>=0)?32:31-(st(e)/ct|0)|0},st=Math.log,ct=Math.LN2,lt=64,ut=4194304;function pt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function dt(e,t){var n=e.pendingLanes;if(0===n)return 0;var a=0,o=e.suspendedLanes,r=e.pingedLanes,i=268435455&n;if(0!==i){var s=i&~o;0!==s?a=pt(s):0!==(r&=i)&&(a=pt(r))}else 0!==(i=n&~o)?a=pt(i):0!==r&&(a=pt(r));if(0===a)return 0;if(0!==t&&t!==a&&0===(t&o)&&((o=a&-a)>=(r=t&-t)||16===o&&4194240&r))return t;if(4&a&&(a|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=a;0<t;)o=1<<(n=31-it(t)),a|=e[n],t&=~o;return a}function mt(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function ht(e){return 0!=(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function ft(){var e=lt;return!(4194240&(lt<<=1))&&(lt=64),e}function gt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function kt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-it(t)]=n}function bt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var a=31-it(n),o=1<<a;o&t|e[a]&t&&(e[a]|=t),n&=~o}}var yt=0;function vt(e){return 1<(e&=-e)?4<e?268435455&e?16:536870912:4:1}var wt,jt,_t,xt,zt,Ct=!1,St=[],Et=null,Ot=null,At=null,Pt=new Map,Nt=new Map,Tt=[],It="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Lt(e,t){switch(e){case"focusin":case"focusout":Et=null;break;case"dragenter":case"dragleave":Ot=null;break;case"mouseover":case"mouseout":At=null;break;case"pointerover":case"pointerout":Pt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Nt.delete(t.pointerId)}}function Dt(e,t,n,a,o,r){return null===e||e.nativeEvent!==r?(e={blockedOn:t,domEventName:n,eventSystemFlags:a,nativeEvent:r,targetContainers:[o]},null!==t&&null!==(t=vo(t))&&jt(t),e):(e.eventSystemFlags|=a,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function Rt(e){var t=yo(e.target);if(null!==t){var n=Fe(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Ve(n)))return e.blockedOn=t,void zt(e.priority,function(){_t(n)})}else if(3===t&&n.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Mt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Wt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=vo(n))&&jt(t),e.blockedOn=n,!1;var a=new(n=e.nativeEvent).constructor(n.type,n);ve=a,n.target.dispatchEvent(a),ve=null,t.shift()}return!0}function $t(e,t,n){Mt(e)&&n.delete(t)}function Bt(){Ct=!1,null!==Et&&Mt(Et)&&(Et=null),null!==Ot&&Mt(Ot)&&(Ot=null),null!==At&&Mt(At)&&(At=null),Pt.forEach($t),Nt.forEach($t)}function Ut(e,t){e.blockedOn===t&&(e.blockedOn=null,Ct||(Ct=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,Bt)))}function Ft(e){function t(t){return Ut(t,e)}if(0<St.length){Ut(St[0],e);for(var n=1;n<St.length;n++){var a=St[n];a.blockedOn===e&&(a.blockedOn=null)}}for(null!==Et&&Ut(Et,e),null!==Ot&&Ut(Ot,e),null!==At&&Ut(At,e),Pt.forEach(t),Nt.forEach(t),n=0;n<Tt.length;n++)(a=Tt[n]).blockedOn===e&&(a.blockedOn=null);for(;0<Tt.length&&null===(n=Tt[0]).blockedOn;)Rt(n),null===n.blockedOn&&Tt.shift()}var Vt=v.ReactCurrentBatchConfig,Ht=!0;function Kt(e,t,n,a){var o=yt,r=Vt.transition;Vt.transition=null;try{yt=1,Gt(e,t,n,a)}finally{yt=o,Vt.transition=r}}function qt(e,t,n,a){var o=yt,r=Vt.transition;Vt.transition=null;try{yt=4,Gt(e,t,n,a)}finally{yt=o,Vt.transition=r}}function Gt(e,t,n,a){if(Ht){var o=Wt(e,t,n,a);if(null===o)Ha(e,t,a,Qt,n),Lt(e,a);else if(function(e,t,n,a,o){switch(t){case"focusin":return Et=Dt(Et,e,t,n,a,o),!0;case"dragenter":return Ot=Dt(Ot,e,t,n,a,o),!0;case"mouseover":return At=Dt(At,e,t,n,a,o),!0;case"pointerover":var r=o.pointerId;return Pt.set(r,Dt(Pt.get(r)||null,e,t,n,a,o)),!0;case"gotpointercapture":return r=o.pointerId,Nt.set(r,Dt(Nt.get(r)||null,e,t,n,a,o)),!0}return!1}(o,e,t,n,a))a.stopPropagation();else if(Lt(e,a),4&t&&-1<It.indexOf(e)){for(;null!==o;){var r=vo(o);if(null!==r&&wt(r),null===(r=Wt(e,t,n,a))&&Ha(e,t,a,Qt,n),r===o)break;o=r}null!==o&&a.stopPropagation()}else Ha(e,t,a,null,n)}}var Qt=null;function Wt(e,t,n,a){if(Qt=null,null!==(e=yo(e=we(a))))if(null===(t=Fe(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=Ve(t)))return e;e=null}else if(3===n){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Qt=e,null}function Yt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Ze()){case Xe:return 1;case et:return 4;case tt:case nt:return 16;case at:return 536870912;default:return 16}default:return 16}}var Jt=null,Zt=null,Xt=null;function en(){if(Xt)return Xt;var e,t,n=Zt,a=n.length,o="value"in Jt?Jt.value:Jt.textContent,r=o.length;for(e=0;e<a&&n[e]===o[e];e++);var i=a-e;for(t=1;t<=i&&n[a-t]===o[r-t];t++);return Xt=o.slice(e,1<t?1-t:void 0)}function tn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function nn(){return!0}function an(){return!1}function on(e){function t(t,n,a,o,r){for(var i in this._reactName=t,this._targetInst=a,this.type=n,this.nativeEvent=o,this.target=r,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(o):o[i]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?nn:an,this.isPropagationStopped=an,this}return R(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=nn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=nn)},persist:function(){},isPersistent:nn}),t}var rn,sn,cn,ln={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},un=on(ln),pn=R({},ln,{view:0,detail:0}),dn=on(pn),mn=R({},pn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==cn&&(cn&&"mousemove"===e.type?(rn=e.screenX-cn.screenX,sn=e.screenY-cn.screenY):sn=rn=0,cn=e),rn)},movementY:function(e){return"movementY"in e?e.movementY:sn}}),hn=on(mn),fn=on(R({},mn,{dataTransfer:0})),gn=on(R({},pn,{relatedTarget:0})),kn=on(R({},ln,{animationName:0,elapsedTime:0,pseudoElement:0})),bn=R({},ln,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),yn=on(bn),vn=on(R({},ln,{data:0})),wn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},jn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},_n={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function xn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=_n[e])&&!!t[e]}function zn(){return xn}var Cn=R({},pn,{key:function(e){if(e.key){var t=wn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=tn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?jn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zn,charCode:function(e){return"keypress"===e.type?tn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?tn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Sn=on(Cn),En=on(R({},mn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),On=on(R({},pn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zn})),An=on(R({},ln,{propertyName:0,elapsedTime:0,pseudoElement:0})),Pn=R({},mn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),Nn=on(Pn),Tn=[9,13,27,32],In=u&&"CompositionEvent"in window,Ln=null;u&&"documentMode"in document&&(Ln=document.documentMode);var Dn=u&&"TextEvent"in window&&!Ln,Rn=u&&(!In||Ln&&8<Ln&&11>=Ln),Mn=String.fromCharCode(32),$n=!1;function Bn(e,t){switch(e){case"keyup":return-1!==Tn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Un(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Fn=!1,Vn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Hn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Vn[e.type]:"textarea"===t}function Kn(e,t,n,a){Ce(a),0<(t=qa(t,"onChange")).length&&(n=new un("onChange","change",null,n,a),e.push({event:n,listeners:t}))}var qn=null,Gn=null;function Qn(e){Ma(e,0)}function Wn(e){if(G(wo(e)))return e}function Yn(e,t){if("change"===e)return t}var Jn=!1;if(u){var Zn;if(u){var Xn="oninput"in document;if(!Xn){var ea=document.createElement("div");ea.setAttribute("oninput","return;"),Xn="function"==typeof ea.oninput}Zn=Xn}else Zn=!1;Jn=Zn&&(!document.documentMode||9<document.documentMode)}function ta(){qn&&(qn.detachEvent("onpropertychange",na),Gn=qn=null)}function na(e){if("value"===e.propertyName&&Wn(Gn)){var t=[];Kn(t,Gn,e,we(e)),Pe(Qn,t)}}function aa(e,t,n){"focusin"===e?(ta(),Gn=n,(qn=t).attachEvent("onpropertychange",na)):"focusout"===e&&ta()}function oa(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Wn(Gn)}function ra(e,t){if("click"===e)return Wn(t)}function ia(e,t){if("input"===e||"change"===e)return Wn(t)}var sa="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t};function ca(e,t){if(sa(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),a=Object.keys(t);if(n.length!==a.length)return!1;for(a=0;a<n.length;a++){var o=n[a];if(!p.call(t,o)||!sa(e[o],t[o]))return!1}return!0}function la(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ua(e,t){var n,a=la(e);for(e=0;a;){if(3===a.nodeType){if(n=e+a.textContent.length,e<=t&&n>=t)return{node:a,offset:t-e};e=n}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=la(a)}}function pa(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?pa(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function da(){for(var e=window,t=Q();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(e){n=!1}if(!n)break;t=Q((e=t.contentWindow).document)}return t}function ma(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function ha(e){var t=da(),n=e.focusedElem,a=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&pa(n.ownerDocument.documentElement,n)){if(null!==a&&ma(n))if(t=a.start,void 0===(e=a.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var o=n.textContent.length,r=Math.min(a.start,o);a=void 0===a.end?r:Math.min(a.end,o),!e.extend&&r>a&&(o=a,a=r,r=o),o=ua(n,r);var i=ua(n,a);o&&i&&(1!==e.rangeCount||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&((t=t.createRange()).setStart(o.node,o.offset),e.removeAllRanges(),r>a?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"==typeof n.focus&&n.focus(),n=0;n<t.length;n++)(e=t[n]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var fa=u&&"documentMode"in document&&11>=document.documentMode,ga=null,ka=null,ba=null,ya=!1;function va(e,t,n){var a=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;ya||null==ga||ga!==Q(a)||(a="selectionStart"in(a=ga)&&ma(a)?{start:a.selectionStart,end:a.selectionEnd}:{anchorNode:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset},ba&&ca(ba,a)||(ba=a,0<(a=qa(ka,"onSelect")).length&&(t=new un("onSelect","select",null,t,n),e.push({event:t,listeners:a}),t.target=ga)))}function wa(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var ja={animationend:wa("Animation","AnimationEnd"),animationiteration:wa("Animation","AnimationIteration"),animationstart:wa("Animation","AnimationStart"),transitionend:wa("Transition","TransitionEnd")},_a={},xa={};function za(e){if(_a[e])return _a[e];if(!ja[e])return e;var t,n=ja[e];for(t in n)if(n.hasOwnProperty(t)&&t in xa)return _a[e]=n[t];return e}u&&(xa=document.createElement("div").style,"AnimationEvent"in window||(delete ja.animationend.animation,delete ja.animationiteration.animation,delete ja.animationstart.animation),"TransitionEvent"in window||delete ja.transitionend.transition);var Ca=za("animationend"),Sa=za("animationiteration"),Ea=za("animationstart"),Oa=za("transitionend"),Aa=new Map,Pa="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Na(e,t){Aa.set(e,t),c(t,[e])}for(var Ta=0;Ta<Pa.length;Ta++){var Ia=Pa[Ta];Na(Ia.toLowerCase(),"on"+(Ia[0].toUpperCase()+Ia.slice(1)))}Na(Ca,"onAnimationEnd"),Na(Sa,"onAnimationIteration"),Na(Ea,"onAnimationStart"),Na("dblclick","onDoubleClick"),Na("focusin","onFocus"),Na("focusout","onBlur"),Na(Oa,"onTransitionEnd"),l("onMouseEnter",["mouseout","mouseover"]),l("onMouseLeave",["mouseout","mouseover"]),l("onPointerEnter",["pointerout","pointerover"]),l("onPointerLeave",["pointerout","pointerover"]),c("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),c("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),c("onBeforeInput",["compositionend","keypress","textInput","paste"]),c("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var La="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Da=new Set("cancel close invalid load scroll toggle".split(" ").concat(La));function Ra(e,t,n){var a=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,a,o,i,s,c,l){if(Ue.apply(this,arguments),De){if(!De)throw Error(r(198));var u=Re;De=!1,Re=null,Me||(Me=!0,$e=u)}}(a,t,void 0,e),e.currentTarget=null}function Ma(e,t){t=!!(4&t);for(var n=0;n<e.length;n++){var a=e[n],o=a.event;a=a.listeners;e:{var r=void 0;if(t)for(var i=a.length-1;0<=i;i--){var s=a[i],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==r&&o.isPropagationStopped())break e;Ra(o,s,l),r=c}else for(i=0;i<a.length;i++){if(c=(s=a[i]).instance,l=s.currentTarget,s=s.listener,c!==r&&o.isPropagationStopped())break e;Ra(o,s,l),r=c}}}if(Me)throw e=$e,Me=!1,$e=null,e}function $a(e,t){var n=t[go];void 0===n&&(n=t[go]=new Set);var a=e+"__bubble";n.has(a)||(Va(t,e,2,!1),n.add(a))}function Ba(e,t,n){var a=0;t&&(a|=4),Va(n,e,a,t)}var Ua="_reactListening"+Math.random().toString(36).slice(2);function Fa(e){if(!e[Ua]){e[Ua]=!0,i.forEach(function(t){"selectionchange"!==t&&(Da.has(t)||Ba(t,!1,e),Ba(t,!0,e))});var t=9===e.nodeType?e:e.ownerDocument;null===t||t[Ua]||(t[Ua]=!0,Ba("selectionchange",!1,t))}}function Va(e,t,n,a){switch(Yt(t)){case 1:var o=Kt;break;case 4:o=qt;break;default:o=Gt}n=o.bind(null,t,n,e),o=void 0,!Te||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),a?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function Ha(e,t,n,a,o){var r=a;if(!(1&t||2&t||null===a))e:for(;;){if(null===a)return;var i=a.tag;if(3===i||4===i){var s=a.stateNode.containerInfo;if(s===o||8===s.nodeType&&s.parentNode===o)break;if(4===i)for(i=a.return;null!==i;){var c=i.tag;if((3===c||4===c)&&((c=i.stateNode.containerInfo)===o||8===c.nodeType&&c.parentNode===o))return;i=i.return}for(;null!==s;){if(null===(i=yo(s)))return;if(5===(c=i.tag)||6===c){a=r=i;continue e}s=s.parentNode}}a=a.return}Pe(function(){var a=r,o=we(n),i=[];e:{var s=Aa.get(e);if(void 0!==s){var c=un,l=e;switch(e){case"keypress":if(0===tn(n))break e;case"keydown":case"keyup":c=Sn;break;case"focusin":l="focus",c=gn;break;case"focusout":l="blur",c=gn;break;case"beforeblur":case"afterblur":c=gn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":c=hn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":c=fn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":c=On;break;case Ca:case Sa:case Ea:c=kn;break;case Oa:c=An;break;case"scroll":c=dn;break;case"wheel":c=Nn;break;case"copy":case"cut":case"paste":c=yn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":c=En}var u=!!(4&t),p=!u&&"scroll"===e,d=u?null!==s?s+"Capture":null:s;u=[];for(var m,h=a;null!==h;){var f=(m=h).stateNode;if(5===m.tag&&null!==f&&(m=f,null!==d&&null!=(f=Ne(h,d))&&u.push(Ka(h,f,m))),p)break;h=h.return}0<u.length&&(s=new c(s,l,null,n,o),i.push({event:s,listeners:u}))}}if(!(7&t)){if(c="mouseout"===e||"pointerout"===e,(!(s="mouseover"===e||"pointerover"===e)||n===ve||!(l=n.relatedTarget||n.fromElement)||!yo(l)&&!l[fo])&&(c||s)&&(s=o.window===o?o:(s=o.ownerDocument)?s.defaultView||s.parentWindow:window,c?(c=a,null!==(l=(l=n.relatedTarget||n.toElement)?yo(l):null)&&(l!==(p=Fe(l))||5!==l.tag&&6!==l.tag)&&(l=null)):(c=null,l=a),c!==l)){if(u=hn,f="onMouseLeave",d="onMouseEnter",h="mouse","pointerout"!==e&&"pointerover"!==e||(u=En,f="onPointerLeave",d="onPointerEnter",h="pointer"),p=null==c?s:wo(c),m=null==l?s:wo(l),(s=new u(f,h+"leave",c,n,o)).target=p,s.relatedTarget=m,f=null,yo(o)===a&&((u=new u(d,h+"enter",l,n,o)).target=m,u.relatedTarget=p,f=u),p=f,c&&l)e:{for(d=l,h=0,m=u=c;m;m=Ga(m))h++;for(m=0,f=d;f;f=Ga(f))m++;for(;0<h-m;)u=Ga(u),h--;for(;0<m-h;)d=Ga(d),m--;for(;h--;){if(u===d||null!==d&&u===d.alternate)break e;u=Ga(u),d=Ga(d)}u=null}else u=null;null!==c&&Qa(i,s,c,u,!1),null!==l&&null!==p&&Qa(i,p,l,u,!0)}if("select"===(c=(s=a?wo(a):window).nodeName&&s.nodeName.toLowerCase())||"input"===c&&"file"===s.type)var g=Yn;else if(Hn(s))if(Jn)g=ia;else{g=oa;var k=aa}else(c=s.nodeName)&&"input"===c.toLowerCase()&&("checkbox"===s.type||"radio"===s.type)&&(g=ra);switch(g&&(g=g(e,a))?Kn(i,g,n,o):(k&&k(e,s,a),"focusout"===e&&(k=s._wrapperState)&&k.controlled&&"number"===s.type&&ee(s,"number",s.value)),k=a?wo(a):window,e){case"focusin":(Hn(k)||"true"===k.contentEditable)&&(ga=k,ka=a,ba=null);break;case"focusout":ba=ka=ga=null;break;case"mousedown":ya=!0;break;case"contextmenu":case"mouseup":case"dragend":ya=!1,va(i,n,o);break;case"selectionchange":if(fa)break;case"keydown":case"keyup":va(i,n,o)}var b;if(In)e:{switch(e){case"compositionstart":var y="onCompositionStart";break e;case"compositionend":y="onCompositionEnd";break e;case"compositionupdate":y="onCompositionUpdate";break e}y=void 0}else Fn?Bn(e,n)&&(y="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(y="onCompositionStart");y&&(Rn&&"ko"!==n.locale&&(Fn||"onCompositionStart"!==y?"onCompositionEnd"===y&&Fn&&(b=en()):(Zt="value"in(Jt=o)?Jt.value:Jt.textContent,Fn=!0)),0<(k=qa(a,y)).length&&(y=new vn(y,e,null,n,o),i.push({event:y,listeners:k}),(b||null!==(b=Un(n)))&&(y.data=b))),(b=Dn?function(e,t){switch(e){case"compositionend":return Un(t);case"keypress":return 32!==t.which?null:($n=!0,Mn);case"textInput":return(e=t.data)===Mn&&$n?null:e;default:return null}}(e,n):function(e,t){if(Fn)return"compositionend"===e||!In&&Bn(e,t)?(e=en(),Xt=Zt=Jt=null,Fn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Rn&&"ko"!==t.locale?null:t.data}}(e,n))&&0<(a=qa(a,"onBeforeInput")).length&&(o=new vn("onBeforeInput","beforeinput",null,n,o),i.push({event:o,listeners:a}),o.data=b)}Ma(i,t)})}function Ka(e,t,n){return{instance:e,listener:t,currentTarget:n}}function qa(e,t){for(var n=t+"Capture",a=[];null!==e;){var o=e,r=o.stateNode;5===o.tag&&null!==r&&(o=r,null!=(r=Ne(e,n))&&a.unshift(Ka(e,r,o)),null!=(r=Ne(e,t))&&a.push(Ka(e,r,o))),e=e.return}return a}function Ga(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Qa(e,t,n,a,o){for(var r=t._reactName,i=[];null!==n&&n!==a;){var s=n,c=s.alternate,l=s.stateNode;if(null!==c&&c===a)break;5===s.tag&&null!==l&&(s=l,o?null!=(c=Ne(n,r))&&i.unshift(Ka(n,c,s)):o||null!=(c=Ne(n,r))&&i.push(Ka(n,c,s))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}var Wa=/\r\n?/g,Ya=/\u0000|\uFFFD/g;function Ja(e){return("string"==typeof e?e:""+e).replace(Wa,"\n").replace(Ya,"")}function Za(e,t,n){if(t=Ja(t),Ja(e)!==t&&n)throw Error(r(425))}function Xa(){}var eo=null,to=null;function no(e,t){return"textarea"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var ao="function"==typeof setTimeout?setTimeout:void 0,oo="function"==typeof clearTimeout?clearTimeout:void 0,ro="function"==typeof Promise?Promise:void 0,io="function"==typeof queueMicrotask?queueMicrotask:void 0!==ro?function(e){return ro.resolve(null).then(e).catch(so)}:ao;function so(e){setTimeout(function(){throw e})}function co(e,t){var n=t,a=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&8===o.nodeType)if("/$"===(n=o.data)){if(0===a)return e.removeChild(o),void Ft(t);a--}else"$"!==n&&"$?"!==n&&"$!"!==n||a++;n=o}while(n);Ft(t)}function lo(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function uo(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var po=Math.random().toString(36).slice(2),mo="__reactFiber$"+po,ho="__reactProps$"+po,fo="__reactContainer$"+po,go="__reactEvents$"+po,ko="__reactListeners$"+po,bo="__reactHandles$"+po;function yo(e){var t=e[mo];if(t)return t;for(var n=e.parentNode;n;){if(t=n[fo]||n[mo]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=uo(e);null!==e;){if(n=e[mo])return n;e=uo(e)}return t}n=(e=n).parentNode}return null}function vo(e){return!(e=e[mo]||e[fo])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function wo(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(r(33))}function jo(e){return e[ho]||null}var _o=[],xo=-1;function zo(e){return{current:e}}function Co(e){0>xo||(e.current=_o[xo],_o[xo]=null,xo--)}function So(e,t){xo++,_o[xo]=e.current,e.current=t}var Eo={},Oo=zo(Eo),Ao=zo(!1),Po=Eo;function No(e,t){var n=e.type.contextTypes;if(!n)return Eo;var a=e.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===t)return a.__reactInternalMemoizedMaskedChildContext;var o,r={};for(o in n)r[o]=t[o];return a&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=r),r}function To(e){return null!=e.childContextTypes}function Io(){Co(Ao),Co(Oo)}function Lo(e,t,n){if(Oo.current!==Eo)throw Error(r(168));So(Oo,t),So(Ao,n)}function Do(e,t,n){var a=e.stateNode;if(t=t.childContextTypes,"function"!=typeof a.getChildContext)return n;for(var o in a=a.getChildContext())if(!(o in t))throw Error(r(108,V(e)||"Unknown",o));return R({},n,a)}function Ro(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Eo,Po=Oo.current,So(Oo,e),So(Ao,Ao.current),!0}function Mo(e,t,n){var a=e.stateNode;if(!a)throw Error(r(169));n?(e=Do(e,t,Po),a.__reactInternalMemoizedMergedChildContext=e,Co(Ao),Co(Oo),So(Oo,e)):Co(Ao),So(Ao,n)}var $o=null,Bo=!1,Uo=!1;function Fo(e){null===$o?$o=[e]:$o.push(e)}function Vo(){if(!Uo&&null!==$o){Uo=!0;var e=0,t=yt;try{var n=$o;for(yt=1;e<n.length;e++){var a=n[e];do{a=a(!0)}while(null!==a)}$o=null,Bo=!1}catch(t){throw null!==$o&&($o=$o.slice(e+1)),Ge(Xe,Vo),t}finally{yt=t,Uo=!1}}return null}var Ho=[],Ko=0,qo=null,Go=0,Qo=[],Wo=0,Yo=null,Jo=1,Zo="";function Xo(e,t){Ho[Ko++]=Go,Ho[Ko++]=qo,qo=e,Go=t}function er(e,t,n){Qo[Wo++]=Jo,Qo[Wo++]=Zo,Qo[Wo++]=Yo,Yo=e;var a=Jo;e=Zo;var o=32-it(a)-1;a&=~(1<<o),n+=1;var r=32-it(t)+o;if(30<r){var i=o-o%5;r=(a&(1<<i)-1).toString(32),a>>=i,o-=i,Jo=1<<32-it(t)+o|n<<o|a,Zo=r+e}else Jo=1<<r|n<<o|a,Zo=e}function tr(e){null!==e.return&&(Xo(e,1),er(e,1,0))}function nr(e){for(;e===qo;)qo=Ho[--Ko],Ho[Ko]=null,Go=Ho[--Ko],Ho[Ko]=null;for(;e===Yo;)Yo=Qo[--Wo],Qo[Wo]=null,Zo=Qo[--Wo],Qo[Wo]=null,Jo=Qo[--Wo],Qo[Wo]=null}var ar=null,or=null,rr=!1,ir=null;function sr(e,t){var n=Pl(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,null===(t=e.deletions)?(e.deletions=[n],e.flags|=16):t.push(n)}function cr(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,ar=e,or=lo(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,ar=e,or=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Yo?{id:Jo,overflow:Zo}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Pl(18,null,null,0)).stateNode=t,n.return=e,e.child=n,ar=e,or=null,!0);default:return!1}}function lr(e){return!(!(1&e.mode)||128&e.flags)}function ur(e){if(rr){var t=or;if(t){var n=t;if(!cr(e,t)){if(lr(e))throw Error(r(418));t=lo(n.nextSibling);var a=ar;t&&cr(e,t)?sr(a,n):(e.flags=-4097&e.flags|2,rr=!1,ar=e)}}else{if(lr(e))throw Error(r(418));e.flags=-4097&e.flags|2,rr=!1,ar=e}}}function pr(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;ar=e}function dr(e){if(e!==ar)return!1;if(!rr)return pr(e),rr=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!no(e.type,e.memoizedProps)),t&&(t=or)){if(lr(e))throw mr(),Error(r(418));for(;t;)sr(e,t),t=lo(t.nextSibling)}if(pr(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(r(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){or=lo(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}or=null}}else or=ar?lo(e.stateNode.nextSibling):null;return!0}function mr(){for(var e=or;e;)e=lo(e.nextSibling)}function hr(){or=ar=null,rr=!1}function fr(e){null===ir?ir=[e]:ir.push(e)}var gr=v.ReactCurrentBatchConfig;function kr(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(r(309));var a=n.stateNode}if(!a)throw Error(r(147,e));var o=a,i=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===i?t.ref:(t=function(e){var t=o.refs;null===e?delete t[i]:t[i]=e},t._stringRef=i,t)}if("string"!=typeof e)throw Error(r(284));if(!n._owner)throw Error(r(290,e))}return e}function br(e,t){throw e=Object.prototype.toString.call(t),Error(r(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function yr(e){return(0,e._init)(e._payload)}function vr(e){function t(t,n){if(e){var a=t.deletions;null===a?(t.deletions=[n],t.flags|=16):a.push(n)}}function n(n,a){if(!e)return null;for(;null!==a;)t(n,a),a=a.sibling;return null}function a(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=Tl(e,t)).index=0,e.sibling=null,e}function i(t,n,a){return t.index=a,e?null!==(a=t.alternate)?(a=a.index)<n?(t.flags|=2,n):a:(t.flags|=2,n):(t.flags|=1048576,n)}function s(t){return e&&null===t.alternate&&(t.flags|=2),t}function c(e,t,n,a){return null===t||6!==t.tag?((t=Rl(n,e.mode,a)).return=e,t):((t=o(t,n)).return=e,t)}function l(e,t,n,a){var r=n.type;return r===_?p(e,t,n.props.children,a,n.key):null!==t&&(t.elementType===r||"object"==typeof r&&null!==r&&r.$$typeof===N&&yr(r)===t.type)?((a=o(t,n.props)).ref=kr(e,t,n),a.return=e,a):((a=Il(n.type,n.key,n.props,null,e.mode,a)).ref=kr(e,t,n),a.return=e,a)}function u(e,t,n,a){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Ml(n,e.mode,a)).return=e,t):((t=o(t,n.children||[])).return=e,t)}function p(e,t,n,a,r){return null===t||7!==t.tag?((t=Ll(n,e.mode,a,r)).return=e,t):((t=o(t,n)).return=e,t)}function d(e,t,n){if("string"==typeof t&&""!==t||"number"==typeof t)return(t=Rl(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case w:return(n=Il(t.type,t.key,t.props,null,e.mode,n)).ref=kr(e,null,t),n.return=e,n;case j:return(t=Ml(t,e.mode,n)).return=e,t;case N:return d(e,(0,t._init)(t._payload),n)}if(te(t)||L(t))return(t=Ll(t,e.mode,n,null)).return=e,t;br(e,t)}return null}function m(e,t,n,a){var o=null!==t?t.key:null;if("string"==typeof n&&""!==n||"number"==typeof n)return null!==o?null:c(e,t,""+n,a);if("object"==typeof n&&null!==n){switch(n.$$typeof){case w:return n.key===o?l(e,t,n,a):null;case j:return n.key===o?u(e,t,n,a):null;case N:return m(e,t,(o=n._init)(n._payload),a)}if(te(n)||L(n))return null!==o?null:p(e,t,n,a,null);br(e,n)}return null}function h(e,t,n,a,o){if("string"==typeof a&&""!==a||"number"==typeof a)return c(t,e=e.get(n)||null,""+a,o);if("object"==typeof a&&null!==a){switch(a.$$typeof){case w:return l(t,e=e.get(null===a.key?n:a.key)||null,a,o);case j:return u(t,e=e.get(null===a.key?n:a.key)||null,a,o);case N:return h(e,t,n,(0,a._init)(a._payload),o)}if(te(a)||L(a))return p(t,e=e.get(n)||null,a,o,null);br(t,a)}return null}function f(o,r,s,c){for(var l=null,u=null,p=r,f=r=0,g=null;null!==p&&f<s.length;f++){p.index>f?(g=p,p=null):g=p.sibling;var k=m(o,p,s[f],c);if(null===k){null===p&&(p=g);break}e&&p&&null===k.alternate&&t(o,p),r=i(k,r,f),null===u?l=k:u.sibling=k,u=k,p=g}if(f===s.length)return n(o,p),rr&&Xo(o,f),l;if(null===p){for(;f<s.length;f++)null!==(p=d(o,s[f],c))&&(r=i(p,r,f),null===u?l=p:u.sibling=p,u=p);return rr&&Xo(o,f),l}for(p=a(o,p);f<s.length;f++)null!==(g=h(p,o,f,s[f],c))&&(e&&null!==g.alternate&&p.delete(null===g.key?f:g.key),r=i(g,r,f),null===u?l=g:u.sibling=g,u=g);return e&&p.forEach(function(e){return t(o,e)}),rr&&Xo(o,f),l}function g(o,s,c,l){var u=L(c);if("function"!=typeof u)throw Error(r(150));if(null==(c=u.call(c)))throw Error(r(151));for(var p=u=null,f=s,g=s=0,k=null,b=c.next();null!==f&&!b.done;g++,b=c.next()){f.index>g?(k=f,f=null):k=f.sibling;var y=m(o,f,b.value,l);if(null===y){null===f&&(f=k);break}e&&f&&null===y.alternate&&t(o,f),s=i(y,s,g),null===p?u=y:p.sibling=y,p=y,f=k}if(b.done)return n(o,f),rr&&Xo(o,g),u;if(null===f){for(;!b.done;g++,b=c.next())null!==(b=d(o,b.value,l))&&(s=i(b,s,g),null===p?u=b:p.sibling=b,p=b);return rr&&Xo(o,g),u}for(f=a(o,f);!b.done;g++,b=c.next())null!==(b=h(f,o,g,b.value,l))&&(e&&null!==b.alternate&&f.delete(null===b.key?g:b.key),s=i(b,s,g),null===p?u=b:p.sibling=b,p=b);return e&&f.forEach(function(e){return t(o,e)}),rr&&Xo(o,g),u}return function e(a,r,i,c){if("object"==typeof i&&null!==i&&i.type===_&&null===i.key&&(i=i.props.children),"object"==typeof i&&null!==i){switch(i.$$typeof){case w:e:{for(var l=i.key,u=r;null!==u;){if(u.key===l){if((l=i.type)===_){if(7===u.tag){n(a,u.sibling),(r=o(u,i.props.children)).return=a,a=r;break e}}else if(u.elementType===l||"object"==typeof l&&null!==l&&l.$$typeof===N&&yr(l)===u.type){n(a,u.sibling),(r=o(u,i.props)).ref=kr(a,u,i),r.return=a,a=r;break e}n(a,u);break}t(a,u),u=u.sibling}i.type===_?((r=Ll(i.props.children,a.mode,c,i.key)).return=a,a=r):((c=Il(i.type,i.key,i.props,null,a.mode,c)).ref=kr(a,r,i),c.return=a,a=c)}return s(a);case j:e:{for(u=i.key;null!==r;){if(r.key===u){if(4===r.tag&&r.stateNode.containerInfo===i.containerInfo&&r.stateNode.implementation===i.implementation){n(a,r.sibling),(r=o(r,i.children||[])).return=a,a=r;break e}n(a,r);break}t(a,r),r=r.sibling}(r=Ml(i,a.mode,c)).return=a,a=r}return s(a);case N:return e(a,r,(u=i._init)(i._payload),c)}if(te(i))return f(a,r,i,c);if(L(i))return g(a,r,i,c);br(a,i)}return"string"==typeof i&&""!==i||"number"==typeof i?(i=""+i,null!==r&&6===r.tag?(n(a,r.sibling),(r=o(r,i)).return=a,a=r):(n(a,r),(r=Rl(i,a.mode,c)).return=a,a=r),s(a)):n(a,r)}}var wr=vr(!0),jr=vr(!1),_r=zo(null),xr=null,zr=null,Cr=null;function Sr(){Cr=zr=xr=null}function Er(e){var t=_r.current;Co(_r),e._currentValue=t}function Or(e,t,n){for(;null!==e;){var a=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==a&&(a.childLanes|=t)):null!==a&&(a.childLanes&t)!==t&&(a.childLanes|=t),e===n)break;e=e.return}}function Ar(e,t){xr=e,Cr=zr=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!==(e.lanes&t)&&(ys=!0),e.firstContext=null)}function Pr(e){var t=e._currentValue;if(Cr!==e)if(e={context:e,memoizedValue:t,next:null},null===zr){if(null===xr)throw Error(r(308));zr=e,xr.dependencies={lanes:0,firstContext:e}}else zr=zr.next=e;return t}var Nr=null;function Tr(e){null===Nr?Nr=[e]:Nr.push(e)}function Ir(e,t,n,a){var o=t.interleaved;return null===o?(n.next=n,Tr(t)):(n.next=o.next,o.next=n),t.interleaved=n,Lr(e,a)}function Lr(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}var Dr=!1;function Rr(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Mr(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function $r(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Br(e,t,n){var a=e.updateQueue;if(null===a)return null;if(a=a.shared,2&Ec){var o=a.pending;return null===o?t.next=t:(t.next=o.next,o.next=t),a.pending=t,Lr(e,n)}return null===(o=a.interleaved)?(t.next=t,Tr(a)):(t.next=o.next,o.next=t),a.interleaved=t,Lr(e,n)}function Ur(e,t,n){if(null!==(t=t.updateQueue)&&(t=t.shared,4194240&n)){var a=t.lanes;n|=a&=e.pendingLanes,t.lanes=n,bt(e,n)}}function Fr(e,t){var n=e.updateQueue,a=e.alternate;if(null!==a&&n===(a=a.updateQueue)){var o=null,r=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===r?o=r=i:r=r.next=i,n=n.next}while(null!==n);null===r?o=r=t:r=r.next=t}else o=r=t;return n={baseState:a.baseState,firstBaseUpdate:o,lastBaseUpdate:r,shared:a.shared,effects:a.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Vr(e,t,n,a){var o=e.updateQueue;Dr=!1;var r=o.firstBaseUpdate,i=o.lastBaseUpdate,s=o.shared.pending;if(null!==s){o.shared.pending=null;var c=s,l=c.next;c.next=null,null===i?r=l:i.next=l,i=c;var u=e.alternate;null!==u&&(s=(u=u.updateQueue).lastBaseUpdate)!==i&&(null===s?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c)}if(null!==r){var p=o.baseState;for(i=0,u=l=c=null,s=r;;){var d=s.lane,m=s.eventTime;if((a&d)===d){null!==u&&(u=u.next={eventTime:m,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var h=e,f=s;switch(d=t,m=n,f.tag){case 1:if("function"==typeof(h=f.payload)){p=h.call(m,p,d);break e}p=h;break e;case 3:h.flags=-65537&h.flags|128;case 0:if(null==(d="function"==typeof(h=f.payload)?h.call(m,p,d):h))break e;p=R({},p,d);break e;case 2:Dr=!0}}null!==s.callback&&0!==s.lane&&(e.flags|=64,null===(d=o.effects)?o.effects=[s]:d.push(s))}else m={eventTime:m,lane:d,tag:s.tag,payload:s.payload,callback:s.callback,next:null},null===u?(l=u=m,c=p):u=u.next=m,i|=d;if(null===(s=s.next)){if(null===(s=o.shared.pending))break;s=(d=s).next,d.next=null,o.lastBaseUpdate=d,o.shared.pending=null}}if(null===u&&(c=p),o.baseState=c,o.firstBaseUpdate=l,o.lastBaseUpdate=u,null!==(t=o.shared.interleaved)){o=t;do{i|=o.lane,o=o.next}while(o!==t)}else null===r&&(o.shared.lanes=0);Dc|=i,e.lanes=i,e.memoizedState=p}}function Hr(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var a=e[t],o=a.callback;if(null!==o){if(a.callback=null,a=n,"function"!=typeof o)throw Error(r(191,o));o.call(a)}}}var Kr={},qr=zo(Kr),Gr=zo(Kr),Qr=zo(Kr);function Wr(e){if(e===Kr)throw Error(r(174));return e}function Yr(e,t){switch(So(Qr,t),So(Gr,e),So(qr,Kr),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:ce(null,"");break;default:t=ce(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Co(qr),So(qr,t)}function Jr(){Co(qr),Co(Gr),Co(Qr)}function Zr(e){Wr(Qr.current);var t=Wr(qr.current),n=ce(t,e.type);t!==n&&(So(Gr,e),So(qr,n))}function Xr(e){Gr.current===e&&(Co(qr),Co(Gr))}var ei=zo(0);function ti(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(128&t.flags)return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ni=[];function ai(){for(var e=0;e<ni.length;e++)ni[e]._workInProgressVersionPrimary=null;ni.length=0}var oi=v.ReactCurrentDispatcher,ri=v.ReactCurrentBatchConfig,ii=0,si=null,ci=null,li=null,ui=!1,pi=!1,di=0,mi=0;function hi(){throw Error(r(321))}function fi(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!sa(e[n],t[n]))return!1;return!0}function gi(e,t,n,a,o,i){if(ii=i,si=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,oi.current=null===e||null===e.memoizedState?Xi:es,e=n(a,o),pi){i=0;do{if(pi=!1,di=0,25<=i)throw Error(r(301));i+=1,li=ci=null,t.updateQueue=null,oi.current=ts,e=n(a,o)}while(pi)}if(oi.current=Zi,t=null!==ci&&null!==ci.next,ii=0,li=ci=si=null,ui=!1,t)throw Error(r(300));return e}function ki(){var e=0!==di;return di=0,e}function bi(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===li?si.memoizedState=li=e:li=li.next=e,li}function yi(){if(null===ci){var e=si.alternate;e=null!==e?e.memoizedState:null}else e=ci.next;var t=null===li?si.memoizedState:li.next;if(null!==t)li=t,ci=e;else{if(null===e)throw Error(r(310));e={memoizedState:(ci=e).memoizedState,baseState:ci.baseState,baseQueue:ci.baseQueue,queue:ci.queue,next:null},null===li?si.memoizedState=li=e:li=li.next=e}return li}function vi(e,t){return"function"==typeof t?t(e):t}function wi(e){var t=yi(),n=t.queue;if(null===n)throw Error(r(311));n.lastRenderedReducer=e;var a=ci,o=a.baseQueue,i=n.pending;if(null!==i){if(null!==o){var s=o.next;o.next=i.next,i.next=s}a.baseQueue=o=i,n.pending=null}if(null!==o){i=o.next,a=a.baseState;var c=s=null,l=null,u=i;do{var p=u.lane;if((ii&p)===p)null!==l&&(l=l.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),a=u.hasEagerState?u.eagerState:e(a,u.action);else{var d={lane:p,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===l?(c=l=d,s=a):l=l.next=d,si.lanes|=p,Dc|=p}u=u.next}while(null!==u&&u!==i);null===l?s=a:l.next=c,sa(a,t.memoizedState)||(ys=!0),t.memoizedState=a,t.baseState=s,t.baseQueue=l,n.lastRenderedState=a}if(null!==(e=n.interleaved)){o=e;do{i=o.lane,si.lanes|=i,Dc|=i,o=o.next}while(o!==e)}else null===o&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function ji(e){var t=yi(),n=t.queue;if(null===n)throw Error(r(311));n.lastRenderedReducer=e;var a=n.dispatch,o=n.pending,i=t.memoizedState;if(null!==o){n.pending=null;var s=o=o.next;do{i=e(i,s.action),s=s.next}while(s!==o);sa(i,t.memoizedState)||(ys=!0),t.memoizedState=i,null===t.baseQueue&&(t.baseState=i),n.lastRenderedState=i}return[i,a]}function _i(){}function xi(e,t){var n=si,a=yi(),o=t(),i=!sa(a.memoizedState,o);if(i&&(a.memoizedState=o,ys=!0),a=a.queue,Di(Si.bind(null,n,a,e),[e]),a.getSnapshot!==t||i||null!==li&&1&li.memoizedState.tag){if(n.flags|=2048,Pi(9,Ci.bind(null,n,a,o,t),void 0,null),null===Oc)throw Error(r(349));30&ii||zi(n,t,o)}return o}function zi(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=si.updateQueue)?(t={lastEffect:null,stores:null},si.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function Ci(e,t,n,a){t.value=n,t.getSnapshot=a,Ei(t)&&Oi(e)}function Si(e,t,n){return n(function(){Ei(t)&&Oi(e)})}function Ei(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!sa(e,n)}catch(e){return!0}}function Oi(e){var t=Lr(e,1);null!==t&&nl(t,e,1,-1)}function Ai(e){var t=bi();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:vi,lastRenderedState:e},t.queue=e,e=e.dispatch=Qi.bind(null,si,e),[t.memoizedState,e]}function Pi(e,t,n,a){return e={tag:e,create:t,destroy:n,deps:a,next:null},null===(t=si.updateQueue)?(t={lastEffect:null,stores:null},si.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(a=n.next,n.next=e,e.next=a,t.lastEffect=e),e}function Ni(){return yi().memoizedState}function Ti(e,t,n,a){var o=bi();si.flags|=e,o.memoizedState=Pi(1|t,n,void 0,void 0===a?null:a)}function Ii(e,t,n,a){var o=yi();a=void 0===a?null:a;var r=void 0;if(null!==ci){var i=ci.memoizedState;if(r=i.destroy,null!==a&&fi(a,i.deps))return void(o.memoizedState=Pi(t,n,r,a))}si.flags|=e,o.memoizedState=Pi(1|t,n,r,a)}function Li(e,t){return Ti(8390656,8,e,t)}function Di(e,t){return Ii(2048,8,e,t)}function Ri(e,t){return Ii(4,2,e,t)}function Mi(e,t){return Ii(4,4,e,t)}function $i(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Bi(e,t,n){return n=null!=n?n.concat([e]):null,Ii(4,4,$i.bind(null,t,e),n)}function Ui(){}function Fi(e,t){var n=yi();t=void 0===t?null:t;var a=n.memoizedState;return null!==a&&null!==t&&fi(t,a[1])?a[0]:(n.memoizedState=[e,t],e)}function Vi(e,t){var n=yi();t=void 0===t?null:t;var a=n.memoizedState;return null!==a&&null!==t&&fi(t,a[1])?a[0]:(e=e(),n.memoizedState=[e,t],e)}function Hi(e,t,n){return 21&ii?(sa(n,t)||(n=ft(),si.lanes|=n,Dc|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,ys=!0),e.memoizedState=n)}function Ki(e,t){var n=yt;yt=0!==n&&4>n?n:4,e(!0);var a=ri.transition;ri.transition={};try{e(!1),t()}finally{yt=n,ri.transition=a}}function qi(){return yi().memoizedState}function Gi(e,t,n){var a=tl(e);n={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null},Wi(e)?Yi(t,n):null!==(n=Ir(e,t,n,a))&&(nl(n,e,a,el()),Ji(n,t,a))}function Qi(e,t,n){var a=tl(e),o={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null};if(Wi(e))Yi(t,o);else{var r=e.alternate;if(0===e.lanes&&(null===r||0===r.lanes)&&null!==(r=t.lastRenderedReducer))try{var i=t.lastRenderedState,s=r(i,n);if(o.hasEagerState=!0,o.eagerState=s,sa(s,i)){var c=t.interleaved;return null===c?(o.next=o,Tr(t)):(o.next=c.next,c.next=o),void(t.interleaved=o)}}catch(e){}null!==(n=Ir(e,t,o,a))&&(nl(n,e,a,o=el()),Ji(n,t,a))}}function Wi(e){var t=e.alternate;return e===si||null!==t&&t===si}function Yi(e,t){pi=ui=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Ji(e,t,n){if(4194240&n){var a=t.lanes;n|=a&=e.pendingLanes,t.lanes=n,bt(e,n)}}var Zi={readContext:Pr,useCallback:hi,useContext:hi,useEffect:hi,useImperativeHandle:hi,useInsertionEffect:hi,useLayoutEffect:hi,useMemo:hi,useReducer:hi,useRef:hi,useState:hi,useDebugValue:hi,useDeferredValue:hi,useTransition:hi,useMutableSource:hi,useSyncExternalStore:hi,useId:hi,unstable_isNewReconciler:!1},Xi={readContext:Pr,useCallback:function(e,t){return bi().memoizedState=[e,void 0===t?null:t],e},useContext:Pr,useEffect:Li,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Ti(4194308,4,$i.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ti(4194308,4,e,t)},useInsertionEffect:function(e,t){return Ti(4,2,e,t)},useMemo:function(e,t){var n=bi();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var a=bi();return t=void 0!==n?n(t):t,a.memoizedState=a.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},a.queue=e,e=e.dispatch=Gi.bind(null,si,e),[a.memoizedState,e]},useRef:function(e){return e={current:e},bi().memoizedState=e},useState:Ai,useDebugValue:Ui,useDeferredValue:function(e){return bi().memoizedState=e},useTransition:function(){var e=Ai(!1),t=e[0];return e=Ki.bind(null,e[1]),bi().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var a=si,o=bi();if(rr){if(void 0===n)throw Error(r(407));n=n()}else{if(n=t(),null===Oc)throw Error(r(349));30&ii||zi(a,t,n)}o.memoizedState=n;var i={value:n,getSnapshot:t};return o.queue=i,Li(Si.bind(null,a,i,e),[e]),a.flags|=2048,Pi(9,Ci.bind(null,a,i,n,t),void 0,null),n},useId:function(){var e=bi(),t=Oc.identifierPrefix;if(rr){var n=Zo;t=":"+t+"R"+(n=(Jo&~(1<<32-it(Jo)-1)).toString(32)+n),0<(n=di++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=mi++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},es={readContext:Pr,useCallback:Fi,useContext:Pr,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Ri,useLayoutEffect:Mi,useMemo:Vi,useReducer:wi,useRef:Ni,useState:function(){return wi(vi)},useDebugValue:Ui,useDeferredValue:function(e){return Hi(yi(),ci.memoizedState,e)},useTransition:function(){return[wi(vi)[0],yi().memoizedState]},useMutableSource:_i,useSyncExternalStore:xi,useId:qi,unstable_isNewReconciler:!1},ts={readContext:Pr,useCallback:Fi,useContext:Pr,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Ri,useLayoutEffect:Mi,useMemo:Vi,useReducer:ji,useRef:Ni,useState:function(){return ji(vi)},useDebugValue:Ui,useDeferredValue:function(e){var t=yi();return null===ci?t.memoizedState=e:Hi(t,ci.memoizedState,e)},useTransition:function(){return[ji(vi)[0],yi().memoizedState]},useMutableSource:_i,useSyncExternalStore:xi,useId:qi,unstable_isNewReconciler:!1};function ns(e,t){if(e&&e.defaultProps){for(var n in t=R({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}function as(e,t,n,a){n=null==(n=n(a,t=e.memoizedState))?t:R({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var os={isMounted:function(e){return!!(e=e._reactInternals)&&Fe(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var a=el(),o=tl(e),r=$r(a,o);r.payload=t,null!=n&&(r.callback=n),null!==(t=Br(e,r,o))&&(nl(t,e,o,a),Ur(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var a=el(),o=tl(e),r=$r(a,o);r.tag=1,r.payload=t,null!=n&&(r.callback=n),null!==(t=Br(e,r,o))&&(nl(t,e,o,a),Ur(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=el(),a=tl(e),o=$r(n,a);o.tag=2,null!=t&&(o.callback=t),null!==(t=Br(e,o,a))&&(nl(t,e,a,n),Ur(t,e,a))}};function rs(e,t,n,a,o,r,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(a,r,i):!(t.prototype&&t.prototype.isPureReactComponent&&ca(n,a)&&ca(o,r))}function is(e,t,n){var a=!1,o=Eo,r=t.contextType;return"object"==typeof r&&null!==r?r=Pr(r):(o=To(t)?Po:Oo.current,r=(a=null!=(a=t.contextTypes))?No(e,o):Eo),t=new t(n,r),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=os,e.stateNode=t,t._reactInternals=e,a&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=r),t}function ss(e,t,n,a){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,a),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,a),t.state!==e&&os.enqueueReplaceState(t,t.state,null)}function cs(e,t,n,a){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs={},Rr(e);var r=t.contextType;"object"==typeof r&&null!==r?o.context=Pr(r):(r=To(t)?Po:Oo.current,o.context=No(e,r)),o.state=e.memoizedState,"function"==typeof(r=t.getDerivedStateFromProps)&&(as(e,t,r,n),o.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof o.getSnapshotBeforeUpdate||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||(t=o.state,"function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&os.enqueueReplaceState(o,o.state,null),Vr(e,n,o,a),o.state=e.memoizedState),"function"==typeof o.componentDidMount&&(e.flags|=4194308)}function ls(e,t){try{var n="",a=t;do{n+=U(a),a=a.return}while(a);var o=n}catch(e){o="\nError generating stack: "+e.message+"\n"+e.stack}return{value:e,source:t,stack:o,digest:null}}function us(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function ps(e,t){try{console.error(t.value)}catch(e){setTimeout(function(){throw e})}}var ds="function"==typeof WeakMap?WeakMap:Map;function ms(e,t,n){(n=$r(-1,n)).tag=3,n.payload={element:null};var a=t.value;return n.callback=function(){Hc||(Hc=!0,Kc=a),ps(0,t)},n}function hs(e,t,n){(n=$r(-1,n)).tag=3;var a=e.type.getDerivedStateFromError;if("function"==typeof a){var o=t.value;n.payload=function(){return a(o)},n.callback=function(){ps(0,t)}}var r=e.stateNode;return null!==r&&"function"==typeof r.componentDidCatch&&(n.callback=function(){ps(0,t),"function"!=typeof a&&(null===qc?qc=new Set([this]):qc.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function fs(e,t,n){var a=e.pingCache;if(null===a){a=e.pingCache=new ds;var o=new Set;a.set(t,o)}else void 0===(o=a.get(t))&&(o=new Set,a.set(t,o));o.has(n)||(o.add(n),e=zl.bind(null,e,t,n),t.then(e,e))}function gs(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function ks(e,t,n,a,o){return 1&e.mode?(e.flags|=65536,e.lanes=o,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=$r(-1,1)).tag=2,Br(n,t,1))),n.lanes|=1),e)}var bs=v.ReactCurrentOwner,ys=!1;function vs(e,t,n,a){t.child=null===e?jr(t,null,n,a):wr(t,e.child,n,a)}function ws(e,t,n,a,o){n=n.render;var r=t.ref;return Ar(t,o),a=gi(e,t,n,a,r,o),n=ki(),null===e||ys?(rr&&n&&tr(t),t.flags|=1,vs(e,t,a,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Hs(e,t,o))}function js(e,t,n,a,o){if(null===e){var r=n.type;return"function"!=typeof r||Nl(r)||void 0!==r.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Il(n.type,null,a,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=r,_s(e,t,r,a,o))}if(r=e.child,0===(e.lanes&o)){var i=r.memoizedProps;if((n=null!==(n=n.compare)?n:ca)(i,a)&&e.ref===t.ref)return Hs(e,t,o)}return t.flags|=1,(e=Tl(r,a)).ref=t.ref,e.return=t,t.child=e}function _s(e,t,n,a,o){if(null!==e){var r=e.memoizedProps;if(ca(r,a)&&e.ref===t.ref){if(ys=!1,t.pendingProps=a=r,0===(e.lanes&o))return t.lanes=e.lanes,Hs(e,t,o);131072&e.flags&&(ys=!0)}}return Cs(e,t,n,a,o)}function xs(e,t,n){var a=t.pendingProps,o=a.children,r=null!==e?e.memoizedState:null;if("hidden"===a.mode)if(1&t.mode){if(!(1073741824&n))return e=null!==r?r.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,So(Tc,Nc),Nc|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},a=null!==r?r.baseLanes:n,So(Tc,Nc),Nc|=a}else t.memoizedState={baseLanes:0,cachePool:null,transitions:null},So(Tc,Nc),Nc|=n;else null!==r?(a=r.baseLanes|n,t.memoizedState=null):a=n,So(Tc,Nc),Nc|=a;return vs(e,t,o,n),t.child}function zs(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Cs(e,t,n,a,o){var r=To(n)?Po:Oo.current;return r=No(t,r),Ar(t,o),n=gi(e,t,n,a,r,o),a=ki(),null===e||ys?(rr&&a&&tr(t),t.flags|=1,vs(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Hs(e,t,o))}function Ss(e,t,n,a,o){if(To(n)){var r=!0;Ro(t)}else r=!1;if(Ar(t,o),null===t.stateNode)Vs(e,t),is(t,n,a),cs(t,n,a,o),a=!0;else if(null===e){var i=t.stateNode,s=t.memoizedProps;i.props=s;var c=i.context,l=n.contextType;l="object"==typeof l&&null!==l?Pr(l):No(t,l=To(n)?Po:Oo.current);var u=n.getDerivedStateFromProps,p="function"==typeof u||"function"==typeof i.getSnapshotBeforeUpdate;p||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==a||c!==l)&&ss(t,i,a,l),Dr=!1;var d=t.memoizedState;i.state=d,Vr(t,a,i,o),c=t.memoizedState,s!==a||d!==c||Ao.current||Dr?("function"==typeof u&&(as(t,n,u,a),c=t.memoizedState),(s=Dr||rs(t,n,s,a,d,c,l))?(p||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4194308)):("function"==typeof i.componentDidMount&&(t.flags|=4194308),t.memoizedProps=a,t.memoizedState=c),i.props=a,i.state=c,i.context=l,a=s):("function"==typeof i.componentDidMount&&(t.flags|=4194308),a=!1)}else{i=t.stateNode,Mr(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:ns(t.type,s),i.props=l,p=t.pendingProps,d=i.context,c="object"==typeof(c=n.contextType)&&null!==c?Pr(c):No(t,c=To(n)?Po:Oo.current);var m=n.getDerivedStateFromProps;(u="function"==typeof m||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==p||d!==c)&&ss(t,i,a,c),Dr=!1,d=t.memoizedState,i.state=d,Vr(t,a,i,o);var h=t.memoizedState;s!==p||d!==h||Ao.current||Dr?("function"==typeof m&&(as(t,n,m,a),h=t.memoizedState),(l=Dr||rs(t,n,l,a,d,h,c)||!1)?(u||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(a,h,c),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(a,h,c)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),t.memoizedProps=a,t.memoizedState=h),i.props=a,i.state=h,i.context=c,a=l):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),a=!1)}return Es(e,t,n,a,r,o)}function Es(e,t,n,a,o,r){zs(e,t);var i=!!(128&t.flags);if(!a&&!i)return o&&Mo(t,n,!1),Hs(e,t,r);a=t.stateNode,bs.current=t;var s=i&&"function"!=typeof n.getDerivedStateFromError?null:a.render();return t.flags|=1,null!==e&&i?(t.child=wr(t,e.child,null,r),t.child=wr(t,null,s,r)):vs(e,t,s,r),t.memoizedState=a.state,o&&Mo(t,n,!0),t.child}function Os(e){var t=e.stateNode;t.pendingContext?Lo(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Lo(0,t.context,!1),Yr(e,t.containerInfo)}function As(e,t,n,a,o){return hr(),fr(o),t.flags|=256,vs(e,t,n,a),t.child}var Ps,Ns,Ts,Is,Ls={dehydrated:null,treeContext:null,retryLane:0};function Ds(e){return{baseLanes:e,cachePool:null,transitions:null}}function Rs(e,t,n){var a,o=t.pendingProps,i=ei.current,s=!1,c=!!(128&t.flags);if((a=c)||(a=(null===e||null!==e.memoizedState)&&!!(2&i)),a?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(i|=1),So(ei,1&i),null===e)return ur(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(1&t.mode?"$!"===e.data?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(c=o.children,e=o.fallback,s?(o=t.mode,s=t.child,c={mode:"hidden",children:c},1&o||null===s?s=Dl(c,o,0,null):(s.childLanes=0,s.pendingProps=c),e=Ll(e,o,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ds(n),t.memoizedState=Ls,e):Ms(t,c));if(null!==(i=e.memoizedState)&&null!==(a=i.dehydrated))return function(e,t,n,a,o,i,s){if(n)return 256&t.flags?(t.flags&=-257,$s(e,t,s,a=us(Error(r(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(i=a.fallback,o=t.mode,a=Dl({mode:"visible",children:a.children},o,0,null),(i=Ll(i,o,s,null)).flags|=2,a.return=t,i.return=t,a.sibling=i,t.child=a,1&t.mode&&wr(t,e.child,null,s),t.child.memoizedState=Ds(s),t.memoizedState=Ls,i);if(!(1&t.mode))return $s(e,t,s,null);if("$!"===o.data){if(a=o.nextSibling&&o.nextSibling.dataset)var c=a.dgst;return a=c,$s(e,t,s,a=us(i=Error(r(419)),a,void 0))}if(c=0!==(s&e.childLanes),ys||c){if(null!==(a=Oc)){switch(s&-s){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}0!==(o=0!==(o&(a.suspendedLanes|s))?0:o)&&o!==i.retryLane&&(i.retryLane=o,Lr(e,o),nl(a,e,o,-1))}return fl(),$s(e,t,s,a=us(Error(r(421))))}return"$?"===o.data?(t.flags|=128,t.child=e.child,t=Sl.bind(null,e),o._reactRetry=t,null):(e=i.treeContext,or=lo(o.nextSibling),ar=t,rr=!0,ir=null,null!==e&&(Qo[Wo++]=Jo,Qo[Wo++]=Zo,Qo[Wo++]=Yo,Jo=e.id,Zo=e.overflow,Yo=t),(t=Ms(t,a.children)).flags|=4096,t)}(e,t,c,o,a,i,n);if(s){s=o.fallback,c=t.mode,a=(i=e.child).sibling;var l={mode:"hidden",children:o.children};return 1&c||t.child===i?(o=Tl(i,l)).subtreeFlags=14680064&i.subtreeFlags:((o=t.child).childLanes=0,o.pendingProps=l,t.deletions=null),null!==a?s=Tl(a,s):(s=Ll(s,c,n,null)).flags|=2,s.return=t,o.return=t,o.sibling=s,t.child=o,o=s,s=t.child,c=null===(c=e.child.memoizedState)?Ds(n):{baseLanes:c.baseLanes|n,cachePool:null,transitions:c.transitions},s.memoizedState=c,s.childLanes=e.childLanes&~n,t.memoizedState=Ls,o}return e=(s=e.child).sibling,o=Tl(s,{mode:"visible",children:o.children}),!(1&t.mode)&&(o.lanes=n),o.return=t,o.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=o,t.memoizedState=null,o}function Ms(e,t){return(t=Dl({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function $s(e,t,n,a){return null!==a&&fr(a),wr(t,e.child,null,n),(e=Ms(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Bs(e,t,n){e.lanes|=t;var a=e.alternate;null!==a&&(a.lanes|=t),Or(e.return,t,n)}function Us(e,t,n,a,o){var r=e.memoizedState;null===r?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:a,tail:n,tailMode:o}:(r.isBackwards=t,r.rendering=null,r.renderingStartTime=0,r.last=a,r.tail=n,r.tailMode=o)}function Fs(e,t,n){var a=t.pendingProps,o=a.revealOrder,r=a.tail;if(vs(e,t,a.children,n),2&(a=ei.current))a=1&a|2,t.flags|=128;else{if(null!==e&&128&e.flags)e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Bs(e,n,t);else if(19===e.tag)Bs(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}a&=1}if(So(ei,a),1&t.mode)switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===ti(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),Us(t,!1,o,n,r);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===ti(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}Us(t,!0,n,null,r);break;case"together":Us(t,!1,null,null,void 0);break;default:t.memoizedState=null}else t.memoizedState=null;return t.child}function Vs(e,t){!(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Hs(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Dc|=t.lanes,0===(n&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(r(153));if(null!==t.child){for(n=Tl(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Tl(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function Ks(e,t){if(!rr)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var a=null;null!==n;)null!==n.alternate&&(a=n),n=n.sibling;null===a?t||null===e.tail?e.tail=null:e.tail.sibling=null:a.sibling=null}}function qs(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,a=0;if(t)for(var o=e.child;null!==o;)n|=o.lanes|o.childLanes,a|=14680064&o.subtreeFlags,a|=14680064&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)n|=o.lanes|o.childLanes,a|=o.subtreeFlags,a|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=a,e.childLanes=n,t}function Gs(e,t,n){var a=t.pendingProps;switch(nr(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return qs(t),null;case 1:case 17:return To(t.type)&&Io(),qs(t),null;case 3:return a=t.stateNode,Jr(),Co(Ao),Co(Oo),ai(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),null!==e&&null!==e.child||(dr(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&!(256&t.flags)||(t.flags|=1024,null!==ir&&(il(ir),ir=null))),Ns(e,t),qs(t),null;case 5:Xr(t);var o=Wr(Qr.current);if(n=t.type,null!==e&&null!=t.stateNode)Ts(e,t,n,a,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!a){if(null===t.stateNode)throw Error(r(166));return qs(t),null}if(e=Wr(qr.current),dr(t)){a=t.stateNode,n=t.type;var i=t.memoizedProps;switch(a[mo]=t,a[ho]=i,e=!!(1&t.mode),n){case"dialog":$a("cancel",a),$a("close",a);break;case"iframe":case"object":case"embed":$a("load",a);break;case"video":case"audio":for(o=0;o<La.length;o++)$a(La[o],a);break;case"source":$a("error",a);break;case"img":case"image":case"link":$a("error",a),$a("load",a);break;case"details":$a("toggle",a);break;case"input":Y(a,i),$a("invalid",a);break;case"select":a._wrapperState={wasMultiple:!!i.multiple},$a("invalid",a);break;case"textarea":oe(a,i),$a("invalid",a)}for(var c in be(n,i),o=null,i)if(i.hasOwnProperty(c)){var l=i[c];"children"===c?"string"==typeof l?a.textContent!==l&&(!0!==i.suppressHydrationWarning&&Za(a.textContent,l,e),o=["children",l]):"number"==typeof l&&a.textContent!==""+l&&(!0!==i.suppressHydrationWarning&&Za(a.textContent,l,e),o=["children",""+l]):s.hasOwnProperty(c)&&null!=l&&"onScroll"===c&&$a("scroll",a)}switch(n){case"input":q(a),X(a,i,!0);break;case"textarea":q(a),ie(a);break;case"select":case"option":break;default:"function"==typeof i.onClick&&(a.onclick=Xa)}a=o,t.updateQueue=a,null!==a&&(t.flags|=4)}else{c=9===o.nodeType?o:o.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=se(n)),"http://www.w3.org/1999/xhtml"===e?"script"===n?((e=c.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof a.is?e=c.createElement(n,{is:a.is}):(e=c.createElement(n),"select"===n&&(c=e,a.multiple?c.multiple=!0:a.size&&(c.size=a.size))):e=c.createElementNS(e,n),e[mo]=t,e[ho]=a,Ps(e,t,!1,!1),t.stateNode=e;e:{switch(c=ye(n,a),n){case"dialog":$a("cancel",e),$a("close",e),o=a;break;case"iframe":case"object":case"embed":$a("load",e),o=a;break;case"video":case"audio":for(o=0;o<La.length;o++)$a(La[o],e);o=a;break;case"source":$a("error",e),o=a;break;case"img":case"image":case"link":$a("error",e),$a("load",e),o=a;break;case"details":$a("toggle",e),o=a;break;case"input":Y(e,a),o=W(e,a),$a("invalid",e);break;case"option":default:o=a;break;case"select":e._wrapperState={wasMultiple:!!a.multiple},o=R({},a,{value:void 0}),$a("invalid",e);break;case"textarea":oe(e,a),o=ae(e,a),$a("invalid",e)}for(i in be(n,o),l=o)if(l.hasOwnProperty(i)){var u=l[i];"style"===i?ge(e,u):"dangerouslySetInnerHTML"===i?null!=(u=u?u.__html:void 0)&&pe(e,u):"children"===i?"string"==typeof u?("textarea"!==n||""!==u)&&de(e,u):"number"==typeof u&&de(e,""+u):"suppressContentEditableWarning"!==i&&"suppressHydrationWarning"!==i&&"autoFocus"!==i&&(s.hasOwnProperty(i)?null!=u&&"onScroll"===i&&$a("scroll",e):null!=u&&y(e,i,u,c))}switch(n){case"input":q(e),X(e,a,!1);break;case"textarea":q(e),ie(e);break;case"option":null!=a.value&&e.setAttribute("value",""+H(a.value));break;case"select":e.multiple=!!a.multiple,null!=(i=a.value)?ne(e,!!a.multiple,i,!1):null!=a.defaultValue&&ne(e,!!a.multiple,a.defaultValue,!0);break;default:"function"==typeof o.onClick&&(e.onclick=Xa)}switch(n){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}}a&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return qs(t),null;case 6:if(e&&null!=t.stateNode)Is(e,t,e.memoizedProps,a);else{if("string"!=typeof a&&null===t.stateNode)throw Error(r(166));if(n=Wr(Qr.current),Wr(qr.current),dr(t)){if(a=t.stateNode,n=t.memoizedProps,a[mo]=t,(i=a.nodeValue!==n)&&null!==(e=ar))switch(e.tag){case 3:Za(a.nodeValue,n,!!(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Za(a.nodeValue,n,!!(1&e.mode))}i&&(t.flags|=4)}else(a=(9===n.nodeType?n:n.ownerDocument).createTextNode(a))[mo]=t,t.stateNode=a}return qs(t),null;case 13:if(Co(ei),a=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(rr&&null!==or&&1&t.mode&&!(128&t.flags))mr(),hr(),t.flags|=98560,i=!1;else if(i=dr(t),null!==a&&null!==a.dehydrated){if(null===e){if(!i)throw Error(r(318));if(!(i=null!==(i=t.memoizedState)?i.dehydrated:null))throw Error(r(317));i[mo]=t}else hr(),!(128&t.flags)&&(t.memoizedState=null),t.flags|=4;qs(t),i=!1}else null!==ir&&(il(ir),ir=null),i=!0;if(!i)return 65536&t.flags?t:null}return 128&t.flags?(t.lanes=n,t):((a=null!==a)!=(null!==e&&null!==e.memoizedState)&&a&&(t.child.flags|=8192,1&t.mode&&(null===e||1&ei.current?0===Ic&&(Ic=3):fl())),null!==t.updateQueue&&(t.flags|=4),qs(t),null);case 4:return Jr(),Ns(e,t),null===e&&Fa(t.stateNode.containerInfo),qs(t),null;case 10:return Er(t.type._context),qs(t),null;case 19:if(Co(ei),null===(i=t.memoizedState))return qs(t),null;if(a=!!(128&t.flags),null===(c=i.rendering))if(a)Ks(i,!1);else{if(0!==Ic||null!==e&&128&e.flags)for(e=t.child;null!==e;){if(null!==(c=ti(e))){for(t.flags|=128,Ks(i,!1),null!==(a=c.updateQueue)&&(t.updateQueue=a,t.flags|=4),t.subtreeFlags=0,a=n,n=t.child;null!==n;)e=a,(i=n).flags&=14680066,null===(c=i.alternate)?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=c.childLanes,i.lanes=c.lanes,i.child=c.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=c.memoizedProps,i.memoizedState=c.memoizedState,i.updateQueue=c.updateQueue,i.type=c.type,e=c.dependencies,i.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return So(ei,1&ei.current|2),t.child}e=e.sibling}null!==i.tail&&Je()>Fc&&(t.flags|=128,a=!0,Ks(i,!1),t.lanes=4194304)}else{if(!a)if(null!==(e=ti(c))){if(t.flags|=128,a=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),Ks(i,!0),null===i.tail&&"hidden"===i.tailMode&&!c.alternate&&!rr)return qs(t),null}else 2*Je()-i.renderingStartTime>Fc&&1073741824!==n&&(t.flags|=128,a=!0,Ks(i,!1),t.lanes=4194304);i.isBackwards?(c.sibling=t.child,t.child=c):(null!==(n=i.last)?n.sibling=c:t.child=c,i.last=c)}return null!==i.tail?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Je(),t.sibling=null,n=ei.current,So(ei,a?1&n|2:1&n),t):(qs(t),null);case 22:case 23:return pl(),a=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==a&&(t.flags|=8192),a&&1&t.mode?!!(1073741824&Nc)&&(qs(t),6&t.subtreeFlags&&(t.flags|=8192)):qs(t),null;case 24:case 25:return null}throw Error(r(156,t.tag))}function Qs(e,t){switch(nr(t),t.tag){case 1:return To(t.type)&&Io(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return Jr(),Co(Ao),Co(Oo),ai(),65536&(e=t.flags)&&!(128&e)?(t.flags=-65537&e|128,t):null;case 5:return Xr(t),null;case 13:if(Co(ei),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(r(340));hr()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Co(ei),null;case 4:return Jr(),null;case 10:return Er(t.type._context),null;case 22:case 23:return pl(),null;default:return null}}Ps=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Ns=function(){},Ts=function(e,t,n,a){var o=e.memoizedProps;if(o!==a){e=t.stateNode,Wr(qr.current);var r,i=null;switch(n){case"input":o=W(e,o),a=W(e,a),i=[];break;case"select":o=R({},o,{value:void 0}),a=R({},a,{value:void 0}),i=[];break;case"textarea":o=ae(e,o),a=ae(e,a),i=[];break;default:"function"!=typeof o.onClick&&"function"==typeof a.onClick&&(e.onclick=Xa)}for(u in be(n,a),n=null,o)if(!a.hasOwnProperty(u)&&o.hasOwnProperty(u)&&null!=o[u])if("style"===u){var c=o[u];for(r in c)c.hasOwnProperty(r)&&(n||(n={}),n[r]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(s.hasOwnProperty(u)?i||(i=[]):(i=i||[]).push(u,null));for(u in a){var l=a[u];if(c=null!=o?o[u]:void 0,a.hasOwnProperty(u)&&l!==c&&(null!=l||null!=c))if("style"===u)if(c){for(r in c)!c.hasOwnProperty(r)||l&&l.hasOwnProperty(r)||(n||(n={}),n[r]="");for(r in l)l.hasOwnProperty(r)&&c[r]!==l[r]&&(n||(n={}),n[r]=l[r])}else n||(i||(i=[]),i.push(u,n)),n=l;else"dangerouslySetInnerHTML"===u?(l=l?l.__html:void 0,c=c?c.__html:void 0,null!=l&&c!==l&&(i=i||[]).push(u,l)):"children"===u?"string"!=typeof l&&"number"!=typeof l||(i=i||[]).push(u,""+l):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(s.hasOwnProperty(u)?(null!=l&&"onScroll"===u&&$a("scroll",e),i||c===l||(i=[])):(i=i||[]).push(u,l))}n&&(i=i||[]).push("style",n);var u=i;(t.updateQueue=u)&&(t.flags|=4)}},Is=function(e,t,n,a){n!==a&&(t.flags|=4)};var Ws=!1,Ys=!1,Js="function"==typeof WeakSet?WeakSet:Set,Zs=null;function Xs(e,t){var n=e.ref;if(null!==n)if("function"==typeof n)try{n(null)}catch(n){xl(e,t,n)}else n.current=null}function ec(e,t,n){try{n()}catch(n){xl(e,t,n)}}var tc=!1;function nc(e,t,n){var a=t.updateQueue;if(null!==(a=null!==a?a.lastEffect:null)){var o=a=a.next;do{if((o.tag&e)===e){var r=o.destroy;o.destroy=void 0,void 0!==r&&ec(t,n,r)}o=o.next}while(o!==a)}}function ac(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var a=n.create;n.destroy=a()}n=n.next}while(n!==t)}}function oc(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"==typeof t?t(e):t.current=e}}function rc(e){var t=e.alternate;null!==t&&(e.alternate=null,rc(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&null!==(t=e.stateNode)&&(delete t[mo],delete t[ho],delete t[go],delete t[ko],delete t[bo]),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function ic(e){return 5===e.tag||3===e.tag||4===e.tag}function sc(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||ic(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function cc(e,t,n){var a=e.tag;if(5===a||6===a)e=e.stateNode,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=Xa));else if(4!==a&&null!==(e=e.child))for(cc(e,t,n),e=e.sibling;null!==e;)cc(e,t,n),e=e.sibling}function lc(e,t,n){var a=e.tag;if(5===a||6===a)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==a&&null!==(e=e.child))for(lc(e,t,n),e=e.sibling;null!==e;)lc(e,t,n),e=e.sibling}var uc=null,pc=!1;function dc(e,t,n){for(n=n.child;null!==n;)mc(e,t,n),n=n.sibling}function mc(e,t,n){if(rt&&"function"==typeof rt.onCommitFiberUnmount)try{rt.onCommitFiberUnmount(ot,n)}catch(e){}switch(n.tag){case 5:Ys||Xs(n,t);case 6:var a=uc,o=pc;uc=null,dc(e,t,n),pc=o,null!==(uc=a)&&(pc?(e=uc,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):uc.removeChild(n.stateNode));break;case 18:null!==uc&&(pc?(e=uc,n=n.stateNode,8===e.nodeType?co(e.parentNode,n):1===e.nodeType&&co(e,n),Ft(e)):co(uc,n.stateNode));break;case 4:a=uc,o=pc,uc=n.stateNode.containerInfo,pc=!0,dc(e,t,n),uc=a,pc=o;break;case 0:case 11:case 14:case 15:if(!Ys&&null!==(a=n.updateQueue)&&null!==(a=a.lastEffect)){o=a=a.next;do{var r=o,i=r.destroy;r=r.tag,void 0!==i&&(2&r||4&r)&&ec(n,t,i),o=o.next}while(o!==a)}dc(e,t,n);break;case 1:if(!Ys&&(Xs(n,t),"function"==typeof(a=n.stateNode).componentWillUnmount))try{a.props=n.memoizedProps,a.state=n.memoizedState,a.componentWillUnmount()}catch(e){xl(n,t,e)}dc(e,t,n);break;case 21:dc(e,t,n);break;case 22:1&n.mode?(Ys=(a=Ys)||null!==n.memoizedState,dc(e,t,n),Ys=a):dc(e,t,n);break;default:dc(e,t,n)}}function hc(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Js),t.forEach(function(t){var a=El.bind(null,e,t);n.has(t)||(n.add(t),t.then(a,a))})}}function fc(e,t){var n=t.deletions;if(null!==n)for(var a=0;a<n.length;a++){var o=n[a];try{var i=e,s=t,c=s;e:for(;null!==c;){switch(c.tag){case 5:uc=c.stateNode,pc=!1;break e;case 3:case 4:uc=c.stateNode.containerInfo,pc=!0;break e}c=c.return}if(null===uc)throw Error(r(160));mc(i,s,o),uc=null,pc=!1;var l=o.alternate;null!==l&&(l.return=null),o.return=null}catch(e){xl(o,t,e)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)gc(t,e),t=t.sibling}function gc(e,t){var n=e.alternate,a=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(fc(t,e),kc(e),4&a){try{nc(3,e,e.return),ac(3,e)}catch(t){xl(e,e.return,t)}try{nc(5,e,e.return)}catch(t){xl(e,e.return,t)}}break;case 1:fc(t,e),kc(e),512&a&&null!==n&&Xs(n,n.return);break;case 5:if(fc(t,e),kc(e),512&a&&null!==n&&Xs(n,n.return),32&e.flags){var o=e.stateNode;try{de(o,"")}catch(t){xl(e,e.return,t)}}if(4&a&&null!=(o=e.stateNode)){var i=e.memoizedProps,s=null!==n?n.memoizedProps:i,c=e.type,l=e.updateQueue;if(e.updateQueue=null,null!==l)try{"input"===c&&"radio"===i.type&&null!=i.name&&J(o,i),ye(c,s);var u=ye(c,i);for(s=0;s<l.length;s+=2){var p=l[s],d=l[s+1];"style"===p?ge(o,d):"dangerouslySetInnerHTML"===p?pe(o,d):"children"===p?de(o,d):y(o,p,d,u)}switch(c){case"input":Z(o,i);break;case"textarea":re(o,i);break;case"select":var m=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!i.multiple;var h=i.value;null!=h?ne(o,!!i.multiple,h,!1):m!==!!i.multiple&&(null!=i.defaultValue?ne(o,!!i.multiple,i.defaultValue,!0):ne(o,!!i.multiple,i.multiple?[]:"",!1))}o[ho]=i}catch(t){xl(e,e.return,t)}}break;case 6:if(fc(t,e),kc(e),4&a){if(null===e.stateNode)throw Error(r(162));o=e.stateNode,i=e.memoizedProps;try{o.nodeValue=i}catch(t){xl(e,e.return,t)}}break;case 3:if(fc(t,e),kc(e),4&a&&null!==n&&n.memoizedState.isDehydrated)try{Ft(t.containerInfo)}catch(t){xl(e,e.return,t)}break;case 4:default:fc(t,e),kc(e);break;case 13:fc(t,e),kc(e),8192&(o=e.child).flags&&(i=null!==o.memoizedState,o.stateNode.isHidden=i,!i||null!==o.alternate&&null!==o.alternate.memoizedState||(Uc=Je())),4&a&&hc(e);break;case 22:if(p=null!==n&&null!==n.memoizedState,1&e.mode?(Ys=(u=Ys)||p,fc(t,e),Ys=u):fc(t,e),kc(e),8192&a){if(u=null!==e.memoizedState,(e.stateNode.isHidden=u)&&!p&&1&e.mode)for(Zs=e,p=e.child;null!==p;){for(d=Zs=p;null!==Zs;){switch(h=(m=Zs).child,m.tag){case 0:case 11:case 14:case 15:nc(4,m,m.return);break;case 1:Xs(m,m.return);var f=m.stateNode;if("function"==typeof f.componentWillUnmount){a=m,n=m.return;try{t=a,f.props=t.memoizedProps,f.state=t.memoizedState,f.componentWillUnmount()}catch(e){xl(a,n,e)}}break;case 5:Xs(m,m.return);break;case 22:if(null!==m.memoizedState){wc(d);continue}}null!==h?(h.return=m,Zs=h):wc(d)}p=p.sibling}e:for(p=null,d=e;;){if(5===d.tag){if(null===p){p=d;try{o=d.stateNode,u?"function"==typeof(i=o.style).setProperty?i.setProperty("display","none","important"):i.display="none":(c=d.stateNode,s=null!=(l=d.memoizedProps.style)&&l.hasOwnProperty("display")?l.display:null,c.style.display=fe("display",s))}catch(t){xl(e,e.return,t)}}}else if(6===d.tag){if(null===p)try{d.stateNode.nodeValue=u?"":d.memoizedProps}catch(t){xl(e,e.return,t)}}else if((22!==d.tag&&23!==d.tag||null===d.memoizedState||d===e)&&null!==d.child){d.child.return=d,d=d.child;continue}if(d===e)break e;for(;null===d.sibling;){if(null===d.return||d.return===e)break e;p===d&&(p=null),d=d.return}p===d&&(p=null),d.sibling.return=d.return,d=d.sibling}}break;case 19:fc(t,e),kc(e),4&a&&hc(e);case 21:}}function kc(e){var t=e.flags;if(2&t){try{e:{for(var n=e.return;null!==n;){if(ic(n)){var a=n;break e}n=n.return}throw Error(r(160))}switch(a.tag){case 5:var o=a.stateNode;32&a.flags&&(de(o,""),a.flags&=-33),lc(e,sc(e),o);break;case 3:case 4:var i=a.stateNode.containerInfo;cc(e,sc(e),i);break;default:throw Error(r(161))}}catch(t){xl(e,e.return,t)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function bc(e,t,n){Zs=e,yc(e,t,n)}function yc(e,t,n){for(var a=!!(1&e.mode);null!==Zs;){var o=Zs,r=o.child;if(22===o.tag&&a){var i=null!==o.memoizedState||Ws;if(!i){var s=o.alternate,c=null!==s&&null!==s.memoizedState||Ys;s=Ws;var l=Ys;if(Ws=i,(Ys=c)&&!l)for(Zs=o;null!==Zs;)c=(i=Zs).child,22===i.tag&&null!==i.memoizedState?jc(o):null!==c?(c.return=i,Zs=c):jc(o);for(;null!==r;)Zs=r,yc(r,t,n),r=r.sibling;Zs=o,Ws=s,Ys=l}vc(e)}else 8772&o.subtreeFlags&&null!==r?(r.return=o,Zs=r):vc(e)}}function vc(e){for(;null!==Zs;){var t=Zs;if(8772&t.flags){var n=t.alternate;try{if(8772&t.flags)switch(t.tag){case 0:case 11:case 15:Ys||ac(5,t);break;case 1:var a=t.stateNode;if(4&t.flags&&!Ys)if(null===n)a.componentDidMount();else{var o=t.elementType===t.type?n.memoizedProps:ns(t.type,n.memoizedProps);a.componentDidUpdate(o,n.memoizedState,a.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;null!==i&&Hr(t,i,a);break;case 3:var s=t.updateQueue;if(null!==s){if(n=null,null!==t.child)switch(t.child.tag){case 5:case 1:n=t.child.stateNode}Hr(t,s,n)}break;case 5:var c=t.stateNode;if(null===n&&4&t.flags){n=c;var l=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break;case"img":l.src&&(n.src=l.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var u=t.alternate;if(null!==u){var p=u.memoizedState;if(null!==p){var d=p.dehydrated;null!==d&&Ft(d)}}}break;default:throw Error(r(163))}Ys||512&t.flags&&oc(t)}catch(e){xl(t,t.return,e)}}if(t===e){Zs=null;break}if(null!==(n=t.sibling)){n.return=t.return,Zs=n;break}Zs=t.return}}function wc(e){for(;null!==Zs;){var t=Zs;if(t===e){Zs=null;break}var n=t.sibling;if(null!==n){n.return=t.return,Zs=n;break}Zs=t.return}}function jc(e){for(;null!==Zs;){var t=Zs;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{ac(4,t)}catch(e){xl(t,n,e)}break;case 1:var a=t.stateNode;if("function"==typeof a.componentDidMount){var o=t.return;try{a.componentDidMount()}catch(e){xl(t,o,e)}}var r=t.return;try{oc(t)}catch(e){xl(t,r,e)}break;case 5:var i=t.return;try{oc(t)}catch(e){xl(t,i,e)}}}catch(e){xl(t,t.return,e)}if(t===e){Zs=null;break}var s=t.sibling;if(null!==s){s.return=t.return,Zs=s;break}Zs=t.return}}var _c,xc=Math.ceil,zc=v.ReactCurrentDispatcher,Cc=v.ReactCurrentOwner,Sc=v.ReactCurrentBatchConfig,Ec=0,Oc=null,Ac=null,Pc=0,Nc=0,Tc=zo(0),Ic=0,Lc=null,Dc=0,Rc=0,Mc=0,$c=null,Bc=null,Uc=0,Fc=1/0,Vc=null,Hc=!1,Kc=null,qc=null,Gc=!1,Qc=null,Wc=0,Yc=0,Jc=null,Zc=-1,Xc=0;function el(){return 6&Ec?Je():-1!==Zc?Zc:Zc=Je()}function tl(e){return 1&e.mode?2&Ec&&0!==Pc?Pc&-Pc:null!==gr.transition?(0===Xc&&(Xc=ft()),Xc):0!==(e=yt)?e:e=void 0===(e=window.event)?16:Yt(e.type):1}function nl(e,t,n,a){if(50<Yc)throw Yc=0,Jc=null,Error(r(185));kt(e,n,a),2&Ec&&e===Oc||(e===Oc&&(!(2&Ec)&&(Rc|=n),4===Ic&&sl(e,Pc)),al(e,a),1===n&&0===Ec&&!(1&t.mode)&&(Fc=Je()+500,Bo&&Vo()))}function al(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,o=e.expirationTimes,r=e.pendingLanes;0<r;){var i=31-it(r),s=1<<i,c=o[i];-1===c?0!==(s&n)&&0===(s&a)||(o[i]=mt(s,t)):c<=t&&(e.expiredLanes|=s),r&=~s}}(e,t);var a=dt(e,e===Oc?Pc:0);if(0===a)null!==n&&Qe(n),e.callbackNode=null,e.callbackPriority=0;else if(t=a&-a,e.callbackPriority!==t){if(null!=n&&Qe(n),1===t)0===e.tag?function(e){Bo=!0,Fo(e)}(cl.bind(null,e)):Fo(cl.bind(null,e)),io(function(){!(6&Ec)&&Vo()}),n=null;else{switch(vt(a)){case 1:n=Xe;break;case 4:n=et;break;case 16:default:n=tt;break;case 536870912:n=at}n=Ol(n,ol.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function ol(e,t){if(Zc=-1,Xc=0,6&Ec)throw Error(r(327));var n=e.callbackNode;if(jl()&&e.callbackNode!==n)return null;var a=dt(e,e===Oc?Pc:0);if(0===a)return null;if(30&a||0!==(a&e.expiredLanes)||t)t=gl(e,a);else{t=a;var o=Ec;Ec|=2;var i=hl();for(Oc===e&&Pc===t||(Vc=null,Fc=Je()+500,dl(e,t));;)try{bl();break}catch(t){ml(e,t)}Sr(),zc.current=i,Ec=o,null!==Ac?t=0:(Oc=null,Pc=0,t=Ic)}if(0!==t){if(2===t&&0!==(o=ht(e))&&(a=o,t=rl(e,o)),1===t)throw n=Lc,dl(e,0),sl(e,a),al(e,Je()),n;if(6===t)sl(e,a);else{if(o=e.current.alternate,!(30&a||function(e){for(var t=e;;){if(16384&t.flags){var n=t.updateQueue;if(null!==n&&null!==(n=n.stores))for(var a=0;a<n.length;a++){var o=n[a],r=o.getSnapshot;o=o.value;try{if(!sa(r(),o))return!1}catch(e){return!1}}}if(n=t.child,16384&t.subtreeFlags&&null!==n)n.return=t,t=n;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(o)||(t=gl(e,a),2===t&&(i=ht(e),0!==i&&(a=i,t=rl(e,i))),1!==t)))throw n=Lc,dl(e,0),sl(e,a),al(e,Je()),n;switch(e.finishedWork=o,e.finishedLanes=a,t){case 0:case 1:throw Error(r(345));case 2:case 5:wl(e,Bc,Vc);break;case 3:if(sl(e,a),(130023424&a)===a&&10<(t=Uc+500-Je())){if(0!==dt(e,0))break;if(((o=e.suspendedLanes)&a)!==a){el(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=ao(wl.bind(null,e,Bc,Vc),t);break}wl(e,Bc,Vc);break;case 4:if(sl(e,a),(4194240&a)===a)break;for(t=e.eventTimes,o=-1;0<a;){var s=31-it(a);i=1<<s,(s=t[s])>o&&(o=s),a&=~i}if(a=o,10<(a=(120>(a=Je()-a)?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*xc(a/1960))-a)){e.timeoutHandle=ao(wl.bind(null,e,Bc,Vc),a);break}wl(e,Bc,Vc);break;default:throw Error(r(329))}}}return al(e,Je()),e.callbackNode===n?ol.bind(null,e):null}function rl(e,t){var n=$c;return e.current.memoizedState.isDehydrated&&(dl(e,t).flags|=256),2!==(e=gl(e,t))&&(t=Bc,Bc=n,null!==t&&il(t)),e}function il(e){null===Bc?Bc=e:Bc.push.apply(Bc,e)}function sl(e,t){for(t&=~Mc,t&=~Rc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-it(t),a=1<<n;e[n]=-1,t&=~a}}function cl(e){if(6&Ec)throw Error(r(327));jl();var t=dt(e,0);if(!(1&t))return al(e,Je()),null;var n=gl(e,t);if(0!==e.tag&&2===n){var a=ht(e);0!==a&&(t=a,n=rl(e,a))}if(1===n)throw n=Lc,dl(e,0),sl(e,t),al(e,Je()),n;if(6===n)throw Error(r(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,wl(e,Bc,Vc),al(e,Je()),null}function ll(e,t){var n=Ec;Ec|=1;try{return e(t)}finally{0===(Ec=n)&&(Fc=Je()+500,Bo&&Vo())}}function ul(e){null!==Qc&&0===Qc.tag&&!(6&Ec)&&jl();var t=Ec;Ec|=1;var n=Sc.transition,a=yt;try{if(Sc.transition=null,yt=1,e)return e()}finally{yt=a,Sc.transition=n,!(6&(Ec=t))&&Vo()}}function pl(){Nc=Tc.current,Co(Tc)}function dl(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,oo(n)),null!==Ac)for(n=Ac.return;null!==n;){var a=n;switch(nr(a),a.tag){case 1:null!=(a=a.type.childContextTypes)&&Io();break;case 3:Jr(),Co(Ao),Co(Oo),ai();break;case 5:Xr(a);break;case 4:Jr();break;case 13:case 19:Co(ei);break;case 10:Er(a.type._context);break;case 22:case 23:pl()}n=n.return}if(Oc=e,Ac=e=Tl(e.current,null),Pc=Nc=t,Ic=0,Lc=null,Mc=Rc=Dc=0,Bc=$c=null,null!==Nr){for(t=0;t<Nr.length;t++)if(null!==(a=(n=Nr[t]).interleaved)){n.interleaved=null;var o=a.next,r=n.pending;if(null!==r){var i=r.next;r.next=o,a.next=i}n.pending=a}Nr=null}return e}function ml(e,t){for(;;){var n=Ac;try{if(Sr(),oi.current=Zi,ui){for(var a=si.memoizedState;null!==a;){var o=a.queue;null!==o&&(o.pending=null),a=a.next}ui=!1}if(ii=0,li=ci=si=null,pi=!1,di=0,Cc.current=null,null===n||null===n.return){Ic=1,Lc=t,Ac=null;break}e:{var i=e,s=n.return,c=n,l=t;if(t=Pc,c.flags|=32768,null!==l&&"object"==typeof l&&"function"==typeof l.then){var u=l,p=c,d=p.tag;if(!(1&p.mode||0!==d&&11!==d&&15!==d)){var m=p.alternate;m?(p.updateQueue=m.updateQueue,p.memoizedState=m.memoizedState,p.lanes=m.lanes):(p.updateQueue=null,p.memoizedState=null)}var h=gs(s);if(null!==h){h.flags&=-257,ks(h,s,c,0,t),1&h.mode&&fs(i,u,t),l=u;var f=(t=h).updateQueue;if(null===f){var g=new Set;g.add(l),t.updateQueue=g}else f.add(l);break e}if(!(1&t)){fs(i,u,t),fl();break e}l=Error(r(426))}else if(rr&&1&c.mode){var k=gs(s);if(null!==k){!(65536&k.flags)&&(k.flags|=256),ks(k,s,c,0,t),fr(ls(l,c));break e}}i=l=ls(l,c),4!==Ic&&(Ic=2),null===$c?$c=[i]:$c.push(i),i=s;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t,Fr(i,ms(0,l,t));break e;case 1:c=l;var b=i.type,y=i.stateNode;if(!(128&i.flags||"function"!=typeof b.getDerivedStateFromError&&(null===y||"function"!=typeof y.componentDidCatch||null!==qc&&qc.has(y)))){i.flags|=65536,t&=-t,i.lanes|=t,Fr(i,hs(i,c,t));break e}}i=i.return}while(null!==i)}vl(n)}catch(e){t=e,Ac===n&&null!==n&&(Ac=n=n.return);continue}break}}function hl(){var e=zc.current;return zc.current=Zi,null===e?Zi:e}function fl(){0!==Ic&&3!==Ic&&2!==Ic||(Ic=4),null===Oc||!(268435455&Dc)&&!(268435455&Rc)||sl(Oc,Pc)}function gl(e,t){var n=Ec;Ec|=2;var a=hl();for(Oc===e&&Pc===t||(Vc=null,dl(e,t));;)try{kl();break}catch(t){ml(e,t)}if(Sr(),Ec=n,zc.current=a,null!==Ac)throw Error(r(261));return Oc=null,Pc=0,Ic}function kl(){for(;null!==Ac;)yl(Ac)}function bl(){for(;null!==Ac&&!We();)yl(Ac)}function yl(e){var t=_c(e.alternate,e,Nc);e.memoizedProps=e.pendingProps,null===t?vl(e):Ac=t,Cc.current=null}function vl(e){var t=e;do{var n=t.alternate;if(e=t.return,32768&t.flags){if(null!==(n=Qs(n,t)))return n.flags&=32767,void(Ac=n);if(null===e)return Ic=6,void(Ac=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}else if(null!==(n=Gs(n,t,Nc)))return void(Ac=n);if(null!==(t=t.sibling))return void(Ac=t);Ac=t=e}while(null!==t);0===Ic&&(Ic=5)}function wl(e,t,n){var a=yt,o=Sc.transition;try{Sc.transition=null,yt=1,function(e,t,n,a){do{jl()}while(null!==Qc);if(6&Ec)throw Error(r(327));n=e.finishedWork;var o=e.finishedLanes;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(r(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(function(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var a=e.eventTimes;for(e=e.expirationTimes;0<n;){var o=31-it(n),r=1<<o;t[o]=0,a[o]=-1,e[o]=-1,n&=~r}}(e,i),e===Oc&&(Ac=Oc=null,Pc=0),!(2064&n.subtreeFlags)&&!(2064&n.flags)||Gc||(Gc=!0,Ol(tt,function(){return jl(),null})),i=!!(15990&n.flags),15990&n.subtreeFlags||i){i=Sc.transition,Sc.transition=null;var s=yt;yt=1;var c=Ec;Ec|=4,Cc.current=null,function(e,t){if(eo=Ht,ma(e=da())){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{var a=(n=(n=e.ownerDocument)&&n.defaultView||window).getSelection&&n.getSelection();if(a&&0!==a.rangeCount){n=a.anchorNode;var o=a.anchorOffset,i=a.focusNode;a=a.focusOffset;try{n.nodeType,i.nodeType}catch(e){n=null;break e}var s=0,c=-1,l=-1,u=0,p=0,d=e,m=null;t:for(;;){for(var h;d!==n||0!==o&&3!==d.nodeType||(c=s+o),d!==i||0!==a&&3!==d.nodeType||(l=s+a),3===d.nodeType&&(s+=d.nodeValue.length),null!==(h=d.firstChild);)m=d,d=h;for(;;){if(d===e)break t;if(m===n&&++u===o&&(c=s),m===i&&++p===a&&(l=s),null!==(h=d.nextSibling))break;m=(d=m).parentNode}d=h}n=-1===c||-1===l?null:{start:c,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(to={focusedElem:e,selectionRange:n},Ht=!1,Zs=t;null!==Zs;)if(e=(t=Zs).child,1028&t.subtreeFlags&&null!==e)e.return=t,Zs=e;else for(;null!==Zs;){t=Zs;try{var f=t.alternate;if(1024&t.flags)switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==f){var g=f.memoizedProps,k=f.memoizedState,b=t.stateNode,y=b.getSnapshotBeforeUpdate(t.elementType===t.type?g:ns(t.type,g),k);b.__reactInternalSnapshotBeforeUpdate=y}break;case 3:var v=t.stateNode.containerInfo;1===v.nodeType?v.textContent="":9===v.nodeType&&v.documentElement&&v.removeChild(v.documentElement);break;default:throw Error(r(163))}}catch(e){xl(t,t.return,e)}if(null!==(e=t.sibling)){e.return=t.return,Zs=e;break}Zs=t.return}f=tc,tc=!1}(e,n),gc(n,e),ha(to),Ht=!!eo,to=eo=null,e.current=n,bc(n,e,o),Ye(),Ec=c,yt=s,Sc.transition=i}else e.current=n;if(Gc&&(Gc=!1,Qc=e,Wc=o),0===(i=e.pendingLanes)&&(qc=null),function(e){if(rt&&"function"==typeof rt.onCommitFiberRoot)try{rt.onCommitFiberRoot(ot,e,void 0,!(128&~e.current.flags))}catch(e){}}(n.stateNode),al(e,Je()),null!==t)for(a=e.onRecoverableError,n=0;n<t.length;n++)a((o=t[n]).value,{componentStack:o.stack,digest:o.digest});if(Hc)throw Hc=!1,e=Kc,Kc=null,e;!!(1&Wc)&&0!==e.tag&&jl(),1&(i=e.pendingLanes)?e===Jc?Yc++:(Yc=0,Jc=e):Yc=0,Vo()}(e,t,n,a)}finally{Sc.transition=o,yt=a}return null}function jl(){if(null!==Qc){var e=vt(Wc),t=Sc.transition,n=yt;try{if(Sc.transition=null,yt=16>e?16:e,null===Qc)var a=!1;else{if(e=Qc,Qc=null,Wc=0,6&Ec)throw Error(r(331));var o=Ec;for(Ec|=4,Zs=e.current;null!==Zs;){var i=Zs,s=i.child;if(16&Zs.flags){var c=i.deletions;if(null!==c){for(var l=0;l<c.length;l++){var u=c[l];for(Zs=u;null!==Zs;){var p=Zs;switch(p.tag){case 0:case 11:case 15:nc(8,p,i)}var d=p.child;if(null!==d)d.return=p,Zs=d;else for(;null!==Zs;){var m=(p=Zs).sibling,h=p.return;if(rc(p),p===u){Zs=null;break}if(null!==m){m.return=h,Zs=m;break}Zs=h}}}var f=i.alternate;if(null!==f){var g=f.child;if(null!==g){f.child=null;do{var k=g.sibling;g.sibling=null,g=k}while(null!==g)}}Zs=i}}if(2064&i.subtreeFlags&&null!==s)s.return=i,Zs=s;else e:for(;null!==Zs;){if(2048&(i=Zs).flags)switch(i.tag){case 0:case 11:case 15:nc(9,i,i.return)}var b=i.sibling;if(null!==b){b.return=i.return,Zs=b;break e}Zs=i.return}}var y=e.current;for(Zs=y;null!==Zs;){var v=(s=Zs).child;if(2064&s.subtreeFlags&&null!==v)v.return=s,Zs=v;else e:for(s=y;null!==Zs;){if(2048&(c=Zs).flags)try{switch(c.tag){case 0:case 11:case 15:ac(9,c)}}catch(e){xl(c,c.return,e)}if(c===s){Zs=null;break e}var w=c.sibling;if(null!==w){w.return=c.return,Zs=w;break e}Zs=c.return}}if(Ec=o,Vo(),rt&&"function"==typeof rt.onPostCommitFiberRoot)try{rt.onPostCommitFiberRoot(ot,e)}catch(e){}a=!0}return a}finally{yt=n,Sc.transition=t}}return!1}function _l(e,t,n){e=Br(e,t=ms(0,t=ls(n,t),1),1),t=el(),null!==e&&(kt(e,1,t),al(e,t))}function xl(e,t,n){if(3===e.tag)_l(e,e,n);else for(;null!==t;){if(3===t.tag){_l(t,e,n);break}if(1===t.tag){var a=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof a.componentDidCatch&&(null===qc||!qc.has(a))){t=Br(t,e=hs(t,e=ls(n,e),1),1),e=el(),null!==t&&(kt(t,1,e),al(t,e));break}}t=t.return}}function zl(e,t,n){var a=e.pingCache;null!==a&&a.delete(t),t=el(),e.pingedLanes|=e.suspendedLanes&n,Oc===e&&(Pc&n)===n&&(4===Ic||3===Ic&&(130023424&Pc)===Pc&&500>Je()-Uc?dl(e,0):Mc|=n),al(e,t)}function Cl(e,t){0===t&&(1&e.mode?(t=ut,!(130023424&(ut<<=1))&&(ut=4194304)):t=1);var n=el();null!==(e=Lr(e,t))&&(kt(e,t,n),al(e,n))}function Sl(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Cl(e,n)}function El(e,t){var n=0;switch(e.tag){case 13:var a=e.stateNode,o=e.memoizedState;null!==o&&(n=o.retryLane);break;case 19:a=e.stateNode;break;default:throw Error(r(314))}null!==a&&a.delete(t),Cl(e,n)}function Ol(e,t){return Ge(e,t)}function Al(e,t,n,a){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pl(e,t,n,a){return new Al(e,t,n,a)}function Nl(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Tl(e,t){var n=e.alternate;return null===n?((n=Pl(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Il(e,t,n,a,o,i){var s=2;if(a=e,"function"==typeof e)Nl(e)&&(s=1);else if("string"==typeof e)s=5;else e:switch(e){case _:return Ll(n.children,o,i,t);case x:s=8,o|=8;break;case z:return(e=Pl(12,n,t,2|o)).elementType=z,e.lanes=i,e;case O:return(e=Pl(13,n,t,o)).elementType=O,e.lanes=i,e;case A:return(e=Pl(19,n,t,o)).elementType=A,e.lanes=i,e;case T:return Dl(n,o,i,t);default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case C:s=10;break e;case S:s=9;break e;case E:s=11;break e;case P:s=14;break e;case N:s=16,a=null;break e}throw Error(r(130,null==e?e:typeof e,""))}return(t=Pl(s,n,t,o)).elementType=e,t.type=a,t.lanes=i,t}function Ll(e,t,n,a){return(e=Pl(7,e,a,t)).lanes=n,e}function Dl(e,t,n,a){return(e=Pl(22,e,a,t)).elementType=T,e.lanes=n,e.stateNode={isHidden:!1},e}function Rl(e,t,n){return(e=Pl(6,e,null,t)).lanes=n,e}function Ml(e,t,n){return(t=Pl(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function $l(e,t,n,a,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=a,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Bl(e,t,n,a,o,r,i,s,c){return e=new $l(e,t,n,s,c),1===t?(t=1,!0===r&&(t|=8)):t=0,r=Pl(3,null,null,t),e.current=r,r.stateNode=e,r.memoizedState={element:a,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Rr(r),e}function Ul(e){if(!e)return Eo;e:{if(Fe(e=e._reactInternals)!==e||1!==e.tag)throw Error(r(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(To(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(r(171))}if(1===e.tag){var n=e.type;if(To(n))return Do(e,n,t)}return t}function Fl(e,t,n,a,o,r,i,s,c){return(e=Bl(n,a,!0,e,0,r,0,s,c)).context=Ul(null),n=e.current,(r=$r(a=el(),o=tl(n))).callback=null!=t?t:null,Br(n,r,o),e.current.lanes=o,kt(e,o,a),al(e,a),e}function Vl(e,t,n,a){var o=t.current,r=el(),i=tl(o);return n=Ul(n),null===t.context?t.context=n:t.pendingContext=n,(t=$r(r,i)).payload={element:e},null!==(a=void 0===a?null:a)&&(t.callback=a),null!==(e=Br(o,t,i))&&(nl(e,o,i,r),Ur(e,o,i)),i}function Hl(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Kl(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function ql(e,t){Kl(e,t),(e=e.alternate)&&Kl(e,t)}_c=function(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps||Ao.current)ys=!0;else{if(0===(e.lanes&n)&&!(128&t.flags))return ys=!1,function(e,t,n){switch(t.tag){case 3:Os(t),hr();break;case 5:Zr(t);break;case 1:To(t.type)&&Ro(t);break;case 4:Yr(t,t.stateNode.containerInfo);break;case 10:var a=t.type._context,o=t.memoizedProps.value;So(_r,a._currentValue),a._currentValue=o;break;case 13:if(null!==(a=t.memoizedState))return null!==a.dehydrated?(So(ei,1&ei.current),t.flags|=128,null):0!==(n&t.child.childLanes)?Rs(e,t,n):(So(ei,1&ei.current),null!==(e=Hs(e,t,n))?e.sibling:null);So(ei,1&ei.current);break;case 19:if(a=0!==(n&t.childLanes),128&e.flags){if(a)return Fs(e,t,n);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),So(ei,ei.current),a)break;return null;case 22:case 23:return t.lanes=0,xs(e,t,n)}return Hs(e,t,n)}(e,t,n);ys=!!(131072&e.flags)}else ys=!1,rr&&1048576&t.flags&&er(t,Go,t.index);switch(t.lanes=0,t.tag){case 2:var a=t.type;Vs(e,t),e=t.pendingProps;var o=No(t,Oo.current);Ar(t,n),o=gi(null,t,a,e,o,n);var i=ki();return t.flags|=1,"object"==typeof o&&null!==o&&"function"==typeof o.render&&void 0===o.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,To(a)?(i=!0,Ro(t)):i=!1,t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,Rr(t),o.updater=os,t.stateNode=o,o._reactInternals=t,cs(t,a,e,n),t=Es(null,t,a,!0,i,n)):(t.tag=0,rr&&i&&tr(t),vs(null,t,o,n),t=t.child),t;case 16:a=t.elementType;e:{switch(Vs(e,t),e=t.pendingProps,a=(o=a._init)(a._payload),t.type=a,o=t.tag=function(e){if("function"==typeof e)return Nl(e)?1:0;if(null!=e){if((e=e.$$typeof)===E)return 11;if(e===P)return 14}return 2}(a),e=ns(a,e),o){case 0:t=Cs(null,t,a,e,n);break e;case 1:t=Ss(null,t,a,e,n);break e;case 11:t=ws(null,t,a,e,n);break e;case 14:t=js(null,t,a,ns(a.type,e),n);break e}throw Error(r(306,a,""))}return t;case 0:return a=t.type,o=t.pendingProps,Cs(e,t,a,o=t.elementType===a?o:ns(a,o),n);case 1:return a=t.type,o=t.pendingProps,Ss(e,t,a,o=t.elementType===a?o:ns(a,o),n);case 3:e:{if(Os(t),null===e)throw Error(r(387));a=t.pendingProps,o=(i=t.memoizedState).element,Mr(e,t),Vr(t,a,null,n);var s=t.memoizedState;if(a=s.element,i.isDehydrated){if(i={element:a,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=i,t.memoizedState=i,256&t.flags){t=As(e,t,a,n,o=ls(Error(r(423)),t));break e}if(a!==o){t=As(e,t,a,n,o=ls(Error(r(424)),t));break e}for(or=lo(t.stateNode.containerInfo.firstChild),ar=t,rr=!0,ir=null,n=jr(t,null,a,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(hr(),a===o){t=Hs(e,t,n);break e}vs(e,t,a,n)}t=t.child}return t;case 5:return Zr(t),null===e&&ur(t),a=t.type,o=t.pendingProps,i=null!==e?e.memoizedProps:null,s=o.children,no(a,o)?s=null:null!==i&&no(a,i)&&(t.flags|=32),zs(e,t),vs(e,t,s,n),t.child;case 6:return null===e&&ur(t),null;case 13:return Rs(e,t,n);case 4:return Yr(t,t.stateNode.containerInfo),a=t.pendingProps,null===e?t.child=wr(t,null,a,n):vs(e,t,a,n),t.child;case 11:return a=t.type,o=t.pendingProps,ws(e,t,a,o=t.elementType===a?o:ns(a,o),n);case 7:return vs(e,t,t.pendingProps,n),t.child;case 8:case 12:return vs(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(a=t.type._context,o=t.pendingProps,i=t.memoizedProps,s=o.value,So(_r,a._currentValue),a._currentValue=s,null!==i)if(sa(i.value,s)){if(i.children===o.children&&!Ao.current){t=Hs(e,t,n);break e}}else for(null!==(i=t.child)&&(i.return=t);null!==i;){var c=i.dependencies;if(null!==c){s=i.child;for(var l=c.firstContext;null!==l;){if(l.context===a){if(1===i.tag){(l=$r(-1,n&-n)).tag=2;var u=i.updateQueue;if(null!==u){var p=(u=u.shared).pending;null===p?l.next=l:(l.next=p.next,p.next=l),u.pending=l}}i.lanes|=n,null!==(l=i.alternate)&&(l.lanes|=n),Or(i.return,n,t),c.lanes|=n;break}l=l.next}}else if(10===i.tag)s=i.type===t.type?null:i.child;else if(18===i.tag){if(null===(s=i.return))throw Error(r(341));s.lanes|=n,null!==(c=s.alternate)&&(c.lanes|=n),Or(s,n,t),s=i.sibling}else s=i.child;if(null!==s)s.return=i;else for(s=i;null!==s;){if(s===t){s=null;break}if(null!==(i=s.sibling)){i.return=s.return,s=i;break}s=s.return}i=s}vs(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,a=t.pendingProps.children,Ar(t,n),a=a(o=Pr(o)),t.flags|=1,vs(e,t,a,n),t.child;case 14:return o=ns(a=t.type,t.pendingProps),js(e,t,a,o=ns(a.type,o),n);case 15:return _s(e,t,t.type,t.pendingProps,n);case 17:return a=t.type,o=t.pendingProps,o=t.elementType===a?o:ns(a,o),Vs(e,t),t.tag=1,To(a)?(e=!0,Ro(t)):e=!1,Ar(t,n),is(t,a,o),cs(t,a,o,n),Es(null,t,a,!0,e,n);case 19:return Fs(e,t,n);case 22:return xs(e,t,n)}throw Error(r(156,t.tag))};var Gl="function"==typeof reportError?reportError:function(e){console.error(e)};function Ql(e){this._internalRoot=e}function Wl(e){this._internalRoot=e}function Yl(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Jl(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Zl(){}function Xl(e,t,n,a,o){var r=n._reactRootContainer;if(r){var i=r;if("function"==typeof o){var s=o;o=function(){var e=Hl(i);s.call(e)}}Vl(t,i,e,o)}else i=function(e,t,n,a,o){if(o){if("function"==typeof a){var r=a;a=function(){var e=Hl(i);r.call(e)}}var i=Fl(t,a,e,0,null,!1,0,"",Zl);return e._reactRootContainer=i,e[fo]=i.current,Fa(8===e.nodeType?e.parentNode:e),ul(),i}for(;o=e.lastChild;)e.removeChild(o);if("function"==typeof a){var s=a;a=function(){var e=Hl(c);s.call(e)}}var c=Bl(e,0,!1,null,0,!1,0,"",Zl);return e._reactRootContainer=c,e[fo]=c.current,Fa(8===e.nodeType?e.parentNode:e),ul(function(){Vl(t,c,n,a)}),c}(n,t,e,o,a);return Hl(i)}Wl.prototype.render=Ql.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(r(409));Vl(e,t,null,null)},Wl.prototype.unmount=Ql.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;ul(function(){Vl(null,e,null,null)}),t[fo]=null}},Wl.prototype.unstable_scheduleHydration=function(e){if(e){var t=xt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Tt.length&&0!==t&&t<Tt[n].priority;n++);Tt.splice(n,0,e),0===n&&Rt(e)}},wt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=pt(t.pendingLanes);0!==n&&(bt(t,1|n),al(t,Je()),!(6&Ec)&&(Fc=Je()+500,Vo()))}break;case 13:ul(function(){var t=Lr(e,1);if(null!==t){var n=el();nl(t,e,1,n)}}),ql(e,1)}},jt=function(e){if(13===e.tag){var t=Lr(e,134217728);null!==t&&nl(t,e,134217728,el()),ql(e,134217728)}},_t=function(e){if(13===e.tag){var t=tl(e),n=Lr(e,t);null!==n&&nl(n,e,t,el()),ql(e,t)}},xt=function(){return yt},zt=function(e,t){var n=yt;try{return yt=e,t()}finally{yt=n}},je=function(e,t,n){switch(t){case"input":if(Z(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var a=n[t];if(a!==e&&a.form===e.form){var o=jo(a);if(!o)throw Error(r(90));G(a),Z(a,o)}}}break;case"textarea":re(e,n);break;case"select":null!=(t=n.value)&&ne(e,!!n.multiple,t,!1)}},Ee=ll,Oe=ul;var eu={usingClientEntryPoint:!1,Events:[vo,wo,jo,Ce,Se,ll]},tu={findFiberByHostInstance:yo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},nu={bundleType:tu.bundleType,version:tu.version,rendererPackageName:tu.rendererPackageName,rendererConfig:tu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:v.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ke(e))?null:e.stateNode},findFiberByHostInstance:tu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var au=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!au.isDisabled&&au.supportsFiber)try{ot=au.inject(nu),rt=au}catch(ue){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=eu,t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Yl(t))throw Error(r(200));return function(e,t,n){var a=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:j,key:null==a?null:""+a,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},t.createRoot=function(e,t){if(!Yl(e))throw Error(r(299));var n=!1,a="",o=Gl;return null!=t&&(!0===t.unstable_strictMode&&(n=!0),void 0!==t.identifierPrefix&&(a=t.identifierPrefix),void 0!==t.onRecoverableError&&(o=t.onRecoverableError)),t=Bl(e,1,!1,null,0,n,0,a,o),e[fo]=t.current,Fa(8===e.nodeType?e.parentNode:e),new Ql(t)},t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"==typeof e.render)throw Error(r(188));throw e=Object.keys(e).join(","),Error(r(268,e))}return null===(e=Ke(t))?null:e.stateNode},t.flushSync=function(e){return ul(e)},t.hydrate=function(e,t,n){if(!Jl(t))throw Error(r(200));return Xl(null,e,t,!0,n)},t.hydrateRoot=function(e,t,n){if(!Yl(e))throw Error(r(405));var a=null!=n&&n.hydratedSources||null,o=!1,i="",s=Gl;if(null!=n&&(!0===n.unstable_strictMode&&(o=!0),void 0!==n.identifierPrefix&&(i=n.identifierPrefix),void 0!==n.onRecoverableError&&(s=n.onRecoverableError)),t=Fl(t,null,e,1,null!=n?n:null,o,0,i,s),e[fo]=t.current,Fa(e),a)for(e=0;e<a.length;e++)o=(o=(n=a[e])._getVersion)(n._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[n,o]:t.mutableSourceEagerHydrationData.push(n,o);return new Wl(t)},t.render=function(e,t,n){if(!Jl(t))throw Error(r(200));return Xl(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Jl(e))throw Error(r(40));return!!e._reactRootContainer&&(ul(function(){Xl(null,null,e,!1,function(){e._reactRootContainer=null,e[fo]=null})}),!0)},t.unstable_batchedUpdates=ll,t.unstable_renderSubtreeIntoContainer=function(e,t,n,a){if(!Jl(n))throw Error(r(200));if(null==e||void 0===e._reactInternals)throw Error(r(38));return Xl(e,t,n,!1,a)},t.version="18.3.1-next-f1338f8080-20240426"},593:(e,t,n)=>{e.exports=n(910)},723:(e,t,n)=>{e.exports=n(921)},910:(e,t)=>{function n(e,t){var n=e.length;e.push(t);e:for(;0<n;){var a=n-1>>>1,o=e[a];if(!(0<r(o,t)))break e;e[a]=t,e[n]=o,n=a}}function a(e){return 0===e.length?null:e[0]}function o(e){if(0===e.length)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;e:for(var a=0,o=e.length,i=o>>>1;a<i;){var s=2*(a+1)-1,c=e[s],l=s+1,u=e[l];if(0>r(c,n))l<o&&0>r(u,c)?(e[a]=u,e[l]=n,a=l):(e[a]=c,e[s]=n,a=s);else{if(!(l<o&&0>r(u,n)))break e;e[a]=u,e[l]=n,a=l}}}return t}function r(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var s=Date,c=s.now();t.unstable_now=function(){return s.now()-c}}var l=[],u=[],p=1,d=null,m=3,h=!1,f=!1,g=!1,k="function"==typeof setTimeout?setTimeout:null,b="function"==typeof clearTimeout?clearTimeout:null,y="undefined"!=typeof setImmediate?setImmediate:null;function v(e){for(var t=a(u);null!==t;){if(null===t.callback)o(u);else{if(!(t.startTime<=e))break;o(u),t.sortIndex=t.expirationTime,n(l,t)}t=a(u)}}function w(e){if(g=!1,v(e),!f)if(null!==a(l))f=!0,T(j);else{var t=a(u);null!==t&&I(w,t.startTime-e)}}function j(e,n){f=!1,g&&(g=!1,b(C),C=-1),h=!0;var r=m;try{for(v(n),d=a(l);null!==d&&(!(d.expirationTime>n)||e&&!O());){var i=d.callback;if("function"==typeof i){d.callback=null,m=d.priorityLevel;var s=i(d.expirationTime<=n);n=t.unstable_now(),"function"==typeof s?d.callback=s:d===a(l)&&o(l),v(n)}else o(l);d=a(l)}if(null!==d)var c=!0;else{var p=a(u);null!==p&&I(w,p.startTime-n),c=!1}return c}finally{d=null,m=r,h=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var _,x=!1,z=null,C=-1,S=5,E=-1;function O(){return!(t.unstable_now()-E<S)}function A(){if(null!==z){var e=t.unstable_now();E=e;var n=!0;try{n=z(!0,e)}finally{n?_():(x=!1,z=null)}}else x=!1}if("function"==typeof y)_=function(){y(A)};else if("undefined"!=typeof MessageChannel){var P=new MessageChannel,N=P.port2;P.port1.onmessage=A,_=function(){N.postMessage(null)}}else _=function(){k(A,0)};function T(e){z=e,x||(x=!0,_())}function I(e,n){C=k(function(){e(t.unstable_now())},n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){f||h||(f=!0,T(j))},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):S=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return m},t.unstable_getFirstCallbackNode=function(){return a(l)},t.unstable_next=function(e){switch(m){case 1:case 2:case 3:var t=3;break;default:t=m}var n=m;m=t;try{return e()}finally{m=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=m;m=e;try{return t()}finally{m=n}},t.unstable_scheduleCallback=function(e,o,r){var i=t.unstable_now();switch(r="object"==typeof r&&null!==r&&"number"==typeof(r=r.delay)&&0<r?i+r:i,e){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return e={id:p++,callback:o,priorityLevel:e,startTime:r,expirationTime:s=r+s,sortIndex:-1},r>i?(e.sortIndex=r,n(u,e),null===a(l)&&e===a(u)&&(g?(b(C),C=-1):g=!0,I(w,r-i))):(e.sortIndex=s,n(l,e),f||h||(f=!0,T(j))),e},t.unstable_shouldYield=O,t.unstable_wrapCallback=function(e){var t=m;return function(){var n=m;m=t;try{return e.apply(this,arguments)}finally{m=n}}}},921:(e,t,n)=>{var a=n(155),o=Symbol.for("react.element"),r=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),i=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var a,c={},l=null,u=null;for(a in void 0!==n&&(l=""+n),void 0!==t.key&&(l=""+t.key),void 0!==t.ref&&(u=t.ref),t)r.call(t,a)&&!s.hasOwnProperty(a)&&(c[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===c[a]&&(c[a]=t[a]);return{$$typeof:o,type:e,key:l,ref:u,props:c,_owner:i.current}}t.jsx=c,t.jsxs=c},997:(e,t,n)=>{var a=n(316);t.H=a.createRoot,a.hydrateRoot}},t={};function n(a){var o=t[a];if(void 0!==o)return o.exports;var r=t[a]={exports:{}};return e[a](r,r.exports,n),r.exports}function a(e,t,n,a){if(void 0===n)e.searchParams[a](t,"undefined");else if(null===n)e.searchParams[a](t,"null");else if("boolean"==typeof n)e.searchParams[a](t,n?"true":"false");else if("number"==typeof n)e.searchParams[a](t,n.toString(10));else if("string"==typeof n)e.searchParams[a](t,n);else{if("object"!=typeof n)throw new Error(`Unsupported query param value: ${n.toString()}`);e.searchParams[a](t,JSON.stringify(n))}}n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);class o extends Error{source;constructor(e,t){super(e),this.name="ApiError",this.source=t}}class r extends o{constructor(e){super(`Fetch error: ${e.message}`,e)}}class i extends o{status;statusText;response;constructor(e){const{status:t,statusText:n}=e;super(`Status error (${t}): ${n}`),this.status=t,this.statusText=n,this.response=e}}class s extends o{response;constructor(e,t){const[n,a]="string"==typeof t?[t,void 0]:[t.message,t];super(`Response body error: ${n}`,a),this.response=e}}async function c(e,t){try{return await fetch(e,t)}catch(e){if(e instanceof TypeError)throw new r(e);throw e}}function l(e){return new Promise(t=>{setTimeout(t,e)})}function u(e,{backoffMultiplier:t=1,retryAfter:n=null}={}){if(n){const e=function(e){const t=function(e){const t=function(e){const t=e.trim();return/^[+-]?\d+$/.test(t)?parseInt(t,10):null}(e);return null===t||t<0?null:t}(e);if(null!==t)return 1e3*t;const n=Date.parse(e);return isNaN(n)?null:n-Date.now()}(n);if(null!==e)return Math.max(Math.min(e,1e4),500)}return Math.min(500*Math.pow(2,e),1e4)*t*(1+.1*(2*Math.random()-1))}class p{name="JsonBodyParser";async parse(e){try{return e.json()}catch(t){throw new s(e,t instanceof Error?t:"Failed to parse JSON")}}checkContentType(e){return e?.includes("application/json")??!1}}class d{name="VoidBodyParser";async parse(e){}checkContentType(e){return!0}}async function m(e,t,n,a,o){if(e.status>=200&&e.status<300){const{parser:n,ignoreContentTypeHeader:a=!1}=t??{},o=e.headers.get("Content-Type");if(!a&&!n.checkContentType(o))throw new s(e,`Did not expect Content-Type "${o}" for parser ${n.name}`);return t.parser.parse(e)}if(n>=5)throw new i(e);if(401===e.status&&o)return o(n+1);if(429===e.status||503===e.status){const t=u(n+2,{backoffMultiplier:2,retryAfter:e.headers.get("Retry-After")});return await l(t),a(n+3)}if(e.status>=400&&e.status<=499)throw new i(e);{const e=u(n);return await l(e),a(n+1)}}class h{rootUrl;appVersion;truesignEndpoint;tsToken=null;injectInto;partnerKey;constructor(e,t){this.truesignEndpoint=t?.truesignEndpoint,this.rootUrl=e,this.injectInto=t.injectInto??"query",this.appVersion=t.appVersion,this.partnerKey=t.partnerKey}async createTSToken(){try{const e={signal:AbortSignal.timeout(1e3)},t=await fetch(`https://edge.truesign.ai/v2/${this.truesignEndpoint}`,{...e}),n=await t.json();return this.tsToken=n.token,this.tsToken||"no-token"}catch(e){return console.error("Unable to request authentication token",e),this.tsToken="unauthenticated",this.tsToken}}async getTsToken(){return this.tsToken?this.tsToken:await this.createTSToken()}buildUrl(e){return new URL(`${this.rootUrl}${e}`)}async applyQueryParams(e,t){return function(e,t){const n=new URL(e);for(const[e,o]of Object.entries(t))if(Array.isArray(o)){n.searchParams.delete(e);for(const t of o)a(n,e,t,"append")}else a(n,e,o,"set");return n}(e,{...t,..."query"===this.injectInto?{...this.truesignEndpoint?{tsToken:await this.getTsToken()}:{},...this.partnerKey?{partnerKey:this.partnerKey}:{},appVersion:this.appVersion}:{}})}async applyHeaders(e){const t=new Headers(e);return"headers"===this.injectInto&&(this.truesignEndpoint&&t.set("X-TS-Token",await this.getTsToken()),this.partnerKey&&t.set("X-Partner-Key",this.partnerKey),t.set("X-App-Version",this.appVersion)),t}async get(e,{params:t={},request:n={},parser:a=new p,ignoreContentTypeHeader:o}={}){const r=this.buildUrl(e),i=await this.applyQueryParams(r,t),s=await this.applyHeaders(n?.headers);return this._get(i,0,{...n,headers:s},{parser:a,ignoreContentTypeHeader:o})}async _get(e,t,n,a){try{return m(await c(e,{...n,body:void 0,method:"GET"}),a,t,t=>this._get(e,t,n,a),this.truesignEndpoint?async t=>{await this.createTSToken();const o=await this.applyQueryParams(e),r=await this.applyHeaders(n.headers);return this._get(o,t,{...n,headers:r},a)}:null)}catch(t){throw console.error(`Error on get ${e.origin}${e.pathname}`,t),t}}async post(e,{params:t={},body:n=null,request:a={},parser:o=new d,ignoreContentTypeHeader:r}={}){const i=this.buildUrl(e),s=await this.applyQueryParams(i,t),c=await this.applyHeaders(a?.headers);n&&!c.has("Content-Type")&&c.set("Content-Type",n.getContentType());const l=n?n.getSerialized():null;return this._post(s,l,0,{...a,headers:c},{parser:o,ignoreContentTypeHeader:r})}async _post(e,t,n,a,o){try{return m(await c(e,{...a,body:t,method:"POST"}),o,n,n=>this._post(e,t,n,a,o),this.truesignEndpoint?async n=>{await this.createTSToken();const r=await this.applyQueryParams(e),i=await this.applyHeaders(a.headers);return this._post(r,t,n,{...a,headers:i},o)}:null)}catch(t){throw console.error(`Error on post ${e.origin}${e.pathname}`,t),t}}}class f{apiService=null;rootUrl;options;constructor(e,t){this.rootUrl=e,this.options=t,this.apiService=null}initialize(e){if(this.apiService)throw new Error("APIService already initialized");this.apiService=new h(this.rootUrl,{...this.options,...e})}get(){if(!this.apiService)throw new Error("APIService not initialized");return this.apiService}}const g=new f("https://events.getdirecto.com",{truesignEndpoint:"80298941"}),k=(g.get.bind(g),new f("https://vio-wrapper-api-cd-6981968610.europe-west4.run.app",{truesignEndpoint:"1678801807",injectInto:"headers"}));k.get.bind(k);const b=new f("https://rateshops.getdirecto.com",{truesignEndpoint:"1010119886",injectInto:"headers"}),y=b.get.bind(b);function v(e){if(e.success)return e.response;throw new Error(e.errorMessage)}const w=function(){const e=new Map;return new Proxy({},{get(t,n){if("string"!=typeof n)return;const a=n;return e.has(a)||e.set(a,function(e,t){return function(...n){let a;a=1===n.length?n[0]:void 0;const o={serverId:e,handlerId:t,...void 0!==a?{payload:a}:{}};return chrome.runtime.sendMessage(o).then(v)}}("DIRECTO_CORE_BACKGROUND",a)),e.get(a)}})}(),j=Array.isArray,_="object"==typeof global&&global&&global.Object===Object&&global;var x="object"==typeof self&&self&&self.Object===Object&&self;const z=_||x||Function("return this")(),C=z.Symbol;var S=Object.prototype,E=S.hasOwnProperty,O=S.toString,A=C?C.toStringTag:void 0;var P=Object.prototype.toString;var N=C?C.toStringTag:void 0;const T=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":N&&N in Object(e)?function(e){var t=E.call(e,A),n=e[A];try{e[A]=void 0;var a=!0}catch(e){}var o=O.call(e);return a&&(t?e[A]=n:delete e[A]),o}(e):function(e){return P.call(e)}(e)},I=function(e){return null!=e&&"object"==typeof e},L=function(e){return"symbol"==typeof e||I(e)&&"[object Symbol]"==T(e)};var D=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,R=/^\w*$/;const M=function(e,t){if(j(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!L(e))||R.test(e)||!D.test(e)||null!=t&&e in Object(t)},$=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},B=function(e){if(!$(e))return!1;var t=T(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},U=z["__core-js_shared__"];var F,V=(F=/[^.]+$/.exec(U&&U.keys&&U.keys.IE_PROTO||""))?"Symbol(src)_1."+F:"";var H=Function.prototype.toString;const K=function(e){if(null!=e){try{return H.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var q=/^\[object .+?Constructor\]$/,G=Function.prototype,Q=Object.prototype,W=G.toString,Y=Q.hasOwnProperty,J=RegExp("^"+W.call(Y).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const Z=function(e){return!(!$(e)||(t=e,V&&V in t))&&(B(e)?J:q).test(K(e));var t},X=function(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return Z(n)?n:void 0},ee=X(Object,"create");var te=Object.prototype.hasOwnProperty;var ne=Object.prototype.hasOwnProperty;function ae(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}ae.prototype.clear=function(){this.__data__=ee?ee(null):{},this.size=0},ae.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},ae.prototype.get=function(e){var t=this.__data__;if(ee){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return te.call(t,e)?t[e]:void 0},ae.prototype.has=function(e){var t=this.__data__;return ee?void 0!==t[e]:ne.call(t,e)},ae.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=ee&&void 0===t?"__lodash_hash_undefined__":t,this};const oe=ae,re=function(e,t){return e===t||e!=e&&t!=t},ie=function(e,t){for(var n=e.length;n--;)if(re(e[n][0],t))return n;return-1};var se=Array.prototype.splice;function ce(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}ce.prototype.clear=function(){this.__data__=[],this.size=0},ce.prototype.delete=function(e){var t=this.__data__,n=ie(t,e);return!(n<0||(n==t.length-1?t.pop():se.call(t,n,1),--this.size,0))},ce.prototype.get=function(e){var t=this.__data__,n=ie(t,e);return n<0?void 0:t[n][1]},ce.prototype.has=function(e){return ie(this.__data__,e)>-1},ce.prototype.set=function(e,t){var n=this.__data__,a=ie(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this};const le=ce,ue=X(z,"Map"),pe=function(e,t){var n,a,o=e.__data__;return("string"==(a=typeof(n=t))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?o["string"==typeof t?"string":"hash"]:o.map};function de(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}de.prototype.clear=function(){this.size=0,this.__data__={hash:new oe,map:new(ue||le),string:new oe}},de.prototype.delete=function(e){var t=pe(this,e).delete(e);return this.size-=t?1:0,t},de.prototype.get=function(e){return pe(this,e).get(e)},de.prototype.has=function(e){return pe(this,e).has(e)},de.prototype.set=function(e,t){var n=pe(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this};const me=de;function he(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var a=arguments,o=t?t.apply(this,a):a[0],r=n.cache;if(r.has(o))return r.get(o);var i=e.apply(this,a);return n.cache=r.set(o,i)||r,i};return n.cache=new(he.Cache||me),n}he.Cache=me;var fe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ge=/\\(\\)?/g;const ke=(be=function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(fe,function(e,n,a,o){t.push(a?o.replace(ge,"$1"):n||e)}),t},ye=he(be,function(e){return 500===ve.size&&ve.clear(),e}),ve=ye.cache,ye);var be,ye,ve;const we=function(e,t){for(var n=-1,a=null==e?0:e.length,o=Array(a);++n<a;)o[n]=t(e[n],n,e);return o};var je=C?C.prototype:void 0,_e=je?je.toString:void 0;const xe=function e(t){if("string"==typeof t)return t;if(j(t))return we(t,e)+"";if(L(t))return _e?_e.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n},ze=function(e){return null==e?"":xe(e)},Ce=function(e,t){return j(e)?e:M(e,t)?[e]:ke(ze(e))},Se=function(e){if("string"==typeof e||L(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t},Ee=function(e,t){for(var n=0,a=(t=Ce(t,e)).length;null!=e&&n<a;)e=e[Se(t[n++])];return n&&n==a?e:void 0},Oe=function(e,t,n){var a=null==e?void 0:Ee(e,t);return void 0===a?n:a},Ae=function(e,t){for(var n=-1,a=null==e?0:e.length;++n<a&&!1!==t(e[n],n,e););return e},Pe=function(e,t,n){for(var a=-1,o=Object(e),r=n(e),i=r.length;i--;){var s=r[++a];if(!1===t(o[s],s,o))break}return e},Ne=function(e){return I(e)&&"[object Arguments]"==T(e)};var Te=Object.prototype,Ie=Te.hasOwnProperty,Le=Te.propertyIsEnumerable;const De=Ne(function(){return arguments}())?Ne:function(e){return I(e)&&Ie.call(e,"callee")&&!Le.call(e,"callee")};var Re="object"==typeof exports&&exports&&!exports.nodeType&&exports,Me=Re&&"object"==typeof module&&module&&!module.nodeType&&module,$e=Me&&Me.exports===Re?z.Buffer:void 0;const Be=($e?$e.isBuffer:void 0)||function(){return!1};var Ue=/^(?:0|[1-9]\d*)$/;const Fe=function(e,t){var n=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&Ue.test(e))&&e>-1&&e%1==0&&e<t},Ve=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var He={};He["[object Float32Array]"]=He["[object Float64Array]"]=He["[object Int8Array]"]=He["[object Int16Array]"]=He["[object Int32Array]"]=He["[object Uint8Array]"]=He["[object Uint8ClampedArray]"]=He["[object Uint16Array]"]=He["[object Uint32Array]"]=!0,He["[object Arguments]"]=He["[object Array]"]=He["[object ArrayBuffer]"]=He["[object Boolean]"]=He["[object DataView]"]=He["[object Date]"]=He["[object Error]"]=He["[object Function]"]=He["[object Map]"]=He["[object Number]"]=He["[object Object]"]=He["[object RegExp]"]=He["[object Set]"]=He["[object String]"]=He["[object WeakMap]"]=!1;const Ke=function(e){return function(t){return e(t)}};var qe="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ge=qe&&"object"==typeof module&&module&&!module.nodeType&&module,Qe=Ge&&Ge.exports===qe&&_.process,We=function(){try{return Ge&&Ge.require&&Ge.require("util").types||Qe&&Qe.binding&&Qe.binding("util")}catch(e){}}(),Ye=We&&We.isTypedArray;const Je=Ye?Ke(Ye):function(e){return I(e)&&Ve(e.length)&&!!He[T(e)]};var Ze=Object.prototype.hasOwnProperty;const Xe=function(e,t){var n=j(e),a=!n&&De(e),o=!n&&!a&&Be(e),r=!n&&!a&&!o&&Je(e),i=n||a||o||r,s=i?function(e,t){for(var n=-1,a=Array(e);++n<e;)a[n]=t(n);return a}(e.length,String):[],c=s.length;for(var l in e)!t&&!Ze.call(e,l)||i&&("length"==l||o&&("offset"==l||"parent"==l)||r&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||Fe(l,c))||s.push(l);return s};var et=Object.prototype;const tt=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||et)},nt=function(e,t){return function(n){return e(t(n))}},at=nt(Object.keys,Object);var ot=Object.prototype.hasOwnProperty;const rt=function(e){if(!tt(e))return at(e);var t=[];for(var n in Object(e))ot.call(e,n)&&"constructor"!=n&&t.push(n);return t},it=function(e){return null!=e&&Ve(e.length)&&!B(e)},st=function(e){return it(e)?Xe(e):rt(e)},ct=function(e,t){return e&&Pe(e,t,st)},lt=(ut=ct,function(e,t){if(null==e)return e;if(!it(e))return ut(e,t);for(var n=e.length,a=-1,o=Object(e);++a<n&&!1!==t(o[a],a,o););return e});var ut;const pt=function(e){return e},dt=function(e,t){return(j(e)?Ae:lt)(e,"function"==typeof(n=t)?n:pt);var n},mt="userLocale";function ht(){let e;return e=null!=navigator.languages?navigator.languages[0]:navigator.language,e=e.split("-")[0]||e||"en",e}let ft=null;function gt(){return ft=ft||ht(),ft}!async function(){const{[mt]:e}=await chrome.storage.local.get(mt);ft=e??null}();const kt=X(z,"DataView"),bt=X(z,"Promise"),yt=X(z,"Set"),vt=X(z,"WeakMap");var wt="[object Map]",jt="[object Promise]",_t="[object Set]",xt="[object WeakMap]",zt="[object DataView]",Ct=K(kt),St=K(ue),Et=K(bt),Ot=K(yt),At=K(vt),Pt=T;(kt&&Pt(new kt(new ArrayBuffer(1)))!=zt||ue&&Pt(new ue)!=wt||bt&&Pt(bt.resolve())!=jt||yt&&Pt(new yt)!=_t||vt&&Pt(new vt)!=xt)&&(Pt=function(e){var t=T(e),n="[object Object]"==t?e.constructor:void 0,a=n?K(n):"";if(a)switch(a){case Ct:return zt;case St:return wt;case Et:return jt;case Ot:return _t;case At:return xt}return t});const Nt=Pt;var Tt=Object.prototype.hasOwnProperty;const It=function(e){if(null==e)return!0;if(it(e)&&(j(e)||"string"==typeof e||"function"==typeof e.splice||Be(e)||Je(e)||De(e)))return!e.length;var t=Nt(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(tt(e))return!rt(e).length;for(var n in e)if(Tt.call(e,n))return!1;return!0},Lt=function(e){return function(e){return"number"==typeof e||I(e)&&"[object Number]"==T(e)}(e)&&e!=+e};function Dt(e,t=It,n=10){let a=0;return async function o(...r){const i=await e(...r);return t(i)&&a<=n?(a+=1,await new Promise(e=>setTimeout(e,2**a)),o(...r)):i}}function Rt(e){return e?.includes("NaN")||Lt(e)?null:e}function Mt(e,t=2){const n="0".repeat(t)+e;return n.slice(n.length-t,n.length)}function $t(e){if(function(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}(e))return e}function Bt(e,t){const n="function"==typeof t?t:e=>t.test(e),a=Object.keys(e).find(n);if(a)return e[a]}function Ut(e,t=document){let n=null;for(const a of e){const e=t.querySelector(a);if(e){n=e;break}}return n}function Ft(e,t=document){let n=null;for(const a of e){const e=t.querySelectorAll(a);if(e.length){n=e;break}}return n}async function Vt(e,t,n){if(n.signal?.aborted)return;const a=await Dt(Ut,e=>!e)(e);if(n.signal?.aborted)return;if(!a){if(null!==n.retryMs){const a=setTimeout(()=>{Vt(e,t,n)},n.retryMs),o=()=>{n.signal?.removeEventListener("abort",o),clearTimeout(a)};n.signal?.addEventListener("abort",o)}return}const o=await t(a);if(!n.signal?.aborted&&null!==n.checkIntervalMs){const r=setInterval(()=>{a.isConnected||(o?.(),clearInterval(r),Vt(e,t,n))},n.checkIntervalMs),i=()=>{n.signal?.removeEventListener("abort",i),clearInterval(r)};n.signal?.addEventListener("abort",i)}}function Ht(){let e=document.documentElement.lang;return e=e.split("-")[0],e?e.toLowerCase():null}async function Kt(e){const t=await Dt(Ut,e=>!e||!e.textContent,10)(e);if(!t||!t.textContent)return null;let n;try{n=JSON.parse(t.textContent)}catch(t){return console.error("Error parsing JSON from selectors",e,t),null}const a=$t(n);return!a||It(a)?null:a}function qt(e){return e.checkVisibility({contentVisibilityAuto:!0,opacityProperty:!0,visibilityProperty:!0})}function Gt(e){const t=e.textContent.trim();return""!==t?t:"value"in e&&"string"==typeof e.value?e.value.trim():null}class Qt{platform;constructor(e){this.platform=e}}class Wt extends Qt{constructor(e){super(e)}async getDestination(){return null}async shouldActivate(){return!1}async handleCrossSell(){}async getQueryParamMap(e){throw new Error("Method not implemented.")}async buildQueryParams(e,t=window.location.href){const n=new URL(t),a=(await this.getQueryParamMap(n))[e];return(B(a)?await a():Rt(n.searchParams.get(a)))||null}}class Yt{year;month;day;constructor(e,t,n){this.year=e,this.month=t,this.day=n}static today(){return Yt.fromDate(new Date)}static fromRaw(e){return new Yt(e.year,e.month,e.day)}static fromDate(e){return new Yt(e.getFullYear(),e.getMonth()+1,e.getDate())}static tryFromSlashDDMMYY(e){const t=e.match(/^(\d{2})\/(\d{2})\/(\d{2})$/);if(!t)return null;const[,n,a,o]=t;return new Yt(2e3+parseInt(o,10),parseInt(a,10),parseInt(n,10))}static tryFromSlashDMY(e){const t=e.match(/^(\d{1,2})\/(\d{1,2})\/(\d{1,2})$/);if(!t)return null;const[,n,a,o]=t;return new Yt(2e3+parseInt(o,10),parseInt(a,10),parseInt(n,10))}static tryFromDashYYYYMMDD(e){const t=e.match(/^(\d{4})-(\d{2})-(\d{2})$/);if(!t)return null;const[,n,a,o]=t;return new Yt(parseInt(n,10),parseInt(a,10),parseInt(o,10))}static tryFromSlashDDMMYYYY(e){const t=e.match(/^(\d{2})\/(\d{2})\/(\d{4})$/);if(!t)return null;const[,n,a,o]=t;return new Yt(parseInt(o,10),parseInt(a,10),parseInt(n,10))}toDashYYYYMMDD(){return`${Mt(this.year,4)}-${Mt(this.month)}-${Mt(this.day)}`}unsafe_toDate(){return new Date(this.year,this.month-1,this.day,0,0,0,0)}}function Jt(e,t){const n=new Date(e);return n.setDate(e.getDate()+t),n}function Zt(e){if(!e)return null;const t=new Date(e);if(!isNaN(t.getTime()))return`${t.getFullYear()}-${Mt(t.getUTCMonth()+1)}-${Mt(t.getUTCDate())}`;const n=e?.split("/");return 3===n?.length?`${2===n[2].length?`20${n[2]}`:n[2]}-${Mt(n[1])}-${Mt(n[0])}`:e}function Xt(e){if(!e)return null;if(e.includes("-")){if(/^\d{4}-\d{1,2}-\d{1,2}$/.test(e)){const[t,n,a]=e.split("-");return`${t}-${Mt(n)}-${Mt(a)}`}if(/^\d{1,2}-\d{1,2}-\d{2,4}$/.test(e)){const[t,n,a]=e.split("-");return`${2===a.length?"20":""}${a}-${Mt(n)}-${Mt(t)}`}return null}if(/^\d{8}$/.test(e))return`${e.substring(0,4)}-${e.substring(4,6)}-${e.substring(6,8)}`;if(e.includes("/")){const[t,n,a]=e.split("/");return t&&n&&a?`${2===a.length?"20":""}${a}-${Mt(n)}-${Mt(t)}`:null}return null}function en(e){return e.toISOString().split("T")[0]}function tn(e){return e.trim().normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function nn(e){const t=new Date(e.year,e.month-1,e.day+1);return Yt.fromDate(t)}function an(e,t){const n=new AbortController;return e.addEventListener("click",async n=>{if(n instanceof MouseEvent&&null!==n.view&&"isSynthetic"in n.view&&"boolean"==typeof n.view.isSynthetic&&n.view.isSynthetic)return;n.preventDefault(),n.stopPropagation(),n.stopImmediatePropagation();try{await t()}catch(e){console.error(e)}const a=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:Object.assign(window,{isSynthetic:!0})});setTimeout(()=>{e.dispatchEvent(a)},100)},{capture:!0,signal:n.signal}),n}const on="EUR",rn=1e3;function sn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var cn,ln;const un=sn(function(){if(ln)return cn;ln=1;const e=2147483647,t=36,n=/^xn--/,a=/[^\0-\x7F]/,o=/[\x2E\u3002\uFF0E\uFF61]/g,r={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},i=Math.floor,s=String.fromCharCode;function c(e){throw new RangeError(r[e])}function l(e,t){const n=e.split("@");let a="";n.length>1&&(a=n[0]+"@",e=n[1]);const r=function(e,t){const n=[];let a=e.length;for(;a--;)n[a]=t(e[a]);return n}((e=e.replace(o,".")).split("."),t).join(".");return a+r}function u(e){const t=[];let n=0;const a=e.length;for(;n<a;){const o=e.charCodeAt(n++);if(o>=55296&&o<=56319&&n<a){const a=e.charCodeAt(n++);56320==(64512&a)?t.push(((1023&o)<<10)+(1023&a)+65536):(t.push(o),n--)}else t.push(o)}return t}const p=function(e){return e>=48&&e<58?e-48+26:e>=65&&e<91?e-65:e>=97&&e<123?e-97:t},d=function(e,t){return e+22+75*(e<26)-((0!=t)<<5)},m=function(e,n,a){let o=0;for(e=a?i(e/700):e>>1,e+=i(e/n);e>455;o+=t)e=i(e/35);return i(o+36*e/(e+38))},h=function(n){const a=[],o=n.length;let r=0,s=128,l=72,u=n.lastIndexOf("-");u<0&&(u=0);for(let e=0;e<u;++e)n.charCodeAt(e)>=128&&c("not-basic"),a.push(n.charCodeAt(e));for(let d=u>0?u+1:0;d<o;){const u=r;for(let a=1,s=t;;s+=t){d>=o&&c("invalid-input");const u=p(n.charCodeAt(d++));u>=t&&c("invalid-input"),u>i((e-r)/a)&&c("overflow"),r+=u*a;const m=s<=l?1:s>=l+26?26:s-l;if(u<m)break;const h=t-m;a>i(e/h)&&c("overflow"),a*=h}const h=a.length+1;l=m(r-u,h,0==u),i(r/h)>e-s&&c("overflow"),s+=i(r/h),r%=h,a.splice(r++,0,s)}return String.fromCodePoint(...a)},f=function(n){const a=[],o=(n=u(n)).length;let r=128,l=0,p=72;for(const e of n)e<128&&a.push(s(e));const h=a.length;let f=h;for(h&&a.push("-");f<o;){let o=e;for(const e of n)e>=r&&e<o&&(o=e);const u=f+1;o-r>i((e-l)/u)&&c("overflow"),l+=(o-r)*u,r=o;for(const o of n)if(o<r&&++l>e&&c("overflow"),o===r){let e=l;for(let n=t;;n+=t){const o=n<=p?1:n>=p+26?26:n-p;if(e<o)break;const r=e-o,c=t-o;a.push(s(d(o+r%c,0))),e=i(r/c)}a.push(s(d(e,0))),p=m(l,u,f===h),l=0,++f}++l,++r}return a.join("")};return cn={version:"2.3.1",ucs2:{decode:u,encode:e=>String.fromCodePoint(...e)},decode:h,encode:f,toASCII:function(e){return l(e,function(e){return a.test(e)?"xn--"+f(e):e})},toUnicode:function(e){return l(e,function(e){return n.test(e)?h(e.slice(4).toLowerCase()):e})}}}());function pn(e){let t=e.trim();return/^(?:f|ht)tps?\:\/\//.test(t)||(t="http://"+t),new URL(t)}function dn(e){return e.hostname.replace(/^www\./,"")}function mn(e){try{return dn("string"==typeof e?pn(e):e)}catch(t){return console.error("Invalid URL:",e,t),e.toString()}}["ac","com.ac","edu.ac","gov.ac","mil.ac","net.ac","org.ac","ad","ae","ac.ae","co.ae","gov.ae","mil.ae","net.ae","org.ae","sch.ae","aero","airline.aero","airport.aero","accident-investigation.aero","accident-prevention.aero","aerobatic.aero","aeroclub.aero","aerodrome.aero","agents.aero","air-surveillance.aero","air-traffic-control.aero","aircraft.aero","airtraffic.aero","ambulance.aero","association.aero","author.aero","ballooning.aero","broker.aero","caa.aero","cargo.aero","catering.aero","certification.aero","championship.aero","charter.aero","civilaviation.aero","club.aero","conference.aero","consultant.aero","consulting.aero","control.aero","council.aero","crew.aero","design.aero","dgca.aero","educator.aero","emergency.aero","engine.aero","engineer.aero","entertainment.aero","equipment.aero","exchange.aero","express.aero","federation.aero","flight.aero","freight.aero","fuel.aero","gliding.aero","government.aero","groundhandling.aero","group.aero","hanggliding.aero","homebuilt.aero","insurance.aero","journal.aero","journalist.aero","leasing.aero","logistics.aero","magazine.aero","maintenance.aero","marketplace.aero","media.aero","microlight.aero","modelling.aero","navigation.aero","parachuting.aero","paragliding.aero","passenger-association.aero","pilot.aero","press.aero","production.aero","recreation.aero","repbody.aero","res.aero","research.aero","rotorcraft.aero","safety.aero","scientist.aero","services.aero","show.aero","skydiving.aero","software.aero","student.aero","taxi.aero","trader.aero","trading.aero","trainer.aero","union.aero","workinggroup.aero","works.aero","af","com.af","edu.af","gov.af","net.af","org.af","ag","co.ag","com.ag","net.ag","nom.ag","org.ag","ai","com.ai","net.ai","off.ai","org.ai","al","com.al","edu.al","gov.al","mil.al","net.al","org.al","am","co.am","com.am","commune.am","net.am","org.am","ao","co.ao","ed.ao","edu.ao","gov.ao","gv.ao","it.ao","og.ao","org.ao","pb.ao","aq","ar","bet.ar","com.ar","coop.ar","edu.ar","gob.ar","gov.ar","int.ar","mil.ar","musica.ar","mutual.ar","net.ar","org.ar","senasa.ar","tur.ar","arpa","e164.arpa","home.arpa","in-addr.arpa","ip6.arpa","iris.arpa","uri.arpa","urn.arpa","as","gov.as","asia","at","ac.at","sth.ac.at","co.at","gv.at","or.at","au","asn.au","com.au","edu.au","gov.au","id.au","net.au","org.au","conf.au","oz.au","act.au","nsw.au","nt.au","qld.au","sa.au","tas.au","vic.au","wa.au","act.edu.au","catholic.edu.au","nsw.edu.au","nt.edu.au","qld.edu.au","sa.edu.au","tas.edu.au","vic.edu.au","wa.edu.au","qld.gov.au","sa.gov.au","tas.gov.au","vic.gov.au","wa.gov.au","schools.nsw.edu.au","aw","com.aw","ax","az","biz.az","com.az","edu.az","gov.az","info.az","int.az","mil.az","name.az","net.az","org.az","pp.az","pro.az","ba","com.ba","edu.ba","gov.ba","mil.ba","net.ba","org.ba","bb","biz.bb","co.bb","com.bb","edu.bb","gov.bb","info.bb","net.bb","org.bb","store.bb","tv.bb","*.bd","be","ac.be","bf","gov.bf","bg","0.bg","1.bg","2.bg","3.bg","4.bg","5.bg","6.bg","7.bg","8.bg","9.bg","a.bg","b.bg","c.bg","d.bg","e.bg","f.bg","g.bg","h.bg","i.bg","j.bg","k.bg","l.bg","m.bg","n.bg","o.bg","p.bg","q.bg","r.bg","s.bg","t.bg","u.bg","v.bg","w.bg","x.bg","y.bg","z.bg","bh","com.bh","edu.bh","gov.bh","net.bh","org.bh","bi","co.bi","com.bi","edu.bi","or.bi","org.bi","biz","bj","africa.bj","agro.bj","architectes.bj","assur.bj","avocats.bj","co.bj","com.bj","eco.bj","econo.bj","edu.bj","info.bj","loisirs.bj","money.bj","net.bj","org.bj","ote.bj","restaurant.bj","resto.bj","tourism.bj","univ.bj","bm","com.bm","edu.bm","gov.bm","net.bm","org.bm","bn","com.bn","edu.bn","gov.bn","net.bn","org.bn","bo","com.bo","edu.bo","gob.bo","int.bo","mil.bo","net.bo","org.bo","tv.bo","web.bo","academia.bo","agro.bo","arte.bo","blog.bo","bolivia.bo","ciencia.bo","cooperativa.bo","democracia.bo","deporte.bo","ecologia.bo","economia.bo","empresa.bo","indigena.bo","industria.bo","info.bo","medicina.bo","movimiento.bo","musica.bo","natural.bo","nombre.bo","noticias.bo","patria.bo","plurinacional.bo","politica.bo","profesional.bo","pueblo.bo","revista.bo","salud.bo","tecnologia.bo","tksat.bo","transporte.bo","wiki.bo","br","9guacu.br","abc.br","adm.br","adv.br","agr.br","aju.br","am.br","anani.br","aparecida.br","app.br","arq.br","art.br","ato.br","b.br","barueri.br","belem.br","bet.br","bhz.br","bib.br","bio.br","blog.br","bmd.br","boavista.br","bsb.br","campinagrande.br","campinas.br","caxias.br","cim.br","cng.br","cnt.br","com.br","contagem.br","coop.br","coz.br","cri.br","cuiaba.br","curitiba.br","def.br","des.br","det.br","dev.br","ecn.br","eco.br","edu.br","emp.br","enf.br","eng.br","esp.br","etc.br","eti.br","far.br","feira.br","flog.br","floripa.br","fm.br","fnd.br","fortal.br","fot.br","foz.br","fst.br","g12.br","geo.br","ggf.br","goiania.br","gov.br","ac.gov.br","al.gov.br","am.gov.br","ap.gov.br","ba.gov.br","ce.gov.br","df.gov.br","es.gov.br","go.gov.br","ma.gov.br","mg.gov.br","ms.gov.br","mt.gov.br","pa.gov.br","pb.gov.br","pe.gov.br","pi.gov.br","pr.gov.br","rj.gov.br","rn.gov.br","ro.gov.br","rr.gov.br","rs.gov.br","sc.gov.br","se.gov.br","sp.gov.br","to.gov.br","gru.br","imb.br","ind.br","inf.br","jab.br","jampa.br","jdf.br","joinville.br","jor.br","jus.br","leg.br","leilao.br","lel.br","log.br","londrina.br","macapa.br","maceio.br","manaus.br","maringa.br","mat.br","med.br","mil.br","morena.br","mp.br","mus.br","natal.br","net.br","niteroi.br","*.nom.br","not.br","ntr.br","odo.br","ong.br","org.br","osasco.br","palmas.br","poa.br","ppg.br","pro.br","psc.br","psi.br","pvh.br","qsl.br","radio.br","rec.br","recife.br","rep.br","ribeirao.br","rio.br","riobranco.br","riopreto.br","salvador.br","sampa.br","santamaria.br","santoandre.br","saobernardo.br","saogonca.br","seg.br","sjc.br","slg.br","slz.br","sorocaba.br","srv.br","taxi.br","tc.br","tec.br","teo.br","the.br","tmp.br","trd.br","tur.br","tv.br","udi.br","vet.br","vix.br","vlog.br","wiki.br","zlg.br","bs","com.bs","edu.bs","gov.bs","net.bs","org.bs","bt","com.bt","edu.bt","gov.bt","net.bt","org.bt","bv","bw","co.bw","org.bw","by","gov.by","mil.by","com.by","of.by","bz","co.bz","com.bz","edu.bz","gov.bz","net.bz","org.bz","ca","ab.ca","bc.ca","mb.ca","nb.ca","nf.ca","nl.ca","ns.ca","nt.ca","nu.ca","on.ca","pe.ca","qc.ca","sk.ca","yk.ca","gc.ca","cat","cc","cd","gov.cd","cf","cg","ch","ci","ac.ci","aéroport.ci","asso.ci","co.ci","com.ci","ed.ci","edu.ci","go.ci","gouv.ci","int.ci","net.ci","or.ci","org.ci","*.ck","!www.ck","cl","co.cl","gob.cl","gov.cl","mil.cl","cm","co.cm","com.cm","gov.cm","net.cm","cn","ac.cn","com.cn","edu.cn","gov.cn","mil.cn","net.cn","org.cn","公司.cn","網絡.cn","网络.cn","ah.cn","bj.cn","cq.cn","fj.cn","gd.cn","gs.cn","gx.cn","gz.cn","ha.cn","hb.cn","he.cn","hi.cn","hk.cn","hl.cn","hn.cn","jl.cn","js.cn","jx.cn","ln.cn","mo.cn","nm.cn","nx.cn","qh.cn","sc.cn","sd.cn","sh.cn","sn.cn","sx.cn","tj.cn","tw.cn","xj.cn","xz.cn","yn.cn","zj.cn","co","com.co","edu.co","gov.co","mil.co","net.co","nom.co","org.co","com","coop","cr","ac.cr","co.cr","ed.cr","fi.cr","go.cr","or.cr","sa.cr","cu","com.cu","edu.cu","gob.cu","inf.cu","nat.cu","net.cu","org.cu","cv","com.cv","edu.cv","id.cv","int.cv","net.cv","nome.cv","org.cv","publ.cv","cw","com.cw","edu.cw","net.cw","org.cw","cx","gov.cx","cy","ac.cy","biz.cy","com.cy","ekloges.cy","gov.cy","ltd.cy","mil.cy","net.cy","org.cy","press.cy","pro.cy","tm.cy","cz","de","dj","dk","dm","co.dm","com.dm","edu.dm","gov.dm","net.dm","org.dm","do","art.do","com.do","edu.do","gob.do","gov.do","mil.do","net.do","org.do","sld.do","web.do","dz","art.dz","asso.dz","com.dz","edu.dz","gov.dz","net.dz","org.dz","pol.dz","soc.dz","tm.dz","ec","com.ec","edu.ec","fin.ec","gob.ec","gov.ec","info.ec","k12.ec","med.ec","mil.ec","net.ec","org.ec","pro.ec","edu","ee","aip.ee","com.ee","edu.ee","fie.ee","gov.ee","lib.ee","med.ee","org.ee","pri.ee","riik.ee","eg","ac.eg","com.eg","edu.eg","eun.eg","gov.eg","info.eg","me.eg","mil.eg","name.eg","net.eg","org.eg","sci.eg","sport.eg","tv.eg","*.er","es","com.es","edu.es","gob.es","nom.es","org.es","et","biz.et","com.et","edu.et","gov.et","info.et","name.et","net.et","org.et","eu","fi","aland.fi","fj","ac.fj","biz.fj","com.fj","gov.fj","info.fj","mil.fj","name.fj","net.fj","org.fj","pro.fj","*.fk","fm","com.fm","edu.fm","net.fm","org.fm","fo","fr","asso.fr","com.fr","gouv.fr","nom.fr","prd.fr","tm.fr","avoues.fr","cci.fr","greta.fr","huissier-justice.fr","ga","gb","gd","edu.gd","gov.gd","ge","com.ge","edu.ge","gov.ge","net.ge","org.ge","pvt.ge","school.ge","gf","gg","co.gg","net.gg","org.gg","gh","com.gh","edu.gh","gov.gh","mil.gh","org.gh","gi","com.gi","edu.gi","gov.gi","ltd.gi","mod.gi","org.gi","gl","co.gl","com.gl","edu.gl","net.gl","org.gl","gm","gn","ac.gn","com.gn","edu.gn","gov.gn","net.gn","org.gn","gov","gp","asso.gp","com.gp","edu.gp","mobi.gp","net.gp","org.gp","gq","gr","com.gr","edu.gr","gov.gr","net.gr","org.gr","gs","gt","com.gt","edu.gt","gob.gt","ind.gt","mil.gt","net.gt","org.gt","gu","com.gu","edu.gu","gov.gu","guam.gu","info.gu","net.gu","org.gu","web.gu","gw","gy","co.gy","com.gy","edu.gy","gov.gy","net.gy","org.gy","hk","com.hk","edu.hk","gov.hk","idv.hk","net.hk","org.hk","个人.hk","個人.hk","公司.hk","政府.hk","敎育.hk","教育.hk","箇人.hk","組織.hk","組织.hk","網絡.hk","網络.hk","组織.hk","组织.hk","网絡.hk","网络.hk","hm","hn","com.hn","edu.hn","gob.hn","mil.hn","net.hn","org.hn","hr","com.hr","from.hr","iz.hr","name.hr","ht","adult.ht","art.ht","asso.ht","com.ht","coop.ht","edu.ht","firm.ht","gouv.ht","info.ht","med.ht","net.ht","org.ht","perso.ht","pol.ht","pro.ht","rel.ht","shop.ht","hu","2000.hu","agrar.hu","bolt.hu","casino.hu","city.hu","co.hu","erotica.hu","erotika.hu","film.hu","forum.hu","games.hu","hotel.hu","info.hu","ingatlan.hu","jogasz.hu","konyvelo.hu","lakas.hu","media.hu","news.hu","org.hu","priv.hu","reklam.hu","sex.hu","shop.hu","sport.hu","suli.hu","szex.hu","tm.hu","tozsde.hu","utazas.hu","video.hu","id","ac.id","biz.id","co.id","desa.id","go.id","mil.id","my.id","net.id","or.id","ponpes.id","sch.id","web.id","ie","gov.ie","il","ac.il","co.il","gov.il","idf.il","k12.il","muni.il","net.il","org.il","ישראל","אקדמיה.ישראל","ישוב.ישראל","צהל.ישראל","ממשל.ישראל","im","ac.im","co.im","ltd.co.im","plc.co.im","com.im","net.im","org.im","tt.im","tv.im","in","5g.in","6g.in","ac.in","ai.in","am.in","bihar.in","biz.in","business.in","ca.in","cn.in","co.in","com.in","coop.in","cs.in","delhi.in","dr.in","edu.in","er.in","firm.in","gen.in","gov.in","gujarat.in","ind.in","info.in","int.in","internet.in","io.in","me.in","mil.in","net.in","nic.in","org.in","pg.in","post.in","pro.in","res.in","travel.in","tv.in","uk.in","up.in","us.in","info","int","eu.int","io","co.io","com.io","edu.io","gov.io","mil.io","net.io","nom.io","org.io","iq","com.iq","edu.iq","gov.iq","mil.iq","net.iq","org.iq","ir","ac.ir","co.ir","gov.ir","id.ir","net.ir","org.ir","sch.ir","ایران.ir","ايران.ir","is","it","edu.it","gov.it","abr.it","abruzzo.it","aosta-valley.it","aostavalley.it","bas.it","basilicata.it","cal.it","calabria.it","cam.it","campania.it","emilia-romagna.it","emiliaromagna.it","emr.it","friuli-v-giulia.it","friuli-ve-giulia.it","friuli-vegiulia.it","friuli-venezia-giulia.it","friuli-veneziagiulia.it","friuli-vgiulia.it","friuliv-giulia.it","friulive-giulia.it","friulivegiulia.it","friulivenezia-giulia.it","friuliveneziagiulia.it","friulivgiulia.it","fvg.it","laz.it","lazio.it","lig.it","liguria.it","lom.it","lombardia.it","lombardy.it","lucania.it","mar.it","marche.it","mol.it","molise.it","piedmont.it","piemonte.it","pmn.it","pug.it","puglia.it","sar.it","sardegna.it","sardinia.it","sic.it","sicilia.it","sicily.it","taa.it","tos.it","toscana.it","trentin-sud-tirol.it","trentin-süd-tirol.it","trentin-sudtirol.it","trentin-südtirol.it","trentin-sued-tirol.it","trentin-suedtirol.it","trentino.it","trentino-a-adige.it","trentino-aadige.it","trentino-alto-adige.it","trentino-altoadige.it","trentino-s-tirol.it","trentino-stirol.it","trentino-sud-tirol.it","trentino-süd-tirol.it","trentino-sudtirol.it","trentino-südtirol.it","trentino-sued-tirol.it","trentino-suedtirol.it","trentinoa-adige.it","trentinoaadige.it","trentinoalto-adige.it","trentinoaltoadige.it","trentinos-tirol.it","trentinostirol.it","trentinosud-tirol.it","trentinosüd-tirol.it","trentinosudtirol.it","trentinosüdtirol.it","trentinosued-tirol.it","trentinosuedtirol.it","trentinsud-tirol.it","trentinsüd-tirol.it","trentinsudtirol.it","trentinsüdtirol.it","trentinsued-tirol.it","trentinsuedtirol.it","tuscany.it","umb.it","umbria.it","val-d-aosta.it","val-daosta.it","vald-aosta.it","valdaosta.it","valle-aosta.it","valle-d-aosta.it","valle-daosta.it","valleaosta.it","valled-aosta.it","valledaosta.it","vallee-aoste.it","vallée-aoste.it","vallee-d-aoste.it","vallée-d-aoste.it","valleeaoste.it","valléeaoste.it","valleedaoste.it","valléedaoste.it","vao.it","vda.it","ven.it","veneto.it","ag.it","agrigento.it","al.it","alessandria.it","alto-adige.it","altoadige.it","an.it","ancona.it","andria-barletta-trani.it","andria-trani-barletta.it","andriabarlettatrani.it","andriatranibarletta.it","ao.it","aosta.it","aoste.it","ap.it","aq.it","aquila.it","ar.it","arezzo.it","ascoli-piceno.it","ascolipiceno.it","asti.it","at.it","av.it","avellino.it","ba.it","balsan.it","balsan-sudtirol.it","balsan-südtirol.it","balsan-suedtirol.it","bari.it","barletta-trani-andria.it","barlettatraniandria.it","belluno.it","benevento.it","bergamo.it","bg.it","bi.it","biella.it","bl.it","bn.it","bo.it","bologna.it","bolzano.it","bolzano-altoadige.it","bozen.it","bozen-sudtirol.it","bozen-südtirol.it","bozen-suedtirol.it","br.it","brescia.it","brindisi.it","bs.it","bt.it","bulsan.it","bulsan-sudtirol.it","bulsan-südtirol.it","bulsan-suedtirol.it","bz.it","ca.it","cagliari.it","caltanissetta.it","campidano-medio.it","campidanomedio.it","campobasso.it","carbonia-iglesias.it","carboniaiglesias.it","carrara-massa.it","carraramassa.it","caserta.it","catania.it","catanzaro.it","cb.it","ce.it","cesena-forli.it","cesena-forlì.it","cesenaforli.it","cesenaforlì.it","ch.it","chieti.it","ci.it","cl.it","cn.it","co.it","como.it","cosenza.it","cr.it","cremona.it","crotone.it","cs.it","ct.it","cuneo.it","cz.it","dell-ogliastra.it","dellogliastra.it","en.it","enna.it","fc.it","fe.it","fermo.it","ferrara.it","fg.it","fi.it","firenze.it","florence.it","fm.it","foggia.it","forli-cesena.it","forlì-cesena.it","forlicesena.it","forlìcesena.it","fr.it","frosinone.it","ge.it","genoa.it","genova.it","go.it","gorizia.it","gr.it","grosseto.it","iglesias-carbonia.it","iglesiascarbonia.it","im.it","imperia.it","is.it","isernia.it","kr.it","la-spezia.it","laquila.it","laspezia.it","latina.it","lc.it","le.it","lecce.it","lecco.it","li.it","livorno.it","lo.it","lodi.it","lt.it","lu.it","lucca.it","macerata.it","mantova.it","massa-carrara.it","massacarrara.it","matera.it","mb.it","mc.it","me.it","medio-campidano.it","mediocampidano.it","messina.it","mi.it","milan.it","milano.it","mn.it","mo.it","modena.it","monza.it","monza-brianza.it","monza-e-della-brianza.it","monzabrianza.it","monzaebrianza.it","monzaedellabrianza.it","ms.it","mt.it","na.it","naples.it","napoli.it","no.it","novara.it","nu.it","nuoro.it","og.it","ogliastra.it","olbia-tempio.it","olbiatempio.it","or.it","oristano.it","ot.it","pa.it","padova.it","padua.it","palermo.it","parma.it","pavia.it","pc.it","pd.it","pe.it","perugia.it","pesaro-urbino.it","pesarourbino.it","pescara.it","pg.it","pi.it","piacenza.it","pisa.it","pistoia.it","pn.it","po.it","pordenone.it","potenza.it","pr.it","prato.it","pt.it","pu.it","pv.it","pz.it","ra.it","ragusa.it","ravenna.it","rc.it","re.it","reggio-calabria.it","reggio-emilia.it","reggiocalabria.it","reggioemilia.it","rg.it","ri.it","rieti.it","rimini.it","rm.it","rn.it","ro.it","roma.it","rome.it","rovigo.it","sa.it","salerno.it","sassari.it","savona.it","si.it","siena.it","siracusa.it","so.it","sondrio.it","sp.it","sr.it","ss.it","südtirol.it","suedtirol.it","sv.it","ta.it","taranto.it","te.it","tempio-olbia.it","tempioolbia.it","teramo.it","terni.it","tn.it","to.it","torino.it","tp.it","tr.it","trani-andria-barletta.it","trani-barletta-andria.it","traniandriabarletta.it","tranibarlettaandria.it","trapani.it","trento.it","treviso.it","trieste.it","ts.it","turin.it","tv.it","ud.it","udine.it","urbino-pesaro.it","urbinopesaro.it","va.it","varese.it","vb.it","vc.it","ve.it","venezia.it","venice.it","verbania.it","vercelli.it","verona.it","vi.it","vibo-valentia.it","vibovalentia.it","vicenza.it","viterbo.it","vr.it","vs.it","vt.it","vv.it","je","co.je","net.je","org.je","*.jm","jo","agri.jo","ai.jo","com.jo","edu.jo","eng.jo","fm.jo","gov.jo","mil.jo","net.jo","org.jo","per.jo","phd.jo","sch.jo","tv.jo","jobs","jp","ac.jp","ad.jp","co.jp","ed.jp","go.jp","gr.jp","lg.jp","ne.jp","or.jp","aichi.jp","akita.jp","aomori.jp","chiba.jp","ehime.jp","fukui.jp","fukuoka.jp","fukushima.jp","gifu.jp","gunma.jp","hiroshima.jp","hokkaido.jp","hyogo.jp","ibaraki.jp","ishikawa.jp","iwate.jp","kagawa.jp","kagoshima.jp","kanagawa.jp","kochi.jp","kumamoto.jp","kyoto.jp","mie.jp","miyagi.jp","miyazaki.jp","nagano.jp","nagasaki.jp","nara.jp","niigata.jp","oita.jp","okayama.jp","okinawa.jp","osaka.jp","saga.jp","saitama.jp","shiga.jp","shimane.jp","shizuoka.jp","tochigi.jp","tokushima.jp","tokyo.jp","tottori.jp","toyama.jp","wakayama.jp","yamagata.jp","yamaguchi.jp","yamanashi.jp","三重.jp","京都.jp","佐賀.jp","兵庫.jp","北海道.jp","千葉.jp","和歌山.jp","埼玉.jp","大分.jp","大阪.jp","奈良.jp","宮城.jp","宮崎.jp","富山.jp","山口.jp","山形.jp","山梨.jp","岐阜.jp","岡山.jp","岩手.jp","島根.jp","広島.jp","徳島.jp","愛媛.jp","愛知.jp","新潟.jp","東京.jp","栃木.jp","沖縄.jp","滋賀.jp","熊本.jp","石川.jp","神奈川.jp","福井.jp","福岡.jp","福島.jp","秋田.jp","群馬.jp","茨城.jp","長崎.jp","長野.jp","青森.jp","静岡.jp","香川.jp","高知.jp","鳥取.jp","鹿児島.jp","*.kawasaki.jp","!city.kawasaki.jp","*.kitakyushu.jp","!city.kitakyushu.jp","*.kobe.jp","!city.kobe.jp","*.nagoya.jp","!city.nagoya.jp","*.sapporo.jp","!city.sapporo.jp","*.sendai.jp","!city.sendai.jp","*.yokohama.jp","!city.yokohama.jp","aisai.aichi.jp","ama.aichi.jp","anjo.aichi.jp","asuke.aichi.jp","chiryu.aichi.jp","chita.aichi.jp","fuso.aichi.jp","gamagori.aichi.jp","handa.aichi.jp","hazu.aichi.jp","hekinan.aichi.jp","higashiura.aichi.jp","ichinomiya.aichi.jp","inazawa.aichi.jp","inuyama.aichi.jp","isshiki.aichi.jp","iwakura.aichi.jp","kanie.aichi.jp","kariya.aichi.jp","kasugai.aichi.jp","kira.aichi.jp","kiyosu.aichi.jp","komaki.aichi.jp","konan.aichi.jp","kota.aichi.jp","mihama.aichi.jp","miyoshi.aichi.jp","nishio.aichi.jp","nisshin.aichi.jp","obu.aichi.jp","oguchi.aichi.jp","oharu.aichi.jp","okazaki.aichi.jp","owariasahi.aichi.jp","seto.aichi.jp","shikatsu.aichi.jp","shinshiro.aichi.jp","shitara.aichi.jp","tahara.aichi.jp","takahama.aichi.jp","tobishima.aichi.jp","toei.aichi.jp","togo.aichi.jp","tokai.aichi.jp","tokoname.aichi.jp","toyoake.aichi.jp","toyohashi.aichi.jp","toyokawa.aichi.jp","toyone.aichi.jp","toyota.aichi.jp","tsushima.aichi.jp","yatomi.aichi.jp","akita.akita.jp","daisen.akita.jp","fujisato.akita.jp","gojome.akita.jp","hachirogata.akita.jp","happou.akita.jp","higashinaruse.akita.jp","honjo.akita.jp","honjyo.akita.jp","ikawa.akita.jp","kamikoani.akita.jp","kamioka.akita.jp","katagami.akita.jp","kazuno.akita.jp","kitaakita.akita.jp","kosaka.akita.jp","kyowa.akita.jp","misato.akita.jp","mitane.akita.jp","moriyoshi.akita.jp","nikaho.akita.jp","noshiro.akita.jp","odate.akita.jp","oga.akita.jp","ogata.akita.jp","semboku.akita.jp","yokote.akita.jp","yurihonjo.akita.jp","aomori.aomori.jp","gonohe.aomori.jp","hachinohe.aomori.jp","hashikami.aomori.jp","hiranai.aomori.jp","hirosaki.aomori.jp","itayanagi.aomori.jp","kuroishi.aomori.jp","misawa.aomori.jp","mutsu.aomori.jp","nakadomari.aomori.jp","noheji.aomori.jp","oirase.aomori.jp","owani.aomori.jp","rokunohe.aomori.jp","sannohe.aomori.jp","shichinohe.aomori.jp","shingo.aomori.jp","takko.aomori.jp","towada.aomori.jp","tsugaru.aomori.jp","tsuruta.aomori.jp","abiko.chiba.jp","asahi.chiba.jp","chonan.chiba.jp","chosei.chiba.jp","choshi.chiba.jp","chuo.chiba.jp","funabashi.chiba.jp","futtsu.chiba.jp","hanamigawa.chiba.jp","ichihara.chiba.jp","ichikawa.chiba.jp","ichinomiya.chiba.jp","inzai.chiba.jp","isumi.chiba.jp","kamagaya.chiba.jp","kamogawa.chiba.jp","kashiwa.chiba.jp","katori.chiba.jp","katsuura.chiba.jp","kimitsu.chiba.jp","kisarazu.chiba.jp","kozaki.chiba.jp","kujukuri.chiba.jp","kyonan.chiba.jp","matsudo.chiba.jp","midori.chiba.jp","mihama.chiba.jp","minamiboso.chiba.jp","mobara.chiba.jp","mutsuzawa.chiba.jp","nagara.chiba.jp","nagareyama.chiba.jp","narashino.chiba.jp","narita.chiba.jp","noda.chiba.jp","oamishirasato.chiba.jp","omigawa.chiba.jp","onjuku.chiba.jp","otaki.chiba.jp","sakae.chiba.jp","sakura.chiba.jp","shimofusa.chiba.jp","shirako.chiba.jp","shiroi.chiba.jp","shisui.chiba.jp","sodegaura.chiba.jp","sosa.chiba.jp","tako.chiba.jp","tateyama.chiba.jp","togane.chiba.jp","tohnosho.chiba.jp","tomisato.chiba.jp","urayasu.chiba.jp","yachimata.chiba.jp","yachiyo.chiba.jp","yokaichiba.chiba.jp","yokoshibahikari.chiba.jp","yotsukaido.chiba.jp","ainan.ehime.jp","honai.ehime.jp","ikata.ehime.jp","imabari.ehime.jp","iyo.ehime.jp","kamijima.ehime.jp","kihoku.ehime.jp","kumakogen.ehime.jp","masaki.ehime.jp","matsuno.ehime.jp","matsuyama.ehime.jp","namikata.ehime.jp","niihama.ehime.jp","ozu.ehime.jp","saijo.ehime.jp","seiyo.ehime.jp","shikokuchuo.ehime.jp","tobe.ehime.jp","toon.ehime.jp","uchiko.ehime.jp","uwajima.ehime.jp","yawatahama.ehime.jp","echizen.fukui.jp","eiheiji.fukui.jp","fukui.fukui.jp","ikeda.fukui.jp","katsuyama.fukui.jp","mihama.fukui.jp","minamiechizen.fukui.jp","obama.fukui.jp","ohi.fukui.jp","ono.fukui.jp","sabae.fukui.jp","sakai.fukui.jp","takahama.fukui.jp","tsuruga.fukui.jp","wakasa.fukui.jp","ashiya.fukuoka.jp","buzen.fukuoka.jp","chikugo.fukuoka.jp","chikuho.fukuoka.jp","chikujo.fukuoka.jp","chikushino.fukuoka.jp","chikuzen.fukuoka.jp","chuo.fukuoka.jp","dazaifu.fukuoka.jp","fukuchi.fukuoka.jp","hakata.fukuoka.jp","higashi.fukuoka.jp","hirokawa.fukuoka.jp","hisayama.fukuoka.jp","iizuka.fukuoka.jp","inatsuki.fukuoka.jp","kaho.fukuoka.jp","kasuga.fukuoka.jp","kasuya.fukuoka.jp","kawara.fukuoka.jp","keisen.fukuoka.jp","koga.fukuoka.jp","kurate.fukuoka.jp","kurogi.fukuoka.jp","kurume.fukuoka.jp","minami.fukuoka.jp","miyako.fukuoka.jp","miyama.fukuoka.jp","miyawaka.fukuoka.jp","mizumaki.fukuoka.jp","munakata.fukuoka.jp","nakagawa.fukuoka.jp","nakama.fukuoka.jp","nishi.fukuoka.jp","nogata.fukuoka.jp","ogori.fukuoka.jp","okagaki.fukuoka.jp","okawa.fukuoka.jp","oki.fukuoka.jp","omuta.fukuoka.jp","onga.fukuoka.jp","onojo.fukuoka.jp","oto.fukuoka.jp","saigawa.fukuoka.jp","sasaguri.fukuoka.jp","shingu.fukuoka.jp","shinyoshitomi.fukuoka.jp","shonai.fukuoka.jp","soeda.fukuoka.jp","sue.fukuoka.jp","tachiarai.fukuoka.jp","tagawa.fukuoka.jp","takata.fukuoka.jp","toho.fukuoka.jp","toyotsu.fukuoka.jp","tsuiki.fukuoka.jp","ukiha.fukuoka.jp","umi.fukuoka.jp","usui.fukuoka.jp","yamada.fukuoka.jp","yame.fukuoka.jp","yanagawa.fukuoka.jp","yukuhashi.fukuoka.jp","aizubange.fukushima.jp","aizumisato.fukushima.jp","aizuwakamatsu.fukushima.jp","asakawa.fukushima.jp","bandai.fukushima.jp","date.fukushima.jp","fukushima.fukushima.jp","furudono.fukushima.jp","futaba.fukushima.jp","hanawa.fukushima.jp","higashi.fukushima.jp","hirata.fukushima.jp","hirono.fukushima.jp","iitate.fukushima.jp","inawashiro.fukushima.jp","ishikawa.fukushima.jp","iwaki.fukushima.jp","izumizaki.fukushima.jp","kagamiishi.fukushima.jp","kaneyama.fukushima.jp","kawamata.fukushima.jp","kitakata.fukushima.jp","kitashiobara.fukushima.jp","koori.fukushima.jp","koriyama.fukushima.jp","kunimi.fukushima.jp","miharu.fukushima.jp","mishima.fukushima.jp","namie.fukushima.jp","nango.fukushima.jp","nishiaizu.fukushima.jp","nishigo.fukushima.jp","okuma.fukushima.jp","omotego.fukushima.jp","ono.fukushima.jp","otama.fukushima.jp","samegawa.fukushima.jp","shimogo.fukushima.jp","shirakawa.fukushima.jp","showa.fukushima.jp","soma.fukushima.jp","sukagawa.fukushima.jp","taishin.fukushima.jp","tamakawa.fukushima.jp","tanagura.fukushima.jp","tenei.fukushima.jp","yabuki.fukushima.jp","yamato.fukushima.jp","yamatsuri.fukushima.jp","yanaizu.fukushima.jp","yugawa.fukushima.jp","anpachi.gifu.jp","ena.gifu.jp","gifu.gifu.jp","ginan.gifu.jp","godo.gifu.jp","gujo.gifu.jp","hashima.gifu.jp","hichiso.gifu.jp","hida.gifu.jp","higashishirakawa.gifu.jp","ibigawa.gifu.jp","ikeda.gifu.jp","kakamigahara.gifu.jp","kani.gifu.jp","kasahara.gifu.jp","kasamatsu.gifu.jp","kawaue.gifu.jp","kitagata.gifu.jp","mino.gifu.jp","minokamo.gifu.jp","mitake.gifu.jp","mizunami.gifu.jp","motosu.gifu.jp","nakatsugawa.gifu.jp","ogaki.gifu.jp","sakahogi.gifu.jp","seki.gifu.jp","sekigahara.gifu.jp","shirakawa.gifu.jp","tajimi.gifu.jp","takayama.gifu.jp","tarui.gifu.jp","toki.gifu.jp","tomika.gifu.jp","wanouchi.gifu.jp","yamagata.gifu.jp","yaotsu.gifu.jp","yoro.gifu.jp","annaka.gunma.jp","chiyoda.gunma.jp","fujioka.gunma.jp","higashiagatsuma.gunma.jp","isesaki.gunma.jp","itakura.gunma.jp","kanna.gunma.jp","kanra.gunma.jp","katashina.gunma.jp","kawaba.gunma.jp","kiryu.gunma.jp","kusatsu.gunma.jp","maebashi.gunma.jp","meiwa.gunma.jp","midori.gunma.jp","minakami.gunma.jp","naganohara.gunma.jp","nakanojo.gunma.jp","nanmoku.gunma.jp","numata.gunma.jp","oizumi.gunma.jp","ora.gunma.jp","ota.gunma.jp","shibukawa.gunma.jp","shimonita.gunma.jp","shinto.gunma.jp","showa.gunma.jp","takasaki.gunma.jp","takayama.gunma.jp","tamamura.gunma.jp","tatebayashi.gunma.jp","tomioka.gunma.jp","tsukiyono.gunma.jp","tsumagoi.gunma.jp","ueno.gunma.jp","yoshioka.gunma.jp","asaminami.hiroshima.jp","daiwa.hiroshima.jp","etajima.hiroshima.jp","fuchu.hiroshima.jp","fukuyama.hiroshima.jp","hatsukaichi.hiroshima.jp","higashihiroshima.hiroshima.jp","hongo.hiroshima.jp","jinsekikogen.hiroshima.jp","kaita.hiroshima.jp","kui.hiroshima.jp","kumano.hiroshima.jp","kure.hiroshima.jp","mihara.hiroshima.jp","miyoshi.hiroshima.jp","naka.hiroshima.jp","onomichi.hiroshima.jp","osakikamijima.hiroshima.jp","otake.hiroshima.jp","saka.hiroshima.jp","sera.hiroshima.jp","seranishi.hiroshima.jp","shinichi.hiroshima.jp","shobara.hiroshima.jp","takehara.hiroshima.jp","abashiri.hokkaido.jp","abira.hokkaido.jp","aibetsu.hokkaido.jp","akabira.hokkaido.jp","akkeshi.hokkaido.jp","asahikawa.hokkaido.jp","ashibetsu.hokkaido.jp","ashoro.hokkaido.jp","assabu.hokkaido.jp","atsuma.hokkaido.jp","bibai.hokkaido.jp","biei.hokkaido.jp","bifuka.hokkaido.jp","bihoro.hokkaido.jp","biratori.hokkaido.jp","chippubetsu.hokkaido.jp","chitose.hokkaido.jp","date.hokkaido.jp","ebetsu.hokkaido.jp","embetsu.hokkaido.jp","eniwa.hokkaido.jp","erimo.hokkaido.jp","esan.hokkaido.jp","esashi.hokkaido.jp","fukagawa.hokkaido.jp","fukushima.hokkaido.jp","furano.hokkaido.jp","furubira.hokkaido.jp","haboro.hokkaido.jp","hakodate.hokkaido.jp","hamatonbetsu.hokkaido.jp","hidaka.hokkaido.jp","higashikagura.hokkaido.jp","higashikawa.hokkaido.jp","hiroo.hokkaido.jp","hokuryu.hokkaido.jp","hokuto.hokkaido.jp","honbetsu.hokkaido.jp","horokanai.hokkaido.jp","horonobe.hokkaido.jp","ikeda.hokkaido.jp","imakane.hokkaido.jp","ishikari.hokkaido.jp","iwamizawa.hokkaido.jp","iwanai.hokkaido.jp","kamifurano.hokkaido.jp","kamikawa.hokkaido.jp","kamishihoro.hokkaido.jp","kamisunagawa.hokkaido.jp","kamoenai.hokkaido.jp","kayabe.hokkaido.jp","kembuchi.hokkaido.jp","kikonai.hokkaido.jp","kimobetsu.hokkaido.jp","kitahiroshima.hokkaido.jp","kitami.hokkaido.jp","kiyosato.hokkaido.jp","koshimizu.hokkaido.jp","kunneppu.hokkaido.jp","kuriyama.hokkaido.jp","kuromatsunai.hokkaido.jp","kushiro.hokkaido.jp","kutchan.hokkaido.jp","kyowa.hokkaido.jp","mashike.hokkaido.jp","matsumae.hokkaido.jp","mikasa.hokkaido.jp","minamifurano.hokkaido.jp","mombetsu.hokkaido.jp","moseushi.hokkaido.jp","mukawa.hokkaido.jp","muroran.hokkaido.jp","naie.hokkaido.jp","nakagawa.hokkaido.jp","nakasatsunai.hokkaido.jp","nakatombetsu.hokkaido.jp","nanae.hokkaido.jp","nanporo.hokkaido.jp","nayoro.hokkaido.jp","nemuro.hokkaido.jp","niikappu.hokkaido.jp","niki.hokkaido.jp","nishiokoppe.hokkaido.jp","noboribetsu.hokkaido.jp","numata.hokkaido.jp","obihiro.hokkaido.jp","obira.hokkaido.jp","oketo.hokkaido.jp","okoppe.hokkaido.jp","otaru.hokkaido.jp","otobe.hokkaido.jp","otofuke.hokkaido.jp","otoineppu.hokkaido.jp","oumu.hokkaido.jp","ozora.hokkaido.jp","pippu.hokkaido.jp","rankoshi.hokkaido.jp","rebun.hokkaido.jp","rikubetsu.hokkaido.jp","rishiri.hokkaido.jp","rishirifuji.hokkaido.jp","saroma.hokkaido.jp","sarufutsu.hokkaido.jp","shakotan.hokkaido.jp","shari.hokkaido.jp","shibecha.hokkaido.jp","shibetsu.hokkaido.jp","shikabe.hokkaido.jp","shikaoi.hokkaido.jp","shimamaki.hokkaido.jp","shimizu.hokkaido.jp","shimokawa.hokkaido.jp","shinshinotsu.hokkaido.jp","shintoku.hokkaido.jp","shiranuka.hokkaido.jp","shiraoi.hokkaido.jp","shiriuchi.hokkaido.jp","sobetsu.hokkaido.jp","sunagawa.hokkaido.jp","taiki.hokkaido.jp","takasu.hokkaido.jp","takikawa.hokkaido.jp","takinoue.hokkaido.jp","teshikaga.hokkaido.jp","tobetsu.hokkaido.jp","tohma.hokkaido.jp","tomakomai.hokkaido.jp","tomari.hokkaido.jp","toya.hokkaido.jp","toyako.hokkaido.jp","toyotomi.hokkaido.jp","toyoura.hokkaido.jp","tsubetsu.hokkaido.jp","tsukigata.hokkaido.jp","urakawa.hokkaido.jp","urausu.hokkaido.jp","uryu.hokkaido.jp","utashinai.hokkaido.jp","wakkanai.hokkaido.jp","wassamu.hokkaido.jp","yakumo.hokkaido.jp","yoichi.hokkaido.jp","aioi.hyogo.jp","akashi.hyogo.jp","ako.hyogo.jp","amagasaki.hyogo.jp","aogaki.hyogo.jp","asago.hyogo.jp","ashiya.hyogo.jp","awaji.hyogo.jp","fukusaki.hyogo.jp","goshiki.hyogo.jp","harima.hyogo.jp","himeji.hyogo.jp","ichikawa.hyogo.jp","inagawa.hyogo.jp","itami.hyogo.jp","kakogawa.hyogo.jp","kamigori.hyogo.jp","kamikawa.hyogo.jp","kasai.hyogo.jp","kasuga.hyogo.jp","kawanishi.hyogo.jp","miki.hyogo.jp","minamiawaji.hyogo.jp","nishinomiya.hyogo.jp","nishiwaki.hyogo.jp","ono.hyogo.jp","sanda.hyogo.jp","sannan.hyogo.jp","sasayama.hyogo.jp","sayo.hyogo.jp","shingu.hyogo.jp","shinonsen.hyogo.jp","shiso.hyogo.jp","sumoto.hyogo.jp","taishi.hyogo.jp","taka.hyogo.jp","takarazuka.hyogo.jp","takasago.hyogo.jp","takino.hyogo.jp","tamba.hyogo.jp","tatsuno.hyogo.jp","toyooka.hyogo.jp","yabu.hyogo.jp","yashiro.hyogo.jp","yoka.hyogo.jp","yokawa.hyogo.jp","ami.ibaraki.jp","asahi.ibaraki.jp","bando.ibaraki.jp","chikusei.ibaraki.jp","daigo.ibaraki.jp","fujishiro.ibaraki.jp","hitachi.ibaraki.jp","hitachinaka.ibaraki.jp","hitachiomiya.ibaraki.jp","hitachiota.ibaraki.jp","ibaraki.ibaraki.jp","ina.ibaraki.jp","inashiki.ibaraki.jp","itako.ibaraki.jp","iwama.ibaraki.jp","joso.ibaraki.jp","kamisu.ibaraki.jp","kasama.ibaraki.jp","kashima.ibaraki.jp","kasumigaura.ibaraki.jp","koga.ibaraki.jp","miho.ibaraki.jp","mito.ibaraki.jp","moriya.ibaraki.jp","naka.ibaraki.jp","namegata.ibaraki.jp","oarai.ibaraki.jp","ogawa.ibaraki.jp","omitama.ibaraki.jp","ryugasaki.ibaraki.jp","sakai.ibaraki.jp","sakuragawa.ibaraki.jp","shimodate.ibaraki.jp","shimotsuma.ibaraki.jp","shirosato.ibaraki.jp","sowa.ibaraki.jp","suifu.ibaraki.jp","takahagi.ibaraki.jp","tamatsukuri.ibaraki.jp","tokai.ibaraki.jp","tomobe.ibaraki.jp","tone.ibaraki.jp","toride.ibaraki.jp","tsuchiura.ibaraki.jp","tsukuba.ibaraki.jp","uchihara.ibaraki.jp","ushiku.ibaraki.jp","yachiyo.ibaraki.jp","yamagata.ibaraki.jp","yawara.ibaraki.jp","yuki.ibaraki.jp","anamizu.ishikawa.jp","hakui.ishikawa.jp","hakusan.ishikawa.jp","kaga.ishikawa.jp","kahoku.ishikawa.jp","kanazawa.ishikawa.jp","kawakita.ishikawa.jp","komatsu.ishikawa.jp","nakanoto.ishikawa.jp","nanao.ishikawa.jp","nomi.ishikawa.jp","nonoichi.ishikawa.jp","noto.ishikawa.jp","shika.ishikawa.jp","suzu.ishikawa.jp","tsubata.ishikawa.jp","tsurugi.ishikawa.jp","uchinada.ishikawa.jp","wajima.ishikawa.jp","fudai.iwate.jp","fujisawa.iwate.jp","hanamaki.iwate.jp","hiraizumi.iwate.jp","hirono.iwate.jp","ichinohe.iwate.jp","ichinoseki.iwate.jp","iwaizumi.iwate.jp","iwate.iwate.jp","joboji.iwate.jp","kamaishi.iwate.jp","kanegasaki.iwate.jp","karumai.iwate.jp","kawai.iwate.jp","kitakami.iwate.jp","kuji.iwate.jp","kunohe.iwate.jp","kuzumaki.iwate.jp","miyako.iwate.jp","mizusawa.iwate.jp","morioka.iwate.jp","ninohe.iwate.jp","noda.iwate.jp","ofunato.iwate.jp","oshu.iwate.jp","otsuchi.iwate.jp","rikuzentakata.iwate.jp","shiwa.iwate.jp","shizukuishi.iwate.jp","sumita.iwate.jp","tanohata.iwate.jp","tono.iwate.jp","yahaba.iwate.jp","yamada.iwate.jp","ayagawa.kagawa.jp","higashikagawa.kagawa.jp","kanonji.kagawa.jp","kotohira.kagawa.jp","manno.kagawa.jp","marugame.kagawa.jp","mitoyo.kagawa.jp","naoshima.kagawa.jp","sanuki.kagawa.jp","tadotsu.kagawa.jp","takamatsu.kagawa.jp","tonosho.kagawa.jp","uchinomi.kagawa.jp","utazu.kagawa.jp","zentsuji.kagawa.jp","akune.kagoshima.jp","amami.kagoshima.jp","hioki.kagoshima.jp","isa.kagoshima.jp","isen.kagoshima.jp","izumi.kagoshima.jp","kagoshima.kagoshima.jp","kanoya.kagoshima.jp","kawanabe.kagoshima.jp","kinko.kagoshima.jp","kouyama.kagoshima.jp","makurazaki.kagoshima.jp","matsumoto.kagoshima.jp","minamitane.kagoshima.jp","nakatane.kagoshima.jp","nishinoomote.kagoshima.jp","satsumasendai.kagoshima.jp","soo.kagoshima.jp","tarumizu.kagoshima.jp","yusui.kagoshima.jp","aikawa.kanagawa.jp","atsugi.kanagawa.jp","ayase.kanagawa.jp","chigasaki.kanagawa.jp","ebina.kanagawa.jp","fujisawa.kanagawa.jp","hadano.kanagawa.jp","hakone.kanagawa.jp","hiratsuka.kanagawa.jp","isehara.kanagawa.jp","kaisei.kanagawa.jp","kamakura.kanagawa.jp","kiyokawa.kanagawa.jp","matsuda.kanagawa.jp","minamiashigara.kanagawa.jp","miura.kanagawa.jp","nakai.kanagawa.jp","ninomiya.kanagawa.jp","odawara.kanagawa.jp","oi.kanagawa.jp","oiso.kanagawa.jp","sagamihara.kanagawa.jp","samukawa.kanagawa.jp","tsukui.kanagawa.jp","yamakita.kanagawa.jp","yamato.kanagawa.jp","yokosuka.kanagawa.jp","yugawara.kanagawa.jp","zama.kanagawa.jp","zushi.kanagawa.jp","aki.kochi.jp","geisei.kochi.jp","hidaka.kochi.jp","higashitsuno.kochi.jp","ino.kochi.jp","kagami.kochi.jp","kami.kochi.jp","kitagawa.kochi.jp","kochi.kochi.jp","mihara.kochi.jp","motoyama.kochi.jp","muroto.kochi.jp","nahari.kochi.jp","nakamura.kochi.jp","nankoku.kochi.jp","nishitosa.kochi.jp","niyodogawa.kochi.jp","ochi.kochi.jp","okawa.kochi.jp","otoyo.kochi.jp","otsuki.kochi.jp","sakawa.kochi.jp","sukumo.kochi.jp","susaki.kochi.jp","tosa.kochi.jp","tosashimizu.kochi.jp","toyo.kochi.jp","tsuno.kochi.jp","umaji.kochi.jp","yasuda.kochi.jp","yusuhara.kochi.jp","amakusa.kumamoto.jp","arao.kumamoto.jp","aso.kumamoto.jp","choyo.kumamoto.jp","gyokuto.kumamoto.jp","kamiamakusa.kumamoto.jp","kikuchi.kumamoto.jp","kumamoto.kumamoto.jp","mashiki.kumamoto.jp","mifune.kumamoto.jp","minamata.kumamoto.jp","minamioguni.kumamoto.jp","nagasu.kumamoto.jp","nishihara.kumamoto.jp","oguni.kumamoto.jp","ozu.kumamoto.jp","sumoto.kumamoto.jp","takamori.kumamoto.jp","uki.kumamoto.jp","uto.kumamoto.jp","yamaga.kumamoto.jp","yamato.kumamoto.jp","yatsushiro.kumamoto.jp","ayabe.kyoto.jp","fukuchiyama.kyoto.jp","higashiyama.kyoto.jp","ide.kyoto.jp","ine.kyoto.jp","joyo.kyoto.jp","kameoka.kyoto.jp","kamo.kyoto.jp","kita.kyoto.jp","kizu.kyoto.jp","kumiyama.kyoto.jp","kyotamba.kyoto.jp","kyotanabe.kyoto.jp","kyotango.kyoto.jp","maizuru.kyoto.jp","minami.kyoto.jp","minamiyamashiro.kyoto.jp","miyazu.kyoto.jp","muko.kyoto.jp","nagaokakyo.kyoto.jp","nakagyo.kyoto.jp","nantan.kyoto.jp","oyamazaki.kyoto.jp","sakyo.kyoto.jp","seika.kyoto.jp","tanabe.kyoto.jp","uji.kyoto.jp","ujitawara.kyoto.jp","wazuka.kyoto.jp","yamashina.kyoto.jp","yawata.kyoto.jp","asahi.mie.jp","inabe.mie.jp","ise.mie.jp","kameyama.mie.jp","kawagoe.mie.jp","kiho.mie.jp","kisosaki.mie.jp","kiwa.mie.jp","komono.mie.jp","kumano.mie.jp","kuwana.mie.jp","matsusaka.mie.jp","meiwa.mie.jp","mihama.mie.jp","minamiise.mie.jp","misugi.mie.jp","miyama.mie.jp","nabari.mie.jp","shima.mie.jp","suzuka.mie.jp","tado.mie.jp","taiki.mie.jp","taki.mie.jp","tamaki.mie.jp","toba.mie.jp","tsu.mie.jp","udono.mie.jp","ureshino.mie.jp","watarai.mie.jp","yokkaichi.mie.jp","furukawa.miyagi.jp","higashimatsushima.miyagi.jp","ishinomaki.miyagi.jp","iwanuma.miyagi.jp","kakuda.miyagi.jp","kami.miyagi.jp","kawasaki.miyagi.jp","marumori.miyagi.jp","matsushima.miyagi.jp","minamisanriku.miyagi.jp","misato.miyagi.jp","murata.miyagi.jp","natori.miyagi.jp","ogawara.miyagi.jp","ohira.miyagi.jp","onagawa.miyagi.jp","osaki.miyagi.jp","rifu.miyagi.jp","semine.miyagi.jp","shibata.miyagi.jp","shichikashuku.miyagi.jp","shikama.miyagi.jp","shiogama.miyagi.jp","shiroishi.miyagi.jp","tagajo.miyagi.jp","taiwa.miyagi.jp","tome.miyagi.jp","tomiya.miyagi.jp","wakuya.miyagi.jp","watari.miyagi.jp","yamamoto.miyagi.jp","zao.miyagi.jp","aya.miyazaki.jp","ebino.miyazaki.jp","gokase.miyazaki.jp","hyuga.miyazaki.jp","kadogawa.miyazaki.jp","kawaminami.miyazaki.jp","kijo.miyazaki.jp","kitagawa.miyazaki.jp","kitakata.miyazaki.jp","kitaura.miyazaki.jp","kobayashi.miyazaki.jp","kunitomi.miyazaki.jp","kushima.miyazaki.jp","mimata.miyazaki.jp","miyakonojo.miyazaki.jp","miyazaki.miyazaki.jp","morotsuka.miyazaki.jp","nichinan.miyazaki.jp","nishimera.miyazaki.jp","nobeoka.miyazaki.jp","saito.miyazaki.jp","shiiba.miyazaki.jp","shintomi.miyazaki.jp","takaharu.miyazaki.jp","takanabe.miyazaki.jp","takazaki.miyazaki.jp","tsuno.miyazaki.jp","achi.nagano.jp","agematsu.nagano.jp","anan.nagano.jp","aoki.nagano.jp","asahi.nagano.jp","azumino.nagano.jp","chikuhoku.nagano.jp","chikuma.nagano.jp","chino.nagano.jp","fujimi.nagano.jp","hakuba.nagano.jp","hara.nagano.jp","hiraya.nagano.jp","iida.nagano.jp","iijima.nagano.jp","iiyama.nagano.jp","iizuna.nagano.jp","ikeda.nagano.jp","ikusaka.nagano.jp","ina.nagano.jp","karuizawa.nagano.jp","kawakami.nagano.jp","kiso.nagano.jp","kisofukushima.nagano.jp","kitaaiki.nagano.jp","komagane.nagano.jp","komoro.nagano.jp","matsukawa.nagano.jp","matsumoto.nagano.jp","miasa.nagano.jp","minamiaiki.nagano.jp","minamimaki.nagano.jp","minamiminowa.nagano.jp","minowa.nagano.jp","miyada.nagano.jp","miyota.nagano.jp","mochizuki.nagano.jp","nagano.nagano.jp","nagawa.nagano.jp","nagiso.nagano.jp","nakagawa.nagano.jp","nakano.nagano.jp","nozawaonsen.nagano.jp","obuse.nagano.jp","ogawa.nagano.jp","okaya.nagano.jp","omachi.nagano.jp","omi.nagano.jp","ookuwa.nagano.jp","ooshika.nagano.jp","otaki.nagano.jp","otari.nagano.jp","sakae.nagano.jp","sakaki.nagano.jp","saku.nagano.jp","sakuho.nagano.jp","shimosuwa.nagano.jp","shinanomachi.nagano.jp","shiojiri.nagano.jp","suwa.nagano.jp","suzaka.nagano.jp","takagi.nagano.jp","takamori.nagano.jp","takayama.nagano.jp","tateshina.nagano.jp","tatsuno.nagano.jp","togakushi.nagano.jp","togura.nagano.jp","tomi.nagano.jp","ueda.nagano.jp","wada.nagano.jp","yamagata.nagano.jp","yamanouchi.nagano.jp","yasaka.nagano.jp","yasuoka.nagano.jp","chijiwa.nagasaki.jp","futsu.nagasaki.jp","goto.nagasaki.jp","hasami.nagasaki.jp","hirado.nagasaki.jp","iki.nagasaki.jp","isahaya.nagasaki.jp","kawatana.nagasaki.jp","kuchinotsu.nagasaki.jp","matsuura.nagasaki.jp","nagasaki.nagasaki.jp","obama.nagasaki.jp","omura.nagasaki.jp","oseto.nagasaki.jp","saikai.nagasaki.jp","sasebo.nagasaki.jp","seihi.nagasaki.jp","shimabara.nagasaki.jp","shinkamigoto.nagasaki.jp","togitsu.nagasaki.jp","tsushima.nagasaki.jp","unzen.nagasaki.jp","ando.nara.jp","gose.nara.jp","heguri.nara.jp","higashiyoshino.nara.jp","ikaruga.nara.jp","ikoma.nara.jp","kamikitayama.nara.jp","kanmaki.nara.jp","kashiba.nara.jp","kashihara.nara.jp","katsuragi.nara.jp","kawai.nara.jp","kawakami.nara.jp","kawanishi.nara.jp","koryo.nara.jp","kurotaki.nara.jp","mitsue.nara.jp","miyake.nara.jp","nara.nara.jp","nosegawa.nara.jp","oji.nara.jp","ouda.nara.jp","oyodo.nara.jp","sakurai.nara.jp","sango.nara.jp","shimoichi.nara.jp","shimokitayama.nara.jp","shinjo.nara.jp","soni.nara.jp","takatori.nara.jp","tawaramoto.nara.jp","tenkawa.nara.jp","tenri.nara.jp","uda.nara.jp","yamatokoriyama.nara.jp","yamatotakada.nara.jp","yamazoe.nara.jp","yoshino.nara.jp","aga.niigata.jp","agano.niigata.jp","gosen.niigata.jp","itoigawa.niigata.jp","izumozaki.niigata.jp","joetsu.niigata.jp","kamo.niigata.jp","kariwa.niigata.jp","kashiwazaki.niigata.jp","minamiuonuma.niigata.jp","mitsuke.niigata.jp","muika.niigata.jp","murakami.niigata.jp","myoko.niigata.jp","nagaoka.niigata.jp","niigata.niigata.jp","ojiya.niigata.jp","omi.niigata.jp","sado.niigata.jp","sanjo.niigata.jp","seiro.niigata.jp","seirou.niigata.jp","sekikawa.niigata.jp","shibata.niigata.jp","tagami.niigata.jp","tainai.niigata.jp","tochio.niigata.jp","tokamachi.niigata.jp","tsubame.niigata.jp","tsunan.niigata.jp","uonuma.niigata.jp","yahiko.niigata.jp","yoita.niigata.jp","yuzawa.niigata.jp","beppu.oita.jp","bungoono.oita.jp","bungotakada.oita.jp","hasama.oita.jp","hiji.oita.jp","himeshima.oita.jp","hita.oita.jp","kamitsue.oita.jp","kokonoe.oita.jp","kuju.oita.jp","kunisaki.oita.jp","kusu.oita.jp","oita.oita.jp","saiki.oita.jp","taketa.oita.jp","tsukumi.oita.jp","usa.oita.jp","usuki.oita.jp","yufu.oita.jp","akaiwa.okayama.jp","asakuchi.okayama.jp","bizen.okayama.jp","hayashima.okayama.jp","ibara.okayama.jp","kagamino.okayama.jp","kasaoka.okayama.jp","kibichuo.okayama.jp","kumenan.okayama.jp","kurashiki.okayama.jp","maniwa.okayama.jp","misaki.okayama.jp","nagi.okayama.jp","niimi.okayama.jp","nishiawakura.okayama.jp","okayama.okayama.jp","satosho.okayama.jp","setouchi.okayama.jp","shinjo.okayama.jp","shoo.okayama.jp","soja.okayama.jp","takahashi.okayama.jp","tamano.okayama.jp","tsuyama.okayama.jp","wake.okayama.jp","yakage.okayama.jp","aguni.okinawa.jp","ginowan.okinawa.jp","ginoza.okinawa.jp","gushikami.okinawa.jp","haebaru.okinawa.jp","higashi.okinawa.jp","hirara.okinawa.jp","iheya.okinawa.jp","ishigaki.okinawa.jp","ishikawa.okinawa.jp","itoman.okinawa.jp","izena.okinawa.jp","kadena.okinawa.jp","kin.okinawa.jp","kitadaito.okinawa.jp","kitanakagusuku.okinawa.jp","kumejima.okinawa.jp","kunigami.okinawa.jp","minamidaito.okinawa.jp","motobu.okinawa.jp","nago.okinawa.jp","naha.okinawa.jp","nakagusuku.okinawa.jp","nakijin.okinawa.jp","nanjo.okinawa.jp","nishihara.okinawa.jp","ogimi.okinawa.jp","okinawa.okinawa.jp","onna.okinawa.jp","shimoji.okinawa.jp","taketomi.okinawa.jp","tarama.okinawa.jp","tokashiki.okinawa.jp","tomigusuku.okinawa.jp","tonaki.okinawa.jp","urasoe.okinawa.jp","uruma.okinawa.jp","yaese.okinawa.jp","yomitan.okinawa.jp","yonabaru.okinawa.jp","yonaguni.okinawa.jp","zamami.okinawa.jp","abeno.osaka.jp","chihayaakasaka.osaka.jp","chuo.osaka.jp","daito.osaka.jp","fujiidera.osaka.jp","habikino.osaka.jp","hannan.osaka.jp","higashiosaka.osaka.jp","higashisumiyoshi.osaka.jp","higashiyodogawa.osaka.jp","hirakata.osaka.jp","ibaraki.osaka.jp","ikeda.osaka.jp","izumi.osaka.jp","izumiotsu.osaka.jp","izumisano.osaka.jp","kadoma.osaka.jp","kaizuka.osaka.jp","kanan.osaka.jp","kashiwara.osaka.jp","katano.osaka.jp","kawachinagano.osaka.jp","kishiwada.osaka.jp","kita.osaka.jp","kumatori.osaka.jp","matsubara.osaka.jp","minato.osaka.jp","minoh.osaka.jp","misaki.osaka.jp","moriguchi.osaka.jp","neyagawa.osaka.jp","nishi.osaka.jp","nose.osaka.jp","osakasayama.osaka.jp","sakai.osaka.jp","sayama.osaka.jp","sennan.osaka.jp","settsu.osaka.jp","shijonawate.osaka.jp","shimamoto.osaka.jp","suita.osaka.jp","tadaoka.osaka.jp","taishi.osaka.jp","tajiri.osaka.jp","takaishi.osaka.jp","takatsuki.osaka.jp","tondabayashi.osaka.jp","toyonaka.osaka.jp","toyono.osaka.jp","yao.osaka.jp","ariake.saga.jp","arita.saga.jp","fukudomi.saga.jp","genkai.saga.jp","hamatama.saga.jp","hizen.saga.jp","imari.saga.jp","kamimine.saga.jp","kanzaki.saga.jp","karatsu.saga.jp","kashima.saga.jp","kitagata.saga.jp","kitahata.saga.jp","kiyama.saga.jp","kouhoku.saga.jp","kyuragi.saga.jp","nishiarita.saga.jp","ogi.saga.jp","omachi.saga.jp","ouchi.saga.jp","saga.saga.jp","shiroishi.saga.jp","taku.saga.jp","tara.saga.jp","tosu.saga.jp","yoshinogari.saga.jp","arakawa.saitama.jp","asaka.saitama.jp","chichibu.saitama.jp","fujimi.saitama.jp","fujimino.saitama.jp","fukaya.saitama.jp","hanno.saitama.jp","hanyu.saitama.jp","hasuda.saitama.jp","hatogaya.saitama.jp","hatoyama.saitama.jp","hidaka.saitama.jp","higashichichibu.saitama.jp","higashimatsuyama.saitama.jp","honjo.saitama.jp","ina.saitama.jp","iruma.saitama.jp","iwatsuki.saitama.jp","kamiizumi.saitama.jp","kamikawa.saitama.jp","kamisato.saitama.jp","kasukabe.saitama.jp","kawagoe.saitama.jp","kawaguchi.saitama.jp","kawajima.saitama.jp","kazo.saitama.jp","kitamoto.saitama.jp","koshigaya.saitama.jp","kounosu.saitama.jp","kuki.saitama.jp","kumagaya.saitama.jp","matsubushi.saitama.jp","minano.saitama.jp","misato.saitama.jp","miyashiro.saitama.jp","miyoshi.saitama.jp","moroyama.saitama.jp","nagatoro.saitama.jp","namegawa.saitama.jp","niiza.saitama.jp","ogano.saitama.jp","ogawa.saitama.jp","ogose.saitama.jp","okegawa.saitama.jp","omiya.saitama.jp","otaki.saitama.jp","ranzan.saitama.jp","ryokami.saitama.jp","saitama.saitama.jp","sakado.saitama.jp","satte.saitama.jp","sayama.saitama.jp","shiki.saitama.jp","shiraoka.saitama.jp","soka.saitama.jp","sugito.saitama.jp","toda.saitama.jp","tokigawa.saitama.jp","tokorozawa.saitama.jp","tsurugashima.saitama.jp","urawa.saitama.jp","warabi.saitama.jp","yashio.saitama.jp","yokoze.saitama.jp","yono.saitama.jp","yorii.saitama.jp","yoshida.saitama.jp","yoshikawa.saitama.jp","yoshimi.saitama.jp","aisho.shiga.jp","gamo.shiga.jp","higashiomi.shiga.jp","hikone.shiga.jp","koka.shiga.jp","konan.shiga.jp","kosei.shiga.jp","koto.shiga.jp","kusatsu.shiga.jp","maibara.shiga.jp","moriyama.shiga.jp","nagahama.shiga.jp","nishiazai.shiga.jp","notogawa.shiga.jp","omihachiman.shiga.jp","otsu.shiga.jp","ritto.shiga.jp","ryuoh.shiga.jp","takashima.shiga.jp","takatsuki.shiga.jp","torahime.shiga.jp","toyosato.shiga.jp","yasu.shiga.jp","akagi.shimane.jp","ama.shimane.jp","gotsu.shimane.jp","hamada.shimane.jp","higashiizumo.shimane.jp","hikawa.shimane.jp","hikimi.shimane.jp","izumo.shimane.jp","kakinoki.shimane.jp","masuda.shimane.jp","matsue.shimane.jp","misato.shimane.jp","nishinoshima.shimane.jp","ohda.shimane.jp","okinoshima.shimane.jp","okuizumo.shimane.jp","shimane.shimane.jp","tamayu.shimane.jp","tsuwano.shimane.jp","unnan.shimane.jp","yakumo.shimane.jp","yasugi.shimane.jp","yatsuka.shimane.jp","arai.shizuoka.jp","atami.shizuoka.jp","fuji.shizuoka.jp","fujieda.shizuoka.jp","fujikawa.shizuoka.jp","fujinomiya.shizuoka.jp","fukuroi.shizuoka.jp","gotemba.shizuoka.jp","haibara.shizuoka.jp","hamamatsu.shizuoka.jp","higashiizu.shizuoka.jp","ito.shizuoka.jp","iwata.shizuoka.jp","izu.shizuoka.jp","izunokuni.shizuoka.jp","kakegawa.shizuoka.jp","kannami.shizuoka.jp","kawanehon.shizuoka.jp","kawazu.shizuoka.jp","kikugawa.shizuoka.jp","kosai.shizuoka.jp","makinohara.shizuoka.jp","matsuzaki.shizuoka.jp","minamiizu.shizuoka.jp","mishima.shizuoka.jp","morimachi.shizuoka.jp","nishiizu.shizuoka.jp","numazu.shizuoka.jp","omaezaki.shizuoka.jp","shimada.shizuoka.jp","shimizu.shizuoka.jp","shimoda.shizuoka.jp","shizuoka.shizuoka.jp","susono.shizuoka.jp","yaizu.shizuoka.jp","yoshida.shizuoka.jp","ashikaga.tochigi.jp","bato.tochigi.jp","haga.tochigi.jp","ichikai.tochigi.jp","iwafune.tochigi.jp","kaminokawa.tochigi.jp","kanuma.tochigi.jp","karasuyama.tochigi.jp","kuroiso.tochigi.jp","mashiko.tochigi.jp","mibu.tochigi.jp","moka.tochigi.jp","motegi.tochigi.jp","nasu.tochigi.jp","nasushiobara.tochigi.jp","nikko.tochigi.jp","nishikata.tochigi.jp","nogi.tochigi.jp","ohira.tochigi.jp","ohtawara.tochigi.jp","oyama.tochigi.jp","sakura.tochigi.jp","sano.tochigi.jp","shimotsuke.tochigi.jp","shioya.tochigi.jp","takanezawa.tochigi.jp","tochigi.tochigi.jp","tsuga.tochigi.jp","ujiie.tochigi.jp","utsunomiya.tochigi.jp","yaita.tochigi.jp","aizumi.tokushima.jp","anan.tokushima.jp","ichiba.tokushima.jp","itano.tokushima.jp","kainan.tokushima.jp","komatsushima.tokushima.jp","matsushige.tokushima.jp","mima.tokushima.jp","minami.tokushima.jp","miyoshi.tokushima.jp","mugi.tokushima.jp","nakagawa.tokushima.jp","naruto.tokushima.jp","sanagochi.tokushima.jp","shishikui.tokushima.jp","tokushima.tokushima.jp","wajiki.tokushima.jp","adachi.tokyo.jp","akiruno.tokyo.jp","akishima.tokyo.jp","aogashima.tokyo.jp","arakawa.tokyo.jp","bunkyo.tokyo.jp","chiyoda.tokyo.jp","chofu.tokyo.jp","chuo.tokyo.jp","edogawa.tokyo.jp","fuchu.tokyo.jp","fussa.tokyo.jp","hachijo.tokyo.jp","hachioji.tokyo.jp","hamura.tokyo.jp","higashikurume.tokyo.jp","higashimurayama.tokyo.jp","higashiyamato.tokyo.jp","hino.tokyo.jp","hinode.tokyo.jp","hinohara.tokyo.jp","inagi.tokyo.jp","itabashi.tokyo.jp","katsushika.tokyo.jp","kita.tokyo.jp","kiyose.tokyo.jp","kodaira.tokyo.jp","koganei.tokyo.jp","kokubunji.tokyo.jp","komae.tokyo.jp","koto.tokyo.jp","kouzushima.tokyo.jp","kunitachi.tokyo.jp","machida.tokyo.jp","meguro.tokyo.jp","minato.tokyo.jp","mitaka.tokyo.jp","mizuho.tokyo.jp","musashimurayama.tokyo.jp","musashino.tokyo.jp","nakano.tokyo.jp","nerima.tokyo.jp","ogasawara.tokyo.jp","okutama.tokyo.jp","ome.tokyo.jp","oshima.tokyo.jp","ota.tokyo.jp","setagaya.tokyo.jp","shibuya.tokyo.jp","shinagawa.tokyo.jp","shinjuku.tokyo.jp","suginami.tokyo.jp","sumida.tokyo.jp","tachikawa.tokyo.jp","taito.tokyo.jp","tama.tokyo.jp","toshima.tokyo.jp","chizu.tottori.jp","hino.tottori.jp","kawahara.tottori.jp","koge.tottori.jp","kotoura.tottori.jp","misasa.tottori.jp","nanbu.tottori.jp","nichinan.tottori.jp","sakaiminato.tottori.jp","tottori.tottori.jp","wakasa.tottori.jp","yazu.tottori.jp","yonago.tottori.jp","asahi.toyama.jp","fuchu.toyama.jp","fukumitsu.toyama.jp","funahashi.toyama.jp","himi.toyama.jp","imizu.toyama.jp","inami.toyama.jp","johana.toyama.jp","kamiichi.toyama.jp","kurobe.toyama.jp","nakaniikawa.toyama.jp","namerikawa.toyama.jp","nanto.toyama.jp","nyuzen.toyama.jp","oyabe.toyama.jp","taira.toyama.jp","takaoka.toyama.jp","tateyama.toyama.jp","toga.toyama.jp","tonami.toyama.jp","toyama.toyama.jp","unazuki.toyama.jp","uozu.toyama.jp","yamada.toyama.jp","arida.wakayama.jp","aridagawa.wakayama.jp","gobo.wakayama.jp","hashimoto.wakayama.jp","hidaka.wakayama.jp","hirogawa.wakayama.jp","inami.wakayama.jp","iwade.wakayama.jp","kainan.wakayama.jp","kamitonda.wakayama.jp","katsuragi.wakayama.jp","kimino.wakayama.jp","kinokawa.wakayama.jp","kitayama.wakayama.jp","koya.wakayama.jp","koza.wakayama.jp","kozagawa.wakayama.jp","kudoyama.wakayama.jp","kushimoto.wakayama.jp","mihama.wakayama.jp","misato.wakayama.jp","nachikatsuura.wakayama.jp","shingu.wakayama.jp","shirahama.wakayama.jp","taiji.wakayama.jp","tanabe.wakayama.jp","wakayama.wakayama.jp","yuasa.wakayama.jp","yura.wakayama.jp","asahi.yamagata.jp","funagata.yamagata.jp","higashine.yamagata.jp","iide.yamagata.jp","kahoku.yamagata.jp","kaminoyama.yamagata.jp","kaneyama.yamagata.jp","kawanishi.yamagata.jp","mamurogawa.yamagata.jp","mikawa.yamagata.jp","murayama.yamagata.jp","nagai.yamagata.jp","nakayama.yamagata.jp","nanyo.yamagata.jp","nishikawa.yamagata.jp","obanazawa.yamagata.jp","oe.yamagata.jp","oguni.yamagata.jp","ohkura.yamagata.jp","oishida.yamagata.jp","sagae.yamagata.jp","sakata.yamagata.jp","sakegawa.yamagata.jp","shinjo.yamagata.jp","shirataka.yamagata.jp","shonai.yamagata.jp","takahata.yamagata.jp","tendo.yamagata.jp","tozawa.yamagata.jp","tsuruoka.yamagata.jp","yamagata.yamagata.jp","yamanobe.yamagata.jp","yonezawa.yamagata.jp","yuza.yamagata.jp","abu.yamaguchi.jp","hagi.yamaguchi.jp","hikari.yamaguchi.jp","hofu.yamaguchi.jp","iwakuni.yamaguchi.jp","kudamatsu.yamaguchi.jp","mitou.yamaguchi.jp","nagato.yamaguchi.jp","oshima.yamaguchi.jp","shimonoseki.yamaguchi.jp","shunan.yamaguchi.jp","tabuse.yamaguchi.jp","tokuyama.yamaguchi.jp","toyota.yamaguchi.jp","ube.yamaguchi.jp","yuu.yamaguchi.jp","chuo.yamanashi.jp","doshi.yamanashi.jp","fuefuki.yamanashi.jp","fujikawa.yamanashi.jp","fujikawaguchiko.yamanashi.jp","fujiyoshida.yamanashi.jp","hayakawa.yamanashi.jp","hokuto.yamanashi.jp","ichikawamisato.yamanashi.jp","kai.yamanashi.jp","kofu.yamanashi.jp","koshu.yamanashi.jp","kosuge.yamanashi.jp","minami-alps.yamanashi.jp","minobu.yamanashi.jp","nakamichi.yamanashi.jp","nanbu.yamanashi.jp","narusawa.yamanashi.jp","nirasaki.yamanashi.jp","nishikatsura.yamanashi.jp","oshino.yamanashi.jp","otsuki.yamanashi.jp","showa.yamanashi.jp","tabayama.yamanashi.jp","tsuru.yamanashi.jp","uenohara.yamanashi.jp","yamanakako.yamanashi.jp","yamanashi.yamanashi.jp","ke","ac.ke","co.ke","go.ke","info.ke","me.ke","mobi.ke","ne.ke","or.ke","sc.ke","kg","com.kg","edu.kg","gov.kg","mil.kg","net.kg","org.kg","*.kh","ki","biz.ki","com.ki","edu.ki","gov.ki","info.ki","net.ki","org.ki","km","ass.km","com.km","edu.km","gov.km","mil.km","nom.km","org.km","prd.km","tm.km","asso.km","coop.km","gouv.km","medecin.km","notaires.km","pharmaciens.km","presse.km","veterinaire.km","kn","edu.kn","gov.kn","net.kn","org.kn","kp","com.kp","edu.kp","gov.kp","org.kp","rep.kp","tra.kp","kr","ac.kr","co.kr","es.kr","go.kr","hs.kr","kg.kr","mil.kr","ms.kr","ne.kr","or.kr","pe.kr","re.kr","sc.kr","busan.kr","chungbuk.kr","chungnam.kr","daegu.kr","daejeon.kr","gangwon.kr","gwangju.kr","gyeongbuk.kr","gyeonggi.kr","gyeongnam.kr","incheon.kr","jeju.kr","jeonbuk.kr","jeonnam.kr","seoul.kr","ulsan.kr","kw","com.kw","edu.kw","emb.kw","gov.kw","ind.kw","net.kw","org.kw","ky","com.ky","edu.ky","net.ky","org.ky","kz","com.kz","edu.kz","gov.kz","mil.kz","net.kz","org.kz","la","com.la","edu.la","gov.la","info.la","int.la","net.la","org.la","per.la","lb","com.lb","edu.lb","gov.lb","net.lb","org.lb","lc","co.lc","com.lc","edu.lc","gov.lc","net.lc","org.lc","li","lk","ac.lk","assn.lk","com.lk","edu.lk","gov.lk","grp.lk","hotel.lk","int.lk","ltd.lk","net.lk","ngo.lk","org.lk","sch.lk","soc.lk","web.lk","lr","com.lr","edu.lr","gov.lr","net.lr","org.lr","ls","ac.ls","biz.ls","co.ls","edu.ls","gov.ls","info.ls","net.ls","org.ls","sc.ls","lt","gov.lt","lu","lv","asn.lv","com.lv","conf.lv","edu.lv","gov.lv","id.lv","mil.lv","net.lv","org.lv","ly","com.ly","edu.ly","gov.ly","id.ly","med.ly","net.ly","org.ly","plc.ly","sch.ly","ma","ac.ma","co.ma","gov.ma","net.ma","org.ma","press.ma","mc","asso.mc","tm.mc","md","me","ac.me","co.me","edu.me","gov.me","its.me","net.me","org.me","priv.me","mg","co.mg","com.mg","edu.mg","gov.mg","mil.mg","nom.mg","org.mg","prd.mg","mh","mil","mk","com.mk","edu.mk","gov.mk","inf.mk","name.mk","net.mk","org.mk","ml","com.ml","edu.ml","gouv.ml","gov.ml","net.ml","org.ml","presse.ml","*.mm","mn","edu.mn","gov.mn","org.mn","mo","com.mo","edu.mo","gov.mo","net.mo","org.mo","mobi","mp","mq","mr","gov.mr","ms","com.ms","edu.ms","gov.ms","net.ms","org.ms","mt","com.mt","edu.mt","net.mt","org.mt","mu","ac.mu","co.mu","com.mu","gov.mu","net.mu","or.mu","org.mu","museum","mv","aero.mv","biz.mv","com.mv","coop.mv","edu.mv","gov.mv","info.mv","int.mv","mil.mv","museum.mv","name.mv","net.mv","org.mv","pro.mv","mw","ac.mw","biz.mw","co.mw","com.mw","coop.mw","edu.mw","gov.mw","int.mw","net.mw","org.mw","mx","com.mx","edu.mx","gob.mx","net.mx","org.mx","my","biz.my","com.my","edu.my","gov.my","mil.my","name.my","net.my","org.my","mz","ac.mz","adv.mz","co.mz","edu.mz","gov.mz","mil.mz","net.mz","org.mz","na","alt.na","co.na","com.na","gov.na","net.na","org.na","name","nc","asso.nc","nom.nc","ne","net","nf","arts.nf","com.nf","firm.nf","info.nf","net.nf","other.nf","per.nf","rec.nf","store.nf","web.nf","ng","com.ng","edu.ng","gov.ng","i.ng","mil.ng","mobi.ng","name.ng","net.ng","org.ng","sch.ng","ni","ac.ni","biz.ni","co.ni","com.ni","edu.ni","gob.ni","in.ni","info.ni","int.ni","mil.ni","net.ni","nom.ni","org.ni","web.ni","nl","no","fhs.no","folkebibl.no","fylkesbibl.no","idrett.no","museum.no","priv.no","vgs.no","dep.no","herad.no","kommune.no","mil.no","stat.no","aa.no","ah.no","bu.no","fm.no","hl.no","hm.no","jan-mayen.no","mr.no","nl.no","nt.no","of.no","ol.no","oslo.no","rl.no","sf.no","st.no","svalbard.no","tm.no","tr.no","va.no","vf.no","gs.aa.no","gs.ah.no","gs.bu.no","gs.fm.no","gs.hl.no","gs.hm.no","gs.jan-mayen.no","gs.mr.no","gs.nl.no","gs.nt.no","gs.of.no","gs.ol.no","gs.oslo.no","gs.rl.no","gs.sf.no","gs.st.no","gs.svalbard.no","gs.tm.no","gs.tr.no","gs.va.no","gs.vf.no","akrehamn.no","åkrehamn.no","algard.no","ålgård.no","arna.no","bronnoysund.no","brønnøysund.no","brumunddal.no","bryne.no","drobak.no","drøbak.no","egersund.no","fetsund.no","floro.no","florø.no","fredrikstad.no","hokksund.no","honefoss.no","hønefoss.no","jessheim.no","jorpeland.no","jørpeland.no","kirkenes.no","kopervik.no","krokstadelva.no","langevag.no","langevåg.no","leirvik.no","mjondalen.no","mjøndalen.no","mo-i-rana.no","mosjoen.no","mosjøen.no","nesoddtangen.no","orkanger.no","osoyro.no","osøyro.no","raholt.no","råholt.no","sandnessjoen.no","sandnessjøen.no","skedsmokorset.no","slattum.no","spjelkavik.no","stathelle.no","stavern.no","stjordalshalsen.no","stjørdalshalsen.no","tananger.no","tranby.no","vossevangen.no","aarborte.no","aejrie.no","afjord.no","åfjord.no","agdenes.no","nes.akershus.no","aknoluokta.no","ákŋoluokta.no","al.no","ål.no","alaheadju.no","álaheadju.no","alesund.no","ålesund.no","alstahaug.no","alta.no","áltá.no","alvdal.no","amli.no","åmli.no","amot.no","åmot.no","andasuolo.no","andebu.no","andoy.no","andøy.no","ardal.no","årdal.no","aremark.no","arendal.no","ås.no","aseral.no","åseral.no","asker.no","askim.no","askoy.no","askøy.no","askvoll.no","asnes.no","åsnes.no","audnedaln.no","aukra.no","aure.no","aurland.no","aurskog-holand.no","aurskog-høland.no","austevoll.no","austrheim.no","averoy.no","averøy.no","badaddja.no","bådåddjå.no","bærum.no","bahcavuotna.no","báhcavuotna.no","bahccavuotna.no","báhccavuotna.no","baidar.no","báidár.no","bajddar.no","bájddar.no","balat.no","bálát.no","balestrand.no","ballangen.no","balsfjord.no","bamble.no","bardu.no","barum.no","batsfjord.no","båtsfjord.no","bearalvahki.no","bearalváhki.no","beardu.no","beiarn.no","berg.no","bergen.no","berlevag.no","berlevåg.no","bievat.no","bievát.no","bindal.no","birkenes.no","bjarkoy.no","bjarkøy.no","bjerkreim.no","bjugn.no","bodo.no","bodø.no","bokn.no","bomlo.no","bømlo.no","bremanger.no","bronnoy.no","brønnøy.no","budejju.no","nes.buskerud.no","bygland.no","bykle.no","cahcesuolo.no","čáhcesuolo.no","davvenjarga.no","davvenjárga.no","davvesiida.no","deatnu.no","dielddanuorri.no","divtasvuodna.no","divttasvuotna.no","donna.no","dønna.no","dovre.no","drammen.no","drangedal.no","dyroy.no","dyrøy.no","eid.no","eidfjord.no","eidsberg.no","eidskog.no","eidsvoll.no","eigersund.no","elverum.no","enebakk.no","engerdal.no","etne.no","etnedal.no","evenassi.no","evenášši.no","evenes.no","evje-og-hornnes.no","farsund.no","fauske.no","fedje.no","fet.no","finnoy.no","finnøy.no","fitjar.no","fjaler.no","fjell.no","fla.no","flå.no","flakstad.no","flatanger.no","flekkefjord.no","flesberg.no","flora.no","folldal.no","forde.no","førde.no","forsand.no","fosnes.no","fræna.no","frana.no","frei.no","frogn.no","froland.no","frosta.no","froya.no","frøya.no","fuoisku.no","fuossko.no","fusa.no","fyresdal.no","gaivuotna.no","gáivuotna.no","galsa.no","gálsá.no","gamvik.no","gangaviika.no","gáŋgaviika.no","gaular.no","gausdal.no","giehtavuoatna.no","gildeskal.no","gildeskål.no","giske.no","gjemnes.no","gjerdrum.no","gjerstad.no","gjesdal.no","gjovik.no","gjøvik.no","gloppen.no","gol.no","gran.no","grane.no","granvin.no","gratangen.no","grimstad.no","grong.no","grue.no","gulen.no","guovdageaidnu.no","ha.no","hå.no","habmer.no","hábmer.no","hadsel.no","hægebostad.no","hagebostad.no","halden.no","halsa.no","hamar.no","hamaroy.no","hammarfeasta.no","hámmárfeasta.no","hammerfest.no","hapmir.no","hápmir.no","haram.no","hareid.no","harstad.no","hasvik.no","hattfjelldal.no","haugesund.no","os.hedmark.no","valer.hedmark.no","våler.hedmark.no","hemne.no","hemnes.no","hemsedal.no","hitra.no","hjartdal.no","hjelmeland.no","hobol.no","hobøl.no","hof.no","hol.no","hole.no","holmestrand.no","holtalen.no","holtålen.no","os.hordaland.no","hornindal.no","horten.no","hoyanger.no","høyanger.no","hoylandet.no","høylandet.no","hurdal.no","hurum.no","hvaler.no","hyllestad.no","ibestad.no","inderoy.no","inderøy.no","iveland.no","ivgu.no","jevnaker.no","jolster.no","jølster.no","jondal.no","kafjord.no","kåfjord.no","karasjohka.no","kárášjohka.no","karasjok.no","karlsoy.no","karmoy.no","karmøy.no","kautokeino.no","klabu.no","klæbu.no","klepp.no","kongsberg.no","kongsvinger.no","kraanghke.no","kråanghke.no","kragero.no","kragerø.no","kristiansand.no","kristiansund.no","krodsherad.no","krødsherad.no","kvæfjord.no","kvænangen.no","kvafjord.no","kvalsund.no","kvam.no","kvanangen.no","kvinesdal.no","kvinnherad.no","kviteseid.no","kvitsoy.no","kvitsøy.no","laakesvuemie.no","lærdal.no","lahppi.no","láhppi.no","lardal.no","larvik.no","lavagis.no","lavangen.no","leangaviika.no","leaŋgaviika.no","lebesby.no","leikanger.no","leirfjord.no","leka.no","leksvik.no","lenvik.no","lerdal.no","lesja.no","levanger.no","lier.no","lierne.no","lillehammer.no","lillesand.no","lindas.no","lindås.no","lindesnes.no","loabat.no","loabát.no","lodingen.no","lødingen.no","lom.no","loppa.no","lorenskog.no","lørenskog.no","loten.no","løten.no","lund.no","lunner.no","luroy.no","lurøy.no","luster.no","lyngdal.no","lyngen.no","malatvuopmi.no","málatvuopmi.no","malselv.no","målselv.no","malvik.no","mandal.no","marker.no","marnardal.no","masfjorden.no","masoy.no","måsøy.no","matta-varjjat.no","mátta-várjjat.no","meland.no","meldal.no","melhus.no","meloy.no","meløy.no","meraker.no","meråker.no","midsund.no","midtre-gauldal.no","moareke.no","moåreke.no","modalen.no","modum.no","molde.no","heroy.more-og-romsdal.no","sande.more-og-romsdal.no","herøy.møre-og-romsdal.no","sande.møre-og-romsdal.no","moskenes.no","moss.no","mosvik.no","muosat.no","muosát.no","naamesjevuemie.no","nååmesjevuemie.no","nærøy.no","namdalseid.no","namsos.no","namsskogan.no","nannestad.no","naroy.no","narviika.no","narvik.no","naustdal.no","navuotna.no","návuotna.no","nedre-eiker.no","nesna.no","nesodden.no","nesseby.no","nesset.no","nissedal.no","nittedal.no","nord-aurdal.no","nord-fron.no","nord-odal.no","norddal.no","nordkapp.no","bo.nordland.no","bø.nordland.no","heroy.nordland.no","herøy.nordland.no","nordre-land.no","nordreisa.no","nore-og-uvdal.no","notodden.no","notteroy.no","nøtterøy.no","odda.no","oksnes.no","øksnes.no","omasvuotna.no","oppdal.no","oppegard.no","oppegård.no","orkdal.no","orland.no","ørland.no","orskog.no","ørskog.no","orsta.no","ørsta.no","osen.no","osteroy.no","osterøy.no","valer.ostfold.no","våler.østfold.no","ostre-toten.no","østre-toten.no","overhalla.no","ovre-eiker.no","øvre-eiker.no","oyer.no","øyer.no","oygarden.no","øygarden.no","oystre-slidre.no","øystre-slidre.no","porsanger.no","porsangu.no","porsáŋgu.no","porsgrunn.no","rade.no","råde.no","radoy.no","radøy.no","rælingen.no","rahkkeravju.no","ráhkkerávju.no","raisa.no","ráisa.no","rakkestad.no","ralingen.no","rana.no","randaberg.no","rauma.no","rendalen.no","rennebu.no","rennesoy.no","rennesøy.no","rindal.no","ringebu.no","ringerike.no","ringsaker.no","risor.no","risør.no","rissa.no","roan.no","rodoy.no","rødøy.no","rollag.no","romsa.no","romskog.no","rømskog.no","roros.no","røros.no","rost.no","røst.no","royken.no","røyken.no","royrvik.no","røyrvik.no","ruovat.no","rygge.no","salangen.no","salat.no","sálat.no","sálát.no","saltdal.no","samnanger.no","sandefjord.no","sandnes.no","sandoy.no","sandøy.no","sarpsborg.no","sauda.no","sauherad.no","sel.no","selbu.no","selje.no","seljord.no","siellak.no","sigdal.no","siljan.no","sirdal.no","skanit.no","skánit.no","skanland.no","skånland.no","skaun.no","skedsmo.no","ski.no","skien.no","skierva.no","skiervá.no","skiptvet.no","skjak.no","skjåk.no","skjervoy.no","skjervøy.no","skodje.no","smola.no","smøla.no","snaase.no","snåase.no","snasa.no","snåsa.no","snillfjord.no","snoasa.no","sogndal.no","sogne.no","søgne.no","sokndal.no","sola.no","solund.no","somna.no","sømna.no","sondre-land.no","søndre-land.no","songdalen.no","sor-aurdal.no","sør-aurdal.no","sor-fron.no","sør-fron.no","sor-odal.no","sør-odal.no","sor-varanger.no","sør-varanger.no","sorfold.no","sørfold.no","sorreisa.no","sørreisa.no","sortland.no","sorum.no","sørum.no","spydeberg.no","stange.no","stavanger.no","steigen.no","steinkjer.no","stjordal.no","stjørdal.no","stokke.no","stor-elvdal.no","stord.no","stordal.no","storfjord.no","strand.no","stranda.no","stryn.no","sula.no","suldal.no","sund.no","sunndal.no","surnadal.no","sveio.no","svelvik.no","sykkylven.no","tana.no","bo.telemark.no","bø.telemark.no","time.no","tingvoll.no","tinn.no","tjeldsund.no","tjome.no","tjøme.no","tokke.no","tolga.no","tonsberg.no","tønsberg.no","torsken.no","træna.no","trana.no","tranoy.no","tranøy.no","troandin.no","trogstad.no","trøgstad.no","tromsa.no","tromso.no","tromsø.no","trondheim.no","trysil.no","tvedestrand.no","tydal.no","tynset.no","tysfjord.no","tysnes.no","tysvær.no","tysvar.no","ullensaker.no","ullensvang.no","ulvik.no","unjarga.no","unjárga.no","utsira.no","vaapste.no","vadso.no","vadsø.no","værøy.no","vaga.no","vågå.no","vagan.no","vågan.no","vagsoy.no","vågsøy.no","vaksdal.no","valle.no","vang.no","vanylven.no","vardo.no","vardø.no","varggat.no","várggát.no","varoy.no","vefsn.no","vega.no","vegarshei.no","vegårshei.no","vennesla.no","verdal.no","verran.no","vestby.no","sande.vestfold.no","vestnes.no","vestre-slidre.no","vestre-toten.no","vestvagoy.no","vestvågøy.no","vevelstad.no","vik.no","vikna.no","vindafjord.no","voagat.no","volda.no","voss.no","*.np","nr","biz.nr","com.nr","edu.nr","gov.nr","info.nr","net.nr","org.nr","nu","nz","ac.nz","co.nz","cri.nz","geek.nz","gen.nz","govt.nz","health.nz","iwi.nz","kiwi.nz","maori.nz","māori.nz","mil.nz","net.nz","org.nz","parliament.nz","school.nz","om","co.om","com.om","edu.om","gov.om","med.om","museum.om","net.om","org.om","pro.om","onion","org","pa","abo.pa","ac.pa","com.pa","edu.pa","gob.pa","ing.pa","med.pa","net.pa","nom.pa","org.pa","sld.pa","pe","com.pe","edu.pe","gob.pe","mil.pe","net.pe","nom.pe","org.pe","pf","com.pf","edu.pf","org.pf","*.pg","ph","com.ph","edu.ph","gov.ph","i.ph","mil.ph","net.ph","ngo.ph","org.ph","pk","ac.pk","biz.pk","com.pk","edu.pk","fam.pk","gkp.pk","gob.pk","gog.pk","gok.pk","gon.pk","gop.pk","gos.pk","gov.pk","net.pk","org.pk","web.pk","pl","com.pl","net.pl","org.pl","agro.pl","aid.pl","atm.pl","auto.pl","biz.pl","edu.pl","gmina.pl","gsm.pl","info.pl","mail.pl","media.pl","miasta.pl","mil.pl","nieruchomosci.pl","nom.pl","pc.pl","powiat.pl","priv.pl","realestate.pl","rel.pl","sex.pl","shop.pl","sklep.pl","sos.pl","szkola.pl","targi.pl","tm.pl","tourism.pl","travel.pl","turystyka.pl","gov.pl","ap.gov.pl","griw.gov.pl","ic.gov.pl","is.gov.pl","kmpsp.gov.pl","konsulat.gov.pl","kppsp.gov.pl","kwp.gov.pl","kwpsp.gov.pl","mup.gov.pl","mw.gov.pl","oia.gov.pl","oirm.gov.pl","oke.gov.pl","oow.gov.pl","oschr.gov.pl","oum.gov.pl","pa.gov.pl","pinb.gov.pl","piw.gov.pl","po.gov.pl","pr.gov.pl","psp.gov.pl","psse.gov.pl","pup.gov.pl","rzgw.gov.pl","sa.gov.pl","sdn.gov.pl","sko.gov.pl","so.gov.pl","sr.gov.pl","starostwo.gov.pl","ug.gov.pl","ugim.gov.pl","um.gov.pl","umig.gov.pl","upow.gov.pl","uppo.gov.pl","us.gov.pl","uw.gov.pl","uzs.gov.pl","wif.gov.pl","wiih.gov.pl","winb.gov.pl","wios.gov.pl","witd.gov.pl","wiw.gov.pl","wkz.gov.pl","wsa.gov.pl","wskr.gov.pl","wsse.gov.pl","wuoz.gov.pl","wzmiuw.gov.pl","zp.gov.pl","zpisdn.gov.pl","augustow.pl","babia-gora.pl","bedzin.pl","beskidy.pl","bialowieza.pl","bialystok.pl","bielawa.pl","bieszczady.pl","boleslawiec.pl","bydgoszcz.pl","bytom.pl","cieszyn.pl","czeladz.pl","czest.pl","dlugoleka.pl","elblag.pl","elk.pl","glogow.pl","gniezno.pl","gorlice.pl","grajewo.pl","ilawa.pl","jaworzno.pl","jelenia-gora.pl","jgora.pl","kalisz.pl","karpacz.pl","kartuzy.pl","kaszuby.pl","katowice.pl","kazimierz-dolny.pl","kepno.pl","ketrzyn.pl","klodzko.pl","kobierzyce.pl","kolobrzeg.pl","konin.pl","konskowola.pl","kutno.pl","lapy.pl","lebork.pl","legnica.pl","lezajsk.pl","limanowa.pl","lomza.pl","lowicz.pl","lubin.pl","lukow.pl","malbork.pl","malopolska.pl","mazowsze.pl","mazury.pl","mielec.pl","mielno.pl","mragowo.pl","naklo.pl","nowaruda.pl","nysa.pl","olawa.pl","olecko.pl","olkusz.pl","olsztyn.pl","opoczno.pl","opole.pl","ostroda.pl","ostroleka.pl","ostrowiec.pl","ostrowwlkp.pl","pila.pl","pisz.pl","podhale.pl","podlasie.pl","polkowice.pl","pomorskie.pl","pomorze.pl","prochowice.pl","pruszkow.pl","przeworsk.pl","pulawy.pl","radom.pl","rawa-maz.pl","rybnik.pl","rzeszow.pl","sanok.pl","sejny.pl","skoczow.pl","slask.pl","slupsk.pl","sosnowiec.pl","stalowa-wola.pl","starachowice.pl","stargard.pl","suwalki.pl","swidnica.pl","swiebodzin.pl","swinoujscie.pl","szczecin.pl","szczytno.pl","tarnobrzeg.pl","tgory.pl","turek.pl","tychy.pl","ustka.pl","walbrzych.pl","warmia.pl","warszawa.pl","waw.pl","wegrow.pl","wielun.pl","wlocl.pl","wloclawek.pl","wodzislaw.pl","wolomin.pl","wroclaw.pl","zachpomor.pl","zagan.pl","zarow.pl","zgora.pl","zgorzelec.pl","pm","pn","co.pn","edu.pn","gov.pn","net.pn","org.pn","post","pr","biz.pr","com.pr","edu.pr","gov.pr","info.pr","isla.pr","name.pr","net.pr","org.pr","pro.pr","ac.pr","est.pr","prof.pr","pro","aaa.pro","aca.pro","acct.pro","avocat.pro","bar.pro","cpa.pro","eng.pro","jur.pro","law.pro","med.pro","recht.pro","ps","com.ps","edu.ps","gov.ps","net.ps","org.ps","plo.ps","sec.ps","pt","com.pt","edu.pt","gov.pt","int.pt","net.pt","nome.pt","org.pt","publ.pt","pw","belau.pw","co.pw","ed.pw","go.pw","or.pw","py","com.py","coop.py","edu.py","gov.py","mil.py","net.py","org.py","qa","com.qa","edu.qa","gov.qa","mil.qa","name.qa","net.qa","org.qa","sch.qa","re","asso.re","com.re","ro","arts.ro","com.ro","firm.ro","info.ro","nom.ro","nt.ro","org.ro","rec.ro","store.ro","tm.ro","www.ro","rs","ac.rs","co.rs","edu.rs","gov.rs","in.rs","org.rs","ru","rw","ac.rw","co.rw","coop.rw","gov.rw","mil.rw","net.rw","org.rw","sa","com.sa","edu.sa","gov.sa","med.sa","net.sa","org.sa","pub.sa","sch.sa","sb","com.sb","edu.sb","gov.sb","net.sb","org.sb","sc","com.sc","edu.sc","gov.sc","net.sc","org.sc","sd","com.sd","edu.sd","gov.sd","info.sd","med.sd","net.sd","org.sd","tv.sd","se","a.se","ac.se","b.se","bd.se","brand.se","c.se","d.se","e.se","f.se","fh.se","fhsk.se","fhv.se","g.se","h.se","i.se","k.se","komforb.se","kommunalforbund.se","komvux.se","l.se","lanbib.se","m.se","n.se","naturbruksgymn.se","o.se","org.se","p.se","parti.se","pp.se","press.se","r.se","s.se","t.se","tm.se","u.se","w.se","x.se","y.se","z.se","sg","com.sg","edu.sg","gov.sg","net.sg","org.sg","sh","com.sh","gov.sh","mil.sh","net.sh","org.sh","si","sj","sk","sl","com.sl","edu.sl","gov.sl","net.sl","org.sl","sm","sn","art.sn","com.sn","edu.sn","gouv.sn","org.sn","perso.sn","univ.sn","so","com.so","edu.so","gov.so","me.so","net.so","org.so","sr","ss","biz.ss","co.ss","com.ss","edu.ss","gov.ss","me.ss","net.ss","org.ss","sch.ss","st","co.st","com.st","consulado.st","edu.st","embaixada.st","mil.st","net.st","org.st","principe.st","saotome.st","store.st","su","sv","com.sv","edu.sv","gob.sv","org.sv","red.sv","sx","gov.sx","sy","com.sy","edu.sy","gov.sy","mil.sy","net.sy","org.sy","sz","ac.sz","co.sz","org.sz","tc","td","tel","tf","tg","th","ac.th","co.th","go.th","in.th","mi.th","net.th","or.th","tj","ac.tj","biz.tj","co.tj","com.tj","edu.tj","go.tj","gov.tj","int.tj","mil.tj","name.tj","net.tj","nic.tj","org.tj","test.tj","web.tj","tk","tl","gov.tl","tm","co.tm","com.tm","edu.tm","gov.tm","mil.tm","net.tm","nom.tm","org.tm","tn","com.tn","ens.tn","fin.tn","gov.tn","ind.tn","info.tn","intl.tn","mincom.tn","nat.tn","net.tn","org.tn","perso.tn","tourism.tn","to","com.to","edu.to","gov.to","mil.to","net.to","org.to","tr","av.tr","bbs.tr","bel.tr","biz.tr","com.tr","dr.tr","edu.tr","gen.tr","gov.tr","info.tr","k12.tr","kep.tr","mil.tr","name.tr","net.tr","org.tr","pol.tr","tel.tr","tsk.tr","tv.tr","web.tr","nc.tr","gov.nc.tr","tt","biz.tt","co.tt","com.tt","edu.tt","gov.tt","info.tt","mil.tt","name.tt","net.tt","org.tt","pro.tt","tv","tw","club.tw","com.tw","ebiz.tw","edu.tw","game.tw","gov.tw","idv.tw","mil.tw","net.tw","org.tw","tz","ac.tz","co.tz","go.tz","hotel.tz","info.tz","me.tz","mil.tz","mobi.tz","ne.tz","or.tz","sc.tz","tv.tz","ua","com.ua","edu.ua","gov.ua","in.ua","net.ua","org.ua","cherkassy.ua","cherkasy.ua","chernigov.ua","chernihiv.ua","chernivtsi.ua","chernovtsy.ua","ck.ua","cn.ua","cr.ua","crimea.ua","cv.ua","dn.ua","dnepropetrovsk.ua","dnipropetrovsk.ua","donetsk.ua","dp.ua","if.ua","ivano-frankivsk.ua","kh.ua","kharkiv.ua","kharkov.ua","kherson.ua","khmelnitskiy.ua","khmelnytskyi.ua","kiev.ua","kirovograd.ua","km.ua","kr.ua","kropyvnytskyi.ua","krym.ua","ks.ua","kv.ua","kyiv.ua","lg.ua","lt.ua","lugansk.ua","luhansk.ua","lutsk.ua","lv.ua","lviv.ua","mk.ua","mykolaiv.ua","nikolaev.ua","od.ua","odesa.ua","odessa.ua","pl.ua","poltava.ua","rivne.ua","rovno.ua","rv.ua","sb.ua","sebastopol.ua","sevastopol.ua","sm.ua","sumy.ua","te.ua","ternopil.ua","uz.ua","uzhgorod.ua","uzhhorod.ua","vinnica.ua","vinnytsia.ua","vn.ua","volyn.ua","yalta.ua","zakarpattia.ua","zaporizhzhe.ua","zaporizhzhia.ua","zhitomir.ua","zhytomyr.ua","zp.ua","zt.ua","ug","ac.ug","co.ug","com.ug","go.ug","ne.ug","or.ug","org.ug","sc.ug","uk","ac.uk","co.uk","gov.uk","ltd.uk","me.uk","net.uk","nhs.uk","org.uk","plc.uk","police.uk","*.sch.uk","us","dni.us","fed.us","isa.us","kids.us","nsn.us","ak.us","al.us","ar.us","as.us","az.us","ca.us","co.us","ct.us","dc.us","de.us","fl.us","ga.us","gu.us","hi.us","ia.us","id.us","il.us","in.us","ks.us","ky.us","la.us","ma.us","md.us","me.us","mi.us","mn.us","mo.us","ms.us","mt.us","nc.us","nd.us","ne.us","nh.us","nj.us","nm.us","nv.us","ny.us","oh.us","ok.us","or.us","pa.us","pr.us","ri.us","sc.us","sd.us","tn.us","tx.us","ut.us","va.us","vi.us","vt.us","wa.us","wi.us","wv.us","wy.us","k12.ak.us","k12.al.us","k12.ar.us","k12.as.us","k12.az.us","k12.ca.us","k12.co.us","k12.ct.us","k12.dc.us","k12.fl.us","k12.ga.us","k12.gu.us","k12.ia.us","k12.id.us","k12.il.us","k12.in.us","k12.ks.us","k12.ky.us","k12.la.us","k12.ma.us","k12.md.us","k12.me.us","k12.mi.us","k12.mn.us","k12.mo.us","k12.ms.us","k12.mt.us","k12.nc.us","k12.ne.us","k12.nh.us","k12.nj.us","k12.nm.us","k12.nv.us","k12.ny.us","k12.oh.us","k12.ok.us","k12.or.us","k12.pa.us","k12.pr.us","k12.sc.us","k12.tn.us","k12.tx.us","k12.ut.us","k12.va.us","k12.vi.us","k12.vt.us","k12.wa.us","k12.wi.us","cc.ak.us","lib.ak.us","cc.al.us","lib.al.us","cc.ar.us","lib.ar.us","cc.as.us","lib.as.us","cc.az.us","lib.az.us","cc.ca.us","lib.ca.us","cc.co.us","lib.co.us","cc.ct.us","lib.ct.us","cc.dc.us","lib.dc.us","cc.de.us","cc.fl.us","cc.ga.us","cc.gu.us","cc.hi.us","cc.ia.us","cc.id.us","cc.il.us","cc.in.us","cc.ks.us","cc.ky.us","cc.la.us","cc.ma.us","cc.md.us","cc.me.us","cc.mi.us","cc.mn.us","cc.mo.us","cc.ms.us","cc.mt.us","cc.nc.us","cc.nd.us","cc.ne.us","cc.nh.us","cc.nj.us","cc.nm.us","cc.nv.us","cc.ny.us","cc.oh.us","cc.ok.us","cc.or.us","cc.pa.us","cc.pr.us","cc.ri.us","cc.sc.us","cc.sd.us","cc.tn.us","cc.tx.us","cc.ut.us","cc.va.us","cc.vi.us","cc.vt.us","cc.wa.us","cc.wi.us","cc.wv.us","cc.wy.us","k12.wy.us","lib.fl.us","lib.ga.us","lib.gu.us","lib.hi.us","lib.ia.us","lib.id.us","lib.il.us","lib.in.us","lib.ks.us","lib.ky.us","lib.la.us","lib.ma.us","lib.md.us","lib.me.us","lib.mi.us","lib.mn.us","lib.mo.us","lib.ms.us","lib.mt.us","lib.nc.us","lib.nd.us","lib.ne.us","lib.nh.us","lib.nj.us","lib.nm.us","lib.nv.us","lib.ny.us","lib.oh.us","lib.ok.us","lib.or.us","lib.pa.us","lib.pr.us","lib.ri.us","lib.sc.us","lib.sd.us","lib.tn.us","lib.tx.us","lib.ut.us","lib.va.us","lib.vi.us","lib.vt.us","lib.wa.us","lib.wi.us","lib.wy.us","chtr.k12.ma.us","paroch.k12.ma.us","pvt.k12.ma.us","ann-arbor.mi.us","cog.mi.us","dst.mi.us","eaton.mi.us","gen.mi.us","mus.mi.us","tec.mi.us","washtenaw.mi.us","uy","com.uy","edu.uy","gub.uy","mil.uy","net.uy","org.uy","uz","co.uz","com.uz","net.uz","org.uz","va","vc","com.vc","edu.vc","gov.vc","mil.vc","net.vc","org.vc","ve","arts.ve","bib.ve","co.ve","com.ve","e12.ve","edu.ve","firm.ve","gob.ve","gov.ve","info.ve","int.ve","mil.ve","net.ve","nom.ve","org.ve","rar.ve","rec.ve","store.ve","tec.ve","web.ve","vg","vi","co.vi","com.vi","k12.vi","net.vi","org.vi","vn","ac.vn","ai.vn","biz.vn","com.vn","edu.vn","gov.vn","health.vn","id.vn","info.vn","int.vn","io.vn","name.vn","net.vn","org.vn","pro.vn","angiang.vn","bacgiang.vn","backan.vn","baclieu.vn","bacninh.vn","baria-vungtau.vn","bentre.vn","binhdinh.vn","binhduong.vn","binhphuoc.vn","binhthuan.vn","camau.vn","cantho.vn","caobang.vn","daklak.vn","daknong.vn","danang.vn","dienbien.vn","dongnai.vn","dongthap.vn","gialai.vn","hagiang.vn","haiduong.vn","haiphong.vn","hanam.vn","hanoi.vn","hatinh.vn","haugiang.vn","hoabinh.vn","hungyen.vn","khanhhoa.vn","kiengiang.vn","kontum.vn","laichau.vn","lamdong.vn","langson.vn","laocai.vn","longan.vn","namdinh.vn","nghean.vn","ninhbinh.vn","ninhthuan.vn","phutho.vn","phuyen.vn","quangbinh.vn","quangnam.vn","quangngai.vn","quangninh.vn","quangtri.vn","soctrang.vn","sonla.vn","tayninh.vn","thaibinh.vn","thainguyen.vn","thanhhoa.vn","thanhphohochiminh.vn","thuathienhue.vn","tiengiang.vn","travinh.vn","tuyenquang.vn","vinhlong.vn","vinhphuc.vn","yenbai.vn","vu","com.vu","edu.vu","net.vu","org.vu","wf","ws","com.ws","edu.ws","gov.ws","net.ws","org.ws","yt","امارات","հայ","বাংলা","бг","البحرين","бел","中国","中國","الجزائر","مصر","ею","ευ","موريتانيا","გე","ελ","香港","個人.香港","公司.香港","政府.香港","教育.香港","組織.香港","網絡.香港","ಭಾರತ","ଭାରତ","ভাৰত","भारतम्","भारोत","ڀارت","ഭാരതം","भारत","بارت","بھارت","భారత్","ભારત","ਭਾਰਤ","ভারত","இந்தியா","ایران","ايران","عراق","الاردن","한국","қаз","ລາວ","ලංකා","இலங்கை","المغرب","мкд","мон","澳門","澳门","مليسيا","عمان","پاکستان","پاكستان","فلسطين","срб","ак.срб","обр.срб","од.срб","орг.срб","пр.срб","упр.срб","рф","قطر","السعودية","السعودیة","السعودیۃ","السعوديه","سودان","新加坡","சிங்கப்பூர்","سورية","سوريا","ไทย","ทหาร.ไทย","ธุรกิจ.ไทย","เน็ต.ไทย","รัฐบาล.ไทย","ศึกษา.ไทย","องค์กร.ไทย","تونس","台灣","台湾","臺灣","укр","اليمن","xxx","ye","com.ye","edu.ye","gov.ye","mil.ye","net.ye","org.ye","ac.za","agric.za","alt.za","co.za","edu.za","gov.za","grondar.za","law.za","mil.za","net.za","ngo.za","nic.za","nis.za","nom.za","org.za","school.za","tm.za","web.za","zm","ac.zm","biz.zm","co.zm","com.zm","edu.zm","gov.zm","info.zm","mil.zm","net.zm","org.zm","sch.zm","zw","ac.zw","co.zw","gov.zw","mil.zw","org.zw","aaa","aarp","abb","abbott","abbvie","abc","able","abogado","abudhabi","academy","accenture","accountant","accountants","aco","actor","ads","adult","aeg","aetna","afl","africa","agakhan","agency","aig","airbus","airforce","airtel","akdn","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","aol","apartments","app","apple","aquarelle","arab","aramco","archi","army","art","arte","asda","associates","athleta","attorney","auction","audi","audible","audio","auspost","author","auto","autos","aws","axa","azure","baby","baidu","banamex","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bbc","bbt","bbva","bcg","bcn","beats","beauty","beer","bentley","berlin","best","bestbuy","bet","bharti","bible","bid","bike","bing","bingo","bio","black","blackfriday","blockbuster","blog","bloomberg","blue","bms","bmw","bnpparibas","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","bradesco","bridgestone","broadway","broker","brother","brussels","build","builders","business","buy","buzz","bzh","cab","cafe","cal","call","calvinklein","cam","camera","camp","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","cash","casino","catering","catholic","cba","cbn","cbre","center","ceo","cern","cfa","cfd","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","cipriani","circle","cisco","citadel","citi","citic","city","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","coach","codes","coffee","college","cologne","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cool","corsica","country","coupon","coupons","courses","cpa","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","cuisinella","cymru","cyou","dad","dance","data","date","dating","datsun","day","dclk","dds","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dnp","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","dunlop","dupont","durban","dvag","dvr","earth","eat","eco","edeka","education","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","ericsson","erni","esq","estate","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","flickr","flights","flir","florist","flowers","fly","foo","food","football","ford","forex","forsale","forum","foundation","fox","free","fresenius","frl","frogans","frontier","ftr","fujitsu","fun","fund","furniture","futbol","fyi","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gbiz","gdn","gea","gent","genting","george","ggee","gift","gifts","gives","giving","glass","gle","global","globo","gmail","gmbh","gmo","gmx","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","grainger","graphics","gratis","green","gripe","grocery","group","gucci","guge","guide","guitars","guru","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hiphop","hisamitsu","hitachi","hiv","hkt","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hotels","hotmail","house","how","hsbc","hughes","hyatt","hyundai","ibm","icbc","ice","icu","ieee","ifm","ikano","imamat","imdb","immo","immobilien","inc","industries","infiniti","ing","ink","institute","insurance","insure","international","intuit","investments","ipiranga","irish","ismaili","ist","istanbul","itau","itv","jaguar","java","jcb","jeep","jetzt","jewelry","jio","jll","jmp","jnj","joburg","jot","joy","jpmorgan","jprs","juegos","juniper","kaufen","kddi","kerryhotels","kerrylogistics","kerryproperties","kfh","kia","kids","kim","kindle","kitchen","kiwi","koeln","komatsu","kosher","kpmg","kpn","krd","kred","kuokgroup","kyoto","lacaixa","lamborghini","lamer","lancaster","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","link","lipsy","live","living","llc","llp","loan","loans","locker","locus","lol","london","lotte","lotto","love","lpl","lplfinancial","ltd","ltda","lundbeck","luxe","luxury","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","mattel","mba","mckinsey","med","media","meet","melbourne","meme","memorial","men","menu","merck","merckmsd","miami","microsoft","mini","mint","mit","mitsubishi","mlb","mls","mma","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","msd","mtn","mtr","music","nab","nagoya","navy","nba","nec","netbank","netflix","network","neustar","new","news","next","nextdirect","nexus","nfl","ngo","nhk","nico","nike","nikon","ninja","nissan","nissay","nokia","norton","now","nowruz","nowtv","nra","nrw","ntt","nyc","obi","observer","office","okinawa","olayan","olayangroup","ollo","omega","one","ong","onl","online","ooo","open","oracle","orange","organic","origins","osaka","otsuka","ott","ovh","page","panasonic","paris","pars","partners","parts","party","pay","pccw","pet","pfizer","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","place","play","playstation","plumbing","plus","pnc","pohl","poker","politie","porn","pramerica","praxi","press","prime","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","pub","pwc","qpon","quebec","quest","racing","radio","read","realestate","realtor","realty","recipes","red","redstone","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","ril","rio","rip","rocks","rodeo","rogers","room","rsvp","rugby","ruhr","run","rwe","ryukyu","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sbi","sbs","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scot","search","seat","secure","security","seek","select","sener","services","seven","sew","sex","sexy","sfr","shangrila","sharp","shell","shia","shiksha","shoes","shop","shopping","shouji","show","silk","sina","singles","site","ski","skin","sky","skype","sling","smart","smile","sncf","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","srl","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","sucks","supplies","supply","support","surf","surgery","suzuki","swatch","swiss","sydney","systems","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tci","tdk","team","tech","technology","temasek","tennis","teva","thd","theater","theatre","tiaa","tickets","tienda","tips","tires","tirol","tjmaxx","tjx","tkmaxx","tmall","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","trade","trading","training","travel","travelers","travelersinsurance","trust","trv","tube","tui","tunes","tushu","tvs","ubank","ubs","unicom","university","uno","uol","ups","vacations","vana","vanguard","vegas","ventures","verisign","versicherung","vet","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vodka","volvo","vote","voting","voto","voyage","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wed","wedding","weibo","weir","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","wtc","wtf","xbox","xerox","xihuan","xin","कॉम","セール","佛山","慈善","集团","在线","点看","คอม","八卦","موقع","公益","公司","香格里拉","网站","移动","我爱你","москва","католик","онлайн","сайт","联通","קום","时尚","微博","淡马锡","ファッション","орг","नेट","ストア","アマゾン","삼성","商标","商店","商城","дети","ポイント","新闻","家電","كوم","中文网","中信","娱乐","谷歌","電訊盈科","购物","クラウド","通販","网店","संगठन","餐厅","网络","ком","亚马逊","食品","飞利浦","手机","ارامكو","العليان","بازار","ابوظبي","كاثوليك","همراه","닷컴","政府","شبكة","بيتك","عرب","机构","组织机构","健康","招聘","рус","大拿","みんな","グーグル","世界","書籍","网址","닷넷","コム","天主教","游戏","vermögensberater","vermögensberatung","企业","信息","嘉里大酒店","嘉里","广东","政务","xyz","yachts","yahoo","yamaxun","yandex","yodobashi","yoga","yokohama","you","youtube","yun","zappos","zara","zero","zip","zone","zuerich","co.krd","edu.krd","art.pl","gliwice.pl","krakow.pl","poznan.pl","wroc.pl","zakopane.pl","lib.de.us","12chars.dev","12chars.it","12chars.pro","cc.ua","inf.ua","ltd.ua","611.to","a2hosted.com","cpserver.com","aaa.vodka","*.on-acorn.io","activetrail.biz","adaptable.app","adobeaemcloud.com","*.dev.adobeaemcloud.com","aem.live","hlx.live","adobeaemcloud.net","aem.page","hlx.page","hlx3.page","adobeio-static.net","adobeioruntime.net","africa.com","beep.pl","airkitapps.com","airkitapps-au.com","airkitapps.eu","aivencloud.com","akadns.net","akamai.net","akamai-staging.net","akamaiedge.net","akamaiedge-staging.net","akamaihd.net","akamaihd-staging.net","akamaiorigin.net","akamaiorigin-staging.net","akamaized.net","akamaized-staging.net","edgekey.net","edgekey-staging.net","edgesuite.net","edgesuite-staging.net","barsy.ca","*.compute.estate","*.alces.network","kasserver.com","altervista.org","alwaysdata.net","myamaze.net","execute-api.cn-north-1.amazonaws.com.cn","execute-api.cn-northwest-1.amazonaws.com.cn","execute-api.af-south-1.amazonaws.com","execute-api.ap-east-1.amazonaws.com","execute-api.ap-northeast-1.amazonaws.com","execute-api.ap-northeast-2.amazonaws.com","execute-api.ap-northeast-3.amazonaws.com","execute-api.ap-south-1.amazonaws.com","execute-api.ap-south-2.amazonaws.com","execute-api.ap-southeast-1.amazonaws.com","execute-api.ap-southeast-2.amazonaws.com","execute-api.ap-southeast-3.amazonaws.com","execute-api.ap-southeast-4.amazonaws.com","execute-api.ap-southeast-5.amazonaws.com","execute-api.ca-central-1.amazonaws.com","execute-api.ca-west-1.amazonaws.com","execute-api.eu-central-1.amazonaws.com","execute-api.eu-central-2.amazonaws.com","execute-api.eu-north-1.amazonaws.com","execute-api.eu-south-1.amazonaws.com","execute-api.eu-south-2.amazonaws.com","execute-api.eu-west-1.amazonaws.com","execute-api.eu-west-2.amazonaws.com","execute-api.eu-west-3.amazonaws.com","execute-api.il-central-1.amazonaws.com","execute-api.me-central-1.amazonaws.com","execute-api.me-south-1.amazonaws.com","execute-api.sa-east-1.amazonaws.com","execute-api.us-east-1.amazonaws.com","execute-api.us-east-2.amazonaws.com","execute-api.us-gov-east-1.amazonaws.com","execute-api.us-gov-west-1.amazonaws.com","execute-api.us-west-1.amazonaws.com","execute-api.us-west-2.amazonaws.com","cloudfront.net","auth.af-south-1.amazoncognito.com","auth.ap-east-1.amazoncognito.com","auth.ap-northeast-1.amazoncognito.com","auth.ap-northeast-2.amazoncognito.com","auth.ap-northeast-3.amazoncognito.com","auth.ap-south-1.amazoncognito.com","auth.ap-south-2.amazoncognito.com","auth.ap-southeast-1.amazoncognito.com","auth.ap-southeast-2.amazoncognito.com","auth.ap-southeast-3.amazoncognito.com","auth.ap-southeast-4.amazoncognito.com","auth.ca-central-1.amazoncognito.com","auth.ca-west-1.amazoncognito.com","auth.eu-central-1.amazoncognito.com","auth.eu-central-2.amazoncognito.com","auth.eu-north-1.amazoncognito.com","auth.eu-south-1.amazoncognito.com","auth.eu-south-2.amazoncognito.com","auth.eu-west-1.amazoncognito.com","auth.eu-west-2.amazoncognito.com","auth.eu-west-3.amazoncognito.com","auth.il-central-1.amazoncognito.com","auth.me-central-1.amazoncognito.com","auth.me-south-1.amazoncognito.com","auth.sa-east-1.amazoncognito.com","auth.us-east-1.amazoncognito.com","auth-fips.us-east-1.amazoncognito.com","auth.us-east-2.amazoncognito.com","auth-fips.us-east-2.amazoncognito.com","auth-fips.us-gov-west-1.amazoncognito.com","auth.us-west-1.amazoncognito.com","auth-fips.us-west-1.amazoncognito.com","auth.us-west-2.amazoncognito.com","auth-fips.us-west-2.amazoncognito.com","*.compute.amazonaws.com.cn","*.compute.amazonaws.com","*.compute-1.amazonaws.com","us-east-1.amazonaws.com","emrappui-prod.cn-north-1.amazonaws.com.cn","emrnotebooks-prod.cn-north-1.amazonaws.com.cn","emrstudio-prod.cn-north-1.amazonaws.com.cn","emrappui-prod.cn-northwest-1.amazonaws.com.cn","emrnotebooks-prod.cn-northwest-1.amazonaws.com.cn","emrstudio-prod.cn-northwest-1.amazonaws.com.cn","emrappui-prod.af-south-1.amazonaws.com","emrnotebooks-prod.af-south-1.amazonaws.com","emrstudio-prod.af-south-1.amazonaws.com","emrappui-prod.ap-east-1.amazonaws.com","emrnotebooks-prod.ap-east-1.amazonaws.com","emrstudio-prod.ap-east-1.amazonaws.com","emrappui-prod.ap-northeast-1.amazonaws.com","emrnotebooks-prod.ap-northeast-1.amazonaws.com","emrstudio-prod.ap-northeast-1.amazonaws.com","emrappui-prod.ap-northeast-2.amazonaws.com","emrnotebooks-prod.ap-northeast-2.amazonaws.com","emrstudio-prod.ap-northeast-2.amazonaws.com","emrappui-prod.ap-northeast-3.amazonaws.com","emrnotebooks-prod.ap-northeast-3.amazonaws.com","emrstudio-prod.ap-northeast-3.amazonaws.com","emrappui-prod.ap-south-1.amazonaws.com","emrnotebooks-prod.ap-south-1.amazonaws.com","emrstudio-prod.ap-south-1.amazonaws.com","emrappui-prod.ap-south-2.amazonaws.com","emrnotebooks-prod.ap-south-2.amazonaws.com","emrstudio-prod.ap-south-2.amazonaws.com","emrappui-prod.ap-southeast-1.amazonaws.com","emrnotebooks-prod.ap-southeast-1.amazonaws.com","emrstudio-prod.ap-southeast-1.amazonaws.com","emrappui-prod.ap-southeast-2.amazonaws.com","emrnotebooks-prod.ap-southeast-2.amazonaws.com","emrstudio-prod.ap-southeast-2.amazonaws.com","emrappui-prod.ap-southeast-3.amazonaws.com","emrnotebooks-prod.ap-southeast-3.amazonaws.com","emrstudio-prod.ap-southeast-3.amazonaws.com","emrappui-prod.ap-southeast-4.amazonaws.com","emrnotebooks-prod.ap-southeast-4.amazonaws.com","emrstudio-prod.ap-southeast-4.amazonaws.com","emrappui-prod.ca-central-1.amazonaws.com","emrnotebooks-prod.ca-central-1.amazonaws.com","emrstudio-prod.ca-central-1.amazonaws.com","emrappui-prod.ca-west-1.amazonaws.com","emrnotebooks-prod.ca-west-1.amazonaws.com","emrstudio-prod.ca-west-1.amazonaws.com","emrappui-prod.eu-central-1.amazonaws.com","emrnotebooks-prod.eu-central-1.amazonaws.com","emrstudio-prod.eu-central-1.amazonaws.com","emrappui-prod.eu-central-2.amazonaws.com","emrnotebooks-prod.eu-central-2.amazonaws.com","emrstudio-prod.eu-central-2.amazonaws.com","emrappui-prod.eu-north-1.amazonaws.com","emrnotebooks-prod.eu-north-1.amazonaws.com","emrstudio-prod.eu-north-1.amazonaws.com","emrappui-prod.eu-south-1.amazonaws.com","emrnotebooks-prod.eu-south-1.amazonaws.com","emrstudio-prod.eu-south-1.amazonaws.com","emrappui-prod.eu-south-2.amazonaws.com","emrnotebooks-prod.eu-south-2.amazonaws.com","emrstudio-prod.eu-south-2.amazonaws.com","emrappui-prod.eu-west-1.amazonaws.com","emrnotebooks-prod.eu-west-1.amazonaws.com","emrstudio-prod.eu-west-1.amazonaws.com","emrappui-prod.eu-west-2.amazonaws.com","emrnotebooks-prod.eu-west-2.amazonaws.com","emrstudio-prod.eu-west-2.amazonaws.com","emrappui-prod.eu-west-3.amazonaws.com","emrnotebooks-prod.eu-west-3.amazonaws.com","emrstudio-prod.eu-west-3.amazonaws.com","emrappui-prod.il-central-1.amazonaws.com","emrnotebooks-prod.il-central-1.amazonaws.com","emrstudio-prod.il-central-1.amazonaws.com","emrappui-prod.me-central-1.amazonaws.com","emrnotebooks-prod.me-central-1.amazonaws.com","emrstudio-prod.me-central-1.amazonaws.com","emrappui-prod.me-south-1.amazonaws.com","emrnotebooks-prod.me-south-1.amazonaws.com","emrstudio-prod.me-south-1.amazonaws.com","emrappui-prod.sa-east-1.amazonaws.com","emrnotebooks-prod.sa-east-1.amazonaws.com","emrstudio-prod.sa-east-1.amazonaws.com","emrappui-prod.us-east-1.amazonaws.com","emrnotebooks-prod.us-east-1.amazonaws.com","emrstudio-prod.us-east-1.amazonaws.com","emrappui-prod.us-east-2.amazonaws.com","emrnotebooks-prod.us-east-2.amazonaws.com","emrstudio-prod.us-east-2.amazonaws.com","emrappui-prod.us-gov-east-1.amazonaws.com","emrnotebooks-prod.us-gov-east-1.amazonaws.com","emrstudio-prod.us-gov-east-1.amazonaws.com","emrappui-prod.us-gov-west-1.amazonaws.com","emrnotebooks-prod.us-gov-west-1.amazonaws.com","emrstudio-prod.us-gov-west-1.amazonaws.com","emrappui-prod.us-west-1.amazonaws.com","emrnotebooks-prod.us-west-1.amazonaws.com","emrstudio-prod.us-west-1.amazonaws.com","emrappui-prod.us-west-2.amazonaws.com","emrnotebooks-prod.us-west-2.amazonaws.com","emrstudio-prod.us-west-2.amazonaws.com","*.cn-north-1.airflow.amazonaws.com.cn","*.cn-northwest-1.airflow.amazonaws.com.cn","*.af-south-1.airflow.amazonaws.com","*.ap-east-1.airflow.amazonaws.com","*.ap-northeast-1.airflow.amazonaws.com","*.ap-northeast-2.airflow.amazonaws.com","*.ap-northeast-3.airflow.amazonaws.com","*.ap-south-1.airflow.amazonaws.com","*.ap-south-2.airflow.amazonaws.com","*.ap-southeast-1.airflow.amazonaws.com","*.ap-southeast-2.airflow.amazonaws.com","*.ap-southeast-3.airflow.amazonaws.com","*.ap-southeast-4.airflow.amazonaws.com","*.ca-central-1.airflow.amazonaws.com","*.ca-west-1.airflow.amazonaws.com","*.eu-central-1.airflow.amazonaws.com","*.eu-central-2.airflow.amazonaws.com","*.eu-north-1.airflow.amazonaws.com","*.eu-south-1.airflow.amazonaws.com","*.eu-south-2.airflow.amazonaws.com","*.eu-west-1.airflow.amazonaws.com","*.eu-west-2.airflow.amazonaws.com","*.eu-west-3.airflow.amazonaws.com","*.il-central-1.airflow.amazonaws.com","*.me-central-1.airflow.amazonaws.com","*.me-south-1.airflow.amazonaws.com","*.sa-east-1.airflow.amazonaws.com","*.us-east-1.airflow.amazonaws.com","*.us-east-2.airflow.amazonaws.com","*.us-west-1.airflow.amazonaws.com","*.us-west-2.airflow.amazonaws.com","s3.dualstack.cn-north-1.amazonaws.com.cn","s3-accesspoint.dualstack.cn-north-1.amazonaws.com.cn","s3-website.dualstack.cn-north-1.amazonaws.com.cn","s3.cn-north-1.amazonaws.com.cn","s3-accesspoint.cn-north-1.amazonaws.com.cn","s3-deprecated.cn-north-1.amazonaws.com.cn","s3-object-lambda.cn-north-1.amazonaws.com.cn","s3-website.cn-north-1.amazonaws.com.cn","s3.dualstack.cn-northwest-1.amazonaws.com.cn","s3-accesspoint.dualstack.cn-northwest-1.amazonaws.com.cn","s3.cn-northwest-1.amazonaws.com.cn","s3-accesspoint.cn-northwest-1.amazonaws.com.cn","s3-object-lambda.cn-northwest-1.amazonaws.com.cn","s3-website.cn-northwest-1.amazonaws.com.cn","s3.dualstack.af-south-1.amazonaws.com","s3-accesspoint.dualstack.af-south-1.amazonaws.com","s3-website.dualstack.af-south-1.amazonaws.com","s3.af-south-1.amazonaws.com","s3-accesspoint.af-south-1.amazonaws.com","s3-object-lambda.af-south-1.amazonaws.com","s3-website.af-south-1.amazonaws.com","s3.dualstack.ap-east-1.amazonaws.com","s3-accesspoint.dualstack.ap-east-1.amazonaws.com","s3.ap-east-1.amazonaws.com","s3-accesspoint.ap-east-1.amazonaws.com","s3-object-lambda.ap-east-1.amazonaws.com","s3-website.ap-east-1.amazonaws.com","s3.dualstack.ap-northeast-1.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-1.amazonaws.com","s3-website.dualstack.ap-northeast-1.amazonaws.com","s3.ap-northeast-1.amazonaws.com","s3-accesspoint.ap-northeast-1.amazonaws.com","s3-object-lambda.ap-northeast-1.amazonaws.com","s3-website.ap-northeast-1.amazonaws.com","s3.dualstack.ap-northeast-2.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-2.amazonaws.com","s3-website.dualstack.ap-northeast-2.amazonaws.com","s3.ap-northeast-2.amazonaws.com","s3-accesspoint.ap-northeast-2.amazonaws.com","s3-object-lambda.ap-northeast-2.amazonaws.com","s3-website.ap-northeast-2.amazonaws.com","s3.dualstack.ap-northeast-3.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-3.amazonaws.com","s3-website.dualstack.ap-northeast-3.amazonaws.com","s3.ap-northeast-3.amazonaws.com","s3-accesspoint.ap-northeast-3.amazonaws.com","s3-object-lambda.ap-northeast-3.amazonaws.com","s3-website.ap-northeast-3.amazonaws.com","s3.dualstack.ap-south-1.amazonaws.com","s3-accesspoint.dualstack.ap-south-1.amazonaws.com","s3-website.dualstack.ap-south-1.amazonaws.com","s3.ap-south-1.amazonaws.com","s3-accesspoint.ap-south-1.amazonaws.com","s3-object-lambda.ap-south-1.amazonaws.com","s3-website.ap-south-1.amazonaws.com","s3.dualstack.ap-south-2.amazonaws.com","s3-accesspoint.dualstack.ap-south-2.amazonaws.com","s3-website.dualstack.ap-south-2.amazonaws.com","s3.ap-south-2.amazonaws.com","s3-accesspoint.ap-south-2.amazonaws.com","s3-object-lambda.ap-south-2.amazonaws.com","s3-website.ap-south-2.amazonaws.com","s3.dualstack.ap-southeast-1.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-1.amazonaws.com","s3-website.dualstack.ap-southeast-1.amazonaws.com","s3.ap-southeast-1.amazonaws.com","s3-accesspoint.ap-southeast-1.amazonaws.com","s3-object-lambda.ap-southeast-1.amazonaws.com","s3-website.ap-southeast-1.amazonaws.com","s3.dualstack.ap-southeast-2.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-2.amazonaws.com","s3-website.dualstack.ap-southeast-2.amazonaws.com","s3.ap-southeast-2.amazonaws.com","s3-accesspoint.ap-southeast-2.amazonaws.com","s3-object-lambda.ap-southeast-2.amazonaws.com","s3-website.ap-southeast-2.amazonaws.com","s3.dualstack.ap-southeast-3.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-3.amazonaws.com","s3-website.dualstack.ap-southeast-3.amazonaws.com","s3.ap-southeast-3.amazonaws.com","s3-accesspoint.ap-southeast-3.amazonaws.com","s3-object-lambda.ap-southeast-3.amazonaws.com","s3-website.ap-southeast-3.amazonaws.com","s3.dualstack.ap-southeast-4.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-4.amazonaws.com","s3-website.dualstack.ap-southeast-4.amazonaws.com","s3.ap-southeast-4.amazonaws.com","s3-accesspoint.ap-southeast-4.amazonaws.com","s3-object-lambda.ap-southeast-4.amazonaws.com","s3-website.ap-southeast-4.amazonaws.com","s3.dualstack.ap-southeast-5.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-5.amazonaws.com","s3-website.dualstack.ap-southeast-5.amazonaws.com","s3.ap-southeast-5.amazonaws.com","s3-accesspoint.ap-southeast-5.amazonaws.com","s3-deprecated.ap-southeast-5.amazonaws.com","s3-object-lambda.ap-southeast-5.amazonaws.com","s3-website.ap-southeast-5.amazonaws.com","s3.dualstack.ca-central-1.amazonaws.com","s3-accesspoint.dualstack.ca-central-1.amazonaws.com","s3-accesspoint-fips.dualstack.ca-central-1.amazonaws.com","s3-fips.dualstack.ca-central-1.amazonaws.com","s3-website.dualstack.ca-central-1.amazonaws.com","s3.ca-central-1.amazonaws.com","s3-accesspoint.ca-central-1.amazonaws.com","s3-accesspoint-fips.ca-central-1.amazonaws.com","s3-fips.ca-central-1.amazonaws.com","s3-object-lambda.ca-central-1.amazonaws.com","s3-website.ca-central-1.amazonaws.com","s3.dualstack.ca-west-1.amazonaws.com","s3-accesspoint.dualstack.ca-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.ca-west-1.amazonaws.com","s3-fips.dualstack.ca-west-1.amazonaws.com","s3-website.dualstack.ca-west-1.amazonaws.com","s3.ca-west-1.amazonaws.com","s3-accesspoint.ca-west-1.amazonaws.com","s3-accesspoint-fips.ca-west-1.amazonaws.com","s3-fips.ca-west-1.amazonaws.com","s3-object-lambda.ca-west-1.amazonaws.com","s3-website.ca-west-1.amazonaws.com","s3.dualstack.eu-central-1.amazonaws.com","s3-accesspoint.dualstack.eu-central-1.amazonaws.com","s3-website.dualstack.eu-central-1.amazonaws.com","s3.eu-central-1.amazonaws.com","s3-accesspoint.eu-central-1.amazonaws.com","s3-object-lambda.eu-central-1.amazonaws.com","s3-website.eu-central-1.amazonaws.com","s3.dualstack.eu-central-2.amazonaws.com","s3-accesspoint.dualstack.eu-central-2.amazonaws.com","s3-website.dualstack.eu-central-2.amazonaws.com","s3.eu-central-2.amazonaws.com","s3-accesspoint.eu-central-2.amazonaws.com","s3-object-lambda.eu-central-2.amazonaws.com","s3-website.eu-central-2.amazonaws.com","s3.dualstack.eu-north-1.amazonaws.com","s3-accesspoint.dualstack.eu-north-1.amazonaws.com","s3.eu-north-1.amazonaws.com","s3-accesspoint.eu-north-1.amazonaws.com","s3-object-lambda.eu-north-1.amazonaws.com","s3-website.eu-north-1.amazonaws.com","s3.dualstack.eu-south-1.amazonaws.com","s3-accesspoint.dualstack.eu-south-1.amazonaws.com","s3-website.dualstack.eu-south-1.amazonaws.com","s3.eu-south-1.amazonaws.com","s3-accesspoint.eu-south-1.amazonaws.com","s3-object-lambda.eu-south-1.amazonaws.com","s3-website.eu-south-1.amazonaws.com","s3.dualstack.eu-south-2.amazonaws.com","s3-accesspoint.dualstack.eu-south-2.amazonaws.com","s3-website.dualstack.eu-south-2.amazonaws.com","s3.eu-south-2.amazonaws.com","s3-accesspoint.eu-south-2.amazonaws.com","s3-object-lambda.eu-south-2.amazonaws.com","s3-website.eu-south-2.amazonaws.com","s3.dualstack.eu-west-1.amazonaws.com","s3-accesspoint.dualstack.eu-west-1.amazonaws.com","s3-website.dualstack.eu-west-1.amazonaws.com","s3.eu-west-1.amazonaws.com","s3-accesspoint.eu-west-1.amazonaws.com","s3-deprecated.eu-west-1.amazonaws.com","s3-object-lambda.eu-west-1.amazonaws.com","s3-website.eu-west-1.amazonaws.com","s3.dualstack.eu-west-2.amazonaws.com","s3-accesspoint.dualstack.eu-west-2.amazonaws.com","s3.eu-west-2.amazonaws.com","s3-accesspoint.eu-west-2.amazonaws.com","s3-object-lambda.eu-west-2.amazonaws.com","s3-website.eu-west-2.amazonaws.com","s3.dualstack.eu-west-3.amazonaws.com","s3-accesspoint.dualstack.eu-west-3.amazonaws.com","s3-website.dualstack.eu-west-3.amazonaws.com","s3.eu-west-3.amazonaws.com","s3-accesspoint.eu-west-3.amazonaws.com","s3-object-lambda.eu-west-3.amazonaws.com","s3-website.eu-west-3.amazonaws.com","s3.dualstack.il-central-1.amazonaws.com","s3-accesspoint.dualstack.il-central-1.amazonaws.com","s3-website.dualstack.il-central-1.amazonaws.com","s3.il-central-1.amazonaws.com","s3-accesspoint.il-central-1.amazonaws.com","s3-object-lambda.il-central-1.amazonaws.com","s3-website.il-central-1.amazonaws.com","s3.dualstack.me-central-1.amazonaws.com","s3-accesspoint.dualstack.me-central-1.amazonaws.com","s3-website.dualstack.me-central-1.amazonaws.com","s3.me-central-1.amazonaws.com","s3-accesspoint.me-central-1.amazonaws.com","s3-object-lambda.me-central-1.amazonaws.com","s3-website.me-central-1.amazonaws.com","s3.dualstack.me-south-1.amazonaws.com","s3-accesspoint.dualstack.me-south-1.amazonaws.com","s3.me-south-1.amazonaws.com","s3-accesspoint.me-south-1.amazonaws.com","s3-object-lambda.me-south-1.amazonaws.com","s3-website.me-south-1.amazonaws.com","s3.amazonaws.com","s3-1.amazonaws.com","s3-ap-east-1.amazonaws.com","s3-ap-northeast-1.amazonaws.com","s3-ap-northeast-2.amazonaws.com","s3-ap-northeast-3.amazonaws.com","s3-ap-south-1.amazonaws.com","s3-ap-southeast-1.amazonaws.com","s3-ap-southeast-2.amazonaws.com","s3-ca-central-1.amazonaws.com","s3-eu-central-1.amazonaws.com","s3-eu-north-1.amazonaws.com","s3-eu-west-1.amazonaws.com","s3-eu-west-2.amazonaws.com","s3-eu-west-3.amazonaws.com","s3-external-1.amazonaws.com","s3-fips-us-gov-east-1.amazonaws.com","s3-fips-us-gov-west-1.amazonaws.com","mrap.accesspoint.s3-global.amazonaws.com","s3-me-south-1.amazonaws.com","s3-sa-east-1.amazonaws.com","s3-us-east-2.amazonaws.com","s3-us-gov-east-1.amazonaws.com","s3-us-gov-west-1.amazonaws.com","s3-us-west-1.amazonaws.com","s3-us-west-2.amazonaws.com","s3-website-ap-northeast-1.amazonaws.com","s3-website-ap-southeast-1.amazonaws.com","s3-website-ap-southeast-2.amazonaws.com","s3-website-eu-west-1.amazonaws.com","s3-website-sa-east-1.amazonaws.com","s3-website-us-east-1.amazonaws.com","s3-website-us-gov-west-1.amazonaws.com","s3-website-us-west-1.amazonaws.com","s3-website-us-west-2.amazonaws.com","s3.dualstack.sa-east-1.amazonaws.com","s3-accesspoint.dualstack.sa-east-1.amazonaws.com","s3-website.dualstack.sa-east-1.amazonaws.com","s3.sa-east-1.amazonaws.com","s3-accesspoint.sa-east-1.amazonaws.com","s3-object-lambda.sa-east-1.amazonaws.com","s3-website.sa-east-1.amazonaws.com","s3.dualstack.us-east-1.amazonaws.com","s3-accesspoint.dualstack.us-east-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-east-1.amazonaws.com","s3-fips.dualstack.us-east-1.amazonaws.com","s3-website.dualstack.us-east-1.amazonaws.com","s3.us-east-1.amazonaws.com","s3-accesspoint.us-east-1.amazonaws.com","s3-accesspoint-fips.us-east-1.amazonaws.com","s3-deprecated.us-east-1.amazonaws.com","s3-fips.us-east-1.amazonaws.com","s3-object-lambda.us-east-1.amazonaws.com","s3-website.us-east-1.amazonaws.com","s3.dualstack.us-east-2.amazonaws.com","s3-accesspoint.dualstack.us-east-2.amazonaws.com","s3-accesspoint-fips.dualstack.us-east-2.amazonaws.com","s3-fips.dualstack.us-east-2.amazonaws.com","s3-website.dualstack.us-east-2.amazonaws.com","s3.us-east-2.amazonaws.com","s3-accesspoint.us-east-2.amazonaws.com","s3-accesspoint-fips.us-east-2.amazonaws.com","s3-deprecated.us-east-2.amazonaws.com","s3-fips.us-east-2.amazonaws.com","s3-object-lambda.us-east-2.amazonaws.com","s3-website.us-east-2.amazonaws.com","s3.dualstack.us-gov-east-1.amazonaws.com","s3-accesspoint.dualstack.us-gov-east-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-gov-east-1.amazonaws.com","s3-fips.dualstack.us-gov-east-1.amazonaws.com","s3.us-gov-east-1.amazonaws.com","s3-accesspoint.us-gov-east-1.amazonaws.com","s3-accesspoint-fips.us-gov-east-1.amazonaws.com","s3-fips.us-gov-east-1.amazonaws.com","s3-object-lambda.us-gov-east-1.amazonaws.com","s3-website.us-gov-east-1.amazonaws.com","s3.dualstack.us-gov-west-1.amazonaws.com","s3-accesspoint.dualstack.us-gov-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-gov-west-1.amazonaws.com","s3-fips.dualstack.us-gov-west-1.amazonaws.com","s3.us-gov-west-1.amazonaws.com","s3-accesspoint.us-gov-west-1.amazonaws.com","s3-accesspoint-fips.us-gov-west-1.amazonaws.com","s3-fips.us-gov-west-1.amazonaws.com","s3-object-lambda.us-gov-west-1.amazonaws.com","s3-website.us-gov-west-1.amazonaws.com","s3.dualstack.us-west-1.amazonaws.com","s3-accesspoint.dualstack.us-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-west-1.amazonaws.com","s3-fips.dualstack.us-west-1.amazonaws.com","s3-website.dualstack.us-west-1.amazonaws.com","s3.us-west-1.amazonaws.com","s3-accesspoint.us-west-1.amazonaws.com","s3-accesspoint-fips.us-west-1.amazonaws.com","s3-fips.us-west-1.amazonaws.com","s3-object-lambda.us-west-1.amazonaws.com","s3-website.us-west-1.amazonaws.com","s3.dualstack.us-west-2.amazonaws.com","s3-accesspoint.dualstack.us-west-2.amazonaws.com","s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com","s3-fips.dualstack.us-west-2.amazonaws.com","s3-website.dualstack.us-west-2.amazonaws.com","s3.us-west-2.amazonaws.com","s3-accesspoint.us-west-2.amazonaws.com","s3-accesspoint-fips.us-west-2.amazonaws.com","s3-deprecated.us-west-2.amazonaws.com","s3-fips.us-west-2.amazonaws.com","s3-object-lambda.us-west-2.amazonaws.com","s3-website.us-west-2.amazonaws.com","labeling.ap-northeast-1.sagemaker.aws","labeling.ap-northeast-2.sagemaker.aws","labeling.ap-south-1.sagemaker.aws","labeling.ap-southeast-1.sagemaker.aws","labeling.ap-southeast-2.sagemaker.aws","labeling.ca-central-1.sagemaker.aws","labeling.eu-central-1.sagemaker.aws","labeling.eu-west-1.sagemaker.aws","labeling.eu-west-2.sagemaker.aws","labeling.us-east-1.sagemaker.aws","labeling.us-east-2.sagemaker.aws","labeling.us-west-2.sagemaker.aws","notebook.af-south-1.sagemaker.aws","notebook.ap-east-1.sagemaker.aws","notebook.ap-northeast-1.sagemaker.aws","notebook.ap-northeast-2.sagemaker.aws","notebook.ap-northeast-3.sagemaker.aws","notebook.ap-south-1.sagemaker.aws","notebook.ap-south-2.sagemaker.aws","notebook.ap-southeast-1.sagemaker.aws","notebook.ap-southeast-2.sagemaker.aws","notebook.ap-southeast-3.sagemaker.aws","notebook.ap-southeast-4.sagemaker.aws","notebook.ca-central-1.sagemaker.aws","notebook-fips.ca-central-1.sagemaker.aws","notebook.ca-west-1.sagemaker.aws","notebook-fips.ca-west-1.sagemaker.aws","notebook.eu-central-1.sagemaker.aws","notebook.eu-central-2.sagemaker.aws","notebook.eu-north-1.sagemaker.aws","notebook.eu-south-1.sagemaker.aws","notebook.eu-south-2.sagemaker.aws","notebook.eu-west-1.sagemaker.aws","notebook.eu-west-2.sagemaker.aws","notebook.eu-west-3.sagemaker.aws","notebook.il-central-1.sagemaker.aws","notebook.me-central-1.sagemaker.aws","notebook.me-south-1.sagemaker.aws","notebook.sa-east-1.sagemaker.aws","notebook.us-east-1.sagemaker.aws","notebook-fips.us-east-1.sagemaker.aws","notebook.us-east-2.sagemaker.aws","notebook-fips.us-east-2.sagemaker.aws","notebook.us-gov-east-1.sagemaker.aws","notebook-fips.us-gov-east-1.sagemaker.aws","notebook.us-gov-west-1.sagemaker.aws","notebook-fips.us-gov-west-1.sagemaker.aws","notebook.us-west-1.sagemaker.aws","notebook-fips.us-west-1.sagemaker.aws","notebook.us-west-2.sagemaker.aws","notebook-fips.us-west-2.sagemaker.aws","notebook.cn-north-1.sagemaker.com.cn","notebook.cn-northwest-1.sagemaker.com.cn","studio.af-south-1.sagemaker.aws","studio.ap-east-1.sagemaker.aws","studio.ap-northeast-1.sagemaker.aws","studio.ap-northeast-2.sagemaker.aws","studio.ap-northeast-3.sagemaker.aws","studio.ap-south-1.sagemaker.aws","studio.ap-southeast-1.sagemaker.aws","studio.ap-southeast-2.sagemaker.aws","studio.ap-southeast-3.sagemaker.aws","studio.ca-central-1.sagemaker.aws","studio.eu-central-1.sagemaker.aws","studio.eu-north-1.sagemaker.aws","studio.eu-south-1.sagemaker.aws","studio.eu-south-2.sagemaker.aws","studio.eu-west-1.sagemaker.aws","studio.eu-west-2.sagemaker.aws","studio.eu-west-3.sagemaker.aws","studio.il-central-1.sagemaker.aws","studio.me-central-1.sagemaker.aws","studio.me-south-1.sagemaker.aws","studio.sa-east-1.sagemaker.aws","studio.us-east-1.sagemaker.aws","studio.us-east-2.sagemaker.aws","studio.us-gov-east-1.sagemaker.aws","studio-fips.us-gov-east-1.sagemaker.aws","studio.us-gov-west-1.sagemaker.aws","studio-fips.us-gov-west-1.sagemaker.aws","studio.us-west-1.sagemaker.aws","studio.us-west-2.sagemaker.aws","studio.cn-north-1.sagemaker.com.cn","studio.cn-northwest-1.sagemaker.com.cn","*.experiments.sagemaker.aws","analytics-gateway.ap-northeast-1.amazonaws.com","analytics-gateway.ap-northeast-2.amazonaws.com","analytics-gateway.ap-south-1.amazonaws.com","analytics-gateway.ap-southeast-1.amazonaws.com","analytics-gateway.ap-southeast-2.amazonaws.com","analytics-gateway.eu-central-1.amazonaws.com","analytics-gateway.eu-west-1.amazonaws.com","analytics-gateway.us-east-1.amazonaws.com","analytics-gateway.us-east-2.amazonaws.com","analytics-gateway.us-west-2.amazonaws.com","amplifyapp.com","*.awsapprunner.com","webview-assets.aws-cloud9.af-south-1.amazonaws.com","vfs.cloud9.af-south-1.amazonaws.com","webview-assets.cloud9.af-south-1.amazonaws.com","webview-assets.aws-cloud9.ap-east-1.amazonaws.com","vfs.cloud9.ap-east-1.amazonaws.com","webview-assets.cloud9.ap-east-1.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-1.amazonaws.com","vfs.cloud9.ap-northeast-1.amazonaws.com","webview-assets.cloud9.ap-northeast-1.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-2.amazonaws.com","vfs.cloud9.ap-northeast-2.amazonaws.com","webview-assets.cloud9.ap-northeast-2.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-3.amazonaws.com","vfs.cloud9.ap-northeast-3.amazonaws.com","webview-assets.cloud9.ap-northeast-3.amazonaws.com","webview-assets.aws-cloud9.ap-south-1.amazonaws.com","vfs.cloud9.ap-south-1.amazonaws.com","webview-assets.cloud9.ap-south-1.amazonaws.com","webview-assets.aws-cloud9.ap-southeast-1.amazonaws.com","vfs.cloud9.ap-southeast-1.amazonaws.com","webview-assets.cloud9.ap-southeast-1.amazonaws.com","webview-assets.aws-cloud9.ap-southeast-2.amazonaws.com","vfs.cloud9.ap-southeast-2.amazonaws.com","webview-assets.cloud9.ap-southeast-2.amazonaws.com","webview-assets.aws-cloud9.ca-central-1.amazonaws.com","vfs.cloud9.ca-central-1.amazonaws.com","webview-assets.cloud9.ca-central-1.amazonaws.com","webview-assets.aws-cloud9.eu-central-1.amazonaws.com","vfs.cloud9.eu-central-1.amazonaws.com","webview-assets.cloud9.eu-central-1.amazonaws.com","webview-assets.aws-cloud9.eu-north-1.amazonaws.com","vfs.cloud9.eu-north-1.amazonaws.com","webview-assets.cloud9.eu-north-1.amazonaws.com","webview-assets.aws-cloud9.eu-south-1.amazonaws.com","vfs.cloud9.eu-south-1.amazonaws.com","webview-assets.cloud9.eu-south-1.amazonaws.com","webview-assets.aws-cloud9.eu-west-1.amazonaws.com","vfs.cloud9.eu-west-1.amazonaws.com","webview-assets.cloud9.eu-west-1.amazonaws.com","webview-assets.aws-cloud9.eu-west-2.amazonaws.com","vfs.cloud9.eu-west-2.amazonaws.com","webview-assets.cloud9.eu-west-2.amazonaws.com","webview-assets.aws-cloud9.eu-west-3.amazonaws.com","vfs.cloud9.eu-west-3.amazonaws.com","webview-assets.cloud9.eu-west-3.amazonaws.com","webview-assets.aws-cloud9.il-central-1.amazonaws.com","vfs.cloud9.il-central-1.amazonaws.com","webview-assets.aws-cloud9.me-south-1.amazonaws.com","vfs.cloud9.me-south-1.amazonaws.com","webview-assets.cloud9.me-south-1.amazonaws.com","webview-assets.aws-cloud9.sa-east-1.amazonaws.com","vfs.cloud9.sa-east-1.amazonaws.com","webview-assets.cloud9.sa-east-1.amazonaws.com","webview-assets.aws-cloud9.us-east-1.amazonaws.com","vfs.cloud9.us-east-1.amazonaws.com","webview-assets.cloud9.us-east-1.amazonaws.com","webview-assets.aws-cloud9.us-east-2.amazonaws.com","vfs.cloud9.us-east-2.amazonaws.com","webview-assets.cloud9.us-east-2.amazonaws.com","webview-assets.aws-cloud9.us-west-1.amazonaws.com","vfs.cloud9.us-west-1.amazonaws.com","webview-assets.cloud9.us-west-1.amazonaws.com","webview-assets.aws-cloud9.us-west-2.amazonaws.com","vfs.cloud9.us-west-2.amazonaws.com","webview-assets.cloud9.us-west-2.amazonaws.com","awsapps.com","cn-north-1.eb.amazonaws.com.cn","cn-northwest-1.eb.amazonaws.com.cn","elasticbeanstalk.com","af-south-1.elasticbeanstalk.com","ap-east-1.elasticbeanstalk.com","ap-northeast-1.elasticbeanstalk.com","ap-northeast-2.elasticbeanstalk.com","ap-northeast-3.elasticbeanstalk.com","ap-south-1.elasticbeanstalk.com","ap-southeast-1.elasticbeanstalk.com","ap-southeast-2.elasticbeanstalk.com","ap-southeast-3.elasticbeanstalk.com","ca-central-1.elasticbeanstalk.com","eu-central-1.elasticbeanstalk.com","eu-north-1.elasticbeanstalk.com","eu-south-1.elasticbeanstalk.com","eu-west-1.elasticbeanstalk.com","eu-west-2.elasticbeanstalk.com","eu-west-3.elasticbeanstalk.com","il-central-1.elasticbeanstalk.com","me-south-1.elasticbeanstalk.com","sa-east-1.elasticbeanstalk.com","us-east-1.elasticbeanstalk.com","us-east-2.elasticbeanstalk.com","us-gov-east-1.elasticbeanstalk.com","us-gov-west-1.elasticbeanstalk.com","us-west-1.elasticbeanstalk.com","us-west-2.elasticbeanstalk.com","*.elb.amazonaws.com.cn","*.elb.amazonaws.com","awsglobalaccelerator.com","*.private.repost.aws","eero.online","eero-stage.online","apigee.io","panel.dev","siiites.com","appspacehosted.com","appspaceusercontent.com","appudo.net","on-aptible.com","f5.si","arvanedge.ir","user.aseinet.ne.jp","gv.vc","d.gv.vc","user.party.eus","pimienta.org","poivron.org","potager.org","sweetpepper.org","myasustor.com","cdn.prod.atlassian-dev.net","translated.page","myfritz.link","myfritz.net","onavstack.net","*.awdev.ca","*.advisor.ws","ecommerce-shop.pl","b-data.io","balena-devices.com","base.ec","official.ec","buyshop.jp","fashionstore.jp","handcrafted.jp","kawaiishop.jp","supersale.jp","theshop.jp","shopselect.net","base.shop","beagleboard.io","*.beget.app","pages.gay","bnr.la","bitbucket.io","blackbaudcdn.net","of.je","bluebite.io","boomla.net","boutir.com","boxfuse.io","square7.ch","bplaced.com","bplaced.de","square7.de","bplaced.net","square7.net","*.s.brave.io","shop.brendly.hr","shop.brendly.rs","browsersafetymark.io","radio.am","radio.fm","uk0.bigv.io","dh.bytemark.co.uk","vm.bytemark.co.uk","cafjs.com","canva-apps.cn","*.my.canvasite.cn","canva-apps.com","*.my.canva.site","drr.ac","uwu.ai","carrd.co","crd.co","ju.mp","api.gov.uk","cdn77-storage.com","rsc.contentproxy9.cz","r.cdn77.net","cdn77-ssl.net","c.cdn77.org","rsc.cdn77.org","ssl.origin.cdn77-secure.org","za.bz","br.com","cn.com","de.com","eu.com","jpn.com","mex.com","ru.com","sa.com","uk.com","us.com","za.com","com.de","gb.net","hu.net","jp.net","se.net","uk.net","ae.org","com.se","cx.ua","discourse.group","discourse.team","clerk.app","clerkstage.app","*.lcl.dev","*.lclstage.dev","*.stg.dev","*.stgstage.dev","cleverapps.cc","*.services.clever-cloud.com","cleverapps.io","cleverapps.tech","clickrising.net","cloudns.asia","cloudns.be","cloud-ip.biz","cloudns.biz","cloudns.cc","cloudns.ch","cloudns.cl","cloudns.club","dnsabr.com","ip-ddns.com","cloudns.cx","cloudns.eu","cloudns.in","cloudns.info","ddns-ip.net","dns-cloud.net","dns-dynamic.net","cloudns.nz","cloudns.org","ip-dynamic.org","cloudns.ph","cloudns.pro","cloudns.pw","cloudns.us","c66.me","cloud66.ws","cloud66.zone","jdevcloud.com","wpdevcloud.com","cloudaccess.host","freesite.host","cloudaccess.net","*.cloudera.site","cf-ipfs.com","cloudflare-ipfs.com","trycloudflare.com","pages.dev","r2.dev","workers.dev","cloudflare.net","cdn.cloudflare.net","cdn.cloudflareanycast.net","cdn.cloudflarecn.net","cdn.cloudflareglobal.net","cust.cloudscale.ch","objects.lpg.cloudscale.ch","objects.rma.cloudscale.ch","wnext.app","cnpy.gdn","*.otap.co","co.ca","co.com","codeberg.page","csb.app","preview.csb.app","co.nl","co.no","webhosting.be","hosting-cluster.nl","ctfcloud.net","convex.site","ac.ru","edu.ru","gov.ru","int.ru","mil.ru","test.ru","dyn.cosidns.de","dnsupdater.de","dynamisches-dns.de","internet-dns.de","l-o-g-i-n.de","dynamic-dns.info","feste-ip.net","knx-server.net","static-access.net","craft.me","realm.cz","on.crisp.email","*.cryptonomic.net","curv.dev","cfolks.pl","cyon.link","cyon.site","platform0.app","fnwk.site","folionetwork.site","biz.dk","co.dk","firm.dk","reg.dk","store.dk","dyndns.dappnode.io","builtwithdark.com","darklang.io","demo.datadetect.com","instance.datadetect.com","edgestack.me","dattolocal.com","dattorelay.com","dattoweb.com","mydatto.com","dattolocal.net","mydatto.net","ddnss.de","dyn.ddnss.de","dyndns.ddnss.de","dyn-ip24.de","dyndns1.de","home-webserver.de","dyn.home-webserver.de","myhome-server.de","ddnss.org","debian.net","definima.io","definima.net","deno.dev","deno-staging.dev","dedyn.io","deta.app","deta.dev","dfirma.pl","dkonto.pl","you2.pl","ondigitalocean.app","*.digitaloceanspaces.com","us.kg","rss.my.id","diher.solutions","discordsays.com","discordsez.com","jozi.biz","dnshome.de","online.th","shop.th","drayddns.com","shoparena.pl","dreamhosters.com","durumis.com","mydrobo.com","drud.io","drud.us","duckdns.org","dy.fi","tunk.org","dyndns.biz","for-better.biz","for-more.biz","for-some.biz","for-the.biz","selfip.biz","webhop.biz","ftpaccess.cc","game-server.cc","myphotos.cc","scrapping.cc","blogdns.com","cechire.com","dnsalias.com","dnsdojo.com","doesntexist.com","dontexist.com","doomdns.com","dyn-o-saur.com","dynalias.com","dyndns-at-home.com","dyndns-at-work.com","dyndns-blog.com","dyndns-free.com","dyndns-home.com","dyndns-ip.com","dyndns-mail.com","dyndns-office.com","dyndns-pics.com","dyndns-remote.com","dyndns-server.com","dyndns-web.com","dyndns-wiki.com","dyndns-work.com","est-a-la-maison.com","est-a-la-masion.com","est-le-patron.com","est-mon-blogueur.com","from-ak.com","from-al.com","from-ar.com","from-ca.com","from-ct.com","from-dc.com","from-de.com","from-fl.com","from-ga.com","from-hi.com","from-ia.com","from-id.com","from-il.com","from-in.com","from-ks.com","from-ky.com","from-ma.com","from-md.com","from-mi.com","from-mn.com","from-mo.com","from-ms.com","from-mt.com","from-nc.com","from-nd.com","from-ne.com","from-nh.com","from-nj.com","from-nm.com","from-nv.com","from-oh.com","from-ok.com","from-or.com","from-pa.com","from-pr.com","from-ri.com","from-sc.com","from-sd.com","from-tn.com","from-tx.com","from-ut.com","from-va.com","from-vt.com","from-wa.com","from-wi.com","from-wv.com","from-wy.com","getmyip.com","gotdns.com","hobby-site.com","homelinux.com","homeunix.com","iamallama.com","is-a-anarchist.com","is-a-blogger.com","is-a-bookkeeper.com","is-a-bulls-fan.com","is-a-caterer.com","is-a-chef.com","is-a-conservative.com","is-a-cpa.com","is-a-cubicle-slave.com","is-a-democrat.com","is-a-designer.com","is-a-doctor.com","is-a-financialadvisor.com","is-a-geek.com","is-a-green.com","is-a-guru.com","is-a-hard-worker.com","is-a-hunter.com","is-a-landscaper.com","is-a-lawyer.com","is-a-liberal.com","is-a-libertarian.com","is-a-llama.com","is-a-musician.com","is-a-nascarfan.com","is-a-nurse.com","is-a-painter.com","is-a-personaltrainer.com","is-a-photographer.com","is-a-player.com","is-a-republican.com","is-a-rockstar.com","is-a-socialist.com","is-a-student.com","is-a-teacher.com","is-a-techie.com","is-a-therapist.com","is-an-accountant.com","is-an-actor.com","is-an-actress.com","is-an-anarchist.com","is-an-artist.com","is-an-engineer.com","is-an-entertainer.com","is-certified.com","is-gone.com","is-into-anime.com","is-into-cars.com","is-into-cartoons.com","is-into-games.com","is-leet.com","is-not-certified.com","is-slick.com","is-uberleet.com","is-with-theband.com","isa-geek.com","isa-hockeynut.com","issmarterthanyou.com","likes-pie.com","likescandy.com","neat-url.com","saves-the-whales.com","selfip.com","sells-for-less.com","sells-for-u.com","servebbs.com","simple-url.com","space-to-rent.com","teaches-yoga.com","writesthisblog.com","ath.cx","fuettertdasnetz.de","isteingeek.de","istmein.de","lebtimnetz.de","leitungsen.de","traeumtgerade.de","barrel-of-knowledge.info","barrell-of-knowledge.info","dyndns.info","for-our.info","groks-the.info","groks-this.info","here-for-more.info","knowsitall.info","selfip.info","webhop.info","forgot.her.name","forgot.his.name","at-band-camp.net","blogdns.net","broke-it.net","buyshouses.net","dnsalias.net","dnsdojo.net","does-it.net","dontexist.net","dynalias.net","dynathome.net","endofinternet.net","from-az.net","from-co.net","from-la.net","from-ny.net","gets-it.net","ham-radio-op.net","homeftp.net","homeip.net","homelinux.net","homeunix.net","in-the-band.net","is-a-chef.net","is-a-geek.net","isa-geek.net","kicks-ass.net","office-on-the.net","podzone.net","scrapper-site.net","selfip.net","sells-it.net","servebbs.net","serveftp.net","thruhere.net","webhop.net","merseine.nu","mine.nu","shacknet.nu","blogdns.org","blogsite.org","boldlygoingnowhere.org","dnsalias.org","dnsdojo.org","doesntexist.org","dontexist.org","doomdns.org","dvrdns.org","dynalias.org","dyndns.org","go.dyndns.org","home.dyndns.org","endofinternet.org","endoftheinternet.org","from-me.org","game-host.org","gotdns.org","hobby-site.org","homedns.org","homeftp.org","homelinux.org","homeunix.org","is-a-bruinsfan.org","is-a-candidate.org","is-a-celticsfan.org","is-a-chef.org","is-a-geek.org","is-a-knight.org","is-a-linux-user.org","is-a-patsfan.org","is-a-soxfan.org","is-found.org","is-lost.org","is-saved.org","is-very-bad.org","is-very-evil.org","is-very-good.org","is-very-nice.org","is-very-sweet.org","isa-geek.org","kicks-ass.org","misconfused.org","podzone.org","readmyblog.org","selfip.org","sellsyourhome.org","servebbs.org","serveftp.org","servegame.org","stuff-4-sale.org","webhop.org","better-than.tv","dyndns.tv","on-the-web.tv","worse-than.tv","is-by.us","land-4-sale.us","stuff-4-sale.us","dyndns.ws","mypets.ws","ddnsfree.com","ddnsgeek.com","giize.com","gleeze.com","kozow.com","loseyourip.com","ooguy.com","theworkpc.com","casacam.net","dynu.net","accesscam.org","camdvr.org","freeddns.org","mywire.org","webredirect.org","myddns.rocks","dynv6.net","e4.cz","easypanel.app","easypanel.host","*.ewp.live","twmail.cc","twmail.net","twmail.org","mymailer.com.tw","url.tw","at.emf.camp","rt.ht","elementor.cloud","elementor.cool","en-root.fr","mytuleap.com","tuleap-partners.com","encr.app","encoreapi.com","eu.encoway.cloud","eu.org","al.eu.org","asso.eu.org","at.eu.org","au.eu.org","be.eu.org","bg.eu.org","ca.eu.org","cd.eu.org","ch.eu.org","cn.eu.org","cy.eu.org","cz.eu.org","de.eu.org","dk.eu.org","edu.eu.org","ee.eu.org","es.eu.org","fi.eu.org","fr.eu.org","gr.eu.org","hr.eu.org","hu.eu.org","ie.eu.org","il.eu.org","in.eu.org","int.eu.org","is.eu.org","it.eu.org","jp.eu.org","kr.eu.org","lt.eu.org","lu.eu.org","lv.eu.org","me.eu.org","mk.eu.org","mt.eu.org","my.eu.org","net.eu.org","ng.eu.org","nl.eu.org","no.eu.org","nz.eu.org","pl.eu.org","pt.eu.org","ro.eu.org","ru.eu.org","se.eu.org","si.eu.org","sk.eu.org","tr.eu.org","uk.eu.org","us.eu.org","eurodir.ru","eu-1.evennode.com","eu-2.evennode.com","eu-3.evennode.com","eu-4.evennode.com","us-1.evennode.com","us-2.evennode.com","us-3.evennode.com","us-4.evennode.com","relay.evervault.app","relay.evervault.dev","expo.app","staging.expo.app","onfabrica.com","ru.net","adygeya.ru","bashkiria.ru","bir.ru","cbg.ru","com.ru","dagestan.ru","grozny.ru","kalmykia.ru","kustanai.ru","marine.ru","mordovia.ru","msk.ru","mytis.ru","nalchik.ru","nov.ru","pyatigorsk.ru","spb.ru","vladikavkaz.ru","vladimir.ru","abkhazia.su","adygeya.su","aktyubinsk.su","arkhangelsk.su","armenia.su","ashgabad.su","azerbaijan.su","balashov.su","bashkiria.su","bryansk.su","bukhara.su","chimkent.su","dagestan.su","east-kazakhstan.su","exnet.su","georgia.su","grozny.su","ivanovo.su","jambyl.su","kalmykia.su","kaluga.su","karacol.su","karaganda.su","karelia.su","khakassia.su","krasnodar.su","kurgan.su","kustanai.su","lenug.su","mangyshlak.su","mordovia.su","msk.su","murmansk.su","nalchik.su","navoi.su","north-kazakhstan.su","nov.su","obninsk.su","penza.su","pokrovsk.su","sochi.su","spb.su","tashkent.su","termez.su","togliatti.su","troitsk.su","tselinograd.su","tula.su","tuva.su","vladikavkaz.su","vladimir.su","vologda.su","channelsdvr.net","u.channelsdvr.net","edgecompute.app","fastly-edge.com","fastly-terrarium.com","freetls.fastly.net","map.fastly.net","a.prod.fastly.net","global.prod.fastly.net","a.ssl.fastly.net","b.ssl.fastly.net","global.ssl.fastly.net","fastlylb.net","map.fastlylb.net","*.user.fm","fastvps-server.com","fastvps.host","myfast.host","fastvps.site","myfast.space","conn.uk","copro.uk","hosp.uk","fedorainfracloud.org","fedorapeople.org","cloud.fedoraproject.org","app.os.fedoraproject.org","app.os.stg.fedoraproject.org","mydobiss.com","fh-muenster.io","filegear.me","firebaseapp.com","fldrv.com","flutterflow.app","fly.dev","shw.io","edgeapp.net","forgeblocks.com","id.forgerock.io","framer.ai","framer.app","framercanvas.com","framer.media","framer.photos","framer.website","framer.wiki","0e.vc","freebox-os.com","freeboxos.com","fbx-os.fr","fbxos.fr","freebox-os.fr","freeboxos.fr","freedesktop.org","freemyip.com","*.frusky.de","wien.funkfeuer.at","daemon.asia","dix.asia","mydns.bz","0am.jp","0g0.jp","0j0.jp","0t0.jp","mydns.jp","pgw.jp","wjg.jp","keyword-on.net","live-on.net","server-on.net","mydns.tw","mydns.vc","*.futurecms.at","*.ex.futurecms.at","*.in.futurecms.at","futurehosting.at","futuremailing.at","*.ex.ortsinfo.at","*.kunden.ortsinfo.at","*.statics.cloud","aliases121.com","campaign.gov.uk","service.gov.uk","independent-commission.uk","independent-inquest.uk","independent-inquiry.uk","independent-panel.uk","independent-review.uk","public-inquiry.uk","royal-commission.uk","gehirn.ne.jp","usercontent.jp","gentapps.com","gentlentapis.com","lab.ms","cdn-edges.net","localcert.net","localhostcert.net","gsj.bz","githubusercontent.com","githubpreview.dev","github.io","gitlab.io","gitapp.si","gitpage.si","glitch.me","nog.community","co.ro","shop.ro","lolipop.io","angry.jp","babyblue.jp","babymilk.jp","backdrop.jp","bambina.jp","bitter.jp","blush.jp","boo.jp","boy.jp","boyfriend.jp","but.jp","candypop.jp","capoo.jp","catfood.jp","cheap.jp","chicappa.jp","chillout.jp","chips.jp","chowder.jp","chu.jp","ciao.jp","cocotte.jp","coolblog.jp","cranky.jp","cutegirl.jp","daa.jp","deca.jp","deci.jp","digick.jp","egoism.jp","fakefur.jp","fem.jp","flier.jp","floppy.jp","fool.jp","frenchkiss.jp","girlfriend.jp","girly.jp","gloomy.jp","gonna.jp","greater.jp","hacca.jp","heavy.jp","her.jp","hiho.jp","hippy.jp","holy.jp","hungry.jp","icurus.jp","itigo.jp","jellybean.jp","kikirara.jp","kill.jp","kilo.jp","kuron.jp","littlestar.jp","lolipopmc.jp","lolitapunk.jp","lomo.jp","lovepop.jp","lovesick.jp","main.jp","mods.jp","mond.jp","mongolian.jp","moo.jp","namaste.jp","nikita.jp","nobushi.jp","noor.jp","oops.jp","parallel.jp","parasite.jp","pecori.jp","peewee.jp","penne.jp","pepper.jp","perma.jp","pigboat.jp","pinoko.jp","punyu.jp","pupu.jp","pussycat.jp","pya.jp","raindrop.jp","readymade.jp","sadist.jp","schoolbus.jp","secret.jp","staba.jp","stripper.jp","sub.jp","sunnyday.jp","thick.jp","tonkotsu.jp","under.jp","upper.jp","velvet.jp","verse.jp","versus.jp","vivian.jp","watson.jp","weblike.jp","whitesnow.jp","zombie.jp","heteml.net","graphic.design","goip.de","blogspot.ae","blogspot.al","blogspot.am","*.hosted.app","*.run.app","web.app","blogspot.com.ar","blogspot.co.at","blogspot.com.au","blogspot.ba","blogspot.be","blogspot.bg","blogspot.bj","blogspot.com.br","blogspot.com.by","blogspot.ca","blogspot.cf","blogspot.ch","blogspot.cl","blogspot.com.co","*.0emm.com","appspot.com","*.r.appspot.com","blogspot.com","codespot.com","googleapis.com","googlecode.com","pagespeedmobilizer.com","withgoogle.com","withyoutube.com","blogspot.cv","blogspot.com.cy","blogspot.cz","blogspot.de","*.gateway.dev","blogspot.dk","blogspot.com.ee","blogspot.com.eg","blogspot.com.es","blogspot.fi","blogspot.fr","cloud.goog","translate.goog","*.usercontent.goog","blogspot.gr","blogspot.hk","blogspot.hr","blogspot.hu","blogspot.co.id","blogspot.ie","blogspot.co.il","blogspot.in","blogspot.is","blogspot.it","blogspot.jp","blogspot.co.ke","blogspot.kr","blogspot.li","blogspot.lt","blogspot.lu","blogspot.md","blogspot.mk","blogspot.com.mt","blogspot.mx","blogspot.my","cloudfunctions.net","blogspot.com.ng","blogspot.nl","blogspot.no","blogspot.co.nz","blogspot.pe","blogspot.pt","blogspot.qa","blogspot.re","blogspot.ro","blogspot.rs","blogspot.ru","blogspot.se","blogspot.sg","blogspot.si","blogspot.sk","blogspot.sn","blogspot.td","blogspot.com.tr","blogspot.tw","blogspot.ug","blogspot.co.uk","blogspot.com.uy","blogspot.vn","blogspot.co.za","goupile.fr","pymnt.uk","cloudapps.digital","london.cloudapps.digital","gov.nl","grafana-dev.net","grayjayleagues.com","günstigbestellen.de","günstigliefern.de","fin.ci","free.hr","caa.li","ua.rs","conf.se","häkkinen.fi","hrsn.dev","hashbang.sh","hasura.app","hasura-app.io","hatenablog.com","hatenadiary.com","hateblo.jp","hatenablog.jp","hatenadiary.jp","hatenadiary.org","pages.it.hs-heilbronn.de","pages-research.it.hs-heilbronn.de","heiyu.space","helioho.st","heliohost.us","hepforge.org","herokuapp.com","herokussl.com","heyflow.page","heyflow.site","ravendb.cloud","ravendb.community","development.run","ravendb.run","homesklep.pl","*.kin.one","*.id.pub","*.kin.pub","secaas.hk","hoplix.shop","orx.biz","biz.gl","biz.ng","co.biz.ng","dl.biz.ng","go.biz.ng","lg.biz.ng","on.biz.ng","col.ng","firm.ng","gen.ng","ltd.ng","ngo.ng","plc.ng","ie.ua","hostyhosting.io","hf.space","static.hf.space","hypernode.io","iobb.net","co.cz","*.moonscale.io","moonscale.net","gr.com","iki.fi","ibxos.it","iliadboxos.it","smushcdn.com","wphostedmail.com","wpmucdn.com","tempurl.host","wpmudev.host","dyn-berlin.de","in-berlin.de","in-brb.de","in-butter.de","in-dsl.de","in-vpn.de","in-dsl.net","in-vpn.net","in-dsl.org","in-vpn.org","biz.at","info.at","info.cx","ac.leg.br","al.leg.br","am.leg.br","ap.leg.br","ba.leg.br","ce.leg.br","df.leg.br","es.leg.br","go.leg.br","ma.leg.br","mg.leg.br","ms.leg.br","mt.leg.br","pa.leg.br","pb.leg.br","pe.leg.br","pi.leg.br","pr.leg.br","rj.leg.br","rn.leg.br","ro.leg.br","rr.leg.br","rs.leg.br","sc.leg.br","se.leg.br","sp.leg.br","to.leg.br","pixolino.com","na4u.ru","apps-1and1.com","live-website.com","apps-1and1.net","websitebuilder.online","app-ionos.space","iopsys.se","*.dweb.link","ipifony.net","ir.md","is-a-good.dev","is-a.dev","iservschule.de","mein-iserv.de","schulplattform.de","schulserver.de","test-iserv.de","iserv.dev","mel.cloudlets.com.au","cloud.interhostsolutions.be","alp1.ae.flow.ch","appengine.flow.ch","es-1.axarnet.cloud","diadem.cloud","vip.jelastic.cloud","jele.cloud","it1.eur.aruba.jenv-aruba.cloud","it1.jenv-aruba.cloud","keliweb.cloud","cs.keliweb.cloud","oxa.cloud","tn.oxa.cloud","uk.oxa.cloud","primetel.cloud","uk.primetel.cloud","ca.reclaim.cloud","uk.reclaim.cloud","us.reclaim.cloud","ch.trendhosting.cloud","de.trendhosting.cloud","jele.club","dopaas.com","paas.hosted-by-previder.com","rag-cloud.hosteur.com","rag-cloud-ch.hosteur.com","jcloud.ik-server.com","jcloud-ver-jpc.ik-server.com","demo.jelastic.com","paas.massivegrid.com","jed.wafaicloud.com","ryd.wafaicloud.com","j.scaleforce.com.cy","jelastic.dogado.eu","fi.cloudplatform.fi","demo.datacenter.fi","paas.datacenter.fi","jele.host","mircloud.host","paas.beebyte.io","sekd1.beebyteapp.io","jele.io","jc.neen.it","jcloud.kz","cloudjiffy.net","fra1-de.cloudjiffy.net","west1-us.cloudjiffy.net","jls-sto1.elastx.net","jls-sto2.elastx.net","jls-sto3.elastx.net","fr-1.paas.massivegrid.net","lon-1.paas.massivegrid.net","lon-2.paas.massivegrid.net","ny-1.paas.massivegrid.net","ny-2.paas.massivegrid.net","sg-1.paas.massivegrid.net","jelastic.saveincloud.net","nordeste-idc.saveincloud.net","j.scaleforce.net","sdscloud.pl","unicloud.pl","mircloud.ru","enscaled.sg","jele.site","jelastic.team","orangecloud.tn","j.layershift.co.uk","phx.enscaled.us","mircloud.us","myjino.ru","*.hosting.myjino.ru","*.landing.myjino.ru","*.spectrum.myjino.ru","*.vps.myjino.ru","jotelulu.cloud","webadorsite.com","jouwweb.site","*.cns.joyent.com","*.triton.zone","js.org","kaas.gg","khplay.nl","kapsi.fi","ezproxy.kuleuven.be","kuleuven.cloud","keymachine.de","kinghost.net","uni5.net","knightpoint.systems","koobin.events","webthings.io","krellian.net","oya.to","git-repos.de","lcube-server.de","svn-repos.de","leadpages.co","lpages.co","lpusercontent.com","lelux.site","libp2p.direct","runcontainers.dev","co.business","co.education","co.events","co.financial","co.network","co.place","co.technology","linkyard-cloud.ch","linkyard.cloud","members.linode.com","*.nodebalancer.linode.com","*.linodeobjects.com","ip.linodeusercontent.com","we.bs","filegear-sg.me","ggff.net","*.user.localcert.dev","lodz.pl","pabianice.pl","plock.pl","sieradz.pl","skierniewice.pl","zgierz.pl","loginline.app","loginline.dev","loginline.io","loginline.services","loginline.site","lohmus.me","servers.run","krasnik.pl","leczna.pl","lubartow.pl","lublin.pl","poniatowa.pl","swidnik.pl","glug.org.uk","lug.org.uk","lugs.org.uk","barsy.bg","barsy.club","barsycenter.com","barsyonline.com","barsy.de","barsy.dev","barsy.eu","barsy.gr","barsy.in","barsy.info","barsy.io","barsy.me","barsy.menu","barsyonline.menu","barsy.mobi","barsy.net","barsy.online","barsy.org","barsy.pro","barsy.pub","barsy.ro","barsy.rs","barsy.shop","barsyonline.shop","barsy.site","barsy.store","barsy.support","barsy.uk","barsy.co.uk","barsyonline.co.uk","*.magentosite.cloud","hb.cldmail.ru","matlab.cloud","modelscape.com","mwcloudnonprod.com","polyspace.com","mayfirst.info","mayfirst.org","mazeplay.com","mcdir.me","mcdir.ru","vps.mcdir.ru","mcpre.ru","mediatech.by","mediatech.dev","hra.health","medusajs.app","miniserver.com","memset.net","messerli.app","atmeta.com","apps.fbsbx.com","*.cloud.metacentrum.cz","custom.metacentrum.cz","flt.cloud.muni.cz","usr.cloud.muni.cz","meteorapp.com","eu.meteorapp.com","co.pl","*.azurecontainer.io","azure-api.net","azure-mobile.net","azureedge.net","azurefd.net","azurestaticapps.net","1.azurestaticapps.net","2.azurestaticapps.net","3.azurestaticapps.net","4.azurestaticapps.net","5.azurestaticapps.net","6.azurestaticapps.net","7.azurestaticapps.net","centralus.azurestaticapps.net","eastasia.azurestaticapps.net","eastus2.azurestaticapps.net","westeurope.azurestaticapps.net","westus2.azurestaticapps.net","azurewebsites.net","cloudapp.net","trafficmanager.net","blob.core.windows.net","servicebus.windows.net","routingthecloud.com","sn.mynetname.net","routingthecloud.net","routingthecloud.org","csx.cc","mydbserver.com","webspaceconfig.de","mittwald.info","mittwaldserver.info","typo3server.info","project.space","modx.dev","bmoattachments.org","net.ru","org.ru","pp.ru","hostedpi.com","caracal.mythic-beasts.com","customer.mythic-beasts.com","fentiger.mythic-beasts.com","lynx.mythic-beasts.com","ocelot.mythic-beasts.com","oncilla.mythic-beasts.com","onza.mythic-beasts.com","sphinx.mythic-beasts.com","vs.mythic-beasts.com","x.mythic-beasts.com","yali.mythic-beasts.com","cust.retrosnub.co.uk","ui.nabu.casa","cloud.nospamproxy.com","netfy.app","netlify.app","4u.com","nfshost.com","ipfs.nftstorage.link","ngo.us","ngrok.app","ngrok-free.app","ngrok.dev","ngrok-free.dev","ngrok.io","ap.ngrok.io","au.ngrok.io","eu.ngrok.io","in.ngrok.io","jp.ngrok.io","sa.ngrok.io","us.ngrok.io","ngrok.pizza","ngrok.pro","torun.pl","nh-serv.co.uk","nimsite.uk","mmafan.biz","myftp.biz","no-ip.biz","no-ip.ca","fantasyleague.cc","gotdns.ch","3utilities.com","blogsyte.com","ciscofreak.com","damnserver.com","ddnsking.com","ditchyourip.com","dnsiskinky.com","dynns.com","geekgalaxy.com","health-carereform.com","homesecuritymac.com","homesecuritypc.com","myactivedirectory.com","mysecuritycamera.com","myvnc.com","net-freaks.com","onthewifi.com","point2this.com","quicksytes.com","securitytactics.com","servebeer.com","servecounterstrike.com","serveexchange.com","serveftp.com","servegame.com","servehalflife.com","servehttp.com","servehumour.com","serveirc.com","servemp3.com","servep2p.com","servepics.com","servequake.com","servesarcasm.com","stufftoread.com","unusualperson.com","workisboring.com","dvrcam.info","ilovecollege.info","no-ip.info","brasilia.me","ddns.me","dnsfor.me","hopto.me","loginto.me","noip.me","webhop.me","bounceme.net","ddns.net","eating-organic.net","mydissent.net","myeffect.net","mymediapc.net","mypsx.net","mysecuritycamera.net","nhlfan.net","no-ip.net","pgafan.net","privatizehealthinsurance.net","redirectme.net","serveblog.net","serveminecraft.net","sytes.net","cable-modem.org","collegefan.org","couchpotatofries.org","hopto.org","mlbfan.org","myftp.org","mysecuritycamera.org","nflfan.org","no-ip.org","read-books.org","ufcfan.org","zapto.org","no-ip.co.uk","golffan.us","noip.us","pointto.us","stage.nodeart.io","*.developer.app","noop.app","*.northflank.app","*.build.run","*.code.run","*.database.run","*.migration.run","noticeable.news","notion.site","dnsking.ch","mypi.co","n4t.co","001www.com","myiphost.com","forumz.info","soundcast.me","tcp4.me","dnsup.net","hicam.net","now-dns.net","ownip.net","vpndns.net","dynserv.org","now-dns.org","x443.pw","now-dns.top","ntdll.top","freeddns.us","nsupdate.info","nerdpol.ovh","nyc.mn","prvcy.page","obl.ong","observablehq.cloud","static.observableusercontent.com","omg.lol","cloudycluster.net","omniwe.site","123webseite.at","123website.be","simplesite.com.br","123website.ch","simplesite.com","123webseite.de","123hjemmeside.dk","123miweb.es","123kotisivu.fi","123siteweb.fr","simplesite.gr","123homepage.it","123website.lu","123website.nl","123hjemmeside.no","service.one","simplesite.pl","123paginaweb.pt","123minsida.se","is-a-fullstack.dev","is-cool.dev","is-not-a.dev","localplayer.dev","is-local.org","opensocial.site","opencraft.hosting","16-b.it","32-b.it","64-b.it","orsites.com","operaunite.com","*.customer-oci.com","*.oci.customer-oci.com","*.ocp.customer-oci.com","*.ocs.customer-oci.com","*.oraclecloudapps.com","*.oraclegovcloudapps.com","*.oraclegovcloudapps.uk","tech.orange","can.re","authgear-staging.com","authgearapps.com","skygearapp.com","outsystemscloud.com","*.hosting.ovh.net","*.webpaas.ovh.net","ownprovider.com","own.pm","*.owo.codes","ox.rs","oy.lc","pgfog.com","pagexl.com","gotpantheon.com","pantheonsite.io","*.paywhirl.com","*.xmit.co","xmit.dev","madethis.site","srv.us","gh.srv.us","gl.srv.us","lk3.ru","mypep.link","perspecta.cloud","on-web.fr","*.upsun.app","upsunapp.com","ent.platform.sh","eu.platform.sh","us.platform.sh","*.platformsh.site","*.tst.site","platter-app.com","platter-app.dev","platterp.us","pley.games","onporter.run","co.bn","postman-echo.com","pstmn.io","mock.pstmn.io","httpbin.org","prequalifyme.today","xen.prgmr.com","priv.at","protonet.io","chirurgiens-dentistes-en-france.fr","byen.site","pubtls.org","pythonanywhere.com","eu.pythonanywhere.com","qa2.com","qcx.io","*.sys.qcx.io","myqnapcloud.cn","alpha-myqnapcloud.com","dev-myqnapcloud.com","mycloudnas.com","mynascloud.com","myqnapcloud.com","qoto.io","qualifioapp.com","ladesk.com","qbuser.com","*.quipelements.com","vapor.cloud","vaporcloud.io","rackmaze.com","rackmaze.net","cloudsite.builders","myradweb.net","servername.us","web.in","in.net","myrdbx.io","site.rb-hosting.io","*.on-rancher.cloud","*.on-k3s.io","*.on-rio.io","ravpage.co.il","readthedocs-hosted.com","readthedocs.io","rhcloud.com","instances.spawn.cc","onrender.com","app.render.com","replit.app","id.replit.app","firewalledreplit.co","id.firewalledreplit.co","repl.co","id.repl.co","replit.dev","archer.replit.dev","bones.replit.dev","canary.replit.dev","global.replit.dev","hacker.replit.dev","id.replit.dev","janeway.replit.dev","kim.replit.dev","kira.replit.dev","kirk.replit.dev","odo.replit.dev","paris.replit.dev","picard.replit.dev","pike.replit.dev","prerelease.replit.dev","reed.replit.dev","riker.replit.dev","sisko.replit.dev","spock.replit.dev","staging.replit.dev","sulu.replit.dev","tarpit.replit.dev","teams.replit.dev","tucker.replit.dev","wesley.replit.dev","worf.replit.dev","repl.run","resindevice.io","devices.resinstaging.io","hzc.io","adimo.co.uk","itcouldbewor.se","aus.basketball","nz.basketball","git-pages.rit.edu","rocky.page","rub.de","ruhr-uni-bochum.de","io.noc.ruhr-uni-bochum.de","биз.рус","ком.рус","крым.рус","мир.рус","мск.рус","орг.рус","самара.рус","сочи.рус","спб.рус","я.рус","ras.ru","nyat.app","180r.com","dojin.com","sakuratan.com","sakuraweb.com","x0.com","2-d.jp","bona.jp","crap.jp","daynight.jp","eek.jp","flop.jp","halfmoon.jp","jeez.jp","matrix.jp","mimoza.jp","ivory.ne.jp","mail-box.ne.jp","mints.ne.jp","mokuren.ne.jp","opal.ne.jp","sakura.ne.jp","sumomo.ne.jp","topaz.ne.jp","netgamers.jp","nyanta.jp","o0o0.jp","rdy.jp","rgr.jp","rulez.jp","s3.isk01.sakurastorage.jp","s3.isk02.sakurastorage.jp","saloon.jp","sblo.jp","skr.jp","tank.jp","uh-oh.jp","undo.jp","rs.webaccel.jp","user.webaccel.jp","websozai.jp","xii.jp","squares.net","jpn.org","kirara.st","x0.to","from.tv","sakura.tv","*.builder.code.com","*.dev-builder.code.com","*.stg-builder.code.com","*.001.test.code-builder-stg.platform.salesforce.com","*.d.crm.dev","*.w.crm.dev","*.wa.crm.dev","*.wb.crm.dev","*.wc.crm.dev","*.wd.crm.dev","*.we.crm.dev","*.wf.crm.dev","sandcats.io","logoip.com","logoip.de","fr-par-1.baremetal.scw.cloud","fr-par-2.baremetal.scw.cloud","nl-ams-1.baremetal.scw.cloud","cockpit.fr-par.scw.cloud","fnc.fr-par.scw.cloud","functions.fnc.fr-par.scw.cloud","k8s.fr-par.scw.cloud","nodes.k8s.fr-par.scw.cloud","s3.fr-par.scw.cloud","s3-website.fr-par.scw.cloud","whm.fr-par.scw.cloud","priv.instances.scw.cloud","pub.instances.scw.cloud","k8s.scw.cloud","cockpit.nl-ams.scw.cloud","k8s.nl-ams.scw.cloud","nodes.k8s.nl-ams.scw.cloud","s3.nl-ams.scw.cloud","s3-website.nl-ams.scw.cloud","whm.nl-ams.scw.cloud","cockpit.pl-waw.scw.cloud","k8s.pl-waw.scw.cloud","nodes.k8s.pl-waw.scw.cloud","s3.pl-waw.scw.cloud","s3-website.pl-waw.scw.cloud","scalebook.scw.cloud","smartlabeling.scw.cloud","dedibox.fr","schokokeks.net","gov.scot","service.gov.scot","scrysec.com","client.scrypted.io","firewall-gateway.com","firewall-gateway.de","my-gateway.de","my-router.de","spdns.de","spdns.eu","firewall-gateway.net","my-firewall.org","myfirewall.org","spdns.org","seidat.net","sellfy.store","minisite.ms","senseering.net","servebolt.cloud","biz.ua","co.ua","pp.ua","as.sh.cn","sheezy.games","shiftedit.io","myshopblocks.com","myshopify.com","shopitsite.com","shopware.shop","shopware.store","mo-siemens.io","1kapp.com","appchizi.com","applinzi.com","sinaapp.com","vipsinaapp.com","siteleaf.net","small-web.org","aeroport.fr","avocat.fr","chambagri.fr","chirurgiens-dentistes.fr","experts-comptables.fr","medecin.fr","notaires.fr","pharmacien.fr","port.fr","veterinaire.fr","vp4.me","*.snowflake.app","*.privatelink.snowflake.app","streamlit.app","streamlitapp.com","try-snowplow.com","mafelo.net","playstation-cloud.com","srht.site","apps.lair.io","*.stolos.io","spacekit.io","ind.mom","customer.speedpartner.de","myspreadshop.at","myspreadshop.com.au","myspreadshop.be","myspreadshop.ca","myspreadshop.ch","myspreadshop.com","myspreadshop.de","myspreadshop.dk","myspreadshop.es","myspreadshop.fi","myspreadshop.fr","myspreadshop.ie","myspreadshop.it","myspreadshop.net","myspreadshop.nl","myspreadshop.no","myspreadshop.pl","myspreadshop.se","myspreadshop.co.uk","w-corp-staticblitz.com","w-credentialless-staticblitz.com","w-staticblitz.com","stackhero-network.com","runs.onstackit.cloud","stackit.gg","stackit.rocks","stackit.run","stackit.zone","musician.io","novecore.site","api.stdlib.com","feedback.ac","forms.ac","assessments.cx","calculators.cx","funnels.cx","paynow.cx","quizzes.cx","researched.cx","tests.cx","surveys.so","storebase.store","storipress.app","storj.farm","strapiapp.com","media.strapiapp.com","vps-host.net","atl.jelastic.vps-host.net","njs.jelastic.vps-host.net","ric.jelastic.vps-host.net","streak-link.com","streaklinks.com","streakusercontent.com","soc.srcf.net","user.srcf.net","utwente.io","temp-dns.com","supabase.co","supabase.in","supabase.net","syncloud.it","dscloud.biz","direct.quickconnect.cn","dsmynas.com","familyds.com","diskstation.me","dscloud.me","i234.me","myds.me","synology.me","dscloud.mobi","dsmynas.net","familyds.net","dsmynas.org","familyds.org","direct.quickconnect.to","vpnplus.to","mytabit.com","mytabit.co.il","tabitorder.co.il","taifun-dns.de","ts.net","*.c.ts.net","gda.pl","gdansk.pl","gdynia.pl","med.pl","sopot.pl","taveusercontent.com","p.tawk.email","p.tawkto.email","site.tb-hosting.com","edugit.io","s3.teckids.org","telebit.app","telebit.io","*.telebit.xyz","*.firenet.ch","*.svc.firenet.ch","reservd.com","thingdustdata.com","cust.dev.thingdust.io","reservd.dev.thingdust.io","cust.disrec.thingdust.io","reservd.disrec.thingdust.io","cust.prod.thingdust.io","cust.testing.thingdust.io","reservd.testing.thingdust.io","tickets.io","arvo.network","azimuth.network","tlon.network","torproject.net","pages.torproject.net","townnews-staging.com","12hp.at","2ix.at","4lima.at","lima-city.at","12hp.ch","2ix.ch","4lima.ch","lima-city.ch","trafficplex.cloud","de.cool","12hp.de","2ix.de","4lima.de","lima-city.de","1337.pictures","clan.rip","lima-city.rocks","webspace.rocks","lima.zone","*.transurl.be","*.transurl.eu","site.transip.me","*.transurl.nl","tuxfamily.org","dd-dns.de","dray-dns.de","draydns.de","dyn-vpn.de","dynvpn.de","mein-vigor.de","my-vigor.de","my-wan.de","syno-ds.de","synology-diskstation.de","synology-ds.de","diskstation.eu","diskstation.org","typedream.app","pro.typeform.com","*.uberspace.de","uber.space","hk.com","inc.hk","ltd.hk","hk.org","it.com","unison-services.cloud","virtual-user.de","virtualuser.de","name.pm","sch.tf","biz.wf","sch.wf","org.yt","rs.ba","bielsko.pl","upli.io","urown.cloud","dnsupdate.info","us.org","v.ua","express.val.run","web.val.run","vercel.app","v0.build","vercel.dev","vusercontent.net","now.sh","2038.io","router.management","v-info.info","voorloper.cloud","*.vultrobjects.com","wafflecell.com","webflow.io","webflowtest.io","*.webhare.dev","bookonline.app","hotelwithflight.com","reserve-online.com","reserve-online.net","cprapid.com","pleskns.com","wp2.host","pdns.page","plesk.page","wpsquared.site","*.wadl.top","remotewd.com","box.ca","pages.wiardweb.com","toolforge.org","wmcloud.org","wmflabs.org","wdh.app","panel.gg","daemon.panel.gg","wixsite.com","wixstudio.com","editorx.io","wixstudio.io","wix.run","messwithdns.com","woltlab-demo.com","myforum.community","community-pro.de","diskussionsbereich.de","community-pro.net","meinforum.net","affinitylottery.org.uk","raffleentry.org.uk","weeklylottery.org.uk","wpenginepowered.com","js.wpenginepowered.com","half.host","xnbay.com","u2.xnbay.com","u2-local.xnbay.com","cistron.nl","demon.nl","xs4all.space","yandexcloud.net","storage.yandexcloud.net","website.yandexcloud.net","official.academy","yolasite.com","yombo.me","ynh.fr","nohost.me","noho.st","za.net","za.org","zap.cloud","zeabur.app","bss.design","basicserver.io","virtualserver.io","enterprisecloud.nu"].reduce((e,t)=>{const n=t.replace(/^(\*\.|\!)/,""),a=un.toASCII(n),o=t.charAt(0);if(e.has(a))throw new Error(`Multiple rules found for ${t} (${a})`);return e.set(a,{rule:t,suffix:n,punySuffix:a,wildcard:"*"===o,exception:"!"===o}),e},new Map);const hn={en:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Find me accommodation"},"skyscanner":{"find_me_accommodation":"Find me accommodation"},"ryanair":{"find_me_accommodation":"Find me accommodation"},"latam_airlines":{"find_me_accommodation":"Find me accommodation"},"iberia":{"find_me_accommodation":"Find me accommodation"},"booking":{"explore_activities_with":"Explore activities with ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Compare price","book_with_discount":"Save up to {discount}%","book_with_discount_barcelo":"Get Promo","save":"Save {price}","popover":{"header":{"text":"Book with"},"support_hotel":"Support the property directly","feedback":{"text_checked":"{positiveFeedback}/10 users found a good direct deal","text_unchecked":"Help other travelers find better deals"},"discount":{"text_checked":"Discount detected","text_unchecked":"Price discount detected"},"coupon":{"text_checked":"Coupon found"}}},"alternative_offers":{"best_offer":"Best offer with","save":"Save {price}","no_discount":"Alternative offer with {provider}","popover":{"header":{"text":"Book with"}}},"label":{"tooltip":"Direct website found","coupon_tooltip":"Coupon found","discount_tooltip":"Better price found","score_tooltip":"Popular deal found","high_score_tooltip":"Very popular deal found"}}'),es:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Buscar alojamiento"},"skyscanner":{"find_me_accommodation":"Buscar alojamiento"},"ryanair":{"find_me_accommodation":"Buscar alojamiento"},"latam_airlines":{"find_me_accommodation":"Buscar alojamiento"},"iberia":{"find_me_accommodation":"Buscar alojamiento"},"booking":{"explore_activities_with":"Explora actividades con ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Comparar precio","book_with_discount":"Ahorra hasta {discount}%","book_with_discount_barcelo":"Ver promo","save":"Ahorra {price}","popover":{"header":{"text":"Reserva con"},"support_hotel":"Apoya al alojamiento directamente","feedback":{"text_checked":"{positiveFeedback}/10 usuarios encontraron una buena oferta directa","text_unchecked":"Ayuda a otros viajeros a encontrar mejores ofertas"},"discount":{"text_checked":"Descuento detectado","text_unchecked":"Descuento en precio detectado"},"coupon":{"text_checked":"Cupón encontrado"}}},"alternative_offers":{"best_offer":"La mejor oferta con","save":"Ahorra {price}","no_discount":"Oferta alternativa con {provider}","popover":{"header":{"text":"Reserva con"}}},"label":{"tooltip":"Web directa encontrada","coupon_tooltip":"Cupón encontrado","discount_tooltip":"Mejor precio encontrado","score_tooltip":"Oferta popular encontrada","high_score_tooltip":"Oferta muy popular encontrada"}}'),fr:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Trouver un hébergement"},"skyscanner":{"find_me_accommodation":"Trouver un hébergement"},"ryanair":{"find_me_accommodation":"Trouver un hébergement"},"latam_airlines":{"find_me_accommodation":"Trouver un hébergement"},"iberia":{"find_me_accommodation":"Trouver un hébergement"},"booking":{"explore_activities_with":"Découvrez des activités avec ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Comparer les prix","book_with_discount":"Économisez jusqu\'à {discount}%","book_with_discount_barcelo":"Voir la promo","save":"Économisez {price}","popover":{"header":{"text":"Réservez avec"},"support_hotel":"Soutenez le bien directement","feedback":{"text_checked":"{positiveFeedback}/10 utilisateurs ont trouvé une bonne offre directe","text_unchecked":"Aidez d\'autres voyageurs à trouver de meilleures offres"},"discount":{"text_checked":"Réduction détectée","text_unchecked":"Réduction de prix détectée"},"coupon":{"text_checked":"Coupon trouvé"}}},"alternative_offers":{"best_offer":"La meilleure offre avec","save":"Économisez {price}","no_discount":"Offre alternative avec {provider}","popover":{"header":{"text":"Réservez avec"}}},"label":{"tooltip":"Site web direct trouvé","coupon_tooltip":"Coupon trouvé","discount_tooltip":"Meilleur prix trouvé","score_tooltip":"Offre populaire trouvée","high_score_tooltip":"Offre très populaire trouvée"}}'),it:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Trova un alloggio"},"skyscanner":{"find_me_accommodation":"Trova un alloggio"},"ryanair":{"find_me_accommodation":"Trova un alloggio"},"latam_airlines":{"find_me_accommodation":"Trova un alloggio"},"iberia":{"find_me_accommodation":"Trova un alloggio"},"booking":{"explore_activities_with":"Esplora le attività con ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Confronta il prezzo","book_with_discount":"Risparmia fino al {discount}%","book_with_discount_barcelo":"Vedi la promo","save":"Risparmia {price}","popover":{"header":{"text":"Prenota con"},"support_hotel":"Supporta l\'alojamento direttamente","feedback":{"text_checked":"{positiveFeedback}/10 utenti hanno trovato una buona offerta diretta","text_unchecked":"Aiuta altri viaggiatori a trovare offerte migliori"},"discount":{"text_checked":"Sconto rilevato","text_unchecked":"Sconto sul prezzo rilevato"},"coupon":{"text_checked":"Coupon trovato"}}},"alternative_offers":{"best_offer":"La migliore offerta con","save":"Risparmia {price}","no_discount":"Offerta alternativa con {provider}","popover":{"header":{"text":"Prenota con"}}},"label":{"tooltip":"Sito web diretto trovato","coupon_tooltip":"Coupon trovato","discount_tooltip":"Prezzo migliore trovato","score_tooltip":"Offerta popolare trovata","high_score_tooltip":"Offerta molto popolare trovata"}}'),pt:JSON.parse('{"cross_sell":{"renfe":{"find_me_accommodation":"Encontre um alojamento"},"skyscanner":{"find_me_accommodation":"Encontre um alojamento"},"ryanair":{"find_me_accommodation":"Encontre um alojamento"},"latam_airlines":{"find_me_accommodation":"Encontre um alojamento"},"iberia":{"find_me_accommodation":"Encontre um alojamento"},"booking":{"explore_activities_with":"Explore atividades com a ","viator":"Viator","civitatis":"Civitatis"}},"secondary_cta":{"compare_price":"Comparar preço","book_with_discount":"Economize até {discount}%","book_with_discount_barcelo":"Ver promoção","save":"Economize {price}","popover":{"header":{"text":"Reserve com"},"support_hotel":"Apoie o alojamento diretamente","feedback":{"text_checked":"{positiveFeedback}/10 usuários encontraram uma boa oferta direta","text_unchecked":"Ajude outros viajantes a encontrar melhores ofertas"},"discount":{"text_checked":"Desconto detectado","text_unchecked":"Desconto no preço detectado"},"coupon":{"text_checked":"Cupom encontrado"}}},"alternative_offers":{"best_offer":"A melhor oferta com","save":"Economize {price}","no_discount":"Oferta alternativa com {provider}","popover":{"header":{"text":"Reserve com"}}},"label":{"tooltip":"Encontre uma oferta melhor","coupon_tooltip":"Cupom encontrado","discount_tooltip":"Melhor preço encontrado","score_tooltip":"Oferta popular","high_score_tooltip":"Oferta muito popular"}}')},fn=new class{translations;constructor(e){this.translations=e}getLocalisedString(e,t){const n=t&&Object.keys(this.translations).includes(t)?t:gt(),a=`{${e}}`,o=Oe(this.translations,`${n}.${e}`)??Oe(this.translations,`en.${e}`)??a;return"string"!=typeof o?(console.warn(`i18n: The path "${e}" for locale "${n}" does not resolve to a string.`),a):o}translate(e,t,n){const a=this.getLocalisedString(e,n);if(!t)return a;let o=a;return dt(t,(e,t)=>{null!=e&&(o=o.replace(`{${t}}`,e.toString()))}),o}}(hn),gn=fn.translate.bind(fn);class kn extends Wt{latestCheckbox=null;constructor(){super("RENFE")}async shouldActivate(){return"renfe.com"===dn(new URL(window.location.href))}async getDestination(){try{const e=Ut(["#destination"]);if(e){const t=Gt(e);return t?tn(t):null}return null}catch(e){return console.error(e),""}}async handleCrossSell(){this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){await l(100),Vt(["#promotionsv2"],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new bn(t),this.latestCheckbox.injectInto(e),e.style.display="flex"},{retryMs:rn,checkIntervalMs:rn})}async attachSearchInterceptor(){Vt(['button[type="submit"]',".rf-button--primary"],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){if(null===this.latestCheckbox||!this.latestCheckbox.isVisible||!this.latestCheckbox.checked)return;const e=await this.getDestination();if(!e)return;const t=`${e.replace(/\(TODAS\)/,"")} Spain`,n=await this.getQueryParamMap(new URL(location.href)),a=n.checkin();if(!a)return;const o=n.checkout()??nn(a),r=n.adults(),i=n.currency(),s=n.children(),{partnerKey:c}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"RENFE_KAYAK",partnerKey:c??null,destination:t,checkin:a,checkout:o,adults:r,currency:i,children:s})}async getQueryParamMap(e){return{checkin(){const e=Ut(["#first-input"]);if(e){const t=Gt(e);if(t){const[e,n]=t.split(",");if(n)return Yt.tryFromSlashDDMMYY(n.trim())}}return null},checkout(){const e=Ut(["#second-input"]);if(e){const t=Gt(e);if(t){const[e,n]=t.split(",");if(n)return Yt.tryFromSlashDDMMYY(n.trim())}}return null},adults(){const e=Ut(["#passengersSelection"]);if(e&&"value"in e&&"string"==typeof e.value&&e.value){const[t,n,a]=e.value.matchAll(/(\d+)/g);return t?parseInt(t[1]):2}return 2},children(){const e=Ut(["#passengersSelection"]);if(e&&"value"in e&&"string"==typeof e.value&&e.value){const[t,n,a]=e.value.matchAll(/(\d+)/g);return n?parseInt(n[1]):0}return 0},currency:()=>on}}}class bn{$checkboxContainer;$checkbox;$text;$label;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e;const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.renfe.find_me_accommodation",{},t)),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$text),this.$checkboxContainer=document.createElement("div"),this.$checkboxContainer.className="dir-checkbox-container",this.$checkboxContainer.appendChild(this.$label),this.$style=document.createElement("style"),this.$style.textContent="\n .dir-label {\n display: flex;\n align-items: center;\n font-size: 14px;\n margin-left: 8px;\n color: black;\n }\n\n .dir-checkbox {\n margin-right: 8px;\n }\n\n .dir-checkbox-container {\n align-self: center;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$checkboxContainer)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}const yn=["skyscanner.com","skyscanner.net","skyscanner.es","skyscanner.fr","skyscanner.it","skyscanner.pt","skyscanner.com.br","skyscanner.co.in","skyscanner.com.mx","skyscanner.de","skyscanner.com","skyscanner.com.au","skyscanner.com.my","skyscanner.co.il","skyscanner.com.ph","skyscanner.co.nz"];class vn extends Wt{latestCheckbox=null;constructor(){super("SKYSCANNER")}async shouldActivate(){const e=dn(new URL(window.location.href));return yn.includes(e)}async getDestination(){try{const e=Ut(['input[name="destinationInput-search"]']);return e?tn(e.value):null}catch(e){return console.error(e),null}}async handleCrossSell(){this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){Vt(['[class*="SearchControls_DestinationInput__"] fieldset'],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new wn(t),this.latestCheckbox.injectInto(e)},{retryMs:rn,checkIntervalMs:rn})}async attachSearchInterceptor(){Vt(['[data-testid="desktop-cta"]','[data-testid="mobile-cta"]'],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){if(null===this.latestCheckbox||!this.latestCheckbox.isVisible||!this.latestCheckbox.checked)return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(location.href)),n=t.checkin();if(!n)return;const a=t.checkout()??nn(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"SKYSCANNER_KAYAK",partnerKey:s??null,destination:e,checkin:n,checkout:a,adults:o,currency:r,children:i})}async getQueryParamMap(e){return{checkin(){const e=Ut(['[data-testid="depart-btn"] [class*="SearchControlButton_value__"]']);if(e){const t=Gt(e);if(t)return Yt.tryFromSlashDMY(t)}return null},checkout(){const e=Ut(['[data-testid="return-btn"] [class*="SearchControlButton_value__"]']);if(e){const t=Gt(e);if(t)return Yt.tryFromSlashDMY(t)}return null},adults(){const e=Ut(['[data-testid="traveller-button"] [class*="SearchControlButton_value__"]']);if(e){const t=e.textContent;if(t){const[e]=t.matchAll(/(\d+)/g);return e?parseInt(e[1]):2}}return 2},children:()=>0,currency:()=>on}}}class wn{$checkbox;$text;$span;$label;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e;const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.skyscanner.find_me_accommodation",{},t)),this.$span=document.createElement("span"),this.$span.className="dir-span",this.$span.appendChild(this.$text),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$span),this.$style=document.createElement("style"),this.$style.textContent="\n .dir-checkbox {\n background-color: #fff;\n -webkit-appearance: none;\n appearance: none;\n border: .1875rem solid #626971;border-radius: .25rem;\n cursor: pointer;\n height: 1.25rem;\n left: 0;\n margin: 0;\n padding: 0;\n position: absolute;\n top: .125rem;\n vertical-align: text-bottom;\n width: 1.25rem;\n }\n\n .dir-checkbox:checked {\n background-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='13' height='9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.354 3.646 5.5 7.5l6-6' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\");\n background-position: .0625rem;\n background-repeat: no-repeat;\n background-size: calc(100% - .15625rem) auto;\n background-color: #0062e3;\n background-color: var(--bpk-checkbox-checked-color, #0062e3);\n border-color: #0062e3;\n border-color: var(--bpk-checkbox-checked-color, #0062e3);\n }\n\n .dir-label {\n margin-bottom: 1rem;\n margin-top: .5rem;\n width: 100%;\n color: #fff;\n display: inline-block;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5rem;\n margin: 0;\n padding-left: 1.75rem;\n position: relative;\n }\n\n .dir-span {\n word-wrap: break-word;\n cursor: pointer;\n -webkit-hyphens: auto;\n hyphens: auto;\n overflow-wrap: break-word;\n word-break: break-word;\n vertical-align: initial;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$label)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}const jn=["ryanair.com"];class _n extends Wt{latestCheckbox=null;constructor(){super("RYANAIR")}async shouldActivate(){const e=dn(new URL(window.location.href));return jn.includes(e)}async getDestination(){return new URL(window.location.href).searchParams.get("destinationIata")||null}async handleCrossSell(){const e=new URL(window.location.href);e.pathname.endsWith("/trip/flights/select")||e.pathname.endsWith("/fare-finder")?this.maybeOpenTab():this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){Vt([".filters-container"],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new xn(t),this.latestCheckbox.injectInto(e)},{retryMs:rn,checkIntervalMs:rn})}async attachSearchInterceptor(){Vt([".flight-search-widget__start-search button"],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await w.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await w.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(location.href)),n=t.checkin();if(!n)return;const a=t.checkout()??nn(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"RYANAIR_KAYAK",partnerKey:s??null,destination:e,checkin:n,checkout:a,adults:o,currency:r,children:i})}async getQueryParamMap(e){return{checkin(){const t=e.searchParams.get("dateOut");return t?Yt.tryFromDashYYYYMMDD(t):null},checkout(){const t=e.searchParams.get("dateIn");return t?Yt.tryFromDashYYYYMMDD(t):null},adults(){const t=e.searchParams.get("adults");if(!t)return 2;const n=parseInt(t,10);return Number.isNaN(n)?2:n},children(){const t=e.searchParams.get("teens"),n=e.searchParams.get("children");if(!t&&!n)return 0;const a=parseInt(t??"0",10),o=parseInt(n??"0",10);return Number.isNaN(a)&&Number.isNaN(o)?0:(Number.isNaN(a)?0:a)+(Number.isNaN(o)?0:o)},currency:()=>e.searchParams.get("currency")??on}}}class xn{$checkbox;$text;$label;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e;const t=/^https?:\/\/(?:www\.)?ryanair\.com\/[^/]+\/([^/]+)/i.exec(location.href),n=t?t[1].toLowerCase():ht();this.$text=document.createTextNode(gn("cross_sell.ryanair.find_me_accommodation",{},n)),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$text),this.$style=document.createElement("style"),this.$style.textContent="\n .dir-label {\n margin-left: 1rem;\n }\n\n .dir-checkbox {\n margin-right: 0.5em;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$label)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}const zn=["latamairlines.com"];class Cn extends Wt{latestCheckbox=null;constructor(){super("LATAM_AIRLINES")}async shouldActivate(){const e=dn(new URL(window.location.href));return zn.includes(e)}async getDestination(){return new URL(window.location.href).searchParams.get("destination")||null}async handleCrossSell(){const e=new URL(window.location.href);e.pathname.endsWith("/es/ofertas-vuelos")||e.pathname.endsWith("/en/flight-offers")||e.pathname.endsWith("/pt/oferta-voos")?this.maybeOpenTab():this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){Vt(['[class*="LoyaltyBoxstyles__CheckboxContainer"]'],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new Sn(t),this.latestCheckbox.injectInto(e)},{retryMs:rn,checkIntervalMs:rn})}async attachSearchInterceptor(){Vt(["button#fsb-search-flights",'button[type="submit"]'],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await w.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await w.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(location.href)),n=t.checkin();if(!n)return;const a=t.checkout()??nn(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"LATAM_AIRLINES_KAYAK",partnerKey:s??null,destination:e,checkin:n,checkout:a,adults:o,currency:r,children:i})}async getQueryParamMap(e){return{checkin(){const t=e.searchParams.get("outbound");if(!t)return null;const[n,a]=t.split("T");return n?Yt.tryFromDashYYYYMMDD(n):null},checkout(){const t=e.searchParams.get("inbound");if(!t)return null;const[n,a]=t.split("T");return n?Yt.tryFromDashYYYYMMDD(n):null},adults(){const t=e.searchParams.get("adt");if(!t)return 2;const n=parseInt(t,10);return Number.isNaN(n)?2:n},children(){const t=e.searchParams.get("chd");if(!t)return 0;const n=parseInt(t,10);return Number.isNaN(n)?0:n},currency(){const e=Ut(['[data-testid="current-currency__name-and-symbol"]']);if(e){const t=e.textContent;if(t){const e=t.match(/^(.+?) · (.+)$/);if(e)return e[1]}}return on}}}}class Sn{$checkboxContainer;$checkbox;$checkboxIconWrapper;$checkboxIconI;$span;$text;$label;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e,this.$checkboxIconI=document.createElement("i"),this.$checkboxIconI.className="dir-checkbox-icon-i",this.$checkboxIconI.ariaHidden="true",this.$checkboxIconI.innerHTML='\n <svg xmlns="http://www.w3.org/2000/svg" fill="none" focusable="false" viewBox="0 0 32 32">\n <path d="M12.57 21.6161L4.38 13.2161L2 15.7186L12.57 26.376L30 8.75351L27.5325 6.37354L12.57 21.6161Z" fill="currentColor"></path>\n </svg>\n ',this.$checkboxIconWrapper=document.createElement("span"),this.$checkboxIconWrapper.className="dir-checkbox-icon-wrapper",this.$checkboxIconWrapper.appendChild(this.$checkboxIconI);const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.latam_airlines.find_me_accommodation",{},t)),this.$span=document.createElement("span"),this.$span.className="dir-span",this.$span.appendChild(this.$text),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$checkboxIconWrapper),this.$label.appendChild(this.$span),this.$checkboxContainer=document.createElement("div"),this.$checkboxContainer.className="dir-checkbox-container",this.$checkboxContainer.appendChild(this.$label),this.$style=document.createElement("style"),this.$style.textContent="\n * {\n box-sizing: border-box;\n }\n\n .dir-checkbox {\n position: absolute;\n height: 0px;\n width: 0px;\n appearance: none;\n }\n\n .dir-checkbox-container {\n display: inline-block;\n padding: 0.5rem 0px;\n position: relative;\n width: initial;\n }\n\n .dir-label {\n cursor: pointer;\n display: flex;\n flex-direction: row;\n gap: 0.75rem;\n -webkit-box-pack: justify;\n justify-content: space-between;\n pointer-events: initial;\n width: initial;\n align-items: center;\n }\n\n .dir-span {\n display: flex;\n flex-direction: column;\n margin-right: 0px;\n margin-left: 0.5rem;\n text-align: initial;\n }\n\n .dir-checkbox-icon-wrapper {\n --checkbox-size: 1.5rem;\n background: transparent;\n border-radius: 0.25rem;\n border: 2px solid rgb(70, 88, 223);\n cursor: pointer;\n display: inline-flex;\n height: var(--checkbox-size);\n width: var(--checkbox-size);\n flex-shrink: 0;\n }\n\n .dir-checkbox:checked + .dir-checkbox-icon-wrapper {\n background: rgb(70, 88, 223);\n }\n\n .dir-checkbox-icon-wrapper:hover {\n box-shadow: rgb(238, 237, 249) 0px 0px 0px 0.5rem;\n }\n\n .dir-checkbox-icon-i {\n color: rgb(255, 255, 255);\n display: none;\n height: 100%;\n margin: auto;\n width: 100%;\n }\n\n .dir-checkbox:checked + .dir-checkbox-icon-wrapper .dir-checkbox-icon-i {\n display: flex;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$checkboxContainer)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}const En=["iberia.com"];class On extends Wt{latestTabCheckbox=null;latestAccordionCheckbox=null;latestChecked=!0;constructor(){super("IBERIA")}async shouldActivate(){const e=dn(new URL(window.location.href));return En.includes(e)}async getDestination(){return new URL(window.location.href).searchParams.get("END_CITY_01")||null}async handleCrossSell(){const e=new URL(window.location.href);!e.pathname.endsWith("/flights/")||"1"!==e.searchParams.get("TRIP_TYPE")&&"2"!==e.searchParams.get("TRIP_TYPE")?this.injectUI():this.maybeOpenTab()}async injectUI(){await l(500),this.injectTabCheckbox(),this.injectAccordionCheckbox(),this.attachSearchInterceptor()}async injectTabCheckbox(){const e=new AbortController;Vt(["#tab-flights .ibe-searcher__options .ibe-form__radio-group"],t=>{this.latestTabCheckbox&&(this.latestTabCheckbox.remove(),this.latestTabCheckbox=null),this.latestTabCheckbox=new An(this.latestChecked),this.latestTabCheckbox.addEventListener("change",e=>{this.latestChecked=e.checked,this.latestAccordionCheckbox&&(this.latestAccordionCheckbox.checked=this.latestChecked)}),this.latestTabCheckbox.injectInto(t);let n=!1;const a=async()=>{n||(n=!0,o(),this.latestTabCheckbox?.remove(),this.latestTabCheckbox=null,await this.injectTabCheckbox(),n=!1)};window.addEventListener("resize",a);const o=()=>{e.abort(),window.removeEventListener("resize",a)};return o},{retryMs:rn,checkIntervalMs:rn,signal:e.signal})}async injectAccordionCheckbox(){const e=new AbortController;Vt(["#m-tab-searcher-1 .ibe-searcher__options"],t=>{this.latestAccordionCheckbox&&(this.latestAccordionCheckbox.remove(),this.latestAccordionCheckbox=null),this.latestAccordionCheckbox=new An(this.latestChecked),this.latestAccordionCheckbox.addEventListener("change",e=>{this.latestChecked=e.checked,this.latestTabCheckbox&&(this.latestTabCheckbox.checked=this.latestChecked)}),this.latestAccordionCheckbox.injectInto(t);let n=!1;const a=async()=>{n||(n=!0,o(),this.latestAccordionCheckbox?.remove(),this.latestAccordionCheckbox=null,await this.injectAccordionCheckbox(),n=!1)};window.addEventListener("resize",a);const o=()=>{e.abort(),window.removeEventListener("resize",a)};return o},{retryMs:rn,checkIntervalMs:rn,signal:e.signal})}async attachSearchInterceptor(){Vt(["#buttonSubmit1"],e=>{const t=an(e,this.handleSearchClick.bind(this));return()=>t.abort()},{retryMs:rn,checkIntervalMs:rn})}async handleSearchClick(){const e=null!==this.latestTabCheckbox&&this.latestTabCheckbox.isVisible&&this.latestTabCheckbox.checked,t=null!==this.latestAccordionCheckbox&&this.latestAccordionCheckbox.isVisible&&this.latestAccordionCheckbox.checked;await w.setCrossSellWasChecked({crossSellId:this.platform,checked:e||t})}async maybeOpenTab(){if(!await w.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(location.href)),n=t.checkin();if(!n)return;const a=t.checkout()??nn(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await w.getConfig();await w.openKayakCrossSellTab({sourceUrl:window.location.href,trackingLabel:"IBERIA_KAYAK",partnerKey:s??null,destination:e,checkin:n,checkout:a,adults:o,currency:r,children:i})}async getQueryParamMap(e){return{checkin(){const t=e.searchParams.get("BEGIN_YEAR_01");if(!t)return null;const n=e.searchParams.get("BEGIN_MONTH_01");if(!n)return null;const a=e.searchParams.get("BEGIN_DAY_01");return a?Pn(t,n,a):null},checkout(){const t=e.searchParams.get("END_YEAR_01");if(!t)return null;const n=e.searchParams.get("END_MONTH_01");if(!n)return null;const a=e.searchParams.get("END_DAY_01");return a?Pn(t,n,a):null},adults(){const t=e.searchParams.get("ADT");if(!t)return 2;const n=parseInt(t,10);return Number.isNaN(n)?2:n},children(){const t=e.searchParams.get("CHD");if(!t)return 0;const n=parseInt(t,10);return Number.isNaN(n)?0:n},currency:()=>on}}}class An{eventTarget=new EventTarget;$checkboxContainer;$checkbox;$text;$span;$label;$style;$rootHost;$root;constructor(e){this.$checkboxContainer=document.createElement("div"),this.$checkboxContainer.className="dir-checkbox-container",this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e,this.$checkbox.addEventListener("click",()=>{this.dispatchEvent(new Nn(this.$checkbox.checked))});const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.iberia.find_me_accommodation",{},t)),this.$span=document.createElement("span"),this.$span.className="dir-span",this.$span.appendChild(this.$text),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$span),this.$style=document.createElement("style"),this.$style.textContent='\n .dir-checkbox {\n margin: 0;\n margin-right: 0.9375rem;\n\n -webkit-appearance: none;\n appearance: none;\n cursor: pointer;\n \n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAABWSURBVHja7NVBEcBADELRuEYBOnCBrwhgtrcKSPfUyRfwjlBJbJPEKJK2k5RtSd19RnW3JNtFcqy8FskCcD4HYKGFFlrof9C1qb02/rfu6AEAAP//AwC94S6rHK/aNAAAAABJRU5ErkJggg==) no-repeat;\n content: "";\n display: inline-block;\n height: 1.625rem;\n overflow: hidden;\n vertical-align: middle;\n width: 1.625rem;\n margin-top: 0;\n }\n\n .dir-checkbox:checked {\n \n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAEDSURBVHjaYvj79++2bdtaW1vLyQKtra3btm37+/cvw7Zt2+bPn//x48f/ZIGPHz/Onz9/27ZtDK2trWSbAjertbWVoby8/D/FoLy8fNQgahv05syZXR6en+7cIdagz/fvf33yBFnk39+/V3p7V8nI7nR1+/P9O7EG7fLwXKuiemfRIgj36+PHe/z8V0hKrdPU+vLwIQlee75//wpJqRWSUvtDw27Pn79WTX2FpNRKKelne/aQHEanS8sgZsHR5a5ucgL799evW8wt4KYcjIr6/+8fmbH26sSJldIyKySlNpua/Xz/nqLof3v+/M1Zs789fz6aRQaVQVQraqlW+FOrOgIMANiB7jjdFd/sAAAAAElFTkSuQmCC) no-repeat;\n }\n\n .dir-label {\n color: #666;\n cursor: pointer;\n font-size: .8125rem;\n display: inline-block;\n }\n\n @media screen and (max-width: 25.999rem) {\n\n .dir-checkbox-container {\n display: block;\n }\n\n .dir-checkbox {\n margin-right: 0.3125rem;\n }\n }\n\n @media screen and (min-width: 26rem) and (max-width: 29.999rem) {\n\n .dir-checkbox-container {\n display: inline-block;\n margin-left: 1rem;\n }\n\n .dir-checkbox {\n margin-right: 0.3125rem;\n }\n }\n\n @media screen and (min-width: 30rem) and (max-width: 47.999rem) {\n }\n\n @media screen and (min-width: 48rem) and (max-width: 63.999rem) {\n\n .dir-checkbox-container {\n margin-left: 1rem;\n display: inline-block;\n }\n }\n\n @media screen and (min-width: 64rem) and (max-width: 79.999rem) {\n\n .dir-label {\n padding-top: .3125rem;\n }\n }\n\n @media screen and (min-width: 80rem) {\n\n .dir-label {\n padding-top: .3125rem;\n }\n }\n ',this.$checkboxContainer.appendChild(this.$label),this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$checkboxContainer)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get checked(){return this.$checkbox.checked}set checked(e){this.$checkbox.checked=e}get isVisible(){return qt(this.$checkbox)}addEventListener(e,t,n){return this.eventTarget.addEventListener(e,t,n)}dispatchEvent(e){return this.eventTarget.dispatchEvent(e)}removeEventListener(e,t,n){return this.eventTarget.removeEventListener(e,t,n)}}function Pn(e,t,n){if(6!==t.length)return null;if(t.slice(0,4)!==e)return null;const a=t.slice(4,6),o=parseInt(e,10);if(Number.isNaN(o))return null;const r=parseInt(a,10);if(Number.isNaN(r))return null;const i=parseInt(n,10);return Number.isNaN(i)?null:new Yt(o,r,i)}class Nn extends Event{checked;constructor(e){super("change"),this.checked=e}}function Tn(e){try{const t=dn(new URL(e));return/^airbnb\.[.a-z]{2,7}/i.exec(t)?"AIRBNB":/^(secure\.)?booking\.com/i.exec(t)?"BOOKING":/^vrbo\.com/i.exec(t)||/^abritel\.fr/i.exec(t)?"VRBO":/^expedia\.[.a-z]{2,7}/i.exec(t)?"EXPEDIA":/google\.[a-z.]{2,7}\/(search\?|travel\/flights\?)/i.exec(e)?"GOOGLE":null}catch(e){return console.error("Error in getPlatform",e),null}}const In=/(www\.)?airbnb\.[.a-z]{2,7}\/rooms\/(plus\/)?(\d+)/i,Ln=/[https:\/\/]*[www]*\.airbnb\..*?\/homes/i,Dn=/[https:\/\/]*[www]*\.airbnb\..*?\/book\/stays/i,Rn=/^(?:https:\/\/)?(?:www\.)?booking\.com\/hotel\/[\w\-\/]*/i,Mn=/^(?:https:\/\/)?(?:www\.)?booking\.com\/searchresults/i,$n=/^(?:https:\/\/)?secure\.booking\.com\/(?:tpi_)?book(?:\.[a-z]+)?\.html/i,Bn=/^(?:https:\/\/)?secure\.booking\.com\/confirmation\.[^.]+\.html/i,Un=/(?:www\.)vrbo\.com\/(?:[a-z]{2}-[a-z]{2}\/)?(?:[a-z0-9-]+\/)?p?\d+[a-zA-Z]*/,Fn=/(www\.)?vrbo\.com(\/\w{0,2}-\w{0,2})*\/search/,Vn=/[https:\/\/]*[www]*\.vrbo\.com(\/\w{0,2}-\w{0,2})?\/td\/tc\/checkout/,Hn=/(www\.)?abritel\.fr\/location-vacances\/(\w*)/,Kn=/(www\.)?abritel\.fr\/search/,qn=/[https:\/\/]*[www]*\.abritel\.fr\/\/td\/tc\/checkout/,Gn=/expedia.[a-z.]{2,7}\/(?:[a-z0-9-]+\/)?[\w-]*?\.h(\d*)\.[\w-]*\??/g,Qn=/expedia\.[a-z.]{2,7}\/Hotel-Search/,Wn=/[https:\/\/]*[www]*\.expedia\.com\/HotelCheckout/,Yn=/[https:\/\/]*[www]*\.google\.[a-z.]{2,7}\/search\?/g,Jn=nt(Object.getPrototypeOf,Object);var Zn=Function.prototype,Xn=Object.prototype,ea=Zn.toString,ta=Xn.hasOwnProperty,na=ea.call(Object);const aa=function(e){if(!I(e)||"[object Object]"!=T(e))return!1;var t=Jn(e);if(null===t)return!0;var n=ta.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&ea.call(n)==na};function oa(){return"es"===gt()?"civitatis":"viator"}function ra(e){const t=/(http[s]?:\/\/www\.booking\.com\/[\w\/-]+)\./.exec(e);return(t?t[1]:e).replace(/http[s]?:\/\/www\.booking\.com\/hotel\//,"")}function ia(e){const t=e||window.location.href;try{const{pathname:e}=new URL(t),n=ra(t.replace(/\.html?[^]*/,""));return e.includes("searchresults")?null:n}catch(e){return console.error(e),null}}class sa extends Wt{latestCheckbox=null;confirmationInfo=null;constructor(){super("BOOKING_ACTIVITIES")}async shouldActivate(){return sa.isCheckout(window.location)||sa.isConfirmation(window.location)}static isCheckout(e){return $n.test(e.href)&&null!==sa.getCheckoutType(e.pathname)}static isConfirmation(e){return Bn.test(e.href)}static getCheckoutType(e){return/\/book(?:\.[a-z]+)?\.html$/i.test(window.location.pathname)?"book":/\/tpi_book(?:\.[a-z]+)?\.html$/i.test(window.location.pathname)?"tpi_book":null}async getConfirmationInfoJson(){if(null!==this.confirmationInfo)return this.confirmationInfo;if(!sa.isConfirmation(window.location))return null;const e=await Kt(['script[data-capla-namespace*="b-post-booking-web-"][data-capla-store-data="apollo"]']);return this.confirmationInfo=e,this.confirmationInfo}async getDestination(){const e=await this.getConfirmationInfoJson();if(!e)return null;const t=Bt(e,e=>e.startsWith("PostBookingProperty:"));if(!aa(t))return null;if(!("hotelCity"in t))return null;const n=t.hotelCity;if(!aa(n))return null;const a=n;return"rawValue"in a&&"string"==typeof a.rawValue?a.rawValue:null}async handleCrossSell(){sa.isConfirmation(window.location)?this.maybeOpenTab():this.injectUI()}injectUI(){switch(sa.getCheckoutType(window.location.pathname)){case"book":return this.injectBookCheckbox(),void this.attachBookSearchInterceptor();case"tpi_book":return this.injectTpiBookCheckbox(),void this.attachTpiBookSearchInterceptor();default:return}}async injectBookCheckbox(){Vt(['button[name="book"][class*="complete-booking"]'],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new ca(t);const n=e.parentElement?.parentElement?.parentElement;n&&n.before(this.latestCheckbox.$rootElement)},{retryMs:rn,checkIntervalMs:rn})}async attachBookSearchInterceptor(){Vt(['button[name="book"][class*="complete-booking"]'],e=>{const t=an(e,this.handleSubmitClick.bind(this));return()=>{t.abort()}},{retryMs:rn,checkIntervalMs:rn})}async injectTpiBookCheckbox(){}async attachTpiBookSearchInterceptor(){}async handleSubmitClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await w.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await w.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(window.location.href)),n=ia(Ut(['[data-c360-id="hotelTitle"] a'])?.getAttribute("href")??"");w.openActivitiesCrossSellTab({provider:oa(),sourceUrl:window.location.href,destination:e,checkin:t.checkin(),checkout:t.checkout(),adults:t.adults(),currency:t.currency(),children:t.children(),sourceId:n})}async getQueryParamMap(e){const t=await this.getConfirmationInfoJson(),n=t?.body;return{checkin(){const e=n?.trans_checkin;return e&&"string"==typeof e?Yt.fromDate(new Date(e)):Yt.fromDate(new Date)},checkout(){const e=n?.trans_checkout;return e&&"string"==typeof e?Yt.fromDate(new Date(e)):Yt.fromDate(new Date)},adults(){const e=n?.num_adults;return e?Number.isNaN(e)?2:e:2},children(){const e=n?.child_ages;return e?e.length:0},currency:()=>n?.trans_currencycode}}}class ca{$checkbox;$linkText;$link;$text;$label;$wrapper;$style;$rootHost;$root;constructor(e){this.$checkbox=document.createElement("input"),this.$checkbox.className="dir-checkbox",this.$checkbox.type="checkbox",this.$checkbox.checked=e;const t=Ht()??ht();this.$text=document.createTextNode(gn("cross_sell.booking.explore_activities_with",{},t));const n=oa();this.$linkText=document.createTextNode(gn(`cross_sell.booking.${n}`,{},t)),this.$link=document.createElement("a"),this.$link.href=function(e){switch(e){case"viator":return(()=>{const e=new URL("/","https://www.viator.com");return e.searchParams.append("pid","P00253809"),e.searchParams.append("mcid","42383"),e.searchParams.append("medium","link"),e.toString()})();case"civitatis":return(()=>{const e=new URL("/","https://www.civitatis.com");return e.searchParams.append("aid","110241"),e.toString()})();default:throw new Error(`Unknown provider: ${e.toString()}`)}}(n),this.$link.target="_blank",this.$link.rel="noopener noreferrer",this.$link.appendChild(this.$linkText),this.$label=document.createElement("label"),this.$label.className="dir-label",this.$label.appendChild(this.$checkbox),this.$label.appendChild(this.$text),this.$label.appendChild(this.$link),this.$wrapper=document.createElement("div"),this.$wrapper.className="dir-wrapper",this.$wrapper.appendChild(this.$label),this.$style=document.createElement("style"),this.$style.textContent="\n .dir-wrapper {\n width: 100%;\n display: flex;\n justify-content: flex-end;\n }\n\n .dir-label {\n margin-right: 0.1em;\n }\n\n .dir-checkbox {\n margin-right: 0.5em;\n }\n ",this.$rootHost=document.createElement("div"),this.$rootHost.style.display="contents",this.$root=this.$rootHost.attachShadow({mode:"closed"}),this.$root.appendChild(this.$style),this.$root.appendChild(this.$wrapper)}injectInto(e){e.appendChild(this.$rootHost)}remove(){this.$rootHost.remove()}get $rootElement(){return this.$rootHost}get checked(){return this.$checkbox.checked}get isVisible(){return qt(this.$checkbox)}}class la{platforms=[];constructor(){this.platforms=[new kn,new vn,new _n,new Cn,new On,new sa]}async initialize(e){for(const t of this.platforms)await t.shouldActivate(e)&&await t.handleCrossSell()}}const ua="directoUserId";let pa="";async function da(){if(pa)return pa;const{[ua]:e}=await chrome.storage.local.get(ua);return pa=e||"",pa}class ma{partner_name=""}class ha extends ma{info=null;parserType="json";constructor(e){if(!e)throw new Error("Partner name is required");super(),this.partner_name=e}shouldHandle(e){throw new Error("Method not implemented.")}async getLocale(){return gt()}async isReservation(){return!!await this.getReservationId()}async getReservationDetails(){try{if(await this.isReservation())return{platform_reservation_id:await this.getReservationId(),reservation_url:window.location.href,booking_reference:await this.getBookingReference(),partner_name:this.partner_name,status:await this.getStatus(),property_name:await this.getPropertyName(),guest_name:await this.getGuestName(),guest_email:await this.getGuestEmail(),...await this.getPrice(),...await this.getStayParams(),locale:await this.getLocale(),clean_html:"html"===this.parserType?await this.getCleanHTML():null}}catch(e){console.error("Error getting reservation details",e)}return null}async getStayParams(){return{checkin:await this.buildQueryParams("checkin"),checkout:await this.buildQueryParams("checkout"),adults:await this.buildQueryParams("adults"),children:await this.buildQueryParams("children")}}async buildQueryParams(e,t=window.location.href){const n=new URL(t),a=(await this.getQueryParamMap(n))[e];return(B(a)?await a():Rt(n.searchParams.get(a)))??a??null}async getInfoJSON(e="#__NEXT_DATA__"){try{if(this.info)return this.info;const t=await Dt(()=>Ut([e]),e=>!e||!e.textContent,10)(),n=JSON.parse(t?.textContent??"{}");return this.info=It(n)?null:n,this.info}catch(e){return console.error("Error getting info",e),null}}async getReservationId(){throw new Error("Method not implemented.")}async getBookingReference(){throw new Error("Method not implemented.")}async getPropertyName(){return null}async getGuestName(){return null}async getGuestEmail(){return null}async getPrice(){throw new Error("Method not implemented.")}async getStatus(){throw new Error("Method not implemented.")}async getQueryParamMap(e){throw new Error("Method not implemented.")}async getCleanHTML(){return await function({timeout:e=2e3,stableThreshold:t=1e3,checkInterval:n=300,minTextLength:a=200,minElementCount:o=30}){const r=Date.now()+e;return new Promise(i=>{let s=!1,c=Date.now(),l=Date.now(),u=0,p={elements:0,text:0};const d=()=>{s||(s=!0,m.disconnect(),clearTimeout(g),i())},m=new MutationObserver(()=>{c=Date.now()}),h=()=>{if(s)return;const e=Date.now();if(e>=r)return void d();const i=document.body?.getElementsByTagName("*").length??0,m=(document.body?.innerText??"").replace(/\s+/g," ").trim().length;i!==p.elements||m!==p.text?(p={elements:i,text:m},l=e,u=0):e-c>=n&&(()=>{const e=document.querySelector('main, [role="main"], article')??document.body;if(!e)return!1;const t=(e.textContent??"").replace(/\s+/g," ").trim(),n=e.querySelectorAll("section, article, div, p, span").length;return t.length>=a&&n>=o})()?u+=1:u=0,u>=3&&e-l>=t?d():setTimeout(h,n)},f=()=>{s||(document.body?(p={elements:document.body.getElementsByTagName("*").length,text:(document.body.innerText??"").replace(/\s+/g," ").trim().length},m.observe(document.body,{childList:!0,subtree:!0}),h()):setTimeout(f,50))},g=setTimeout(d,e);(e=>{if("complete"===document.readyState)return e();const t=()=>{window.removeEventListener("load",t),document.removeEventListener("DOMContentLoaded",t),e()};window.addEventListener("load",t,{once:!0}),document.addEventListener("DOMContentLoaded",t,{once:!0})})(f)})}({timeout:5e3}),function(e){const t=e.body||e,n=t.querySelector("main")||t||e;if(!n)return"";n.querySelectorAll("script, noscript, style, svg, link, iframe, img, select, textarea, command, object, param, track, base").forEach(e=>e.remove()),n.querySelectorAll("[style]").forEach(e=>{e.removeAttribute("style")});const a=e.createTreeWalker(n,NodeFilter.SHOW_COMMENT,null),o=[];let r;for(;r=a.nextNode();)o.push(r);o.forEach(e=>{e.parentNode&&e.parentNode.removeChild(e)});const i=[/tracking/i,/banner/i];return n.querySelectorAll("[class], [id]").forEach(e=>{const t=`${e.className} ${e.id}`;i.some(e=>e.test(t))&&e.remove()}),n.innerHTML.trim().replace(/\s+/g," ").replace(/\n\s*\n/g,"\n").replace(/^\s+|\s+$/g,"").replace(/\n\s+/g,"\n").replace(/\s+\n/g,"\n")}(document.cloneNode(!0))}}function fa(e){return Math.round(e)/100}function ga(e){if(!e)return null;const t=/([\d,]+)(\.\d+)*/.exec(e),n=Oe(t,"0",e).replace(/,(\d{1})$/,"$10p").replace(/,(\d{2})$/,"$1p").replace(",","").replace(/\.(\d{1})$/,"$10p").replace(/\.(\d{2})$/,"$1p").replace(".","");return n?n.endsWith("p")?parseInt(n.slice(0,-1).trim(),10):parseInt(`${n.trim()}00`,10):null}class ka extends ha{constructor(){super("HYATT")}shouldHandle(e){return/hyatt\.com(?:[a-zA-Z0-9-\/]*?)\/book\/confirm\//i.test(e)||/hyatt\.com(?:[a-zA-Z0-9-\/]*?)\/reservation\/detail\//i.test(e)}async getReservationId(){try{return(new URL(window.location.href).pathname.split("/").pop()??null)||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();return e?e.confirmation_number:null}async getPropertyName(){const e=await this.getInfoJSON();return e?.hotel_name??null}async getGuestName(){const e=Ut(['[data-locator="guest-name"]']),t=Ut(['[data-js="firstName"]']),n=Ut(['[data-js="lastName"]']);return e?.textContent?.trim()||t?.getAttribute("value")+" "+n?.getAttribute("value")||await this.getGuestEmail()||null}async getGuestEmail(){const e=await this.getInfoJSON();return e?.customer_email||Ut(['[data-js="email"]'])?.getAttribute("value")||null}async getPrice(){try{const e=Ut(['[data-js="cash-total-price"']),t=e?.getAttribute("data-currency")?.trim()??"",n=e?.getAttribute("data-price")?.trim()??"";return{currency:t,net_total_price:ga(n),gross_total_price:ga(n),total_tax_price:null}}catch(e){return console.error("Error getting price",e),null}}async getInfoJSON(){if(this.info)return this.info;try{const e=Ft(['script[type="text/javascript"]']),t=Array.from(e).find(e=>/utag_data\s*=\s*\{/.test(e.textContent||""));if(t){const e=t.textContent,n=e?.match(/utag_data\s*=\s*(\{[\s\S]*?\})/);if(n){const e=n[1],t=JSON.parse(e);return this.info=t,this.info}}return null}catch(e){return console.error("Error getting info",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){try{const e=await this.getInfoJSON();return{checkin:e?.date_checkin||Ut([".originalCheckinDate"])?.textContent?.trim()||null,checkout:e?.date_checkout||Ut([".originalCheckoutDate"])?.textContent?.trim()||null,adults:e?.number_of_adults||Ut(['[data-id="adults"]'])?.getAttribute("data-value")||null,children:e?.number_of_children||null}}catch(e){return console.error("Error getting query param map",e),{checkin:null,checkout:null,adults:null,children:null}}}}class ba extends ha{constructor(){super("BARCELO"),this.parserType="html"}shouldHandle(e){return/reservation\.barcelo\.com(?:[a-zA-Z\/]*?)\/booking-confirmation/i.test(e)}async getReservationId(){try{const e=new URL(window.location.href).searchParams.get("itineraryNumber");if(e)return e;const t=await Dt(()=>Ft(['[class*="Alert_success__"] span']),e=>!Oe(e,"[1].textContent",null),10)();return t?.[1]?.textContent?.trim()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class ya extends ha{constructor(){super("MARRIOTT"),this.parserType="html"}shouldHandle(e){return/www\.marriott\.com(?:[a-zA-Z-\/]*?)\/reservation\/(confirmation|upcomingReservation)\.mi/i.test(e)}async getReservationId(){try{const e=await Dt(Ft,e=>!Oe(e,"[1].textContent",null))([".booking-id-wrapper span"]),t=e?.length?e[1]?.textContent:null;if(t)return t.trim().replace(/\s/g,"").replace("#","");return new URL(window.location.href).searchParams.get("confirmationNumber")||null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getStatus(){return"BOOKED"}async getPrice(){return null}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}var va=Object.prototype.toString;const wa={...(ja=function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=va.call(t)),e[t]=n},xa=pt,_a=function(){return xa},function(e,t){return function(e,t,n,a){return ct(e,function(e,o,r){t(a,n(e),o,r)}),a}(e,ja,_a(t),{})})({AED:"د.إ",AFN:"؋",ALL:"L",AMD:"֏",ANG:"ƒ",AOA:"Kz",ARS:"AR$",AUD:"$",AWG:"ƒ",AZN:"ман",BAM:"KM",BBD:"$",BDT:"৳",BGN:"лв",BHD:".د.ب",BIF:"FBu",BMD:"$",BND:"$",BOB:"$b",BRL:"R$",BSD:"$",BTC:"฿",BTN:"Nu.",BWP:"P",BYR:"p.",BZD:"BZ$",CAD:"$",CDF:"FC",CHF:"CHF",CLP:"$",CNY:"¥",COP:"$",CRC:"₡",CUC:"$",CUP:"₱",CVE:"$",CZK:"Kč",DJF:"Fdj",DKK:"kr",DOP:"RD$",DZD:"دج",EEK:"kr",EGP:"£",ERN:"Nfk",ETB:"Br",ETH:"Ξ",EUR:"€",FJD:"$",FKP:"£",GEL:"₾",GGP:"£",GHC:"₵",GHS:"GH₵",GIP:"£",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"$",HKD:"$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"₪",IMP:"£",INR:"₹",IQD:"ع.د",IRR:"﷼",ISK:"kr",JEP:"£",JMD:"J$",JOD:"JD",JPY:"¥",KES:"KSh",KGS:"лв",KHR:"៛",KMF:"CF",KPW:"₩",KRW:"₩",KWD:"KD",KYD:"$",KZT:"лв",LAK:"₭",LBP:"£",LKR:"₨",LRD:"$",LSL:"M",LTC:"Ł",LTL:"Lt",LVL:"Ls",LYD:"LD",MAD:"MAD",MDL:"lei",MGA:"Ar",MKD:"ден",MMK:"K",MNT:"₮",MOP:"MOP$",MUR:"₨",MVR:"Rf",MWK:"MK",MXN:"$",MYR:"RM",MZN:"MT",NAD:"$",NGN:"₦",NIO:"C$",NOK:"kr",NPR:"₨",NZD:"$",OMR:"﷼",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"₱",PKR:"₨",PLN:"zł",PYG:"Gs",QAR:"﷼",RMB:"¥",RON:"lei",RSD:"Дин.",RUB:"₽",RWF:"R₣",SAR:"﷼",SBD:"$",SCR:"₨",SDG:"ج.س.",SEK:"kr",SGD:"$",SHP:"£",SLL:"Le",SOS:"S",SRD:"$",SSP:"£",STD:"Db",SVC:"$",SYP:"£",SZL:"E",THB:"฿",TJS:"SM",TMT:"T",TND:"د.ت",TOP:"T$",TRL:"₤",TRY:"₺",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"₴",UGX:"USh",UYU:"$U",UZS:"лв",VEF:"Bs",VND:"₫",VUV:"VT",WST:"WS$",XAF:"FCFA",XBT:"Ƀ",XCD:"$",XOF:"CFA",XPF:"₣",YER:"﷼",ZAR:"R",ZWD:"Z$",USD:"$",GBP:"£"}),$:"USD"};var ja,_a,xa;function za(e){return wa[e]||e||"USD"}class Ca extends ha{constructor(){super("HOLIDU")}shouldHandle(e){return/holidu\.[.a-z]{2,7}\/reservations\//i.test(e)}async getReservationId(){try{return new URL(window.location.href).pathname.split("/").pop()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();if(e)return e.booking.bookingDetails.externalBookingId||e.booking.bookingDetails.bookingId;const t=Ut(["#contact b"]);return t?.textContent?.trim()??null}async getPrice(){try{const e=await this.getInfoJSON();if(e)return{currency:e.booking.bookingDetails.receipt.priceTotal.price.local.currency,gross_total_price:ga(e.booking.bookingDetails.receipt.priceTotalWithTaxes.price.local.value),net_total_price:ga(e.booking.bookingDetails.receipt.priceTotal.price.local.value)};const t=Ut(["#payment-schedule .mb-xxl"]);if(t?.textContent){const e=t.textContent.trim(),n=e.replace(/[\d,.\s]*/g,""),a=ga(e.replace(/[^0-9.,]/g,""));return{currency:za(n),gross_total_price:a,net_total_price:a}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=await this.getInfoJSON();if(e)return e.apartment.details.name;const t=Ut([".text-2xl"]);return t?.textContent?.trim()??null}async getGuestName(){const e=await this.getInfoJSON();return e?`${e.booking.bookingDetails.customer.firstName} ${e.booking.bookingDetails.customer.lastName}`:null}async getGuestEmail(){const e=await this.getInfoJSON();if(e)return e.booking.bookingDetails.customer.email;const t=Ft([".tw-reset-button.cursor-pointer.text-black-ultra"]);return t?.[5]?.textContent?.trim()??null}async getStatus(){const e=Ut([".pr-m .p-m.bg-error-light"]);return e?.textContent?.trim()?.includes("cancel")||window.location.href.includes("cancel")?"CANCELLED":"BOOKED"}async getLocale(){const e=Ut(['[data-testid="Navbar__LocaleCurrencySelector"]']);return e?.textContent?.trim()?.split("/")[0]?.toLowerCase()?.trim()||this.getLocale()}async getInfoJSON(){try{if(this.info)return this.info;const e=await Dt(()=>Ut(['script[data-key="initial-state"]']),e=>!e||!e.textContent,10)(),t=e?.textContent?.trim()?.replace(/<!--/,"").replace(/-->/,""),n=JSON.parse(t??"{}");return this.info=It(n)?null:n,this.info}catch(e){return console.error("Error getting info",e),null}}async getQueryParamMap(e){const t=await this.getInfoJSON();if(t)return{checkin:t.booking.bookingDetails.checkin,checkout:t.booking.bookingDetails.checkout,adults:t.booking.bookingDetails.guests.adults,children:t.booking.bookingDetails.guests.kids};const n=Ut([".pr-m .mt-s:not(.gap-xs)"]);return{checkin:async()=>{try{if(n){const e=n.children[0],t=e?.children[1]?.children[0];return Zt(t?.textContent?.trim()??null)??null}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(n){const e=n.children[1],t=e?.children[1]?.children[0];return Zt(t?.textContent?.trim()??null)??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=Ut(["#root > section > div > div > div.pr-m > div:nth-child(2) > div > div.mt-xl.w-full > div > div:nth-child(2) > span:nth-child(1)"]);return e?.textContent?.trim().replace(/[^0-9]/g,"")??""}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{const e=Ut(["#root > section > div > div > div.pr-m > div:nth-child(2) > div > div.mt-xl.w-full > div > div:nth-child(2) > span:nth-child(2)"]),t=e?.textContent?.trim().match(/\d+/g)??[];return t?.length>0&&t[0]||null}catch(e){return console.error("Error getting children",e),null}}}}}const Sa=".confirmation-page .row > div.col-lg-5.col-12";class Ea extends ha{constructor(){super("MEININGER")}shouldHandle(e){return/book\.meininger-hotels\.com\/reservations\/[a-f0-9-]+-(?!guest-details)[^\/]+/i.test(e)}async getReservationId(){try{return(new URL(window.location.href).pathname.split("/").pop()??null)||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();if(e)return e.props.bookingCartConfirmation.info.bookingReservationNumber;const t=Ut([`${Sa} > div:nth-child(2) > div > div:nth-child(2)`]);return t?.textContent?.trim()??null}async getPropertyName(){const e=await this.getInfoJSON();return e?.props?.bookingCartConfirmation?.info?.hotelFullName??null}async getGuestName(){const e=await this.getInfoJSON(),t=e?.props?.bookingCartConfirmation?.info?.guest;return void 0!==t?`${t.name} ${t.surname}`:null}async getGuestEmail(){const e=await this.getInfoJSON();return e?.props?.bookingCartConfirmation?.info?.guest?.email??null}async getPrice(){try{const e=await this.getInfoJSON();if(e)return{currency:e.props.bookingCartConfirmation.info.currency,net_total_price:e.props.bookingCartConfirmation.totalAmount,gross_total_price:e.props.bookingCartConfirmation.totalAmountWithCityTax,total_tax_price:e.props.bookingCartConfirmation.totalCityTax};const t=Ut([".bookingCart"]),n=Ut([".bookingCart"])?.children[0],a=n?.getAttribute("data-currency")?.trim()??"",o=t?.children[1];return{currency:za(a),net_total_price:ga(o?.textContent?.trim().replace(/[\s]/g,"")||""),gross_total_price:null,total_tax_price:null}}catch(e){return console.error("Error getting price",e),null}}async getInfoJSON(){try{if(this.info)return this.info;const e=await Dt(()=>Ut(["#app"]),e=>!e||!e.getAttribute("data-page"),10)(),t=JSON.parse(e?.getAttribute("data-page")||"{}");return this.info=It(t)?null:t,this.info}catch(e){return console.error("Error getting info",e),null}}async getStatus(){const e=Ut([".pr-m .p-m.bg-error-light"]);return e?.textContent?.trim()?.includes("cancel")?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();if(t)return{checkin:t.props.bookingCartConfirmation.info.arrivalDate,checkout:t.props.bookingCartConfirmation.info.departureDate,adults:t.props.bookingCartConfirmation.info.adults,children:t.props.bookingCartConfirmation.info.children};const n=Ut([`${Sa} > div:nth-child(3) > div > div:nth-child(2)`]);return{checkin:async()=>{try{if(n){const e=n.textContent;return Zt(Xt(e?.split(" - ")[0]??null))??null}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(n){const e=n.textContent;return Zt(Xt(e?.split(" - ")[1]??null))??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=Ut([`${Sa} > div:nth-child(4) > div > div.text-sm.d-flex.flex-column`]),t=e?.textContent?.trim().match(/\d+/g)??[];return t?.length>0&&t[0]||null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{const e=Ut([`${Sa} > div:nth-child(4) > div > div.text-sm.d-flex.flex-column > span:nth-child(2)`]),t=e?.textContent?.trim().match(/\d+/g)??[];return t?.length>0&&t[0]||null}catch(e){return console.error("Error getting children",e),null}}}}}class Oa extends ha{constructor(){super("EVOLVE")}shouldHandle(e){return/evolve\.com\/booking\/(\d+)\/confirmation/i.test(e)}async getReservationId(){try{const e=new URL(window.location.href),t=e.pathname.match(/\/booking\/(\d+)\/confirmation/),n=await this.getQueryParamMap(e);return t&&t[1]?`${t[1]}-${Object.values(n).map(e=>e()).join("-")}`:null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return this.getReservationId()}async getPrice(){return{currency:null,gross_total_price:null,net_total_price:null}}async getPropertyName(){const e=Ut([".Confirmation_listingCopy__t0MUM .Confirmation_sectionHeading__Mlxru"]);return e?.textContent?.trim()??null}async getGuestName(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:async()=>{try{return Zt(Xt(e.searchParams.get("startDate")))??null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return Zt(Xt(e.searchParams.get("endDate")))??null}catch(e){return console.error("Error getting checkout",e),null}},adults:"adults",children:"children"}}}class Aa extends ha{constructor(){super("ACCOR")}shouldHandle(e){return/secure\.accor\.com\/managebookings\/index(?:\.[a-z]{2}(?:-[a-z]{2})?)?\.shtml#\/details/i.test(e)}async getReservationId(){try{const e=await Dt(()=>Ut([".bd-info__booking-number"]),e=>!e,15)();return e?.textContent?.trim()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPrice(){try{const e=Ut(["#afterTaxValue"]);if(e?.textContent){const t=Ut([".price-display__value"],e),n=t?.textContent?.trim()??e.textContent.trim(),a=ga(n)??Math.round(100*parseFloat(n.replace(/[^0-9.,]/g,"").replace(",","."))),o=Ut([".js-currency-text"]);return{currency:o?.textContent?.trim()??"",gross_total_price:Number(a),net_total_price:Number(a)}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=Ut(["#hotelName"]);return e?.textContent?.trim()??null}async getGuestName(){const e=Ut(["#reserveeFullName"]);return e?.textContent?.trim()??null}async getGuestEmail(){return null}async getStatus(){const e=Ut([".is-cancellation-message"]);return e?.textContent?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=Ut([".bd-info__date"]);return{checkin:async()=>{try{if(t){const e=Ut([".bd-info__date-in-value"],t);return e?.textContent?.trim()??null}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t){const e=Ut([".bd-info__date-out-value"],t);return e?.textContent?.trim()??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=Ut(["#roomListPaxAdults_0"]);return e?Number(e.textContent?.trim().match(/\d+/g)?.[0]??null):null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class Pa extends ha{constructor(){super("ACCOR")}shouldHandle(e){return/secure\.accor\.com\/ssr\/app\/accor\/confirmation\/index(?:\.[a-z]{2}(?:-[a-z]{2})?)?\.shtml/i.test(e)}async getReservationId(){try{const e=await this.getManageReservationButton(),t=e?.getAttribute("href");if(t){return new URL(t,window.location.origin).searchParams.get("historic.folderNumber")??null}return null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPropertyName(){const e=Ut([".hotelTitle__text"]);return e?.textContent?.trim()??null}async getGuestName(){const e=await this.getManageReservationButton(),t=e?.getAttribute("href");return t?new URL(t,window.location.origin).searchParams.get("historic.bookingName")??null:null}async getGuestEmail(){return null}async getPrice(){try{const e=Ut([".booking-price"]);if(e?.textContent){const t=Ut([".mcp-price-number"],e),n=Ut([".mcp-price-cent"],e),a=Ut([".js-currency-text"]),o=`${t?.textContent?.trim()??""}${n?.textContent?.trim()??"00"}`;return{currency:a?.textContent?.trim()??"",gross_total_price:Number(o),net_total_price:Number(o)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getManageReservationButton(){return await Dt(()=>Ut(["a.btn--manage-reservation"]),e=>!e,15)()}async getQueryParamMap(e){const t=Ut(["li.confirmation-booking-summary__body-items-item"]);return{checkin:async()=>{try{const t=await this.getManageReservationButton(),n=t?.getAttribute("href");if(n){const t=new URL(n,e.origin),a=t.searchParams.get("historic.dayIn")??null,o=t.searchParams.get("historic.monthIn")??null;return`${t.searchParams.get("historic.yearIn")??null}-${o}-${a}`}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t){const n=Number(t.children[0]?.textContent?.trim().match(/\d+/g)?.[0]??null);if(n){const t=await(await this.getQueryParamMap(e)).checkin(),a=new Date(t).getTime()+24*n*60*60*1e3;return Zt(new Date(a).toISOString())??null}return null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?Number(t.children[1]?.textContent?.trim().match(/\d+/g)?.[1]??null):null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?Number(t.children[1]?.textContent?.trim().match(/\d+/g)?.[2]??null):null}catch(e){return console.error("Error getting children",e),null}}}}}class Na extends ha{constructor(){super("GUESTREADY")}shouldHandle(e){return/book\.guestready\.com\/(?:[a-zA-Z]{2}\/)*reservations\/([a-zA-Z0-9]+)/i.test(e)}async getReservationId(){try{const e=/\/reservations\/([a-zA-Z0-9]+)/,t=new URL(window.location.href);return t.pathname.match(e)?.[1]??null}catch(e){return console.error("Error getting reservation id",e),null}}async getPropertyName(){return null}async getGuestName(){return null}async getBookingReference(){const e=await this.getInfoJSON();return e?.props?.pageProps?.reservation?.booking_number??null}async getPrice(){try{const e=await this.getInfoJSON();if(e?.props?.pageProps?.reservation?.receipts?.payments[0]){const t=e.props.pageProps.reservation.receipts.payments[0].amount_formatted,n=t.replace(/[0-9.,\s]/g,""),a=ga(t);return{currency:za(n),gross_total_price:a,net_total_price:a}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await this.getInfoJSON();return"CANCELLED"===e?.props?.pageProps?.reservation?.ongoing_status?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();return{checkin:async()=>{try{return t?.props?.pageProps?.reservation?.check_in_date?t.props.pageProps.reservation.check_in_date:null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.props?.pageProps?.reservation?.check_out_date?t.props.pageProps.reservation.check_out_date:null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.props?.pageProps?.reservation?.adults?t.props.pageProps.reservation.adults:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?.props?.pageProps?.reservation?.children?t.props.pageProps.reservation.children:null}catch(e){return console.error("Error getting children",e),null}}}}}const Ta=(e,t,n)=>{if(e.searchParams.get(t)&&e.searchParams.get(n)){const a=e.searchParams.get(t),o=`${(parseInt(a?.slice(0,2)||"",10)||0)+1}`.padStart(2,"0"),r=a?.slice(2);return`${r}-${o}-${e.searchParams.get(n)}`}return null};class Ia extends ha{constructor(){super("IHG")}shouldHandle(e){return/www\.ihg\.com(?:[a-zA-Z\/]*?)\/pay\/confirmation/i.test(e)}async getReservationId(){try{const e=new URL(window.location.href);return`${e.searchParams.get("confirmationNumber")}-${e.searchParams.get("lastName")}`}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(()=>Ut(['[data-slnm-ihg="reservationConfirmationMessage"] .notranslate']),e=>!e||!e?.textContent?.trim(),10)();return e?.textContent?.trim()??this.getReservationId()}async getPrice(){try{const e=await Dt(()=>Ut([".table-bottom._total .side-panel-total"]),e=>!e||!e?.textContent?.trim(),10)();if(e?.textContent){const t=e.textContent.replace(/[^0-9.,]/g,""),n=Ut([".brandThemeLink"],e),a=ga(t);return{currency:n?.textContent?.trim()??"",gross_total_price:a,net_total_price:a}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=Ut([".hotelInfoSummary .ng-star-inserted"]);return e?.textContent?.trim()??null}async getGuestName(){const e=Ut(['[data-slnm-ihg="quickEnrollWelcomeContentSID"] .notranslate']);return e?.textContent?.trim()??null}async getGuestEmail(){return await this.getGuestName()}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await Dt(()=>Ut(['[data-slnm-ihg="duplicateReservationButton"]']),e=>!e||!e?.getAttribute("href"),10)(),n=t?.getAttribute("href");if(!n)return{checkin:async()=>null,checkout:async()=>null,adults:async()=>null,children:async()=>null};const a=new URL(`${window.location.origin}${n}`);return{checkin:async()=>{try{return Ta(a,"qCiMy","qCiD")}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return Ta(a,"qCoMy","qCoD")}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return a.searchParams.get("qAdlt")?a.searchParams.get("qAdlt"):null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return a.searchParams.get("qChld")?a.searchParams.get("qChld"):null}catch(e){return console.error("Error getting children",e),null}}}}}class La extends ha{constructor(){super("MELIA")}shouldHandle(e){return/www\.melia\.com(?:[a-zA-Z\/]*?)\/checkout\/confirmation/i.test(e)}async getReservationId(){try{return new URL(window.location.href).searchParams.get("loc")??(await this.getInfoJSON())?.props?.pageProps?.checkOutDetails?.summary?.locatorCode??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();return e?.props?.pageProps?.checkOutDetails?.summary?.selectedConfig?.locator??null}async getPrice(){try{const e=await this.getInfoJSON();if(e?.props?.pageProps?.checkOutDetails?.summary?.selectedRoomRate?.currencyPrice){const t=e.props.pageProps.checkOutDetails.summary.selectedRoomRate.currencyPrice||e.props.pageProps.checkOutDetails.summary.selectedRoomRate.price,n=e.props.pageProps.checkOutDetails.currency,a=ga(t);return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:(a||0)-(ga(e.props.pageProps.checkOutDetails.summary.selectedRoomRate.currencyPriceWithoutTax||e.props.pageProps.checkOutDetails.summary.selectedRoomRate.priceWithoutTax)||0)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await this.getInfoJSON();return"CANCELLED"===e?.props?.pageProps?.reservation?.ongoing_status?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON(),n=t?.props?.pageProps?.checkOutDetails?.summary?.selectedConfig?.dates,a=t?.props?.pageProps?.checkOutDetails?.summary?.selectedConfig?.occupancy[0];return{checkin:async()=>{try{return n?n[0]:null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return n?n[1]:null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return a?a.adults:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return a?a.children:null}catch(e){return console.error("Error getting children",e),null}}}}}class Da extends ha{constructor(){super("MELIA")}shouldHandle(e){return/www\.melia\.com(?:[a-zA-Z\/]*?)\/reservation/i.test(e)}async getReservationId(){try{return this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(()=>Ut([".definition-list-wrapper___2kUGk dd"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPrice(){try{const e=await Dt(()=>Ut([".c-payment-card___1_CuQ"]),e=>!e||!e.textContent,10)();if(e){const t=Ut([".price___14pEy.featured___2Dap0"],e),n=ga((t?.textContent??"").replace(/[a-zA-Z\s]/g,"")),a=t?.textContent?.replace(/[0-9.,\s]/g,"")??null,o=Ut([".summary___3U0EP .price___14pEy"],e);return{currency:a,gross_total_price:n,net_total_price:n,total_tax_price:ga((o?.textContent??"").replace(/[a-zA-Z\s]/g,""))}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=Ft([".c-definition-list___21ds4"]);if(e){const t=e[3];if(t)return t.textContent?.toLocaleLowerCase().includes("cance")?"CANCELLED":"BOOKED"}return"BOOKED"}async getQueryParamMap(e){const t=Ft([".details-section___2hrKe"]);return{checkin:async()=>{try{if(t&&t[1]){const e=Ut([".detail___2S67E"],t[1]);return e?.textContent}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t&&t[1]){const e=(Ft([".detail___2S67E"],t[1])||[])[2];return e?.textContent}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{if(t&&t[2]){const e=Ut([".capacity___BYiON"],t[2]);return e?.textContent?.match(/\d+/)?.[0]}return null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{if(t&&t[2]){const e=Ut([".capacity___BYiON"],t[2]);return e?.textContent?.match(/\d+[^]*?(\d+)/)?.[1]}return null}catch(e){return console.error("Error getting children",e),null}}}}}class Ra extends ha{constructor(){super("IBEROSTAR")}shouldHandle(e){return/booking\.iberostar\.com\/Book\/Confirm\.aspx/i.test(e)}async getReservationId(){try{return this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(()=>Ut(["#cphMain_ctl01_Label1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getGuestName(){const e=await Dt(()=>Ut(["#ContentPlaceHolder3_lblcodclinombre1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getGuestEmail(){const e=await Dt(()=>Ut(["#ContentPlaceHolder3_lblcodemail1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPropertyName(){const e=await Dt(()=>Ut([".hname"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPrice(){try{const e=await Dt(()=>Ft(["#Totales div"]),e=>!e||It(e),10)(),t=Array.from(e||[]).find(e=>"none"!==e.style.display);if(t){const e=ga((t?.textContent??"").replace(/[a-zA-Z\s]/g,"")),n=Ut([".currency"],t);return{currency:n?.textContent?.trim()??null,gross_total_price:e,net_total_price:e,total_tax_price:null}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return Ft([".alert-cancelled"])?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=Ut(["#reservationData"]);return{checkin:async()=>{try{if(t&&t){const e=Ut([".checkin .fieldvalue"],t);return Xt(e?.textContent?.trim()??null)}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t&&t){const e=Ut([".checkout .fieldvalue"],t);return Xt(e?.textContent?.trim()??null)}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{if(t&&t){const e=Ut([".people .fieldvalue"],t);return e?.textContent?.trim()?.match(/\d+/)?.[0]}return null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class Ma extends ha{constructor(){super("SONDER")}shouldHandle(e){return/www\.sonder\.com(?:[a-zA-Z-/]*?)\/bookings\/[a-zA-Z0-9]*?\/confirmations/i.test(e)}async getReservationId(){try{return await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getGuestName(){const e=await this.getInfoJSON(),t=e?.props?.pageProps?.confirmation?.guestInfo;return t?`${t?.firstName}-${t?.lastName}`:null}async getBookingReference(){const e=await this.getInfoJSON();return e?.props?.pageProps?.bookingUniqKey??null}async getPropertyName(){const e=await this.getProductInfo();return e?`${e?.title} - ${e?.subtitle}`:null}async getPrice(){try{const e=await this.getInfoJSON(),t=e?.props?.pageProps?.confirmation?.invoiceInfo;if(t){const e=t?.total?.value.replace(/[^\d.,]/g,""),n=t?.total?.currency,a=ga(e);return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:ga(t?.lineItems?.find(e=>"taxes"===e.type)?.value)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await this.getInfoJSON();return"CANCELLED"===e?.props?.pageProps?.reservation?.ongoing_status?"CANCELLED":"BOOKED"}async getProductInfo(){const e=await this.getInfoJSON();return e?.props?.pageProps?.confirmation?.productInfo}async getQueryParamMap(e){const t=await this.getProductInfo();return{checkin:async()=>{try{return t?.checkInDate?t?.checkInDate:null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.checkOutDate?t?.checkOutDate:null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.numberOfGuests?t?.numberOfGuests:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class $a extends ha{constructor(){super("CHOICEHOTELS")}shouldHandle(e){return/www\.choicehotels\.com(?:[a-zA-Z-/]*?)\/confirmation/i.test(e)||/www\.choicehotels\.com(?:[a-zA-Z-/]*?)\/reservations\/reservation-details/i.test(e)}async getReservationId(){try{const e=await Dt(()=>Ut([".confirmation-number-heading"]),e=>!e,15)(),t=(e?.textContent?.trim()??"").split(" ");return t[t.length-1].trim()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getGuestName(){try{const e=await Dt(()=>Ut([".reservation-guest-details .user-name"]),e=>!e,10)();return e?.textContent?.trim()??null}catch(e){return console.error("Error getting guest name",e),null}}async getPropertyName(){try{const e=await Dt(()=>Ut(['[data-track-id="BackToPropertyPage"]']),e=>!e,10)();return e?.textContent?.trim()??null}catch(e){return console.error("Error getting property name",e),null}}async getPrice(){try{const e=Ut(['[data-track-id="summaryOfCharges"]']);if(e?.textContent){const t=Ut([".summary-of-charges-total-amount"],e),n=ga(t?.textContent?.trim()||""),a=Ut([".currency-code"]),o=Ut([".taxes-total"]),r=ga(o?.textContent?.trim()||"");return{currency:a?.textContent?.trim().replace(/[()]/g,"")??"",gross_total_price:Number(n),net_total_price:Number(n),total_tax_price:Number(r)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await Dt(()=>Ut([".booking-summary"]),e=>!e,15)();return{checkin:async()=>{try{if(t){const e=Ut(['[data-track-id="CheckInDate"] .select-day'],t);return e?.textContent?.trim()??null}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t){const e=Ut(['[data-track-id="CheckOutDate"] .select-day'],t);return e?.textContent?.trim()??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=Ut([".occupancy-description"]);return e?Number(e.textContent?.trim().match(/\d+/g)?.[0]??null):null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class Ba extends ha{constructor(){super("WYNDHAMHOTELS")}shouldHandle(e){return/wyndhamhotels\.com(?:[a-zA-Z0-9-\/]*?)\/reservation\/confirm/i.test(e)||/wyndhamhotels\.com(?:[a-zA-Z0-9-\/]*?)\/reservation\/view/i.test(e)}async getReservationId(){try{return await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getInfoJSON(){if(this.info)return this.info;try{const e=Ut(["script"],await Dt(Ut,e=>!e||!e.textContent,10)([".container.component-spacer"])),t=e?.textContent?.match(/var\s+reservationDataFromAEM\s*=\s*(\{[\s\S]*?\});/),n=function(e,t){let n=e;return t.forEach(e=>{n=function(e,t){const n=new RegExp(`${t}\\s*:\\s*("[^"]*"|\\[[\\s\\S]*?\\]|'[^']*'),?`);return e.replace(n,"")}(n,e)}),n}(t?.[1],["taxList","dateRateMap","checkInTime","checkOutTime"])?.replace(/([a-zA-Z0-9_]+)\s*:/g,'"$1":').replace(/\n/g,"");return t?(this.info=JSON.parse(n||"{}"),this.info):null}catch(e){return console.error("Error getting info",e),null}}async getGuestName(){const e=await this.getInfoJSON();return`${e?.firstName}-${e?.lastName}`}async getBookingReference(){const e=await this.getInfoJSON();return e?.confirmationNumber}async getPropertyName(){const e=await this.getInfoJSON();return e?.propertyId}async getPrice(){try{const e=await this.getInfoJSON();if(e){const t=e?.totalCash?.replace(/[^\d.,]/g,""),n=e?.subtotal?.replace(/[^\d.,]/g,""),a=e?.taxTotal?.replace(/[^\d.,]/g,""),o=e?.currencyCode,r=ga(t);return{currency:o,gross_total_price:r,net_total_price:ga(n),total_tax_price:ga(a)}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();return{checkin:async()=>{try{return t?.checkInDate?t?.checkInDate:null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.checkOutDate?t?.checkOutDate:null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.adults?t?.adults:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?.children?t?.children:null}catch(e){return console.error("Error getting children",e),null}}}}}class Ua extends ha{constructor(){super("OYOROOMS")}shouldHandle(e){return/oyorooms\.com(?:[a-zA-Z0-9-\/]*?)\/booking\/([a-zA-Z0-9-]+)/i.test(e)}async getReservationId(){try{return new URL(window.location.href).pathname.split("/").pop()||await this.getBookingReference()||null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getBookingData();return e?.invoice??null}async getGuestName(){const e=await this.getBookingData();return e?.guest_name||e?.guest.name||await this.getGuestEmail()||null}async getGuestEmail(){const e=await this.getBookingData();return e?.guest.email||e?.guest_email||null}async getPropertyName(){const e=await this.getBookingData();return e?.get_alias_name||null}async getBookingData(){const e=await this.getInfoJSON();return e?.bookingDetailPage?.bookingData?.data??null}async getInfoJSON(){if(this.info)return this.info;try{const e=Ft(["script"]),t=Array.from(e).find(e=>/window\.__PRELOADED_STATE__\s*=\s*\{/.test(e.textContent||""));if(t){const e=t.textContent,n=e?.match(/window\.__PRELOADED_STATE__\s*=\s*(\{[\s\S]*?\}\n)/);if(n){const e=n[1],t=JSON.parse(e);return this.info=t,this.info}}return null}catch(e){return console.error("Error getting info",e),null}}async getPrice(){try{const e=await this.getBookingData();return e?{currency:e.currency_symbol,gross_total_price:ga(e.total_amount_excluding_wizard||e.final_amount_excluding_oyo_money),net_total_price:ga(e.total_tariff),total_tax_price:0}:null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await this.getBookingData();return"cancelled"===e?.morphedStatus?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await this.getBookingData();return t?{checkin:async()=>{try{return t.checkin}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t.checkout}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t.no_of_adults}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t.no_of_children}catch(e){return console.error("Error getting children",e),null}}}:{checkin:null,checkout:null,adults:null,children:null}}}class Fa extends ha{constructor(){super("CITIZENM")}shouldHandle(e){return/citizenm\.com(?:[a-zA-Z0-9-\/]*?)\/book\/confirmation/i.test(e)}async getReservationId(){try{return new URL(window.location.href).searchParams.get("bookingCode")??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPrice(){try{const e=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-stay-price-total-amount"']);if(e?.textContent){const t=e.textContent.trim(),n=t.replace(/[0-9.,]/g,"").trim(),a=3===n.length?n:za(n),o=ga(t.replace(/[^0-9.]/g,""));return{currency:za(a),gross_total_price:o,net_total_price:o}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-info-hotel"] h1']);return e?.textContent?.trim()??null}async getGuestName(){const e=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-booker-firstname"] .value']),t=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-booker-lastname"] .value']);return`${e?.textContent?.trim()} ${t?.textContent?.trim()}`}async getGuestEmail(){const e=await Dt(Ut,e=>!e,10)(['[data-testid="booking-confirmation-booker-email"] .value']);return e?.textContent?.trim()??null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:async()=>{try{const e=await Dt(Ut,e=>!e,10)(['[name="startdate"]']);return e?.getAttribute("value")??null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{const e=await Dt(Ut,e=>!e,10)(['[name="enddate"]']);return e?.getAttribute("value")??null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=await Dt(Ut,e=>!e,10)([".rd-guests .value"]);return e?.textContent?.trim().replace(/[^0-9]/g,"")??""}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return null}catch(e){return console.error("Error getting children",e),null}}}}}class Va extends ha{constructor(){super("HOTEL-BB")}shouldHandle(e){return/hotel-bb\.com(?:[a-zA-Z0-9-\/]*?)\/checkout-confirmation\/([a-zA-Z0-9-]+)/i.test(e)}async getReservationId(){try{return new URL(window.location.href).pathname.split("/").pop()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoJSON();return e?.transactionId??null}async getInfoJSON(){try{if(this.info)return this.info;const e=await Dt(()=>Ut(['[data-drupal-selector="drupal-settings-json"]']),e=>!e||!e.textContent,10)(),t=JSON.parse(e?.textContent||"{}");return this.info=It(t)?null:t,this.info}catch(e){return console.error("Error getting info",e),null}}async getRoomData(){const e=await this.getInfoJSON();return Object.values(e?.bookingData?.rooms??{})[0]??null}async getPrice(){try{const e=await this.getInfoJSON();if(e?.bookingData?.totalAmount){const t=e.bookingData.totalAmount||(await this.getRoomData())?.room_info?.price,n=(e?.bbh_datalayer_ga4?.page_data?.currency||(await this.getRoomData())?.room_info?.currency_code)??"",a=ga(t.replace(/[^0-9.]/g,""));return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:ga((await this.getRoomData())?.cityTaxAmount)}}return null}catch(e){return console.error("Error getting price",e),null}}async getPropertyName(){const e=await this.getInfoJSON();return e?.bookingData?.hotelName??null}async getGuestName(){const e=(await this.getRoomData())?.occupant||(await this.getRoomData())?.occupants_title;if(e)return e;const t=await Dt(Ut,e=>!e,10)([".confirmation__txt-box h1"]);return t?.textContent?.trim().split(",")[0]??null}async getGuestEmail(){const e=(await this.getRoomData())?.booker_email||(await this.getRoomData())?.occupant_email;if(e)return e;const t=await Dt(Ut,e=>!e,10)([".confirmation__txt-box strong"]);return t?.textContent?.trim()??null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();return{checkin:async()=>{try{if(t?.bbh_datalayer_ga4?.page_data?.booking_checkin_date){const e=t.bbh_datalayer_ga4.page_data.booking_checkin_date,[n,a,o]=e.split("/");return`${o}-${a}-${n}`}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t?.bbh_datalayer_ga4?.page_data?.booking_checkout_date){const e=t.bbh_datalayer_ga4.page_data.booking_checkout_date,[n,a,o]=e.split("/");return`${o}-${a}-${n}`}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=await this.getRoomData();return e?.room_info?.adultsCount||e?.guestCount||null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{const e=await this.getRoomData();return e?.room_info?.childrenCount||null}catch(e){return console.error("Error getting children",e),null}}}}}class Ha extends ha{constructor(){super("ZENITHOTELES")}shouldHandle(e){return/zenithoteles\.com(?:[a-zA-Z0-9-\/]*?)\/bookcore\/your-booking\/confirmation\/([a-zA-Z0-9-]+)/i.test(e)}async getReservationId(){try{return(new URL(window.location.href).pathname.split("/").pop()??null)||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await this.getInfoComponent();if(e)return e.getAttribute("data-booking-code")??null;const t=window.location.href.match(/bookcore\/your-booking\/confirmation\/([a-zA-Z0-9]+)\//);return t?t[1]:null}async getPropertyName(){const e=await this.getInfoComponent(),t=e?.getAttribute("data-hotel-info")||"{}",n=JSON.parse(t);return n?.hotelName??null}async getGuestName(){const e=Ut([".voucher__client .voucher__client-info-value"]);return e?.textContent?.trim()??null??null}async getGuestEmail(){const e=Ft([".voucher__client .voucher__client-info-value"]);return e?.[1]?.textContent?.trim()??null??null}async getPrice(){try{const e=await this.getInfoJSON();if(e)return{currency:e.currency,net_total_price:ga(String(parseFloat(e.value)-parseFloat(e.tax))),gross_total_price:ga(e.value),total_tax_price:ga(e.tax)};const t=Ut([".bookingCart"]);let n=Ut([".bookingCart"])?.children[0],a=n?.getAttribute("data-currency")?.trim()??"";const o=t?.children[1];return{currency:za(a),net_total_price:ga(o?.textContent?.trim().replace(/[\s]/g,"")||""),gross_total_price:null,total_tax_price:null}}catch(e){return console.error("Error getting price",e),null}}async getInfoComponent(){return await Dt(Ut,e=>!e||!e.getAttribute("data-ga4-event-data"),10)(["#roi-voucher-trackings"])}async getInfoJSON(){try{if(this.info)return this.info;const e=await this.getInfoComponent(),t=JSON.parse(e?.getAttribute("data-ga4-event-data")||"{}");return this.info=It(t)?null:t,this.info}catch(e){return console.error("Error getting info",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON();if(t){const e=t.items[0].item_category2.split("-");return{checkin:t.items[0].item_category3,checkout:t.items[0].item_category4,adults:e[0],children:e[1]}}return{checkin:null,checkout:null,adults:null,children:null}}}class Ka extends ha{constructor(){super("RADISSON"),this.parserType="html"}shouldHandle(e){return/radissonhotels\.com(?:[a-zA-Z0-9-\/]*?)\/booking\/confirmation/i.test(e)||/radisson-confirmation/i.test(e)}async getReservationId(){try{return(new URL(window.location.href).searchParams.get("bookingId")??null)||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(async()=>Ut(['[name="bookingId"]']),e=>!e,10)();return e?e.getAttribute("value"):null}async getPropertyName(){const e=Ut(['[data-test="propertyName"]']);return e?.textContent?.trim()??null}async getGuestName(){const e=Ut(['[data-test="first-name"]']),t=Ut(['[data-test="last-name"]']);return e?.textContent?.trim()+" "+t?.textContent?.trim()}async getGuestEmail(){const e=Ut(['[data-test="email"]']);return e?.textContent?.trim()??null}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=Ut(['[data-testid="people"]']);return{checkin:null,checkout:null,adults:t?.textContent?.replace(/\D/g,"")??null,children:null}}}class qa extends ha{constructor(){super("NOVASOL")}shouldHandle(e){return/checkout\.novasol\.com(?:[a-zA-Z0-9-\/]*?)\/booking-complete\?/i.test(e)}async getReservationId(){try{const e=await this.getInfoJSON();return e?.bookingDetails?.bookingId??null}catch(e){return console.error("Error getting reservation id",e),null}}async getInfoJSON(){const e=await super.getInfoJSON();return e?e.props?.pageProps:null}async getPropertyName(){const e=await this.getInfoJSON();return e?.property?.propertyCode||e?.propertyUnitCode||null}async getGuestName(){const e=await this.getInfoJSON(),t=e?.customerSession?.customer;return t?`${t.firstName} ${t.lastName}`:null}async getGuestEmail(){const e=await this.getInfoJSON();return e?.customerSession?.customer?.email??null}async getBookingReference(){const e=await this.getInfoJSON();return e?.bookingDetails?.bookingId??null}async getPrice(){try{const e=await this.getInfoJSON(),t=e?.customerSession?.initialQuote?.totalCost;if(t){const e=t.value,n=t.currency,a=ga(e);return{currency:n,gross_total_price:a,net_total_price:a}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await this.getInfoJSON(),n=new URL(window.location.href);return{checkin:async()=>{try{return t?.bookingDetails?.startDate?t.bookingDetails.startDate?.split("T")[0]:n.searchParams.get("start")}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.bookingDetails?.endDate?t.bookingDetails.endDate?.split("T")[0]:n.searchParams.get("end")}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.bookingDetails?.numberOfAdults?t.bookingDetails.numberOfAdults:n.searchParams.get("adult")}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?.bookingDetails?.numberOfChildren?t.bookingDetails.numberOfChildren:n.searchParams.get("child")}catch(e){return console.error("Error getting children",e),null}}}}}class Ga extends ha{reservationInfo=null;constructor(){super("BOOKING")}shouldHandle(e){return/secure\.booking\.com\/confirmation(?:\.[a-zA-Z-]{2,5})*\.html/i.test(e)}async getReservationId(){try{return await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getGuestName(){return null}async getBookingReference(){const e=await this.getReservationInfo();return e?.identity?.reservationId??null}async getPropertyName(){const e=await this.findJSONPartFromRegex(/^PostBookingProperty:{/);return ra(e?.url?.replace(".html",""))??null}async getPrice(){try{const e=await this.getReservationInfo(),t=e?.price;if(t){const n=t?.userTotalPretty?.replace(/[^\d.,]/g,""),a=e?.context?.selectedCurrency,o=ga(n);return{currency:a,gross_total_price:o,net_total_price:o,total_tax_price:null}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getReservationInfo(){try{if(this.reservationInfo)return this.reservationInfo;const e=await this.findJSONPartFromRegex(/^PostBookingReservation:{/);return this.reservationInfo=e,this.reservationInfo}catch(e){return console.error("Error getting reservation info",e),null}}async findJSONPartFromRegex(e){const t=await this.getInfoJSON();if(!t)return null;const n=Bt(t,e);return n?$t(n)??null:null}async getInfoJSON(){if(this.info)return this.info;const e=await Kt(['script[data-capla-namespace*="b-post-booking-web-"][data-capla-store-data="apollo"]']);return this.info=e,this.info}buildDate(e){const t=new Date(parseInt(e,10));return`${t.getUTCFullYear()}-${Mt(t.getUTCMonth()+1)}-${Mt(t.getUTCDate())}`}async getQueryParamMap(e){const t=await this.getReservationInfo();return{checkin:async()=>{try{return t?.reservationCheckinDate?this.buildDate(t?.reservationCheckinDate?.rawDate+"000"):null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return t?.reservationCheckoutDate?this.buildDate(t?.reservationCheckoutDate?.rawDate+"000"):null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{return t?.bookedOccupancyInfo?t?.bookedOccupancyInfo?.numberOfAdults??null:null}catch(e){return console.error("Error getting adults",e),null}},children:async()=>{try{return t?.bookedOccupancyInfo?t?.bookedOccupancyInfo?.numberOfChildren??null:null}catch(e){return console.error("Error getting children",e),null}}}}}class Qa extends ha{constructor(){super("EUROSTARSHOTELS"),this.parserType="html"}shouldHandle(e){return/eurostarshotels\.com(?:[^]*?)#confirmation\//i.test(e)}async getReservationId(){try{const e=new URL(window.location.href),t=e.searchParams.get("id_hotel"),n=e.hash.split("/").pop();return t&&n?`${t}-${n}`:null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return null}async getPropertyName(){return null}async getGuestName(){return null}async getGuestEmail(){return null}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=Ut(['[data-testid="people"]']);return{checkin:null,checkout:null,adults:t?.textContent?.replace(/\D/g,"")??null,children:null}}}class Wa extends ha{constructor(){super("DIRECT_BOOK"),this.parserType="html"}shouldHandle(e){return/direct-book\.com\/properties\/[a-zA-Z0-9-]+\/reservations\/[a-zA-Z0-9-]+/i.test(e)}async getReservationId(){try{return new URL(window.location.href).pathname.split("/").pop()||await this.getBookingReference()}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){const e=await Dt(()=>Ut(['[data-cy="reservation-reference-id"]']),e=>!e,10)();if(!e)return null;const t=e.textContent;if(!t)return null;const n=t.split(":")[1];return n?n.replace("#","").replace("\n","").trim()??null:null}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class Ya extends ha{constructor(){super("BESTWESTERN"),this.parserType="html"}shouldHandle(e){return/bestwestern\.[.a-z]{2,7}(?:[a-zA-Z_\/]*?)\/reservations\/reservation-details\.(thankyou|rewards)\.html/i.test(e)}async getReservationId(){try{const e=await Dt(Ft,e=>!Oe(e,"[1].textContent",null))([".confirmationNumberContainer div"]),t=e?.length?e[1]?.textContent:null;return t?t.trim().replace(/\s/g,"").replace("#",""):null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getStatus(){return"BOOKED"}async getPrice(){return null}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class Ja extends ha{constructor(){super("GETDIRECTO"),this.parserType="html"}shouldHandle(e){return/secure\.getdirecto\.com\/confirmation\//i.test(e)}async getBookingReference(){try{const e=await Dt(Ut,e=>!Oe(e,"textContent",null))([".confirmation-bookingId span"]),t=e?.textContent;return t??null}catch(e){return console.error("Error getting booking reference",e),null}}async getReservationId(){try{const e=new URL(window.location.href).pathname.split("/").pop();if(e)return e}catch(e){console.error("Error getting reservation id from URL",e)}return await this.getBookingReference()}async getStatus(){return"BOOKED"}async getPrice(){return null}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class Za extends ha{constructor(){super("ADAGIO_CITY"),this.parserType="html"}shouldHandle(e){return/adagio-city.com(?:[a-zA-Z\/]*?)\/booking\/confirmation\/[a-zA-Z0-9-_]+/i.test(e)}async getReservationId(){try{const e=await Dt(()=>Ut([".confirmation-info-top dd"]),e=>!e,10)();return e?.textContent?.trim()??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){return{checkin:null,checkout:null,adults:null,children:null}}}class Xa{trackers=[];activeTracker=null;constructor(){this.trackers=[new ka,new ba,new ya,new Ca,new Ea,new Oa,new Aa,new Pa,new Na,new Ia,new La,new Da,new Ra,new Ma,new $a,new Ba,new Ua,new Fa,new Va,new Ha,new Ka,new qa,new Ga,new Qa,new Wa,new Ya,new Ja,new Za]}async initialize(e){try{const t=this.getTrackerForUrl(e);if(t&&await t.isReservation()){const e=await t.getReservationDetails(),n=await w.getSessionId(),a=await da();"html"===t.parserType?w.sendConversionHTMLEvent({...e,session_id:n,user_id:a}):w.sendConversionEvent({...e,session_id:n,user_id:a})}}catch(e){console.error("Error handling reservation tracker",e)}}getTrackerForUrl(e){if(this.activeTracker&&this.activeTracker.shouldHandle(e))return this.activeTracker;for(const t of this.trackers)if(t.shouldHandle(e))return this.activeTracker=t,t;return this.activeTracker=null,null}}const eo={utm_source:"getdirecto",utm_medium:"extension"};function to(e){const t=pn(e);for(const[e,n]of Object.entries(eo))t.searchParams.set(e,n);return t.toString()}const no=function(){try{var e=X(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();var ao=Object.prototype.hasOwnProperty;const oo=function(e,t,n){var a=e[t];ao.call(e,t)&&re(a,n)&&(void 0!==n||t in e)||function(e,t,n){"__proto__"==t&&no?no(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}(e,t,n)},ro=function(e,t,n){return null==e?e:function(e,t,n,a){if(!$(e))return e;for(var o=-1,r=(t=Ce(t,e)).length,i=r-1,s=e;null!=s&&++o<r;){var c=Se(t[o]),l=n;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(o!=i){var u=s[c];void 0===(l=a?a(u,c,s):void 0)&&(l=$(u)?u:Fe(t[o+1])?[]:{})}oo(s,c,l),s=s[c]}return e}(e,t,n)};function io(e,t){return Math.floor(Math.random()*(t-e+1)+e)}var so=n(723),co=n(997);function lo(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];throw new Error("number"==typeof e?"[MobX] minified error nr: "+e+(n.length?" "+n.map(String).join(","):"")+". Find the full error at: https://github.com/mobxjs/mobx/blob/main/packages/mobx/src/errors.ts":"[MobX] "+e)}var uo={};function po(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:"undefined"!=typeof self?self:uo}var mo=Object.assign,ho=Object.getOwnPropertyDescriptor,fo=Object.defineProperty,go=Object.prototype,ko=[];Object.freeze(ko);var bo={};Object.freeze(bo);var yo="undefined"!=typeof Proxy,vo=Object.toString();function wo(){yo||lo("Proxy not available")}function jo(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var _o=function(){};function xo(e){return"function"==typeof e}function zo(e){switch(typeof e){case"string":case"symbol":case"number":return!0}return!1}function Co(e){return null!==e&&"object"==typeof e}function So(e){if(!Co(e))return!1;var t=Object.getPrototypeOf(e);if(null==t)return!0;var n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n.toString()===vo}function Eo(e){var t=null==e?void 0:e.constructor;return!!t&&("GeneratorFunction"===t.name||"GeneratorFunction"===t.displayName)}function Oo(e,t,n){fo(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function Ao(e,t,n){fo(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function Po(e,t){var n="isMobX"+e;return t.prototype[n]=!0,function(e){return Co(e)&&!0===e[n]}}function No(e){return null!=e&&"[object Map]"===Object.prototype.toString.call(e)}function To(e){return null!=e&&"[object Set]"===Object.prototype.toString.call(e)}var Io=void 0!==Object.getOwnPropertySymbols,Lo="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:Io?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames;function Do(e){return null===e?null:"object"==typeof e?""+e:e}function Ro(e,t){return go.hasOwnProperty.call(e,t)}var Mo=Object.getOwnPropertyDescriptors||function(e){var t={};return Lo(e).forEach(function(n){t[n]=ho(e,n)}),t};function $o(e,t){return!!(e&t)}function Bo(e,t,n){return n?e|=t:e&=~t,e}function Uo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}function Fo(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,Qo(a.key),a)}}function Vo(e,t,n){return t&&Fo(e.prototype,t),n&&Fo(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ho(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Uo(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Uo(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function Ko(){return Ko=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)({}).hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},Ko.apply(null,arguments)}function qo(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Go(e,t)}function Go(e,t){return Go=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Go(e,t)}function Qo(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}var Wo=Symbol("mobx-stored-annotations");function Yo(e){return Object.assign(function(t,n){if(Zo(n))return e.decorate_20223_(t,n);Jo(t,n,e)},e)}function Jo(e,t,n){Ro(e,Wo)||Oo(e,Wo,Ko({},e[Wo])),function(e){return e.annotationType_===ir}(n)||(e[Wo][t]=n)}function Zo(e){return"object"==typeof e&&"string"==typeof e.kind}var Xo=Symbol("mobx administration"),er=function(){function e(e){void 0===e&&(e="Atom"),this.name_=void 0,this.flags_=0,this.observers_=new Set,this.lastAccessedBy_=0,this.lowestObserverState_=ai.NOT_TRACKING_,this.onBOL=void 0,this.onBUOL=void 0,this.name_=e}var t=e.prototype;return t.onBO=function(){this.onBOL&&this.onBOL.forEach(function(e){return e()})},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach(function(e){return e()})},t.reportObserved=function(){return Ci(this)},t.reportChanged=function(){xi(),Si(this),zi()},t.toString=function(){return this.name_},Vo(e,[{key:"isBeingObserved",get:function(){return $o(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isBeingObservedMask_,t)}},{key:"isPendingUnobservation",get:function(){return $o(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isPendingUnobservationMask_,t)}},{key:"diffValue",get:function(){return $o(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Bo(this.flags_,e.diffValueMask_,1===t)}}])}();er.isBeingObservedMask_=1,er.isPendingUnobservationMask_=2,er.diffValueMask_=4;var tr=Po("Atom",er);function nr(e,t,n){void 0===t&&(t=_o),void 0===n&&(n=_o);var a=new er(e);return t!==_o&&Wi(qi,a,t,undefined),n!==_o&&Qi(a,n),a}var ar={identity:function(e,t){return e===t},structural:function(e,t){return uc(e,t)},default:function(e,t){return Object.is?Object.is(e,t):e===t?0!==e||1/e==1/t:e!=e&&t!=t},shallow:function(e,t){return uc(e,t,1)}};function or(e,t,n){return is(e)?e:Array.isArray(e)?Fr.array(e,{name:n}):So(e)?Fr.object(e,void 0,{name:n}):No(e)?Fr.map(e,{name:n}):To(e)?Fr.set(e,{name:n}):"function"!=typeof e||Hi(e)||rs(e)?e:Eo(e)?as(e):Fi(n,e)}function rr(e){return e}var ir="override";function sr(e,t){return{annotationType_:e,options_:t,make_:cr,extend_:lr,decorate_20223_:ur}}function cr(e,t,n,a){var o;if(null!=(o=this.options_)&&o.bound)return null===this.extend_(e,t,n,!1)?0:1;if(a===e.target_)return null===this.extend_(e,t,n,!1)?0:2;if(Hi(n.value))return 1;var r=pr(e,this,t,n,!1);return fo(a,t,r),2}function lr(e,t,n,a){var o=pr(e,this,t,n);return e.defineProperty_(t,o,a)}function ur(e,t){var n,a=t.kind,o=t.name,r=t.addInitializer,i=this,s=function(e){var t,n,a,r;return Jr(null!=(t=null==(n=i.options_)?void 0:n.name)?t:o.toString(),e,null!=(a=null==(r=i.options_)?void 0:r.autoAction)&&a)};return"field"==a?function(e){var t,n=e;return Hi(n)||(n=s(n)),null!=(t=i.options_)&&t.bound&&((n=n.bind(this)).isMobxAction=!0),n}:"method"==a?(Hi(e)||(e=s(e)),null!=(n=this.options_)&&n.bound&&r(function(){var e=this,t=e[o].bind(e);t.isMobxAction=!0,e[o]=t}),e):void lo("Cannot apply '"+i.annotationType_+"' to '"+String(o)+"' (kind: "+a+"):\n'"+i.annotationType_+"' can only be used on properties with a function value.")}function pr(e,t,n,a,o){var r,i,s,c,l,u,p,d;void 0===o&&(o=vi.safeDescriptors),d=a,t.annotationType_,d.value;var m,h=a.value;return null!=(r=t.options_)&&r.bound&&(h=h.bind(null!=(m=e.proxy_)?m:e.target_)),{value:Jr(null!=(i=null==(s=t.options_)?void 0:s.name)?i:n.toString(),h,null!=(c=null==(l=t.options_)?void 0:l.autoAction)&&c,null!=(u=t.options_)&&u.bound?null!=(p=e.proxy_)?p:e.target_:void 0),configurable:!o||e.isPlainObject_,enumerable:!1,writable:!o}}function dr(e,t){return{annotationType_:e,options_:t,make_:mr,extend_:hr,decorate_20223_:fr}}function mr(e,t,n,a){var o;if(a===e.target_)return null===this.extend_(e,t,n,!1)?0:2;if(null!=(o=this.options_)&&o.bound&&(!Ro(e.target_,t)||!rs(e.target_[t]))&&null===this.extend_(e,t,n,!1))return 0;if(rs(n.value))return 1;var r=gr(e,this,0,n,!1,!1);return fo(a,t,r),2}function hr(e,t,n,a){var o,r=gr(e,this,0,n,null==(o=this.options_)?void 0:o.bound);return e.defineProperty_(t,r,a)}function fr(e,t){var n,a=t.name,o=t.addInitializer;return rs(e)||(e=as(e)),null!=(n=this.options_)&&n.bound&&o(function(){var e=this,t=e[a].bind(e);t.isMobXFlow=!0,e[a]=t}),e}function gr(e,t,n,a,o,r){var i;void 0===r&&(r=vi.safeDescriptors),i=a,t.annotationType_,i.value;var s,c=a.value;return rs(c)||(c=as(c)),o&&((c=c.bind(null!=(s=e.proxy_)?s:e.target_)).isMobXFlow=!0),{value:c,configurable:!r||e.isPlainObject_,enumerable:!1,writable:!r}}function kr(e,t){return{annotationType_:e,options_:t,make_:br,extend_:yr,decorate_20223_:vr}}function br(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function yr(e,t,n,a){return o=n,this.annotationType_,o.get,e.defineComputedProperty_(t,Ko({},this.options_,{get:n.get,set:n.set}),a);var o}function vr(e,t){var n=this,a=t.name;return(0,t.addInitializer)(function(){var t=Fs(this)[Xo],o=Ko({},n.options_,{get:e,context:this});o.name||(o.name="ObservableObject."+a.toString()),t.values_.set(a,new ni(o))}),function(){return this[Xo].getObservablePropValue_(a)}}function wr(e,t){return{annotationType_:e,options_:t,make_:jr,extend_:_r,decorate_20223_:xr}}function jr(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function _r(e,t,n,a){var o,r;return this.annotationType_,e.defineObservableProperty_(t,n.value,null!=(o=null==(r=this.options_)?void 0:r.enhancer)?o:or,a)}function xr(e,t){var n=this,a=t.kind,o=t.name,r=new WeakSet;function i(e,t){var a,i,s=Fs(e)[Xo],c=new ti(t,null!=(a=null==(i=n.options_)?void 0:i.enhancer)?a:or,"ObservableObject."+o.toString(),!1);s.values_.set(o,c),r.add(e)}if("accessor"==a)return{get:function(){return r.has(this)||i(this,e.get.call(this)),this[Xo].getObservablePropValue_(o)},set:function(e){return r.has(this)||i(this,e),this[Xo].setObservablePropValue_(o,e)},init:function(e){return r.has(this)||i(this,e),e}}}var zr="true",Cr=Sr();function Sr(e){return{annotationType_:zr,options_:e,make_:Er,extend_:Or,decorate_20223_:Ar}}function Er(e,t,n,a){var o,r,i,s;if(n.get)return qr.make_(e,t,n,a);if(n.set){var c=Hi(n.set)?n.set:Jr(t.toString(),n.set);return a===e.target_?null===e.defineProperty_(t,{configurable:!vi.safeDescriptors||e.isPlainObject_,set:c})?0:2:(fo(a,t,{configurable:!0,set:c}),2)}if(a!==e.target_&&"function"==typeof n.value)return Eo(n.value)?(null!=(s=this.options_)&&s.autoBind?as.bound:as).make_(e,t,n,a):(null!=(i=this.options_)&&i.autoBind?Fi.bound:Fi).make_(e,t,n,a);var l,u=!1===(null==(o=this.options_)?void 0:o.deep)?Fr.ref:Fr;return"function"==typeof n.value&&null!=(r=this.options_)&&r.autoBind&&(n.value=n.value.bind(null!=(l=e.proxy_)?l:e.target_)),u.make_(e,t,n,a)}function Or(e,t,n,a){var o,r,i;return n.get?qr.extend_(e,t,n,a):n.set?e.defineProperty_(t,{configurable:!vi.safeDescriptors||e.isPlainObject_,set:Jr(t.toString(),n.set)},a):("function"==typeof n.value&&null!=(o=this.options_)&&o.autoBind&&(n.value=n.value.bind(null!=(i=e.proxy_)?i:e.target_)),(!1===(null==(r=this.options_)?void 0:r.deep)?Fr.ref:Fr).extend_(e,t,n,a))}function Ar(e,t){lo("'"+this.annotationType_+"' cannot be used as a decorator")}var Pr={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};function Nr(e){return e||Pr}Object.freeze(Pr);var Tr=wr("observable"),Ir=wr("observable.ref",{enhancer:rr}),Lr=wr("observable.shallow",{enhancer:function(e,t,n){return null==e||Ks(e)||Es(e)||Ts(e)||Rs(e)?e:Array.isArray(e)?Fr.array(e,{name:n,deep:!1}):So(e)?Fr.object(e,void 0,{name:n,deep:!1}):No(e)?Fr.map(e,{name:n,deep:!1}):To(e)?Fr.set(e,{name:n,deep:!1}):void 0}}),Dr=wr("observable.struct",{enhancer:function(e,t){return uc(e,t)?t:e}}),Rr=Yo(Tr);function Mr(e){return!0===e.deep?or:!1===e.deep?rr:(t=e.defaultDecorator)&&null!=(n=null==(a=t.options_)?void 0:a.enhancer)?n:or;var t,n,a}function $r(e,t,n){return Zo(t)?Tr.decorate_20223_(e,t):zo(t)?void Jo(e,t,Tr):is(e)?e:So(e)?Fr.object(e,t,n):Array.isArray(e)?Fr.array(e,t):No(e)?Fr.map(e,t):To(e)?Fr.set(e,t):"object"==typeof e&&null!==e?e:Fr.box(e,t)}mo($r,Rr);var Br,Ur,Fr=mo($r,{box:function(e,t){var n=Nr(t);return new ti(e,Mr(n),n.name,!0,n.equals)},array:function(e,t){var n=Nr(t);return(!1===vi.useProxies||!1===n.proxy?ac:ws)(e,Mr(n),n.name)},map:function(e,t){var n=Nr(t);return new Ns(e,Mr(n),n.name)},set:function(e,t){var n=Nr(t);return new Ds(e,Mr(n),n.name)},object:function(e,t,n){return sc(function(){return function(e,t,n,a){var o=Mo(t);return sc(function(){var t=Fs(e,a)[Xo];Lo(o).forEach(function(e){t.extend_(e,o[e],!n||!(e in n)||n[e])})}),e}(!1===vi.useProxies||!1===(null==n?void 0:n.proxy)?Fs({},n):function(e,t){var n,a;return wo(),null!=(a=(n=(e=Fs(e,t))[Xo]).proxy_)?a:n.proxy_=new Proxy(e,ls)}({},n),e,t)})},ref:Yo(Ir),shallow:Yo(Lr),deep:Rr,struct:Yo(Dr)}),Vr="computed",Hr=kr(Vr),Kr=kr("computed.struct",{equals:ar.structural}),qr=function(e,t){if(Zo(t))return Hr.decorate_20223_(e,t);if(zo(t))return Jo(e,t,Hr);if(So(e))return Yo(kr(Vr,e));var n=So(t)?t:{};return n.get=e,n.name||(n.name=e.name||""),new ni(n)};Object.assign(qr,Hr),qr.struct=Yo(Kr);var Gr=0,Qr=1,Wr=null!=(Br=null==(Ur=ho(function(){},"name"))?void 0:Ur.configurable)&&Br,Yr={value:"action",configurable:!0,writable:!1,enumerable:!1};function Jr(e,t,n,a){function o(){return Zr(0,n,t,a||this,arguments)}return void 0===n&&(n=!1),o.isMobxAction=!0,o.toString=function(){return t.toString()},Wr&&(Yr.value=e,fo(o,"name",Yr)),o}function Zr(e,t,n,a,o){var r=function(e,t){var n=vi.trackingDerivation,a=!t||!n;xi();var o=vi.allowStateChanges;a&&(di(),o=Xr(!0));var r={runAsAction_:a,prevDerivation_:n,prevAllowStateChanges_:o,prevAllowStateReads_:hi(!0),notifySpy_:!1,startTime_:0,actionId_:Qr++,parentActionId_:Gr};return Gr=r.actionId_,r}(0,t);try{return n.apply(a,o)}catch(e){throw r.error_=e,e}finally{!function(e){Gr!==e.actionId_&&lo(30),Gr=e.parentActionId_,void 0!==e.error_&&(vi.suppressReactionErrors=!0),ei(e.prevAllowStateChanges_),fi(e.prevAllowStateReads_),zi(),e.runAsAction_&&mi(e.prevDerivation_),vi.suppressReactionErrors=!1}(r)}}function Xr(e){var t=vi.allowStateChanges;return vi.allowStateChanges=e,t}function ei(e){vi.allowStateChanges=e}var ti=function(e){function t(t,n,a,o,r){var i;return void 0===a&&(a="ObservableValue"),void 0===o&&(o=!0),void 0===r&&(r=ar.default),(i=e.call(this,a)||this).enhancer=void 0,i.name_=void 0,i.equals=void 0,i.hasUnreportedChange_=!1,i.interceptors_=void 0,i.changeListeners_=void 0,i.value_=void 0,i.dehancer=void 0,i.enhancer=n,i.name_=a,i.equals=r,i.value_=n(t,void 0,a),i}qo(t,e);var n=t.prototype;return n.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},n.set=function(e){this.value_,(e=this.prepareNewValue_(e))!==vi.UNCHANGED&&this.setNewValue_(e)},n.prepareNewValue_=function(e){if(us(this)){var t=ds(this,{object:this,type:bs,newValue:e});if(!t)return vi.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value_,this.name_),this.equals(this.value_,e)?vi.UNCHANGED:e},n.setNewValue_=function(e){var t=this.value_;this.value_=e,this.reportChanged(),ms(this)&&fs(this,{type:bs,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.value_)},n.intercept_=function(e){return ps(this,e)},n.observe_=function(e,t){return t&&e({observableKind:"value",debugObjectName:this.name_,object:this,type:bs,newValue:this.value_,oldValue:void 0}),hs(this,e)},n.raw=function(){return this.value_},n.toJSON=function(){return this.get()},n.toString=function(){return this.name_+"["+this.value_+"]"},n.valueOf=function(){return Do(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},t}(er),ni=function(){function e(e){this.dependenciesState_=ai.NOT_TRACKING_,this.observing_=[],this.newObserving_=null,this.observers_=new Set,this.runId_=0,this.lastAccessedBy_=0,this.lowestObserverState_=ai.UP_TO_DATE_,this.unboundDepsCount_=0,this.value_=new ii(null),this.name_=void 0,this.triggeredBy_=void 0,this.flags_=0,this.derivation=void 0,this.setter_=void 0,this.isTracing_=oi.NONE,this.scope_=void 0,this.equals_=void 0,this.requiresReaction_=void 0,this.keepAlive_=void 0,this.onBOL=void 0,this.onBUOL=void 0,e.get||lo(31),this.derivation=e.get,this.name_=e.name||"ComputedValue",e.set&&(this.setter_=Jr("ComputedValue-setter",e.set)),this.equals_=e.equals||(e.compareStructural||e.struct?ar.structural:ar.default),this.scope_=e.context,this.requiresReaction_=e.requiresReaction,this.keepAlive_=!!e.keepAlive}var t=e.prototype;return t.onBecomeStale_=function(){var e;(e=this).lowestObserverState_===ai.UP_TO_DATE_&&(e.lowestObserverState_=ai.POSSIBLY_STALE_,e.observers_.forEach(function(e){e.dependenciesState_===ai.UP_TO_DATE_&&(e.dependenciesState_=ai.POSSIBLY_STALE_,e.onBecomeStale_())}))},t.onBO=function(){this.onBOL&&this.onBOL.forEach(function(e){return e()})},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach(function(e){return e()})},t.get=function(){if(this.isComputing&&lo(32,this.name_,this.derivation),0!==vi.inBatch||0!==this.observers_.size||this.keepAlive_){if(Ci(this),ci(this)){var e=vi.trackingContext;this.keepAlive_&&!e&&(vi.trackingContext=this),this.trackAndCompute()&&((t=this).lowestObserverState_!==ai.STALE_&&(t.lowestObserverState_=ai.STALE_,t.observers_.forEach(function(e){e.dependenciesState_===ai.POSSIBLY_STALE_?e.dependenciesState_=ai.STALE_:e.dependenciesState_===ai.UP_TO_DATE_&&(t.lowestObserverState_=ai.UP_TO_DATE_)}))),vi.trackingContext=e}}else ci(this)&&(this.warnAboutUntrackedRead_(),xi(),this.value_=this.computeValue_(!1),zi());var t,n=this.value_;if(si(n))throw n.cause;return n},t.set=function(e){if(this.setter_){this.isRunningSetter&&lo(33,this.name_),this.isRunningSetter=!0;try{this.setter_.call(this.scope_,e)}finally{this.isRunningSetter=!1}}else lo(34,this.name_)},t.trackAndCompute=function(){var e=this.value_,t=this.dependenciesState_===ai.NOT_TRACKING_,n=this.computeValue_(!0),a=t||si(e)||si(n)||!this.equals_(e,n);return a&&(this.value_=n),a},t.computeValue_=function(e){this.isComputing=!0;var t,n=Xr(!1);if(e)t=li(this,this.derivation,this.scope_);else if(!0===vi.disableErrorBoundaries)t=this.derivation.call(this.scope_);else try{t=this.derivation.call(this.scope_)}catch(e){t=new ii(e)}return ei(n),this.isComputing=!1,t},t.suspend_=function(){this.keepAlive_||(ui(this),this.value_=void 0)},t.observe_=function(e,t){var n=this,a=!0,o=void 0;return function(e,t){var n,a,o,r;void 0===t&&(t=bo);var i,s=null!=(n=null==(a=t)?void 0:a.name)?n:"Autorun";if(t.scheduler||t.delay){var c=function(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:Ki}(t),l=!1;i=new Ei(s,function(){l||(l=!0,c(function(){l=!1,i.isDisposed||i.track(u)}))},t.onError,t.requiresObservable)}else i=new Ei(s,function(){this.track(u)},t.onError,t.requiresObservable);function u(){e(i)}return null!=(o=t)&&null!=(o=o.signal)&&o.aborted||i.schedule_(),i.getDisposer_(null==(r=t)?void 0:r.signal)}(function(){var r=n.get();if(!a||t){var i=di();e({observableKind:"computed",debugObjectName:n.name_,type:bs,object:n,newValue:r,oldValue:o}),mi(i)}a=!1,o=r})},t.warnAboutUntrackedRead_=function(){},t.toString=function(){return this.name_+"["+this.derivation.toString()+"]"},t.valueOf=function(){return Do(this.get())},t[Symbol.toPrimitive]=function(){return this.valueOf()},Vo(e,[{key:"isComputing",get:function(){return $o(this.flags_,e.isComputingMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isComputingMask_,t)}},{key:"isRunningSetter",get:function(){return $o(this.flags_,e.isRunningSetterMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isRunningSetterMask_,t)}},{key:"isBeingObserved",get:function(){return $o(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isBeingObservedMask_,t)}},{key:"isPendingUnobservation",get:function(){return $o(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isPendingUnobservationMask_,t)}},{key:"diffValue",get:function(){return $o(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Bo(this.flags_,e.diffValueMask_,1===t)}}])}();ni.isComputingMask_=1,ni.isRunningSetterMask_=2,ni.isBeingObservedMask_=4,ni.isPendingUnobservationMask_=8,ni.diffValueMask_=16;var ai,oi,ri=Po("ComputedValue",ni);!function(e){e[e.NOT_TRACKING_=-1]="NOT_TRACKING_",e[e.UP_TO_DATE_=0]="UP_TO_DATE_",e[e.POSSIBLY_STALE_=1]="POSSIBLY_STALE_",e[e.STALE_=2]="STALE_"}(ai||(ai={})),function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(oi||(oi={}));var ii=function(e){this.cause=void 0,this.cause=e};function si(e){return e instanceof ii}function ci(e){switch(e.dependenciesState_){case ai.UP_TO_DATE_:return!1;case ai.NOT_TRACKING_:case ai.STALE_:return!0;case ai.POSSIBLY_STALE_:for(var t=hi(!0),n=di(),a=e.observing_,o=a.length,r=0;r<o;r++){var i=a[r];if(ri(i)){if(vi.disableErrorBoundaries)i.get();else try{i.get()}catch(e){return mi(n),fi(t),!0}if(e.dependenciesState_===ai.STALE_)return mi(n),fi(t),!0}}return gi(e),mi(n),fi(t),!1}}function li(e,t,n){var a=hi(!0);gi(e),e.newObserving_=new Array(0===e.runId_?100:e.observing_.length),e.unboundDepsCount_=0,e.runId_=++vi.runId;var o,r=vi.trackingDerivation;if(vi.trackingDerivation=e,vi.inBatch++,!0===vi.disableErrorBoundaries)o=t.call(n);else try{o=t.call(n)}catch(e){o=new ii(e)}return vi.inBatch--,vi.trackingDerivation=r,function(e){for(var t=e.observing_,n=e.observing_=e.newObserving_,a=ai.UP_TO_DATE_,o=0,r=e.unboundDepsCount_,i=0;i<r;i++){var s=n[i];0===s.diffValue&&(s.diffValue=1,o!==i&&(n[o]=s),o++),s.dependenciesState_>a&&(a=s.dependenciesState_)}for(n.length=o,e.newObserving_=null,r=t.length;r--;){var c=t[r];0===c.diffValue&&ji(c,e),c.diffValue=0}for(;o--;){var l=n[o];1===l.diffValue&&(l.diffValue=0,wi(l,e))}a!==ai.UP_TO_DATE_&&(e.dependenciesState_=a,e.onBecomeStale_())}(e),fi(a),o}function ui(e){var t=e.observing_;e.observing_=[];for(var n=t.length;n--;)ji(t[n],e);e.dependenciesState_=ai.NOT_TRACKING_}function pi(e){var t=di();try{return e()}finally{mi(t)}}function di(){var e=vi.trackingDerivation;return vi.trackingDerivation=null,e}function mi(e){vi.trackingDerivation=e}function hi(e){var t=vi.allowStateReads;return vi.allowStateReads=e,t}function fi(e){vi.allowStateReads=e}function gi(e){if(e.dependenciesState_!==ai.UP_TO_DATE_){e.dependenciesState_=ai.UP_TO_DATE_;for(var t=e.observing_,n=t.length;n--;)t[n].lowestObserverState_=ai.UP_TO_DATE_}}var ki=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},bi=!0,yi=!1,vi=function(){var e=po();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(bi=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new ki).version&&(bi=!1),bi?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new ki):(setTimeout(function(){yi||lo(35)},1),new ki)}();function wi(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function ji(e,t){e.observers_.delete(t),0===e.observers_.size&&_i(e)}function _i(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,vi.pendingUnobservations.push(e))}function xi(){vi.inBatch++}function zi(){if(0===--vi.inBatch){Pi();for(var e=vi.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation=!1,0===n.observers_.size&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBUO()),n instanceof ni&&n.suspend_())}vi.pendingUnobservations=[]}}function Ci(e){var t=vi.trackingDerivation;return null!==t?(t.runId_!==e.lastAccessedBy_&&(e.lastAccessedBy_=t.runId_,t.newObserving_[t.unboundDepsCount_++]=e,!e.isBeingObserved&&vi.trackingContext&&(e.isBeingObserved=!0,e.onBO())),e.isBeingObserved):(0===e.observers_.size&&vi.inBatch>0&&_i(e),!1)}function Si(e){e.lowestObserverState_!==ai.STALE_&&(e.lowestObserverState_=ai.STALE_,e.observers_.forEach(function(e){e.dependenciesState_===ai.UP_TO_DATE_&&e.onBecomeStale_(),e.dependenciesState_=ai.STALE_}))}var Ei=function(){function e(e,t,n,a){void 0===e&&(e="Reaction"),this.name_=void 0,this.onInvalidate_=void 0,this.errorHandler_=void 0,this.requiresObservable_=void 0,this.observing_=[],this.newObserving_=[],this.dependenciesState_=ai.NOT_TRACKING_,this.runId_=0,this.unboundDepsCount_=0,this.flags_=0,this.isTracing_=oi.NONE,this.name_=e,this.onInvalidate_=t,this.errorHandler_=n,this.requiresObservable_=a}var t=e.prototype;return t.onBecomeStale_=function(){this.schedule_()},t.schedule_=function(){this.isScheduled||(this.isScheduled=!0,vi.pendingReactions.push(this),Pi())},t.runReaction_=function(){if(!this.isDisposed){xi(),this.isScheduled=!1;var e=vi.trackingContext;if(vi.trackingContext=this,ci(this)){this.isTrackPending=!0;try{this.onInvalidate_()}catch(e){this.reportExceptionInDerivation_(e)}}vi.trackingContext=e,zi()}},t.track=function(e){if(!this.isDisposed){xi(),this.isRunning=!0;var t=vi.trackingContext;vi.trackingContext=this;var n=li(this,e,void 0);vi.trackingContext=t,this.isRunning=!1,this.isTrackPending=!1,this.isDisposed&&ui(this),si(n)&&this.reportExceptionInDerivation_(n.cause),zi()}},t.reportExceptionInDerivation_=function(e){var t=this;if(this.errorHandler_)this.errorHandler_(e,this);else{if(vi.disableErrorBoundaries)throw e;var n="[mobx] uncaught error in '"+this+"'";vi.suppressReactionErrors||console.error(n,e),vi.globalReactionErrorHandlers.forEach(function(n){return n(e,t)})}},t.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.isRunning||(xi(),ui(this),zi()))},t.getDisposer_=function(e){var t=this,n=function n(){t.dispose(),null==e||null==e.removeEventListener||e.removeEventListener("abort",n)};return null==e||null==e.addEventListener||e.addEventListener("abort",n),n[Xo]=this,"dispose"in Symbol&&"symbol"==typeof Symbol.dispose&&(n[Symbol.dispose]=n),n},t.toString=function(){return"Reaction["+this.name_+"]"},t.trace=function(e){void 0===e&&(e=!1)},Vo(e,[{key:"isDisposed",get:function(){return $o(this.flags_,e.isDisposedMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isDisposedMask_,t)}},{key:"isScheduled",get:function(){return $o(this.flags_,e.isScheduledMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isScheduledMask_,t)}},{key:"isTrackPending",get:function(){return $o(this.flags_,e.isTrackPendingMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isTrackPendingMask_,t)}},{key:"isRunning",get:function(){return $o(this.flags_,e.isRunningMask_)},set:function(t){this.flags_=Bo(this.flags_,e.isRunningMask_,t)}},{key:"diffValue",get:function(){return $o(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Bo(this.flags_,e.diffValueMask_,1===t)}}])}();Ei.isDisposedMask_=1,Ei.isScheduledMask_=2,Ei.isTrackPendingMask_=4,Ei.isRunningMask_=8,Ei.diffValueMask_=16;var Oi=100,Ai=function(e){return e()};function Pi(){vi.inBatch>0||vi.isRunningReactions||Ai(Ni)}function Ni(){vi.isRunningReactions=!0;for(var e=vi.pendingReactions,t=0;e.length>0;){++t===Oi&&(console.error("[mobx] cycle in reaction: "+e[0]),e.splice(0));for(var n=e.splice(0),a=0,o=n.length;a<o;a++)n[a].runReaction_()}vi.isRunningReactions=!1}var Ti=Po("Reaction",Ei),Ii="action",Li="autoAction",Di=sr(Ii),Ri=sr("action.bound",{bound:!0}),Mi=sr(Li,{autoAction:!0}),$i=sr("autoAction.bound",{autoAction:!0,bound:!0});function Bi(e){return function(t,n){return xo(t)?Jr(t.name||"<unnamed action>",t,e):xo(n)?Jr(t,n,e):Zo(n)?(e?Mi:Di).decorate_20223_(t,n):zo(n)?Jo(t,n,e?Mi:Di):zo(t)?Yo(sr(e?Li:Ii,{name:t,autoAction:e})):void 0}}var Ui=Bi(!1);Object.assign(Ui,Di);var Fi=Bi(!0);function Vi(e){return Zr(e.name,!1,e,this,void 0)}function Hi(e){return xo(e)&&!0===e.isMobxAction}Object.assign(Fi,Mi),Ui.bound=Yo(Ri),Fi.bound=Yo($i);var Ki=function(e){return e()};var qi="onBO",Gi="onBUO";function Qi(e,t,n){return Wi(Gi,e,t,n)}function Wi(e,t,n,a){var o="function"==typeof a?oc(t,n):oc(t),r=xo(a)?a:n,i=e+"L";return o[i]?o[i].add(r):o[i]=new Set([r]),function(){var e=o[i];e&&(e.delete(r),0===e.size&&delete o[i])}}var Yi="always";function Ji(e){!0===e.isolateGlobalState&&function(){if((vi.pendingReactions.length||vi.inBatch||vi.isRunningReactions)&&lo(36),yi=!0,bi){var e=po();0===--e.__mobxInstanceCount&&(e.__mobxGlobals=void 0),vi=new ki}}();var t,n,a=e.useProxies,o=e.enforceActions;if(void 0!==a&&(vi.useProxies=a===Yi||"never"!==a&&"undefined"!=typeof Proxy),"ifavailable"===a&&(vi.verifyProxies=!0),void 0!==o){var r=o===Yi?Yi:"observed"===o;vi.enforceActions=r,vi.allowStateChanges=!0!==r&&r!==Yi}["computedRequiresReaction","reactionRequiresObservable","observableRequiresReaction","disableErrorBoundaries","safeDescriptors"].forEach(function(t){t in e&&(vi[t]=!!e[t])}),vi.allowStateReads=!vi.observableRequiresReaction,e.reactionScheduler&&(t=e.reactionScheduler,n=Ai,Ai=function(e){return t(function(){return n(e)})})}function Zi(e){var t,n={name:e.name_};return e.observing_&&e.observing_.length>0&&(n.dependencies=(t=e.observing_,Array.from(new Set(t))).map(Zi)),n}var Xi=0;function es(){this.message="FLOW_CANCELLED"}es.prototype=Object.create(Error.prototype);var ts=dr("flow"),ns=dr("flow.bound",{bound:!0}),as=Object.assign(function(e,t){if(Zo(t))return ts.decorate_20223_(e,t);if(zo(t))return Jo(e,t,ts);var n=e,a=n.name||"<unnamed flow>",o=function(){var e,t=arguments,o=++Xi,r=Ui(a+" - runid: "+o+" - init",n).apply(this,t),i=void 0,s=new Promise(function(t,n){var s=0;function c(e){var t;i=void 0;try{t=Ui(a+" - runid: "+o+" - yield "+s++,r.next).call(r,e)}catch(e){return n(e)}u(t)}function l(e){var t;i=void 0;try{t=Ui(a+" - runid: "+o+" - yield "+s++,r.throw).call(r,e)}catch(e){return n(e)}u(t)}function u(e){if(!xo(null==e?void 0:e.then))return e.done?t(e.value):(i=Promise.resolve(e.value)).then(c,l);e.then(u,n)}e=n,c(void 0)});return s.cancel=Ui(a+" - runid: "+o+" - cancel",function(){try{i&&os(i);var t=r.return(void 0),n=Promise.resolve(t.value);n.then(_o,_o),os(n),e(new es)}catch(t){e(t)}}),s};return o.isMobXFlow=!0,o},ts);function os(e){xo(e.cancel)&&e.cancel()}function rs(e){return!0===(null==e?void 0:e.isMobXFlow)}function is(e){return function(e,t){return!!e&&(void 0!==t?!!Ks(e)&&e[Xo].values_.has(t):Ks(e)||!!e[Xo]||tr(e)||Ti(e)||ri(e))}(e)}function ss(e,t){void 0===t&&(t=void 0),xi();try{return e.apply(t)}finally{zi()}}function cs(e){return e[Xo]}as.bound=Yo(ns);var ls={has:function(e,t){return cs(e).has_(t)},get:function(e,t){return cs(e).get_(t)},set:function(e,t,n){var a;return!!zo(t)&&(null==(a=cs(e).set_(t,n,!0))||a)},deleteProperty:function(e,t){var n;return!!zo(t)&&(null==(n=cs(e).delete_(t,!0))||n)},defineProperty:function(e,t,n){var a;return null==(a=cs(e).defineProperty_(t,n))||a},ownKeys:function(e){return cs(e).ownKeys_()},preventExtensions:function(e){lo(13)}};function us(e){return void 0!==e.interceptors_&&e.interceptors_.length>0}function ps(e,t){var n=e.interceptors_||(e.interceptors_=[]);return n.push(t),jo(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function ds(e,t){var n=di();try{for(var a=[].concat(e.interceptors_||[]),o=0,r=a.length;o<r&&((t=a[o](t))&&!t.type&&lo(14),t);o++);return t}finally{mi(n)}}function ms(e){return void 0!==e.changeListeners_&&e.changeListeners_.length>0}function hs(e,t){var n=e.changeListeners_||(e.changeListeners_=[]);return n.push(t),jo(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function fs(e,t){var n=di(),a=e.changeListeners_;if(a){for(var o=0,r=(a=a.slice()).length;o<r;o++)a[o](t);mi(n)}}function gs(e,t,n){return sc(function(){var a=Fs(e,n)[Xo];null!=t||(t=function(e){return Ro(e,Wo)||Oo(e,Wo,Ko({},e[Wo])),e[Wo]}(e)),Lo(t).forEach(function(e){return a.make_(e,t[e])})}),e}var ks="splice",bs="update",ys={get:function(e,t){var n=e[Xo];return t===Xo?n:"length"===t?n.getArrayLength_():"string"!=typeof t||isNaN(t)?Ro(js,t)?js[t]:e[t]:n.get_(parseInt(t))},set:function(e,t,n){var a=e[Xo];return"length"===t&&a.setArrayLength_(n),"symbol"==typeof t||isNaN(t)?e[t]=n:a.set_(parseInt(t),n),!0},preventExtensions:function(){lo(15)}},vs=function(){function e(e,t,n,a){void 0===e&&(e="ObservableArray"),this.owned_=void 0,this.legacyMode_=void 0,this.atom_=void 0,this.values_=[],this.interceptors_=void 0,this.changeListeners_=void 0,this.enhancer_=void 0,this.dehancer=void 0,this.proxy_=void 0,this.lastKnownLength_=0,this.owned_=n,this.legacyMode_=a,this.atom_=new er(e),this.enhancer_=function(e,n){return t(e,n,"ObservableArray[..]")}}var t=e.prototype;return t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.dehanceValues_=function(e){return void 0!==this.dehancer&&e.length>0?e.map(this.dehancer):e},t.intercept_=function(e){return ps(this,e)},t.observe_=function(e,t){return void 0===t&&(t=!1),t&&e({observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:"splice",index:0,added:this.values_.slice(),addedCount:this.values_.length,removed:[],removedCount:0}),hs(this,e)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(e){("number"!=typeof e||isNaN(e)||e<0)&&lo("Out of range: "+e);var t=this.values_.length;if(e!==t)if(e>t){for(var n=new Array(e-t),a=0;a<e-t;a++)n[a]=void 0;this.spliceWithArray_(t,0,n)}else this.spliceWithArray_(e,t-e)},t.updateArrayLength_=function(e,t){e!==this.lastKnownLength_&&lo(16),this.lastKnownLength_+=t,this.legacyMode_&&t>0&&nc(e+t+1)},t.spliceWithArray_=function(e,t,n){var a=this;this.atom_;var o=this.values_.length;if(void 0===e?e=0:e>o?e=o:e<0&&(e=Math.max(0,o+e)),t=1===arguments.length?o-e:null==t?0:Math.max(0,Math.min(t,o-e)),void 0===n&&(n=ko),us(this)){var r=ds(this,{object:this.proxy_,type:ks,index:e,removedCount:t,added:n});if(!r)return ko;t=r.removedCount,n=r.added}if(n=0===n.length?n:n.map(function(e){return a.enhancer_(e,void 0)}),this.legacyMode_){var i=n.length-t;this.updateArrayLength_(o,i)}var s=this.spliceItemsIntoValues_(e,t,n);return 0===t&&0===n.length||this.notifyArraySplice_(e,n,s),this.dehanceValues_(s)},t.spliceItemsIntoValues_=function(e,t,n){var a;if(n.length<1e4)return(a=this.values_).splice.apply(a,[e,t].concat(n));var o=this.values_.slice(e,e+t),r=this.values_.slice(e+t);this.values_.length+=n.length-t;for(var i=0;i<n.length;i++)this.values_[e+i]=n[i];for(var s=0;s<r.length;s++)this.values_[e+n.length+s]=r[s];return o},t.notifyArrayChildUpdate_=function(e,t,n){var a=!this.owned_&&!1,o=ms(this),r=o||a?{observableKind:"array",object:this.proxy_,type:bs,debugObjectName:this.atom_.name_,index:e,newValue:t,oldValue:n}:null;this.atom_.reportChanged(),o&&fs(this,r)},t.notifyArraySplice_=function(e,t,n){var a=!this.owned_&&!1,o=ms(this),r=o||a?{observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:ks,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;this.atom_.reportChanged(),o&&fs(this,r)},t.get_=function(e){if(!(this.legacyMode_&&e>=this.values_.length))return this.atom_.reportObserved(),this.dehanceValue_(this.values_[e]);console.warn("[mobx] Out of bounds read: "+e)},t.set_=function(e,t){var n=this.values_;if(this.legacyMode_&&e>n.length&&lo(17,e,n.length),e<n.length){this.atom_;var a=n[e];if(us(this)){var o=ds(this,{type:bs,object:this.proxy_,index:e,newValue:t});if(!o)return;t=o.newValue}(t=this.enhancer_(t,a))!==a&&(n[e]=t,this.notifyArrayChildUpdate_(e,t,a))}else{for(var r=new Array(e+1-n.length),i=0;i<r.length-1;i++)r[i]=void 0;r[r.length-1]=t,this.spliceWithArray_(n.length,0,r)}},e}();function ws(e,t,n,a){return void 0===n&&(n="ObservableArray"),void 0===a&&(a=!1),wo(),sc(function(){var o=new vs(n,t,a,!1);Ao(o.values_,Xo,o);var r=new Proxy(o.values_,ys);return o.proxy_=r,e&&e.length&&o.spliceWithArray_(0,0,e),r})}var js={clear:function(){return this.splice(0)},replace:function(e){var t=this[Xo];return t.spliceWithArray_(0,t.values_.length,e)},toJSON:function(){return this.slice()},splice:function(e,t){for(var n=arguments.length,a=new Array(n>2?n-2:0),o=2;o<n;o++)a[o-2]=arguments[o];var r=this[Xo];switch(arguments.length){case 0:return[];case 1:return r.spliceWithArray_(e);case 2:return r.spliceWithArray_(e,t)}return r.spliceWithArray_(e,t,a)},spliceWithArray:function(e,t,n){return this[Xo].spliceWithArray_(e,t,n)},push:function(){for(var e=this[Xo],t=arguments.length,n=new Array(t),a=0;a<t;a++)n[a]=arguments[a];return e.spliceWithArray_(e.values_.length,0,n),e.values_.length},pop:function(){return this.splice(Math.max(this[Xo].values_.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){for(var e=this[Xo],t=arguments.length,n=new Array(t),a=0;a<t;a++)n[a]=arguments[a];return e.spliceWithArray_(0,0,n),e.values_.length},reverse:function(){return vi.trackingDerivation&&lo(37,"reverse"),this.replace(this.slice().reverse()),this},sort:function(){vi.trackingDerivation&&lo(37,"sort");var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[Xo],n=t.dehanceValues_(t.values_).indexOf(e);return n>-1&&(this.splice(n,1),!0)}};function _s(e,t){"function"==typeof Array.prototype[e]&&(js[e]=t(e))}function xs(e){return function(){var t=this[Xo];t.atom_.reportObserved();var n=t.dehanceValues_(t.values_);return n[e].apply(n,arguments)}}function zs(e){return function(t,n){var a=this,o=this[Xo];return o.atom_.reportObserved(),o.dehanceValues_(o.values_)[e](function(e,o){return t.call(n,e,o,a)})}}function Cs(e){return function(){var t=this,n=this[Xo];n.atom_.reportObserved();var a=n.dehanceValues_(n.values_),o=arguments[0];return arguments[0]=function(e,n,a){return o(e,n,a,t)},a[e].apply(a,arguments)}}_s("at",xs),_s("concat",xs),_s("flat",xs),_s("includes",xs),_s("indexOf",xs),_s("join",xs),_s("lastIndexOf",xs),_s("slice",xs),_s("toString",xs),_s("toLocaleString",xs),_s("toSorted",xs),_s("toSpliced",xs),_s("with",xs),_s("every",zs),_s("filter",zs),_s("find",zs),_s("findIndex",zs),_s("findLast",zs),_s("findLastIndex",zs),_s("flatMap",zs),_s("forEach",zs),_s("map",zs),_s("some",zs),_s("toReversed",zs),_s("reduce",Cs),_s("reduceRight",Cs);var Ss=Po("ObservableArrayAdministration",vs);function Es(e){return Co(e)&&Ss(e[Xo])}var Os={},As="add",Ps="delete",Ns=function(){function e(e,t,n){var a=this;void 0===t&&(t=or),void 0===n&&(n="ObservableMap"),this.enhancer_=void 0,this.name_=void 0,this[Xo]=Os,this.data_=void 0,this.hasMap_=void 0,this.keysAtom_=void 0,this.interceptors_=void 0,this.changeListeners_=void 0,this.dehancer=void 0,this.enhancer_=t,this.name_=n,xo(Map)||lo(18),sc(function(){a.keysAtom_=nr("ObservableMap.keys()"),a.data_=new Map,a.hasMap_=new Map,e&&a.merge(e)})}var t=e.prototype;return t.has_=function(e){return this.data_.has(e)},t.has=function(e){var t=this;if(!vi.trackingDerivation)return this.has_(e);var n=this.hasMap_.get(e);if(!n){var a=n=new ti(this.has_(e),rr,"ObservableMap.key?",!1);this.hasMap_.set(e,a),Qi(a,function(){return t.hasMap_.delete(e)})}return n.get()},t.set=function(e,t){var n=this.has_(e);if(us(this)){var a=ds(this,{type:n?bs:As,object:this,newValue:t,name:e});if(!a)return this;t=a.newValue}return n?this.updateValue_(e,t):this.addValue_(e,t),this},t.delete=function(e){var t=this;if(this.keysAtom_,us(this)&&!ds(this,{type:Ps,object:this,name:e}))return!1;if(this.has_(e)){var n=ms(this),a=n?{observableKind:"map",debugObjectName:this.name_,type:Ps,object:this,oldValue:this.data_.get(e).value_,name:e}:null;return ss(function(){var n;t.keysAtom_.reportChanged(),null==(n=t.hasMap_.get(e))||n.setNewValue_(!1),t.data_.get(e).setNewValue_(void 0),t.data_.delete(e)}),n&&fs(this,a),!0}return!1},t.updateValue_=function(e,t){var n=this.data_.get(e);if((t=n.prepareNewValue_(t))!==vi.UNCHANGED){var a=ms(this),o=a?{observableKind:"map",debugObjectName:this.name_,type:bs,object:this,oldValue:n.value_,name:e,newValue:t}:null;n.setNewValue_(t),a&&fs(this,o)}},t.addValue_=function(e,t){var n=this;this.keysAtom_,ss(function(){var a,o=new ti(t,n.enhancer_,"ObservableMap.key",!1);n.data_.set(e,o),t=o.value_,null==(a=n.hasMap_.get(e))||a.setNewValue_(!0),n.keysAtom_.reportChanged()});var a=ms(this),o=a?{observableKind:"map",debugObjectName:this.name_,type:As,object:this,name:e,newValue:t}:null;a&&fs(this,o)},t.get=function(e){return this.has(e)?this.dehanceValue_(this.data_.get(e).get()):this.dehanceValue_(void 0)},t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.keys=function(){return this.keysAtom_.reportObserved(),this.data_.keys()},t.values=function(){var e=this,t=this.keys();return Is({next:function(){var n=t.next(),a=n.done,o=n.value;return{done:a,value:a?void 0:e.get(o)}}})},t.entries=function(){var e=this,t=this.keys();return Is({next:function(){var n=t.next(),a=n.done,o=n.value;return{done:a,value:a?void 0:[o,e.get(o)]}}})},t[Symbol.iterator]=function(){return this.entries()},t.forEach=function(e,t){for(var n,a=Ho(this);!(n=a()).done;){var o=n.value,r=o[0],i=o[1];e.call(t,i,r,this)}},t.merge=function(e){var t=this;return Ts(e)&&(e=new Map(e)),ss(function(){So(e)?function(e){var t=Object.keys(e);if(!Io)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter(function(t){return go.propertyIsEnumerable.call(e,t)})):t}(e).forEach(function(n){return t.set(n,e[n])}):Array.isArray(e)?e.forEach(function(e){var n=e[0],a=e[1];return t.set(n,a)}):No(e)?(function(e){var t=Object.getPrototypeOf(e),n=Object.getPrototypeOf(t);return null===Object.getPrototypeOf(n)}(e)||lo(19,e),e.forEach(function(e,n){return t.set(n,e)})):null!=e&&lo(20,e)}),this},t.clear=function(){var e=this;ss(function(){pi(function(){for(var t,n=Ho(e.keys());!(t=n()).done;){var a=t.value;e.delete(a)}})})},t.replace=function(e){var t=this;return ss(function(){for(var n,a=function(e){if(No(e)||Ts(e))return e;if(Array.isArray(e))return new Map(e);if(So(e)){var t=new Map;for(var n in e)t.set(n,e[n]);return t}return lo(21,e)}(e),o=new Map,r=!1,i=Ho(t.data_.keys());!(n=i()).done;){var s=n.value;if(!a.has(s))if(t.delete(s))r=!0;else{var c=t.data_.get(s);o.set(s,c)}}for(var l,u=Ho(a.entries());!(l=u()).done;){var p=l.value,d=p[0],m=p[1],h=t.data_.has(d);if(t.set(d,m),t.data_.has(d)){var f=t.data_.get(d);o.set(d,f),h||(r=!0)}}if(!r)if(t.data_.size!==o.size)t.keysAtom_.reportChanged();else for(var g=t.data_.keys(),k=o.keys(),b=g.next(),y=k.next();!b.done;){if(b.value!==y.value){t.keysAtom_.reportChanged();break}b=g.next(),y=k.next()}t.data_=o}),this},t.toString=function(){return"[object ObservableMap]"},t.toJSON=function(){return Array.from(this)},t.observe_=function(e,t){return hs(this,e)},t.intercept_=function(e){return ps(this,e)},Vo(e,[{key:"size",get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return"Map"}}])}(),Ts=Po("ObservableMap",Ns);function Is(e){return e[Symbol.toStringTag]="MapIterator",hc(e)}var Ls={},Ds=function(){function e(e,t,n){var a=this;void 0===t&&(t=or),void 0===n&&(n="ObservableSet"),this.name_=void 0,this[Xo]=Ls,this.data_=new Set,this.atom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.dehancer=void 0,this.enhancer_=void 0,this.name_=n,xo(Set)||lo(22),this.enhancer_=function(e,a){return t(e,a,n)},sc(function(){a.atom_=nr(a.name_),e&&a.replace(e)})}var t=e.prototype;return t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.clear=function(){var e=this;ss(function(){pi(function(){for(var t,n=Ho(e.data_.values());!(t=n()).done;){var a=t.value;e.delete(a)}})})},t.forEach=function(e,t){for(var n,a=Ho(this);!(n=a()).done;){var o=n.value;e.call(t,o,o,this)}},t.add=function(e){var t=this;if(this.atom_,us(this)){var n=ds(this,{type:As,object:this,newValue:e});if(!n)return this;e=n.newValue}if(!this.has(e)){ss(function(){t.data_.add(t.enhancer_(e,void 0)),t.atom_.reportChanged()});var a=ms(this),o=a?{observableKind:"set",debugObjectName:this.name_,type:As,object:this,newValue:e}:null;a&&fs(this,o)}return this},t.delete=function(e){var t=this;if(us(this)&&!ds(this,{type:Ps,object:this,oldValue:e}))return!1;if(this.has(e)){var n=ms(this),a=n?{observableKind:"set",debugObjectName:this.name_,type:Ps,object:this,oldValue:e}:null;return ss(function(){t.atom_.reportChanged(),t.data_.delete(e)}),n&&fs(this,a),!0}return!1},t.has=function(e){return this.atom_.reportObserved(),this.data_.has(this.dehanceValue_(e))},t.entries=function(){var e=this.values();return Ms({next:function(){var t=e.next(),n=t.value,a=t.done;return a?{value:void 0,done:a}:{value:[n,n],done:a}}})},t.keys=function(){return this.values()},t.values=function(){this.atom_.reportObserved();var e=this,t=this.data_.values();return Ms({next:function(){var n=t.next(),a=n.value,o=n.done;return o?{value:void 0,done:o}:{value:e.dehanceValue_(a),done:o}}})},t.intersection=function(e){return To(e)&&!Rs(e)?e.intersection(this):new Set(this).intersection(e)},t.union=function(e){return To(e)&&!Rs(e)?e.union(this):new Set(this).union(e)},t.difference=function(e){return new Set(this).difference(e)},t.symmetricDifference=function(e){return To(e)&&!Rs(e)?e.symmetricDifference(this):new Set(this).symmetricDifference(e)},t.isSubsetOf=function(e){return new Set(this).isSubsetOf(e)},t.isSupersetOf=function(e){return new Set(this).isSupersetOf(e)},t.isDisjointFrom=function(e){return To(e)&&!Rs(e)?e.isDisjointFrom(this):new Set(this).isDisjointFrom(e)},t.replace=function(e){var t=this;return Rs(e)&&(e=new Set(e)),ss(function(){Array.isArray(e)||To(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):null!=e&&lo("Cannot initialize set from "+e)}),this},t.observe_=function(e,t){return hs(this,e)},t.intercept_=function(e){return ps(this,e)},t.toJSON=function(){return Array.from(this)},t.toString=function(){return"[object ObservableSet]"},t[Symbol.iterator]=function(){return this.values()},Vo(e,[{key:"size",get:function(){return this.atom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return"Set"}}])}(),Rs=Po("ObservableSet",Ds);function Ms(e){return e[Symbol.toStringTag]="SetIterator",hc(e)}var $s=Object.create(null),Bs="remove",Us=function(){function e(e,t,n,a){void 0===t&&(t=new Map),void 0===a&&(a=Cr),this.target_=void 0,this.values_=void 0,this.name_=void 0,this.defaultAnnotation_=void 0,this.keysAtom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.proxy_=void 0,this.isPlainObject_=void 0,this.appliedAnnotations_=void 0,this.pendingKeys_=void 0,this.target_=e,this.values_=t,this.name_=n,this.defaultAnnotation_=a,this.keysAtom_=new er("ObservableObject.keys"),this.isPlainObject_=So(this.target_)}var t=e.prototype;return t.getObservablePropValue_=function(e){return this.values_.get(e).get()},t.setObservablePropValue_=function(e,t){var n=this.values_.get(e);if(n instanceof ni)return n.set(t),!0;if(us(this)){var a=ds(this,{type:bs,object:this.proxy_||this.target_,name:e,newValue:t});if(!a)return null;t=a.newValue}if((t=n.prepareNewValue_(t))!==vi.UNCHANGED){var o=ms(this),r=o?{type:bs,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,oldValue:n.value_,name:e,newValue:t}:null;n.setNewValue_(t),o&&fs(this,r)}return!0},t.get_=function(e){return vi.trackingDerivation&&!Ro(this.target_,e)&&this.has_(e),this.target_[e]},t.set_=function(e,t,n){return void 0===n&&(n=!1),Ro(this.target_,e)?this.values_.has(e)?this.setObservablePropValue_(e,t):n?Reflect.set(this.target_,e,t):(this.target_[e]=t,!0):this.extend_(e,{value:t,enumerable:!0,writable:!0,configurable:!0},this.defaultAnnotation_,n)},t.has_=function(e){if(!vi.trackingDerivation)return e in this.target_;this.pendingKeys_||(this.pendingKeys_=new Map);var t=this.pendingKeys_.get(e);return t||(t=new ti(e in this.target_,rr,"ObservableObject.key?",!1),this.pendingKeys_.set(e,t)),t.get()},t.make_=function(e,t){if(!0===t&&(t=this.defaultAnnotation_),!1!==t){if(!(e in this.target_)){var n;if(null!=(n=this.target_[Wo])&&n[e])return;lo(1,t.annotationType_,this.name_+"."+e.toString())}for(var a=this.target_;a&&a!==go;){var o=ho(a,e);if(o){var r=t.make_(this,e,o,a);if(0===r)return;if(1===r)break}a=Object.getPrototypeOf(a)}qs(this,0,e)}},t.extend_=function(e,t,n,a){if(void 0===a&&(a=!1),!0===n&&(n=this.defaultAnnotation_),!1===n)return this.defineProperty_(e,t,a);var o=n.extend_(this,e,t,a);return o&&qs(this,0,e),o},t.defineProperty_=function(e,t,n){void 0===n&&(n=!1),this.keysAtom_;try{xi();var a=this.delete_(e);if(!a)return a;if(us(this)){var o=ds(this,{object:this.proxy_||this.target_,name:e,type:As,newValue:t.value});if(!o)return null;var r=o.newValue;t.value!==r&&(t=Ko({},t,{value:r}))}if(n){if(!Reflect.defineProperty(this.target_,e,t))return!1}else fo(this.target_,e,t);this.notifyPropertyAddition_(e,t.value)}finally{zi()}return!0},t.defineObservableProperty_=function(e,t,n,a){void 0===a&&(a=!1),this.keysAtom_;try{xi();var o=this.delete_(e);if(!o)return o;if(us(this)){var r=ds(this,{object:this.proxy_||this.target_,name:e,type:As,newValue:t});if(!r)return null;t=r.newValue}var i=Hs(e),s={configurable:!vi.safeDescriptors||this.isPlainObject_,enumerable:!0,get:i.get,set:i.set};if(a){if(!Reflect.defineProperty(this.target_,e,s))return!1}else fo(this.target_,e,s);var c=new ti(t,n,"ObservableObject.key",!1);this.values_.set(e,c),this.notifyPropertyAddition_(e,c.value_)}finally{zi()}return!0},t.defineComputedProperty_=function(e,t,n){void 0===n&&(n=!1),this.keysAtom_;try{xi();var a=this.delete_(e);if(!a)return a;if(us(this)&&!ds(this,{object:this.proxy_||this.target_,name:e,type:As,newValue:void 0}))return null;t.name||(t.name="ObservableObject.key"),t.context=this.proxy_||this.target_;var o=Hs(e),r={configurable:!vi.safeDescriptors||this.isPlainObject_,enumerable:!1,get:o.get,set:o.set};if(n){if(!Reflect.defineProperty(this.target_,e,r))return!1}else fo(this.target_,e,r);this.values_.set(e,new ni(t)),this.notifyPropertyAddition_(e,void 0)}finally{zi()}return!0},t.delete_=function(e,t){if(void 0===t&&(t=!1),this.keysAtom_,!Ro(this.target_,e))return!0;if(us(this)&&!ds(this,{object:this.proxy_||this.target_,name:e,type:Bs}))return null;try{var n;xi();var a,o=ms(this),r=this.values_.get(e),i=void 0;if(!r&&o&&(i=null==(a=ho(this.target_,e))?void 0:a.value),t){if(!Reflect.deleteProperty(this.target_,e))return!1}else delete this.target_[e];if(r&&(this.values_.delete(e),r instanceof ti&&(i=r.value_),Si(r)),this.keysAtom_.reportChanged(),null==(n=this.pendingKeys_)||null==(n=n.get(e))||n.set(e in this.target_),o){var s={type:Bs,observableKind:"object",object:this.proxy_||this.target_,debugObjectName:this.name_,oldValue:i,name:e};o&&fs(this,s)}}finally{zi()}return!0},t.observe_=function(e,t){return hs(this,e)},t.intercept_=function(e){return ps(this,e)},t.notifyPropertyAddition_=function(e,t){var n,a=ms(this);if(a){var o=a?{type:As,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,name:e,newValue:t}:null;a&&fs(this,o)}null==(n=this.pendingKeys_)||null==(n=n.get(e))||n.set(!0),this.keysAtom_.reportChanged()},t.ownKeys_=function(){return this.keysAtom_.reportObserved(),Lo(this.target_)},t.keys_=function(){return this.keysAtom_.reportObserved(),Object.keys(this.target_)},e}();function Fs(e,t){var n;if(Ro(e,Xo))return e;var a=null!=(n=null==t?void 0:t.name)?n:"ObservableObject",o=new Us(e,new Map,String(a),function(e){var t;return e?null!=(t=e.defaultDecorator)?t:Sr(e):void 0}(t));return Oo(e,Xo,o),e}var Vs=Po("ObservableObjectAdministration",Us);function Hs(e){return $s[e]||($s[e]={get:function(){return this[Xo].getObservablePropValue_(e)},set:function(t){return this[Xo].setObservablePropValue_(e,t)}})}function Ks(e){return!!Co(e)&&Vs(e[Xo])}function qs(e,t,n){var a;null==(a=e.target_[Wo])||delete a[n]}var Gs,Qs,Ws=ec(0),Ys=function(){var e=!1,t={};return Object.defineProperty(t,"0",{set:function(){e=!0}}),Object.create(t)[0]=1,!1===e}(),Js=0,Zs=function(){};Gs=Zs,Qs=Array.prototype,Object.setPrototypeOf?Object.setPrototypeOf(Gs.prototype,Qs):void 0!==Gs.prototype.__proto__?Gs.prototype.__proto__=Qs:Gs.prototype=Qs;var Xs=function(e){function t(t,n,a,o){var r;return void 0===a&&(a="ObservableArray"),void 0===o&&(o=!1),r=e.call(this)||this,sc(function(){var e=new vs(a,n,o,!0);e.proxy_=r,Ao(r,Xo,e),t&&t.length&&r.spliceWithArray(0,0,t),Ys&&Object.defineProperty(r,"0",Ws)}),r}qo(t,e);var n=t.prototype;return n.concat=function(){this[Xo].atom_.reportObserved();for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return Array.prototype.concat.apply(this.slice(),t.map(function(e){return Es(e)?e.slice():e}))},n[Symbol.iterator]=function(){var e=this,t=0;return hc({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},Vo(t,[{key:"length",get:function(){return this[Xo].getArrayLength_()},set:function(e){this[Xo].setArrayLength_(e)}},{key:Symbol.toStringTag,get:function(){return"Array"}}])}(Zs);function ec(e){return{enumerable:!1,configurable:!0,get:function(){return this[Xo].get_(e)},set:function(t){this[Xo].set_(e,t)}}}function tc(e){fo(Xs.prototype,""+e,ec(e))}function nc(e){if(e>Js){for(var t=Js;t<e+100;t++)tc(t);Js=e}}function ac(e,t,n){return new Xs(e,t,n)}function oc(e,t){if("object"==typeof e&&null!==e){if(Es(e))return void 0!==t&&lo(23),e[Xo].atom_;if(Rs(e))return e.atom_;if(Ts(e)){if(void 0===t)return e.keysAtom_;var n=e.data_.get(t)||e.hasMap_.get(t);return n||lo(25,t,ic(e)),n}if(Ks(e)){if(!t)return lo(26);var a=e[Xo].values_.get(t);return a||lo(27,t,ic(e)),a}if(tr(e)||ri(e)||Ti(e))return e}else if(xo(e)&&Ti(e[Xo]))return e[Xo];lo(28)}function rc(e,t){return e||lo(29),void 0!==t?rc(oc(e,t)):tr(e)||ri(e)||Ti(e)||Ts(e)||Rs(e)?e:e[Xo]?e[Xo]:void lo(24,e)}function ic(e,t){var n;if(void 0!==t)n=oc(e,t);else{if(Hi(e))return e.name;n=Ks(e)||Ts(e)||Rs(e)?rc(e):oc(e)}return n.name_}function sc(e){var t=di(),n=Xr(!0);xi();try{return e()}finally{zi(),ei(n),mi(t)}}Object.entries(js).forEach(function(e){var t=e[0],n=e[1];"concat"!==t&&Oo(Xs.prototype,t,n)}),nc(1e3);var cc,lc=go.toString;function uc(e,t,n){return void 0===n&&(n=-1),pc(e,t,n)}function pc(e,t,n,a,o){if(e===t)return 0!==e||1/e==1/t;if(null==e||null==t)return!1;if(e!=e)return t!=t;var r=typeof e;if("function"!==r&&"object"!==r&&"object"!=typeof t)return!1;var i=lc.call(e);if(i!==lc.call(t))return!1;switch(i){case"[object RegExp]":case"[object String]":return""+e==""+t;case"[object Number]":return+e!=+e?+t!=+t:0===+e?1/+e==1/t:+e===+t;case"[object Date]":case"[object Boolean]":return+e===+t;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t);case"[object Map]":case"[object Set]":n>=0&&n++}e=dc(e),t=dc(t);var s="[object Array]"===i;if(!s){if("object"!=typeof e||"object"!=typeof t)return!1;var c=e.constructor,l=t.constructor;if(c!==l&&!(xo(c)&&c instanceof c&&xo(l)&&l instanceof l)&&"constructor"in e&&"constructor"in t)return!1}if(0===n)return!1;n<0&&(n=-1),o=o||[];for(var u=(a=a||[]).length;u--;)if(a[u]===e)return o[u]===t;if(a.push(e),o.push(t),s){if((u=e.length)!==t.length)return!1;for(;u--;)if(!pc(e[u],t[u],n-1,a,o))return!1}else{var p=Object.keys(e),d=p.length;if(Object.keys(t).length!==d)return!1;for(var m=0;m<d;m++){var h=p[m];if(!Ro(t,h)||!pc(e[h],t[h],n-1,a,o))return!1}}return a.pop(),o.pop(),!0}function dc(e){return Es(e)?e.slice():No(e)||Ts(e)||To(e)||Rs(e)?Array.from(e.entries()):e}var mc=(null==(cc=po().Iterator)?void 0:cc.prototype)||{};function hc(e){return e[Symbol.iterator]=fc,Object.assign(Object.create(mc),e)}function fc(){return this}["Symbol","Map","Set"].forEach(function(e){void 0===po()[e]&&lo("MobX requires global '"+e+"' to be available or polyfilled")}),"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:function(e){return console.warn("[mobx.spy] Is a no-op in production builds"),function(){}},extras:{getDebugName:ic},$mobx:Xo});const gc={USD:1,EUR:.92,GBP:.79,CAD:1.35,AUD:1.54,CHF:.89,JPY:149.5,NOK:10.8,SEK:10.7,DKK:6.9,PLN:4.1,BRL:5,INR:83.2,ARS:350,CLP:880,COP:4100,MXN:17.5,PEN:3.8,UYU:39.5};function kc(e){return gc[e]||1}function bc(e,t){return e.toLocaleString(gt(),{style:"currency",currency:t,currencyDisplay:"narrowSymbol",minimumFractionDigits:0})}const yc=new class{displayPrices=null;areDisplayPricesLoading=!1;constructor(){this.setDisplayPrices=this.setDisplayPrices.bind(this),this.getListingDirectoPrice=this.getListingDirectoPrice.bind(this),gs(this,{displayPrices:Fr,areDisplayPricesLoading:Fr,setDisplayPrices:Ui,getListingDirectoPrice:Ui})}setDisplayPrices(e){this.displayPrices=e}async getListingDirectoPrice(e,t){try{const{checkin:n,checkout:a,...o}=await Wu(window.location.href),r=Hu.get();if(!r||r&&!await r.canMakePricingRequest())return null;Vi(()=>{yc.areDisplayPricesLoading=!0});const i={url:e.directo_url,checkin:n,checkout:a,...o,isUrlParametrised:e.stay_parametrised??!1,..."BOOKING"===r.platform?{hotelId:r.getHotelIdInDetail()}:{}},{value:s,elapsed:c}=await async function(){const e=performance.now();return{value:await async function(e){return await y().get("/shop",{params:e,parser:new p})}(i),elapsed:performance.now()-e}}(),l=null!==s.price?function(e){if(Number.isNaN(e.otaTotalPrice)||Number.isNaN(e.directoPrice)||e.otaTotalPrice<=0||e.directoPrice<=0)return null;const t=e.directoIsNightly&&e.lengthOfStay?e.directoPrice*e.lengthOfStay:e.directoPrice,{price1:n,price2:a}=function(e,t,n,a,o){const r=e/kc(t),i=n/kc(a),s=kc(o);return{price1:r*s,price2:i*s,currency:o}}(e.otaTotalPrice,e.otaCurrency,t,e.directoCurrency,e.displayCurrency),o=fa(n),r=fa(a),i=Math.max(o-r,0),s=i>0;return{displayedOtaPrice:o,displayedDirectoPrice:r,displayedPriceDifference:i,displayedCurrency:e.displayCurrency,thereIsDiscount:s}}({otaTotalPrice:t.totalPrice,otaCurrency:t.currency,directoPrice:s.price,directoIsNightly:s.nightly||!1,directoCurrency:s.currency||"USD",lengthOfStay:await Ku(),displayCurrency:i.currency||"USD"}):null;return yc.setDisplayPrices(l),{displayPrices:l,priceFromShop:s,shopEndpointResponseTimeMs:c,pricingParams:i}}catch(e){throw yc.setDisplayPrices(null),e}finally{Vi(()=>{yc.areDisplayPricesLoading=!1})}}};var vc=n(155);const wc=({width:e="29",height:t="31",viewBox:n="0 0 29 31",fill:a="none",style:o={}})=>(0,so.jsxs)("svg",{width:e,height:t,viewBox:n,style:o,fill:a,xmlns:"http://www.w3.org/2000/svg",children:[(0,so.jsx)("path",{d:"M23.0716 26.6715C21.7556 25.5134 20.4569 24.3399 19.1234 23.1974C18.8924 22.9998 18.7424 23.0044 18.5196 23.163C17.9021 23.6022 17.2174 23.9458 16.5035 24.2399C15.0518 24.8382 13.516 25.0848 11.9241 25.084C11.2304 25.084 10.5366 25.0821 9.84291 25.0817C9.69079 25.0817 9.56738 25.192 9.56738 25.328V30.3459C9.56738 30.4815 9.69036 30.5914 9.84205 30.5918C10.6313 30.5934 11.4206 30.596 12.2104 30.5995C13.0472 30.6033 13.8862 30.5658 14.6991 30.4478C16.1646 30.2353 17.5992 29.8856 18.9631 29.328C20.4393 28.7244 21.8079 27.9768 23.0596 27.0526C23.2588 26.9055 23.2511 26.8293 23.0716 26.6715Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M11.9914 6.24371C13.0108 6.25367 14.0341 6.32835 15.0046 6.6133C16.1354 6.94497 17.2632 7.30574 18.2239 7.97061C18.3289 8.043 18.4395 8.11155 18.532 8.19505C18.7 8.34633 18.832 8.32756 18.9845 8.18432C19.1632 8.01619 19.341 7.84729 19.5279 7.68605C20.7084 6.66883 21.8898 5.65237 23.0754 4.63975C23.2177 4.51834 23.2687 4.44902 23.0758 4.30769C22.4382 3.84045 21.7818 3.39924 21.082 3.00821C18.502 1.56625 15.6816 0.791076 12.6509 0.747798C11.7155 0.734394 10.7796 0.726734 9.84419 0.722904C9.69165 0.722138 9.56738 0.832822 9.56738 0.969167V5.9917C9.56738 6.12766 9.69079 6.23797 9.84291 6.23758C10.5589 6.23682 11.275 6.23682 11.991 6.24371H11.9914Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M6.70176 0.717285H1.12783C0.951519 0.717285 0.808594 0.845031 0.808594 1.00261V30.3052C0.808594 30.4628 0.951519 30.5905 1.12783 30.5905H6.70176C6.87806 30.5905 7.02099 30.4628 7.02099 30.3052V1.00261C7.02099 0.845031 6.87806 0.717285 6.70176 0.717285Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M25.0106 6.09228C25.5783 6.67174 26.0904 7.28721 26.5364 7.94748C27.1895 8.91453 27.678 9.94209 28.0923 11.0091C28.4973 12.0528 28.6978 13.1205 28.8306 14.2109C28.9073 14.8421 28.9819 15.4713 28.9459 16.1044C28.8345 18.0542 28.3944 19.9351 27.5023 21.7302C27.1826 22.3736 26.8205 23.0032 26.41 23.5892C26.0004 24.174 25.5629 24.7711 24.9428 25.2862C24.6219 24.9867 24.3048 24.6811 23.9766 24.3854C22.8946 23.4103 21.8114 22.4364 20.7213 21.4682C20.5854 21.3475 20.5709 21.289 20.7011 21.1423C21.4459 20.3012 21.9421 19.3384 22.3024 18.3242C22.6928 17.2262 22.8625 16.0849 22.7104 14.9455C22.6101 14.1925 22.4948 13.4288 22.1996 12.6969C21.9001 11.9555 21.514 11.2603 21.0474 10.5962C20.9295 10.4285 20.8267 10.2473 20.6788 10.1033C20.531 9.95971 20.5404 9.87775 20.6943 9.74562C21.7762 8.81534 22.8676 7.89425 23.9252 6.94098C24.2504 6.64799 24.5902 6.3596 24.9424 6.08691C24.9651 6.08845 24.9883 6.08998 25.011 6.09113L25.0106 6.09228Z",fill:"#000141"})]}),jc=({})=>(0,so.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,so.jsx)("path",{d:"M10.4306 12.1599C9.8141 11.6173 9.20561 11.0675 8.58086 10.5322C8.47266 10.4396 8.40239 10.4418 8.298 10.5161C8.00871 10.7219 7.6879 10.8828 7.35345 11.0206C6.67329 11.3009 5.95378 11.4165 5.20798 11.4161C4.88296 11.4161 4.55793 11.4152 4.23291 11.415C4.16164 11.415 4.10383 11.4667 4.10383 11.5304V13.8814C4.10383 13.9449 4.16144 13.9964 4.23251 13.9966C4.6023 13.9973 4.97209 13.9985 5.34208 14.0001C5.73416 14.0019 6.12723 13.9843 6.50807 13.9291C7.19465 13.8295 7.86678 13.6657 8.50578 13.4044C9.19738 13.1216 9.83859 12.7714 10.425 12.3384C10.5183 12.2695 10.5147 12.2338 10.4306 12.1599Z",fill:"white"}),(0,so.jsx)("path",{d:"M5.2395 2.58924C5.71709 2.5939 6.1965 2.62889 6.65121 2.76239C7.181 2.91778 7.70938 3.08681 8.15948 3.3983C8.20866 3.43222 8.26046 3.46433 8.30382 3.50345C8.38252 3.57433 8.44435 3.56553 8.51582 3.49843C8.59953 3.41966 8.68285 3.34052 8.77038 3.26498C9.32346 2.78841 9.87694 2.31219 10.4324 1.83777C10.4991 1.78089 10.523 1.74841 10.4326 1.6822C10.1339 1.46329 9.82635 1.25659 9.49851 1.07338C8.28977 0.397817 6.9684 0.0346442 5.54846 0.0143682C5.11021 0.00808808 4.67176 0.00449952 4.23351 0.00270519C4.16204 0.00234632 4.10383 0.0542024 4.10383 0.118081V2.47117C4.10383 2.53487 4.16164 2.58655 4.23291 2.58637C4.56837 2.58601 4.90403 2.58601 5.2395 2.58924Z",fill:"white"}),(0,so.jsx)("path",{d:"M2.76098 0H0.149562C0.0669613 0 0 0.0598496 0 0.133678V13.8621C0 13.936 0.0669613 13.9958 0.149562 13.9958H2.76098C2.84358 13.9958 2.91055 13.936 2.91055 13.8621V0.133678C2.91055 0.0598496 2.84358 0 2.76098 0Z",fill:"white"}),(0,so.jsx)("path",{d:"M11.339 2.5184C11.605 2.78989 11.8449 3.07824 12.0538 3.38758C12.3598 3.84065 12.5887 4.32207 12.7828 4.82197C12.9725 5.31093 13.0665 5.81119 13.1287 6.32203C13.1646 6.61774 13.1996 6.91255 13.1827 7.20915C13.1305 8.12265 12.9243 9.00385 12.5063 9.84485C12.3566 10.1463 12.1869 10.4413 11.9946 10.7158C11.8027 10.9898 11.5977 11.2696 11.3072 11.5109C11.1569 11.3706 11.0083 11.2274 10.8545 11.0889C10.3476 10.632 9.84012 10.1757 9.3294 9.72212C9.26576 9.6656 9.25893 9.63814 9.31996 9.56942C9.66888 9.17539 9.90135 8.72429 10.0702 8.24915C10.2531 7.73471 10.3326 7.2 10.2613 6.66619C10.2143 6.31342 10.1603 5.95563 10.022 5.61273C9.88168 5.26535 9.7008 4.93968 9.48217 4.62854C9.42697 4.54995 9.37878 4.46508 9.30952 4.39761C9.24026 4.33032 9.24468 4.29192 9.31675 4.23002C9.82366 3.79418 10.335 3.36264 10.8304 2.91603C10.9828 2.77876 11.142 2.64365 11.307 2.51589C11.3177 2.51661 11.3283 2.51787 11.339 2.5184Z",fill:"white"})]}),_c=({})=>(0,so.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,so.jsx)("path",{d:"M10.4306 12.1599C9.8141 11.6173 9.20561 11.0675 8.58086 10.5322C8.47266 10.4396 8.40239 10.4418 8.298 10.5161C8.00871 10.7219 7.6879 10.8828 7.35345 11.0206C6.67329 11.3009 5.95378 11.4165 5.20798 11.4161C4.88296 11.4161 4.55793 11.4152 4.23291 11.415C4.16164 11.415 4.10383 11.4667 4.10383 11.5304V13.8814C4.10383 13.9449 4.16144 13.9964 4.23251 13.9966C4.6023 13.9973 4.97209 13.9985 5.34208 14.0001C5.73416 14.0019 6.12723 13.9843 6.50807 13.9291C7.19465 13.8295 7.86678 13.6657 8.50578 13.4044C9.19738 13.1216 9.83859 12.7714 10.425 12.3384C10.5183 12.2695 10.5147 12.2338 10.4306 12.1599Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M5.2395 2.58924C5.71709 2.5939 6.1965 2.62889 6.65121 2.76239C7.181 2.91778 7.70938 3.08681 8.15948 3.3983C8.20866 3.43222 8.26046 3.46433 8.30382 3.50345C8.38252 3.57433 8.44435 3.56553 8.51582 3.49843C8.59953 3.41966 8.68285 3.34052 8.77038 3.26498C9.32346 2.78841 9.87694 2.31219 10.4324 1.83777C10.4991 1.78089 10.523 1.74841 10.4326 1.6822C10.1339 1.46329 9.82635 1.25659 9.49851 1.07338C8.28977 0.397817 6.9684 0.0346442 5.54846 0.0143682C5.11021 0.00808808 4.67176 0.00449952 4.23351 0.00270519C4.16204 0.00234632 4.10383 0.0542024 4.10383 0.118081V2.47117C4.10383 2.53487 4.16164 2.58655 4.23291 2.58637C4.56837 2.58601 4.90403 2.58601 5.2395 2.58924Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M2.76098 0H0.149562C0.0669613 0 0 0.0598496 0 0.133678V13.8621C0 13.936 0.0669613 13.9958 0.149562 13.9958H2.76098C2.84358 13.9958 2.91055 13.936 2.91055 13.8621V0.133678C2.91055 0.0598496 2.84358 0 2.76098 0Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M11.339 2.5184C11.605 2.78989 11.8449 3.07824 12.0538 3.38758C12.3598 3.84065 12.5887 4.32207 12.7828 4.82197C12.9725 5.31093 13.0665 5.81119 13.1287 6.32203C13.1646 6.61774 13.1996 6.91255 13.1827 7.20915C13.1305 8.12265 12.9243 9.00385 12.5063 9.84485C12.3566 10.1463 12.1869 10.4413 11.9946 10.7158C11.8027 10.9898 11.5977 11.2696 11.3072 11.5109C11.1569 11.3706 11.0083 11.2274 10.8545 11.0889C10.3476 10.632 9.84012 10.1757 9.3294 9.72212C9.26576 9.6656 9.25893 9.63814 9.31996 9.56942C9.66888 9.17539 9.90135 8.72429 10.0702 8.24915C10.2531 7.73471 10.3326 7.2 10.2613 6.66619C10.2143 6.31342 10.1603 5.95563 10.022 5.61273C9.88168 5.26535 9.7008 4.93968 9.48217 4.62854C9.42697 4.54995 9.37878 4.46508 9.30952 4.39761C9.24026 4.33032 9.24468 4.29192 9.31675 4.23002C9.82366 3.79418 10.335 3.36264 10.8304 2.91603C10.9828 2.77876 11.142 2.64365 11.307 2.51589C11.3177 2.51661 11.3283 2.51787 11.339 2.5184Z",fill:"#000141"})]}),xc=({className:e,style:t})=>(0,so.jsxs)("svg",{width:"100%",height:"100%",className:e,viewBox:"0 0 32 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:t,children:[(0,so.jsxs)("g",{clipPath:"url(#clip0_38_1686)",children:[(0,so.jsx)("path",{d:"M25.0747 27.7915C23.6506 26.5506 22.2436 25.2944 20.8003 24.0707C20.5503 23.8588 20.388 23.8645 20.1474 24.0344C19.4793 24.5041 18.7366 24.8725 17.9654 25.1875C16.3942 25.829 14.7314 26.0924 13.0075 26.0924C12.2573 26.0924 11.5051 26.0905 10.7548 26.0905C10.5907 26.0905 10.457 26.2089 10.457 26.354V31.728C10.457 31.8731 10.5907 31.9914 10.7548 31.9914C11.6101 31.9914 12.4634 31.9953 13.3187 31.9991C14.2255 32.0029 15.1323 31.9628 16.0124 31.8368C17.5988 31.6096 19.1528 31.2354 20.6285 30.6379C22.2264 29.9907 23.7079 29.1908 25.0633 28.2019C25.279 28.0454 25.2714 27.9633 25.0767 27.7934L25.0747 27.7915Z",fill:"#FDC307"}),(0,so.jsx)("path",{d:"M13.0791 5.91629C14.1825 5.92774 15.2898 6.00601 16.3417 6.31146C17.5654 6.66655 18.7872 7.05218 19.8276 7.76426C19.9422 7.84254 20.0605 7.91508 20.1617 8.00481C20.3431 8.16708 20.4862 8.14608 20.6523 7.99335C20.8452 7.8139 21.038 7.63254 21.2403 7.46072C22.5175 6.37065 23.7966 5.28248 25.0814 4.19813C25.236 4.06831 25.2914 3.99386 25.0814 3.84304C24.3903 3.34286 23.6801 2.86942 22.9222 2.45133C20.1293 0.906895 17.0747 0.0764508 13.7931 0.0306332C12.7793 0.0153607 11.7675 0.00772438 10.7538 0.00390625C10.5877 0.00390625 10.4541 0.122268 10.4541 0.267358V5.6452C10.4541 5.79029 10.5877 5.90865 10.7519 5.90865C11.527 5.90865 12.3021 5.90865 13.0772 5.91438L13.0791 5.91629Z",fill:"#FDC307"}),(0,so.jsx)("path",{d:"M7.35178 0H1.31722C1.12631 0 0.97168 0.137453 0.97168 0.305451V31.6829C0.97168 31.8509 1.12631 31.9883 1.31722 31.9883H7.35178C7.54269 31.9883 7.69732 31.8509 7.69732 31.6829V0.305451C7.69732 0.137453 7.54269 0 7.35178 0Z",fill:"#000141"}),(0,so.jsx)("path",{d:"M27.1757 5.75577C27.7905 6.37622 28.3441 7.03485 28.8271 7.74311C29.5334 8.77782 30.0622 9.87936 30.5109 11.021C30.95 12.1378 31.1657 13.2813 31.3108 14.4497C31.3929 15.1255 31.475 15.7994 31.4349 16.4771C31.3146 18.5656 30.8373 20.5797 29.8713 22.5002C29.5258 23.1894 29.1325 23.8633 28.6896 24.4914C28.2467 25.1175 27.7733 25.7571 27.1013 26.3088C26.7538 25.9881 26.4102 25.6616 26.0551 25.3447C24.8829 24.3004 23.7108 23.2581 22.531 22.2215C22.384 22.0917 22.3687 22.0306 22.51 21.8721C23.3156 20.971 23.854 19.9401 24.2434 18.8539C24.6653 17.6779 24.8505 16.4561 24.6844 15.2362C24.5756 14.4306 24.4515 13.6116 24.1308 12.8289C23.8062 12.0347 23.3881 11.2902 22.8842 10.58C22.7562 10.4005 22.6455 10.2058 22.4852 10.0531C22.3248 9.89845 22.3362 9.81063 22.5023 9.66936C23.6745 8.67283 24.8562 7.68775 25.9998 6.6664C26.351 6.35331 26.7195 6.04404 27.1013 5.75195C27.1261 5.75195 27.1509 5.75577 27.1757 5.75577Z",fill:"#FDC307"})]}),(0,so.jsx)("defs",{children:(0,so.jsx)("clipPath",{id:"clip0_38_1686",children:(0,so.jsx)("rect",{width:"32",height:"32",fill:"white"})})})]}),zc=({style:e})=>(0,so.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:e,children:(0,so.jsx)("path",{d:"M5.50008 14.6666V7.33331M2.16675 8.66665V13.3333C2.16675 14.0697 2.7637 14.6666 3.50008 14.6666H12.4509C13.4381 14.6666 14.2776 13.9464 14.4277 12.9708L15.1456 8.30409C15.332 7.09258 14.3946 5.99998 13.1689 5.99998H10.8334C10.4652 5.99998 10.1667 5.7015 10.1667 5.33331V2.97721C10.1667 2.06931 9.43075 1.33331 8.52286 1.33331C8.30631 1.33331 8.11007 1.46084 8.02212 1.65873L5.67604 6.93741C5.56904 7.17816 5.33029 7.33331 5.06683 7.33331H3.50008C2.7637 7.33331 2.16675 7.93027 2.16675 8.66665Z",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})}),Cc=({className:e=""})=>(0,so.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:e,children:(0,so.jsx)("path",{d:"M10.3602 7.52685L6.58682 3.76019C6.52484 3.6977 6.45111 3.64811 6.36987 3.61426C6.28863 3.58041 6.20149 3.56299 6.11348 3.56299C6.02548 3.56299 5.93834 3.58041 5.8571 3.61426C5.77586 3.64811 5.70213 3.6977 5.64015 3.76019C5.51598 3.8851 5.44629 4.05406 5.44629 4.23019C5.44629 4.40631 5.51598 4.57528 5.64015 4.70019L8.94015 8.03352L5.64015 11.3335C5.51598 11.4584 5.44629 11.6274 5.44629 11.8035C5.44629 11.9796 5.51598 12.1486 5.64015 12.2735C5.70189 12.3365 5.77552 12.3866 5.85677 12.421C5.93802 12.4553 6.02528 12.4732 6.11348 12.4735C6.20169 12.4732 6.28894 12.4553 6.37019 12.421C6.45144 12.3866 6.52507 12.3365 6.58682 12.2735L10.3602 8.50685C10.4278 8.44443 10.4818 8.36866 10.5188 8.28433C10.5557 8.19999 10.5748 8.10892 10.5748 8.01685C10.5748 7.92479 10.5557 7.83372 10.5188 7.74938C10.4818 7.66505 10.4278 7.58928 10.3602 7.52685V7.52685Z",fill:"currentColor"})}),Sc=({className:e="",style:t={}})=>(0,so.jsxs)("svg",{width:"29",height:"24",viewBox:"0 0 29 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:e,style:t,children:[(0,so.jsx)("path",{d:"M0.81897 1.81898C1.34335 1.29459 2.05456 1 2.79615 1H25.1654C25.9069 1 26.6182 1.29459 27.1425 1.81898C27.6669 2.34335 27.9615 3.05458 27.9615 3.79614V8.78571C27.9615 9.11857 27.6886 9.38196 27.3634 9.45315C26.8451 9.56668 26.3654 9.82636 25.9843 10.2074C25.4599 10.7318 25.1654 11.443 25.1654 12.1846C25.1654 12.9262 25.4599 13.6374 25.9843 14.1618C26.3654 14.5428 26.8451 14.8025 27.3634 14.9161C27.6886 14.9873 27.9615 15.2506 27.9615 15.5835V20.5731C27.9615 21.3146 27.6669 22.0259 27.1425 22.5503C26.6182 23.0746 25.9069 23.3692 25.1654 23.3692H2.79615C2.05456 23.3692 1.34335 23.0746 0.81897 22.5503C0.294594 22.0259 0 21.3146 0 20.5731V15.5835C0 15.2506 0.272938 14.9873 0.598128 14.9161C1.11644 14.8025 1.59613 14.5428 1.97717 14.1618C2.50156 13.6374 2.79615 12.9262 2.79615 12.1846C2.79615 11.443 2.50156 10.7318 1.97717 10.2074C1.59613 9.82636 1.11644 9.56668 0.598128 9.45315C0.272938 9.38196 0 9.11857 0 8.78571V3.79614C0 3.05458 0.294594 2.34335 0.81897 1.81898Z",fill:"#FDC307"}),(0,so.jsx)("path",{d:"M27.789 1.17254L27.7889 1.17252C27.3584 0.741918 26.7743 0.5 26.1654 0.5H3.79615C3.18717 0.5 2.60314 0.741915 2.17252 1.17253C1.74192 1.60314 1.5 2.18719 1.5 2.79614V7.78571C1.5 7.80892 1.50815 7.83953 1.5422 7.87591C1.57863 7.91484 1.63663 7.94973 1.70505 7.96471L1.70512 7.96473C2.31604 8.09855 2.88153 8.40465 3.33075 8.85391C3.94889 9.47202 4.29615 10.3104 4.29615 11.1846C4.29615 12.0588 3.9489 12.8972 3.33075 13.5153C2.88153 13.9646 2.31604 14.2707 1.70512 14.4045L1.70505 14.4045C1.63663 14.4195 1.57863 14.4544 1.5422 14.4933C1.50815 14.5297 1.5 14.5603 1.5 14.5835V19.5731C1.5 20.182 1.74191 20.7661 2.17251 21.1967C2.60313 21.6273 3.18718 21.8692 3.79615 21.8692H26.1654C26.7743 21.8692 27.3584 21.6273 27.789 21.1967C28.2196 20.7661 28.4615 20.182 28.4615 19.5731V14.5835C28.4615 14.5603 28.4534 14.5297 28.4193 14.4933C28.3829 14.4544 28.3249 14.4195 28.2565 14.4045L28.2564 14.4045C27.6455 14.2707 27.08 13.9646 26.6308 13.5153C26.6308 13.5153 26.6308 13.5153 26.6308 13.5153M27.789 1.17254L26.9843 9.20744C26.4599 9.73178 26.1654 10.443 26.1654 11.1846C26.1654 11.9262 26.4599 12.6374 26.9843 13.1618L26.6308 13.5153M27.789 1.17254C28.2196 1.60315 28.4615 2.1872 28.4615 2.79614V7.78571C28.4615 7.8089 28.4534 7.83952 28.4193 7.87591C28.3829 7.91484 28.3249 7.94974 28.2565 7.96471L28.2564 7.96473C27.6455 8.09855 27.08 8.40462 26.6308 8.85387M27.789 1.17254L26.6308 8.85387M26.6308 13.5153C26.0126 12.8972 25.6654 12.0588 25.6654 11.1846C25.6654 10.3104 26.0126 9.47204 26.6308 8.85391M26.6308 13.5153V8.85391M26.6308 8.85391C26.6308 8.8539 26.6308 8.85388 26.6308 8.85387M26.6308 8.85391L26.6308 8.85387",fill:"#000141",stroke:"#FDC307"}),(0,so.jsx)("path",{d:"M15.779 12.7709C14.4908 14.4694 13.203 16.1677 11.9214 17.8705C11.7811 18.0567 11.6186 18.2124 11.4182 18.3158C11.2155 18.4204 10.9905 18.4627 10.7403 18.4463C10.5788 18.4356 10.4148 18.438 10.2381 18.4406L10.2341 18.4407C10.0853 18.4429 9.92771 18.4453 9.76896 18.4381C9.60837 18.4307 9.41512 18.3864 9.25901 18.2838C9.10235 18.1815 9.00935 18.0237 9.00066 17.8415C8.99252 17.6697 9.06061 17.5059 9.16241 17.3695C9.42982 17.011 9.70024 16.6551 9.9699 16.3003L9.98153 16.285L9.98236 16.2839L9.98485 16.2806L9.98696 16.2778C10.0951 16.1355 10.2031 15.9934 10.3109 15.8512L18.1623 5.48965C18.2352 5.39339 18.3086 5.29773 18.3815 5.20279C18.5489 4.98468 18.7132 4.77051 18.8699 4.55174C18.9944 4.37797 19.1449 4.22651 19.3342 4.12598C19.5267 4.02368 19.7434 3.98255 19.9842 4.00675C20.0696 4.01527 20.159 4.01333 20.2679 4.01057C20.3151 4.00935 20.3672 4.00802 20.4187 4.00802L20.723 4.00824L21.0269 4.00841C21.2472 4.00841 21.5392 4.06498 21.697 4.36928C21.776 4.52151 21.7838 4.67319 21.7438 4.8128C21.7075 4.93979 21.6345 5.04558 21.5753 5.12352C20.3497 6.73933 19.1249 8.35589 17.9002 9.97239L17.6144 10.3496L17.6099 10.3556L17.036 11.1129C16.6321 11.646 16.228 12.1788 15.824 12.7116L15.7813 12.7678L15.779 12.7709Z",fill:"#FDC307"}),(0,so.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.06166 5.59643C6.964 6.35766 7.00404 7.81567 7.03529 8.21069C7.12611 9.36352 7.6183 10.2209 8.58998 10.699C9.23256 11.0149 9.90736 11.0481 10.5919 10.9543C11.9122 10.7742 12.8683 9.73754 12.9601 8.30151C13.0158 7.44067 13.0128 6.56811 12.9552 5.70776C12.8839 4.65258 12.3898 3.86059 11.5245 3.38842C10.9884 3.09594 10.4357 2.97534 9.87709 3.00415C9.5597 3.02075 9.24037 3.08569 8.92201 3.19506C7.86634 3.55786 7.21986 4.36401 7.06166 5.59643ZM10.0001 5.00024C9.4474 5.00024 9.00013 5.44799 9.00013 6.00024V8.00024C9.00013 8.55249 9.4474 9.00024 10.0001 9.00024C10.2911 9.00024 10.5529 8.8767 10.7355 8.67895C10.8995 8.50024 11.0001 8.26196 11.0001 8.00024V6.00024C11.0001 5.44799 10.5529 5.00024 10.0001 5.00024Z",fill:"#FDC307"}),(0,so.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M18.0617 13.5964C17.964 14.3577 18.004 15.8157 18.0353 16.2107C18.1261 17.3635 18.6183 18.2209 19.59 18.699C20.2326 19.0149 20.9074 19.0481 21.5919 18.9543C22.9122 18.7742 23.8683 17.7375 23.9601 16.3015C24.0158 15.4407 24.0128 14.5681 23.9552 13.7078C23.8839 12.6526 23.3898 11.8606 22.5245 11.3884C21.9884 11.0959 21.4357 10.9753 20.8771 11.0041C20.5597 11.0207 20.2404 11.0857 19.922 11.1951C18.8663 11.5579 18.2199 12.364 18.0617 13.5964ZM21.0001 13.0002C20.4474 13.0002 20.0001 13.448 20.0001 14.0002V16.0002C20.0001 16.5525 20.4474 17.0002 21.0001 17.0002C21.2911 17.0002 21.5529 16.8767 21.7355 16.679C21.8995 16.5002 22.0001 16.262 22.0001 16.0002V14.0002C22.0001 13.448 21.5529 13.0002 21.0001 13.0002Z",fill:"#FDC307"})]}),Ec=({style:e})=>(0,so.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"size-6",style:e,children:(0,so.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v12m-3-2.818.879.659c1.171.879 3.07.879 4.242 0 1.172-.879 1.172-2.303 0-3.182C13.536 12.219 12.768 12 12 12c-.725 0-1.45-.22-2.003-.659-1.106-.879-1.106-2.303 0-3.182s2.9-.879 4.006 0l.415.33M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})}),Oc=({style:e})=>(0,so.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"size-6",style:e,children:(0,so.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M21 8.25c0-2.485-2.099-4.5-4.688-4.5-1.935 0-3.597 1.126-4.312 2.733-.715-1.607-2.377-2.733-4.313-2.733C5.1 3.75 3 5.765 3 8.25c0 7.22 9 12 9 12s9-4.78 9-12Z"})}),Ac=({style:e})=>(0,so.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"size-6",style:e,children:(0,so.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M16.5 6v.75m0 3v.75m0 3v.75m0 3V18m-9-5.25h5.25M7.5 15h3M3.375 5.25c-.621 0-1.125.504-1.125 1.125v3.026a2.999 2.999 0 0 1 0 5.198v3.026c0 .621.504 1.125 1.125 1.125h17.25c.621 0 1.125-.504 1.125-1.125v-3.026a2.999 2.999 0 0 1 0-5.198V6.375c0-.621-.504-1.125-1.125-1.125H3.375Z"})});function Pc(e){var t=this.__data__=new le(e);this.size=t.size}Pc.prototype.clear=function(){this.__data__=new le,this.size=0},Pc.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Pc.prototype.get=function(e){return this.__data__.get(e)},Pc.prototype.has=function(e){return this.__data__.has(e)},Pc.prototype.set=function(e,t){var n=this.__data__;if(n instanceof le){var a=n.__data__;if(!ue||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new me(a)}return n.set(e,t),this.size=n.size,this};const Nc=Pc;function Tc(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new me;++t<n;)this.add(e[t])}Tc.prototype.add=Tc.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Tc.prototype.has=function(e){return this.__data__.has(e)};const Ic=Tc,Lc=function(e,t){for(var n=-1,a=null==e?0:e.length;++n<a;)if(t(e[n],n,e))return!0;return!1},Dc=function(e,t){return e.has(t)},Rc=function(e,t,n,a,o,r){var i=1&n,s=e.length,c=t.length;if(s!=c&&!(i&&c>s))return!1;var l=r.get(e),u=r.get(t);if(l&&u)return l==t&&u==e;var p=-1,d=!0,m=2&n?new Ic:void 0;for(r.set(e,t),r.set(t,e);++p<s;){var h=e[p],f=t[p];if(a)var g=i?a(f,h,p,t,e,r):a(h,f,p,e,t,r);if(void 0!==g){if(g)continue;d=!1;break}if(m){if(!Lc(t,function(e,t){if(!Dc(m,t)&&(h===e||o(h,e,n,a,r)))return m.push(t)})){d=!1;break}}else if(h!==f&&!o(h,f,n,a,r)){d=!1;break}}return r.delete(e),r.delete(t),d},Mc=z.Uint8Array,$c=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e,a){n[++t]=[a,e]}),n},Bc=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n};var Uc=C?C.prototype:void 0,Fc=Uc?Uc.valueOf:void 0;var Vc=Object.prototype.propertyIsEnumerable,Hc=Object.getOwnPropertySymbols;const Kc=Hc?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var n=-1,a=null==e?0:e.length,o=0,r=[];++n<a;){var i=e[n];t(i,n,e)&&(r[o++]=i)}return r}(Hc(e),function(t){return Vc.call(e,t)}))}:function(){return[]},qc=function(e){return function(e,t,n){var a=t(e);return j(e)?a:function(e,t){for(var n=-1,a=t.length,o=e.length;++n<a;)e[o+n]=t[n];return e}(a,n(e))}(e,st,Kc)};var Gc=Object.prototype.hasOwnProperty;var Qc="[object Arguments]",Wc="[object Array]",Yc="[object Object]",Jc=Object.prototype.hasOwnProperty;const Zc=function(e,t,n,a,o,r){var i=j(e),s=j(t),c=i?Wc:Nt(e),l=s?Wc:Nt(t),u=(c=c==Qc?Yc:c)==Yc,p=(l=l==Qc?Yc:l)==Yc,d=c==l;if(d&&Be(e)){if(!Be(t))return!1;i=!0,u=!1}if(d&&!u)return r||(r=new Nc),i||Je(e)?Rc(e,t,n,a,o,r):function(e,t,n,a,o,r,i){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!r(new Mc(e),new Mc(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return re(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var s=$c;case"[object Set]":var c=1&a;if(s||(s=Bc),e.size!=t.size&&!c)return!1;var l=i.get(e);if(l)return l==t;a|=2,i.set(e,t);var u=Rc(s(e),s(t),a,o,r,i);return i.delete(e),u;case"[object Symbol]":if(Fc)return Fc.call(e)==Fc.call(t)}return!1}(e,t,c,n,a,o,r);if(!(1&n)){var m=u&&Jc.call(e,"__wrapped__"),h=p&&Jc.call(t,"__wrapped__");if(m||h){var f=m?e.value():e,g=h?t.value():t;return r||(r=new Nc),o(f,g,n,a,r)}}return!!d&&(r||(r=new Nc),function(e,t,n,a,o,r){var i=1&n,s=qc(e),c=s.length;if(c!=qc(t).length&&!i)return!1;for(var l=c;l--;){var u=s[l];if(!(i?u in t:Gc.call(t,u)))return!1}var p=r.get(e),d=r.get(t);if(p&&d)return p==t&&d==e;var m=!0;r.set(e,t),r.set(t,e);for(var h=i;++l<c;){var f=e[u=s[l]],g=t[u];if(a)var k=i?a(g,f,u,t,e,r):a(f,g,u,e,t,r);if(!(void 0===k?f===g||o(f,g,n,a,r):k)){m=!1;break}h||(h="constructor"==u)}if(m&&!h){var b=e.constructor,y=t.constructor;b==y||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof y&&y instanceof y||(m=!1)}return r.delete(e),r.delete(t),m}(e,t,n,a,o,r))},Xc=function e(t,n,a,o,r){return t===n||(null==t||null==n||!I(t)&&!I(n)?t!=t&&n!=n:Zc(t,n,a,o,e,r))},el=function(e){return e==e&&!$(e)},tl=function(e,t){return function(n){return null!=n&&n[e]===t&&(void 0!==t||e in Object(n))}},nl=function(e){var t=function(e){for(var t=st(e),n=t.length;n--;){var a=t[n],o=e[a];t[n]=[a,o,el(o)]}return t}(e);return 1==t.length&&t[0][2]?tl(t[0][0],t[0][1]):function(n){return n===e||function(e,t,n,a){var o=n.length,r=o,i=!a;if(null==e)return!r;for(e=Object(e);o--;){var s=n[o];if(i&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++o<r;){var c=(s=n[o])[0],l=e[c],u=s[1];if(i&&s[2]){if(void 0===l&&!(c in e))return!1}else{var p=new Nc;if(a)var d=a(l,u,c,e,t,p);if(!(void 0===d?Xc(u,l,3,a,p):d))return!1}}return!0}(n,e,t)}},al=function(e,t){return null!=e&&t in Object(e)},ol=function(e,t){return null!=e&&function(e,t,n){for(var a=-1,o=(t=Ce(t,e)).length,r=!1;++a<o;){var i=Se(t[a]);if(!(r=null!=e&&n(e,i)))break;e=e[i]}return r||++a!=o?r:!!(o=null==e?0:e.length)&&Ve(o)&&Fe(i,o)&&(j(e)||De(e))}(e,t,al)},rl=function(e){return M(e)?(t=Se(e),function(e){return null==e?void 0:e[t]}):function(e){return function(t){return Ee(t,e)}}(e);var t},il=function(e){return"function"==typeof e?e:null==e?pt:"object"==typeof e?j(e)?(t=e[0],n=e[1],M(t)&&el(n)?tl(Se(t),n):function(e){var a=Oe(e,t);return void 0===a&&a===n?ol(e,t):Xc(n,a,3)}):nl(e):rl(e);var t,n},sl=function(e,t){if(e!==t){var n=void 0!==e,a=null===e,o=e==e,r=L(e),i=void 0!==t,s=null===t,c=t==t,l=L(t);if(!s&&!l&&!r&&e>t||r&&i&&c&&!s&&!l||a&&i&&c||!n&&c||!o)return 1;if(!a&&!r&&!l&&e<t||l&&n&&o&&!a&&!r||s&&n&&o||!i&&o||!c)return-1}return 0},cl=function(e,t,n){t=t.length?we(t,function(e){return j(e)?function(t){return Ee(t,1===e.length?e[0]:e)}:e}):[pt];var a=-1;t=we(t,Ke(il));var o=function(e,t){var n=-1,a=it(e)?Array(e.length):[];return lt(e,function(e,o,r){a[++n]=t(e,o,r)}),a}(e,function(e,n,o){return{criteria:we(t,function(t){return t(e)}),index:++a,value:e}});return function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}(o,function(e,t){return function(e,t,n){for(var a=-1,o=e.criteria,r=t.criteria,i=o.length,s=n.length;++a<i;){var c=sl(o[a],r[a]);if(c)return a>=s?c:c*("desc"==n[a]?-1:1)}return e.index-t.index}(e,t,n)})};if(!vc.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!gs)throw new Error("mobx-react-lite@3 requires mobx at least version 6 to be available");var ll=n(316);function ul(e){e()}function pl(e){return Zi(oc(e,t));var t}var dl,ml,hl=function(){function e(e){var t=this;Object.defineProperty(this,"finalize",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"registrations",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"sweepTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sweep",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=1e4),clearTimeout(t.sweepTimeout),t.sweepTimeout=void 0;var n=Date.now();t.registrations.forEach(function(a,o){n-a.registeredAt>=e&&(t.finalize(a.value),t.registrations.delete(o))}),t.registrations.size>0&&t.scheduleSweep()}}),Object.defineProperty(this,"finalizeAllImmediately",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.sweep(0)}})}return Object.defineProperty(e.prototype,"register",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,n){this.registrations.set(n,{value:t,registeredAt:Date.now()}),this.scheduleSweep()}}),Object.defineProperty(e.prototype,"unregister",{enumerable:!1,configurable:!0,writable:!0,value:function(e){this.registrations.delete(e)}}),Object.defineProperty(e.prototype,"scheduleSweep",{enumerable:!1,configurable:!0,writable:!0,value:function(){void 0===this.sweepTimeout&&(this.sweepTimeout=setTimeout(this.sweep,1e4))}}),e}(),fl=new("undefined"!=typeof FinalizationRegistry?FinalizationRegistry:hl)(function(e){var t;null===(t=e.reaction)||void 0===t||t.dispose(),e.reaction=null}),gl=n(98);function kl(e){e.reaction=new Ei("observer".concat(e.name),function(){var t;e.stateVersion=Symbol(),null===(t=e.onStoreChange)||void 0===t||t.call(e)})}var bl="function"==typeof Symbol&&Symbol.for,yl=null!==(ml=null===(dl=Object.getOwnPropertyDescriptor(function(){},"name"))||void 0===dl?void 0:dl.configurable)&&void 0!==ml&&ml,vl=bl?Symbol.for("react.forward_ref"):"function"==typeof vc.forwardRef&&(0,vc.forwardRef)(function(e){return null}).$$typeof,wl=bl?Symbol.for("react.memo"):"function"==typeof vc.memo&&(0,vc.memo)(function(e){return null}).$$typeof;function jl(e,t){var n;if(wl&&e.$$typeof===wl)throw new Error("[mobx-react-lite] You are trying to use `observer` on a function component wrapped in either another `observer` or `React.memo`. The observer already applies 'React.memo' for you.");var a=null!==(n=null==t?void 0:t.forwardRef)&&void 0!==n&&n,o=e,r=e.displayName||e.name;if(vl&&e.$$typeof===vl&&(a=!0,"function"!=typeof(o=e.render)))throw new Error("[mobx-react-lite] `render` property of ForwardRef was not a function");var i,s,c=function(e,t){return function(e,t){void 0===t&&(t="observed");var n=vc.useRef(null);if(!n.current){var a={reaction:null,onStoreChange:null,stateVersion:Symbol(),name:t,subscribe:function(e){return fl.unregister(a),a.onStoreChange=e,a.reaction||(kl(a),a.stateVersion=Symbol()),function(){var e;a.onStoreChange=null,null===(e=a.reaction)||void 0===e||e.dispose(),a.reaction=null}},getSnapshot:function(){return a.stateVersion}};n.current=a}var o,r,i=n.current;if(i.reaction||(kl(i),fl.register(n,i,i)),vc.useDebugValue(i.reaction,pl),(0,gl.useSyncExternalStore)(i.subscribe,i.getSnapshot,i.getSnapshot),i.reaction.track(function(){try{o=e()}catch(e){r=e}}),r)throw r;return o}(function(){return o(e,t)},r)};return c.displayName=e.displayName,yl&&Object.defineProperty(c,"name",{value:e.name,writable:!0,configurable:!0}),e.contextTypes&&(c.contextTypes=e.contextTypes),a&&(c=(0,vc.forwardRef)(c)),c=(0,vc.memo)(c),i=e,s=c,Object.keys(i).forEach(function(e){_l[e]||Object.defineProperty(s,e,Object.getOwnPropertyDescriptor(i,e))}),c}var _l={$$typeof:!0,render:!0,compare:!0,type:!0,displayName:!0};function xl(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}!function(e){e||(e=ul),Ji({reactionScheduler:e})}(ll.unstable_batchedUpdates),fl.finalizeAllImmediately;var zl=Symbol("patchMixins"),Cl=Symbol("patchedDefinition");function Sl(e,t){for(var n=this,a=arguments.length,o=new Array(a>2?a-2:0),r=2;r<a;r++)o[r-2]=arguments[r];t.locks++;try{var i;return null!=e&&(i=e.apply(this,o)),i}finally{t.locks--,0===t.locks&&t.methods.forEach(function(e){e.apply(n,o)})}}function El(e,t){return function(){for(var n=arguments.length,a=new Array(n),o=0;o<n;o++)a[o]=arguments[o];Sl.call.apply(Sl,[this,e,t].concat(a))}}function Ol(e,t,n){var a=function(e,t){var n=e[zl]=e[zl]||{},a=n[t]=n[t]||{};return a.locks=a.locks||0,a.methods=a.methods||[],a}(e,t);a.methods.indexOf(n)<0&&a.methods.push(n);var o=Object.getOwnPropertyDescriptor(e,t);if(!o||!o[Cl]){var r=e[t],i=Al(e,t,o?o.enumerable:void 0,a,r);Object.defineProperty(e,t,i)}}function Al(e,t,n,a,o){var r,i=El(o,a);return(r={})[Cl]=!0,r.get=function(){return i},r.set=function(o){if(this===e)i=El(o,a);else{var r=Al(this,t,n,a,o);Object.defineProperty(this,t,r)}},r.configurable=!0,r.enumerable=n,r}var Pl=Symbol("ObserverAdministration"),Nl=Symbol("isMobXReactObserver");function Tl(e){var t;return null!=(t=e[Pl])?t:e[Pl]={reaction:null,mounted:!1,reactionInvalidatedBeforeMount:!1,forceUpdate:null,name:Il(e.constructor),state:void 0,props:void 0,context:void 0}}function Il(e){return e.displayName||e.name||"<component>"}function Ll(e){var t=e.bind(this),n=Tl(this);return function(){n.reaction||(n.reaction=function(e){return new Ei(e.name+".render()",function(){if(e.mounted)try{null==e.forceUpdate||e.forceUpdate()}catch(n){var t;null==(t=e.reaction)||t.dispose(),e.reaction=null}else e.reactionInvalidatedBeforeMount=!0})}(n),n.mounted||fl.register(this,n,this));var e=void 0,a=void 0;if(n.reaction.track(function(){try{a=function(e,t){var n=Xr(e);try{return t()}finally{ei(n)}}(!1,t)}catch(t){e=t}}),e)throw e;return a}}function Dl(e,t){return this.state!==t||!function(e,t){if(xl(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),a=Object.keys(t);if(n.length!==a.length)return!1;for(var o=0;o<n.length;o++)if(!Object.hasOwnProperty.call(t,n[o])||!xl(e[n[o]],t[n[o]]))return!1;return!0}(this.props,e)}function Rl(e,t){if(t&&"class"!==t.kind)throw new Error("The @observer decorator can be used on classes only");return!0===e.isMobxInjector&&console.warn("Mobx observer: You are trying to use `observer` on a component that already has `inject`. Please apply `observer` before applying `inject`"),Object.prototype.isPrototypeOf.call(vc.Component,e)||Object.prototype.isPrototypeOf.call(vc.PureComponent,e)?function(e){var t=e.prototype;if(e[Nl]){var n=Il(e);throw new Error("The provided component class ("+n+") has already been declared as an observer component.")}if(e[Nl]=!0,t.componentWillReact)throw new Error("The componentWillReact life-cycle event is no longer supported");if(e.__proto__!==vc.PureComponent)if(t.shouldComponentUpdate){if(t.shouldComponentUpdate!==Dl)throw new Error("It is not allowed to use shouldComponentUpdate in observer based components.")}else t.shouldComponentUpdate=Dl;var a=t.render;if("function"!=typeof a){var o=Il(e);throw new Error("[mobx-react] class component ("+o+") is missing `render` method.\n`observer` requires `render` being a function defined on prototype.\n`render = () => {}` or `render = function() {}` is not supported.")}t.render=function(){return Object.defineProperty(this,"render",{configurable:!1,writable:!1,value:Ll.call(this,a)}),this.render()};var r=t.componentDidMount;return t.componentDidMount=function(){var e=this,t=Tl(this);return t.mounted=!0,fl.unregister(this),t.forceUpdate=function(){return e.forceUpdate()},t.reaction&&!t.reactionInvalidatedBeforeMount||t.forceUpdate(),null==r?void 0:r.apply(this,arguments)},Ol(t,"componentWillUnmount",function(){var e,t=Tl(this);null==(e=t.reaction)||e.dispose(),t.reaction=null,t.forceUpdate=null,t.mounted=!1,t.reactionInvalidatedBeforeMount=!1}),e}(e):jl(e)}if(vc.version.split(".")[0],!vc.Component)throw new Error("mobx-react requires React to be available");if(!Fr)throw new Error("mobx-react requires mobx to be available");const Ml=({icon:e,text:t,check:n})=>(0,so.jsxs)("div",{className:"popover__bullet-point "+(n?"":"popover__bullet-text-disabled"),children:[e,(0,so.jsx)("span",{className:"popover__bullet-text",children:t}),n&&(0,so.jsx)("span",{className:"popover__bullet-check",children:"✓"})]}),$l=Rl(({item:e})=>{const{displayPrices:t}=yc,n=!!e.discount||!!t?.thereIsDiscount,a=!!e.coupon,o=e.score&&e.score>50?Math.ceil((e.score||0)/10):0,r=[{icon:(0,so.jsx)(Ac,{style:{height:16,width:16}}),text:gn("secondary_cta.popover.coupon.text_checked"),check:a,hide:!a},{icon:(0,so.jsx)(Ec,{style:{height:16,width:16}}),text:n?gn("secondary_cta.popover.discount.text_checked",{discount:e.discount}):gn("secondary_cta.popover.discount.text_unchecked"),check:n},{icon:(0,so.jsx)(zc,{style:{height:16,width:16}}),text:o?gn("secondary_cta.popover.feedback.text_checked",{positiveFeedback:o}):gn("secondary_cta.popover.feedback.text_unchecked"),check:!!o}];return!function(e){try{const t=new URL(e).hostname.toLowerCase();return"getdirecto.com"===t||t.endsWith(".getdirecto.com")}catch{return!1}}(e.directo_url)&&r.unshift({icon:(0,so.jsx)(Oc,{style:{height:16,width:16}}),text:gn("secondary_cta.popover.support_hotel"),check:!0}),(0,so.jsx)("div",{className:"popover__bullet-points",children:(i=r,s="check",c="desc",null==i?[]:(j(s)||(s=null==s?[]:[s]),j(c=l?void 0:c)||(c=null==c?[]:[c]),cl(i,s,c))).map((e,t)=>!e.hide&&(0,so.jsx)(Ml,{...e},t))});var i,s,c,l}),Bl=({domainName:e,item:t})=>(0,so.jsxs)("div",{className:"popover__content",children:[(0,so.jsxs)("div",{className:"popover__header",children:[(0,so.jsxs)("div",{className:"popover__header-text",children:[gn("secondary_cta.popover.header.text")," ",(0,so.jsx)(xc,{className:"popover__directo-logo",style:{width:"20px",height:"20px",marginLeft:"2px",visibility:"visible",opacity:1}}),"irecto"]}),(0,so.jsx)("div",{className:"popover__domain",children:(0,so.jsx)("span",{className:"popover__domain-text",children:e})})]}),(0,so.jsx)($l,{item:t})]}),Ul=Date.now(),Fl=function(){let e="";let t=0;for(;t<14;)e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random())),t+=1;return e}();async function Vl(){const{hostname:e}=new URL(window.location.href);return{engagement_time_msec:""+(Date.now()-Ul),session_id:Fl,user_id_dimension:await da(),platform:(Tn(window.location.href)||e).toLowerCase(),page_location:window.location.href,page_title:window.document.title,page_referrer:window.document.referrer,language:window.navigator.language,screen_resolution:`${window.screen.availHeight}x${window.screen.availWidth}`}}async function Hl(){return{user_id:await da(),client_id:"GTM-PQTC3VG"}}async function Kl(e){return{events:e,...await Hl()}}async function ql(e,t={}){return{name:e,params:{...await Vl(),...t}}}function Gl(e){if(e.status>=200&&e.status<300)return e;throw new Error(e.statusText)}function Ql(e,t){const n=function(e){const t=new URL(`https://www.google-analytics.com${e}`);return Object.entries({api_secret:"GE9ObhGLSdmUus1uyoSEaw",measurement_id:"G-KXK74ZXW09"}).forEach(([e,n])=>{if(Array.isArray(n)&&n.length)return n.forEach(n=>t.searchParams.append(e,n));t.searchParams.append(e,n)}),t}(e);return fetch(n.toString(),{body:JSON.stringify(t),method:"POST"}).then(Gl).catch(console.error)}const Wl=(e="/mp/collect")=>({async pageView(t,n={}){const a=await ql("page_view",{page_location:t,...n}),o=await Kl([a]);return Ql(e,o)},async event(t,n={}){const a=await ql(t,n),o=await Kl([a]);return Ql(e,o)},async exception(t={}){const n=await ql("exception",t),a=await Kl([n]);return Ql(e,a)}}),Yl=Wl(),Jl=Rl(({item:e,cta:t})=>{const{displayPrices:n,areDisplayPricesLoading:a}=yc,o=!a&&n&&!!n.displayedDirectoPrice&&!!n.displayedOtaPrice&&function(e){try{return!!(e.displayedDirectoPrice&&e.displayedOtaPrice&&e.thereIsDiscount)&&(t=e.displayedOtaPrice,n=e.displayedDirectoPrice,Math.round((t-n)/((t+n)/2)*100)>=2)}catch(e){return!1}var t,n}(n),r=o?gn("secondary_cta.save",{price:bc(n.displayedPriceDifference,n.displayedCurrency)}):function(e){const t=e.directo_url?mn(e.directo_url):"";return e.discount?"reservation.barcelo.com"===t?gn("secondary_cta.book_with_discount_barcelo"):gn("secondary_cta.book_with_discount",{discount:e.discount}):gn("secondary_cta.compare_price")}(e),i=o||e.discount;return(0,so.jsxs)("button",{onClick:n=>{const a=to(e.directo_url);Yl.event("click_out_ext_secondary",{outbound_url:a}),Ju.navigateToDirectLink(a,t,{parametrised:e.stay_parametrised,sourceId:e.source_id,coupon:e.coupon,verified:e.verified,discount:e.discount}),n.stopPropagation()},className:i?"directo-cta-button-shine":"directo-cta-button-dark",disabled:!e.directo_url,children:[i?(0,so.jsx)(_c,{}):(0,so.jsx)(jc,{}),r,(0,so.jsx)(Cc,{})]})}),Zl=async(e,t)=>{const n=e.directo_url?mn(e.directo_url):"",a=document.createElement("div"),o=a.attachShadow({mode:"closed"}),r=document.createElement("style");r.innerHTML="\n .secondary-button {\n position: relative;\n width: 100%;\n border: none;\n outline: none;\n color: white;\n cursor: pointer;\n border-radius: 5px;\n font-size: 14px;\n font-weight: bold;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n }\n .secondary-button:before{\n position: absolute;\n content: '';\n top: -2px;\n left: -2px;\n height: calc(100% + 4px);\n width: calc(100% + 4px);\n border-radius: 5px;\n z-index: -1;\n opacity: 1;\n filter: blur(5px);\n background: linear-gradient(45deg, #ff0000, #ff7300, #fffb00, #48ff00, #00ffd5, #002bff, #7a00ff, #ff00c8, #ff0000);\n background-size: 400%;\n transition: opacity 1s ease-in-out;\n animation: animate 20s linear infinite;\n z-index: 1;\n }\n .secondary-button:hover:before{\n opacity: 1;\n }\n .secondary-button:hover:active{\n background: none;\n }\n .secondary-button:hover:active:before{\n filter: blur(2px);\n }\n @keyframes animate {\n 0% { background-position: 0 0; }\n 50% { background-position: 400% 0; }\n 100% { background-position: 0 0; }\n }\n .secondary-button-span {\n z-index: 2;\n position: relative;\n display: flex;\n align-items: center;\n gap: 6px;\n /*background: radial-gradient(85.26% 304.19% at 109.77% -9.38%, #1E40AF 0%, #172554 100%);*/\n background: rgba(0,0,0,.5);\n padding: 8px 12px;\n width: 100%;\n border-radius: 4px;\n justify-content: center;\n transition: background .2s ease-in-out;\n white-space: nowrap;\n }\n .secondary-button-span:hover {\n background: rgba(0, 0, 0, .8);\n }\n .secondary-button-container {\n padding: 4px;\n background: rgba(0,0,0,.5);\n border-radius: 8px;\n width: 100%;\n }\n\n .directo-cta-button-shine:hover {\n background-color: #edb602;\n}\n .directo-cta-button-shine {\n white-space: nowrap;\n font-weight: 600;\n width: 100%;\n min-height: 36px;\n cursor: pointer;\n border-width: 1px;\n border-color: rgb(0 0 0 / 0.1);\n border-radius: 4px;\n padding: 4px 12px;\n background-color: #FDC307;\n display: flex;\n gap: 0.5rem;\n justify-content: space-between;\n align-items: center;\n color: #000141;\n position: relative;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n }\n\n .directo-cta-button-shine {\n overflow: hidden;\n}\n\n.directo-cta-button-dark {\n white-space: nowrap;\n font-weight: 600;\n width: 100%;\n min-height: 36px;\n cursor: pointer;\n border-width: 1px;\n border-color: rgb(0 0 0 / 0.1);\n border-radius: 4px;\n padding: 4px 12px;\n background-color: #000141;\n display: flex;\n gap: 0.5rem;\n justify-content: space-between;\n align-items: center;\n color: #ffffff;\n position: relative;\n}\n\n.directo-cta-button-shine::before {\n background: linear-gradient(to right, rgba(216, 182, 182, 0) 0%, #ffffffbe);\n content: '';\n display: block;\n height: 100%;\n left: -75%;\n position: absolute;\n top: 0;\n transform: skewX(-25deg);\n width: 50%;\n z-index: 2;\n -webkit-animation: shine 2s ease-in-out infinite;\n animation: shine 2s ease-in-out infinite;\n}\n\n@keyframes shine {\n 100% {\n left: 125%;\n }\n}\n\n.popover {\n position: relative;\n z-index: auto;\n}\n.popover__content {\n position: absolute;\n min-width: 130px;\n // width: 362px;\n width: 300px;\n text-align: left;\n display: flex;\n padding: 1rem; /* p-4 */\n visibility: hidden;\n overflow: hidden;\n opacity: 0;\n background: white;\n transition: all 0.25s cubic-bezier(0, 0, 0.2, 1);\n color: #0f172a;\n border-radius: 0.5rem; /* Tailwind rounded-lg */\n font-weight: 500;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),\n 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n z-index: 999999999;\n flex-direction: column;\n gap: 0.5rem; /* gap-2 */\n align-items: flex-start;\n background-color: #ffffff;\n\n}\n\n.popover__trigger {\n cursor: pointer;\n z-index: 5;\n}\n\n.popover[data-direction=top] .popover__trigger:hover ~ .popover__content {\n transform: translate3d(-50%, 0, 0);\n visibility: visible;\n opacity: 1;\n}\n.popover[data-direction=top] .popover__content {\n bottom: calc(100% + .5rem);\n left: 50%;\n transform: translate3d(-50%, -15px, 0);\n}\n.popover[data-direction=top] .popover__content:after {\n bottom: -0.5em;\n left: 50%;\n transform: translate3d(-50%, 0, 0);\n border-width: 0 0.5em 0.5em 0.5em;\n border-color: transparent transparent white transparent;\n filter: drop-shadow(1px -1px 1px #bcbcbc);\n}\n\n\n/* Title */\n.popover__title {\n font-size: 1.125rem; /* text-lg */\n line-height: 1.75rem; /* leading-7 */\n color: #000000;\n margin: 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.popover__title-text {\n font-weight: bold;\n}\n\n/* Domain / subtitle */\n.popover__domain {\n font-size: 0.875rem; /* text-sm */\n line-height: 1.25rem; /* leading-5 */\n color: #4B5563; /* text-gray-600 */\n}\n\n.popover__domain-text {\n font-weight: normal;\n}\n\n/* Bullet points */\n.popover__bullet-points {\n display: flex;\n flex-direction: column;\n gap: 0.5rem; /* gap-2 */\n align-items: flex-start;\n width: 100%;\n position: relative;\n}\n\n.popover__bullet-point {\n display: flex;\n align-items: center;\n gap: 0.5rem; /* gap-2 */\n width: 100%;\n position: relative;\n color: #000141;\n}\n\n.popover__bullet-text-disabled {\n --tw-text-opacity: 1;\n color: rgb(100 116 139 / var(--tw-text-opacity));\n}\n\n.popover__bullet-check {\n color: limegreen;\n font-size: 18px;\n font-weight: 700;\n}\n\n.popover__header {\n width:100%;\n display: flex;\n flex-direction: column;\n}\n.popover__header-text {\n align-items: center;\n display: inline;\n font-size: 20px;\n font-weight: bold;\n color: #000141;\n}\n ",o.appendChild(r);const i=document.createElement("div");return o.appendChild(i),(0,co.H)(i).render((0,so.jsxs)("div",{className:"popover","data-direction":"top",children:[(0,so.jsx)("div",{className:"popover__trigger",children:(0,so.jsx)(Jl,{item:e,cta:t})}),(0,so.jsx)(Bl,{domainName:n,item:e})]})),Object.assign(a,{$reactRoot:i})};var Xl=n(395);const eu=({offer:e,listingPrice:t,bestOffer:n,thereIsDiscount:a})=>{const o=e.rate.base+(e.rate.taxes||0)+(e.rate.hotelFees||0),r=e.currency,i=fa(t.totalPrice)-o;return(0,so.jsxs)("div",{className:"popover__content",children:[(0,so.jsxs)("div",{className:"popover__header",children:[(0,so.jsxs)("div",{className:"popover__header-text",children:[gn(n&&a?"alternative_offers.best_offer":"alternative_offers.popover.header.text")," ",(0,so.jsx)("img",{className:"popover__directo-logo",style:{marginLeft:"6px",visibility:"visible",opacity:1,transform:"scale(1.2) translateY(4px)"},src:e.provider.logoUrl})]}),(0,so.jsx)("div",{className:"popover__domain",children:(0,so.jsx)("span",{className:"popover__domain-text",children:e.provider.name})})]}),(0,so.jsx)("span",{style:{color:a?"green":"auto",fontSize:a?"20px":"16px"},children:a?gn("alternative_offers.save",{price:bc(Math.round(i),r)}):gn("alternative_offers.no_discount",{provider:e.provider.name})})]})},tu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAtCAYAAADV2ImkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAwaSURBVHgB7Vl5jFXVGf+du7335s3K7AgCioqQWhWVtpg4iq0akVBbjEUtRdtKamrb1MZKY2KUWv9oTVWUaCqgSBFwSbS1LlSpaCUhpiLrFBiwDsww896bmbfe/fT77r0PBpkFXP5o6pmc3Pvucs7v/L7ft5w7wJftC21Cwf9Y0/A5N/m39yb6W7YsRKFYsKZfuLriulkH8Tk2gc/Q5PMvXSg/3L0EBdMRp076jXnJhdnYaxvfREfnRJgW4Kp7xFUXz3ATxjnq5u13oncgJqrGLBIP/2wPPl0Tn4VhIdv3rMPh1ERAgdzXcWUs29+Lw70tUDwgTlxY7hlyR/su1fWakRoASiXI/tyfpJRtQgiJk2/ypBiW27dX4oNd30B/wbSnThqnP/fyM/A8gVgMULVoOBl2Sd2n34QdPnXXAWzqA7b02mbO1CqScfejLk377a0bTgK8OCnA3tInnhS7P1oYAGuq85FJqeC5FPZdJRwuwCuPHgPAhNjnczradNSTPhRNoCcLYRgPiHVLFp8ohhMGLB98MCG3bCugZoyATmwqKvWIGDm4DwLrl18WR5/jax6d2LSSfBFeuj+lbVrdJEIoozE9eliTMhhDuf2xx3ykMllIN5zVi0zME7tRd+ie7UbX6ei64TU36p4XLqSM3HdgF/q6L4VQEZhoVAJH1bC45557xOzW1jHTEk3XxnZsfQCZTF34KnWNmE6QfqurANMEsiVyNAIr/YhdEcpFi+Ti+iG7PC1JRDoeqcRIuadN/Gl2xnlvtlw7M00E+SNoelQNK4dXrpzUsCe9Ab3picLK0UR2eEfXgbMmAQu/DzTUEzQC8K8PgRXPkmMVQibZgKc0AYsWQFZVw7zvD4j3ZELA1INHhE6PJWnA2L72OmXG2Y8u7sNRMR0HeKSwxosRta++M1/05ydCJ6sZ1FUlZK21Abj1FjJmDOmVa1Bx9hTELzgX/pwBCPotfHpGF/CvmgXUNyL19Bq477yL+rHjaa0xBKGQDeW7EG4B0vRPb0r736ZLK6K5h2RZGQWwYn2wvRvpbjJ5PgxNjhPq8YLzAWKt65FlOPTA/dh1y80w+/rhTJtGlmeze/DPmABx0XTkOw8hu3YdsSlg9Q2Q/G2SgwNJWvdKBdh9PSh270X/wfZunpNliKH1LJXhmG1ra+N76n1m98uO7XwcarDsYDRZU0MgVberG1WxClQrGuz+fngxA6ZtwW+ohvjxApSyBWSWPYFYoQSFxmCwTqEI1yrBJbB8dGi8kuJsPX37O29PnjxZ2bhx47BEDnWDTSFyuRwDV5VvzTGUtkuKwaMcT70QtGSmSIT65NNgGHEkTxmLWGsLrM6DyB06CGf2FbDiFci8+jr8tzdBIz2zK/kkAddksBTS7BJ1k+RMeh475WOaT9+7d69GgIfzrSCcHHdx3rx5yoYNG9RXHn587K3VzX9V2jvOBrERZjAEDlVq3w3/sktR8fWLYEw9C5Xzr4efTCKz6s+wcllU/eJ25A91YWDJ/YhR6FM469F7LAtBppEsGVq8T+zyMaYaZ/7q4jln9JxW/xdbUVyyMHbu3Dmk+Y+lV9J6RbAQfaBtzneqLLEKMSVIEoGA2PODMsFCpqURFb/8OWLjx8PL5ZBa/wIyzz6L8WueAerqkXloKfDKq1CMGJRkJfRCAYYMS8QgURBw3w9DHfFPkU5Bp+fPmr7z7X/SIw5h8cQnAtlxUUJETzQ3Nyv5dF8uqRBSUSFghNmtnI9U1UBs915kbvoB/HiMTOvShBI1ty2CaGnBwN//gYHXX0Pjr+9A9RXfpEyswuvPwlz7PPw1a6HJMCn5nku4iXFyZBrD74nJ0rhx40RnZ2cZyzHRYkhxT506VTl8+LCYsm3Tu3vSvUvNfC4YnJ0syLxkAIWcLJGsQW1FHWqUODleEuqESai5YT6sdB/SD/8RFTcvQMXll6GfNNx+/+8opzhQbroBhfFj4RBQj+Tg0tGmY94q4oDqLrlu97Z/E9ggQkVZFiMB5swWaKehoUGQJrXzOnc+6NZUbZFBamDAYcDnVxXdoCLNACvIIwar7r6TnKmE/tWrIShiJGdfjVIqjb133Qlz3VrsX7kcNqVj67zzKaM7cNgBGThpOKOqL13Z2bE8F2JSpk+ffsTaw0pCRgJm4KlUKjje+72bJlQbTV/x9+8jk4egy44X0ECJhBeg33wjjDPPQuatjXDXPwdjTB0EOWHx40OIUz2RoPKz2NUVJFe3MgnTtaEzCVEl19Q6eeblKmrfOnjALJDWS6XSkLF4SIa51dXVBQ8vyhtfox1EnN0i0BxNwLrzHCc40i94zQ2Iz50LO5tHbumjiHMZSU4oKXQZLc1wyAEtWmzlOV9lO6O048Mg9jqk20AaxLTX1VH/IxmbwWAZB1uZsAQcDgu4XHRQ8EZfX1/AZfHAXsfJZeBSvHQp6LuORedWED+9YEIbxl13kGmpPH5qJeLd3QhCTLGI9LJlUJMVmPjUCox7+ilMuPEGlDo64G5+j97zYNG7DNoi8MVSTg4U+0oRq4IwHCHvGIw4vin0MAdwTviJec3jmh6qablXg5yrV1ZBcE1xpAyWKE45He7130XhwEewn1yOBGc0cGHmIaeSycnJai6bBT2eQH7XDvQ8shQVlFw0hHHZp4XarufkdfWFa1Ndiy3LYoq506aQc1NQvY0ImK+xthlwBfVkDDHj6pam6sebxr+oqtopLIMgatAfs9RfLATllU5hT1XCUpx17VJyKJBFssSiSxc0mlinzsFRRIU+KXXrbZmeH+4vFvNKPF4yTZPBlsjp7Pfff7+8wRpaEuUFsIci5DF4wYKlbc6m3YQeb2YkHunOJQ07XMTTUwmKFnFyKoXf9kOdEzGU3WjVVBDWqjp1CoOUdNSgLiLde36Q4VTHb2ovFl3K7yxJv7q6mgH6BLZc6WMkwCxyVFVVlTczfgTarU8kSm4u77oWadkOwfLR5ULICwGGQKgop1rDdcOQ5ZM0OBL4XLD7IVCWC4c0h57zpJePMdFCeBQZ/Gw262OErdKQ9XBjY2OwOooUPjkf74ncbel0cptR9+hYXf+JKb0iwfSTRqxRkE4ZlMes0p8vQ7kEsxJITzJAAsrRhGXCzum7HboUtUJ6Slpoy6VhGHaoXTciSA4HeriqKCgtEeo4Ti1J2kog1DRfVxc0n5JcnKh6Q1EU4RBgm5nlVChEBDyUhsPscs0QmEvClMK53S217ctk/EEAi9zJsiWqEvncwdEPBMe046o1GVZUQWghswoyER+V8iJ0XVcJiLa1kJPzE5XnKq7XyoDz8A71eM7WuO+fytz45HAlMnlKyA2m4ySE71dxKOuB//KKTGozjeOrquppmkZr9cxkMmnl83mLIpSTyWTKLI/O8NFkF0YLkofR29tbjhjMcjzq6tW1DfG5mnGJpwv397mBTZ2mKVc3jr271rYvJ+XiP6qyalGm94mLkkljtqJdQNvU6qdLhTcOmPwdK2DXjsViJbJSkRZQInJMcniHo0OUdeWogD9xj1kth7hYBDgRnRvRvfL2XCG22BpYWFd/aj+F6Bf70ym6Vp7Up3s+M+tQY9kSIO6kNpMTBq0HFtXi3rRp0yRnuaFYHmkTOugDQsCGUllZKchswNHooSPSdAQ8iDqrcgP7GTiDpWN5DBmN4xFYx7ZtZpm34OaYMWMskgHfkyOBLbM4NNpQGnIQGK22tjZGetMIRJxCkBEB1gYDJgYFERiMS+e013QGh0gG5ZAT28SqQ05mkZOxgwVOxuyuX79+xLB2Ip+qAgckbamkLS0CqZOTaFSoBLIgHQYOSWlVIfYCiRCDMnrXp/se3WOLeIlEgirQkh2xW44G5Ygw+KPXkO2EPlWxA1xzzTUe7bN4Aqu1tbVEYFl3HDvzZPoCeTxrJU9Ag873iMk8AcwT2OA3SapAC+J3OHRZtFFwaMxAJlwzjAb2ZFvZCYNijMJP4IQURSrpSN+qUFtTU8Ofseqj3hAdx1Dn69XUk7RYjjb8rk4SUHGSH9U/zRf4wd8tEG3JVVqApAqvHDHK40ran0na8ki+TwvyOe1zJo20GjyDL7pFRXWZ8TLrWrmTqY84JC1Mi5hUBzH6qf9V8Zn+xzF4nEEZ8pNNDnP+Zfuy/V+2/wLQlMJlaj4ozgAAAABJRU5ErkJggg==",nu=({offer:e,bestOffer:t,ctaPrefix:n})=>{const a=e.rate.base+(e.rate.taxes||0)+(e.rate.hotelFees||0),o=e.currency,r=`${n}_${e.provider.name.replace(".","_").toUpperCase()}`;return(0,so.jsxs)("button",{onClick:async()=>{w.openOutclickTab({cta:r,sourceUrl:window.location.href,targetUrl:e.url,sourceId:e.source_id??qu(),stayParams:await Wu(window.location.href)})},className:"directo-cta-button-light "+(t?"directo-cta-button-light-shadow-pulse":""),children:[t&&(0,so.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,so.jsx)("img",{src:tu,alt:"Directo",style:{width:"40px",height:"40px"}})}),(0,so.jsx)("img",{src:e.provider.logoUrl,style:{maxWidth:"5rem",maxHeight:"1.5rem"}}),(0,so.jsx)("span",{style:{fontSize:"20px"},children:bc(Math.floor(a),o)}),(0,so.jsx)(Cc,{})]})};class au{renderedLabels={};renderedSecondaryCTAs={};renderedAlternativeOffers={};debouncedRenderMLs=null;platform=null;displayName=null}class ou extends au{listingsInPage=new Set;rendererConfig;constructor(e){super(),this.rendererConfig=e}shouldActivate(e){throw new Error("Method not implemented.")}getLinkId(){if(!this.platform)throw new Error("Platform not set");return`${this.platform.substring(0,3)}${this.getItemId()}`}async getLoS(){const e=await this.buildQueryParams("checkin"),t=await this.buildQueryParams("checkout");return e&&t?function(e,t){const n=new Date(e),a=new Date(t);return Math.ceil((a.getTime()-n.getTime())/864e5)||1}(e,t):1}async getPrice(e){return await this.getLoS()?this.isDetailView()?await this.getDetailPrice():await this.getPriceFromList(e):{priceString:"",currency:"",priceStringIsNightly:!1,nightlyPrice:0,totalPrice:0}}isDetailView(){return!!this.getItemId()}async getDestinationInUrl(){return null}async getListingName(e){try{const t=mn(e.directo_url);return this.isDetailView()?(await this.getDetailsInfo()).title||t:await this.getListingNameFromList(e)||t}catch(t){return e.directo_url}}getHotelIdInDetail(){return null}cleanRenderedLabel(e){this.renderedLabels[e]&&(this.renderedLabels[e].remove(),delete this.renderedLabels[e])}filterNewListingsInPage(e){const t=[];return e.forEach(e=>{this.listingsInPage.has(e)||t.push(e),this.listingsInPage.add(e)}),this.listingsInPage.forEach(t=>{e.find(e=>e===t)||this.listingsInPage.delete(t)}),t}cleanAllRenderedLabels(){Object.keys(this.renderedLabels).forEach(e=>{this.cleanRenderedLabel(e)}),Object.keys(this.renderedSecondaryCTAs).forEach(e=>{this.cleanRenderedSecondaryCTAs(e)}),Object.keys(this.renderedAlternativeOffers).forEach(e=>{this.cleanRenderedAlternativeOffer(e)}),this.listingsInPage.clear()}cleanRenderedSecondaryCTAs(e){this.renderedSecondaryCTAs[e]&&(this.renderedSecondaryCTAs[e].forEach(e=>e&&e.remove&&e.remove()),delete this.renderedSecondaryCTAs[e])}cleanRenderedAlternativeOffer(e){this.renderedAlternativeOffers[e]&&(this.renderedAlternativeOffers[e].remove(),delete this.renderedAlternativeOffers[e])}setRenderedSecondaryCTA(e,t){this.renderedSecondaryCTAs[e]||(this.renderedSecondaryCTAs[e]=new Set),this.renderedSecondaryCTAs[e].add(t)}setRenderedAlternativeOffer(e,t){this.renderedAlternativeOffers[e]=t}async insertSecondaryCTA(e,t,n,a,o=document.body){if(!1===this.rendererConfig.renderSecondaryCTAs)return null;const r=a||e.source_id,i=this.renderedSecondaryCTAs[r];if(i&&[...i].every(e=>e.isConnected))return null;const s=await Dt(Ut,e=>!e,10)(t,o);if(!s)return null;this.cleanRenderedSecondaryCTAs(r);const c=await Zl(e,n);return s.appendChild(c),this.setRenderedSecondaryCTA(r,c),c}async insertAlternativeOffers(e,t){if(!1===this.rendererConfig.renderAlternativeOffers)return null;if(0===e.length)return null;const{id:n,selector:a,container:o=document.body,vertical:r=!1,styles:i,ctaPrefix:s}=t,c=e[0].source_id,l=`${c}${n?`-${n}`:""}`,u=this.renderedAlternativeOffers[l];if(u&&u.isConnected)return null;let p=null;if(p=a?await Dt(Ut,e=>!e,10)(a,o):o,!p)return null;const d=await(async(e,t,n)=>{const a=document.createElement("div"),o=a.attachShadow({mode:"closed"}),r=document.createElement("style");r.innerHTML="\n.offers-container {\n display: flex;\n gap: 10px;\n}\n.offers-container.offers-container-vertical {\n flex-direction: column;\n}\n.offers-container.offers-container-horizontal {\n flex-direction: row-reverse;\n}\n.secondary-button {\n position: relative;\n width: 100%;\n border: none;\n outline: none;\n color: white;\n cursor: pointer;\n border-radius: 5px;\n font-size: 14px;\n font-weight: bold;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n}\n.secondary-button:before{\n position: absolute;\n content: '';\n top: -2px;\n left: -2px;\n height: calc(100% + 4px);\n width: calc(100% + 4px);\n border-radius: 5px;\n z-index: -1;\n opacity: 1;\n filter: blur(5px);\n background: linear-gradient(45deg, #ff0000, #ff7300, #fffb00, #48ff00, #00ffd5, #002bff, #7a00ff, #ff00c8, #ff0000);\n background-size: 400%;\n transition: opacity 1s ease-in-out;\n animation: animate 20s linear infinite;\n z-index: 1;\n}\n.secondary-button:hover:before{\n opacity: 1;\n}\n.secondary-button:hover:active{\n background: none;\n}\n.secondary-button:hover:active:before{\n filter: blur(2px);\n}\n@keyframes animate {\n 0% { background-position: 0 0; }\n 50% { background-position: 400% 0; }\n 100% { background-position: 0 0; }\n}\n.secondary-button-span {\n z-index: 2;\n position: relative;\n display: flex;\n align-items: center;\n gap: 6px;\n /*background: radial-gradient(85.26% 304.19% at 109.77% -9.38%, #1E40AF 0%, #172554 100%);*/\n background: rgba(0,0,0,.5);\n padding: 8px 12px;\n width: 100%;\n border-radius: 4px;\n justify-content: center;\n transition: background .2s ease-in-out;\n white-space: nowrap;\n}\n.secondary-button-span:hover {\n background: rgba(0, 0, 0, .8);\n}\n.secondary-button-container {\n padding: 4px;\n background: rgba(0,0,0,.5);\n border-radius: 8px;\n width: 100%;\n}\n\n.directo-cta-button-shine:hover {\n background-color: #edb602;\n}\n.directo-cta-button-shine {\n white-space: nowrap;\n font-weight: 600;\n width: 100%;\n min-height: 36px;\n cursor: pointer;\n border-width: 1px;\n border-color: rgb(0 0 0 / 0.1);\n border-radius: 4px;\n padding: 4px 12px;\n background-color: #FDC307;\n display: flex;\n gap: 0.5rem;\n justify-content: space-between;\n align-items: center;\n color: #000141;\n position: relative;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.directo-cta-button-shine {\n overflow: hidden;\n}\n\n.directo-cta-button-light {\n box-shadow: 0 0 5px 1px rgba(253, 195, 7, 0.5);\n white-space: nowrap;\n font-weight: 600;\n width: 100%;\n min-height: 36px;\n cursor: pointer;\n border-width: 1px;\n border-color: rgb(0 0 0 / 0.1);\n border-radius: 4px;\n padding: 4px 12px;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n display: flex;\n gap: 0.5rem;\n justify-content: flex-end;\n align-items: center;\n color: #000141;\n position: relative;\n}\n\n.directo-cta-button-light img {\n margin-right: auto;\n}\n\n.directo-cta-button-light-shadow-pulse {\n animation: pulse-shadow 2s infinite ease-in-out;\n background-color: #edb602;\n}\n\n@keyframes pulse-shadow {\n 0% {\n box-shadow: 0 0 10px 2px rgba(253, 195, 7, 0.5);\n }\n 50% {\n box-shadow: 0 0 20px 10px rgba(253, 195, 7, 0.7);\n }\n 100% {\n box-shadow: 0 0 10px 2px rgba(253, 195, 7, 0.5);\n }\n}\n\n.directo-cta-button-shine::before {\n background: linear-gradient(to right, rgba(216, 182, 182, 0) 0%, #ffffffbe);\n content: '';\n display: block;\n height: 100%;\n left: -75%;\n position: absolute;\n top: 0;\n transform: skewX(-25deg);\n width: 50%;\n z-index: 2;\n -webkit-animation: shine 2s ease-in-out infinite;\n animation: shine 2s ease-in-out infinite;\n}\n\n@keyframes shine {\n 100% {\n left: 125%;\n }\n}\n\n.popover {\n position: relative;\n z-index: auto;\n}\n.popover__content {\n position: absolute;\n min-width: 130px;\n // width: 362px;\n width: 300px;\n text-align: left;\n display: flex;\n padding: 1rem; /* p-4 */\n visibility: hidden;\n overflow: hidden;\n opacity: 0;\n background: white;\n transition: all 0.25s cubic-bezier(0, 0, 0.2, 1);\n color: #0f172a;\n border-radius: 0.5rem; /* Tailwind rounded-lg */\n font-weight: 500;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),\n 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n z-index: 999999999;\n flex-direction: column;\n gap: 0.5rem; /* gap-2 */\n align-items: flex-start;\n background-color: #ffffff;\n\n}\n\n.popover__trigger {\n cursor: pointer;\n z-index: 5;\n}\n\n/*\n.popover[data-direction=top] .popover__trigger:hover ~ .popover__content {\n transform: translate3d(-50%, 0, 0);\n visibility: visible;\n opacity: 1;\n}\n.popover[data-direction=top] .popover__content {\n bottom: calc(100% + .5rem);\n left: 50%;\n transform: translate3d(-50%, -15px, 0);\n}\n.popover[data-direction=top] .popover__content:after {\n bottom: -0.5em;\n left: 50%;\n transform: translate3d(-50%, 0, 0);\n border-width: 0 0.5em 0.5em 0.5em;\n border-color: transparent transparent white transparent;\n filter: drop-shadow(1px -1px 1px #bcbcbc);\n}\n*/\n\n.popover[data-direction=top] .popover__trigger:hover {\n box-shadow: 0 0 10px 1px rgba(253, 195, 7, 0.7);\n border-radius: 5px;\n}\n\n/* Title */\n.popover__title {\n font-size: 1.125rem; /* text-lg */\n line-height: 1.75rem; /* leading-7 */\n color: #000000;\n margin: 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.popover__title-text {\n font-weight: bold;\n}\n\n/* Domain / subtitle */\n.popover__domain {\n font-size: 0.875rem; /* text-sm */\n line-height: 1.25rem; /* leading-5 */\n color: #4B5563; /* text-gray-600 */\n}\n\n.popover__domain-text {\n font-weight: normal;\n}\n\n/* Bullet points */\n.popover__bullet-points {\n display: flex;\n flex-direction: column;\n gap: 0.5rem; /* gap-2 */\n align-items: flex-start;\n width: 100%;\n position: relative;\n}\n\n.popover__bullet-point {\n display: flex;\n align-items: center;\n gap: 0.5rem; /* gap-2 */\n width: 100%;\n position: relative;\n color: #000141;\n}\n\n.popover__bullet-text-disabled {\n --tw-text-opacity: 1;\n color: rgb(100 116 139 / var(--tw-text-opacity));\n}\n\n.popover__bullet-check {\n color: limegreen;\n font-size: 18px;\n font-weight: 700;\n}\n\n.popover__header {\n width:100%;\n display: flex;\n flex-direction: column;\n}\n.popover__header-text {\n align-items: center;\n display: inline;\n font-size: 20px;\n font-weight: bold;\n color: #000141;\n}\n\n.popover[data-direction=top] .popover__trigger:hover ~ .popover__content {\n transform: translate3d(-50%, 0, 0);\n visibility: visible;\n opacity: 1;\n}\n.popover[data-direction=top] .popover__content {\n bottom: calc(100% + .5rem);\n left: 50%;\n transform: translate3d(-50%, -15px, 0);\n}\n.popover[data-direction=top] .popover__content:after {\n bottom: -0.5em;\n left: 50%;\n transform: translate3d(-50%, 0, 0);\n border-width: 0 0.5em 0.5em 0.5em;\n border-color: transparent transparent white transparent;\n filter: drop-shadow(1px -1px 1px #bcbcbc);\n}\n\n\n/* Title */\n.popover__title {\n font-size: 1.125rem; /* text-lg */\n line-height: 1.75rem; /* leading-7 */\n color: #000000;\n margin: 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.popover__title-text {\n font-weight: bold;\n}\n\n/* Domain / subtitle */\n.popover__domain {\n font-size: 0.875rem; /* text-sm */\n line-height: 1.25rem; /* leading-5 */\n color: #4B5563; /* text-gray-600 */\n}\n\n.popover__domain-text {\n font-weight: normal;\n}\n\n.dr-floating-coupon-icon {\n position: absolute;\n top: -16px;\n left: -16px;\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n border-radius: 99px;\n font-size: 12px;\n z-index: 99;\n}\n"+(n.styles?"\n"+n.styles:""),o.appendChild(r);const i=document.createElement("div");return o.appendChild(i),e=[...e].sort((e,t)=>e.rate.base+(e.rate.taxes||0)+(e.rate.hotelFees||0)-(t.rate.base+(t.rate.taxes||0)+(t.rate.hotelFees||0))).slice(0,4),(0,co.H)(i).render((0,so.jsx)("div",{className:Xl("offers-container",n.vertical?"offers-container-vertical":"offers-container-horizontal"),children:e.map((e,a)=>{const o=e.rate.base+(e.rate.taxes||0)+(e.rate.hotelFees||0),r=t.totalPrice/100-o>0,i=0===a&&r;return(0,so.jsxs)("div",{className:"popover","data-direction":"top",children:[(0,so.jsx)("div",{className:"popover__trigger",children:(0,so.jsx)(nu,{offer:e,bestOffer:i,ctaPrefix:n.ctaPrefix})}),(0,so.jsx)(eu,{offer:e,listingPrice:t,bestOffer:i,thereIsDiscount:r})]},a)})})),a})(e,await this.getPrice(c),{vertical:r,styles:i,ctaPrefix:s});return this.cleanRenderedAlternativeOffer(l),p.appendChild(d),this.setRenderedAlternativeOffer(l,d),d}async canMakePricingRequest(){const e=await this.buildQueryParams("checkin"),t=await this.buildQueryParams("checkout");return!!e&&!!t}async renderAlternativeOffersInList(e,t){}async renderAlternativeOffersInDetail(e){}getListingNameFromList(e){return null}async insertSecondaryCTAInDetailView(e){throw new Error("Method not implemented.")}async insertSecondaryCTAInCheckoutView(e){throw new Error("Method not implemented.")}getItemId(e){throw new Error("Method not implemented.")}getItemIdOnOTACheckout(){throw new Error("Method not implemented.")}getListingNameOnOTACheckout(){throw new Error("Method not implemented.")}async getDetailsInfo(){throw new Error("Method not implemented.")}setMLRenderer(e){throw new Error("Method not implemented.")}getListingsInPage(){throw new Error("Method not implemented.")}markListingAsMultilisting(e,t){throw new Error("Method not implemented.")}getPriceFromList(e){throw new Error("Method not implemented.")}getDetailPrice(){throw new Error("Method not implemented.")}async getQueryParamMap(e){throw new Error("Method not implemented.")}async buildQueryParams(e,t=window.location.href){const n=new URL(t),a=(await this.getQueryParamMap(n))[e];return(B(a)?await a():Rt(n.searchParams.get(a)))||null}static getSection(e){throw new Error("Method not implemented.")}}const ru=function(){return z.Date.now()};var iu=/\s/;var su=/^\s+/;const cu=function(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&iu.test(e.charAt(t)););return t}(e)+1).replace(su,""):e};var lu=/^[-+]0x[0-9a-f]+$/i,uu=/^0b[01]+$/i,pu=/^0o[0-7]+$/i,du=parseInt;const mu=function(e){if("number"==typeof e)return e;if(L(e))return NaN;if($(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=$(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=cu(e);var n=uu.test(e);return n||pu.test(e)?du(e.slice(2),n?2:8):lu.test(e)?NaN:+e};var hu=Math.max,fu=Math.min;const gu=function(e,t,n){var a,o,r,i,s,c,l=0,u=!1,p=!1,d=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function m(t){var n=a,r=o;return a=o=void 0,l=t,i=e.apply(r,n)}function h(e){var n=e-c;return void 0===c||n>=t||n<0||p&&e-l>=r}function f(){var e=ru();if(h(e))return g(e);s=setTimeout(f,function(e){var n=t-(e-c);return p?fu(n,r-(e-l)):n}(e))}function g(e){return s=void 0,d&&a?m(e):(a=o=void 0,i)}function k(){var e=ru(),n=h(e);if(a=arguments,o=this,c=e,n){if(void 0===s)return function(e){return l=e,s=setTimeout(f,t),u?m(e):i}(c);if(p)return clearTimeout(s),s=setTimeout(f,t),m(c)}return void 0===s&&(s=setTimeout(f,t)),i}return t=mu(t)||0,$(n)&&(u=!!n.leading,r=(p="maxWait"in n)?hu(mu(n.maxWait)||0,t):r,d="trailing"in n?!!n.trailing:d),k.cancel=function(){void 0!==s&&clearTimeout(s),l=0,a=c=o=s=void 0},k.flush=function(){return void 0===s?i:g(ru())},k},ku=Wl(),bu=()=>(0,so.jsx)("div",{className:"dr-floating-directo dr-direct",children:(0,so.jsx)("span",{style:{position:"relative",zIndex:10},children:(0,so.jsx)(wc,{})})});class yu extends vc.Component{box=vc.createRef();item;backgroundColor;platform;constructor(e){super(e),this.state={hidden:!0},this.navigate=this.navigate.bind(this),this.item=e.item,this.backgroundColor=e.backgroundColor,this.platform=e.platform}navigate(e){return t=>{t.preventDefault();const n=to(e);ku.event("click_out_ml",{outbound_url:n}),Ju.navigateToDirectLink(n,"LIST",{parametrised:this.item.stay_parametrised,sourceId:this.item.source_id,verified:this.item.verified,coupon:this.item.coupon,discount:this.item.discount})}}getThumbs(){const e=this.item.score??0;let t="👍";return e>=70?t="👍👍👍":e>=50&&(t="👍👍"),e?(0,so.jsx)("div",{className:"dr-floating-score-icon",children:t}):null}getFloatingLabel(){return this.item.coupon?(0,so.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,so.jsx)(Sc,{})}):this.item.discount?(0,so.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,so.jsx)("img",{src:tu,alt:"Directo",className:"dr-h-7 dr-w-7"})}):this.getThumbs()}getTooltipText(){const{score:e,discount:t,coupon:n}=this.item;return gn(n?"label.coupon_tooltip":t?"label.discount_tooltip":e&&e>70?"label.high_score_tooltip":e?"label.score_tooltip":"label.tooltip")}render(){const e="GOOGLE"===Tn(window.location.href);return(0,so.jsxs)("button",{onClick:this.navigate(this.item.directo_url),ref:this.box,style:{position:"relative",backgroundColor:this.backgroundColor},className:"dr-floating-container",children:[this.getFloatingLabel(),!e&&(0,so.jsx)("span",{className:"dr-floating-container-before",style:{boxShadow:`${"booking"===this.platform?"-10px":"10px"} 10px 0 ${this.backgroundColor}`}}),(0,so.jsx)(bu,{},this.item.source_id),(0,so.jsx)("div",{className:"dr-floating-label-popover",children:this.getTooltipText()}),!e&&(0,so.jsx)("span",{className:"dr-floating-container-after",style:{boxShadow:`${"booking"===this.platform?"-10px":"10px"} 10px 0 ${this.backgroundColor}`}})]})}}const vu=function(e,t,n="white",a=!1){const o=Tn(window.location.href)?.toLowerCase(),r=document.createElement("div"),i=r.attachShadow({mode:"closed"}),s=function(e,t,n=!1){const a=document.createElement("style");return a.innerHTML='.dr-floating-directo {\n position: relative;\n margin-top: 5px;\n }\n .dr-floating-directo:before {\n content: "";\n position: absolute;\n width: 29px;\n height: 31px;\n background-color: #FDC307;\n left: 0;\n top: 0;\n border-top-right-radius: 100%;\n border-bottom-right-radius: 100%;\n border-top-left-radius: 8px;\n border-bottom-left-radius: 8px;\n animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;\n}\n.dr-floating-directo:after {\n content: "";\n position: absolute;\n width: 39px;\n height: 41px;\n background-color: #FDC307;\n left: -5px;\n top: -5px;\n border-top-right-radius: 100%;\n border-bottom-right-radius: 100%;\n border-top-left-radius: 8px;\n border-bottom-left-radius: 8px;\n}\n.dr-floating-container {\n outline: none;\n border: 0;\n cursor: pointer;\n width: 50px;\n height: 55px;\n background: white;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.dr-floating-score-icon {\n position: absolute;\n top: -12px;\n left: -20px;\n background-color: #3B82F6;\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n border: 3px solid white;\n border-radius: 99px;\n padding: 2px 6px;\n font-size: 12px;\n z-index: 99;\n}\n\n.dr-floating-coupon-icon {\n position: absolute;\n top: -16px;\n left: -16px;\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n border-radius: 99px;\n font-size: 12px;\n z-index: 99;\n}\n\n.dr-floating-container-before,\n.dr-floating-container-after {\n z-index: -1;\n}\n.dr-floating-container-before {\n position: absolute;\n width: 20px;\n height: 20px;\n bottom: 0px;\n background: transparent;\n border-radius: 50%;\n}\n.dr-floating-container-after {\n position: absolute;\n width: 20px;\n height: 20px;\n top: -20px;\n background: transparent;\n border-radius: 50%;\n}\n @keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}',a.innerHTML+=`.dr-floating-container {\n\n ${"booking"===t?"border-top-right-radius: 25px; margin-left: 0;":"border-top-left-radius: 10px; margin-left: 5px;"}\n }\n .dr-floating-container-before,\n .dr-floating-container-after {\n box-shadow: ${"booking"===t?"-10px":"10px"} 10px 0 ${e};\n }\n .dr-floating-container-before {\n ${"booking"===t?"right: -20px;":"left: -20px;"}\n }\n.dr-floating-container-after {\n ${"booking"===t?"left: 0px;":"vrbo"===t?"left: 30px;":"left: 25px;"}\n\n}\n `,a.innerHTML+=`\n .dr-floating-label-popover {\n position: absolute;\n ${["booking","google"].includes(t)?"top: -51px;left: 50%; border-radius: 8px;":"left: -60px;top: -33px;border-radius: 8px 8px 2px 8px;"}\n color: #000141;\n transform: translateX(-50%);\n background: white;\n padding-top: 8px;\n padding-right: 16px;\n padding-bottom: 8px;\n padding-left: 16px;\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n z-index: 999;\n visibility: hidden;\n opacity: 0;\n transition: all .15s ease-in-out;\n font-weight: 600;\n width: 148px;\n padding-top: 8px;\n padding-bottom: 8px;\n text-align: center;\n pointer-events: none;\n }\n .dr-floating-container:hover .dr-floating-label-popover {\n visibility: visible;\n opacity: 1;\n ${["booking","google"].includes(t)?`top: -41px;left: ${n?130:50}%;`:"left: -60px;top: -23px;border-radius: 8px 8px 2px 8px;"}\n }\n `,a}(n,o,a);i.appendChild(s);const c=document.createElement("div");return Object.assign(c.style,t),i.appendChild(c),(0,co.H)(c).render((0,so.jsx)(yu,{item:e,backgroundColor:n,platform:o})),r},wu='[data-testid="content-scroller"]';function ju(e){if("childList"===e.type){if(e.removedNodes.length)return!0;if(e.addedNodes&&e.addedNodes[0]&&e.addedNodes[0]?.firstChild&&"dr-floating-container"===(e.addedNodes[0]?.firstChild).className)return!0;if(!e.addedNodes[0]?.firstChild?.className)return!0}return!1}class _u extends ou{constructor(e){super(e),this.platform="AIRBNB",this.displayName="Airbnb"}shouldActivate(e){return/airbnb\.[.a-z]{2,7}/i.test(e)}getListingsInPage(){const e=document.querySelectorAll("a.bn2bl2p");return Array.from(e).map(e=>{const t=e.getAttribute("target")?.replace("listing_","");return t})}findListingElement(e){return document.querySelector(`[target=listing_${e}]`)}async renderAlternativeCTAInList(e,t){const n=t.closest('[itemprop="itemListElement"]');if(!n)return;const a=await this.insertSecondaryCTA(e,['[data-testid="price-availability-row"]'],"SECONDARY_CTA_IN_LIST_ITEM",`${e.source_id}-list`,n);if(!a)return;a.style.marginTop="12px",a.style.display="flex",a.style.justifyContent="center",a.style.background="#F3F4F6",a.style.padding="6px",a.style.borderRadius="8px";const o=Ut([".directo-cta-button-shine",".directo-cta-button-dark"],a.$reactRoot);o&&(o.style.borderRadius="8px")}async markListingAsMultilisting(e,t){this.cleanRenderedLabel(e);const n=this.findListingElement(e);if(!n)return;const a=null!==n.closest(wu),o=this.getLabelPlacement(n),r=vu(t,o,a?"#F7F6F2":"white");this.renderedLabels[e]||(this.renderedLabels[e]=r,this.appendLabel(n,r),this.renderAlternativeCTAInList(t,n))}async insertSecondaryCTAInDetailView(e){this.cleanRenderedLabel(e.source_id);const t=await this.insertSecondaryCTA(e,['._wgmchy[data-testid="book-it-default"]'],"SECONDARY_CTA_IN_DETAIL_BOOK");if(!t)return;t.style.marginTop="10px";const n=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();n&&(n.style.borderRadius="8px",n.style.padding="15px 12px")}async insertSecondaryCTAInCheckoutView(e){this.cleanRenderedLabel(e.source_id);const t=await this.insertSecondaryCTA(e,['[data-plugin-in-point-id="CONFIRM_AND_PAY"][data-section-id="CONFIRM_AND_PAY"]'],"SECONDARY_CTA_IN_CHECKOUT_FOOTER");if(!t)return;t.parentElement&&(t.parentElement.style.display="flex"),t.style.marginLeft="10px";const n=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();n&&(n.style.borderRadius="8px",n.style.padding="18px 12px",n.style.fontSize="16px",n.style.gap="12px")}getLabelPlacement(e){const{top:t,right:n}=function(e){const t=e.parentElement?.parentElement;if(!t)return console.warn("Parent element not found."),{right:-5,top:0};const n=Ut(["picture img"],t);if(!n)return console.warn("Picture element not found."),{right:-5,top:0};const a=null!==e.closest(wu);return{right:-5,top:n.height-(a?70:54)}}(e);return{position:"absolute",top:`${t}px`,right:`${n}px`,zIndex:"1",borderTopLeftRadius:"25px"}}appendLabel(e,t){if(!1===this.rendererConfig.renderLabels)return;const n=io(1,3);try{switch(n){case 1:return e.append(t);case 2:return e.parentElement.append(t);case 3:return e.parentElement.children[1].append(t)}}catch(n){return e.append(t)}}async getDetailsInfo(){const e=Ut(['[data-section-id="TITLE_DEFAULT"] h1']),t=Oe(e,"textContent"),n=Ut(["#FMP-target"]);let a=null;n&&(a=n.getAttribute("src"));const o=Ut(['[data-section-id="TITLE_DEFAULT"] [aria-hidden=false]']);return{title:t,image:a,market:Oe(o,"textContent")}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=gu(e,2e3,{trailing:!0})),setTimeout(async()=>{const e=await Dt(Ut,e=>!e)(["[itemprop=itemListElement]"]);new MutationObserver(e=>{for(const t of e)!ju(t)&&this.debouncedRenderMLs&&this.debouncedRenderMLs()}).observe(e,{childList:!0,subtree:!0})},800),this.debouncedRenderMLs()}async getPriceFromList(e){const t={priceString:"",currency:"EUR",priceStringIsNightly:!0,nightlyPrice:0,totalPrice:0};if(!e)return t;const n=this.findListingElement(e);if(!n)return t;if(null!==n.closest(wu))return t;const a=await Dt(Ut,e=>!e,2)(['[data-testid="price-availability-row"] [role="presentation"] [aria-hidden="true"] [role="button"]','[data-testid="price-availability-row"] [role="presentation"] [aria-hidden="true"]'],n.parentElement);if(!a)return t;const o=[...a.querySelectorAll("span")].find(e=>"clip"!==getComputedStyle(e).overflow);if(!o)return t;const r=o.textContent,i=ga(r.replace(/[^0-9.]/g,""));return null===i?t:{priceString:r,currency:await this.buildQueryParams("currency"),priceStringIsNightly:!1,totalPrice:i,nightlyPrice:i/await this.getLoS()}}async canMakePricingRequest(){const{hash:e}=window.location,t=e.includes("availability-calendar");return await super.canMakePricingRequest()&&!t}async getDetailPrice(){let e="";const t=await Dt(()=>{const e=Ut(['[data-testid="book-it-default"] button']);if(!e)return null;const t="dialog"===e.getAttribute("aria-haspopup");return[...e.querySelectorAll("span")].find(e=>{const n=getComputedStyle(e);return"solid"===n.textDecorationStyle&&(!!t||"underline"===n.textDecorationLine)})||null},e=>!e)();t&&(e=t.textContent||"");const n=e.replace(/\n/gm,""),a=await this.buildQueryParams("currency"),o=ga(n.replace(/[^0-9.]/g,""))||0;return{priceString:n,currency:a,priceStringIsNightly:!1,totalPrice:o,nightlyPrice:o/await this.getLoS()}}getItemId(e){return(In.exec(e||location.href)||[])[3]??null}async getItemIdOnOTACheckout(){return(/(www\.)?airbnb\.[.a-z]{2,7}\/book\/stays\/(\d+)/i.exec(location.href)||[])[2]??null}getListingNameOnOTACheckout(){const e=Ut(["#LISTING_CARD-title"]);return e?.textContent||null}getListingNameFromList(e){const t=this.findListingElement(e.source_id),n=t?.parentElement?.querySelector('[data-testid="listing-card-title"]')?.textContent;return n||e.directo_url}async getDestinationInUrl(){const e=/[https:\/\/]*[www]*\.airbnb\.[^\/]+\/s\/([^\/]+)\/homes/i.exec(location.href);return e?.length?decodeURIComponent(e[1]):null}async getQueryParamMap(e){return{checkin:()=>e.searchParams.get("check_in")||e.searchParams.get("checkin")||en(new Date(Date.now()+8641e4)),checkout:()=>e.searchParams.get("check_out")||e.searchParams.get("checkout")||en(new Date(Date.now()+16641e4)),adults:()=>e.searchParams.get("adults")||"2",children:()=>e.searchParams.get("children")||"0",currency:async()=>{if(e.searchParams.has("display_currency"))return e.searchParams.get("display_currency");if(e.searchParams.has("currency"))return e.searchParams.get("currency");const t=await Dt(()=>Ft(['footer .dir-ltr [type="button"] span']),e=>!e,8)(),n=(r=null==(o=t)?0:o.length)?o[r-1]:void 0,a=Oe(n,"textContent","EUR")?.replace(/\n/gm,"");var o,r;return a??null}}}static getSection(e){const t=e.href;return Ln.test(t)?"LIST":In.test(t)?"DETAIL":Dn.test(t)?"CHECKOUT":"UNKNOWN"}cleanRenderedSecondaryCTA(e,t){e.remove(),delete this.renderedSecondaryCTAs[t]}}function xu(e){if("childList"===e.type){if(e.removedNodes.length)return!0;const t=e.addedNodes[0];if(""===t?.className&&"DIV"===t?.nodeName)return!0;if(t&&"dr-floating-container"===t?.firstChild?.className)return!0}return!1}class zu extends ou{lastUrl="";mapWasOpen=!1;isGridMode=void 0;embeddedInfoCache=null;constructor(e){super(e),this.platform="BOOKING",this.displayName="Booking.com",this.mapWasOpen=this.isMapOpen()}shouldActivate(e){return/booking\.com/i.test(e)}static getItemId(e){return ia(e)}isDetailView(){return![null,"searchresults"].includes(this.getItemId())}getListingsInPage(){if(this.isMapOpen())return[];const e=Ft(['[data-testid="property-card"]','[data-testid="property-card-desktop-single-image"]']),t=Array.from(e||[]).map(e=>{const t=e.querySelector("a");let n=t?.getAttribute("href");return ra((a=n.match(/[^]+?\.html/))&&a.length?a[0]:void 0);var a});return this.filterNewListingsInPage(t)}getListingCardContainer(e){const t=e.closest('[data-testid="property-card-container"]');return t?.firstChild?.firstChild??null}findListingElement(e){const t=Ft(['[data-testid="property-card"]','[data-testid="property-card-desktop-single-image"]']);if(!t||0===t.length)return null;let n=null;for(const a of t){const t=a.querySelector("a")||a,o=t.getAttribute("href");if(o&&ra(o)===e){n=t;break}}return n?this.getListingCardContainer(n):null}isMapOpen(){const{hash:e}=window.location,t=e.includes("map_opened");return this.mapWasOpen!==t&&(this.mapWasOpen=t,this.listingsInPage.clear(),this.renderedLabels=[]),t}async setGridMode(){const e=await Dt(Ut,e=>!e,5)(['[role="radiogroup"]']);return void 0===this.isGridMode&&(this.isGridMode="grid"===e.querySelector("[checked]")?.getAttribute("value")),e&&e.addEventListener("change",()=>{this.cleanAllRenderedLabels(),this.isGridMode=!this.isGridMode,this.debouncedRenderMLs&&this.debouncedRenderMLs()}),this.isGridMode}async renderAlternativeCTAInList(e,t){const n=await this.insertSecondaryCTA(e,['[data-testid="availability-cta"]','[data-testid="availability-group"'],"SECONDARY_CTA_IN_LIST_ITEM",`${e.source_id}-list`,t);if(n){n.style.marginTop="10px";const e=await Dt(()=>Ut([".popover"],n.$reactRoot))();e&&(e.style.zIndex="auto")}setTimeout(()=>{const n=this.findListingElement(e.source_id);if(!n)return;const a=n.closest('[data-testid="property-card"]');a&&(a===t||this.renderAlternativeCTAInList(e,a))},2e3)}async renderAlternativeOfferInList(e,t){if(0===e.length)return;const n=`${e[0].source_id}-list`;this.cleanRenderedSecondaryCTAs(n),await this.insertAlternativeOffers(e,{id:n,vertical:!0,container:t,styles:Cu,ctaPrefix:"VIO_BOOKING_LIST"})}async renderAlternativeOffersInList(e,t){if(this.isMapOpen())return;if(0===t.length)return;const n=this.findListingElement(e);if(!n)return;const a=n.closest('[data-testid="property-card"]');a&&this.renderAlternativeOfferInList(t,a)}async renderAlternativeOffersInDetail(e){if(0===e.length)return;const t=await Dt(e=>Ut(e),e=>null===e,10)([".hprt-reservation-cta"]);if(!t)return;const n=`${e[0].source_id}-detail`;this.cleanRenderedAlternativeOffer(n),await this.insertAlternativeOffers(e,{id:n,vertical:!0,container:t,styles:Su,ctaPrefix:"VIO_BOOKING_DETAIL"})}async markListingAsMultilisting(e,t){if(this.isMapOpen())return;const n=this.findListingElement(e);if(!n)return;const a=n.closest('[data-testid="property-card"]');if(!a)return;const o=window.getComputedStyle(a).getPropertyValue("background-color"),r=this.getLabelPlacement(n),i=vu(t,r,o);this.appendLabel(e,a,i),this.renderAlternativeCTAInList(t,a),this.rankListing(t,a)}rankListing(e,t){if(t&&t.parentElement)try{const n=new URL(window.location.href).searchParams.get("order");if(e.ranking&&(!n||"popularity"===n)){const e=t.parentElement;e.insertBefore(t,e.firstChild)}}catch(e){console.error(e)}}async insertSecondaryCTAInDetailView(e){const t=await this.insertSecondaryCTA(e,["#top-book"],"SECONDARY_CTA_IN_DETAIL_ALT",`${e.source_id}-1`);t&&(t.style.marginTop="10px");const n=await this.insertSecondaryCTA(e,[".ph-footer"],"SECONDARY_CTA_IN_DETAIL_BOOK",`${e.source_id}-2`);n&&(n.style.marginTop="10px");const a=await this.insertSecondaryCTA(e,[".hprt-reservation-cta"],"SECONDARY_CTA_IN_DETAIL_BOOK",`${e.source_id}-3`);a&&(a.style.marginTop="10px")}async insertSecondaryCTAInCheckoutView(e){return this.debouncedInsertSecondaryCTAInCheckoutView(e)}debouncedInsertSecondaryCTAInCheckoutView=gu(this.insertSecondaryCTAInCheckoutViewToDebounce,9e3,{leading:!0});async insertSecondaryCTAInCheckoutViewToDebounce(e){const t=await this.insertSecondaryCTA(e,[".bui-group.bui-button-group.bui-group--vertical-align-middle.bui-group--inline.bui-group--align-end"],"SECONDARY_CTA_IN_CHECKOUT_FOOTER");if(!t)return;const n=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();n&&(n.style.padding="14px 15px",n.style.fontSize="15px")}appendLabel(e,t,n){!1!==this.rendererConfig.renderLabels&&(this.cleanRenderedLabel(e),t.append(n),this.renderedLabels[e]=n,setTimeout(()=>{const a=this.findListingElement(e);a&&(a===t||this.appendLabel(e,a,n))},2e3))}getLabelPlacement(e){return{position:"absolute",zIndex:"200",bottom:"0px",borderTopRightRadius:"25px"}}async getDetailsInfo(){const e=Ut([".pp-header__title"]),t=Oe(e,"textContent",""),n=Ut([".slick-slide.slick-active img",".bh-photo-grid .bh-photo-grid-photo1.active-image",".bh-photo-grid-item.bh-photo-grid-photo1.active-image"]);let a=null;n&&(a=n.getAttribute("data-thumb-url"));const o=Ut([".sb-destination__input"]);return{title:t,image:a,market:Oe(o,"value")}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=gu(e,2500,{trailing:!0})),setTimeout(async()=>{const e=(await Dt(Ut,e=>!e)(['[data-testid="property-card"]'])).parentElement,t=new MutationObserver(e=>{this.cleanAllRenderedLabels()});t.disconnect();const n=e.parentElement?.parentElement?.parentElement?.querySelector(".d3c5f9b609");t.observe(n,{childList:!0,subtree:!0});const a=new MutationObserver(e=>{for(const t of e)!xu(t)&&this.debouncedRenderMLs&&this.debouncedRenderMLs()});a.disconnect();const o=e.parentElement?.parentElement?.parentElement?.querySelector('[data-results-container="1"]');a.observe(o,{childList:!0,subtree:!0}),this.setGridMode&&this.setGridMode(),this.lastUrl=window.location.href},2e3),this.lastUrl!==window.location.href&&this.listingsInPage.clear(),this.debouncedRenderMLs()}async getPriceObject(e){const t=ga(e.replace(/[^0-9,]/g,""))||0;return{priceString:e,currency:await this.buildQueryParams("currency"),priceStringIsNightly:!1,nightlyPrice:t/(await this.getLoS()||1),totalPrice:t}}async getPriceFromList(e){const t=this.findListingElement(e),n=await Dt(Ut,e=>!e,2)(['[data-testid="price-and-discounted-price"]'],t?.parentElement?.parentElement?.parentElement),a=n?.textContent?.replace(/\n/gm,"")||"";return this.getPriceObject(a)}async getDetailPrice(){let e="";const t=await Dt(Ut,e=>!e,2)(["#hprt-table .bui-price-display__value"]);t&&(e=t.textContent||"");const n=e.replace(/\n/gm,"");return this.getPriceObject(n)}getItemId(e){return zu.getItemId(e)}async getItemIdOnOTACheckout(){try{return this.getItemIdOnOTACheckoutFromJsonApplicationContext()||this.getItemIdOnOTACheckoutFromSidebar()}catch(e){return console.error(e),null}}getItemIdOnOTACheckoutFromJsonApplicationContext(){const e=Ut(['[data-capla-application-context="data-capla-application-context"]']);if(!e)return null;const t=JSON.parse(e.textContent||"{}"),n=Oe(t,"body.BPRenderData.bookingSummaryDetails.hotelAbsoluteUrl",null);return"string"!=typeof n?null:this.getItemId(n)}getItemIdOnOTACheckoutFromSidebar(){const e=Ut(['[data-testid="booking-details-date-summary"]'])?.parentElement,t=e?.querySelector("a"),n=t?.getAttribute("href");return n?this.getItemId(n):null}getListingNameOnOTACheckout(){const e=Ut([".bp-mfe-container--property-details h1"]);return e?.textContent||null}getListingNameFromList(e){const t=this.findListingElement(e.source_id),n=t?.parentElement?.parentElement?.parentElement?.querySelector('[data-testid="title"]')?.textContent;return n||e.directo_url}async getDestinationInUrl(){return null}getHotelIdInDetail(){const e=/window\.utag_data = ({\n[^]*?});/gm.exec(window.document.body.innerHTML),t=e?e[1]:"{}";try{const e=t.replace(/'/g,'"').replace(/([a-zA-Z0-9_]+):/g,'"$1":');return JSON.parse(e.split("\n").filter(e=>(e.match(/"/g)||[]).length<=4).join("\n")).hotel_id}catch(e){return console.error(e),null}}async getQueryParamMap(e){const{search:t}=e;return dt(t?.split(";").slice(1),t=>{const[n,a]=t.split("=");e.searchParams.set(n,a)}),e.searchParams.forEach((t,n)=>{e.searchParams.set(n,t.split(";")[0])}),{checkin:async()=>{const t=e.searchParams.get("checkin");if(t)return t;return await this.getEmbeddedValue(e,Au[zu.getSection(e)]("checkin"))||Yt.fromDate(Jt(new Date,1)).toDashYYYYMMDD()},checkout:async()=>{const t=e.searchParams.get("checkout");if(t)return t;const n=await this.getEmbeddedValue(e,Au[zu.getSection(e)]("checkout"));if(n)return n;return function(e,t){if(!e||!t)return null;const n=Yt.tryFromDashYYYYMMDD(e);if(!n)return null;const a=parseInt(t,10);if(Number.isNaN(a)||a<0)return null;const o=Jt(n.unsafe_toDate(),a);return Yt.fromDate(o).toDashYYYYMMDD()}(e.searchParams.get("checkin"),e.searchParams.get("interval"))||Yt.fromDate(Jt(new Date,2)).toDashYYYYMMDD()},adults:()=>e.searchParams.get("req_adults")||e.searchParams.get("group_adults")||"2",children:()=>e.searchParams.get("req_children")||e.searchParams.get("group_children")||"0",currency:async()=>{const e=await Dt(Ut,e=>!e,4)(['[data-testid="header-currency-picker-trigger"]']),t=Oe(e,"textContent","EUR")?.replace(/\n/gm,"");return t??null}}}static getSection(e){const t=e.href;return Mn.test(t)?"LIST":Rn.test(t)?"DETAIL":$n.test(t)?"CHECKOUT":Bn.test(t)?"CONFIRMATION":"UNKNOWN"}async getEmbeddedInfoJson(e){if(null!==this.embeddedInfoCache)return this.embeddedInfoCache;const t=Eu[zu.getSection(e)];if(!t)return null;const n=await Kt([t]);return this.embeddedInfoCache=n,this.embeddedInfoCache}async getEmbeddedValue(e,t){const n=await this.getEmbeddedInfoJson(e);if(!n)return null;const a=t(n);return"string"!=typeof a?null:a}}const Cu="\n.offers-container {\n margin-top: 20px;\n}\n",Su="\n.offers-container {\n margin-top: 10px;\n}\n",Eu={LIST:'script[data-capla-namespace*="b-search-web-searchresults"][data-capla-store-data="apollo"]',DETAIL:'script[data-capla-namespace*="b-property-web-property"][data-capla-store-data="apollo"]',CHECKOUT:'script[data-capla-namespace*="b-checkout-bp-accommodation"][data-capla-store-data="apollo"]',CONFIRMATION:'script[data-capla-namespace*="b-post-booking-web"][data-capla-store-data="apollo"]',UNKNOWN:null},Ou=()=>()=>null,Au={LIST:function(e){return t=>{if(!t.ROOT_QUERY)return null;const n=$t(t.ROOT_QUERY);if(!n||!n.searchQueries)return null;const a=$t(n.searchQueries);if(!a)return null;const o=Bt(a,/^search\(.*\)$/);if(!o)return null;const r=$t(o);if(!r||!r.searchMeta)return null;const i=$t(r.searchMeta);if(!i||!i.dates)return null;const s=$t(i.dates);if(!s)return null;const c=s[e];return"string"!=typeof c?null:c}},DETAIL:function(e){return t=>{if(!t.ROOT_QUERY)return null;const n=$t(t.ROOT_QUERY);if(!n)return null;const a=Bt(n,/^hotelPageByPageName\(.*\)$/);if(!a)return null;const o=$t(a);if(!o||!o.propertyFullExtended)return null;const r=$t(o.propertyFullExtended);if(!r||!r.searchBoxPrefillData)return null;const i=$t(r.searchBoxPrefillData);if(!i||!i.dates)return null;const s=$t(i.dates);if(!s)return null;const c=s[e];return"string"!=typeof c?null:c}},CHECKOUT:Ou,CONFIRMATION:Ou,UNKNOWN:Ou},Pu=function(e,t,n,a){var o=-1,r=null==e?0:e.length;for(a&&r&&(n=e[++o]);++o<r;)n=t(n,e[o],o,e);return n},Nu=function(e,t,n,a,o){return o(e,function(e,o,r){n=a?(a=!1,e):t(n,e,o,r)}),n};class Tu extends ou{constructor(e){super(e),this.platform="VRBO",this.displayName="Vrbo"}shouldActivate(e){return/vrbo\.com/i.test(e)}getListingsInPage(){const e=function(e,t,n){var a=j(e)?Pu:Nu,o=arguments.length<3;return a(e,il(t),n,o,lt)}(Ft(['[data-stid="open-hotel-information"]','[role="listitem"] a']),(e,t)=>{const n=t.getAttribute("href");return e.push(this.getIdFromUrl(n)),e},[]);return this.filterNewListingsInPage(e)}findListingElement(e){const t=Ft(['[data-stid="open-hotel-information"]','[role="listitem"] .HitCarousel a']);let n=null;return t?.forEach(t=>{const a=t.getAttribute("href");a?.indexOf(e)>-1&&(n=t)}),n}async renderAlternativeCTAInList(e,t){const n=t.parentElement;if(!n)return null;const a=await this.insertSecondaryCTA(e,['[data-test-id="price-summary"]'],"SECONDARY_CTA_IN_LIST_ITEM",`${e.source_id}-list`,n);if(!a)return;a.style.marginTop="12px";const o=await Dt(()=>Ut([".popover__content"],a.$reactRoot))();o&&(o.style.left="39px");const r=await Dt(()=>Ut([".popover"],a.$reactRoot))();r&&(r.style.zIndex="999")}async markListingAsMultilisting(e,t){this.cleanRenderedLabel(e);const n=this.findListingElement(e);if(!n||!n.parentElement)return;const a=this.getLabelPlacement(n),o=vu(t,a);if(this.renderedLabels[e])return;const r=Ut(["figure",".LazyLoad"],n.parentElement)||n;this.appendLabel(e,r,o),this.renderAlternativeCTAInList(t,n)}async insertSecondaryCTAInDetailView(e){this.cleanRenderedLabel(e.source_id);const t=await this.insertSecondaryCTA(e,[".uitk-spacing.uitk-spacing-padding-blockstart-three.uitk-spacing-padding-inline-three"],"SECONDARY_CTA_IN_DETAIL_BOOK");if(!t)return;const n=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();n&&(n.style.borderRadius="30px",t.style.padding="10px 0px")}async insertSecondaryCTAInCheckoutView(e){return this.debouncedInsertSecondaryCTAInCheckoutView(e)}debouncedInsertSecondaryCTAInCheckoutView=gu(this.insertSecondaryCTAInCheckoutViewToDebounce,9e3,{leading:!0});async insertSecondaryCTAInCheckoutViewToDebounce(e){this.cleanRenderedLabel(e.source_id);const t=await this.insertSecondaryCTA(e,['[data-at-id="contact-continue-button-standard"]'],"SECONDARY_CTA_IN_CHECKOUT_FOOTER");if(t){t.parentElement?.parentElement&&(t.parentElement.parentElement.style.display="flex",t.parentElement.parentElement.appendChild(t)),t.style.marginLeft="10px";const e=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],t.$reactRoot))();e&&(e.style.borderRadius="99px",e.style.padding="18px 28px",e.style.gap="16px",e.style.fontSize="16px")}await this.insertSecondaryCTA(e,[".price-details"],"SECONDARY_CTA_IN_CHECKOUT_SUMMARY")}appendLabel(e,t,n){if(!1===this.rendererConfig.renderLabels)return;const a=io(1,5);try{switch(a){case 1:return t.append(n);case 2:return t.children[0].append(n);case 3:return t.children[0].children[0].append(n);case 4:return t.children[0].children[0].children[0].append(n);case 5:return t.children[0].children[0].children[1].append(n)}}catch(e){return t.append(n)}finally{this.renderedLabels[e]=n}}getLabelPlacement(e){const{bottom:t,left:n}=function(e){const t=e.parentElement?.parentElement;return t?{left:(Ut(["figure",".LazyLoad"],t)||t).clientWidth-50,bottom:t.clientHeight-e.clientHeight}:(console.warn("Parent element not found."),{left:0,bottom:0})}(e);return{position:"absolute",bottom:`${t}px`,left:`${n}px`,zIndex:"999"}}async getDetailsInfo(){const e=Ut([".property-headline",'[data-stid="content-hotel-title"]',"h1.uitk-heading-3"]),t=Oe(e,"textContent",""),n=Ut([".photo-grid__photo-wrapper img",".uitk-image-placeholder img"]);let a,o=null;n&&(o=n.getAttribute("src"));const r=Ut([".HeadlineBreadcrumbs",'[data-stid="content-hotel-address"]']);return r&&(a=r.textContent?.split("/")[0]),{title:t,image:o,market:a}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=gu(e,2e3,{leading:!0}));const t=await Dt(Ut,e=>!e)([".HitCollection",'[data-stid="property-listing-results"]']);new MutationObserver(e=>{for(const t of e)"childList"===t.type&&this.debouncedRenderMLs&&this.debouncedRenderMLs()}).observe(t,{childList:!0,subtree:!0}),this.debouncedRenderMLs()}async getPriceObject(e){const t=ga(e.replace(/[^0-9.]/g,""))||0;return{priceString:e,currency:await this.buildQueryParams("currency"),priceStringIsNightly:!1,nightlyPrice:t/await this.getLoS(),totalPrice:t}}async getPriceString(e){const t=await Dt(Ut,e=>!e,10)(['[data-test-id="price-summary-message-line"] span'],e);return t?.textContent||""}async getDetailPrice(){const e=await this.getPriceString();return this.getPriceObject(e)}async getPriceFromList(e){const t=e?this.findListingElement(e)?.parentElement:document,n=await this.getPriceString(t);return this.getPriceObject(n)}getItemId(e){const{href:t}=window.location;return this.getIdFromUrl(e||t)}isDetailView(){return!window.location.pathname.includes("/search")}async getItemIdOnOTACheckout(){try{const{pathname:e}=new URL(window.location.href),t=/checkout\/\d{3}\.(\d+)\.\d+/i.exec(e);return t&&t.length>1?t[1]:null}catch(e){return console.error(e),null}}getListingNameOnOTACheckout(){const e=Ut([".property-details h3"]);return e?.textContent||null}getListingNameFromList(e){const t=this.findListingElement(e.source_id);if(!t||!t.parentElement)return null;const n=Ut(["h3.uitk-heading"],t.parentElement),a=n?.textContent;return a||e.directo_url}getIdFromUrl(e){const t=/(\/[a-z-]*\/)?([a-z]*)?[0-9]+[a-z]*/.exec(e);if(t&&t[0])return t[0];const n=new URL(e).pathname.split("/");return n[n.length-1].replace(/[a-z]*/g,"")}async getQueryParamMap(e){return{checkin:()=>e.searchParams.get("startDate")||e.searchParams.get("chkin")||en(new Date(Date.now()+8641e4)),checkout:()=>e.searchParams.get("endDate")||e.searchParams.get("chkout")||en(new Date(Date.now()+16641e4)),children:()=>{const t=e.searchParams.get("children")||"";return t?.includes("_")&&t.split("_")[0]||"0"},adults:()=>e.searchParams.get("adults")||"2",currency:async()=>e.searchParams.get("top_cur")||function(){if(!("APOLLO_STATE"in window))return null;const e=window.APOLLO_STATE;if(!e)return null;const t=$t(e);if(!t||!t.ROOT_QUERY)return null;const n=$t(t.ROOT_QUERY);if(!n)return null;const a=Bt(n,/^localePreferences\(.*\)$/);if(!a)return null;const o=$t(a);if(!o||!o.trigger)return null;const r=$t(o.trigger);if(!r)return null;const i=r.text;return"string"!=typeof i?null:i}()||"EUR"}}static getSection(e){const t=e.href;return Fn.test(t)?"LIST":Un.test(t)?"DETAIL":Vn.test(t)?"CHECKOUT":"UNKNOWN"}}class Iu extends Tu{constructor(e){super(e),this.displayName="Abritel"}shouldActivate(e){return/abritel\.fr/i.test(e)}getIdFromUrl(e){const t=/\/location-vacances\/([a-z]*[0-9]+[a-z]*)|$|\?/.exec(e);let n=null;return t&&t[1]&&(n=t[1]),function(e){return/p(\d+)$/.test(e)?e.replace(/^p/,"")+"a":/p(\d+)a$/.test(e)?e.replace(/^p/,"").replace(/a$/,"ha"):/p(\d+)vb$/.test(e)?e.replace(/^p/,"").replace("vb",""):e}(n)}static getSection(e){const t=e.href;return Kn.test(t)?"LIST":Hn.test(t)?"DETAIL":qn.test(t)?"CHECKOUT":"UNKNOWN"}}class Lu extends Tu{constructor(e){super(e),this.platform="EXPEDIA",this.displayName="Expedia"}shouldActivate(e){return/expedia\.[a-z.]{2,7}/i.test(e)}getLabelPlacement(e){const{bottom:t,left:n}=function(e){const t=e.parentElement?.parentElement;return t?{left:(Ut(["figure",".LazyLoad"],t)||t).clientWidth-50,bottom:t.clientHeight-e.clientHeight}:(console.warn("Parent element not found."),{left:0,bottom:0})}(e);return{position:"absolute",bottom:`${t}px`,left:`${n}px`,zIndex:"999"}}getItemId(e){const{href:t}=window.location;return this.getIdFromUrl(e||t)}getHotelIdInDetail(){const{href:e}=window.location;return this.getIdFromUrl(e)||null}async getItemIdOnOTACheckout(){try{const e=Ut([".hotel-details img"]);return new URL(e?.getAttribute("src")||"").pathname.split("/").slice(-2)[0]||null}catch(e){return console.error(e),null}}getListingNameOnOTACheckout(){const e=Ut(['[data-stid="product-details-wrapper"] h2']);return e?.textContent||null}getIdFromUrl(e){const t=/\/[\w-]*?\.h(\d*)\.[\w-]*\??/g.exec(e);return t?t[1]:""}isDetailView(){return!!this.getItemId()}async insertSecondaryCTAInDetailView(e){this.cleanRenderedLabel(e.source_id);const t=await Dt(Ut,e=>!e,10)(['[data-stid="submit-hotel-reserve"]']);if(!t)return;const n=await Zl(e,"SECONDARY_CTA_IN_DETAIL_BOOK");t.parentElement?.appendChild(n),this.setRenderedSecondaryCTA(e.source_id,n),n.style.marginTop="10px";const a=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],n.$reactRoot))();a&&(a.style.borderRadius="99px")}async insertSecondaryCTAInCheckoutView(e){return this.debouncedInsertSecondaryCTAInCheckoutView(e)}async insertSecondaryCTAInCheckoutViewToDebounce(e){this.cleanRenderedLabel(e.source_id);const t=await Dt(Ut,e=>!e,10)([".book-button-wrapper .complete-booking-cta"]),n=await Zl(e,"SECONDARY_CTA_IN_CHECKOUT_FOOTER");t.parentElement?.appendChild(n),this.setRenderedSecondaryCTA(e.source_id,n),n.parentElement.style.display="flex";const a=await Dt(()=>Ut([".directo-cta-button-shine",".directo-cta-button-dark"],n.$reactRoot))();a&&(a.style.padding="14px 20px",a.style.gap="16px",a.style.fontSize="14px",a.style.marginTop="18px")}debouncedInsertSecondaryCTAInCheckoutView=gu(this.insertSecondaryCTAInCheckoutViewToDebounce,9e3,{leading:!0});async getPriceString(e){const t=await Dt(Ut,e=>!e,10)(['[data-test-id="price-summary-message-line"] .uitk-text-emphasis-theme'],e);return t?.textContent||""}async getPriceObject(e){const t=ga(e.replace(/[^0-9.]/g,""))||0,n=await this.buildQueryParams("checkin"),a=await this.buildQueryParams("checkout");return{priceString:e,currency:await this.buildQueryParams("currency"),nightlyPrice:t,totalPrice:t*Math.floor((new Date(a).getTime()-new Date(n).getTime())/864e5),priceStringIsNightly:!0}}async renderAlternativeOffersInDetail(e){const t=e.filter(e=>"Expedia"!==e.provider.name);if(0===t.length)return;const n=await Dt(e=>{const t=Ut(e);return t?t.parentElement:null},e=>null===e,10)(['[data-stid="submit-hotel-reserve"]']);if(!n)return;const a=`${t[0].source_id}-list`;this.cleanRenderedSecondaryCTAs(a),await this.insertAlternativeOffers(t,{id:a,vertical:!0,container:n,styles:Du,ctaPrefix:"VIO_EXEDIA_DETAIL"})}static getSection(e){const t=e.href;return Qn.test(t)?"LIST":Gn.test(t)?"DETAIL":Wn.test(t)?"CHECKOUT":"UNKNOWN"}}const Du="\n.offers-container {\n margin: 2em 0;\n}\n\n.offers-container.offers-container-horizontal {\n flex-direction: row;\n}\n\n@media screen and (min-width: 992px) {\n .offers-container {\n margin: 2em 0 2em 0;\n }\n}\n";var Ru=1/0;const Mu=function(e){var t=function(e){return e?(e=mu(e))===Ru||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}(e),n=t%1;return t==t?n?t-n:t:0};var $u=Math.max;const Bu=(Uu=function(e,t,n){var a=null==e?0:e.length;if(!a)return-1;var o=null==n?0:Mu(n);return o<0&&(o=$u(a+o,0)),function(e,t,n,a){for(var o=e.length,r=n+(a?1:-1);a?r--:++r<o;)if(t(e[r],r,e))return r;return-1}(e,il(t),o)},function(e,t,n){var a=Object(e);if(!it(e)){var o=il(t);e=st(e),t=function(e){return o(a[e],e,a)}}var r=Uu(e,t,n);return r>-1?a[o?e[r]:r]:void 0});var Uu;function Fu(e){if("childList"===e.type){if(e.removedNodes.length)return!0;if(e.addedNodes&&e.addedNodes[0]&&e.addedNodes[0]?.firstChild&&"dr-floating-container"===(e.addedNodes[0]?.firstChild).className)return!0;if(!e.addedNodes[0]?.firstChild?.className)return!0}return!1}class Vu extends ou{constructor(e){super(e),this.platform="GOOGLE",this.displayName="Google"}shouldActivate(e){return null!==/google\.[a-z.]{2,7}\/search\?/i.exec(e)}getListingsInPage(){const e=Ft(['#search [jsname="UWckNb"]'])||[];return function(e){for(var t=-1,n=null==e?0:e.length,a=0,o=[];++t<n;){var r=e[t];r&&(o[a++]=r)}return o}(Array.from(e).map(e=>{const t=e.getAttribute("href"),n=Tn(t);if(!n)return null;const a=function(e,t){switch(e){case"AIRBNB":return new _u(t);case"BOOKING":return new zu(t);case"VRBO":return new Tu(t);case"EXPEDIA":return new Lu(t);default:return null}}(n,this.rendererConfig);return a?`${n}::${a.getItemId(t)}`:null}))}findListingElement(e){const t=Ft(['#search [jsname="UWckNb"]']);return Bu(t,t=>{const n=t.getAttribute("href");return!!n&&function(e){const t=Tn(e);return"GOOGLE"!==t&&null!==t}(n)&&n.includes(e)})??null}markListingAsMultilisting(e,t){this.cleanRenderedLabel(e);const n=this.findListingElement(e);if(!n)return;const a=this.getLabelPlacement(n),o=vu(t,{...a,transform:"scaleY(-1)"},"transparent");this.renderedLabels[e]||(this.renderedLabels[e]=o,this.appendLabel(n,o))}getLabelPlacement(e){return{position:"absolute",top:"0px",left:"-85px",zIndex:"127",borderTopLeftRadius:"25px"}}appendLabel(e,t){if(!1!==this.rendererConfig.renderLabels)return e.append(t)}async getDetailsInfo(){return{title:"",image:"",market:""}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=gu(e,2e3,{trailing:!0})),setTimeout(async()=>{const e=await Dt(Ut,e=>!e)(["#search"]);new MutationObserver(e=>{for(const t of e)!Fu(t)&&this.debouncedRenderMLs&&this.debouncedRenderMLs()}).observe(e,{childList:!0,subtree:!0})},800),this.debouncedRenderMLs()}async getPriceFromList(e){return{priceString:"",currency:"USD",priceStringIsNightly:!0,nightlyPrice:0,totalPrice:0}}async getDetailPrice(){return{priceString:"",currency:"USD",priceStringIsNightly:!0,nightlyPrice:0,totalPrice:0}}getItemId(){return""}getListingNameFromList(e){const t=this.findListingElement(e.source_id),n=t?.parentElement?.querySelector('[data-testid="listing-card-title"]')?.textContent;return n||e.directo_url}async getDestinationInUrl(){return""}async getQueryParamMap(e){return{checkin:()=>e.searchParams.get("check_in")||e.searchParams.get("checkin"),checkout:()=>e.searchParams.get("check_out")||e.searchParams.get("checkout"),adults:()=>e.searchParams.get("adults")||"2",children:()=>e.searchParams.get("children")||"0",currency:async()=>e.searchParams.has("display_currency")?e.searchParams.get("display_currency"):e.searchParams.has("currency")?e.searchParams.get("currency"):"USD"}}static getSection(e){const t=e.href;return Yn.test(t)?"LIST":"UNKNOWN"}}const Hu=new class{renderer=void 0;availableRenderers=[];initialize(e){if(void 0!==this.renderer)throw new Error("PlatformContentFactory already initialized");this.availableRenderers=[new _u(e),new zu(e),new Tu(e),new Iu(e),new Lu(e),new Vu(e)],this.renderer=this.getActivableRenderer(window.location.href)}get(){if(void 0===this.renderer)throw new Error("PlatformContentFactory not initialized");return this.renderer}getActivableRenderer(e){for(const t of this.availableRenderers)if(t.shouldActivate(e))return t;return null}};async function Ku(){const e=Hu.get();return e?await e.getLoS():null}function qu(){const e=Hu.get();return e?e.getItemId():null}function Gu(){const e=Hu.get();return e?e.getHotelIdInDetail():null}const Qu=["checkin","checkout","currency","children","adults"];async function Wu(e){return Qu.reduce(async(t,n)=>{const a=await async function(e,t=window.location.href){const n=Hu.get();return n?await n.buildQueryParams(e,t):null}(n,e);return ro(await t,n,"checkin"===n||"checkout"===n?Xt(a):a),t},Promise.resolve({checkin:null,checkout:null,currency:null,adults:null,children:null}))}const Yu=["vidahotels.com","addresshotels.com"],Ju=new class{config=null;constructor(){}initialize(e){if(this.config)throw new Error("FrontNavigationFactory is already initialized");this.config=e}async navigateToDirectLink(e,t,n){if(!this.config)throw new Error("FrontNavigationFactory is not initialized");try{const t=new URL(e),n=dn(t);if(Yu.includes(n)){const e=to(t.hostname);await w.maybeOpenTempTab({url:e})}}catch(e){console.error("Error opening new tab",e)}const a=await Wu(window.location.href);this.config.onBeforeOpenOutclickTab?.({targetUrl:e,stayParams:a,outclickExtraParams:n}),await w.openOutclickTab({sourceUrl:window.location.href,targetUrl:e,cta:t,sourceId:n.sourceId,stayParams:a,useRedirectEngine:!0}),this.config.onAfterOpenOutclickTab?.({targetUrl:e,stayParams:a,outclickExtraParams:n})}};async function Zu(e){const t=await w.getConfig();Hu.initialize(e.platformContentRendererConfig),g.initialize(t),k.initialize(t),b.initialize(t),Ju.initialize(e.frontNavigationFactoryConfig);const n=new la,a=new Xa;!function(e,t=500){let n="";!function a(o=""){o!==n&&(e(o),n=o),setTimeout(()=>a(window.location.href),t)}(window.location.href)}(t=>{a.initialize(t),n.initialize(t),"DETAIL"===function(e){const t=Hu.get();return t?t.constructor.getSection(new URL(e)):null}(t)&&e.platformContentRendererConfig.renderAlternativeOffers&&async function(){const e=await async function(){const[e,t]=await Promise.all([Dt(Gu,e=>null===e)(),Dt(qu,e=>null===e)()]);return null===e||null===t?null:{hotelId:e,listingId:t}}();if(null===e)return[];const t=Tn(window.location.href);if(!t)return[];const n=await async function(e){const t=await Wu(e);if(!t.checkin||!t.checkout||!t.adults)return null;const n=parseInt(t.adults,10);if(!Number.isInteger(n))return null;const a=null!==t.children?parseInt(t.children,10):null;return null===a||Number.isInteger(a)?{checkin:t.checkin,checkout:t.checkout,adults:n,children:a??void 0,currency:t.currency??void 0}:null}(window.location.href);if(!n)return[];const{offers:a}=await w.getAlternativeOffersByHotelIds({id:[e],language:gt(),platform:t,...n,currency:n.currency||"EUR"});(function(e){const t=Hu.get();t&&t.renderAlternativeOffersInDetail(e)})(a)}()})}function Xu(){return Zu({platformContentRendererConfig:{renderLabels:!1,renderSecondaryCTAs:!1,renderAlternativeOffers:!0},frontNavigationFactoryConfig:{}})}export{Xu as initializeAdUnit};
|