/*! For license information please see query.js.LICENSE.txt */ !function(){"use strict";var e={"./node_modules/react/cjs/react-jsx-runtime.development.js":function(e,t,r){!function(){var e,n=r("react"),s=Symbol.for("react.element"),i=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),u=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),l=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),y=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),m=Symbol.for("react.offscreen"),b=Symbol.iterator,v=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function g(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n=1&&l>=0&&a[c]!==u[l];)l--;for(;c>=1&&l>=0;c--,l--)if(a[c]!==u[l]){if(1!==c||1!==l)do{if(c--,--l<0||a[c]!==u[l]){var d="\n"+a[c].replace(" at new "," at ");return e.displayName&&d.includes("")&&(d=d.replace("",e.displayName)),"function"==typeof e&&x.set(e,d),d}}while(c>=1&&l>=0);break}}}finally{D=!1,F.current=s,function(){if(0==--_){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Q({},e,{value:R}),info:Q({},e,{value:k}),warn:Q({},e,{value:S}),error:Q({},e,{value:C}),group:Q({},e,{value:w}),groupCollapsed:Q({},e,{value:j}),groupEnd:Q({},e,{value:P})})}_<0&&g("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=i}var h=e?e.displayName||e.name:"",f=h?T(h):"";return"function"==typeof e&&x.set(e,f),f}function U(e,t,r){if(null==e)return"";if("function"==typeof e)return A(e,!(!(n=e.prototype)||!n.isReactComponent));var n;if("string"==typeof e)return T(e);switch(e){case h:return T("Suspense");case f:return T("SuspenseList")}if("object"==typeof e)switch(e.$$typeof){case d:return A(e.render,!1);case y:return U(e.type,t,r);case p:var s=e,i=s._payload,o=s._init;try{return U(o(i),t,r)}catch(e){}}return""}x=new I;var K=Object.prototype.hasOwnProperty,B={},N=v.ReactDebugCurrentFrame;function L(e){if(e){var t=e._owner,r=U(e.type,e._source,t?t.type:null);N.setExtraStackFrame(r)}else N.setExtraStackFrame(null)}var $=Array.isArray;function H(e){return $(e)}function W(e){return""+e}function G(e){if(function(e){try{return W(e),!1}catch(e){return!0}}(e))return g("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(e){return"function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object"}(e)),W(e)}var z,V,Y,J=v.ReactCurrentOwner,X={key:!0,ref:!0,__self:!0,__source:!0};Y={};var Z,ee=v.ReactCurrentOwner,te=v.ReactDebugCurrentFrame;function re(e){if(e){var t=e._owner,r=U(e.type,e._source,t?t.type:null);te.setExtraStackFrame(r)}else te.setExtraStackFrame(null)}function ne(e){return"object"==typeof e&&null!==e&&e.$$typeof===s}function se(){if(ee.current){var e=q(ee.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}Z=!1;var ie={};function oe(e,t){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var r=function(e){var t=se();if(!t){var r="string"==typeof e?e:e.displayName||e.name;r&&(t="\n\nCheck the top-level render call using <"+r+">.")}return t}(t);if(!ie[r]){ie[r]=!0;var n="";e&&e._owner&&e._owner!==ee.current&&(n=" It was passed a child from "+q(e._owner.type)+"."),re(e),g('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',r,n),re(null)}}}function ae(e,t){if("object"==typeof e)if(H(e))for(var r=0;r",R=" Did you accidentally export a JSX literal instead of a component?"):k=typeof t,g("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",k,R)}var C=function(e,t,r,n,i){var o,a={},u=null,c=null;for(o in void 0!==r&&(G(r),u=""+r),function(e){if(K.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return void 0!==e.key}(t)&&(G(t.key),u=""+t.key),function(e){if(K.call(e,"ref")){var t=Object.getOwnPropertyDescriptor(e,"ref").get;if(t&&t.isReactWarning)return!1}return void 0!==e.ref}(t)&&(c=t.ref,function(e,t){if("string"==typeof e.ref&&J.current&&t&&J.current.stateNode!==t){var r=q(J.current.type);Y[r]||(g('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',q(J.current.type),e.ref),Y[r]=!0)}}(t,i)),t)K.call(t,o)&&!X.hasOwnProperty(o)&&(a[o]=t[o]);if(e&&e.defaultProps){var l=e.defaultProps;for(o in l)void 0===a[o]&&(a[o]=l[o])}if(u||c){var d="function"==typeof e?e.displayName||e.name||"Unknown":e;u&&function(e,t){var r=function(){z||(z=!0,g("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};r.isReactWarning=!0,Object.defineProperty(e,"key",{get:r,configurable:!0})}(a,d),c&&function(e,t){var r=function(){V||(V=!0,g("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};r.isReactWarning=!0,Object.defineProperty(e,"ref",{get:r,configurable:!0})}(a,d)}return function(e,t,r,n,i,o,a){var u={$$typeof:s,type:e,key:t,ref:r,props:a,_owner:o,_store:{}};return Object.defineProperty(u._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(u,"_self",{configurable:!1,enumerable:!1,writable:!1,value:n}),Object.defineProperty(u,"_source",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(u.props),Object.freeze(u)),u}(e,u,c,i,n,J.current,a)}(t,r,n,b,v);if(null==C)return C;if(O){var w=r.children;if(void 0!==w)if(i)if(H(w)){for(var j=0;j0?"{key: someKey, "+Q.join(": ..., ")+": ...}":"{key: someKey}";ue[P+_]||(g('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',_,P,Q.length>0?"{"+Q.join(": ..., ")+": ...}":"{}",P),ue[P+_]=!0)}return t===o?function(e){for(var t=Object.keys(e.props),r=0;r{if(!s.isServer&&window.addEventListener){const t=()=>e();return window.addEventListener("visibilitychange",t,!1),()=>{window.removeEventListener("visibilitychange",t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#r)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#r=e,this.#t?.(),this.#t=e((e=>{"boolean"==typeof e?this.setFocused(e):this.onFocus()}))}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){const e=this.isFocused();this.listeners.forEach((t=>{t(e)}))}isFocused(){return"boolean"==typeof this.#e?this.#e:"hidden"!==globalThis.document?.visibilityState}},o=new i},"./node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js":function(e,t,r){r.r(t),r.d(t,{hasNextPage:function(){return a},hasPreviousPage:function(){return u},infiniteQueryBehavior:function(){return s}});var n=r("./node_modules/@tanstack/query-core/build/modern/utils.js");function s(e){return{onFetch:(t,r)=>{const s=async()=>{const r=t.options,s=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],u=t.state.data?.pageParams||[],c={pages:[],pageParams:[]};let l=!1;const d=(0,n.ensureQueryFn)(t.options,t.fetchOptions),h=async(e,r,s)=>{if(l)return Promise.reject();if(null==r&&e.pages.length)return Promise.resolve(e);const i={queryKey:t.queryKey,pageParam:r,direction:s?"backward":"forward",meta:t.options.meta};var o;o=i,Object.defineProperty(o,"signal",{enumerable:!0,get:()=>(t.signal.aborted?l=!0:t.signal.addEventListener("abort",(()=>{l=!0})),t.signal)});const a=await d(i),{maxPages:u}=t.options,c=s?n.addToStart:n.addToEnd;return{pages:c(e.pages,a,u),pageParams:c(e.pageParams,r,u)}};let f;if(s&&a.length){const e="backward"===s,t={pages:a,pageParams:u},n=(e?o:i)(r,t);f=await h(t,n,e)}else{f=await h(c,u[0]??r.initialPageParam);const t=e??a.length;for(let e=1;et.options.persister?.(s,{queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},r):t.fetchFn=s}}}function i(e,{pages:t,pageParams:r}){const n=t.length-1;return e.getNextPageParam(t[n],t,r[n],r)}function o(e,{pages:t,pageParams:r}){return e.getPreviousPageParam?.(t[0],t,r[0],r)}function a(e,t){return!!t&&null!=i(e,t)}function u(e,t){return!(!t||!e.getPreviousPageParam)&&null!=o(e,t)}},"./node_modules/@tanstack/query-core/build/modern/infiniteQueryObserver.js":function(e,t,r){r.r(t),r.d(t,{InfiniteQueryObserver:function(){return i}});var n=r("./node_modules/@tanstack/query-core/build/modern/queryObserver.js"),s=r("./node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js"),i=class extends n.QueryObserver{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e,t){super.setOptions({...e,behavior:(0,s.infiniteQueryBehavior)()},t)}getOptimisticResult(e){return e.behavior=(0,s.infiniteQueryBehavior)(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){const{state:r}=e,n=super.createResult(e,t),{isFetching:i,isRefetching:o,isError:a,isRefetchError:u}=n,c=r.fetchMeta?.fetchMore?.direction,l=a&&"forward"===c,d=i&&"forward"===c,h=a&&"backward"===c,f=i&&"backward"===c;return{...n,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:(0,s.hasNextPage)(t,r.data),hasPreviousPage:(0,s.hasPreviousPage)(t,r.data),isFetchNextPageError:l,isFetchingNextPage:d,isFetchPreviousPageError:h,isFetchingPreviousPage:f,isRefetchError:u&&!l&&!h,isRefetching:o&&!d&&!f}}}},"./node_modules/@tanstack/query-core/build/modern/mutation.js":function(e,t,r){r.r(t),r.d(t,{Mutation:function(){return o},getDefaultState:function(){return a}});var n=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),s=r("./node_modules/@tanstack/query-core/build/modern/removable.js"),i=r("./node_modules/@tanstack/query-core/build/modern/retryer.js"),o=class extends s.Removable{#n;#s;#i;constructor(e){super(),this.mutationId=e.mutationId,this.#s=e.mutationCache,this.#n=[],this.state=e.state||{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0},this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#n.includes(e)||(this.#n.push(e),this.clearGcTimeout(),this.#s.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.#n=this.#n.filter((t=>t!==e)),this.scheduleGc(),this.#s.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.#n.length||("pending"===this.state.status?this.scheduleGc():this.#s.remove(this))}continue(){return this.#i?.continue()??this.execute(this.state.variables)}async execute(e){this.#i=(0,i.createRetryer)({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(new Error("No mutationFn found")),onFail:(e,t)=>{this.#o({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#o({type:"pause"})},onContinue:()=>{this.#o({type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#s.canRun(this)});const t="pending"===this.state.status,r=!this.#i.canStart();try{if(!t){this.#o({type:"pending",variables:e,isPaused:r}),await(this.#s.config.onMutate?.(e,this));const t=await(this.options.onMutate?.(e));t!==this.state.context&&this.#o({type:"pending",context:t,variables:e,isPaused:r})}const n=await this.#i.start();return await(this.#s.config.onSuccess?.(n,e,this.state.context,this)),await(this.options.onSuccess?.(n,e,this.state.context)),await(this.#s.config.onSettled?.(n,null,this.state.variables,this.state.context,this)),await(this.options.onSettled?.(n,null,e,this.state.context)),this.#o({type:"success",data:n}),n}catch(t){try{throw await(this.#s.config.onError?.(t,e,this.state.context,this)),await(this.options.onError?.(t,e,this.state.context)),await(this.#s.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this)),await(this.options.onSettled?.(void 0,t,e,this.state.context)),t}finally{this.#o({type:"error",error:t})}}finally{this.#s.runNext(this)}}#o(e){this.state=(t=>{switch(e.type){case"failed":return{...t,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...t,isPaused:!0};case"continue":return{...t,isPaused:!1};case"pending":return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}})(this.state),n.notifyManager.batch((()=>{this.#n.forEach((t=>{t.onMutationUpdate(e)})),this.#s.notify({mutation:this,type:"updated",action:e})}))}};function a(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}},"./node_modules/@tanstack/query-core/build/modern/mutationCache.js":function(e,t,r){r.r(t),r.d(t,{MutationCache:function(){return a}});var n=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),s=r("./node_modules/@tanstack/query-core/build/modern/mutation.js"),i=r("./node_modules/@tanstack/query-core/build/modern/utils.js"),o=r("./node_modules/@tanstack/query-core/build/modern/subscribable.js"),a=class extends o.Subscribable{constructor(e={}){super(),this.config=e,this.#a=new Map,this.#u=Date.now()}#a;#u;build(e,t,r){const n=new s.Mutation({mutationCache:this,mutationId:++this.#u,options:e.defaultMutationOptions(t),state:r});return this.add(n),n}add(e){const t=u(e),r=this.#a.get(t)??[];r.push(e),this.#a.set(t,r),this.notify({type:"added",mutation:e})}remove(e){const t=u(e);if(this.#a.has(t)){const r=this.#a.get(t)?.filter((t=>t!==e));r&&(0===r.length?this.#a.delete(t):this.#a.set(t,r))}this.notify({type:"removed",mutation:e})}canRun(e){const t=this.#a.get(u(e))?.find((e=>"pending"===e.state.status));return!t||t===e}runNext(e){const t=this.#a.get(u(e))?.find((t=>t!==e&&t.state.isPaused));return t?.continue()??Promise.resolve()}clear(){n.notifyManager.batch((()=>{this.getAll().forEach((e=>{this.remove(e)}))}))}getAll(){return[...this.#a.values()].flat()}find(e){const t={exact:!0,...e};return this.getAll().find((e=>(0,i.matchMutation)(t,e)))}findAll(e={}){return this.getAll().filter((t=>(0,i.matchMutation)(e,t)))}notify(e){n.notifyManager.batch((()=>{this.listeners.forEach((t=>{t(e)}))}))}resumePausedMutations(){const e=this.getAll().filter((e=>e.state.isPaused));return n.notifyManager.batch((()=>Promise.all(e.map((e=>e.continue().catch(i.noop))))))}};function u(e){return e.options.scope?.id??String(e.mutationId)}},"./node_modules/@tanstack/query-core/build/modern/mutationObserver.js":function(e,t,r){r.r(t),r.d(t,{MutationObserver:function(){return a}});var n=r("./node_modules/@tanstack/query-core/build/modern/mutation.js"),s=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),i=r("./node_modules/@tanstack/query-core/build/modern/subscribable.js"),o=r("./node_modules/@tanstack/query-core/build/modern/utils.js"),a=class extends i.Subscribable{#c;#l=void 0;#d;#h;constructor(e,t){super(),this.#c=e,this.setOptions(t),this.bindMethods(),this.#f()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){const t=this.options;this.options=this.#c.defaultMutationOptions(e),(0,o.shallowEqualObjects)(this.options,t)||this.#c.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#d,observer:this}),t?.mutationKey&&this.options.mutationKey&&(0,o.hashKey)(t.mutationKey)!==(0,o.hashKey)(this.options.mutationKey)?this.reset():"pending"===this.#d?.state.status&&this.#d.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#d?.removeObserver(this)}onMutationUpdate(e){this.#f(),this.#y(e)}getCurrentResult(){return this.#l}reset(){this.#d?.removeObserver(this),this.#d=void 0,this.#f(),this.#y()}mutate(e,t){return this.#h=t,this.#d?.removeObserver(this),this.#d=this.#c.getMutationCache().build(this.#c,this.options),this.#d.addObserver(this),this.#d.execute(e)}#f(){const e=this.#d?.state??(0,n.getDefaultState)();this.#l={...e,isPending:"pending"===e.status,isSuccess:"success"===e.status,isError:"error"===e.status,isIdle:"idle"===e.status,mutate:this.mutate,reset:this.reset}}#y(e){s.notifyManager.batch((()=>{if(this.#h&&this.hasListeners()){const t=this.#l.variables,r=this.#l.context;"success"===e?.type?(this.#h.onSuccess?.(e.data,t,r),this.#h.onSettled?.(e.data,null,t,r)):"error"===e?.type&&(this.#h.onError?.(e.error,t,r),this.#h.onSettled?.(void 0,e.error,t,r))}this.listeners.forEach((e=>{e(this.#l)}))}))}}},"./node_modules/@tanstack/query-core/build/modern/notifyManager.js":function(e,t,r){function n(){let e=[],t=0,r=e=>{e()},n=e=>{e()},s=e=>setTimeout(e,0);const i=n=>{t?e.push(n):s((()=>{r(n)}))};return{batch:i=>{let o;t++;try{o=i()}finally{t--,t||(()=>{const t=e;e=[],t.length&&s((()=>{n((()=>{t.forEach((e=>{r(e)}))}))}))})()}return o},batchCalls:e=>(...t)=>{i((()=>{e(...t)}))},schedule:i,setNotifyFunction:e=>{r=e},setBatchNotifyFunction:e=>{n=e},setScheduler:e=>{s=e}}}r.r(t),r.d(t,{createNotifyManager:function(){return n},notifyManager:function(){return s}});var s=n()},"./node_modules/@tanstack/query-core/build/modern/onlineManager.js":function(e,t,r){r.r(t),r.d(t,{OnlineManager:function(){return i},onlineManager:function(){return o}});var n=r("./node_modules/@tanstack/query-core/build/modern/subscribable.js"),s=r("./node_modules/@tanstack/query-core/build/modern/utils.js"),i=class extends n.Subscribable{#p=!0;#t;#r;constructor(){super(),this.#r=e=>{if(!s.isServer&&window.addEventListener){const t=()=>e(!0),r=()=>e(!1);return window.addEventListener("online",t,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",r)}}}}onSubscribe(){this.#t||this.setEventListener(this.#r)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#r=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#p!==e&&(this.#p=e,this.listeners.forEach((t=>{t(e)})))}isOnline(){return this.#p}},o=new i},"./node_modules/@tanstack/query-core/build/modern/query.js":function(e,t,r){r.r(t),r.d(t,{Query:function(){return a},fetchState:function(){return u}});var n=r("./node_modules/@tanstack/query-core/build/modern/utils.js"),s=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),i=r("./node_modules/@tanstack/query-core/build/modern/retryer.js"),o=r("./node_modules/@tanstack/query-core/build/modern/removable.js"),a=class extends o.Removable{#m;#b;#v;#i;#g;#O;constructor(e){super(),this.#O=!1,this.#g=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#v=e.cache,this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#m=e.state||function(e){const t="function"==typeof e.initialData?e.initialData():e.initialData,r=void 0!==t,n=r?"function"==typeof e.initialDataUpdatedAt?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:r?n??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:r?"success":"pending",fetchStatus:"idle"}}(this.options),this.state=this.#m,this.scheduleGc()}get meta(){return this.options.meta}get promise(){return this.#i?.promise}setOptions(e){this.options={...this.#g,...e},this.updateGcTime(this.options.gcTime)}optionalRemove(){this.observers.length||"idle"!==this.state.fetchStatus||this.#v.remove(this)}setData(e,t){const r=(0,n.replaceData)(this.state.data,e,this.options);return this.#o({data:r,type:"success",dataUpdatedAt:t?.updatedAt,manual:t?.manual}),r}setState(e,t){this.#o({type:"setState",state:e,setStateOptions:t})}cancel(e){const t=this.#i?.promise;return this.#i?.cancel(e),t?t.then(n.noop).catch(n.noop):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(this.#m)}isActive(){return this.observers.some((e=>!1!==(0,n.resolveEnabled)(e.options.enabled,this)))}isDisabled(){return this.getObserversCount()>0&&!this.isActive()}isStale(){return!!this.state.isInvalidated||(this.getObserversCount()>0?this.observers.some((e=>e.getCurrentResult().isStale)):void 0===this.state.data)}isStaleByTime(e=0){return this.state.isInvalidated||void 0===this.state.data||!(0,n.timeUntilStale)(this.state.dataUpdatedAt,e)}onFocus(){const e=this.observers.find((e=>e.shouldFetchOnWindowFocus()));e?.refetch({cancelRefetch:!1}),this.#i?.continue()}onOnline(){const e=this.observers.find((e=>e.shouldFetchOnReconnect()));e?.refetch({cancelRefetch:!1}),this.#i?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#v.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter((t=>t!==e)),this.observers.length||(this.#i&&(this.#O?this.#i.cancel({revert:!0}):this.#i.cancelRetry()),this.scheduleGc()),this.#v.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.#o({type:"invalidate"})}fetch(e,t){if("idle"!==this.state.fetchStatus)if(void 0!==this.state.data&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#i)return this.#i.continueRetry(),this.#i.promise;if(e&&this.setOptions(e),!this.options.queryFn){const e=this.observers.find((e=>e.options.queryFn));e&&this.setOptions(e.options)}Array.isArray(this.options.queryKey)||console.error("As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']");const r=new AbortController,s=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#O=!0,r.signal)})},o={fetchOptions:t,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:()=>{const e=(0,n.ensureQueryFn)(this.options,t),r={queryKey:this.queryKey,meta:this.meta};return s(r),this.#O=!1,this.options.persister?this.options.persister(e,r,this):e(r)}};s(o),this.options.behavior?.onFetch(o,this),this.#b=this.state,"idle"!==this.state.fetchStatus&&this.state.fetchMeta===o.fetchOptions?.meta||this.#o({type:"fetch",meta:o.fetchOptions?.meta});const a=e=>{(0,i.isCancelledError)(e)&&e.silent||this.#o({type:"error",error:e}),(0,i.isCancelledError)(e)||(this.#v.config.onError?.(e,this),this.#v.config.onSettled?.(this.state.data,e,this)),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1};return this.#i=(0,i.createRetryer)({initialPromise:t?.initialPromise,fn:o.fetchFn,abort:r.abort.bind(r),onSuccess:e=>{if(void 0===e)return console.error(`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`),void a(new Error(`${this.queryHash} data is undefined`));this.setData(e),this.#v.config.onSuccess?.(e,this),this.#v.config.onSettled?.(e,this.state.error,this),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1},onError:a,onFail:(e,t)=>{this.#o({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#o({type:"pause"})},onContinue:()=>{this.#o({type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0}),this.#i.start()}#o(e){this.state=(t=>{switch(e.type){case"failed":return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...t,fetchStatus:"paused"};case"continue":return{...t,fetchStatus:"fetching"};case"fetch":return{...t,...u(t.data,this.options),fetchMeta:e.meta??null};case"success":return{...t,data:e.data,dataUpdateCount:t.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const r=e.error;return(0,i.isCancelledError)(r)&&r.revert&&this.#b?{...this.#b,fetchStatus:"idle"}:{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error"};case"invalidate":return{...t,isInvalidated:!0};case"setState":return{...t,...e.state}}})(this.state),s.notifyManager.batch((()=>{this.observers.forEach((e=>{e.onQueryUpdate()})),this.#v.notify({query:this,type:"updated",action:e})}))}};function u(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:(0,i.canFetch)(t.networkMode)?"fetching":"paused",...void 0===e&&{error:null,status:"pending"}}}},"./node_modules/@tanstack/query-core/build/modern/queryCache.js":function(e,t,r){r.r(t),r.d(t,{QueryCache:function(){return a}});var n=r("./node_modules/@tanstack/query-core/build/modern/utils.js"),s=r("./node_modules/@tanstack/query-core/build/modern/query.js"),i=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),o=r("./node_modules/@tanstack/query-core/build/modern/subscribable.js"),a=class extends o.Subscribable{constructor(e={}){super(),this.config=e,this.#q=new Map}#q;build(e,t,r){const i=t.queryKey,o=t.queryHash??(0,n.hashQueryKeyByOptions)(i,t);let a=this.get(o);return a||(a=new s.Query({cache:this,queryKey:i,queryHash:o,options:e.defaultQueryOptions(t),state:r,defaultOptions:e.getQueryDefaults(i)}),this.add(a)),a}add(e){this.#q.has(e.queryHash)||(this.#q.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const t=this.#q.get(e.queryHash);t&&(e.destroy(),t===e&&this.#q.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){i.notifyManager.batch((()=>{this.getAll().forEach((e=>{this.remove(e)}))}))}get(e){return this.#q.get(e)}getAll(){return[...this.#q.values()]}find(e){const t={exact:!0,...e};return this.getAll().find((e=>(0,n.matchQuery)(t,e)))}findAll(e={}){const t=this.getAll();return Object.keys(e).length>0?t.filter((t=>(0,n.matchQuery)(e,t))):t}notify(e){i.notifyManager.batch((()=>{this.listeners.forEach((t=>{t(e)}))}))}onFocus(){i.notifyManager.batch((()=>{this.getAll().forEach((e=>{e.onFocus()}))}))}onOnline(){i.notifyManager.batch((()=>{this.getAll().forEach((e=>{e.onOnline()}))}))}}},"./node_modules/@tanstack/query-core/build/modern/queryClient.js":function(e,t,r){r.r(t),r.d(t,{QueryClient:function(){return l}});var n=r("./node_modules/@tanstack/query-core/build/modern/utils.js"),s=r("./node_modules/@tanstack/query-core/build/modern/queryCache.js"),i=r("./node_modules/@tanstack/query-core/build/modern/mutationCache.js"),o=r("./node_modules/@tanstack/query-core/build/modern/focusManager.js"),a=r("./node_modules/@tanstack/query-core/build/modern/onlineManager.js"),u=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),c=r("./node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js"),l=class{#R;#s;#g;#k;#S;#C;#w;#j;constructor(e={}){this.#R=e.queryCache||new s.QueryCache,this.#s=e.mutationCache||new i.MutationCache,this.#g=e.defaultOptions||{},this.#k=new Map,this.#S=new Map,this.#C=0}mount(){this.#C++,1===this.#C&&(this.#w=o.focusManager.subscribe((async e=>{e&&(await this.resumePausedMutations(),this.#R.onFocus())})),this.#j=a.onlineManager.subscribe((async e=>{e&&(await this.resumePausedMutations(),this.#R.onOnline())})))}unmount(){this.#C--,0===this.#C&&(this.#w?.(),this.#w=void 0,this.#j?.(),this.#j=void 0)}isFetching(e){return this.#R.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#s.findAll({...e,status:"pending"}).length}getQueryData(e){const t=this.defaultQueryOptions({queryKey:e});return this.#R.get(t.queryHash)?.state.data}ensureQueryData(e){const t=this.getQueryData(e.queryKey);if(void 0===t)return this.fetchQuery(e);{const r=this.defaultQueryOptions(e),s=this.#R.build(this,r);return e.revalidateIfStale&&s.isStaleByTime((0,n.resolveStaleTime)(r.staleTime,s))&&this.prefetchQuery(r),Promise.resolve(t)}}getQueriesData(e){return this.#R.findAll(e).map((({queryKey:e,state:t})=>[e,t.data]))}setQueryData(e,t,r){const s=this.defaultQueryOptions({queryKey:e}),i=this.#R.get(s.queryHash),o=i?.state.data,a=(0,n.functionalUpdate)(t,o);if(void 0!==a)return this.#R.build(this,s).setData(a,{...r,manual:!0})}setQueriesData(e,t,r){return u.notifyManager.batch((()=>this.#R.findAll(e).map((({queryKey:e})=>[e,this.setQueryData(e,t,r)]))))}getQueryState(e){const t=this.defaultQueryOptions({queryKey:e});return this.#R.get(t.queryHash)?.state}removeQueries(e){const t=this.#R;u.notifyManager.batch((()=>{t.findAll(e).forEach((e=>{t.remove(e)}))}))}resetQueries(e,t){const r=this.#R,n={type:"active",...e};return u.notifyManager.batch((()=>(r.findAll(e).forEach((e=>{e.reset()})),this.refetchQueries(n,t))))}cancelQueries(e={},t={}){const r={revert:!0,...t},s=u.notifyManager.batch((()=>this.#R.findAll(e).map((e=>e.cancel(r)))));return Promise.all(s).then(n.noop).catch(n.noop)}invalidateQueries(e={},t={}){return u.notifyManager.batch((()=>{if(this.#R.findAll(e).forEach((e=>{e.invalidate()})),"none"===e.refetchType)return Promise.resolve();const r={...e,type:e.refetchType??e.type??"active"};return this.refetchQueries(r,t)}))}refetchQueries(e={},t){const r={...t,cancelRefetch:t?.cancelRefetch??!0},s=u.notifyManager.batch((()=>this.#R.findAll(e).filter((e=>!e.isDisabled())).map((e=>{let t=e.fetch(void 0,r);return r.throwOnError||(t=t.catch(n.noop)),"paused"===e.state.fetchStatus?Promise.resolve():t}))));return Promise.all(s).then(n.noop)}fetchQuery(e){const t=this.defaultQueryOptions(e);void 0===t.retry&&(t.retry=!1);const r=this.#R.build(this,t);return r.isStaleByTime((0,n.resolveStaleTime)(t.staleTime,r))?r.fetch(t):Promise.resolve(r.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(n.noop).catch(n.noop)}fetchInfiniteQuery(e){return e.behavior=(0,c.infiniteQueryBehavior)(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(n.noop).catch(n.noop)}resumePausedMutations(){return a.onlineManager.isOnline()?this.#s.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#R}getMutationCache(){return this.#s}getDefaultOptions(){return this.#g}setDefaultOptions(e){this.#g=e}setQueryDefaults(e,t){this.#k.set((0,n.hashKey)(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...this.#k.values()];let r={};return t.forEach((t=>{(0,n.partialMatchKey)(e,t.queryKey)&&(r={...r,...t.defaultOptions})})),r}setMutationDefaults(e,t){this.#S.set((0,n.hashKey)(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...this.#S.values()];let r={};return t.forEach((t=>{(0,n.partialMatchKey)(e,t.mutationKey)&&(r={...r,...t.defaultOptions})})),r}defaultQueryOptions(e){if(e._defaulted)return e;const t={...this.#g.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=(0,n.hashQueryKeyByOptions)(t.queryKey,t)),void 0===t.refetchOnReconnect&&(t.refetchOnReconnect="always"!==t.networkMode),void 0===t.throwOnError&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),!0!==t.enabled&&t.queryFn===n.skipToken&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#g.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#R.clear(),this.#s.clear()}}},"./node_modules/@tanstack/query-core/build/modern/queryObserver.js":function(e,t,r){r.r(t),r.d(t,{QueryObserver:function(){return u}});var n=r("./node_modules/@tanstack/query-core/build/modern/utils.js"),s=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),i=r("./node_modules/@tanstack/query-core/build/modern/focusManager.js"),o=r("./node_modules/@tanstack/query-core/build/modern/subscribable.js"),a=r("./node_modules/@tanstack/query-core/build/modern/query.js"),u=class extends o.Subscribable{constructor(e,t){super(),this.options=t,this.#c=e,this.#P=null,this.bindMethods(),this.setOptions(t)}#c;#Q=void 0;#_=void 0;#l=void 0;#E;#M;#P;#F;#T;#x;#D;#I;#A;#U=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#Q.addObserver(this),c(this.#Q,this.options)?this.#K():this.updateResult(),this.#B())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return l(this.#Q,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return l(this.#Q,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#N(),this.#L(),this.#Q.removeObserver(this)}setOptions(e,t){const r=this.options,s=this.#Q;if(this.options=this.#c.defaultQueryOptions(e),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled&&"function"!=typeof this.options.enabled&&"boolean"!=typeof(0,n.resolveEnabled)(this.options.enabled,this.#Q))throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#$(),this.#Q.setOptions(this.options),r._defaulted&&!(0,n.shallowEqualObjects)(this.options,r)&&this.#c.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#Q,observer:this});const i=this.hasListeners();i&&d(this.#Q,s,this.options,r)&&this.#K(),this.updateResult(t),!i||this.#Q===s&&(0,n.resolveEnabled)(this.options.enabled,this.#Q)===(0,n.resolveEnabled)(r.enabled,this.#Q)&&(0,n.resolveStaleTime)(this.options.staleTime,this.#Q)===(0,n.resolveStaleTime)(r.staleTime,this.#Q)||this.#H();const o=this.#W();!i||this.#Q===s&&(0,n.resolveEnabled)(this.options.enabled,this.#Q)===(0,n.resolveEnabled)(r.enabled,this.#Q)&&o===this.#A||this.#G(o)}getOptimisticResult(e){const t=this.#c.getQueryCache().build(this.#c,e),r=this.createResult(t,e);return s=this,i=r,!(0,n.shallowEqualObjects)(s.getCurrentResult(),i)&&(this.#l=r,this.#M=this.options,this.#E=this.#Q.state),r;var s,i}getCurrentResult(){return this.#l}trackResult(e,t){const r={};return Object.keys(e).forEach((n=>{Object.defineProperty(r,n,{configurable:!1,enumerable:!0,get:()=>(this.trackProp(n),t?.(n),e[n])})})),r}trackProp(e){this.#U.add(e)}getCurrentQuery(){return this.#Q}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const t=this.#c.defaultQueryOptions(e),r=this.#c.getQueryCache().build(this.#c,t);return r.isFetchingOptimistic=!0,r.fetch().then((()=>this.createResult(r,t)))}fetch(e){return this.#K({...e,cancelRefetch:e.cancelRefetch??!0}).then((()=>(this.updateResult(),this.#l)))}#K(e){this.#$();let t=this.#Q.fetch(this.options,e);return e?.throwOnError||(t=t.catch(n.noop)),t}#H(){this.#N();const e=(0,n.resolveStaleTime)(this.options.staleTime,this.#Q);if(n.isServer||this.#l.isStale||!(0,n.isValidTimeout)(e))return;const t=(0,n.timeUntilStale)(this.#l.dataUpdatedAt,e)+1;this.#D=setTimeout((()=>{this.#l.isStale||this.updateResult()}),t)}#W(){return("function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.#Q):this.options.refetchInterval)??!1}#G(e){this.#L(),this.#A=e,!n.isServer&&!1!==(0,n.resolveEnabled)(this.options.enabled,this.#Q)&&(0,n.isValidTimeout)(this.#A)&&0!==this.#A&&(this.#I=setInterval((()=>{(this.options.refetchIntervalInBackground||i.focusManager.isFocused())&&this.#K()}),this.#A))}#B(){this.#H(),this.#G(this.#W())}#N(){this.#D&&(clearTimeout(this.#D),this.#D=void 0)}#L(){this.#I&&(clearInterval(this.#I),this.#I=void 0)}createResult(e,t){const r=this.#Q,s=this.options,i=this.#l,o=this.#E,u=this.#M,l=e!==r?e.state:this.#_,{state:f}=e;let y,p={...f},m=!1;if(t._optimisticResults){const n=this.hasListeners(),i=!n&&c(e,t),o=n&&d(e,r,t,s);(i||o)&&(p={...p,...(0,a.fetchState)(f.data,e.options)}),"isRestoring"===t._optimisticResults&&(p.fetchStatus="idle")}let{error:b,errorUpdatedAt:v,status:g}=p;if(t.select&&void 0!==p.data)if(i&&p.data===o?.data&&t.select===this.#F)y=this.#T;else try{this.#F=t.select,y=t.select(p.data),y=(0,n.replaceData)(i?.data,y,t),this.#T=y,this.#P=null}catch(e){this.#P=e}else y=p.data;if(void 0!==t.placeholderData&&void 0===y&&"pending"===g){let e;if(i?.isPlaceholderData&&t.placeholderData===u?.placeholderData)e=i.data;else if(e="function"==typeof t.placeholderData?t.placeholderData(this.#x?.state.data,this.#x):t.placeholderData,t.select&&void 0!==e)try{e=t.select(e),this.#P=null}catch(e){this.#P=e}void 0!==e&&(g="success",y=(0,n.replaceData)(i?.data,e,t),m=!0)}this.#P&&(b=this.#P,y=this.#T,v=Date.now(),g="error");const O="fetching"===p.fetchStatus,q="pending"===g,R="error"===g,k=q&&O,S=void 0!==y;return{status:g,fetchStatus:p.fetchStatus,isPending:q,isSuccess:"success"===g,isError:R,isInitialLoading:k,isLoading:k,data:y,dataUpdatedAt:p.dataUpdatedAt,error:b,errorUpdatedAt:v,failureCount:p.fetchFailureCount,failureReason:p.fetchFailureReason,errorUpdateCount:p.errorUpdateCount,isFetched:p.dataUpdateCount>0||p.errorUpdateCount>0,isFetchedAfterMount:p.dataUpdateCount>l.dataUpdateCount||p.errorUpdateCount>l.errorUpdateCount,isFetching:O,isRefetching:O&&!q,isLoadingError:R&&!S,isPaused:"paused"===p.fetchStatus,isPlaceholderData:m,isRefetchError:R&&S,isStale:h(e,t),refetch:this.refetch}}updateResult(e){const t=this.#l,r=this.createResult(this.#Q,this.options);if(this.#E=this.#Q.state,this.#M=this.options,void 0!==this.#E.data&&(this.#x=this.#Q),(0,n.shallowEqualObjects)(r,t))return;this.#l=r;const s={};!1!==e?.listeners&&(()=>{if(!t)return!0;const{notifyOnChangeProps:e}=this.options,r="function"==typeof e?e():e;if("all"===r||!r&&!this.#U.size)return!0;const n=new Set(r??this.#U);return this.options.throwOnError&&n.add("error"),Object.keys(this.#l).some((e=>{const r=e;return this.#l[r]!==t[r]&&n.has(r)}))})()&&(s.listeners=!0),this.#y({...s,...e})}#$(){const e=this.#c.getQueryCache().build(this.#c,this.options);if(e===this.#Q)return;const t=this.#Q;this.#Q=e,this.#_=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#B()}#y(e){s.notifyManager.batch((()=>{e.listeners&&this.listeners.forEach((e=>{e(this.#l)})),this.#c.getQueryCache().notify({query:this.#Q,type:"observerResultsUpdated"})}))}};function c(e,t){return function(e,t){return!1!==(0,n.resolveEnabled)(t.enabled,e)&&void 0===e.state.data&&!("error"===e.state.status&&!1===t.retryOnMount)}(e,t)||void 0!==e.state.data&&l(e,t,t.refetchOnMount)}function l(e,t,r){if(!1!==(0,n.resolveEnabled)(t.enabled,e)){const n="function"==typeof r?r(e):r;return"always"===n||!1!==n&&h(e,t)}return!1}function d(e,t,r,s){return(e!==t||!1===(0,n.resolveEnabled)(s.enabled,e))&&(!r.suspense||"error"!==e.state.status)&&h(e,r)}function h(e,t){return!1!==(0,n.resolveEnabled)(t.enabled,e)&&e.isStaleByTime((0,n.resolveStaleTime)(t.staleTime,e))}},"./node_modules/@tanstack/query-core/build/modern/removable.js":function(e,t,r){r.r(t),r.d(t,{Removable:function(){return s}});var n=r("./node_modules/@tanstack/query-core/build/modern/utils.js"),s=class{#z;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),(0,n.isValidTimeout)(this.gcTime)&&(this.#z=setTimeout((()=>{this.optionalRemove()}),this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(n.isServer?1/0:3e5))}clearGcTimeout(){this.#z&&(clearTimeout(this.#z),this.#z=void 0)}}},"./node_modules/@tanstack/query-core/build/modern/retryer.js":function(e,t,r){r.r(t),r.d(t,{CancelledError:function(){return u},canFetch:function(){return a},createRetryer:function(){return l},isCancelledError:function(){return c}});var n=r("./node_modules/@tanstack/query-core/build/modern/focusManager.js"),s=r("./node_modules/@tanstack/query-core/build/modern/onlineManager.js"),i=r("./node_modules/@tanstack/query-core/build/modern/utils.js");function o(e){return Math.min(1e3*2**e,3e4)}function a(e){return"online"!==(e??"online")||s.onlineManager.isOnline()}var u=class{constructor(e){this.revert=e?.revert,this.silent=e?.silent}};function c(e){return e instanceof u}function l(e){let t,r,c,l=!1,d=0,h=!1;const f=new Promise(((e,t)=>{r=e,c=t})),y=()=>n.focusManager.isFocused()&&("always"===e.networkMode||s.onlineManager.isOnline())&&e.canRun(),p=()=>a(e.networkMode)&&e.canRun(),m=n=>{h||(h=!0,e.onSuccess?.(n),t?.(),r(n))},b=r=>{h||(h=!0,e.onError?.(r),t?.(),c(r))},v=()=>new Promise((r=>{t=e=>{(h||y())&&r(e)},e.onPause?.()})).then((()=>{t=void 0,h||e.onContinue?.()})),g=()=>{if(h)return;let t;const r=0===d?e.initialPromise:void 0;try{t=r??e.fn()}catch(e){t=Promise.reject(e)}Promise.resolve(t).then(m).catch((t=>{if(h)return;const r=e.retry??(i.isServer?0:3),n=e.retryDelay??o,s="function"==typeof n?n(d,t):n,a=!0===r||"number"==typeof r&&dy()?void 0:v())).then((()=>{l?b(t):g()}))):b(t)}))};return{promise:f,cancel:t=>{h||(b(new u(t)),e.abort?.())},continue:()=>(t?.(),f),cancelRetry:()=>{l=!0},continueRetry:()=>{l=!1},canStart:p,start:()=>(p()?g():v().then(g),f)}}},"./node_modules/@tanstack/query-core/build/modern/subscribable.js":function(e,t,r){r.r(t),r.d(t,{Subscribable:function(){return n}});var n=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}}},"./node_modules/@tanstack/query-core/build/modern/utils.js":function(e,t,r){r.r(t),r.d(t,{addToEnd:function(){return k},addToStart:function(){return S},ensureQueryFn:function(){return w},functionalUpdate:function(){return i},hashKey:function(){return f},hashQueryKeyByOptions:function(){return h},isPlainArray:function(){return b},isPlainObject:function(){return v},isServer:function(){return n},isValidTimeout:function(){return o},keepPreviousData:function(){return R},matchMutation:function(){return d},matchQuery:function(){return l},noop:function(){return s},partialMatchKey:function(){return y},replaceData:function(){return q},replaceEqualDeep:function(){return p},resolveEnabled:function(){return c},resolveStaleTime:function(){return u},shallowEqualObjects:function(){return m},skipToken:function(){return C},sleep:function(){return O},timeUntilStale:function(){return a}});var n="undefined"==typeof window||"Deno"in globalThis;function s(){}function i(e,t){return"function"==typeof e?e(t):e}function o(e){return"number"==typeof e&&e>=0&&e!==1/0}function a(e,t){return Math.max(e+(t||0)-Date.now(),0)}function u(e,t){return"function"==typeof e?e(t):e}function c(e,t){return"function"==typeof e?e(t):e}function l(e,t){const{type:r="all",exact:n,fetchStatus:s,predicate:i,queryKey:o,stale:a}=e;if(o)if(n){if(t.queryHash!==h(o,t.options))return!1}else if(!y(t.queryKey,o))return!1;if("all"!==r){const e=t.isActive();if("active"===r&&!e)return!1;if("inactive"===r&&e)return!1}return!("boolean"==typeof a&&t.isStale()!==a||s&&s!==t.state.fetchStatus||i&&!i(t))}function d(e,t){const{exact:r,status:n,predicate:s,mutationKey:i}=e;if(i){if(!t.options.mutationKey)return!1;if(r){if(f(t.options.mutationKey)!==f(i))return!1}else if(!y(t.options.mutationKey,i))return!1}return!(n&&t.state.status!==n||s&&!s(t))}function h(e,t){return(t?.queryKeyHashFn||f)(e)}function f(e){return JSON.stringify(e,((e,t)=>v(t)?Object.keys(t).sort().reduce(((e,r)=>(e[r]=t[r],e)),{}):t))}function y(e,t){return e===t||typeof e==typeof t&&!(!e||!t||"object"!=typeof e||"object"!=typeof t)&&!Object.keys(t).some((r=>!y(e[r],t[r])))}function p(e,t){if(e===t)return e;const r=b(e)&&b(t);if(r||v(e)&&v(t)){const n=r?e:Object.keys(e),s=n.length,i=r?t:Object.keys(t),o=i.length,a=r?[]:{};let u=0;for(let s=0;s{setTimeout(t,e)}))}function q(e,t,r){return"function"==typeof r.structuralSharing?r.structuralSharing(e,t):!1!==r.structuralSharing?p(e,t):t}function R(e){return e}function k(e,t,r=0){const n=[...e,t];return r&&n.length>r?n.slice(1):n}function S(e,t,r=0){const n=[t,...e];return r&&n.length>r?n.slice(0,-1):n}var C=Symbol(),w=(e,t)=>(e.queryFn===C&&console.error(`Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${e.queryHash}'`),!e.queryFn&&t?.initialPromise?()=>t.initialPromise:e.queryFn&&e.queryFn!==C?e.queryFn:()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)))},"./node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js":function(e,t,r){r.r(t),r.d(t,{QueryClientContext:function(){return i},QueryClientProvider:function(){return a},useQueryClient:function(){return o}});var n=r("react"),s=r("./node_modules/react/jsx-runtime.js"),i=n.createContext(void 0),o=e=>{const t=n.useContext(i);if(e)return e;if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},a=({client:e,children:t})=>(n.useEffect((()=>(e.mount(),()=>{e.unmount()})),[e]),(0,s.jsx)(i.Provider,{value:e,children:t}))},"./node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js":function(e,t,r){r.r(t),r.d(t,{QueryErrorResetBoundary:function(){return u},useQueryErrorResetBoundary:function(){return a}});var n=r("react"),s=r("./node_modules/react/jsx-runtime.js");function i(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var o=n.createContext(i()),a=()=>n.useContext(o),u=({children:e})=>{const[t]=n.useState((()=>i()));return(0,s.jsx)(o.Provider,{value:t,children:"function"==typeof e?e(t):e})}},"./node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js":function(e,t,r){r.r(t),r.d(t,{ensurePreventErrorBoundaryRetry:function(){return i},getHasError:function(){return a},useClearResetErrorBoundary:function(){return o}});var n=r("react"),s=r("./node_modules/@tanstack/react-query/build/modern/utils.js"),i=(e,t)=>{(e.suspense||e.throwOnError)&&(t.isReset()||(e.retryOnMount=!1))},o=e=>{n.useEffect((()=>{e.clearReset()}),[e])},a=({result:e,errorResetBoundary:t,throwOnError:r,query:n})=>e.isError&&!t.isReset()&&!e.isFetching&&n&&(0,s.shouldThrowError)(r,[e.error,n])},"./node_modules/@tanstack/react-query/build/modern/isRestoring.js":function(e,t,r){r.r(t),r.d(t,{IsRestoringProvider:function(){return o},useIsRestoring:function(){return i}});var n=r("react"),s=n.createContext(!1),i=()=>n.useContext(s),o=s.Provider},"./node_modules/@tanstack/react-query/build/modern/suspense.js":function(e,t,r){r.r(t),r.d(t,{defaultThrowOnError:function(){return n},ensureStaleTime:function(){return s},fetchOptimistic:function(){return a},shouldSuspend:function(){return o},willFetch:function(){return i}});var n=(e,t)=>void 0===t.state.data,s=e=>{e.suspense&&"number"!=typeof e.staleTime&&(e.staleTime=1e3)},i=(e,t)=>e.isLoading&&e.isFetching&&!t,o=(e,t)=>e?.suspense&&t.isPending,a=(e,t,r)=>t.fetchOptimistic(e).catch((()=>{r.clearReset()}))},"./node_modules/@tanstack/react-query/build/modern/useBaseQuery.js":function(e,t,r){r.r(t),r.d(t,{useBaseQuery:function(){return l}});var n=r("react"),s=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),i=r("./node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js"),o=r("./node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js"),a=r("./node_modules/@tanstack/react-query/build/modern/isRestoring.js"),u=r("./node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js"),c=r("./node_modules/@tanstack/react-query/build/modern/suspense.js");function l(e,t,r){if("object"!=typeof e||Array.isArray(e))throw new Error('Bad argument type. Starting with v5, only the "Object" form is allowed when calling query related functions. Please use the error stack to find the culprit call. More info here: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5#supports-a-single-signature-one-object');const l=(0,o.useQueryClient)(r),d=(0,a.useIsRestoring)(),h=(0,i.useQueryErrorResetBoundary)(),f=l.defaultQueryOptions(e);l.getDefaultOptions().queries?._experimental_beforeQuery?.(f),f._optimisticResults=d?"isRestoring":"optimistic",(0,c.ensureStaleTime)(f),(0,u.ensurePreventErrorBoundaryRetry)(f,h),(0,u.useClearResetErrorBoundary)(h);const[y]=n.useState((()=>new t(l,f))),p=y.getOptimisticResult(f);if(n.useSyncExternalStore(n.useCallback((e=>{const t=d?()=>{}:y.subscribe(s.notifyManager.batchCalls(e));return y.updateResult(),t}),[y,d]),(()=>y.getCurrentResult()),(()=>y.getCurrentResult())),n.useEffect((()=>{y.setOptions(f,{listeners:!1})}),[f,y]),(0,c.shouldSuspend)(f,p))throw(0,c.fetchOptimistic)(f,y,h);if((0,u.getHasError)({result:p,errorResetBoundary:h,throwOnError:f.throwOnError,query:l.getQueryCache().get(f.queryHash)}))throw p.error;return l.getDefaultOptions().queries?._experimental_afterQuery?.(f,p),f.notifyOnChangeProps?p:y.trackResult(p)}},"./node_modules/@tanstack/react-query/build/modern/useInfiniteQuery.js":function(e,t,r){r.r(t),r.d(t,{useInfiniteQuery:function(){return i}});var n=r("./node_modules/@tanstack/query-core/build/modern/infiniteQueryObserver.js"),s=r("./node_modules/@tanstack/react-query/build/modern/useBaseQuery.js");function i(e,t){return(0,s.useBaseQuery)(e,n.InfiniteQueryObserver,t)}},"./node_modules/@tanstack/react-query/build/modern/useMutation.js":function(e,t,r){r.r(t),r.d(t,{useMutation:function(){return u}});var n=r("react"),s=r("./node_modules/@tanstack/query-core/build/modern/mutationObserver.js"),i=r("./node_modules/@tanstack/query-core/build/modern/notifyManager.js"),o=r("./node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js"),a=r("./node_modules/@tanstack/react-query/build/modern/utils.js");function u(e,t){const r=(0,o.useQueryClient)(t),[u]=n.useState((()=>new s.MutationObserver(r,e)));n.useEffect((()=>{u.setOptions(e)}),[u,e]);const c=n.useSyncExternalStore(n.useCallback((e=>u.subscribe(i.notifyManager.batchCalls(e))),[u]),(()=>u.getCurrentResult()),(()=>u.getCurrentResult())),l=n.useCallback(((e,t)=>{u.mutate(e,t).catch(a.noop)}),[u]);if(c.error&&(0,a.shouldThrowError)(u.options.throwOnError,[c.error]))throw c.error;return{...c,mutate:l,mutateAsync:c.mutate}}},"./node_modules/@tanstack/react-query/build/modern/useQuery.js":function(e,t,r){r.r(t),r.d(t,{useQuery:function(){return i}});var n=r("./node_modules/@tanstack/query-core/build/modern/queryObserver.js"),s=r("./node_modules/@tanstack/react-query/build/modern/useBaseQuery.js");function i(e,t){return(0,s.useBaseQuery)(e,n.QueryObserver,t)}},"./node_modules/@tanstack/react-query/build/modern/utils.js":function(e,t,r){function n(e,t){return"function"==typeof e?e(...t):!!e}function s(){}r.r(t),r.d(t,{noop:function(){return s},shouldThrowError:function(){return n}})}},t={};function r(n){var s=t[n];if(void 0!==s)return s.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports}r.d=function(e,t){for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};!function(){r.r(n),r.d(n,{QueryClient:function(){return e.QueryClient},QueryClientProvider:function(){return t.QueryClientProvider},createQueryClient:function(){return a},useInfiniteQuery:function(){return s.useInfiniteQuery},useMutation:function(){return i.useMutation},useQuery:function(){return o.useQuery},useQueryClient:function(){return t.useQueryClient}});var e=r("./node_modules/@tanstack/query-core/build/modern/queryClient.js"),t=r("./node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js"),s=r("./node_modules/@tanstack/react-query/build/modern/useInfiniteQuery.js"),i=r("./node_modules/@tanstack/react-query/build/modern/useMutation.js"),o=r("./node_modules/@tanstack/react-query/build/modern/useQuery.js");function a(){return new e.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1,refetchOnReconnect:!1}}})}}(),(window.elementorV2=window.elementorV2||{}).query=n}(); slotcasino5063 Archives - غرفة Room 11 https://bs.room11.sa/cat/slotcasino5063/ Sat, 06 Jun 2026 00:04:17 +0000 en-US hourly 1 https://wordpress.org/?v=6.9.4 https://bs.room11.sa/wp-content/uploads/2022/07/Room11-Marketing-Agency-logo.svg slotcasino5063 Archives - غرفة Room 11 https://bs.room11.sa/cat/slotcasino5063/ 32 32 Explore the Thrills of the Royal Fortune Casino Platform https://bs.room11.sa/blog/slotcasino5063/explore-the-thrills-of-the-royal-fortune-casino/ Fri, 05 Jun 2026 17:01:58 +0000 https://bs.room11.sa/?p=247593 Explore the Thrills of the Royal Fortune Casino Platform Welcome to the world of online gaming where the charm of casino life meets innovative technology. The Royal Fortune Casino Platform Royal Fortune online casino stands out with its rich selection of games, generous bonuses, and exceptional user experience. This article delves into what makes the […]

The post Explore the Thrills of the Royal Fortune Casino Platform appeared first on غرفة Room 11.

]]>
Explore the Thrills of the Royal Fortune Casino Platform

