@directo/adunit 0.0.1-beta.2 → 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.
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see content.js.LICENSE.txt */
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.DirectoAdUnit=t():e.DirectoAdUnit=t()}(this,()=>(()=>{var e={15:(e,t,n)=>{"use strict";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)=>{"use strict";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 b(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||h}function k(){}function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||h}b.prototype.isReactComponent={},b.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")},b.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},k.prototype=b.prototype;var v=y.prototype=new k;v.constructor=y,f(v,b.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=b,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)=>{"use strict";e.exports=n(15)},155:(e,t,n)=>{"use strict";e.exports=n(18)},316:(e,t,n)=>{"use strict";!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(){"use strict";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)=>{"use strict";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 b=/[\-:]([a-z])/g;function k(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(b,k);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(b,k);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(b,k);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 V(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:V(e.type)||"Memo";case N:t=e._payload,e=e._init;try{return V(e(t))}catch(e){}}return null}function F(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 V(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 W(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 Q(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&&W(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 be=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 ke(e,t){if(t){if(be[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 Ve(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 Fe(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(Ve(e)!==e)throw Error(r(188))}function Ke(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=Ve(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,We=o.unstable_cancelCallback,Qe=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 bt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-it(t)]=n}function kt(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=Ve(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Fe(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=Qt(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 Vt(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 Ft=v.ReactCurrentBatchConfig,Ht=!0;function Kt(e,t,n,a){var o=yt,r=Ft.transition;Ft.transition=null;try{yt=1,Gt(e,t,n,a)}finally{yt=o,Ft.transition=r}}function qt(e,t,n,a){var o=yt,r=Ft.transition;Ft.transition=null;try{yt=4,Gt(e,t,n,a)}finally{yt=o,Ft.transition=r}}function Gt(e,t,n,a){if(Ht){var o=Qt(e,t,n,a);if(null===o)Ha(e,t,a,Wt,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=Qt(e,t,n,a))&&Ha(e,t,a,Wt,n),r===o)break;o=r}null!==o&&a.stopPropagation()}else Ha(e,t,a,null,n)}}var Wt=null;function Qt(e,t,n,a){if(Wt=null,null!==(e=yo(e=we(a))))if(null===(t=Ve(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=Fe(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 Wt=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})),bn=on(R({},ln,{animationName:0,elapsedTime:0,pseudoElement:0})),kn=R({},ln,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),yn=on(kn),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 Vn=!1,Fn={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?!!Fn[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 Wn(e){Ma(e,0)}function Qn(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&&Qn(Gn)){var t=[];Kn(t,Gn,e,we(e)),Pe(Wn,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 Qn(Gn)}function ra(e,t){if("click"===e)return Qn(t)}function ia(e,t){if("input"===e||"change"===e)return Qn(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=W();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(e){n=!1}if(!n)break;t=W((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,ba=null,ka=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!==W(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},ka&&ca(ka,a)||(ka=a,0<(a=qa(ba,"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)||(Fa(t,e,2,!1),n.add(a))}function Ba(e,t,n){var a=0;t&&(a|=4),Fa(n,e,a,t)}var Ua="_reactListening"+Math.random().toString(36).slice(2);function Va(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 Fa(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=bn;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=Ve(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&&Wa(i,s,c,u,!1),null!==l&&null!==p&&Wa(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 b=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):(b&&b(e,s,a),"focusout"===e&&(b=s._wrapperState)&&b.controlled&&"number"===s.type&&ee(s,"number",s.value)),b=a?wo(a):window,e){case"focusin":(Hn(b)||"true"===b.contentEditable)&&(ga=b,ba=a,ka=null);break;case"focusout":ka=ba=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 k;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 Vn?Bn(e,n)&&(y="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(y="onCompositionStart");y&&(Rn&&"ko"!==n.locale&&(Vn||"onCompositionStart"!==y?"onCompositionEnd"===y&&Vn&&(k=en()):(Zt="value"in(Jt=o)?Jt.value:Jt.textContent,Vn=!0)),0<(b=qa(a,y)).length&&(y=new vn(y,e,null,n,o),i.push({event:y,listeners:b}),(k||null!==(k=Un(n)))&&(y.data=k))),(k=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(Vn)return"compositionend"===e||!In&&Bn(e,t)?(e=en(),Xt=Zt=Jt=null,Vn=!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=k)}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 Wa(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 Qa=/\r\n?/g,Ya=/\u0000|\uFFFD/g;function Ja(e){return("string"==typeof e?e:""+e).replace(Qa,"\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 Vt(t);a--}else"$"!==n&&"$?"!==n&&"$!"!==n||a++;n=o}while(n);Vt(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,bo="__reactListeners$"+po,ko="__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,F(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 Vo(e){null===$o?$o=[e]:$o.push(e)}function Fo(){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,Fo),t}finally{yt=t,Uo=!1}}return null}var Ho=[],Ko=0,qo=null,Go=0,Wo=[],Qo=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){Wo[Qo++]=Jo,Wo[Qo++]=Zo,Wo[Qo++]=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=Wo[--Qo],Wo[Qo]=null,Zo=Wo[--Qo],Wo[Qo]=null,Jo=Wo[--Qo],Wo[Qo]=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 br(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 kr(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=br(e,t,n),a.return=e,a):((a=Il(n.type,n.key,n.props,null,e.mode,a)).ref=br(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=br(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;kr(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);kr(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);kr(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 b=m(o,p,s[f],c);if(null===b){null===p&&(p=g);break}e&&p&&null===b.alternate&&t(o,p),r=i(b,r,f),null===u?l=b:u.sibling=b,u=b,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,b=null,k=c.next();null!==f&&!k.done;g++,k=c.next()){f.index>g?(b=f,f=null):b=f.sibling;var y=m(o,f,k.value,l);if(null===y){null===f&&(f=b);break}e&&f&&null===y.alternate&&t(o,f),s=i(y,s,g),null===p?u=y:p.sibling=y,p=y,f=b}if(k.done)return n(o,f),rr&&Xo(o,g),u;if(null===f){for(;!k.done;g++,k=c.next())null!==(k=d(o,k.value,l))&&(s=i(k,s,g),null===p?u=k:p.sibling=k,p=k);return rr&&Xo(o,g),u}for(f=a(o,f);!k.done;g++,k=c.next())null!==(k=h(f,o,g,k.value,l))&&(e&&null!==k.alternate&&f.delete(null===k.key?g:k.key),s=i(k,s,g),null===p?u=k:p.sibling=k,p=k);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=br(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=br(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);kr(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,kt(e,n)}}function Vr(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 Fr(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),Wr=zo(Kr);function Qr(e){if(e===Kr)throw Error(r(174));return e}function Yr(e,t){switch(So(Wr,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(Wr)}function Zr(e){Qr(Wr.current);var t=Qr(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 bi(){var e=0!==di;return di=0,e}function ki(){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=ki();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=Wi.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=ki();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 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]:(n.memoizedState=[e,t],e)}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]:(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},Qi(e)?Yi(t,n):null!==(n=Ir(e,t,n,a))&&(nl(n,e,a,el()),Ji(n,t,a))}function Wi(e,t,n){var a=tl(e),o={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null};if(Qi(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 Qi(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,kt(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 ki().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=ki();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var a=ki();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},ki().memoizedState=e},useState:Ai,useDebugValue:Ui,useDeferredValue:function(e){return ki().memoizedState=e},useTransition:function(){var e=Ai(!1),t=e[0];return e=Ki.bind(null,e[1]),ki().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var a=si,o=ki();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=ki(),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:Vi,useContext:Pr,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Ri,useLayoutEffect:Mi,useMemo:Fi,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:Vi,useContext:Pr,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Ri,useLayoutEffect:Mi,useMemo:Fi,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)&&Ve(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),Fr(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 bs(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 ks=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=bi(),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=bi(),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)Fs(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,Fr(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,Fr(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,ks.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&&(Wo[Qo++]=Jo,Wo[Qo++]=Zo,Wo[Qo++]=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 Vs(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 Fs(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=Qr(Wr.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=Qr(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 ke(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=Q(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 ke(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=Qr(Wr.current),Qr(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&&Va(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()>Vc&&(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>Vc&&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 Ws(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,Qr(qr.current);var r,i=null;switch(n){case"input":o=Q(e,o),a=Q(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 ke(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 Qs=!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[bo],delete t[ko]),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),Vt(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),bc(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),bc(e),512&a&&null!==n&&Xs(n,n.return);break;case 5:if(fc(t,e),bc(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),bc(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),bc(e),4&a&&null!==n&&n.memoizedState.isDehydrated)try{Vt(t.containerInfo)}catch(t){xl(e,e.return,t)}break;case 4:default:fc(t,e),bc(e);break;case 13:fc(t,e),bc(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),bc(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),bc(e),4&a&&hc(e);case 21:}}function bc(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 kc(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||Qs;if(!i){var s=o.alternate,c=null!==s&&null!==s.memoizedState||Ys;s=Qs;var l=Ys;if(Qs=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,Qs=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&&Vt(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,Vc=1/0,Fc=null,Hc=!1,Kc=null,qc=null,Gc=!1,Wc=null,Qc=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));bt(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)&&(Vc=Je()+500,Bo&&Fo()))}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&&We(n),e.callbackNode=null,e.callbackPriority=0;else if(t=a&-a,e.callbackPriority!==t){if(null!=n&&We(n),1===t)0===e.tag?function(e){Bo=!0,Vo(e)}(cl.bind(null,e)):Vo(cl.bind(null,e)),io(function(){!(6&Ec)&&Fo()}),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||(Fc=null,Vc=Je()+500,dl(e,t));;)try{kl();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,Fc);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,Fc),t);break}wl(e,Bc,Fc);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,Fc),a);break}wl(e,Bc,Fc);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,Fc),al(e,Je()),null}function ll(e,t){var n=Ec;Ec|=1;try{return e(t)}finally{0===(Ec=n)&&(Vc=Je()+500,Bo&&Fo())}}function ul(e){null!==Wc&&0===Wc.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))&&Fo()}}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,bs(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 b=gs(s);if(null!==b){!(65536&b.flags)&&(b.flags|=256),bs(b,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,Vr(i,ms(0,l,t));break e;case 1:c=l;var k=i.type,y=i.stateNode;if(!(128&i.flags||"function"!=typeof k.getDerivedStateFromError&&(null===y||"function"!=typeof y.componentDidCatch||null!==qc&&qc.has(y)))){i.flags|=65536,t&=-t,i.lanes|=t,Vr(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||(Fc=null,dl(e,t));;)try{bl();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 bl(){for(;null!==Ac;)yl(Ac)}function kl(){for(;null!==Ac&&!Qe();)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=Ws(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!==Wc);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,b=f.memoizedState,k=t.stateNode,y=k.getSnapshotBeforeUpdate(t.elementType===t.type?g:ns(t.type,g),b);k.__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,kc(n,e,o),Ye(),Ec=c,yt=s,Sc.transition=i}else e.current=n;if(Gc&&(Gc=!1,Wc=e,Qc=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&Qc)&&0!==e.tag&&jl(),1&(i=e.pendingLanes)?e===Jc?Yc++:(Yc=0,Jc=e):Yc=0,Fo()}(e,t,n,a)}finally{Sc.transition=o,yt=a}return null}function jl(){if(null!==Wc){var e=vt(Qc),t=Sc.transition,n=yt;try{if(Sc.transition=null,yt=16>e?16:e,null===Wc)var a=!1;else{if(e=Wc,Wc=null,Qc=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 b=g.sibling;g.sibling=null,g=b}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 k=i.sibling;if(null!==k){k.return=i.return,Zs=k;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,Fo(),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&&(bt(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&&(bt(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))&&(bt(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(Ve(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 Vl(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,bt(e,o,a),al(e,a),e}function Fl(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 Vs(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;Fs(e,t),e=t.pendingProps;var o=No(t,Oo.current);Ar(t,n),o=gi(null,t,a,e,o,n);var i=bi();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(Fs(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),Fr(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),Fs(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 Vs(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 Wl(e){this._internalRoot=e}function Ql(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)}}Fl(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=Vl(t,a,e,0,null,!1,0,"",Zl);return e._reactRootContainer=i,e[fo]=i.current,Va(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,Va(8===e.nodeType?e.parentNode:e),ul(function(){Fl(t,c,n,a)}),c}(n,t,e,o,a);return Hl(i)}Ql.prototype.render=Wl.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(r(409));Fl(e,t,null,null)},Ql.prototype.unmount=Wl.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;ul(function(){Fl(null,e,null,null)}),t[fo]=null}},Ql.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&&(kt(t,1|n),al(t,Je()),!(6&Ec)&&(Vc=Je()+500,Fo()))}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,Va(8===e.nodeType?e.parentNode:e),new Wl(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=Vl(t,null,e,1,null!=n?n:null,o,0,i,s),e[fo]=t.current,Va(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 Ql(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)=>{"use strict";e.exports=n(910)},723:(e,t,n)=>{"use strict";e.exports=n(921)},910:(e,t)=>{"use strict";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,b="function"==typeof setTimeout?setTimeout:null,k="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,k(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(){b(A,0)};function T(e){z=e,x||(x=!0,_())}function I(e,n){C=b(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?(k(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)=>{"use strict";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)=>{"use strict";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}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),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return(()=>{"use strict";function e(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.r(a),n.d(a,{initializeAdUnit:()=>Gu});class t extends Error{source;constructor(e,t){super(e),this.name="ApiError",this.source=t}}class o extends t{constructor(e){super(`Fetch error: ${e.message}`,e)}}class r extends t{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 i extends t{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 s(e,t){try{return await fetch(e,t)}catch(e){if(e instanceof TypeError)throw new o(e);throw e}}function c(e){return new Promise(t=>{setTimeout(t,e)})}function l(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 u{name="JsonBodyParser";async parse(e){try{return e.json()}catch(t){throw new i(e,t instanceof Error?t:"Failed to parse JSON")}}checkContentType(e){return e?.includes("application/json")??!1}}class p{name="VoidBodyParser";async parse(e){}checkContentType(e){return!0}}async function d(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 i(e,`Did not expect Content-Type "${o}" for parser ${n.name}`);return t.parser.parse(e)}if(n>=5)throw new r(e);if(401===e.status&&o)return o(n+1);if(429===e.status||503===e.status){const t=l(n+2,{backoffMultiplier:2,retryAfter:e.headers.get("Retry-After")});return await c(t),a(n+3)}if(e.status>=400&&e.status<=499)throw new r(e);{const e=l(n);return await c(e),a(n+1)}}class m{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(t,n){return function(t,n){const a=new URL(t);for(const[t,o]of Object.entries(n))if(Array.isArray(o)){a.searchParams.delete(t);for(const n of o)e(a,t,n,"append")}else e(a,t,o,"set");return a}(t,{...n,..."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 u,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 d(await s(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 p,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 d(await s(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 h{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 m(this.rootUrl,{...this.options,...e})}get(){if(!this.apiService)throw new Error("APIService not initialized");return this.apiService}}const f=new h("https://events.getdirecto.com",{truesignEndpoint:"80298941"}),g=(f.get.bind(f),new h("https://vio-wrapper-api-cd-6981968610.europe-west4.run.app",{truesignEndpoint:"1678801807",injectInto:"headers"}));g.get.bind(g);const b=new h("https://rateshops.getdirecto.com",{truesignEndpoint:"1010119886",injectInto:"headers"}),k=b.get.bind(b);function y(e){if(e.success)return e.response;throw new Error(e.errorMessage)}const v=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(y)}}("DIRECTO_CORE_BACKGROUND",a)),e.get(a)}})}(),w=Array.isArray,j="object"==typeof global&&global&&global.Object===Object&&global;var _="object"==typeof self&&self&&self.Object===Object&&self;const x=j||_||Function("return this")(),z=x.Symbol;var C=Object.prototype,S=C.hasOwnProperty,E=C.toString,O=z?z.toStringTag:void 0;var A=Object.prototype.toString;var P=z?z.toStringTag:void 0;const N=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":P&&P in Object(e)?function(e){var t=S.call(e,O),n=e[O];try{e[O]=void 0;var a=!0}catch(e){}var o=E.call(e);return a&&(t?e[O]=n:delete e[O]),o}(e):function(e){return A.call(e)}(e)},T=function(e){return null!=e&&"object"==typeof e},I=function(e){return"symbol"==typeof e||T(e)&&"[object Symbol]"==N(e)};var L=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,D=/^\w*$/;const R=function(e,t){if(w(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!I(e))||D.test(e)||!L.test(e)||null!=t&&e in Object(t)},M=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},$=function(e){if(!M(e))return!1;var t=N(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},B=x["__core-js_shared__"];var U,V=(U=/[^.]+$/.exec(B&&B.keys&&B.keys.IE_PROTO||""))?"Symbol(src)_1."+U:"";var F=Function.prototype.toString;const H=function(e){if(null!=e){try{return F.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var K=/^\[object .+?Constructor\]$/,q=Function.prototype,G=Object.prototype,W=q.toString,Q=G.hasOwnProperty,Y=RegExp("^"+W.call(Q).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const J=function(e){return!(!M(e)||(t=e,V&&V in t))&&($(e)?Y:K).test(H(e));var t},Z=function(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return J(n)?n:void 0},X=Z(Object,"create");var ee=Object.prototype.hasOwnProperty;var te=Object.prototype.hasOwnProperty;function ne(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])}}ne.prototype.clear=function(){this.__data__=X?X(null):{},this.size=0},ne.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},ne.prototype.get=function(e){var t=this.__data__;if(X){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return ee.call(t,e)?t[e]:void 0},ne.prototype.has=function(e){var t=this.__data__;return X?void 0!==t[e]:te.call(t,e)},ne.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=X&&void 0===t?"__lodash_hash_undefined__":t,this};const ae=ne,oe=function(e,t){return e===t||e!=e&&t!=t},re=function(e,t){for(var n=e.length;n--;)if(oe(e[n][0],t))return n;return-1};var ie=Array.prototype.splice;function se(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])}}se.prototype.clear=function(){this.__data__=[],this.size=0},se.prototype.delete=function(e){var t=this.__data__,n=re(t,e);return!(n<0||(n==t.length-1?t.pop():ie.call(t,n,1),--this.size,0))},se.prototype.get=function(e){var t=this.__data__,n=re(t,e);return n<0?void 0:t[n][1]},se.prototype.has=function(e){return re(this.__data__,e)>-1},se.prototype.set=function(e,t){var n=this.__data__,a=re(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this};const ce=se,le=Z(x,"Map"),ue=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 pe(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])}}pe.prototype.clear=function(){this.size=0,this.__data__={hash:new ae,map:new(le||ce),string:new ae}},pe.prototype.delete=function(e){var t=ue(this,e).delete(e);return this.size-=t?1:0,t},pe.prototype.get=function(e){return ue(this,e).get(e)},pe.prototype.has=function(e){return ue(this,e).has(e)},pe.prototype.set=function(e,t){var n=ue(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this};const de=pe;function me(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(me.Cache||de),n}me.Cache=de;var he=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,fe=/\\(\\)?/g;const ge=(be=function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(he,function(e,n,a,o){t.push(a?o.replace(fe,"$1"):n||e)}),t},ke=me(be,function(e){return 500===ye.size&&ye.clear(),e}),ye=ke.cache,ke);var be,ke,ye;const ve=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 we=z?z.prototype:void 0,je=we?we.toString:void 0;const _e=function e(t){if("string"==typeof t)return t;if(w(t))return ve(t,e)+"";if(I(t))return je?je.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n},xe=function(e){return null==e?"":_e(e)},ze=function(e,t){return w(e)?e:R(e,t)?[e]:ge(xe(e))},Ce=function(e){if("string"==typeof e||I(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t},Se=function(e,t){for(var n=0,a=(t=ze(t,e)).length;null!=e&&n<a;)e=e[Ce(t[n++])];return n&&n==a?e:void 0},Ee=function(e,t,n){var a=null==e?void 0:Se(e,t);return void 0===a?n:a},Oe=function(e,t){for(var n=-1,a=null==e?0:e.length;++n<a&&!1!==t(e[n],n,e););return e},Ae=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},Pe=function(e){return T(e)&&"[object Arguments]"==N(e)};var Ne=Object.prototype,Te=Ne.hasOwnProperty,Ie=Ne.propertyIsEnumerable;const Le=Pe(function(){return arguments}())?Pe:function(e){return T(e)&&Te.call(e,"callee")&&!Ie.call(e,"callee")};var De="object"==typeof exports&&exports&&!exports.nodeType&&exports,Re=De&&"object"==typeof module&&module&&!module.nodeType&&module,Me=Re&&Re.exports===De?x.Buffer:void 0;const $e=(Me?Me.isBuffer:void 0)||function(){return!1};var Be=/^(?:0|[1-9]\d*)$/;const Ue=function(e,t){var n=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&Be.test(e))&&e>-1&&e%1==0&&e<t},Ve=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var Fe={};Fe["[object Float32Array]"]=Fe["[object Float64Array]"]=Fe["[object Int8Array]"]=Fe["[object Int16Array]"]=Fe["[object Int32Array]"]=Fe["[object Uint8Array]"]=Fe["[object Uint8ClampedArray]"]=Fe["[object Uint16Array]"]=Fe["[object Uint32Array]"]=!0,Fe["[object Arguments]"]=Fe["[object Array]"]=Fe["[object ArrayBuffer]"]=Fe["[object Boolean]"]=Fe["[object DataView]"]=Fe["[object Date]"]=Fe["[object Error]"]=Fe["[object Function]"]=Fe["[object Map]"]=Fe["[object Number]"]=Fe["[object Object]"]=Fe["[object RegExp]"]=Fe["[object Set]"]=Fe["[object String]"]=Fe["[object WeakMap]"]=!1;const He=function(e){return function(t){return e(t)}};var Ke="object"==typeof exports&&exports&&!exports.nodeType&&exports,qe=Ke&&"object"==typeof module&&module&&!module.nodeType&&module,Ge=qe&&qe.exports===Ke&&j.process,We=function(){try{return qe&&qe.require&&qe.require("util").types||Ge&&Ge.binding&&Ge.binding("util")}catch(e){}}(),Qe=We&&We.isTypedArray;const Ye=Qe?He(Qe):function(e){return T(e)&&Ve(e.length)&&!!Fe[N(e)]};var Je=Object.prototype.hasOwnProperty;const Ze=function(e,t){var n=w(e),a=!n&&Le(e),o=!n&&!a&&$e(e),r=!n&&!a&&!o&&Ye(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&&!Je.call(e,l)||i&&("length"==l||o&&("offset"==l||"parent"==l)||r&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||Ue(l,c))||s.push(l);return s};var Xe=Object.prototype;const et=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Xe)},tt=function(e,t){return function(n){return e(t(n))}},nt=tt(Object.keys,Object);var at=Object.prototype.hasOwnProperty;const ot=function(e){if(!et(e))return nt(e);var t=[];for(var n in Object(e))at.call(e,n)&&"constructor"!=n&&t.push(n);return t},rt=function(e){return null!=e&&Ve(e.length)&&!$(e)},it=function(e){return rt(e)?Ze(e):ot(e)},st=function(e,t){return e&&Ae(e,t,it)},ct=(lt=st,function(e,t){if(null==e)return e;if(!rt(e))return lt(e,t);for(var n=e.length,a=-1,o=Object(e);++a<n&&!1!==t(o[a],a,o););return e});var lt;const ut=function(e){return e},pt=function(e,t){return(w(e)?Oe:ct)(e,"function"==typeof(n=t)?n:ut);var n},dt="userLocale";function mt(){let e;return e=null!=navigator.languages?navigator.languages[0]:navigator.language,e=e.split("-")[0]||e||"en",e}let ht=null;function ft(){return ht=ht||mt(),ht}!async function(){const{[dt]:e}=await chrome.storage.local.get(dt);ht=e??null}();const gt=Z(x,"DataView"),bt=Z(x,"Promise"),kt=Z(x,"Set"),yt=Z(x,"WeakMap");var vt="[object Map]",wt="[object Promise]",jt="[object Set]",_t="[object WeakMap]",xt="[object DataView]",zt=H(gt),Ct=H(le),St=H(bt),Et=H(kt),Ot=H(yt),At=N;(gt&&At(new gt(new ArrayBuffer(1)))!=xt||le&&At(new le)!=vt||bt&&At(bt.resolve())!=wt||kt&&At(new kt)!=jt||yt&&At(new yt)!=_t)&&(At=function(e){var t=N(e),n="[object Object]"==t?e.constructor:void 0,a=n?H(n):"";if(a)switch(a){case zt:return xt;case Ct:return vt;case St:return wt;case Et:return jt;case Ot:return _t}return t});const Pt=At;var Nt=Object.prototype.hasOwnProperty;const Tt=function(e){if(null==e)return!0;if(rt(e)&&(w(e)||"string"==typeof e||"function"==typeof e.splice||$e(e)||Ye(e)||Le(e)))return!e.length;var t=Pt(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(et(e))return!ot(e).length;for(var n in e)if(Nt.call(e,n))return!1;return!0},It=function(e){return function(e){return"number"==typeof e||T(e)&&"[object Number]"==N(e)}(e)&&e!=+e},Lt=10;function Dt(e,t=Tt,n=Lt){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")||It(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 Vt(e,t=document){let n=null;for(const a of e){const e=t.querySelectorAll(a);if(e.length){n=e;break}}return n}function Ft(e){return e.checkVisibility({contentVisibilityAuto:!0,opacityProperty:!0,visibilityProperty:!0})}async function Ht(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(()=>{Ht(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),Ht(e,t,n))},n.checkIntervalMs),i=()=>{n.signal?.removeEventListener("abort",i),clearInterval(r)};n.signal?.addEventListener("abort",i)}}function Kt(){let e=document.documentElement.lang;return e=e.split("-")[0],e?e.toLowerCase():null}async function qt(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||Tt(a)?null:a}class Gt{platform;constructor(e){this.platform=e}}class Wt extends Gt{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($(a)?await a():Rt(n.searchParams.get(a)))||null}}class Qt{year;month;day;constructor(e,t,n){this.year=e,this.month=t,this.day=n}static today(){return Qt.fromDate(new Date)}static fromRaw(e){return new Qt(e.year,e.month,e.day)}static fromDate(e){return new Qt(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 Qt(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 Qt(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 Qt(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 Qt(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 Yt(e,t){const n=new Date(e);return n.setDate(e.getDate()+t),n}function Jt(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 Zt(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`${2===a.length?"20":""}${a}-${Mt(n)}-${Mt(t)}`}return null}function Xt(e){return e.trim().normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function en(e){const t=new Date(e.year,e.month-1,e.day+1);return Qt.fromDate(t)}function tn(e,t){const n=new AbortController;return e.addEventListener("click",async n=>{if(n.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:window});a.isSynthetic=!0,setTimeout(()=>{e.dispatchEvent(a)},100)},{capture:!0,signal:n.signal}),n}const nn="EUR",an=1e3;function on(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var rn,sn;const cn=on(function(){if(sn)return rn;sn=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 rn={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 ln(e){let t=e.trim();return/^(?:f|ht)tps?\:\/\//.test(t)||(t="http://"+t),new URL(t)}function un(e){return e.hostname.replace(/^www\./,"")}function pn(e){try{return un("string"==typeof e?ln(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=cn.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 dn={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"}},"secondary_cta":{"compare_price":"Compare price","book_directly":"Book directly","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","badge_alt":"Go Directo"}}'),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"}},"secondary_cta":{"compare_price":"Comparar precio","book_directly":"Reservar con Directo","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","badge_alt":"Ir Directo"}}'),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"}},"secondary_cta":{"compare_price":"Comparer les prix","book_directly":"Réserver avec Directo","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","badge_alt":"Allez sur Directo"}}'),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"}},"secondary_cta":{"compare_price":"Confronta il prezzo","book_directly":"Prenota direttamente","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","badge_alt":"Vai su Directo"}}'),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"}},"secondary_cta":{"compare_price":"Comparar preço","book_directly":"Reserve diretamente","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","badge_alt":"Ir para o Directo"}}')},mn=new class{translations;constructor(e){this.translations=e}getLocalisedString(e,t){const n=t&&Object.keys(this.translations).includes(t)?t:ft(),a=`{${e}}`,o=Ee(this.translations,`${n}.${e}`)??Ee(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 pt(t,(e,t)=>{null!=e&&(o=o.replace(`{${t}}`,e.toString()))}),o}}(dn),hn=mn.translate.bind(mn);class fn extends Wt{latestCheckbox=null;constructor(){super("RENFE")}async shouldActivate(){return"renfe.com"===un(new URL(window.location.href))}async getDestination(){try{const e=await Ut(["#destination"]);if(e){const t=e.textContent||e.value;return t?Xt(t):null}return null}catch(e){return console.error(e),""}}async handleCrossSell(){this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){await c(100),Ht(["#promotionsv2"],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new gn(t),this.latestCheckbox.injectInto(e),e.style.display="flex"},{retryMs:an,checkIntervalMs:an})}async attachSearchInterceptor(){Ht(['button[type="submit"]',".rf-button--primary"],e=>{const t=tn(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:an,checkIntervalMs:an})}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()??en(a),r=n.adults(),i=n.currency(),s=n.children(),{partnerKey:c}=await v.getConfig();await v.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=e.textContent||e.value;if(t){const[e,n]=t.split(",");if(n)return Qt.tryFromSlashDDMMYY(n.trim())}}return null},checkout(){const e=Ut(["#second-input"]);if(e){const t=e.textContent||e.value;if(t){const[e,n]=t.split(",");if(n)return Qt.tryFromSlashDDMMYY(n.trim())}}return null},adults(){const e=Ut(["#passengersSelection"]);if(e){const t=e.value;if(t){const[e,n,a]=t.matchAll(/(\d+)/g);return e?parseInt(e[1]):2}}return 2},children(){const e=Ut(["#passengersSelection"]);if(e){const t=e.value;if(t){const[e,n,a]=t.matchAll(/(\d+)/g);return n?parseInt(n[1]):0}}return 0},currency:()=>nn}}}class gn{$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=Kt()??mt();this.$text=document.createTextNode(hn("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 Ft(this.$checkbox)}}const bn=["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 kn extends Wt{latestCheckbox=null;constructor(){super("SKYSCANNER")}async shouldActivate(){const e=un(new URL(window.location.href));return bn.includes(e)}async getDestination(){try{const e=await Ut(['input[name="destinationInput-search"]']);return e?Xt(e.value):null}catch(e){return console.error(e),null}}async handleCrossSell(){this.injectUI()}injectUI(){this.injectCheckbox(),this.attachSearchInterceptor()}async injectCheckbox(){Ht(['[class*="SearchControls_DestinationInput__"] fieldset'],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new yn(t),this.latestCheckbox.injectInto(e)},{retryMs:an,checkIntervalMs:an})}async attachSearchInterceptor(){Ht(['[data-testid="desktop-cta"]','[data-testid="mobile-cta"]'],e=>{const t=tn(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:an,checkIntervalMs:an})}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()??en(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await v.getConfig();await v.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=e.textContent||e.value;if(t)return Qt.tryFromSlashDMY(t)}return null},checkout(){const e=Ut(['[data-testid="return-btn"] [class*="SearchControlButton_value__"]']);if(e){const t=e.textContent||e.value;if(t)return Qt.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:()=>nn}}}class yn{$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=Kt()??mt();this.$text=document.createTextNode(hn("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 Ft(this.$checkbox)}}const vn=["ryanair.com"];class wn extends Wt{latestCheckbox=null;constructor(){super("RYANAIR")}async shouldActivate(){const e=un(new URL(window.location.href));return vn.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(){Ht([".filters-container"],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new jn(t),this.latestCheckbox.injectInto(e)},{retryMs:an,checkIntervalMs:an})}async attachSearchInterceptor(){Ht([".flight-search-widget__start-search button"],e=>{const t=tn(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:an,checkIntervalMs:an})}async handleSearchClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await v.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await v.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()??en(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await v.getConfig();await v.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?Qt.tryFromDashYYYYMMDD(t):null},checkout(){const t=e.searchParams.get("dateIn");return t?Qt.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")??nn}}}class jn{$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():mt();this.$text=document.createTextNode(hn("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 Ft(this.$checkbox)}}const _n=["latamairlines.com"];class xn extends Wt{latestCheckbox=null;constructor(){super("LATAM_AIRLINES")}async shouldActivate(){const e=un(new URL(window.location.href));return _n.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(){Ht(['[class*="LoyaltyBoxstyles__CheckboxContainer"]'],e=>{let t=!0;this.latestCheckbox&&(t=this.latestCheckbox.checked,this.latestCheckbox.remove(),this.latestCheckbox=null),this.latestCheckbox=new zn(t),this.latestCheckbox.injectInto(e)},{retryMs:an,checkIntervalMs:an})}async attachSearchInterceptor(){Ht(["button#fsb-search-flights",'button[type="submit"]'],e=>{const t=tn(e,this.handleSearchClick.bind(this));return()=>{t.abort()}},{retryMs:an,checkIntervalMs:an})}async handleSearchClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await v.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await v.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()??en(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await v.getConfig();await v.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?Qt.tryFromDashYYYYMMDD(n):null},checkout(){const t=e.searchParams.get("inbound");if(!t)return null;const[n,a]=t.split("T");return n?Qt.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 nn}}}}class zn{$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=Kt()??mt();this.$text=document.createTextNode(hn("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 Ft(this.$checkbox)}}const Cn=["iberia.com"];class Sn extends Wt{latestTabCheckbox=null;latestAccordionCheckbox=null;latestChecked=!0;constructor(){super("IBERIA")}async shouldActivate(){const e=un(new URL(window.location.href));return Cn.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 c(500),this.injectTabCheckbox(),this.injectAccordionCheckbox(),this.attachSearchInterceptor()}async injectTabCheckbox(){const e=new AbortController;Ht(["#tab-flights .ibe-searcher__options .ibe-form__radio-group"],t=>{this.latestTabCheckbox&&(this.latestTabCheckbox.remove(),this.latestTabCheckbox=null),this.latestTabCheckbox=new En(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:an,checkIntervalMs:an,signal:e.signal})}async injectAccordionCheckbox(){const e=new AbortController;Ht(["#m-tab-searcher-1 .ibe-searcher__options"],t=>{this.latestAccordionCheckbox&&(this.latestAccordionCheckbox.remove(),this.latestAccordionCheckbox=null),this.latestAccordionCheckbox=new En(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:an,checkIntervalMs:an,signal:e.signal})}async attachSearchInterceptor(){Ht(["#buttonSubmit1"],e=>{const t=tn(e,this.handleSearchClick.bind(this));return()=>t.abort()},{retryMs:an,checkIntervalMs:an})}async handleSearchClick(){const e=null!==this.latestTabCheckbox&&this.latestTabCheckbox.isVisible&&this.latestTabCheckbox.checked,t=null!==this.latestAccordionCheckbox&&this.latestAccordionCheckbox.isVisible&&this.latestAccordionCheckbox.checked;await v.setCrossSellWasChecked({crossSellId:this.platform,checked:e||t})}async maybeOpenTab(){if(!await v.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()??en(n),o=t.adults(),r=t.currency(),i=t.children(),{partnerKey:s}=await v.getConfig();await v.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?On(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?On(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:()=>nn}}}class En{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 An(this.$checkbox.checked))});const t=Kt()??mt();this.$text=document.createTextNode(hn("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 Ft(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 On(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 Qt(o,r,i)}class An extends Event{checked;constructor(e){super("change"),this.checked=e}}function Pn(e){try{const t=un(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 Nn=/(www\.)?airbnb\.[.a-z]{2,7}\/rooms\/(plus\/)?(\d+)/i,Tn=/[https:\/\/]*[www]*\.airbnb\..*?\/homes/i,In=/[https:\/\/]*[www]*\.airbnb\..*?\/book\/stays/i,Ln=/^(?:https:\/\/)?(?:www\.)?booking\.com\/hotel\/[\w\-\/]*/i,Dn=/^(?:https:\/\/)?(?:www\.)?booking\.com\/searchresults/i,Rn=/^(?:https:\/\/)?secure\.booking\.com\/(?:tpi_)?book(?:\.[a-z]+)?\.html/i,Mn=/^(?:https:\/\/)?secure\.booking\.com\/confirmation\.[^.]+\.html/i,$n=/(?:www\.)vrbo\.com\/(?:[a-z]{2}-[a-z]{2}\/)?(?:[a-z0-9-]+\/)?p?\d+[a-zA-Z]*/,Bn=/(www\.)?vrbo\.com(\/\w{0,2}-\w{0,2})*\/search/,Un=/[https:\/\/]*[www]*\.vrbo\.com(\/\w{0,2}-\w{0,2})?\/td\/tc\/checkout/,Vn=/(www\.)?abritel\.fr\/location-vacances\/(\w*)/,Fn=/(www\.)?abritel\.fr\/search/,Hn=/[https:\/\/]*[www]*\.abritel\.fr\/\/td\/tc\/checkout/,Kn=/expedia.[a-z.]{2,7}\/(?:[a-z0-9-]+\/)?[\w-]*?\.h(\d*)\.[\w-]*\??/g,qn=/expedia\.[a-z.]{2,7}\/Hotel-Search/,Gn=/[https:\/\/]*[www]*\.expedia\.com\/HotelCheckout/,Wn=/[https:\/\/]*[www]*\.google\.[a-z.]{2,7}\/search\?/g,Qn=tt(Object.getPrototypeOf,Object);var Yn=Function.prototype,Jn=Object.prototype,Zn=Yn.toString,Xn=Jn.hasOwnProperty,ea=Zn.call(Object);const ta=function(e){if(!T(e)||"[object Object]"!=N(e))return!1;var t=Qn(e);if(null===t)return!0;var n=Xn.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Zn.call(n)==ea};function na(e){const t=/(http[s]?:\/\/www\.booking\.com\/[\w\/-]+)\./.exec(e);return(t?t[1]:e).replace(/http[s]?:\/\/www\.booking\.com\/hotel\//,"")}function aa(e){const t=e||window.location.href;try{const{pathname:e}=new URL(t),n=na(t.replace(/\.html?[^]*/,""));return e.includes("searchresults")?null:n}catch(e){return console.error(e),null}}class oa extends Wt{latestCheckbox=null;confirmationInfo=null;constructor(){super("BOOKING_VIATOR")}async shouldActivate(){return oa.isCheckout(window.location)||oa.isConfirmation(window.location)}static isCheckout(e){return Rn.test(e.href)&&null!==oa.getCheckoutType(e.pathname)}static isConfirmation(e){return Mn.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(!oa.isConfirmation(window.location))return null;const e=await qt(['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(!ta(t))return null;if(!("hotelCity"in t))return null;const n=t.hotelCity;if(!ta(n))return null;const a=n;return"rawValue"in a&&"string"==typeof a.rawValue?a.rawValue:null}async handleCrossSell(){oa.isConfirmation(window.location)?this.maybeOpenTab():this.injectUI()}injectUI(){switch(oa.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(){Ht(['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 ra(t);const n=e.parentElement?.parentElement?.parentElement;n&&n.before(this.latestCheckbox.$rootElement)},{retryMs:an,checkIntervalMs:an})}async attachBookSearchInterceptor(){Ht(['button[name="book"][class*="complete-booking"]'],e=>{const t=tn(e,this.handleSubmitClick.bind(this));return()=>{t.abort()}},{retryMs:an,checkIntervalMs:an})}async injectTpiBookCheckbox(){}async attachTpiBookSearchInterceptor(){}async handleSubmitClick(){const e=null!==this.latestCheckbox&&this.latestCheckbox.isVisible&&this.latestCheckbox.checked;await v.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await v.getCrossSellWasChecked({crossSellId:this.platform}))return;const e=await this.getDestination();if(!e)return;const t=await this.getQueryParamMap(new URL(window.location.href)),n=aa(Ut(['[data-c360-id="hotelTitle"] a'])?.getAttribute("href")??"");v.openViatorCrossSellTab({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?Qt.fromDate(new Date(e)):Qt.fromDate(new Date)},checkout(){const e=n?.trans_checkout;return e&&"string"==typeof e?Qt.fromDate(new Date(e)):Qt.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 ra{$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=Kt()??mt();this.$text=document.createTextNode(hn("cross_sell.booking.explore_activities_with",{},t)),this.$linkText=document.createTextNode(hn("cross_sell.booking.viator",{},t)),this.$link=document.createElement("a"),this.$link.href=(()=>{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()})(),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 Ft(this.$checkbox)}}class ia{platforms=[];constructor(){this.platforms=[new fn,new kn,new wn,new xn,new Sn,new oa]}async initialize(e){for(const t of this.platforms)await t.shouldActivate(e)&&await t.handleCrossSell()}}const sa="directoUserId";let ca="";async function la(){if(ca)return ca;const{[sa]:e}=await chrome.storage.local.get(sa);return ca=e||"",ca}class ua{partner_name=""}class pa extends ua{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 ft()}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($(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(async()=>await Ut([e]),e=>!e||!e.textContent,10)(),n=JSON.parse(t?.textContent??"{}");return this.info=Tt(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 da(e){return Math.round(e)/100}function ma(e){if(!e)return null;const t=/([\d,]+)(\.\d+)*/.exec(e),n=Ee(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 ha extends pa{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=await Ut(['[data-locator="guest-name"]']),t=await Ut(['[data-js="firstName"]']),n=await 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||(await Ut(['[data-js="email"]']))?.getAttribute("value")||null}async getPrice(){try{const e=await Ut(['[data-js="cash-total-price"']),t=e?.getAttribute("data-currency")?.trim()??"",n=e?.getAttribute("data-price")?.trim()??"";return{currency:t,net_total_price:ma(n),gross_total_price:ma(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=await Vt(['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||(await Ut([".originalCheckinDate"]))?.textContent?.trim()||null,checkout:e?.date_checkout||(await Ut([".originalCheckoutDate"]))?.textContent?.trim()||null,adults:e?.number_of_adults||(await 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 fa extends pa{constructor(){super("BARCELO")}shouldHandle(e){return/reservation\.barcelo\.com(?:[a-zA-Z\/]*?)\/booking-confirmation/i.test(e)}async getReservationId(){try{const e=await Dt(async()=>await Ut([".Header_container__stwp8"]),e=>!e||!e.textContent,10)();return e?.getAttribute("data-quantum-itinerary-number")??null}catch(e){return console.error("Error getting reservation id",e),null}}async getBookingReference(){return await this.getReservationId()}async getPropertyName(){const e=await Dt(async()=>await Ut([".Hotel_container__exUmK"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getGuestName(){const e=await Dt(async()=>await Ut([".RoomsCard_roomHeader__yjOpN .Text_color-dark__sNe3i"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim().replace(/[()]/g,"")??null}async getPrice(){try{const e=await this.getInfoJSON(),{searchParams:t}=new URL(window.location.href),n=t.get("currency"),a=await Dt(async()=>await Ut(['[data-target="confirmationPriceCard"]']),e=>!e||!e.textContent,10)(),o=await Ut([".Price_container__MSwmL"],a),r=o?.children[0]?.textContent?.trim().replace(/[^0-9.,]/g,""),i=ma(r||""),s=await Ut([".Taxes_breakdownRow__nUtR9 .Price_container__MSwmL"],a),c=s?.children[0]?.textContent?.trim(),l=ma(c||"");return r?{currency:n||e?.query.currency,net_total_price:i,gross_total_price:i,total_tax_price:l}:null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){return"BOOKED"}async getQueryParamMap(e){try{const t=await this.getInfoJSON(),{searchParams:n}=new URL(e),a=n.get("arrive"),o=n.get("depart"),r=n.get("adult"),i=n.get("child");return t?{checkin:a||t.query.arrive,checkout:o||t.query.depart,adults:r||t.query.adult,children:i||t.query.child}:{checkin:null,checkout:null,adults:null,children:null}}catch(e){return console.error("Error getting query param map",e),{checkin:null,checkout:null,adults:null,children:null}}}}class ga extends pa{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(Vt,e=>!Ee(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 ba=Object.prototype.toString;const ka={...(ya=function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=ba.call(t)),e[t]=n},wa=ut,va=function(){return wa},function(e,t){return function(e,t,n,a){return st(e,function(e,o,r){t(a,n(e),o,r)}),a}(e,ya,va(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 ya,va,wa;function ja(e){return ka[e]||e||"USD"}class _a extends pa{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=await 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:ma(e.booking.bookingDetails.receipt.priceTotalWithTaxes.price.local.value),net_total_price:ma(e.booking.bookingDetails.receipt.priceTotal.price.local.value)};const t=await Ut(["#payment-schedule .mb-xxl"]);if(t?.textContent){const e=t.textContent.trim(),n=e.replace(/[\d,.\s]*/g,""),a=ma(e.replace(/[^0-9.,]/g,""));return{currency:ja(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=await 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=await Vt([".tw-reset-button.cursor-pointer.text-black-ultra"]);return t?.[5]?.textContent?.trim()??null}async getStatus(){const e=await 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=await 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(async()=>await Ut(['script[data-key="initial-state"]']),e=>!e||!e.textContent,10)(),t=e?.textContent?.trim()?.replace(/<!--/,"").replace(/-->/,""),n=JSON.parse(t??"{}");return this.info=Tt(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=await Ut([".pr-m .mt-s:not(.gap-xs)"]);return{checkin:async()=>{try{if(n){const e=n.children[0].children[1].children[0];return Jt(e?.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].children[1].children[0];return Jt(e?.textContent?.trim()??null)??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=await 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=await 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 xa=".confirmation-page .row > div.col-lg-5.col-12";class za extends pa{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=await Ut([`${xa} > 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=await Ut([".bookingCart"]);let n=await(Ut([".bookingCart"])?.children[0]),a=n?.getAttribute("data-currency")?.trim()??"";const o=t?.children[1];return{currency:ja(a),net_total_price:ma(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(async()=>await Ut(["#app"]),e=>!e||!e.getAttribute("data-page"),10)(),t=JSON.parse(e?.getAttribute("data-page")||"{}");return this.info=Tt(t)?null:t,this.info}catch(e){return console.error("Error getting info",e),null}}async getStatus(){const e=await 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=await Ut([`${xa} > div:nth-child(3) > div > div:nth-child(2)`]);return{checkin:async()=>{try{if(n){const e=n.textContent;return Jt(Zt(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 Jt(Zt(e?.split(" - ")[1]??null))??null}return null}catch(e){return console.error("Error getting checkout",e),null}},adults:async()=>{try{const e=await Ut([`${xa} > 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=await Ut([`${xa} > 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 Ca extends pa{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=await 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 Jt(Zt(e.searchParams.get("startDate")))??null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return Jt(Zt(e.searchParams.get("endDate")))??null}catch(e){return console.error("Error getting checkout",e),null}},adults:"adults",children:"children"}}}class Sa extends pa{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(async()=>await 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=await Ut(["#afterTaxValue"]);if(e?.textContent){const t=await Ut([".price-display__value"],e),n=t?.textContent?.trim()??e.textContent.trim(),a=ma(n)??Math.round(100*parseFloat(n.replace(/[^0-9.,]/g,"").replace(",","."))),o=await 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=await Ut(["#hotelName"]);return e?.textContent?.trim()??null}async getGuestName(){const e=await Ut(["#reserveeFullName"]);return e?.textContent?.trim()??null}async getGuestEmail(){return null}async getStatus(){const e=await Ut([".is-cancellation-message"]);return e?.textContent?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await Ut([".bd-info__date"]);return{checkin:async()=>{try{if(t){const e=await 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=await 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=await 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 Ea extends pa{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=await 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=await Ut([".booking-price"]);if(e?.textContent){const t=await Ut([".mcp-price-number"],e),n=await Ut([".mcp-price-cent"],e),a=await 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(async()=>await Ut(["a.btn--manage-reservation"]),e=>!e,15)()}async getQueryParamMap(e){const t=await 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 Jt(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 Oa extends pa{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=ma(t);return{currency:ja(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 Aa=(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 Pa extends pa{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=await Ut([".brandThemeLink"],e),a=ma(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=await Ut([".hotelInfoSummary .ng-star-inserted"]);return e?.textContent?.trim()??null}async getGuestName(){const e=await 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 Aa(a,"qCiMy","qCiD")}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{return Aa(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 Na extends pa{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=ma(t);return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:(a||0)-(ma(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 Ta extends pa{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(async()=>await Ut([".definition-list-wrapper___2kUGk dd"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPrice(){try{const e=await Dt(async()=>await Ut([".c-payment-card___1_CuQ"]),e=>!e||!e.textContent,10)();if(e){const t=Ut([".price___14pEy.featured___2Dap0"],e),n=ma((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:ma((o?.textContent??"").replace(/[a-zA-Z\s]/g,""))}}return null}catch(e){return console.error("Error getting price",e),null}}async getStatus(){const e=await Vt([".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=await Vt([".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=(await Vt([".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 Ia extends pa{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(async()=>await Ut(["#cphMain_ctl01_Label1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getGuestName(){const e=await Dt(async()=>await Ut(["#ContentPlaceHolder3_lblcodclinombre1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getGuestEmail(){const e=await Dt(async()=>await Ut(["#ContentPlaceHolder3_lblcodemail1"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPropertyName(){const e=await Dt(async()=>await Ut([".hname"]),e=>!e||!e.textContent,10)();return e?.textContent?.trim()??null}async getPrice(){try{const e=await Dt(async()=>await Vt(["#Totales div"]),e=>!e||Tt(e),10)(),t=Array.from(e||[]).find(e=>"none"!==e.style.display);if(t){const e=ma((t?.textContent??"").replace(/[a-zA-Z\s]/g,"")),n=await 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 await Vt([".alert-cancelled"])?"CANCELLED":"BOOKED"}async getQueryParamMap(e){const t=await Ut(["#reservationData"]);return{checkin:async()=>{try{if(t&&t){const e=Ut([".checkin .fieldvalue"],t);return Zt(e?.textContent?.trim()??null)}return null}catch(e){return console.error("Error getting checkin",e),null}},checkout:async()=>{try{if(t&&t){const e=await Ut([".checkout .fieldvalue"],t);return Zt(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 La extends pa{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=ma(e);return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:ma(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 Da extends pa{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(async()=>await 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(async()=>await 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(async()=>await 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=await Ut(['[data-track-id="summaryOfCharges"]']);if(e?.textContent){const t=await Ut([".summary-of-charges-total-amount"],e),n=ma(t?.textContent?.trim()||""),a=await Ut([".currency-code"]),o=await Ut([".taxes-total"]),r=ma(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(async()=>await Ut([".booking-summary"]),e=>!e,15)();return{checkin:async()=>{try{if(t){const e=await 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=await 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=await 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 Ra extends pa{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=await Dt(Ut,e=>!e||!e.textContent,10)([".container.component-spacer"]),t=await Ut(["script"],e),n=t?.textContent?.match(/var\s+reservationDataFromAEM\s*=\s*(\{[\s\S]*?\});/),a=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}(n?.[1],["taxList","dateRateMap","checkInTime","checkOutTime"])?.replace(/([a-zA-Z0-9_]+)\s*:/g,'"$1":').replace(/\n/g,"");return n?(this.info=JSON.parse(a||"{}"),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=ma(t);return{currency:o,gross_total_price:r,net_total_price:ma(n),total_tax_price:ma(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 Ma extends pa{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=await Vt(["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:ma(e.total_amount_excluding_wizard||e.final_amount_excluding_oyo_money),net_total_price:ma(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 $a extends pa{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:ja(n),o=ma(t.replace(/[^0-9.]/g,""));return{currency:ja(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 Ba extends pa{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(async()=>await Ut(['[data-drupal-selector="drupal-settings-json"]']),e=>!e||!e.textContent,10)(),t=JSON.parse(e?.textContent||"{}");return this.info=Tt(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=ma(t.replace(/[^0-9.]/g,""));return{currency:n,gross_total_price:a,net_total_price:a,total_tax_price:ma((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 Ua extends pa{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=await Ut([".voucher__client .voucher__client-info-value"]);return e?.textContent?.trim()??null??null}async getGuestEmail(){const e=await Vt([".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:ma(String(parseFloat(e.value)-parseFloat(e.tax))),gross_total_price:ma(e.value),total_tax_price:ma(e.tax)};const t=await Ut([".bookingCart"]);let n=await(Ut([".bookingCart"])?.children[0]),a=n?.getAttribute("data-currency")?.trim()??"";const o=t?.children[1];return{currency:ja(a),net_total_price:ma(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=Tt(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 Va extends pa{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()=>await Ut(['[name="bookingId"]']),e=>!e,10)();return e?e.getAttribute("value"):null}async getPropertyName(){const e=await Ut(['[data-test="propertyName"]']);return e?.textContent?.trim()??null}async getGuestName(){const e=await Ut(['[data-test="first-name"]']),t=await Ut(['[data-test="last-name"]']);return e?.textContent?.trim()+" "+t?.textContent?.trim()}async getGuestEmail(){const e=await Ut(['[data-test="email"]']);return e?.textContent?.trim()??null}async getPrice(){return null}async getStatus(){return"BOOKED"}async getQueryParamMap(e){const t=await Ut(['[data-testid="people"]']);return{checkin:null,checkout:null,adults:t?.textContent?.replace(/\D/g,"")??null,children:null}}}class Fa extends pa{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=ma(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 Ha extends pa{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 na(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=ma(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 qt(['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 Ka extends pa{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=await Ut(['[data-testid="people"]']);return{checkin:null,checkout:null,adults:t?.textContent?.replace(/\D/g,"")??null,children:null}}}class qa extends pa{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(async()=>await 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 Ga extends pa{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(Vt,e=>!Ee(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 Wa{trackers=[];activeTracker=null;constructor(){this.trackers=[new ha,new fa,new ga,new _a,new za,new Ca,new Sa,new Ea,new Oa,new Pa,new Na,new Ta,new Ia,new La,new Da,new Ra,new Ma,new $a,new Ba,new Ua,new Va,new Fa,new Ha,new Ka,new qa,new Ga]}async initialize(e){try{const t=this.getTrackerForUrl(e);if(t&&await t.isReservation()){const e=await t.getReservationDetails(),n=await v.getSessionId(),a=await la();"html"===t.parserType?v.sendConversionHTMLEvent({...e,session_id:n,user_id:a}):v.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 Qa={utm_source:"getdirecto",utm_medium:"extension"};function Ya(e){const t=ln(e);for(const[e,n]of Object.entries(Qa))t.searchParams.set(e,n);return t.toString()}const Ja=function(){try{var e=Z(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();var Za=Object.prototype.hasOwnProperty;const Xa=function(e,t,n){var a=e[t];Za.call(e,t)&&oe(a,n)&&(void 0!==n||t in e)||function(e,t,n){"__proto__"==t&&Ja?Ja(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}(e,t,n)},eo=function(e,t,n){return null==e?e:function(e,t,n,a){if(!M(e))return e;for(var o=-1,r=(t=ze(t,e)).length,i=r-1,s=e;null!=s&&++o<r;){var c=Ce(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=M(u)?u:Ue(t[o+1])?[]:{})}Xa(s,c,l),s=s[c]}return e}(e,t,n)};function to(e,t){return Math.floor(Math.random()*(t-e+1)+e)}var no=n(723),ao=n(997);function oo(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 ro={};function io(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:"undefined"!=typeof self?self:ro}var so=Object.assign,co=Object.getOwnPropertyDescriptor,lo=Object.defineProperty,uo=Object.prototype,po=[];Object.freeze(po);var mo={};Object.freeze(mo);var ho="undefined"!=typeof Proxy,fo=Object.toString();function go(){ho||oo("Proxy not available")}function bo(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var ko=function(){};function yo(e){return"function"==typeof e}function vo(e){switch(typeof e){case"string":case"symbol":case"number":return!0}return!1}function wo(e){return null!==e&&"object"==typeof e}function jo(e){if(!wo(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()===fo}function _o(e){var t=null==e?void 0:e.constructor;return!!t&&("GeneratorFunction"===t.name||"GeneratorFunction"===t.displayName)}function xo(e,t,n){lo(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function zo(e,t,n){lo(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function Co(e,t){var n="isMobX"+e;return t.prototype[n]=!0,function(e){return wo(e)&&!0===e[n]}}function So(e){return null!=e&&"[object Map]"===Object.prototype.toString.call(e)}function Eo(e){return null!=e&&"[object Set]"===Object.prototype.toString.call(e)}var Oo=void 0!==Object.getOwnPropertySymbols,Ao="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:Oo?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames;function Po(e){return null===e?null:"object"==typeof e?""+e:e}function No(e,t){return uo.hasOwnProperty.call(e,t)}var To=Object.getOwnPropertyDescriptors||function(e){var t={};return Ao(e).forEach(function(n){t[n]=co(e,n)}),t};function Io(e,t){return!!(e&t)}function Lo(e,t,n){return n?e|=t:e&=~t,e}function Do(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 Ro(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,Fo(a.key),a)}}function Mo(e,t,n){return t&&Ro(e.prototype,t),n&&Ro(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function $o(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 Do(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)?Do(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 Bo(){return Bo=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},Bo.apply(null,arguments)}function Uo(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Vo(e,t)}function Vo(e,t){return Vo=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Vo(e,t)}function Fo(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 Ho=Symbol("mobx-stored-annotations");function Ko(e){return Object.assign(function(t,n){if(Go(n))return e.decorate_20223_(t,n);qo(t,n,e)},e)}function qo(e,t,n){No(e,Ho)||xo(e,Ho,Bo({},e[Ho])),function(e){return e.annotationType_===tr}(n)||(e[Ho][t]=n)}function Go(e){return"object"==typeof e&&"string"==typeof e.kind}var Wo=Symbol("mobx administration"),Qo=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_=Zr.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 wi(this)},t.reportChanged=function(){yi(),ji(this),vi()},t.toString=function(){return this.name_},Mo(e,[{key:"isBeingObserved",get:function(){return Io(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isBeingObservedMask_,t)}},{key:"isPendingUnobservation",get:function(){return Io(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isPendingUnobservationMask_,t)}},{key:"diffValue",get:function(){return Io(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Lo(this.flags_,e.diffValueMask_,1===t)}}])}();Qo.isBeingObservedMask_=1,Qo.isPendingUnobservationMask_=2,Qo.diffValueMask_=4;var Yo=Co("Atom",Qo);function Jo(e,t,n){void 0===t&&(t=ko),void 0===n&&(n=ko);var a=new Qo(e);return t!==ko&&Hi(Ui,a,t,undefined),n!==ko&&Fi(a,n),a}var Zo={identity:function(e,t){return e===t},structural:function(e,t){return rc(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 rc(e,t,1)}};function Xo(e,t,n){return ts(e)?e:Array.isArray(e)?Rr.array(e,{name:n}):jo(e)?Rr.object(e,void 0,{name:n}):So(e)?Rr.map(e,{name:n}):Eo(e)?Rr.set(e,{name:n}):"function"!=typeof e||$i(e)||es(e)?e:_o(e)?Zi(e):Ri(n,e)}function er(e){return e}var tr="override";function nr(e,t){return{annotationType_:e,options_:t,make_:ar,extend_:or,decorate_20223_:rr}}function ar(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($i(n.value))return 1;var r=ir(e,this,t,n,!1);return lo(a,t,r),2}function or(e,t,n,a){var o=ir(e,this,t,n);return e.defineProperty_(t,o,a)}function rr(e,t){var n,a=t.kind,o=t.name,r=t.addInitializer,i=this,s=function(e){var t,n,a,r;return qr(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 $i(n)||(n=s(n)),null!=(t=i.options_)&&t.bound&&((n=n.bind(this)).isMobxAction=!0),n}:"method"==a?($i(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 oo("Cannot apply '"+i.annotationType_+"' to '"+String(o)+"' (kind: "+a+"):\n'"+i.annotationType_+"' can only be used on properties with a function value.")}function ir(e,t,n,a,o){var r,i,s,c,l,u,p,d;void 0===o&&(o=fi.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:qr(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 sr(e,t){return{annotationType_:e,options_:t,make_:cr,extend_:lr,decorate_20223_:ur}}function cr(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&&(!No(e.target_,t)||!es(e.target_[t]))&&null===this.extend_(e,t,n,!1))return 0;if(es(n.value))return 1;var r=pr(e,this,0,n,!1,!1);return lo(a,t,r),2}function lr(e,t,n,a){var o,r=pr(e,this,0,n,null==(o=this.options_)?void 0:o.bound);return e.defineProperty_(t,r,a)}function ur(e,t){var n,a=t.name,o=t.addInitializer;return es(e)||(e=Zi(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 pr(e,t,n,a,o,r){var i;void 0===r&&(r=fi.safeDescriptors),i=a,t.annotationType_,i.value;var s,c=a.value;return es(c)||(c=Zi(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 dr(e,t){return{annotationType_:e,options_:t,make_:mr,extend_:hr,decorate_20223_:fr}}function mr(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function hr(e,t,n,a){return o=n,this.annotationType_,o.get,e.defineComputedProperty_(t,Bo({},this.options_,{get:n.get,set:n.set}),a);var o}function fr(e,t){var n=this,a=t.name;return(0,t.addInitializer)(function(){var t=Rs(this)[Wo],o=Bo({},n.options_,{get:e,context:this});o.name||(o.name="ObservableObject."+a.toString()),t.values_.set(a,new Jr(o))}),function(){return this[Wo].getObservablePropValue_(a)}}function gr(e,t){return{annotationType_:e,options_:t,make_:br,extend_:kr,decorate_20223_:yr}}function br(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function kr(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:Xo,a)}function yr(e,t){var n=this,a=t.kind,o=t.name,r=new WeakSet;function i(e,t){var a,i,s=Rs(e)[Wo],c=new Yr(t,null!=(a=null==(i=n.options_)?void 0:i.enhancer)?a:Xo,"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[Wo].getObservablePropValue_(o)},set:function(e){return r.has(this)||i(this,e),this[Wo].setObservablePropValue_(o,e)},init:function(e){return r.has(this)||i(this,e),e}}}var vr="true",wr=jr();function jr(e){return{annotationType_:vr,options_:e,make_:_r,extend_:xr,decorate_20223_:zr}}function _r(e,t,n,a){var o,r,i,s;if(n.get)return Ur.make_(e,t,n,a);if(n.set){var c=$i(n.set)?n.set:qr(t.toString(),n.set);return a===e.target_?null===e.defineProperty_(t,{configurable:!fi.safeDescriptors||e.isPlainObject_,set:c})?0:2:(lo(a,t,{configurable:!0,set:c}),2)}if(a!==e.target_&&"function"==typeof n.value)return _o(n.value)?(null!=(s=this.options_)&&s.autoBind?Zi.bound:Zi).make_(e,t,n,a):(null!=(i=this.options_)&&i.autoBind?Ri.bound:Ri).make_(e,t,n,a);var l,u=!1===(null==(o=this.options_)?void 0:o.deep)?Rr.ref:Rr;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 xr(e,t,n,a){var o,r,i;return n.get?Ur.extend_(e,t,n,a):n.set?e.defineProperty_(t,{configurable:!fi.safeDescriptors||e.isPlainObject_,set:qr(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)?Rr.ref:Rr).extend_(e,t,n,a))}function zr(e,t){oo("'"+this.annotationType_+"' cannot be used as a decorator")}var Cr={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};function Sr(e){return e||Cr}Object.freeze(Cr);var Er=gr("observable"),Or=gr("observable.ref",{enhancer:er}),Ar=gr("observable.shallow",{enhancer:function(e,t,n){return null==e||Bs(e)||_s(e)||Es(e)||Ns(e)?e:Array.isArray(e)?Rr.array(e,{name:n,deep:!1}):jo(e)?Rr.object(e,void 0,{name:n,deep:!1}):So(e)?Rr.map(e,{name:n,deep:!1}):Eo(e)?Rr.set(e,{name:n,deep:!1}):void 0}}),Pr=gr("observable.struct",{enhancer:function(e,t){return rc(e,t)?t:e}}),Nr=Ko(Er);function Tr(e){return!0===e.deep?Xo:!1===e.deep?er:(t=e.defaultDecorator)&&null!=(n=null==(a=t.options_)?void 0:a.enhancer)?n:Xo;var t,n,a}function Ir(e,t,n){return Go(t)?Er.decorate_20223_(e,t):vo(t)?void qo(e,t,Er):ts(e)?e:jo(e)?Rr.object(e,t,n):Array.isArray(e)?Rr.array(e,t):So(e)?Rr.map(e,t):Eo(e)?Rr.set(e,t):"object"==typeof e&&null!==e?e:Rr.box(e,t)}so(Ir,Nr);var Lr,Dr,Rr=so(Ir,{box:function(e,t){var n=Sr(t);return new Yr(e,Tr(n),n.name,!0,n.equals)},array:function(e,t){var n=Sr(t);return(!1===fi.useProxies||!1===n.proxy?Zs:gs)(e,Tr(n),n.name)},map:function(e,t){var n=Sr(t);return new Ss(e,Tr(n),n.name)},set:function(e,t){var n=Sr(t);return new Ps(e,Tr(n),n.name)},object:function(e,t,n){return nc(function(){return function(e,t,n,a){var o=To(t);return nc(function(){var t=Rs(e,a)[Wo];Ao(o).forEach(function(e){t.extend_(e,o[e],!n||!(e in n)||n[e])})}),e}(!1===fi.useProxies||!1===(null==n?void 0:n.proxy)?Rs({},n):function(e,t){var n,a;return go(),null!=(a=(n=(e=Rs(e,t))[Wo]).proxy_)?a:n.proxy_=new Proxy(e,os)}({},n),e,t)})},ref:Ko(Or),shallow:Ko(Ar),deep:Nr,struct:Ko(Pr)}),Mr="computed",$r=dr(Mr),Br=dr("computed.struct",{equals:Zo.structural}),Ur=function(e,t){if(Go(t))return $r.decorate_20223_(e,t);if(vo(t))return qo(e,t,$r);if(jo(e))return Ko(dr(Mr,e));var n=jo(t)?t:{};return n.get=e,n.name||(n.name=e.name||""),new Jr(n)};Object.assign(Ur,$r),Ur.struct=Ko(Br);var Vr=0,Fr=1,Hr=null!=(Lr=null==(Dr=co(function(){},"name"))?void 0:Dr.configurable)&&Lr,Kr={value:"action",configurable:!0,writable:!1,enumerable:!1};function qr(e,t,n,a){function o(){return Gr(0,n,t,a||this,arguments)}return void 0===n&&(n=!1),o.isMobxAction=!0,o.toString=function(){return t.toString()},Hr&&(Kr.value=e,lo(o,"name",Kr)),o}function Gr(e,t,n,a,o){var r=function(e,t){var n=fi.trackingDerivation,a=!t||!n;yi();var o=fi.allowStateChanges;a&&(si(),o=Wr(!0));var r={runAsAction_:a,prevDerivation_:n,prevAllowStateChanges_:o,prevAllowStateReads_:li(!0),notifySpy_:!1,startTime_:0,actionId_:Fr++,parentActionId_:Vr};return Vr=r.actionId_,r}(0,t);try{return n.apply(a,o)}catch(e){throw r.error_=e,e}finally{!function(e){Vr!==e.actionId_&&oo(30),Vr=e.parentActionId_,void 0!==e.error_&&(fi.suppressReactionErrors=!0),Qr(e.prevAllowStateChanges_),ui(e.prevAllowStateReads_),vi(),e.runAsAction_&&ci(e.prevDerivation_),fi.suppressReactionErrors=!1}(r)}}function Wr(e){var t=fi.allowStateChanges;return fi.allowStateChanges=e,t}function Qr(e){fi.allowStateChanges=e}var Yr=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=Zo.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}Uo(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))!==fi.UNCHANGED&&this.setNewValue_(e)},n.prepareNewValue_=function(e){if(rs(this)){var t=ss(this,{object:this,type:ms,newValue:e});if(!t)return fi.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value_,this.name_),this.equals(this.value_,e)?fi.UNCHANGED:e},n.setNewValue_=function(e){var t=this.value_;this.value_=e,this.reportChanged(),cs(this)&&us(this,{type:ms,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.value_)},n.intercept_=function(e){return is(this,e)},n.observe_=function(e,t){return t&&e({observableKind:"value",debugObjectName:this.name_,object:this,type:ms,newValue:this.value_,oldValue:void 0}),ls(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 Po(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},t}(Qo),Jr=function(){function e(e){this.dependenciesState_=Zr.NOT_TRACKING_,this.observing_=[],this.newObserving_=null,this.observers_=new Set,this.runId_=0,this.lastAccessedBy_=0,this.lowestObserverState_=Zr.UP_TO_DATE_,this.unboundDepsCount_=0,this.value_=new ti(null),this.name_=void 0,this.triggeredBy_=void 0,this.flags_=0,this.derivation=void 0,this.setter_=void 0,this.isTracing_=Xr.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||oo(31),this.derivation=e.get,this.name_=e.name||"ComputedValue",e.set&&(this.setter_=qr("ComputedValue-setter",e.set)),this.equals_=e.equals||(e.compareStructural||e.struct?Zo.structural:Zo.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_===Zr.UP_TO_DATE_&&(e.lowestObserverState_=Zr.POSSIBLY_STALE_,e.observers_.forEach(function(e){e.dependenciesState_===Zr.UP_TO_DATE_&&(e.dependenciesState_=Zr.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&&oo(32,this.name_,this.derivation),0!==fi.inBatch||0!==this.observers_.size||this.keepAlive_){if(wi(this),ai(this)){var e=fi.trackingContext;this.keepAlive_&&!e&&(fi.trackingContext=this),this.trackAndCompute()&&((t=this).lowestObserverState_!==Zr.STALE_&&(t.lowestObserverState_=Zr.STALE_,t.observers_.forEach(function(e){e.dependenciesState_===Zr.POSSIBLY_STALE_?e.dependenciesState_=Zr.STALE_:e.dependenciesState_===Zr.UP_TO_DATE_&&(t.lowestObserverState_=Zr.UP_TO_DATE_)}))),fi.trackingContext=e}}else ai(this)&&(this.warnAboutUntrackedRead_(),yi(),this.value_=this.computeValue_(!1),vi());var t,n=this.value_;if(ni(n))throw n.cause;return n},t.set=function(e){if(this.setter_){this.isRunningSetter&&oo(33,this.name_),this.isRunningSetter=!0;try{this.setter_.call(this.scope_,e)}finally{this.isRunningSetter=!1}}else oo(34,this.name_)},t.trackAndCompute=function(){var e=this.value_,t=this.dependenciesState_===Zr.NOT_TRACKING_,n=this.computeValue_(!0),a=t||ni(e)||ni(n)||!this.equals_(e,n);return a&&(this.value_=n),a},t.computeValue_=function(e){this.isComputing=!0;var t,n=Wr(!1);if(e)t=oi(this,this.derivation,this.scope_);else if(!0===fi.disableErrorBoundaries)t=this.derivation.call(this.scope_);else try{t=this.derivation.call(this.scope_)}catch(e){t=new ti(e)}return Qr(n),this.isComputing=!1,t},t.suspend_=function(){this.keepAlive_||(ri(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=mo);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)}:Bi}(t),l=!1;i=new _i(s,function(){l||(l=!0,c(function(){l=!1,i.isDisposed||i.track(u)}))},t.onError,t.requiresObservable)}else i=new _i(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=si();e({observableKind:"computed",debugObjectName:n.name_,type:ms,object:n,newValue:r,oldValue:o}),ci(i)}a=!1,o=r})},t.warnAboutUntrackedRead_=function(){},t.toString=function(){return this.name_+"["+this.derivation.toString()+"]"},t.valueOf=function(){return Po(this.get())},t[Symbol.toPrimitive]=function(){return this.valueOf()},Mo(e,[{key:"isComputing",get:function(){return Io(this.flags_,e.isComputingMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isComputingMask_,t)}},{key:"isRunningSetter",get:function(){return Io(this.flags_,e.isRunningSetterMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isRunningSetterMask_,t)}},{key:"isBeingObserved",get:function(){return Io(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isBeingObservedMask_,t)}},{key:"isPendingUnobservation",get:function(){return Io(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isPendingUnobservationMask_,t)}},{key:"diffValue",get:function(){return Io(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Lo(this.flags_,e.diffValueMask_,1===t)}}])}();Jr.isComputingMask_=1,Jr.isRunningSetterMask_=2,Jr.isBeingObservedMask_=4,Jr.isPendingUnobservationMask_=8,Jr.diffValueMask_=16;var Zr,Xr,ei=Co("ComputedValue",Jr);!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_"}(Zr||(Zr={})),function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(Xr||(Xr={}));var ti=function(e){this.cause=void 0,this.cause=e};function ni(e){return e instanceof ti}function ai(e){switch(e.dependenciesState_){case Zr.UP_TO_DATE_:return!1;case Zr.NOT_TRACKING_:case Zr.STALE_:return!0;case Zr.POSSIBLY_STALE_:for(var t=li(!0),n=si(),a=e.observing_,o=a.length,r=0;r<o;r++){var i=a[r];if(ei(i)){if(fi.disableErrorBoundaries)i.get();else try{i.get()}catch(e){return ci(n),ui(t),!0}if(e.dependenciesState_===Zr.STALE_)return ci(n),ui(t),!0}}return pi(e),ci(n),ui(t),!1}}function oi(e,t,n){var a=li(!0);pi(e),e.newObserving_=new Array(0===e.runId_?100:e.observing_.length),e.unboundDepsCount_=0,e.runId_=++fi.runId;var o,r=fi.trackingDerivation;if(fi.trackingDerivation=e,fi.inBatch++,!0===fi.disableErrorBoundaries)o=t.call(n);else try{o=t.call(n)}catch(e){o=new ti(e)}return fi.inBatch--,fi.trackingDerivation=r,function(e){for(var t=e.observing_,n=e.observing_=e.newObserving_,a=Zr.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&&bi(c,e),c.diffValue=0}for(;o--;){var l=n[o];1===l.diffValue&&(l.diffValue=0,gi(l,e))}a!==Zr.UP_TO_DATE_&&(e.dependenciesState_=a,e.onBecomeStale_())}(e),ui(a),o}function ri(e){var t=e.observing_;e.observing_=[];for(var n=t.length;n--;)bi(t[n],e);e.dependenciesState_=Zr.NOT_TRACKING_}function ii(e){var t=si();try{return e()}finally{ci(t)}}function si(){var e=fi.trackingDerivation;return fi.trackingDerivation=null,e}function ci(e){fi.trackingDerivation=e}function li(e){var t=fi.allowStateReads;return fi.allowStateReads=e,t}function ui(e){fi.allowStateReads=e}function pi(e){if(e.dependenciesState_!==Zr.UP_TO_DATE_){e.dependenciesState_=Zr.UP_TO_DATE_;for(var t=e.observing_,n=t.length;n--;)t[n].lowestObserverState_=Zr.UP_TO_DATE_}}var di=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},mi=!0,hi=!1,fi=function(){var e=io();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(mi=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new di).version&&(mi=!1),mi?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new di):(setTimeout(function(){hi||oo(35)},1),new di)}();function gi(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function bi(e,t){e.observers_.delete(t),0===e.observers_.size&&ki(e)}function ki(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,fi.pendingUnobservations.push(e))}function yi(){fi.inBatch++}function vi(){if(0===--fi.inBatch){Ci();for(var e=fi.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 Jr&&n.suspend_())}fi.pendingUnobservations=[]}}function wi(e){var t=fi.trackingDerivation;return null!==t?(t.runId_!==e.lastAccessedBy_&&(e.lastAccessedBy_=t.runId_,t.newObserving_[t.unboundDepsCount_++]=e,!e.isBeingObserved&&fi.trackingContext&&(e.isBeingObserved=!0,e.onBO())),e.isBeingObserved):(0===e.observers_.size&&fi.inBatch>0&&ki(e),!1)}function ji(e){e.lowestObserverState_!==Zr.STALE_&&(e.lowestObserverState_=Zr.STALE_,e.observers_.forEach(function(e){e.dependenciesState_===Zr.UP_TO_DATE_&&e.onBecomeStale_(),e.dependenciesState_=Zr.STALE_}))}var _i=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_=Zr.NOT_TRACKING_,this.runId_=0,this.unboundDepsCount_=0,this.flags_=0,this.isTracing_=Xr.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,fi.pendingReactions.push(this),Ci())},t.runReaction_=function(){if(!this.isDisposed){yi(),this.isScheduled=!1;var e=fi.trackingContext;if(fi.trackingContext=this,ai(this)){this.isTrackPending=!0;try{this.onInvalidate_()}catch(e){this.reportExceptionInDerivation_(e)}}fi.trackingContext=e,vi()}},t.track=function(e){if(!this.isDisposed){yi(),this.isRunning=!0;var t=fi.trackingContext;fi.trackingContext=this;var n=oi(this,e,void 0);fi.trackingContext=t,this.isRunning=!1,this.isTrackPending=!1,this.isDisposed&&ri(this),ni(n)&&this.reportExceptionInDerivation_(n.cause),vi()}},t.reportExceptionInDerivation_=function(e){var t=this;if(this.errorHandler_)this.errorHandler_(e,this);else{if(fi.disableErrorBoundaries)throw e;var n="[mobx] uncaught error in '"+this+"'";fi.suppressReactionErrors||console.error(n,e),fi.globalReactionErrorHandlers.forEach(function(n){return n(e,t)})}},t.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.isRunning||(yi(),ri(this),vi()))},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[Wo]=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)},Mo(e,[{key:"isDisposed",get:function(){return Io(this.flags_,e.isDisposedMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isDisposedMask_,t)}},{key:"isScheduled",get:function(){return Io(this.flags_,e.isScheduledMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isScheduledMask_,t)}},{key:"isTrackPending",get:function(){return Io(this.flags_,e.isTrackPendingMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isTrackPendingMask_,t)}},{key:"isRunning",get:function(){return Io(this.flags_,e.isRunningMask_)},set:function(t){this.flags_=Lo(this.flags_,e.isRunningMask_,t)}},{key:"diffValue",get:function(){return Io(this.flags_,e.diffValueMask_)?1:0},set:function(t){this.flags_=Lo(this.flags_,e.diffValueMask_,1===t)}}])}();_i.isDisposedMask_=1,_i.isScheduledMask_=2,_i.isTrackPendingMask_=4,_i.isRunningMask_=8,_i.diffValueMask_=16;var xi=100,zi=function(e){return e()};function Ci(){fi.inBatch>0||fi.isRunningReactions||zi(Si)}function Si(){fi.isRunningReactions=!0;for(var e=fi.pendingReactions,t=0;e.length>0;){++t===xi&&(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_()}fi.isRunningReactions=!1}var Ei=Co("Reaction",_i),Oi="action",Ai="autoAction",Pi=nr(Oi),Ni=nr("action.bound",{bound:!0}),Ti=nr(Ai,{autoAction:!0}),Ii=nr("autoAction.bound",{autoAction:!0,bound:!0});function Li(e){return function(t,n){return yo(t)?qr(t.name||"<unnamed action>",t,e):yo(n)?qr(t,n,e):Go(n)?(e?Ti:Pi).decorate_20223_(t,n):vo(n)?qo(t,n,e?Ti:Pi):vo(t)?Ko(nr(e?Ai:Oi,{name:t,autoAction:e})):void 0}}var Di=Li(!1);Object.assign(Di,Pi);var Ri=Li(!0);function Mi(e){return Gr(e.name,!1,e,this,void 0)}function $i(e){return yo(e)&&!0===e.isMobxAction}Object.assign(Ri,Ti),Di.bound=Ko(Ni),Ri.bound=Ko(Ii);var Bi=function(e){return e()};var Ui="onBO",Vi="onBUO";function Fi(e,t,n){return Hi(Vi,e,t,n)}function Hi(e,t,n,a){var o="function"==typeof a?Xs(t,n):Xs(t),r=yo(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 Ki="always";function qi(e){!0===e.isolateGlobalState&&function(){if((fi.pendingReactions.length||fi.inBatch||fi.isRunningReactions)&&oo(36),hi=!0,mi){var e=io();0===--e.__mobxInstanceCount&&(e.__mobxGlobals=void 0),fi=new di}}();var t,n,a=e.useProxies,o=e.enforceActions;if(void 0!==a&&(fi.useProxies=a===Ki||"never"!==a&&"undefined"!=typeof Proxy),"ifavailable"===a&&(fi.verifyProxies=!0),void 0!==o){var r=o===Ki?Ki:"observed"===o;fi.enforceActions=r,fi.allowStateChanges=!0!==r&&r!==Ki}["computedRequiresReaction","reactionRequiresObservable","observableRequiresReaction","disableErrorBoundaries","safeDescriptors"].forEach(function(t){t in e&&(fi[t]=!!e[t])}),fi.allowStateReads=!fi.observableRequiresReaction,e.reactionScheduler&&(t=e.reactionScheduler,n=zi,zi=function(e){return t(function(){return n(e)})})}function Gi(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(Gi)),n}var Wi=0;function Qi(){this.message="FLOW_CANCELLED"}Qi.prototype=Object.create(Error.prototype);var Yi=sr("flow"),Ji=sr("flow.bound",{bound:!0}),Zi=Object.assign(function(e,t){if(Go(t))return Yi.decorate_20223_(e,t);if(vo(t))return qo(e,t,Yi);var n=e,a=n.name||"<unnamed flow>",o=function(){var e,t=arguments,o=++Wi,r=Di(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=Di(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=Di(a+" - runid: "+o+" - yield "+s++,r.throw).call(r,e)}catch(e){return n(e)}u(t)}function u(e){if(!yo(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=Di(a+" - runid: "+o+" - cancel",function(){try{i&&Xi(i);var t=r.return(void 0),n=Promise.resolve(t.value);n.then(ko,ko),Xi(n),e(new Qi)}catch(t){e(t)}}),s};return o.isMobXFlow=!0,o},Yi);function Xi(e){yo(e.cancel)&&e.cancel()}function es(e){return!0===(null==e?void 0:e.isMobXFlow)}function ts(e){return function(e,t){return!!e&&(void 0!==t?!!Bs(e)&&e[Wo].values_.has(t):Bs(e)||!!e[Wo]||Yo(e)||Ei(e)||ei(e))}(e)}function ns(e,t){void 0===t&&(t=void 0),yi();try{return e.apply(t)}finally{vi()}}function as(e){return e[Wo]}Zi.bound=Ko(Ji);var os={has:function(e,t){return as(e).has_(t)},get:function(e,t){return as(e).get_(t)},set:function(e,t,n){var a;return!!vo(t)&&(null==(a=as(e).set_(t,n,!0))||a)},deleteProperty:function(e,t){var n;return!!vo(t)&&(null==(n=as(e).delete_(t,!0))||n)},defineProperty:function(e,t,n){var a;return null==(a=as(e).defineProperty_(t,n))||a},ownKeys:function(e){return as(e).ownKeys_()},preventExtensions:function(e){oo(13)}};function rs(e){return void 0!==e.interceptors_&&e.interceptors_.length>0}function is(e,t){var n=e.interceptors_||(e.interceptors_=[]);return n.push(t),bo(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function ss(e,t){var n=si();try{for(var a=[].concat(e.interceptors_||[]),o=0,r=a.length;o<r&&((t=a[o](t))&&!t.type&&oo(14),t);o++);return t}finally{ci(n)}}function cs(e){return void 0!==e.changeListeners_&&e.changeListeners_.length>0}function ls(e,t){var n=e.changeListeners_||(e.changeListeners_=[]);return n.push(t),bo(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function us(e,t){var n=si(),a=e.changeListeners_;if(a){for(var o=0,r=(a=a.slice()).length;o<r;o++)a[o](t);ci(n)}}function ps(e,t,n){return nc(function(){var a=Rs(e,n)[Wo];null!=t||(t=function(e){return No(e,Ho)||xo(e,Ho,Bo({},e[Ho])),e[Ho]}(e)),Ao(t).forEach(function(e){return a.make_(e,t[e])})}),e}var ds="splice",ms="update",hs={get:function(e,t){var n=e[Wo];return t===Wo?n:"length"===t?n.getArrayLength_():"string"!=typeof t||isNaN(t)?No(bs,t)?bs[t]:e[t]:n.get_(parseInt(t))},set:function(e,t,n){var a=e[Wo];return"length"===t&&a.setArrayLength_(n),"symbol"==typeof t||isNaN(t)?e[t]=n:a.set_(parseInt(t),n),!0},preventExtensions:function(){oo(15)}},fs=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 Qo(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 is(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}),ls(this,e)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(e){("number"!=typeof e||isNaN(e)||e<0)&&oo("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_&&oo(16),this.lastKnownLength_+=t,this.legacyMode_&&t>0&&Js(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=po),rs(this)){var r=ss(this,{object:this.proxy_,type:ds,index:e,removedCount:t,added:n});if(!r)return po;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=cs(this),r=o||a?{observableKind:"array",object:this.proxy_,type:ms,debugObjectName:this.atom_.name_,index:e,newValue:t,oldValue:n}:null;this.atom_.reportChanged(),o&&us(this,r)},t.notifyArraySplice_=function(e,t,n){var a=!this.owned_&&!1,o=cs(this),r=o||a?{observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:ds,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;this.atom_.reportChanged(),o&&us(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&&oo(17,e,n.length),e<n.length){this.atom_;var a=n[e];if(rs(this)){var o=ss(this,{type:ms,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 gs(e,t,n,a){return void 0===n&&(n="ObservableArray"),void 0===a&&(a=!1),go(),nc(function(){var o=new fs(n,t,a,!1);zo(o.values_,Wo,o);var r=new Proxy(o.values_,hs);return o.proxy_=r,e&&e.length&&o.spliceWithArray_(0,0,e),r})}var bs={clear:function(){return this.splice(0)},replace:function(e){var t=this[Wo];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[Wo];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[Wo].spliceWithArray_(e,t,n)},push:function(){for(var e=this[Wo],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[Wo].values_.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){for(var e=this[Wo],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 fi.trackingDerivation&&oo(37,"reverse"),this.replace(this.slice().reverse()),this},sort:function(){fi.trackingDerivation&&oo(37,"sort");var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[Wo],n=t.dehanceValues_(t.values_).indexOf(e);return n>-1&&(this.splice(n,1),!0)}};function ks(e,t){"function"==typeof Array.prototype[e]&&(bs[e]=t(e))}function ys(e){return function(){var t=this[Wo];t.atom_.reportObserved();var n=t.dehanceValues_(t.values_);return n[e].apply(n,arguments)}}function vs(e){return function(t,n){var a=this,o=this[Wo];return o.atom_.reportObserved(),o.dehanceValues_(o.values_)[e](function(e,o){return t.call(n,e,o,a)})}}function ws(e){return function(){var t=this,n=this[Wo];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)}}ks("at",ys),ks("concat",ys),ks("flat",ys),ks("includes",ys),ks("indexOf",ys),ks("join",ys),ks("lastIndexOf",ys),ks("slice",ys),ks("toString",ys),ks("toLocaleString",ys),ks("toSorted",ys),ks("toSpliced",ys),ks("with",ys),ks("every",vs),ks("filter",vs),ks("find",vs),ks("findIndex",vs),ks("findLast",vs),ks("findLastIndex",vs),ks("flatMap",vs),ks("forEach",vs),ks("map",vs),ks("some",vs),ks("toReversed",vs),ks("reduce",ws),ks("reduceRight",ws);var js=Co("ObservableArrayAdministration",fs);function _s(e){return wo(e)&&js(e[Wo])}var xs={},zs="add",Cs="delete",Ss=function(){function e(e,t,n){var a=this;void 0===t&&(t=Xo),void 0===n&&(n="ObservableMap"),this.enhancer_=void 0,this.name_=void 0,this[Wo]=xs,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,yo(Map)||oo(18),nc(function(){a.keysAtom_=Jo("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(!fi.trackingDerivation)return this.has_(e);var n=this.hasMap_.get(e);if(!n){var a=n=new Yr(this.has_(e),er,"ObservableMap.key?",!1);this.hasMap_.set(e,a),Fi(a,function(){return t.hasMap_.delete(e)})}return n.get()},t.set=function(e,t){var n=this.has_(e);if(rs(this)){var a=ss(this,{type:n?ms:zs,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_,rs(this)&&!ss(this,{type:Cs,object:this,name:e}))return!1;if(this.has_(e)){var n=cs(this),a=n?{observableKind:"map",debugObjectName:this.name_,type:Cs,object:this,oldValue:this.data_.get(e).value_,name:e}:null;return ns(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&&us(this,a),!0}return!1},t.updateValue_=function(e,t){var n=this.data_.get(e);if((t=n.prepareNewValue_(t))!==fi.UNCHANGED){var a=cs(this),o=a?{observableKind:"map",debugObjectName:this.name_,type:ms,object:this,oldValue:n.value_,name:e,newValue:t}:null;n.setNewValue_(t),a&&us(this,o)}},t.addValue_=function(e,t){var n=this;this.keysAtom_,ns(function(){var a,o=new Yr(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=cs(this),o=a?{observableKind:"map",debugObjectName:this.name_,type:zs,object:this,name:e,newValue:t}:null;a&&us(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 Os({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 Os({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=$o(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 Es(e)&&(e=new Map(e)),ns(function(){jo(e)?function(e){var t=Object.keys(e);if(!Oo)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter(function(t){return uo.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)}):So(e)?(function(e){var t=Object.getPrototypeOf(e),n=Object.getPrototypeOf(t);return null===Object.getPrototypeOf(n)}(e)||oo(19,e),e.forEach(function(e,n){return t.set(n,e)})):null!=e&&oo(20,e)}),this},t.clear=function(){var e=this;ns(function(){ii(function(){for(var t,n=$o(e.keys());!(t=n()).done;){var a=t.value;e.delete(a)}})})},t.replace=function(e){var t=this;return ns(function(){for(var n,a=function(e){if(So(e)||Es(e))return e;if(Array.isArray(e))return new Map(e);if(jo(e)){var t=new Map;for(var n in e)t.set(n,e[n]);return t}return oo(21,e)}(e),o=new Map,r=!1,i=$o(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=$o(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(),b=o.keys(),k=g.next(),y=b.next();!k.done;){if(k.value!==y.value){t.keysAtom_.reportChanged();break}k=g.next(),y=b.next()}t.data_=o}),this},t.toString=function(){return"[object ObservableMap]"},t.toJSON=function(){return Array.from(this)},t.observe_=function(e,t){return ls(this,e)},t.intercept_=function(e){return is(this,e)},Mo(e,[{key:"size",get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return"Map"}}])}(),Es=Co("ObservableMap",Ss);function Os(e){return e[Symbol.toStringTag]="MapIterator",lc(e)}var As={},Ps=function(){function e(e,t,n){var a=this;void 0===t&&(t=Xo),void 0===n&&(n="ObservableSet"),this.name_=void 0,this[Wo]=As,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,yo(Set)||oo(22),this.enhancer_=function(e,a){return t(e,a,n)},nc(function(){a.atom_=Jo(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;ns(function(){ii(function(){for(var t,n=$o(e.data_.values());!(t=n()).done;){var a=t.value;e.delete(a)}})})},t.forEach=function(e,t){for(var n,a=$o(this);!(n=a()).done;){var o=n.value;e.call(t,o,o,this)}},t.add=function(e){var t=this;if(this.atom_,rs(this)){var n=ss(this,{type:zs,object:this,newValue:e});if(!n)return this;e=n.newValue}if(!this.has(e)){ns(function(){t.data_.add(t.enhancer_(e,void 0)),t.atom_.reportChanged()});var a=cs(this),o=a?{observableKind:"set",debugObjectName:this.name_,type:zs,object:this,newValue:e}:null;a&&us(this,o)}return this},t.delete=function(e){var t=this;if(rs(this)&&!ss(this,{type:Cs,object:this,oldValue:e}))return!1;if(this.has(e)){var n=cs(this),a=n?{observableKind:"set",debugObjectName:this.name_,type:Cs,object:this,oldValue:e}:null;return ns(function(){t.atom_.reportChanged(),t.data_.delete(e)}),n&&us(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 Ts({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 Ts({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 Eo(e)&&!Ns(e)?e.intersection(this):new Set(this).intersection(e)},t.union=function(e){return Eo(e)&&!Ns(e)?e.union(this):new Set(this).union(e)},t.difference=function(e){return new Set(this).difference(e)},t.symmetricDifference=function(e){return Eo(e)&&!Ns(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 Eo(e)&&!Ns(e)?e.isDisjointFrom(this):new Set(this).isDisjointFrom(e)},t.replace=function(e){var t=this;return Ns(e)&&(e=new Set(e)),ns(function(){Array.isArray(e)||Eo(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):null!=e&&oo("Cannot initialize set from "+e)}),this},t.observe_=function(e,t){return ls(this,e)},t.intercept_=function(e){return is(this,e)},t.toJSON=function(){return Array.from(this)},t.toString=function(){return"[object ObservableSet]"},t[Symbol.iterator]=function(){return this.values()},Mo(e,[{key:"size",get:function(){return this.atom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return"Set"}}])}(),Ns=Co("ObservableSet",Ps);function Ts(e){return e[Symbol.toStringTag]="SetIterator",lc(e)}var Is=Object.create(null),Ls="remove",Ds=function(){function e(e,t,n,a){void 0===t&&(t=new Map),void 0===a&&(a=wr),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 Qo("ObservableObject.keys"),this.isPlainObject_=jo(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 Jr)return n.set(t),!0;if(rs(this)){var a=ss(this,{type:ms,object:this.proxy_||this.target_,name:e,newValue:t});if(!a)return null;t=a.newValue}if((t=n.prepareNewValue_(t))!==fi.UNCHANGED){var o=cs(this),r=o?{type:ms,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,oldValue:n.value_,name:e,newValue:t}:null;n.setNewValue_(t),o&&us(this,r)}return!0},t.get_=function(e){return fi.trackingDerivation&&!No(this.target_,e)&&this.has_(e),this.target_[e]},t.set_=function(e,t,n){return void 0===n&&(n=!1),No(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(!fi.trackingDerivation)return e in this.target_;this.pendingKeys_||(this.pendingKeys_=new Map);var t=this.pendingKeys_.get(e);return t||(t=new Yr(e in this.target_,er,"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_[Ho])&&n[e])return;oo(1,t.annotationType_,this.name_+"."+e.toString())}for(var a=this.target_;a&&a!==uo;){var o=co(a,e);if(o){var r=t.make_(this,e,o,a);if(0===r)return;if(1===r)break}a=Object.getPrototypeOf(a)}Us(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&&Us(this,0,e),o},t.defineProperty_=function(e,t,n){void 0===n&&(n=!1),this.keysAtom_;try{yi();var a=this.delete_(e);if(!a)return a;if(rs(this)){var o=ss(this,{object:this.proxy_||this.target_,name:e,type:zs,newValue:t.value});if(!o)return null;var r=o.newValue;t.value!==r&&(t=Bo({},t,{value:r}))}if(n){if(!Reflect.defineProperty(this.target_,e,t))return!1}else lo(this.target_,e,t);this.notifyPropertyAddition_(e,t.value)}finally{vi()}return!0},t.defineObservableProperty_=function(e,t,n,a){void 0===a&&(a=!1),this.keysAtom_;try{yi();var o=this.delete_(e);if(!o)return o;if(rs(this)){var r=ss(this,{object:this.proxy_||this.target_,name:e,type:zs,newValue:t});if(!r)return null;t=r.newValue}var i=$s(e),s={configurable:!fi.safeDescriptors||this.isPlainObject_,enumerable:!0,get:i.get,set:i.set};if(a){if(!Reflect.defineProperty(this.target_,e,s))return!1}else lo(this.target_,e,s);var c=new Yr(t,n,"ObservableObject.key",!1);this.values_.set(e,c),this.notifyPropertyAddition_(e,c.value_)}finally{vi()}return!0},t.defineComputedProperty_=function(e,t,n){void 0===n&&(n=!1),this.keysAtom_;try{yi();var a=this.delete_(e);if(!a)return a;if(rs(this)&&!ss(this,{object:this.proxy_||this.target_,name:e,type:zs,newValue:void 0}))return null;t.name||(t.name="ObservableObject.key"),t.context=this.proxy_||this.target_;var o=$s(e),r={configurable:!fi.safeDescriptors||this.isPlainObject_,enumerable:!1,get:o.get,set:o.set};if(n){if(!Reflect.defineProperty(this.target_,e,r))return!1}else lo(this.target_,e,r);this.values_.set(e,new Jr(t)),this.notifyPropertyAddition_(e,void 0)}finally{vi()}return!0},t.delete_=function(e,t){if(void 0===t&&(t=!1),this.keysAtom_,!No(this.target_,e))return!0;if(rs(this)&&!ss(this,{object:this.proxy_||this.target_,name:e,type:Ls}))return null;try{var n;yi();var a,o=cs(this),r=this.values_.get(e),i=void 0;if(!r&&o&&(i=null==(a=co(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 Yr&&(i=r.value_),ji(r)),this.keysAtom_.reportChanged(),null==(n=this.pendingKeys_)||null==(n=n.get(e))||n.set(e in this.target_),o){var s={type:Ls,observableKind:"object",object:this.proxy_||this.target_,debugObjectName:this.name_,oldValue:i,name:e};o&&us(this,s)}}finally{vi()}return!0},t.observe_=function(e,t){return ls(this,e)},t.intercept_=function(e){return is(this,e)},t.notifyPropertyAddition_=function(e,t){var n,a=cs(this);if(a){var o=a?{type:zs,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,name:e,newValue:t}:null;a&&us(this,o)}null==(n=this.pendingKeys_)||null==(n=n.get(e))||n.set(!0),this.keysAtom_.reportChanged()},t.ownKeys_=function(){return this.keysAtom_.reportObserved(),Ao(this.target_)},t.keys_=function(){return this.keysAtom_.reportObserved(),Object.keys(this.target_)},e}();function Rs(e,t){var n;if(No(e,Wo))return e;var a=null!=(n=null==t?void 0:t.name)?n:"ObservableObject",o=new Ds(e,new Map,String(a),function(e){var t;return e?null!=(t=e.defaultDecorator)?t:jr(e):void 0}(t));return xo(e,Wo,o),e}var Ms=Co("ObservableObjectAdministration",Ds);function $s(e){return Is[e]||(Is[e]={get:function(){return this[Wo].getObservablePropValue_(e)},set:function(t){return this[Wo].setObservablePropValue_(e,t)}})}function Bs(e){return!!wo(e)&&Ms(e[Wo])}function Us(e,t,n){var a;null==(a=e.target_[Ho])||delete a[n]}var Vs,Fs,Hs=Qs(0),Ks=function(){var e=!1,t={};return Object.defineProperty(t,"0",{set:function(){e=!0}}),Object.create(t)[0]=1,!1===e}(),qs=0,Gs=function(){};Vs=Gs,Fs=Array.prototype,Object.setPrototypeOf?Object.setPrototypeOf(Vs.prototype,Fs):void 0!==Vs.prototype.__proto__?Vs.prototype.__proto__=Fs:Vs.prototype=Fs;var Ws=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,nc(function(){var e=new fs(a,n,o,!0);e.proxy_=r,zo(r,Wo,e),t&&t.length&&r.spliceWithArray(0,0,t),Ks&&Object.defineProperty(r,"0",Hs)}),r}Uo(t,e);var n=t.prototype;return n.concat=function(){this[Wo].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 _s(e)?e.slice():e}))},n[Symbol.iterator]=function(){var e=this,t=0;return lc({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},Mo(t,[{key:"length",get:function(){return this[Wo].getArrayLength_()},set:function(e){this[Wo].setArrayLength_(e)}},{key:Symbol.toStringTag,get:function(){return"Array"}}])}(Gs);function Qs(e){return{enumerable:!1,configurable:!0,get:function(){return this[Wo].get_(e)},set:function(t){this[Wo].set_(e,t)}}}function Ys(e){lo(Ws.prototype,""+e,Qs(e))}function Js(e){if(e>qs){for(var t=qs;t<e+100;t++)Ys(t);qs=e}}function Zs(e,t,n){return new Ws(e,t,n)}function Xs(e,t){if("object"==typeof e&&null!==e){if(_s(e))return void 0!==t&&oo(23),e[Wo].atom_;if(Ns(e))return e.atom_;if(Es(e)){if(void 0===t)return e.keysAtom_;var n=e.data_.get(t)||e.hasMap_.get(t);return n||oo(25,t,tc(e)),n}if(Bs(e)){if(!t)return oo(26);var a=e[Wo].values_.get(t);return a||oo(27,t,tc(e)),a}if(Yo(e)||ei(e)||Ei(e))return e}else if(yo(e)&&Ei(e[Wo]))return e[Wo];oo(28)}function ec(e,t){return e||oo(29),void 0!==t?ec(Xs(e,t)):Yo(e)||ei(e)||Ei(e)||Es(e)||Ns(e)?e:e[Wo]?e[Wo]:void oo(24,e)}function tc(e,t){var n;if(void 0!==t)n=Xs(e,t);else{if($i(e))return e.name;n=Bs(e)||Es(e)||Ns(e)?ec(e):Xs(e)}return n.name_}function nc(e){var t=si(),n=Wr(!0);yi();try{return e()}finally{vi(),Qr(n),ci(t)}}Object.entries(bs).forEach(function(e){var t=e[0],n=e[1];"concat"!==t&&xo(Ws.prototype,t,n)}),Js(1e3);var ac,oc=uo.toString;function rc(e,t,n){return void 0===n&&(n=-1),ic(e,t,n)}function ic(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=oc.call(e);if(i!==oc.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=sc(e),t=sc(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&&!(yo(c)&&c instanceof c&&yo(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(!ic(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(!No(t,h)||!ic(e[h],t[h],n-1,a,o))return!1}}return a.pop(),o.pop(),!0}function sc(e){return _s(e)?e.slice():So(e)||Es(e)||Eo(e)||Ns(e)?Array.from(e.entries()):e}var cc=(null==(ac=io().Iterator)?void 0:ac.prototype)||{};function lc(e){return e[Symbol.iterator]=uc,Object.assign(Object.create(cc),e)}function uc(){return this}["Symbol","Map","Set"].forEach(function(e){void 0===io()[e]&&oo("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:tc},$mobx:Wo});const pc={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 dc(e){return pc[e]||1}function mc(e,t){return e.toLocaleString(ft(),{style:"currency",currency:t,currencyDisplay:"narrowSymbol",minimumFractionDigits:0})}const hc=new class{displayPrices=null;areDisplayPricesLoading=!1;constructor(){this.setDisplayPrices=this.setDisplayPrices.bind(this),this.getListingDirectoPrice=this.getListingDirectoPrice.bind(this),ps(this,{displayPrices:Rr,areDisplayPricesLoading:Rr,setDisplayPrices:Di,getListingDirectoPrice:Di})}setDisplayPrices(e){this.displayPrices=e}async getListingDirectoPrice(e,t){try{const{checkin:n,checkout:a,...o}=await Fu(window.location.href),r=Mu.get();if(!r||r&&!await r.canMakePricingRequest())return null;Mi(()=>{hc.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 k().get("/shop",{params:e,parser:new u})}(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/dc(t),i=n/dc(a),s=dc(o);return{price1:r*s,price2:i*s,currency:o}}(e.otaTotalPrice,e.otaCurrency,t,e.directoCurrency,e.displayCurrency),o=da(n),r=da(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 $u(),displayCurrency:i.currency||"USD"}):null;return hc.setDisplayPrices(l),{displayPrices:l,priceFromShop:s,shopEndpointResponseTimeMs:c,pricingParams:i}}catch(e){throw hc.setDisplayPrices(null),e}finally{Mi(()=>{hc.areDisplayPricesLoading=!1})}}};var fc=n(155);const gc=({width:e="29",height:t="31",viewBox:n="0 0 29 31",fill:a="none",style:o={}})=>(0,no.jsxs)("svg",{width:e,height:t,viewBox:n,style:o,fill:a,xmlns:"http://www.w3.org/2000/svg",children:[(0,no.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,no.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,no.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,no.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"})]}),bc=({})=>(0,no.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,no.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,no.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,no.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,no.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"})]}),kc=({})=>(0,no.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,no.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,no.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,no.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,no.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"})]}),yc=({className:e,style:t})=>(0,no.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,no.jsxs)("g",{clipPath:"url(#clip0_38_1686)",children:[(0,no.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,no.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,no.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,no.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,no.jsx)("defs",{children:(0,no.jsx)("clipPath",{id:"clip0_38_1686",children:(0,no.jsx)("rect",{width:"32",height:"32",fill:"white"})})})]}),vc=({style:e})=>(0,no.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:e,children:(0,no.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"})}),wc=({className:e=""})=>(0,no.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:e,children:(0,no.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"})}),jc=({className:e="",style:t={}})=>(0,no.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,no.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,no.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,no.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,no.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,no.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"})]}),_c=({style:e})=>(0,no.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,no.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"})}),xc=({style:e})=>(0,no.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,no.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"})}),zc=({style:e})=>(0,no.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,no.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 Cc(e){var t=this.__data__=new ce(e);this.size=t.size}Cc.prototype.clear=function(){this.__data__=new ce,this.size=0},Cc.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Cc.prototype.get=function(e){return this.__data__.get(e)},Cc.prototype.has=function(e){return this.__data__.has(e)},Cc.prototype.set=function(e,t){var n=this.__data__;if(n instanceof ce){var a=n.__data__;if(!le||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new de(a)}return n.set(e,t),this.size=n.size,this};const Sc=Cc;function Ec(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new de;++t<n;)this.add(e[t])}Ec.prototype.add=Ec.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Ec.prototype.has=function(e){return this.__data__.has(e)};const Oc=Ec,Ac=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},Pc=function(e,t){return e.has(t)},Nc=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 Oc: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(!Ac(t,function(e,t){if(!Pc(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},Tc=x.Uint8Array,Ic=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e,a){n[++t]=[a,e]}),n},Lc=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n};var Dc=z?z.prototype:void 0,Rc=Dc?Dc.valueOf:void 0;var Mc=Object.prototype.propertyIsEnumerable,$c=Object.getOwnPropertySymbols;const Bc=$c?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}($c(e),function(t){return Mc.call(e,t)}))}:function(){return[]},Uc=function(e){return function(e,t,n){var a=t(e);return w(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,it,Bc)};var Vc=Object.prototype.hasOwnProperty;var Fc="[object Arguments]",Hc="[object Array]",Kc="[object Object]",qc=Object.prototype.hasOwnProperty;const Gc=function(e,t,n,a,o,r){var i=w(e),s=w(t),c=i?Hc:Pt(e),l=s?Hc:Pt(t),u=(c=c==Fc?Kc:c)==Kc,p=(l=l==Fc?Kc:l)==Kc,d=c==l;if(d&&$e(e)){if(!$e(t))return!1;i=!0,u=!1}if(d&&!u)return r||(r=new Sc),i||Ye(e)?Nc(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 Tc(e),new Tc(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return oe(+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=Ic;case"[object Set]":var c=1&a;if(s||(s=Lc),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=Nc(s(e),s(t),a,o,r,i);return i.delete(e),u;case"[object Symbol]":if(Rc)return Rc.call(e)==Rc.call(t)}return!1}(e,t,c,n,a,o,r);if(!(1&n)){var m=u&&qc.call(e,"__wrapped__"),h=p&&qc.call(t,"__wrapped__");if(m||h){var f=m?e.value():e,g=h?t.value():t;return r||(r=new Sc),o(f,g,n,a,r)}}return!!d&&(r||(r=new Sc),function(e,t,n,a,o,r){var i=1&n,s=Uc(e),c=s.length;if(c!=Uc(t).length&&!i)return!1;for(var l=c;l--;){var u=s[l];if(!(i?u in t:Vc.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 b=i?a(g,f,u,t,e,r):a(f,g,u,e,t,r);if(!(void 0===b?f===g||o(f,g,n,a,r):b)){m=!1;break}h||(h="constructor"==u)}if(m&&!h){var k=e.constructor,y=t.constructor;k==y||!("constructor"in e)||!("constructor"in t)||"function"==typeof k&&k instanceof k&&"function"==typeof y&&y instanceof y||(m=!1)}return r.delete(e),r.delete(t),m}(e,t,n,a,o,r))},Wc=function e(t,n,a,o,r){return t===n||(null==t||null==n||!T(t)&&!T(n)?t!=t&&n!=n:Gc(t,n,a,o,e,r))},Qc=function(e){return e==e&&!M(e)},Yc=function(e,t){return function(n){return null!=n&&n[e]===t&&(void 0!==t||e in Object(n))}},Jc=function(e){var t=function(e){for(var t=it(e),n=t.length;n--;){var a=t[n],o=e[a];t[n]=[a,o,Qc(o)]}return t}(e);return 1==t.length&&t[0][2]?Yc(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 Sc;if(a)var d=a(l,u,c,e,t,p);if(!(void 0===d?Wc(u,l,3,a,p):d))return!1}}return!0}(n,e,t)}},Zc=function(e,t){return null!=e&&t in Object(e)},Xc=function(e,t){return null!=e&&function(e,t,n){for(var a=-1,o=(t=ze(t,e)).length,r=!1;++a<o;){var i=Ce(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)&&Ue(i,o)&&(w(e)||Le(e))}(e,t,Zc)},el=function(e){return R(e)?(t=Ce(e),function(e){return null==e?void 0:e[t]}):function(e){return function(t){return Se(t,e)}}(e);var t},tl=function(e){return"function"==typeof e?e:null==e?ut:"object"==typeof e?w(e)?(t=e[0],n=e[1],R(t)&&Qc(n)?Yc(Ce(t),n):function(e){var a=Ee(e,t);return void 0===a&&a===n?Xc(e,t):Wc(n,a,3)}):Jc(e):el(e);var t,n},nl=function(e,t){if(e!==t){var n=void 0!==e,a=null===e,o=e==e,r=I(e),i=void 0!==t,s=null===t,c=t==t,l=I(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},al=function(e,t,n){t=t.length?ve(t,function(e){return w(e)?function(t){return Se(t,1===e.length?e[0]:e)}:e}):[ut];var a=-1;t=ve(t,He(tl));var o=function(e,t){var n=-1,a=rt(e)?Array(e.length):[];return ct(e,function(e,o,r){a[++n]=t(e,o,r)}),a}(e,function(e,n,o){return{criteria:ve(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=nl(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(!fc.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!ps)throw new Error("mobx-react-lite@3 requires mobx at least version 6 to be available");var ol=n(316);function rl(e){e()}function il(e){return Gi(Xs(e,t));var t}var sl,cl,ll=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}(),ul=new("undefined"!=typeof FinalizationRegistry?FinalizationRegistry:ll)(function(e){var t;null===(t=e.reaction)||void 0===t||t.dispose(),e.reaction=null}),pl=n(98);function dl(e){e.reaction=new _i("observer".concat(e.name),function(){var t;e.stateVersion=Symbol(),null===(t=e.onStoreChange)||void 0===t||t.call(e)})}var ml="function"==typeof Symbol&&Symbol.for,hl=null!==(cl=null===(sl=Object.getOwnPropertyDescriptor(function(){},"name"))||void 0===sl?void 0:sl.configurable)&&void 0!==cl&&cl,fl=ml?Symbol.for("react.forward_ref"):"function"==typeof fc.forwardRef&&(0,fc.forwardRef)(function(e){return null}).$$typeof,gl=ml?Symbol.for("react.memo"):"function"==typeof fc.memo&&(0,fc.memo)(function(e){return null}).$$typeof;function bl(e,t){var n;if(gl&&e.$$typeof===gl)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(fl&&e.$$typeof===fl&&(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=fc.useRef(null);if(!n.current){var a={reaction:null,onStoreChange:null,stateVersion:Symbol(),name:t,subscribe:function(e){return ul.unregister(a),a.onStoreChange=e,a.reaction||(dl(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||(dl(i),ul.register(n,i,i)),fc.useDebugValue(i.reaction,il),(0,pl.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,hl&&Object.defineProperty(c,"name",{value:e.name,writable:!0,configurable:!0}),e.contextTypes&&(c.contextTypes=e.contextTypes),a&&(c=(0,fc.forwardRef)(c)),c=(0,fc.memo)(c),i=e,s=c,Object.keys(i).forEach(function(e){kl[e]||Object.defineProperty(s,e,Object.getOwnPropertyDescriptor(i,e))}),c}var kl={$$typeof:!0,render:!0,compare:!0,type:!0,displayName:!0};function yl(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}!function(e){e||(e=rl),qi({reactionScheduler:e})}(ol.unstable_batchedUpdates),ul.finalizeAllImmediately;var vl=Symbol("patchMixins"),wl=Symbol("patchedDefinition");function jl(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 _l(e,t){return function(){for(var n=arguments.length,a=new Array(n),o=0;o<n;o++)a[o]=arguments[o];jl.call.apply(jl,[this,e,t].concat(a))}}function xl(e,t,n){var a=function(e,t){var n=e[vl]=e[vl]||{},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[wl]){var r=e[t],i=zl(e,t,o?o.enumerable:void 0,a,r);Object.defineProperty(e,t,i)}}function zl(e,t,n,a,o){var r,i=_l(o,a);return(r={})[wl]=!0,r.get=function(){return i},r.set=function(o){if(this===e)i=_l(o,a);else{var r=zl(this,t,n,a,o);Object.defineProperty(this,t,r)}},r.configurable=!0,r.enumerable=n,r}var Cl=Symbol("ObserverAdministration"),Sl=Symbol("isMobXReactObserver");function El(e){var t;return null!=(t=e[Cl])?t:e[Cl]={reaction:null,mounted:!1,reactionInvalidatedBeforeMount:!1,forceUpdate:null,name:Ol(e.constructor),state:void 0,props:void 0,context:void 0}}function Ol(e){return e.displayName||e.name||"<component>"}function Al(e){var t=e.bind(this),n=El(this);return function(){n.reaction||(n.reaction=function(e){return new _i(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||ul.register(this,n,this));var e=void 0,a=void 0;if(n.reaction.track(function(){try{a=function(e,t){var n=Wr(e);try{return t()}finally{Qr(n)}}(!1,t)}catch(t){e=t}}),e)throw e;return a}}function Pl(e,t){return this.state!==t||!function(e,t){if(yl(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])||!yl(e[n[o]],t[n[o]]))return!1;return!0}(this.props,e)}function Nl(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(fc.Component,e)||Object.prototype.isPrototypeOf.call(fc.PureComponent,e)?function(e){var t=e.prototype;if(e[Sl]){var n=Ol(e);throw new Error("The provided component class ("+n+") has already been declared as an observer component.")}if(e[Sl]=!0,t.componentWillReact)throw new Error("The componentWillReact life-cycle event is no longer supported");if(e.__proto__!==fc.PureComponent)if(t.shouldComponentUpdate){if(t.shouldComponentUpdate!==Pl)throw new Error("It is not allowed to use shouldComponentUpdate in observer based components.")}else t.shouldComponentUpdate=Pl;var a=t.render;if("function"!=typeof a){var o=Ol(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:Al.call(this,a)}),this.render()};var r=t.componentDidMount;return t.componentDidMount=function(){var e=this,t=El(this);return t.mounted=!0,ul.unregister(this),t.forceUpdate=function(){return e.forceUpdate()},t.reaction&&!t.reactionInvalidatedBeforeMount||t.forceUpdate(),null==r?void 0:r.apply(this,arguments)},xl(t,"componentWillUnmount",function(){var e,t=El(this);null==(e=t.reaction)||e.dispose(),t.reaction=null,t.forceUpdate=null,t.mounted=!1,t.reactionInvalidatedBeforeMount=!1}),e}(e):bl(e)}if(fc.version.split(".")[0],!fc.Component)throw new Error("mobx-react requires React to be available");if(!Rr)throw new Error("mobx-react requires mobx to be available");const Tl=({icon:e,text:t,check:n})=>(0,no.jsxs)("div",{className:"popover__bullet-point "+(n?"":"popover__bullet-text-disabled"),children:[e,(0,no.jsx)("span",{className:"popover__bullet-text",children:t}),n&&(0,no.jsx)("span",{className:"popover__bullet-check",children:"✓"})]}),Il=Nl(({item:e})=>{const{displayPrices:t}=hc,n=!!e.discount||!!t?.thereIsDiscount,a=!!e.coupon,o=e.score&&e.score>50?Math.ceil((e.score||0)/10):0,r=[{icon:(0,no.jsx)(xc,{style:{height:16,width:16}}),text:hn("secondary_cta.popover.support_hotel"),check:!0},{icon:(0,no.jsx)(zc,{style:{height:16,width:16}}),text:hn("secondary_cta.popover.coupon.text_checked"),check:a,hide:!a},{icon:(0,no.jsx)(_c,{style:{height:16,width:16}}),text:n?hn("secondary_cta.popover.discount.text_checked",{discount:e.discount}):hn("secondary_cta.popover.discount.text_unchecked"),check:n},{icon:(0,no.jsx)(vc,{style:{height:16,width:16}}),text:o?hn("secondary_cta.popover.feedback.text_checked",{positiveFeedback:o}):hn("secondary_cta.popover.feedback.text_unchecked"),check:!!o}];return(0,no.jsx)("div",{className:"popover__bullet-points",children:(i=r,s="check",c="desc",null==i?[]:(w(s)||(s=null==s?[]:[s]),w(c=l?void 0:c)||(c=null==c?[]:[c]),al(i,s,c))).map((e,t)=>!e.hide&&(0,no.jsx)(Tl,{...e},t))});var i,s,c,l}),Ll=({domainName:e,item:t})=>(0,no.jsxs)("div",{className:"popover__content",children:[(0,no.jsxs)("div",{className:"popover__header",children:[(0,no.jsxs)("div",{className:"popover__header-text",children:[hn("secondary_cta.popover.header.text")," ",(0,no.jsx)(yc,{className:"popover__directo-logo",style:{width:"20px",height:"20px",marginLeft:"2px",visibility:"visible",opacity:1}}),"irecto"]}),(0,no.jsx)("div",{className:"popover__domain",children:(0,no.jsx)("span",{className:"popover__domain-text",children:e})})]}),(0,no.jsx)(Il,{item:t})]}),Dl=Date.now(),Rl=function(){let e="";let t=0;for(;t<14;)e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random())),t+=1;return e}();async function Ml(){const{hostname:e}=new URL(window.location.href);return{engagement_time_msec:""+(Date.now()-Dl),session_id:Rl,user_id_dimension:await la(),platform:(Pn(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 $l(){return{user_id:await la(),client_id:"GTM-PQTC3VG"}}async function Bl(e){return{events:e,...await $l()}}async function Ul(e,t={}){return{name:e,params:{...await Ml(),...t}}}function Vl(e){if(e.status>=200&&e.status<300)return e;throw new Error(e.statusText)}function Fl(e,t){const n=function(e,t){const n=new URL(`https://www.google-analytics.com${e}`);return Object.keys(t).forEach(e=>{const a=t[e];if(Array.isArray(a)&&a.length)return a.forEach(t=>n.searchParams.append(e,t));n.searchParams.append(e,a)}),n}(e,{api_secret:"GE9ObhGLSdmUus1uyoSEaw",measurement_id:"G-KXK74ZXW09"});return fetch(n.toString(),{body:JSON.stringify(t),method:"POST"}).then(Vl).catch(console.error)}const Hl=(e="/mp/collect")=>({async pageView(t,n={}){const a=await Ul("page_view",{page_location:t,...n}),o=await Bl([a]);return Fl(e,o)},async event(t,n={}){const a=await Ul(t,n),o=await Bl([a]);return Fl(e,o)},async exception(t={}){const n=await Ul("exception",t),a=await Bl([n]);return Fl(e,a)}}),Kl=Hl(),ql=Nl(({item:e,cta:t})=>{const{displayPrices:n,areDisplayPricesLoading:a}=hc,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?hn("secondary_cta.save",{price:mc(n.displayedPriceDifference,n.displayedCurrency)}):function(e){const t=e.directo_url?pn(e.directo_url):"";return e.discount?"reservation.barcelo.com"===t?hn("secondary_cta.book_with_discount_barcelo"):hn("secondary_cta.book_with_discount",{discount:e.discount}):hn("secondary_cta.compare_price")}(e),i=o||e.discount;return(0,no.jsxs)("button",{onClick:n=>{const a=Ya(e.directo_url);Kl.event("click_out_ext_secondary",{outbound_url:a}),Ku.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,no.jsx)(kc,{}):(0,no.jsx)(bc,{}),r,(0,no.jsx)(wc,{})]})}),Gl=async(e,t)=>{const n=e.directo_url?pn(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,ao.H)(i).render((0,no.jsxs)("div",{className:"popover","data-direction":"top",children:[(0,no.jsx)("div",{className:"popover__trigger",children:(0,no.jsx)(ql,{item:e,cta:t})}),(0,no.jsx)(Ll,{domainName:n,item:e})]})),Object.assign(a,{$reactRoot:i})};var Wl=n(395);const Ql=({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=da(t.totalPrice)-o;return(0,no.jsxs)("div",{className:"popover__content",children:[(0,no.jsxs)("div",{className:"popover__header",children:[(0,no.jsxs)("div",{className:"popover__header-text",children:[hn(n&&a?"alternative_offers.best_offer":"alternative_offers.popover.header.text")," ",(0,no.jsx)("img",{className:"popover__directo-logo",style:{marginLeft:"6px",visibility:"visible",opacity:1,transform:"scale(1.2) translateY(4px)"},src:e.provider.logoUrl})]}),(0,no.jsx)("div",{className:"popover__domain",children:(0,no.jsx)("span",{className:"popover__domain-text",children:e.provider.name})})]}),(0,no.jsx)("span",{style:{color:a?"green":"auto",fontSize:a?"20px":"16px"},children:a?hn("alternative_offers.save",{price:mc(Math.round(i),r)}):hn("alternative_offers.no_discount",{provider:e.provider.name})})]})},Yl="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==",Jl=({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,no.jsxs)("button",{onClick:async()=>{v.openOutclickTab({cta:r,sourceUrl:window.location.href,targetUrl:e.url,sourceId:e.source_id??Bu(),stayParams:await Fu(window.location.href)})},className:"directo-cta-button-light "+(t?"directo-cta-button-light-shadow-pulse":""),children:[t&&(0,no.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,no.jsx)("img",{src:Yl,alt:"Directo",style:{width:"40px",height:"40px"}})}),(0,no.jsx)("img",{src:e.provider.logoUrl}),(0,no.jsx)("span",{style:{fontSize:"20px"},children:mc(Math.floor(a),o)}),(0,no.jsx)(wc,{})]})};class Zl{renderedLabels={};renderedSecondaryCTAs={};renderedAlternativeOffers={};debouncedRenderMLs=null;platform=null;displayName=null}class Xl extends Zl{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=pn(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 Gl(e,n);return s.appendChild(c),this.setRenderedSecondaryCTA(r,c),c}async insertAlternativeOffers(e,t){if(!1===this.rendererConfig.renderAlternativeOffers)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,ao.H)(i).render((0,no.jsx)("div",{className:Wl("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,no.jsxs)("div",{className:"popover","data-direction":"top",children:[(0,no.jsx)("div",{className:"popover__trigger",children:(0,no.jsx)(Jl,{offer:e,bestOffer:i,ctaPrefix:n.ctaPrefix})}),(0,no.jsx)(Ql,{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($(a)?await a():Rt(n.searchParams.get(a)))||null}static getSection(e){throw new Error("Method not implemented.")}}const eu=function(){return x.Date.now()};var tu=/\s/;var nu=/^\s+/;const au=function(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&tu.test(e.charAt(t)););return t}(e)+1).replace(nu,""):e};var ou=/^[-+]0x[0-9a-f]+$/i,ru=/^0b[01]+$/i,iu=/^0o[0-7]+$/i,su=parseInt;const cu=function(e){if("number"==typeof e)return e;if(I(e))return NaN;if(M(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=M(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=au(e);var n=ru.test(e);return n||iu.test(e)?su(e.slice(2),n?2:8):ou.test(e)?NaN:+e};var lu=Math.max,uu=Math.min;const pu=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=eu();if(h(e))return g(e);s=setTimeout(f,function(e){var n=t-(e-c);return p?uu(n,r-(e-l)):n}(e))}function g(e){return s=void 0,d&&a?m(e):(a=o=void 0,i)}function b(){var e=eu(),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=cu(t)||0,M(n)&&(u=!!n.leading,r=(p="maxWait"in n)?lu(cu(n.maxWait)||0,t):r,d="trailing"in n?!!n.trailing:d),b.cancel=function(){void 0!==s&&clearTimeout(s),l=0,a=c=o=s=void 0},b.flush=function(){return void 0===s?i:g(eu())},b},du=Hl(),mu=()=>(0,no.jsx)("div",{className:"dr-floating-directo dr-direct",children:(0,no.jsx)("span",{style:{position:"relative",zIndex:10},children:(0,no.jsx)(gc,{})})});class hu extends fc.Component{box=fc.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=Ya(e);du.event("click_out_ml",{outbound_url:n}),Ku.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,no.jsx)("div",{className:"dr-floating-score-icon",children:t}):null}getFloatingLabel(){return this.item.coupon?(0,no.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,no.jsx)(jc,{})}):this.item.discount?(0,no.jsx)("div",{className:"dr-floating-coupon-icon",children:(0,no.jsx)("img",{src:Yl,alt:"Directo",className:"dr-h-7 dr-w-7"})}):this.getThumbs()}getTooltipText(){const{score:e,discount:t,coupon:n}=this.item;return hn(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"===Pn(window.location.href);return(0,no.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,no.jsx)("span",{className:"dr-floating-container-before",style:{boxShadow:`${"booking"===this.platform?"-10px":"10px"} 10px 0 ${this.backgroundColor}`}}),(0,no.jsx)(mu,{},this.item.source_id),(0,no.jsx)("div",{className:"dr-floating-label-popover",children:this.getTooltipText()}),!e&&(0,no.jsx)("span",{className:"dr-floating-container-after",style:{boxShadow:`${"booking"===this.platform?"-10px":"10px"} 10px 0 ${this.backgroundColor}`}})]})}}const fu=function(e,t,n="white",a=!1){const o=Pn(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,ao.H)(c).render((0,no.jsx)(hu,{item:e,backgroundColor:n,platform:o})),r};function gu(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 bu extends Xl{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=this.getLabelPlacement(n),o=fu(t,a);this.renderedLabels[e]||(this.renderedLabels[e]=o,this.appendLabel(n,o),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,left:n}=function(e){const t=e.parentElement?.parentElement;if(!t)return console.warn("Parent element not found."),{left:0,top:0};const n=Ut(["picture img"],t);return n?{left:n.width-39-11,top:n.height-54}:(console.warn("Picture element not found."),{left:0,top:0})}(e);return{position:"absolute",top:`${t}px`,left:`${n}px`,zIndex:"200",borderTopLeftRadius:"25px"}}appendLabel(e,t){if(!1===this.rendererConfig.renderLabels)return;const n=to(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=Ee(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:Ee(o,"textContent")}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=pu(e,2e3,{trailing:!0})),setTimeout(async()=>{const e=await Dt(Ut,e=>!e)(["[itemprop=itemListElement]"]);new MutationObserver(e=>{for(const t of e)!gu(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;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),o=Ee(a,"textContent",""),r=await this.buildQueryParams("currency"),i=ma(o.replace(/[^0-9.]/g,""));return null===i?t:{priceString:o,currency:r,priceStringIsNightly:!0,nightlyPrice:i,totalPrice: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(Ut,e=>!e)(['[data-section-id="BOOK_IT_SIDEBAR"] [aria-hidden="false"]','[data-section-id="BOOK_IT_SIDEBAR"] [for="51"] ._1vk118j']);t&&(e=t.textContent||"");const n=e.replace(/\n/gm,""),a=await this.buildQueryParams("currency"),o=ma(n.replace(/[^0-9.]/g,""))||0;return{priceString:n,currency:a,priceStringIsNightly:!1,totalPrice:o,nightlyPrice:o/await this.getLoS()}}getItemId(e){return(Nn.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")||new Date(Date.now()+8641e4).toISOString().split("T")[0],checkout:()=>e.searchParams.get("check_out")||e.searchParams.get("checkout")||new Date(Date.now()+16641e4).toISOString().split("T")[0],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(()=>Vt(['footer .dir-ltr [type="button"] span']),e=>!e,8)(),n=(r=null==(o=t)?0:o.length)?o[r-1]:void 0,a=Ee(n,"textContent","EUR")?.replace(/\n/gm,"");var o,r;return a??null}}}static getSection(e){const t=e.href;return Tn.test(t)?"LIST":Nn.test(t)?"DETAIL":In.test(t)?"CHECKOUT":"UNKNOWN"}cleanRenderedSecondaryCTA(e,t){e.remove(),delete this.renderedSecondaryCTAs[t]}}function ku(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 yu extends Xl{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 aa(e)}isDetailView(){return![null,"searchresults"].includes(this.getItemId())}getListingsInPage(){if(this.isMapOpen())return[];const e=Vt(['[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 na((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=Vt(['[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&&na(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){const n=`${e[0].source_id}-list`;this.cleanRenderedSecondaryCTAs(n),await this.insertAlternativeOffers(e,{id:n,vertical:!0,container:t,styles:vu,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:wu,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=fu(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=pu(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=Ee(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:Ee(o,"value")}}async setMLRenderer(e){this.debouncedRenderMLs||(this.debouncedRenderMLs=pu(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)!ku(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=ma(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 yu.getItemId(e)}async getItemIdOnOTACheckout(){try{const e=Ut(['[data-testid="booking-details-date-summary"]'])?.parentElement,t=e?.querySelector("a"),n=t?.getAttribute("href");return n?this.getItemId(n):null}catch(e){return console.error(e),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 pt(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,xu[yu.getSection(e)]("checkin"))||Qt.fromDate(Yt(new Date,1)).toDashYYYYMMDD()},checkout:async()=>{const t=e.searchParams.get("checkout");if(t)return t;const n=await this.getEmbeddedValue(e,xu[yu.getSection(e)]("checkout"));if(n)return n;return function(e,t){if(!e||!t)return null;const n=Qt.tryFromDashYYYYMMDD(e);if(!n)return null;const a=parseInt(t,10);if(Number.isNaN(a)||a<0)return null;const o=Yt(n.unsafe_toDate(),a);return Qt.fromDate(o).toDashYYYYMMDD()}(e.searchParams.get("checkin"),e.searchParams.get("interval"))||Qt.fromDate(Yt(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=Ee(e,"textContent","EUR")?.replace(/\n/gm,"");return t??null}}}static getSection(e){const t=e.href;return Dn.test(t)?"LIST":Ln.test(t)?"DETAIL":Rn.test(t)?"CHECKOUT":Mn.test(t)?"CONFIRMATION":"UNKNOWN"}async getEmbeddedInfoJson(e){if(null!==this.embeddedInfoCache)return this.embeddedInfoCache;const t=ju[yu.getSection(e)];if(!t)return null;const n=await qt([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 vu="\n.offers-container {\n margin-top: 20px;\n}\n",wu="\n.offers-container {\n margin-top: 10px;\n}\n",ju={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},_u=()=>()=>null,xu={LIST:function(e){return t=>{const n=$t(t.ROOT_QUERY);if(!n)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)return null;const i=$t(r.searchMeta);if(!i)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=>{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)return null;const r=$t(o.propertyFullExtended);if(!r)return null;const i=$t(r.searchBoxPrefillData);if(!i)return null;const s=$t(i.dates);if(!s)return null;const c=s[e];return"string"!=typeof c?null:c}},CHECKOUT:_u,CONFIRMATION:_u,UNKNOWN:_u},zu=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},Cu=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 Su extends Xl{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=w(e)?zu:Cu,o=arguments.length<3;return a(e,tl(t),n,o,ct)}(Vt(['[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=Vt(['[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=fu(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=pu(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=to(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=Ee(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=pu(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=ma(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")||new Date(Date.now()+8641e4).toISOString().split("T")[0],checkout:()=>e.searchParams.get("endDate")||e.searchParams.get("chkout")||new Date(Date.now()+16641e4).toISOString().split("T")[0],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(){const e=window.APOLLO_STATE;if(!e)return null;const t=$t(e);if(!t)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)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 Bn.test(t)?"LIST":$n.test(t)?"DETAIL":Un.test(t)?"CHECKOUT":"UNKNOWN"}}class Eu extends Su{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 Fn.test(t)?"LIST":Vn.test(t)?"DETAIL":Hn.test(t)?"CHECKOUT":"UNKNOWN"}}class Ou extends Su{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 Gl(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 Gl(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=pu(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=ma(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:Au,ctaPrefix:"VIO_EXEDIA_DETAIL"})}static getSection(e){const t=e.href;return qn.test(t)?"LIST":Kn.test(t)?"DETAIL":Gn.test(t)?"CHECKOUT":"UNKNOWN"}}const Au="\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 Pu=1/0;const Nu=function(e){var t=function(e){return e?(e=cu(e))===Pu||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 Tu=Math.max;const Iu=(Lu=function(e,t,n){var a=null==e?0:e.length;if(!a)return-1;var o=null==n?0:Nu(n);return o<0&&(o=Tu(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,tl(t),o)},function(e,t,n){var a=Object(e);if(!rt(e)){var o=tl(t);e=it(e),t=function(e){return o(a[e],e,a)}}var r=Lu(e,t,n);return r>-1?a[o?e[r]:r]:void 0});var Lu;function Du(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 Ru extends Xl{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=Vt(['#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=Pn(t);if(!n)return null;const a=function(e,t){switch(e){case"AIRBNB":return new bu(t);case"BOOKING":return new yu(t);case"VRBO":return new Su(t);case"EXPEDIA":return new Ou(t);default:return null}}(n,this.rendererConfig);return a?`${n}::${a.getItemId(t)}`:null}))}findListingElement(e){const t=Vt(['#search [jsname="UWckNb"]']);return Iu(t,t=>{const n=t.getAttribute("href");return!!n&&function(e){const t=Pn(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=fu(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=pu(e,2e3,{trailing:!0})),setTimeout(async()=>{const e=await Dt(Ut,e=>!e)(["#search"]);new MutationObserver(e=>{for(const t of e)!Du(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 Wn.test(t)?"LIST":"UNKNOWN"}}const Mu=new class{renderer=void 0;availableRenderers=[];initialize(e){if(void 0!==this.renderer)throw new Error("PlatformContentFactory already initialized");this.availableRenderers=[new bu(e),new yu(e),new Su(e),new Eu(e),new Ou(e),new Ru(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 $u(){const e=Mu.get();return e?await e.getLoS():null}function Bu(){const e=Mu.get();return e?e.getItemId():null}function Uu(){const e=Mu.get();return e?e.getHotelIdInDetail():null}const Vu=["checkin","checkout","currency","children","adults"];async function Fu(e){return Vu.reduce(async(t,n)=>{const a=await async function(e,t=window.location.href){const n=Mu.get();return n?await n.buildQueryParams(e,t):null}(n,e);return eo(await t,n,"checkin"===n||"checkout"===n?Zt(a):a),t},Promise.resolve({checkin:null,checkout:null,currency:null,adults:null,children:null}))}const Hu=["vidahotels.com","addresshotels.com"],Ku=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=un(t);if(Hu.includes(n)){const e=Ya(t.hostname);await v.maybeOpenTempTab({url:e})}}catch(e){console.error("Error opening new tab",e)}const a=await Fu(window.location.href);this.config.onBeforeOpenOutclickTab?.({targetUrl:e,stayParams:a,outclickExtraParams:n}),await v.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 qu(e){const t=await v.getConfig();Mu.initialize(e.platformContentRendererConfig),f.initialize(t),g.initialize(t),b.initialize(t),Ku.initialize(e.frontNavigationFactoryConfig);const n=new ia,a=new Wa;!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=Mu.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(Uu,e=>null===e)(),Dt(Bu,e=>null===e)()]);return null===e||null===t?null:{hotelId:e,listingId:t}}();if(null===e)return[];const t=Pn(window.location.href);if(!t)return[];const n=await async function(e){const t=await Fu(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 v.getAlternativeOffersByHotelIds({id:[e],language:ft(),platform:t,...n,currency:n.currency||"EUR"});(function(e){const t=Mu.get();t&&t.renderAlternativeOffersInDetail(e)})(a)}()})}function Gu(){return qu({platformContentRendererConfig:{renderLabels:!1,renderSecondaryCTAs:!1,renderAlternativeOffers:!0},frontNavigationFactoryConfig:{}})}})(),a})());
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.DirectoAdUnit=t():e.DirectoAdUnit=t()}(this,()=>(()=>{var e={15:(e,t,n)=>{"use strict";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)=>{"use strict";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)=>{"use strict";e.exports=n(15)},155:(e,t,n)=>{"use strict";e.exports=n(18)},316:(e,t,n)=>{"use strict";!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(){"use strict";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)=>{"use strict";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)=>{"use strict";e.exports=n(910)},723:(e,t,n)=>{"use strict";e.exports=n(921)},910:(e,t)=>{"use strict";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)=>{"use strict";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)=>{"use strict";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}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),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return(()=>{"use strict";function e(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.r(a),n.d(a,{initializeAdUnit:()=>Xu});class t extends Error{source;constructor(e,t){super(e),this.name="ApiError",this.source=t}}class o extends t{constructor(e){super(`Fetch error: ${e.message}`,e)}}class r extends t{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 i extends t{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 s(e,t){try{return await fetch(e,t)}catch(e){if(e instanceof TypeError)throw new o(e);throw e}}function c(e){return new Promise(t=>{setTimeout(t,e)})}function l(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 u{name="JsonBodyParser";async parse(e){try{return e.json()}catch(t){throw new i(e,t instanceof Error?t:"Failed to parse JSON")}}checkContentType(e){return e?.includes("application/json")??!1}}class p{name="VoidBodyParser";async parse(e){}checkContentType(e){return!0}}async function d(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 i(e,`Did not expect Content-Type "${o}" for parser ${n.name}`);return t.parser.parse(e)}if(n>=5)throw new r(e);if(401===e.status&&o)return o(n+1);if(429===e.status||503===e.status){const t=l(n+2,{backoffMultiplier:2,retryAfter:e.headers.get("Retry-After")});return await c(t),a(n+3)}if(e.status>=400&&e.status<=499)throw new r(e);{const e=l(n);return await c(e),a(n+1)}}class m{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(t,n){return function(t,n){const a=new URL(t);for(const[t,o]of Object.entries(n))if(Array.isArray(o)){a.searchParams.delete(t);for(const n of o)e(a,t,n,"append")}else e(a,t,o,"set");return a}(t,{...n,..."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 u,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 d(await s(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 p,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 d(await s(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 h{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 m(this.rootUrl,{...this.options,...e})}get(){if(!this.apiService)throw new Error("APIService not initialized");return this.apiService}}const f=new h("https://events.getdirecto.com",{truesignEndpoint:"80298941"}),g=(f.get.bind(f),new h("https://vio-wrapper-api-cd-6981968610.europe-west4.run.app",{truesignEndpoint:"1678801807",injectInto:"headers"}));g.get.bind(g);const k=new h("https://rateshops.getdirecto.com",{truesignEndpoint:"1010119886",injectInto:"headers"}),b=k.get.bind(k);function y(e){if(e.success)return e.response;throw new Error(e.errorMessage)}const v=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(y)}}("DIRECTO_CORE_BACKGROUND",a)),e.get(a)}})}(),w=Array.isArray,j="object"==typeof global&&global&&global.Object===Object&&global;var _="object"==typeof self&&self&&self.Object===Object&&self;const x=j||_||Function("return this")(),z=x.Symbol;var C=Object.prototype,S=C.hasOwnProperty,E=C.toString,O=z?z.toStringTag:void 0;var A=Object.prototype.toString;var P=z?z.toStringTag:void 0;const N=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":P&&P in Object(e)?function(e){var t=S.call(e,O),n=e[O];try{e[O]=void 0;var a=!0}catch(e){}var o=E.call(e);return a&&(t?e[O]=n:delete e[O]),o}(e):function(e){return A.call(e)}(e)},T=function(e){return null!=e&&"object"==typeof e},I=function(e){return"symbol"==typeof e||T(e)&&"[object Symbol]"==N(e)};var L=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,D=/^\w*$/;const R=function(e,t){if(w(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!I(e))||D.test(e)||!L.test(e)||null!=t&&e in Object(t)},M=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},$=function(e){if(!M(e))return!1;var t=N(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},B=x["__core-js_shared__"];var U,F=(U=/[^.]+$/.exec(B&&B.keys&&B.keys.IE_PROTO||""))?"Symbol(src)_1."+U:"";var V=Function.prototype.toString;const H=function(e){if(null!=e){try{return V.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var K=/^\[object .+?Constructor\]$/,q=Function.prototype,G=Object.prototype,Q=q.toString,W=G.hasOwnProperty,Y=RegExp("^"+Q.call(W).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const J=function(e){return!(!M(e)||(t=e,F&&F in t))&&($(e)?Y:K).test(H(e));var t},Z=function(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return J(n)?n:void 0},X=Z(Object,"create");var ee=Object.prototype.hasOwnProperty;var te=Object.prototype.hasOwnProperty;function ne(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])}}ne.prototype.clear=function(){this.__data__=X?X(null):{},this.size=0},ne.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},ne.prototype.get=function(e){var t=this.__data__;if(X){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return ee.call(t,e)?t[e]:void 0},ne.prototype.has=function(e){var t=this.__data__;return X?void 0!==t[e]:te.call(t,e)},ne.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=X&&void 0===t?"__lodash_hash_undefined__":t,this};const ae=ne,oe=function(e,t){return e===t||e!=e&&t!=t},re=function(e,t){for(var n=e.length;n--;)if(oe(e[n][0],t))return n;return-1};var ie=Array.prototype.splice;function se(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])}}se.prototype.clear=function(){this.__data__=[],this.size=0},se.prototype.delete=function(e){var t=this.__data__,n=re(t,e);return!(n<0||(n==t.length-1?t.pop():ie.call(t,n,1),--this.size,0))},se.prototype.get=function(e){var t=this.__data__,n=re(t,e);return n<0?void 0:t[n][1]},se.prototype.has=function(e){return re(this.__data__,e)>-1},se.prototype.set=function(e,t){var n=this.__data__,a=re(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this};const ce=se,le=Z(x,"Map"),ue=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 pe(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])}}pe.prototype.clear=function(){this.size=0,this.__data__={hash:new ae,map:new(le||ce),string:new ae}},pe.prototype.delete=function(e){var t=ue(this,e).delete(e);return this.size-=t?1:0,t},pe.prototype.get=function(e){return ue(this,e).get(e)},pe.prototype.has=function(e){return ue(this,e).has(e)},pe.prototype.set=function(e,t){var n=ue(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this};const de=pe;function me(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(me.Cache||de),n}me.Cache=de;var he=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,fe=/\\(\\)?/g;const ge=(ke=function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(he,function(e,n,a,o){t.push(a?o.replace(fe,"$1"):n||e)}),t},be=me(ke,function(e){return 500===ye.size&&ye.clear(),e}),ye=be.cache,be);var ke,be,ye;const ve=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 we=z?z.prototype:void 0,je=we?we.toString:void 0;const _e=function e(t){if("string"==typeof t)return t;if(w(t))return ve(t,e)+"";if(I(t))return je?je.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n},xe=function(e){return null==e?"":_e(e)},ze=function(e,t){return w(e)?e:R(e,t)?[e]:ge(xe(e))},Ce=function(e){if("string"==typeof e||I(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t},Se=function(e,t){for(var n=0,a=(t=ze(t,e)).length;null!=e&&n<a;)e=e[Ce(t[n++])];return n&&n==a?e:void 0},Ee=function(e,t,n){var a=null==e?void 0:Se(e,t);return void 0===a?n:a},Oe=function(e,t){for(var n=-1,a=null==e?0:e.length;++n<a&&!1!==t(e[n],n,e););return e},Ae=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},Pe=function(e){return T(e)&&"[object Arguments]"==N(e)};var Ne=Object.prototype,Te=Ne.hasOwnProperty,Ie=Ne.propertyIsEnumerable;const Le=Pe(function(){return arguments}())?Pe:function(e){return T(e)&&Te.call(e,"callee")&&!Ie.call(e,"callee")};var De="object"==typeof exports&&exports&&!exports.nodeType&&exports,Re=De&&"object"==typeof module&&module&&!module.nodeType&&module,Me=Re&&Re.exports===De?x.Buffer:void 0;const $e=(Me?Me.isBuffer:void 0)||function(){return!1};var Be=/^(?:0|[1-9]\d*)$/;const Ue=function(e,t){var n=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&Be.test(e))&&e>-1&&e%1==0&&e<t},Fe=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var Ve={};Ve["[object Float32Array]"]=Ve["[object Float64Array]"]=Ve["[object Int8Array]"]=Ve["[object Int16Array]"]=Ve["[object Int32Array]"]=Ve["[object Uint8Array]"]=Ve["[object Uint8ClampedArray]"]=Ve["[object Uint16Array]"]=Ve["[object Uint32Array]"]=!0,Ve["[object Arguments]"]=Ve["[object Array]"]=Ve["[object ArrayBuffer]"]=Ve["[object Boolean]"]=Ve["[object DataView]"]=Ve["[object Date]"]=Ve["[object Error]"]=Ve["[object Function]"]=Ve["[object Map]"]=Ve["[object Number]"]=Ve["[object Object]"]=Ve["[object RegExp]"]=Ve["[object Set]"]=Ve["[object String]"]=Ve["[object WeakMap]"]=!1;const He=function(e){return function(t){return e(t)}};var Ke="object"==typeof exports&&exports&&!exports.nodeType&&exports,qe=Ke&&"object"==typeof module&&module&&!module.nodeType&&module,Ge=qe&&qe.exports===Ke&&j.process,Qe=function(){try{return qe&&qe.require&&qe.require("util").types||Ge&&Ge.binding&&Ge.binding("util")}catch(e){}}(),We=Qe&&Qe.isTypedArray;const Ye=We?He(We):function(e){return T(e)&&Fe(e.length)&&!!Ve[N(e)]};var Je=Object.prototype.hasOwnProperty;const Ze=function(e,t){var n=w(e),a=!n&&Le(e),o=!n&&!a&&$e(e),r=!n&&!a&&!o&&Ye(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&&!Je.call(e,l)||i&&("length"==l||o&&("offset"==l||"parent"==l)||r&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||Ue(l,c))||s.push(l);return s};var Xe=Object.prototype;const et=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Xe)},tt=function(e,t){return function(n){return e(t(n))}},nt=tt(Object.keys,Object);var at=Object.prototype.hasOwnProperty;const ot=function(e){if(!et(e))return nt(e);var t=[];for(var n in Object(e))at.call(e,n)&&"constructor"!=n&&t.push(n);return t},rt=function(e){return null!=e&&Fe(e.length)&&!$(e)},it=function(e){return rt(e)?Ze(e):ot(e)},st=function(e,t){return e&&Ae(e,t,it)},ct=(lt=st,function(e,t){if(null==e)return e;if(!rt(e))return lt(e,t);for(var n=e.length,a=-1,o=Object(e);++a<n&&!1!==t(o[a],a,o););return e});var lt;const ut=function(e){return e},pt=function(e,t){return(w(e)?Oe:ct)(e,"function"==typeof(n=t)?n:ut);var n},dt="userLocale";function mt(){let e;return e=null!=navigator.languages?navigator.languages[0]:navigator.language,e=e.split("-")[0]||e||"en",e}let ht=null;function ft(){return ht=ht||mt(),ht}!async function(){const{[dt]:e}=await chrome.storage.local.get(dt);ht=e??null}();const gt=Z(x,"DataView"),kt=Z(x,"Promise"),bt=Z(x,"Set"),yt=Z(x,"WeakMap");var vt="[object Map]",wt="[object Promise]",jt="[object Set]",_t="[object WeakMap]",xt="[object DataView]",zt=H(gt),Ct=H(le),St=H(kt),Et=H(bt),Ot=H(yt),At=N;(gt&&At(new gt(new ArrayBuffer(1)))!=xt||le&&At(new le)!=vt||kt&&At(kt.resolve())!=wt||bt&&At(new bt)!=jt||yt&&At(new yt)!=_t)&&(At=function(e){var t=N(e),n="[object Object]"==t?e.constructor:void 0,a=n?H(n):"";if(a)switch(a){case zt:return xt;case Ct:return vt;case St:return wt;case Et:return jt;case Ot:return _t}return t});const Pt=At;var Nt=Object.prototype.hasOwnProperty;const Tt=function(e){if(null==e)return!0;if(rt(e)&&(w(e)||"string"==typeof e||"function"==typeof e.splice||$e(e)||Ye(e)||Le(e)))return!e.length;var t=Pt(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(et(e))return!ot(e).length;for(var n in e)if(Nt.call(e,n))return!1;return!0},It=function(e){return function(e){return"number"==typeof e||T(e)&&"[object Number]"==N(e)}(e)&&e!=+e},Lt=10;function Dt(e,t=Tt,n=Lt){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")||It(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||Tt(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($(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:ft(),a=`{${e}}`,o=Ee(this.translations,`${n}.${e}`)??Ee(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 pt(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 c(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 v.getConfig();await v.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()??mt();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 v.getConfig();await v.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()??mt();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 v.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await v.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 v.getConfig();await v.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():mt();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 v.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await v.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 v.getConfig();await v.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()??mt();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 c(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 v.setCrossSellWasChecked({crossSellId:this.platform,checked:e||t})}async maybeOpenTab(){if(!await v.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 v.getConfig();await v.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()??mt();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=tt(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(!T(e)||"[object Object]"!=N(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"===ft()?"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 v.setCrossSellWasChecked({crossSellId:this.platform,checked:e})}async maybeOpenTab(){if(!await v.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")??"");v.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()??mt();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 ft()}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($(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=Tt(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=Ee(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=>!Ee(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=>!Ee(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=ut,_a=function(){return xa},function(e,t){return function(e,t,n,a){return st(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=Tt(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=Tt(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||Tt(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=Tt(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=Tt(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=>!Ee(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=>!Ee(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 v.getSessionId(),a=await da();"html"===t.parserType?v.sendConversionHTMLEvent({...e,session_id:n,user_id:a}):v.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=Z(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)&&oe(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(!M(e))return e;for(var o=-1,r=(t=ze(t,e)).length,i=r-1,s=e;null!=s&&++o<r;){var c=Ce(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=M(u)?u:Ue(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(ft(),{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 b().get("/shop",{params:e,parser:new u})}(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 ce(e);this.size=t.size}Pc.prototype.clear=function(){this.__data__=new ce,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 ce){var a=n.__data__;if(!le||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new de(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 de;++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=x.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=z?z.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 w(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,it,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=w(e),s=w(t),c=i?Wc:Pt(e),l=s?Wc:Pt(t),u=(c=c==Qc?Yc:c)==Yc,p=(l=l==Qc?Yc:l)==Yc,d=c==l;if(d&&$e(e)){if(!$e(t))return!1;i=!0,u=!1}if(d&&!u)return r||(r=new Nc),i||Ye(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 oe(+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||!T(t)&&!T(n)?t!=t&&n!=n:Zc(t,n,a,o,e,r))},el=function(e){return e==e&&!M(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=it(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=ze(t,e)).length,r=!1;++a<o;){var i=Ce(t[a]);if(!(r=null!=e&&n(e,i)))break;e=e[i]}return r||++a!=o?r:!!(o=null==e?0:e.length)&&Fe(o)&&Ue(i,o)&&(w(e)||Le(e))}(e,t,al)},rl=function(e){return R(e)?(t=Ce(e),function(e){return null==e?void 0:e[t]}):function(e){return function(t){return Se(t,e)}}(e);var t},il=function(e){return"function"==typeof e?e:null==e?ut:"object"==typeof e?w(e)?(t=e[0],n=e[1],R(t)&&el(n)?tl(Ce(t),n):function(e){var a=Ee(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=I(e),i=void 0!==t,s=null===t,c=t==t,l=I(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?ve(t,function(e){return w(e)?function(t){return Se(t,1===e.length?e[0]:e)}:e}):[ut];var a=-1;t=ve(t,He(il));var o=function(e,t){var n=-1,a=rt(e)?Array(e.length):[];return ct(e,function(e,o,r){a[++n]=t(e,o,r)}),a}(e,function(e,n,o){return{criteria:ve(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?[]:(w(s)||(s=null==s?[]:[s]),w(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()=>{v.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($(a)?await a():Rt(n.searchParams.get(a)))||null}static getSection(e){throw new Error("Method not implemented.")}}const ru=function(){return x.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(I(e))return NaN;if(M(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=M(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,M(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=Ee(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:Ee(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=Ee(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=Ee(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:Ee(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=Ee(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 pt(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=Ee(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=w(e)?Pu:Nu,o=arguments.length<3;return a(e,il(t),n,o,ct)}(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=Ee(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(!rt(e)){var o=il(t);e=it(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 v.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 v.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 v.getConfig();Hu.initialize(e.platformContentRendererConfig),f.initialize(t),g.initialize(t),k.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 v.getAlternativeOffersByHotelIds({id:[e],language:ft(),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:{}})}})(),a})());
|