Explore the Thrills of the Royal Fortune Casino Platform

Welcome to the world of online gaming where the charm of casino life meets innovative technology. The Royal Fortune Casino Platform Royal Fortune online casino stands out with its rich selection of games, generous bonuses, and exceptional user experience. This article delves into what makes the Royal Fortune Casino Platform a premier destination for gaming enthusiasts and casual players alike.

A Rich Variety of Games

The Royal Fortune Casino Platform boasts an extensive library of games that cater to a wide range of tastes. From classic table games to modern video slots, players are sure to find something that piques their interest. Popular options include blackjack, roulette, and poker, all presented in stunning graphics and realistic sound effects. Additionally, the platform frequently updates its game catalog with new releases, ensuring that players always have fresh content to explore.

Slots Galore

Slot enthusiasts will find themselves in paradise within the Royal Fortune Casino. The platform features an impressive array of video slots, each with unique themes, bonus rounds, and payout structures. With titles inspired by mythology, adventure, and popular culture, players can embark on a journey through different worlds while enjoying the chance to win big. Progressive jackpots add an extra layer of excitement, enabling players to chase life-changing prizes.

User Experience and Interface

The user experience on the Royal Fortune Casino Platform is designed to be intuitive and user-friendly. The sleek, modern interface allows for seamless navigation, making it easy for players to access their favorite games, promotions, and account settings. The mobile version of the casino is equally responsive, allowing players to enjoy gaming on the go. Whether you’re on a desktop or a mobile device, the platform ensures a high-quality gameplay experience.

Promotions and Bonuses

No online casino would be complete without enticing promotions, and Royal Fortune Casino certainly delivers. New players are welcomed with generous sign-up bonuses, while regular players can enjoy ongoing promotions that include free spins, cashback offers, and loyalty rewards. These bonuses not only enhance the gaming experience but also increase the chances of winning, allowing players to maximize their gameplay.

Explore the Thrills of the Royal Fortune Casino Platform

Safe and Secure Gaming Environment

Player safety and security are paramount at the Royal Fortune Casino Platform. The casino employs advanced encryption technology to safeguard personal and financial information. Additionally, the platform is licensed and regulated, providing players with peace of mind that they are engaging in fair and responsible gaming practices.

Reliable Payment Options

Royal Fortune Casino offers a variety of secure payment methods for deposits and withdrawals, catering to players’ preferences. Options typically include credit and debit cards, e-wallets, and bank transfers. The platform ensures that all transactions are processed swiftly and securely, allowing players to focus on what they enjoy most—gaming.

Customer Support

Royal Fortune Casino takes pride in its commitment to providing excellent customer support. Players can reach out to the support team through various channels, including live chat, email, and telephone. The support team is knowledgeable and responsive, ensuring that any queries or issues are addressed promptly, allowing for a smooth gaming experience.

Why Choose Royal Fortune Casino Platform?

In a crowded online gaming market, choosing the right casino can be a daunting task. However, the Royal Fortune Casino Platform stands out for several reasons:

  • Extensive Game Selection: A diverse range of games ensures there is something for everyone.
  • Attractive Bonuses: Competitive promotions enhance player enjoyment and winning potential.
  • User-Friendly Interface: An intuitive platform that caters to both new and seasoned players.
  • Strong Security: Comprehensive measures to protect player information.
  • Exceptional Customer Service: Reliable support available when needed.

Conclusion

With its commitment to providing a thrilling and secure gaming experience, the Royal Fortune Casino Platform is an excellent choice for anyone looking to dive into the excitement of online gambling. From a rich variety of games to attractive bonuses and reliable customer support, the platform ensures that players enjoy their time spent gaming. So, why wait? Explore the world of Royal Fortune Casino today and embark on your next gaming adventure!

The post Explore the Thrills of the Royal Fortune Casino Platform appeared first on غرفة Room 11.

]]>
247593
Exploring Fat Pirate Casino UK Your Treasure Trove of Online Gaming https://bs.room11.sa/blog/marketing/exploring-fat-pirate-casino-uk-your-treasure-trove/ Fri, 05 Jun 2026 17:01:57 +0000 https://bs.room11.sa/?p=247571 Welcome to the world of online gaming and the exciting realm of Fat Pirate Casino UK casino Fat Pirate. For players in the UK, Fat Pirate Casino offers an unforgettable gaming experience filled with an endless selection of games, incredible bonuses, and thrilling adventures on the high seas. In this article, we’ll discover everything you […]

The post Exploring Fat Pirate Casino UK Your Treasure Trove of Online Gaming appeared first on غرفة Room 11.

]]>
Exploring Fat Pirate Casino UK Your Treasure Trove of Online Gaming

Welcome to the world of online gaming and the exciting realm of Fat Pirate Casino UK casino Fat Pirate. For players in the UK, Fat Pirate Casino offers an unforgettable gaming experience filled with an endless selection of games, incredible bonuses, and thrilling adventures on the high seas. In this article, we’ll discover everything you need to know about Fat Pirate Casino UK, including game offerings, bonuses, payment methods, customer support, and tips for making the most of your gaming experience.

Introduction to Fat Pirate Casino UK

Fat Pirate Casino has gained a reputation for being a top-notch online casino in the UK. With its engaging pirate-themed interface, it transports players to a world of swashbuckling adventures. The casino offers a wide array of games, including slots, table games, and live dealer options. Whether you’re an experienced gambler or a newcomer, Fat Pirate Casino has something for everyone.

Game Selection

One of the highlights of Fat Pirate Casino is its extensive game library. Players can enjoy a variety of slots, progressive jackpots, table games, and live dealer games. Let’s take a closer look at what you can expect when you dive into the gaming treasure chest.

Slots

Fat Pirate Casino hosts an impressive collection of slot games from renowned software providers such as NetEnt, Microgaming, and Play’n GO. From classic fruit machines to modern video slots, there’s a game to match every taste. Some popular titles include “Book of Dead,” “Starburst,” and “Gonzo’s Quest.” With eye-catching graphics, immersive soundtracks, and exciting bonus features, these slots ensure an exhilarating gaming experience.

Table Games

If you prefer games that require strategy and skill, you’ll find an excellent selection of table games at Fat Pirate Casino. Classic favorites such as blackjack, roulette, baccarat, and poker are available in various versions. Whether you prefer traditional gameplay or unique variants, there’s something for every table game enthusiast.

Live Dealer Games

For players seeking an authentic casino experience from the comfort of their home, the live dealer section offers real-time gaming with professional dealers. Players can interact with the dealers and other participants through a live video stream, creating an immersive atmosphere akin to that of a brick-and-mortar casino. Games like live blackjack, live roulette, and live baccarat are just a few options available here.

Exploring Fat Pirate Casino UK Your Treasure Trove of Online Gaming

Bonuses and Promotions

Fat Pirate Casino is known for its generous bonuses and promotions designed to enhance your gaming experience. New players are greeted with a welcome bonus package, which typically includes a match bonus on the first deposit and free spins on selected slots. Additionally, loyal players can take advantage of ongoing promotions, including reload bonuses, cashback offers, and free spins, ensuring that the excitement never ends.

Payment Methods

Fat Pirate Casino provides a variety of secure payment options for both deposits and withdrawals. Players can choose from popular methods such as credit and debit cards, e-wallets like PayPal and Neteller, and more. Deposits are usually processed instantly, allowing players to jump right into the action. Withdrawals are implemented efficiently, ensuring that players can access their winnings without unnecessary delays.

Customer Support

At Fat Pirate Casino, player satisfaction is a top priority. The casino offers customer support through multiple channels, including live chat, email, and an extensive FAQ section. The support team is available 24/7 to assist players with any queries or concerns they may have, ensuring a seamless gaming experience.

Mobile Gaming

In today’s fast-paced world, mobile gaming is more important than ever. Fat Pirate Casino recognizes this trend and offers a fully optimized mobile platform that allows players to enjoy their favorite games on smartphones and tablets. The mobile casino retains the same high-quality graphics and features as the desktop version, providing a smooth and user-friendly experience.

Responsible Gaming

Fat Pirate Casino is committed to promoting responsible gaming among its players. The casino provides various tools and resources to help players manage their gaming habits effectively. Players have the option to set deposit limits, take breaks, or even self-exclude if necessary. The casino also encourages players to seek assistance if they feel their gambling is becoming a problem.

Conclusion

In conclusion, Fat Pirate Casino UK is a fantastic destination for online gaming enthusiasts looking for a thrilling and rewarding experience. With an extensive game selection, generous bonuses, secure payment methods, and excellent customer support, players are sure to find everything they need for a successful gaming adventure. Whether you’re here for the slots, live dealer games, or just to enjoy the pirate-themed atmosphere, the treasure trove of Fat Pirate Casino awaits you. Start your journey today and embark on an adventure filled with excitement, fun, and the chance to strike it rich!

The post Exploring Fat Pirate Casino UK Your Treasure Trove of Online Gaming appeared first on غرفة Room 11.

]]>
247571