vendor: 6,120 bytes, lines 1-9
1var Fp=e=>{throw TypeError(e)};var Uu=(e,t,n)=>t.has(e)||Fp("Cannot "+n);var R=(e,t,n)=>(Uu(e,t,"read from private field"),n?n.call(e):t.get(e)),re=(e,t,n)=>t.has(e)?Fp("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),Z=(e,t,n,r)=>(Uu(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),Ze=(e,t,n)=>(Uu(e,t,"access private method"),n);var qo=(e,t,n,r)=>({set _(i){Z(e,t,i,n)},get _(){return R(e,t,r)}});function L1(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const i in r)if(i!=="default"&&!(i in e)){const s=Object.getOwnPropertyDescriptor(r,i);s&&Object.defineProperty(e,i,s.get?s:{enumerable:!0,get:()=>r[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const a of s.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(i){if(i.ep)return;i.ep=!0;const s=n(i);fetch(i.href,s)}})();function $w(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Kw={exports:{}},Yc={},Gw={exports:{}},ee={};/** 2 * @license React 3 * react.production.min.js 4 * 5 * Copyright (c) Facebook, Inc. and its affiliates. 6 * 7 * This source code is licensed under the MIT license found in the 8 * LICENSE file in the root directory of this source tree. 9 */var Po=Symbol.for("react.element"),F1=Symbol.for("react.portal"),B1=Symbol.for("react.fragment"),U1=Symbol.for("react.strict_mode"),V1=Symbol.for("react.profiler"),W1=Symbol.for("react.provider"),$1=Symbol.for("react.context"),K1=Symbol.for("react.forward_ref"),G1=Symbol.for("react.suspense"),H1=Symbol.for("react.memo"),q1=Symbol.for("react.lazy"),Bp=Symbol.iterator;function J1(e){return e===null||typeof e!="object"?null:(e=Bp&&e[Bp]||e["@@iterator"],typeof e=="function"?e:null)}var Hw={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},qw=Object.assign,Jw={};function Hs(e,t,n){this.props=e,this.context=t,this.refs=Jw,this.updater=n||Hw}Hs.prototype.isReactComponent={};Hs.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)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")};Hs.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Zw(){}Zw.prototype=Hs.prototype;function Uf(e,t,n){this.props=e,this.context=t,this.refs=Jw,this.updater=n||Hw}var Vf=Uf.prototype=new Zw;Vf.constructor=Uf;qw(Vf,Hs.prototype);Vf.isPureReactComponent=!0;var Up=Array.isArray,Yw=Object.prototype.hasOwnProperty,Wf={current:null},Qw={key:!0,ref:!0,__self:!0,__source:!0};function Xw(e,t,n){var r,i={},s=null,a=null;if(t!=null)for(r in t.ref!==void 0&&(a=t.ref),t.key!==void 0&&(s=""+t.key),t)Yw.call(t,r)&&!Qw.hasOwnProperty(r)&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var l=Array(o),c=0;c<o;c++)l[c]=arguments[c+2];i.children=l}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return{$$typeof:Po,type:e,key:s,ref:a,props:i,_owner:Wf.current}}function Z1(e,t){return{$$typeof:Po,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function $f(e){return typeof e=="object"&&e!==null&&e.$$typeof===Po}function Y1(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var Vp=/\/+/g;function Vu(e,t){return typeof e=="object"&&e!==null&&e.key!=null?Y1(""+e.key):t.toString(36)}function Ml(e,t,n,r,i){var s=typeof e;(s==="undefined"||s==="boolean")&&(e=null);var a=!1;if(e===null)a=!0;else switch(s){case"string":case"number":a=!0;break;case"object":switch(e.$$typeof){case Po:case F1:a=!0}}if(a)return a=e,i=i(a),e=r===""?"."+Vu(a,0):r,Up(i)?(n="",e!=null&&(n=e.replace(Vp,"$&/")+"/"),Ml(i,t,n,"",function(c){return c})):i!=null&&($f(i)&&(i=Z1(i,n+(!i.key||a&&a.key===i.key?"":(""+i.key).replace(Vp,"$&/")+"/")+e)),t.push(i)),1;if(a=0,r=r===""?".":r+":",Up(e))for(var o=0;o<e.length;o++){s=e[o];var l=r+Vu(s,o);a+=Ml(s,t,n,l,i)}else if(l=J1(e),typeof l=="function")for(e=l.call(e),o=0;!(s=e.next()).done;)s=s.value,l=r+Vu(s,o++),a+=Ml(s,t,n,l,i);else if(s==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return a}function Jo(e,t,n){if(e==null)return e;var r=[],i=0;return Ml(e,r,"","",function(s){return t.call(n,s,i++)}),r}function Q1(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var mt={current:null},Il={transition:null},X1={ReactCurrentDispatcher:mt,ReactCurrentBatchConfig:Il,ReactCurrentOwner:Wf};function eb(){throw Error("act(...) is not supported in production builds of React.")}ee.Children={map:Jo,forEach:function(e,t,n){Jo(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return Jo(e,function(){t++}),t},toArray:function(e){return Jo(e,function(t){return t})||[]},only:function(e){if(!$f(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};ee.Component=Hs;ee.Fragment=B1;ee.Profiler=V1;ee.PureComponent=Uf;ee.StrictMode=U1;ee.Suspense=G1;
vendor: 9,017 bytes, lines 9-33
9ee.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=X1;ee.act=eb;ee.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=qw({},e.props),i=e.key,s=e.ref,a=e._owner;if(t!=null){if(t.ref!==void 0&&(s=t.ref,a=Wf.current),t.key!==void 0&&(i=""+t.key),e.type&&e.type.defaultProps)var o=e.type.defaultProps;for(l in t)Yw.call(t,l)&&!Qw.hasOwnProperty(l)&&(r[l]=t[l]===void 0&&o!==void 0?o[l]:t[l])}var l=arguments.length-2;if(l===1)r.children=n;else if(1<l){o=Array(l);for(var c=0;c<l;c++)o[c]=arguments[c+2];r.children=o}return{$$typeof:Po,type:e.type,key:i,ref:s,props:r,_owner:a}};ee.createContext=function(e){return e={$$typeof:$1,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:W1,_context:e},e.Consumer=e};ee.createElement=Xw;ee.createFactory=function(e){var t=Xw.bind(null,e);return t.type=e,t};ee.createRef=function(){return{current:null}};ee.forwardRef=function(e){return{$$typeof:K1,render:e}};ee.isValidElement=$f;ee.lazy=function(e){return{$$typeof:q1,_payload:{_status:-1,_result:e},_init:Q1}};ee.memo=function(e,t){return{$$typeof:H1,type:e,compare:t===void 0?null:t}};ee.startTransition=function(e){var t=Il.transition;Il.transition={};try{e()}finally{Il.transition=t}};ee.unstable_act=eb;ee.useCallback=function(e,t){return mt.current.useCallback(e,t)};ee.useContext=function(e){return mt.current.useContext(e)};ee.useDebugValue=function(){};ee.useDeferredValue=function(e){return mt.current.useDeferredValue(e)};ee.useEffect=function(e,t){return mt.current.useEffect(e,t)};ee.useId=function(){return mt.current.useId()};ee.useImperativeHandle=function(e,t,n){return mt.current.useImperativeHandle(e,t,n)};ee.useInsertionEffect=function(e,t){return mt.current.useInsertionEffect(e,t)};ee.useLayoutEffect=function(e,t){return mt.current.useLayoutEffect(e,t)};ee.useMemo=function(e,t){return mt.current.useMemo(e,t)};ee.useReducer=function(e,t,n){return mt.current.useReducer(e,t,n)};ee.useRef=function(e){return mt.current.useRef(e)};ee.useState=function(e){return mt.current.useState(e)};ee.useSyncExternalStore=function(e,t,n){return mt.current.useSyncExternalStore(e,t,n)};ee.useTransition=function(){return mt.current.useTransition()};ee.version="18.3.1";Gw.exports=ee;var k=Gw.exports;const N=$w(k),Kf=L1({__proto__:null,default:N},[k]);/** 10 * @license React 11 * react-jsx-runtime.production.min.js 12 * 13 * Copyright (c) Facebook, Inc. and its affiliates. 14 * 15 * This source code is licensed under the MIT license found in the 16 * LICENSE file in the root directory of this source tree. 17 */var eT=k,tT=Symbol.for("react.element"),nT=Symbol.for("react.fragment"),rT=Object.prototype.hasOwnProperty,iT=eT.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,sT={key:!0,ref:!0,__self:!0,__source:!0};function tb(e,t,n){var r,i={},s=null,a=null;n!==void 0&&(s=""+n),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(a=t.ref);for(r in t)rT.call(t,r)&&!sT.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)i[r]===void 0&&(i[r]=t[r]);return{$$typeof:tT,type:e,key:s,ref:a,props:i,_owner:iT.current}}Yc.Fragment=nT;Yc.jsx=tb;Yc.jsxs=tb;Kw.exports=Yc;var u=Kw.exports,nb={exports:{}},Dt={},rb={exports:{}},ib={};/** 18 * @license React 19 * scheduler.production.min.js 20 * 21 * Copyright (c) Facebook, Inc. and its affiliates. 22 * 23 * This source code is licensed under the MIT license found in the 24 * LICENSE file in the root directory of this source tree. 25 */(function(e){function t(P,j){var O=P.length;P.push(j);e:for(;0<O;){var G=O-1>>>1,$=P[G];if(0<i($,j))P[G]=j,P[O]=$,O=G;else break e}}function n(P){return P.length===0?null:P[0]}function r(P){if(P.length===0)return null;var j=P[0],O=P.pop();if(O!==j){P[0]=O;e:for(var G=0,$=P.length,X=$>>>1;G<X;){var te=2*(G+1)-1,Ce=P[te],Je=te+1,ie=P[Je];if(0>i(Ce,O))Je<$&&0>i(ie,Ce)?(P[G]=ie,P[Je]=O,G=Je):(P[G]=Ce,P[te]=O,G=te);else if(Je<$&&0>i(ie,O))P[G]=ie,P[Je]=O,G=Je;else break e}}return j}function i(P,j){var O=P.sortIndex-j.sortIndex;return O!==0?O:P.id-j.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;e.unstable_now=function(){return s.now()}}else{var a=Date,o=a.now();e.unstable_now=function(){return a.now()-o}}var l=[],c=[],d=1,h=null,f=3,m=!1,w=!1,p=!1,b=typeof setTimeout=="function"?setTimeout:null,v=typeof clearTimeout=="function"?clearTimeout:null,g=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function y(P){for(var j=n(c);j!==null;){if(j.callback===null)r(c);else if(j.startTime<=P)r(c),j.sortIndex=j.expirationTime,t(l,j);else break;j=n(c)}}function x(P){if(p=!1,y(P),!w)if(n(l)!==null)w=!0,V(E);else{var j=n(c);j!==null&&q(x,j.startTime-P)}}function E(P,j){w=!1,p&&(p=!1,v(A),A=-1),m=!0;var O=f;try{for(y(j),h=n(l);h!==null&&(!(h.expirationTime>j)||P&&!I());){var G=h.callback;if(typeof G=="function"){h.callback=null,f=h.priorityLevel;var $=G(h.expirationTime<=j);j=e.unstable_now(),typeof $=="function"?h.callback=$:h===n(l)&&r(l),y(j)}else r(l);h=n(l)}if(h!==null)var X=!0;else{var te=n(c);te!==null&&q(x,te.startTime-j),X=!1}return X}finally{h=null,f=O,m=!1}}var T=!1,S=null,A=-1,_=5,C=-1;function I(){return!(e.unstable_now()-C<_)}function D(){if(S!==null){var P=e.unstable_now();C=P;var j=!0;try{j=S(!0,P)}finally{j?U():(T=!1,S=null)}}else T=!1}var U;if(typeof g=="function")U=function(){g(D)};else if(typeof MessageChannel<"u"){var M=new MessageChannel,H=M.port2;M.port1.onmessage=D,U=function(){H.postMessage(null)}}else U=function(){b(D,0)};function V(P){S=P,T||(T=!0,U())}function q(P,j){A=b(function(){P(e.unstable_now())},j)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(P){P.callback=null},e.unstable_continueExecution=function(){w||m||(w=!0,V(E))},e.unstable_forceFrameRate=function(P){0>P||125<P?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):_=0<P?Math.floor(1e3/P):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_getFirstCallbackNode=function(){return n(l)},e.unstable_next=function(P){switch(f){case 1:case 2:case 3:var j=3;break;default:j=f}var O=f;f=j;try{return P()}finally{f=O}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(P,j){switch(P){case 1:case 2:case 3:case 4:case 5:break;default:P=3}var O=f;f=P;try{return j()}finally{f=O}},e.unstable_scheduleCallback=function(P,j,O){var G=e.unstable_now();switch(typeof O=="object"&&O!==null?(O=O.delay,O=typeof O=="number"&&0<O?G+O:G):O=G,P){case 1:var $=-1;break;case 2:$=250;break;case 5:$=1073741823;break;case 4:$=1e4;break;default:$=5e3}return $=O+$,P={id:d++,callback:j,priorityLevel:P,startTime:O,expirationTime:$,sortIndex:-1},O>G?(P.sortIndex=O,t(c,P),n(l)===null&&P===n(c)&&(p?(v(A),A=-1):p=!0,q(x,O-G))):(P.sortIndex=$,t(l,P),w||m||(w=!0,V(E))),P},e.unstable_shouldYield=I,e.unstable_wrapCallback=function(P){var j=f;return function(){var O=f;f=j;try{return P.apply(this,arguments)}finally{f=O}}}})(ib);rb.exports=ib;var aT=rb.exports;/** 26 * @license React 27 * react-dom.production.min.js 28 * 29 * Copyright (c) Facebook, Inc. and its affiliates. 30 * 31 * This source code is licensed under the MIT license found in the 32 * LICENSE file in the root directory of this source tree. 33 */var oT=k,zt=aT;function z(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 sb=new Set,Ka={};function zi(e,t){Ms(e,t),Ms(e+"Capture",t)}function Ms(e,t){for(Ka[e]=t,e=0;e<t.length;e++)sb.add(t[e])}var qn=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Zd=Object.prototype.hasOwnProperty,lT=/^[: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]*$/,Wp={},$p={};function cT(e){return Zd.call($p,e)?!0:Zd.call(Wp,e)?!1:lT.test(e)?$p[e]=!0:(Wp[e]=!0,!1)}function uT(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function dT(e,t,n,r){if(t===null||typeof t>"u"||uT(e,t,n,r))return!0;
vendor: 5,200 bytes, lines 33-34
33if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function pt(e,t,n,r,i,s,a){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=a}var He={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){He[e]=new pt(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];He[t]=new pt(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){He[e]=new pt(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){He[e]=new pt(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){He[e]=new pt(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){He[e]=new pt(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){He[e]=new pt(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){He[e]=new pt(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){He[e]=new pt(e,5,!1,e.toLowerCase(),null,!1,!1)});var Gf=/[\-:]([a-z])/g;function Hf(e){return e[1].toUpperCase()}"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(Gf,Hf);He[t]=new pt(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(Gf,Hf);He[t]=new pt(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(Gf,Hf);He[t]=new pt(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){He[e]=new pt(e,1,!1,e.toLowerCase(),null,!1,!1)});He.xlinkHref=new pt("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){He[e]=new pt(e,1,!1,e.toLowerCase(),null,!0,!0)});function qf(e,t,n,r){var i=He.hasOwnProperty(t)?He[t]:null;(i!==null?i.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(dT(t,n,i,r)&&(n=null),r||i===null?cT(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):i.mustUseProperty?e[i.propertyName]=n===null?i.type===3?!1:"":n:(t=i.attributeName,r=i.attributeNamespace,n===null?e.removeAttribute(t):(i=i.type,n=i===3||i===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var tr=oT.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,Zo=Symbol.for("react.element"),ts=Symbol.for("react.portal"),ns=Symbol.for("react.fragment"),Jf=Symbol.for("react.strict_mode"),Yd=Symbol.for("react.profiler"),ab=Symbol.for("react.provider"),ob=Symbol.for("react.context"),Zf=Symbol.for("react.forward_ref"),Qd=Symbol.for("react.suspense"),Xd=Symbol.for("react.suspense_list"),Yf=Symbol.for("react.memo"),gr=Symbol.for("react.lazy"),lb=Symbol.for("react.offscreen"),Kp=Symbol.iterator;function la(e){return e===null||typeof e!="object"?null:(e=Kp&&e[Kp]||e["@@iterator"],typeof e=="function"?e:null)}var be=Object.assign,Wu;function ka(e){if(Wu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Wu=t&&t[1]||""}return` 34`+Wu+e}var $u=!1;function Ku(e,t){if(!e||$u)return"";$u=!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()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var r=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){r=c}e.call(t.prototype)}else{try{throw Error()}catch(c){r=c}e()}}
vendor: 18,177 bytes, lines 34-37
34catch(c){if(c&&r&&typeof c.stack=="string"){for(var i=c.stack.split(` 35`),s=r.stack.split(` 36`),a=i.length-1,o=s.length-1;1<=a&&0<=o&&i[a]!==s[o];)o--;for(;1<=a&&0<=o;a--,o--)if(i[a]!==s[o]){if(a!==1||o!==1)do if(a--,o--,0>o||i[a]!==s[o]){var l=` 37`+i[a].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}while(1<=a&&0<=o);break}}}finally{$u=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?ka(e):""}function hT(e){switch(e.tag){case 5:return ka(e.type);case 16:return ka("Lazy");case 13:return ka("Suspense");case 19:return ka("SuspenseList");case 0:case 2:case 15:return e=Ku(e.type,!1),e;case 11:return e=Ku(e.type.render,!1),e;case 1:return e=Ku(e.type,!0),e;default:return""}}function eh(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case ns:return"Fragment";case ts:return"Portal";case Yd:return"Profiler";case Jf:return"StrictMode";case Qd:return"Suspense";case Xd:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case ob:return(e.displayName||"Context")+".Consumer";case ab:return(e._context.displayName||"Context")+".Provider";case Zf:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Yf:return t=e.displayName||null,t!==null?t:eh(e.type)||"Memo";case gr:t=e._payload,e=e._init;try{return eh(e(t))}catch{}}return null}function fT(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=t.render,e=e.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 eh(t);case 8:return t===Jf?"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(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Fr(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function cb(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function mT(e){var t=cb(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,s=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(a){r=""+a,s.call(this,a)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(a){r=""+a},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Yo(e){e._valueTracker||(e._valueTracker=mT(e))}function ub(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=cb(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function oc(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function th(e,t){var n=t.checked;return be({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Gp(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Fr(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function db(e,t){t=t.checked,t!=null&&qf(e,"checked",t,!1)}function nh(e,t){db(e,t);var n=Fr(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?rh(e,t.type,n):t.hasOwnProperty("defaultValue")&&rh(e,t.type,Fr(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Hp(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function rh(e,t,n){(t!=="number"||oc(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var xa=Array.isArray;function vs(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t["$"+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty("$"+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Fr(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function ih(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(z(91));return be({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function qp(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(z(92));if(xa(n)){if(1<n.length)throw Error(z(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Fr(n)}}function hb(e,t){var n=Fr(t.value),r=Fr(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function Jp(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function fb(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 sh(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?fb(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Qo,mb=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,i){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,i)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(Qo=Qo||document.createElement("div"),Qo.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Qo.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Ga(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var _a={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},pT=["Webkit","ms","Moz","O"];Object.keys(_a).forEach(function(e){pT.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),_a[t]=_a[e]})});function pb(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||_a.hasOwnProperty(e)&&_a[e]?(""+t).trim():t+"px"}function gb(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=pb(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var gT=be({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 ah(e,t){if(t){if(gT[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(z(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(z(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(z(61))}if(t.style!=null&&typeof t.style!="object")throw Error(z(62))}}function oh(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";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 lh=null;function Qf(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ch=null,ys=null,ws=null;function Zp(e){if(e=zo(e)){if(typeof ch!="function")throw Error(z(280));var t=e.stateNode;t&&(t=nu(t),ch(e.stateNode,e.type,t))}}function vb(e){ys?ws?ws.push(e):ws=[e]:ys=e}function yb(){if(ys){var e=ys,t=ws;if(ws=ys=null,Zp(e),t)for(e=0;e<t.length;e++)Zp(t[e])}}function wb(e,t){return e(t)}function bb(){}var Gu=!1;function kb(e,t,n){if(Gu)return e(t,n);Gu=!0;try{return wb(e,t,n)}finally{Gu=!1,(ys!==null||ws!==null)&&(bb(),yb())}}function Ha(e,t){var n=e.stateNode;if(n===null)return null;var r=nu(n);if(r===null)return null;n=r[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":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(z(231,t,typeof n));return n}var uh=!1;if(qn)try{var ca={};Object.defineProperty(ca,"passive",{get:function(){uh=!0}}),window.addEventListener("test",ca,ca),window.removeEventListener("test",ca,ca)}catch{uh=!1}function vT(e,t,n,r,i,s,a,o,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(d){this.onError(d)}}var Pa=!1,lc=null,cc=!1,dh=null,yT={onError:function(e){Pa=!0,lc=e}};function wT(e,t,n,r,i,s,a,o,l){Pa=!1,lc=null,vT.apply(yT,arguments)}function bT(e,t,n,r,i,s,a,o,l){if(wT.apply(this,arguments),Pa){if(Pa){var c=lc;Pa=!1,lc=null}else throw Error(z(198));cc||(cc=!0,dh=c)}}function Di(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function xb(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function Yp(e){if(Di(e)!==e)throw Error(z(188))}function kT(e){var t=e.alternate;if(!t){if(t=Di(e),t===null)throw Error(z(188));return t!==e?null:e}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var s=i.alternate;if(s===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===s.child){for(s=i.child;s;){if(s===n)return Yp(i),e;if(s===r)return Yp(i),t;s=s.sibling}throw Error(z(188))}if(n.return!==r.return)n=i,r=s;else{for(var a=!1,o=i.child;o;){if(o===n){a=!0,n=i,r=s;break}if(o===r){a=!0,r=i,n=s;break}o=o.sibling}if(!a){for(o=s.child;o;){if(o===n){a=!0,n=s,r=i;break}if(o===r){a=!0,r=s,n=i;break}o=o.sibling}if(!a)throw Error(z(189))}}if(n.alternate!==r)throw Error(z(190))}if(n.tag!==3)throw Error(z(188));return n.stateNode.current===n?e:t}function Sb(e){return e=kT(e),e!==null?Eb(e):null}function Eb(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=Eb(e);if(t!==null)return t;e=e.sibling}return null}var Tb=zt.unstable_scheduleCallback,Qp=zt.unstable_cancelCallback,xT=zt.unstable_shouldYield,ST=zt.unstable_requestPaint,Ae=zt.unstable_now,ET=zt.unstable_getCurrentPriorityLevel,Xf=zt.unstable_ImmediatePriority,Ab=zt.unstable_UserBlockingPriority,uc=zt.unstable_NormalPriority,TT=zt.unstable_LowPriority,Cb=zt.unstable_IdlePriority,Qc=null,Pn=null;function AT(e){if(Pn&&typeof Pn.onCommitFiberRoot=="function")try{Pn.onCommitFiberRoot(Qc,e,void 0,(e.current.flags&128)===128)}catch{}}var ln=Math.clz32?Math.clz32:PT,CT=Math.log,_T=Math.LN2;function PT(e){return e>>>=0,e===0?32:31-(CT(e)/_T|0)|0}var Xo=64,el=4194304;function Sa(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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function dc(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,s=e.pingedLanes,a=n&268435455;if(a!==0){var o=a&~i;o!==0?r=Sa(o):(s&=a,s!==0&&(r=Sa(s)))}else a=n&~i,a!==0?r=Sa(a):s!==0&&(r=Sa(s));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,s=t&-t,i>=s||i===16&&(s&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-ln(t),i=1<<n,r|=e[n],t&=~i;return r}function jT(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;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function RT(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,s=e.pendingLanes;0<s;){var a=31-ln(s),o=1<<a,l=i[a];l===-1?(!(o&n)||o&r)&&(i[a]=jT(o,t)):l<=t&&(e.expiredLanes|=o),s&=~o}}function hh(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function _b(){var e=Xo;return Xo<<=1,!(Xo&4194240)&&(Xo=64),e}function Hu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function jo(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-ln(t),e[t]=n}function zT(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 r=e.eventTimes;for(e=e.expirationTimes;0<n;){var i=31-ln(n),s=1<<i;t[i]=0,r[i]=-1,e[i]=-1,n&=~s}}function em(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-ln(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}var se=0;function Pb(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var jb,tm,Rb,zb,Db,fh=!1,tl=[],Rr=null,zr=null,Dr=null,qa=new Map,Ja=new Map,yr=[],DT="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 Xp(e,t){switch(e){case"focusin":case"focusout":Rr=null;break;case"dragenter":case"dragleave":zr=null;break;case"mouseover":case"mouseout":Dr=null;break;case"pointerover":case"pointerout":qa.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Ja.delete(t.pointerId)}}function ua(e,t,n,r,i,s){return e===null||e.nativeEvent!==s?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:s,targetContainers:[i]},t!==null&&(t=zo(t),t!==null&&tm(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function NT(e,t,n,r,i){switch(t){case"focusin":return Rr=ua(Rr,e,t,n,r,i),!0;case"dragenter":return zr=ua(zr,e,t,n,r,i),!0;case"mouseover":return Dr=ua(Dr,e,t,n,r,i),!0;case"pointerover":var s=i.pointerId;return qa.set(s,ua(qa.get(s)||null,e,t,n,r,i)),!0;case"gotpointercapture":return s=i.pointerId,Ja.set(s,ua(Ja.get(s)||null,e,t,n,r,i)),!0}return!1}function Nb(e){var t=oi(e.target);if(t!==null){var n=Di(t);if(n!==null){if(t=n.tag,t===13){if(t=xb(n),t!==null){e.blockedOn=t,Db(e.priority,function(){Rb(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ol(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=mh(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);lh=r,n.target.dispatchEvent(r),lh=null}else return t=zo(n),t!==null&&tm(t),e.blockedOn=n,!1;t.shift()}return!0}function eg(e,t,n){Ol(e)&&n.delete(t)}function MT(){fh=!1,Rr!==null&&Ol(Rr)&&(Rr=null),zr!==null&&Ol(zr)&&(zr=null),Dr!==null&&Ol(Dr)&&(Dr=null),qa.forEach(eg),Ja.forEach(eg)}function da(e,t){e.blockedOn===t&&(e.blockedOn=null,fh||(fh=!0,zt.unstable_scheduleCallback(zt.unstable_NormalPriority,MT)))}function Za(e){function t(i){return da(i,e)}if(0<tl.length){da(tl[0],e);for(var n=1;n<tl.length;n++){var r=tl[n];r.blockedOn===e&&(r.blockedOn=null)}}for(Rr!==null&&da(Rr,e),zr!==null&&da(zr,e),Dr!==null&&da(Dr,e),qa.forEach(t),Ja.forEach(t),n=0;n<yr.length;n++)r=yr[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<yr.length&&(n=yr[0],n.blockedOn===null);)Nb(n),n.blockedOn===null&&yr.shift()}var bs=tr.ReactCurrentBatchConfig,hc=!0;function IT(e,t,n,r){var i=se,s=bs.transition;bs.transition=null;try{se=1,nm(e,t,n,r)}finally{se=i,bs.transition=s}}function OT(e,t,n,r){var i=se,s=bs.transition;bs.transition=null;try{se=4,nm(e,t,n,r)}finally{se=i,bs.transition=s}}function nm(e,t,n,r){if(hc){var i=mh(e,t,n,r);if(i===null)rd(e,t,r,fc,n),Xp(e,r);else if(NT(i,e,t,n,r))r.stopPropagation();else if(Xp(e,r),t&4&&-1<DT.indexOf(e)){for(;i!==null;){var s=zo(i);if(s!==null&&jb(s),s=mh(e,t,n,r),s===null&&rd(e,t,r,fc,n),s===i)break;i=s}i!==null&&r.stopPropagation()}else rd(e,t,r,null,n)}}var fc=null;function mh(e,t,n,r){if(fc=null,e=Qf(r),e=oi(e),e!==null)if(t=Di(e),t===null)e=null;else if(n=t.tag,n===13){if(e=xb(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return fc=e,null}
vendor: 10,401 bytes, line 37
37function Mb(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(ET()){case Xf:return 1;case Ab:return 4;case uc:case TT:return 16;case Cb:return 536870912;default:return 16}default:return 16}}var Cr=null,rm=null,Ll=null;function Ib(){if(Ll)return Ll;var e,t=rm,n=t.length,r,i="value"in Cr?Cr.value:Cr.textContent,s=i.length;for(e=0;e<n&&t[e]===i[e];e++);var a=n-e;for(r=1;r<=a&&t[n-r]===i[s-r];r++);return Ll=i.slice(e,1<r?1-r:void 0)}function Fl(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function nl(){return!0}function tg(){return!1}function Nt(e){function t(n,r,i,s,a){this._reactName=n,this._targetInst=i,this.type=r,this.nativeEvent=s,this.target=a,this.currentTarget=null;for(var o in e)e.hasOwnProperty(o)&&(n=e[o],this[o]=n?n(s):s[o]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?nl:tg,this.isPropagationStopped=tg,this}return be(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=nl)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=nl)},persist:function(){},isPersistent:nl}),t}var qs={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},im=Nt(qs),Ro=be({},qs,{view:0,detail:0}),LT=Nt(Ro),qu,Ju,ha,Xc=be({},Ro,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:sm,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==ha&&(ha&&e.type==="mousemove"?(qu=e.screenX-ha.screenX,Ju=e.screenY-ha.screenY):Ju=qu=0,ha=e),qu)},movementY:function(e){return"movementY"in e?e.movementY:Ju}}),ng=Nt(Xc),FT=be({},Xc,{dataTransfer:0}),BT=Nt(FT),UT=be({},Ro,{relatedTarget:0}),Zu=Nt(UT),VT=be({},qs,{animationName:0,elapsedTime:0,pseudoElement:0}),WT=Nt(VT),$T=be({},qs,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),KT=Nt($T),GT=be({},qs,{data:0}),rg=Nt(GT),HT={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},qT={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"},JT={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function ZT(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=JT[e])?!!t[e]:!1}function sm(){return ZT}var YT=be({},Ro,{key:function(e){if(e.key){var t=HT[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Fl(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?qT[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:sm,charCode:function(e){return e.type==="keypress"?Fl(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Fl(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),QT=Nt(YT),XT=be({},Xc,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),ig=Nt(XT),eA=be({},Ro,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:sm}),tA=Nt(eA),nA=be({},qs,{propertyName:0,elapsedTime:0,pseudoElement:0}),rA=Nt(nA),iA=be({},Xc,{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}),sA=Nt(iA),aA=[9,13,27,32],am=qn&&"CompositionEvent"in window,ja=null;qn&&"documentMode"in document&&(ja=document.documentMode);var oA=qn&&"TextEvent"in window&&!ja,Ob=qn&&(!am||ja&&8<ja&&11>=ja),sg=" ",ag=!1;function Lb(e,t){switch(e){case"keyup":return aA.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Fb(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var rs=!1;function lA(e,t){switch(e){case"compositionend":return Fb(t);case"keypress":return t.which!==32?null:(ag=!0,sg);case"textInput":return e=t.data,e===sg&&ag?null:e;default:return null}}function cA(e,t){if(rs)return e==="compositionend"||!am&&Lb(e,t)?(e=Ib(),Ll=rm=Cr=null,rs=!1,e):null;switch(e){case"paste":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 Ob&&t.locale!=="ko"?null:t.data;default:return null}}var uA={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 og(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!uA[e.type]:t==="textarea"}function Bb(e,t,n,r){vb(r),t=mc(t,"onChange"),0<t.length&&(n=new im("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Ra=null,Ya=null;function dA(e){Yb(e,0)}function eu(e){var t=as(e);if(ub(t))return e}function hA(e,t){if(e==="change")return t}var Ub=!1;if(qn){var Yu;if(qn){var Qu="oninput"in document;if(!Qu){var lg=document.createElement("div");lg.setAttribute("oninput","return;"),Qu=typeof lg.oninput=="function"}Yu=Qu}else Yu=!1;Ub=Yu&&(!document.documentMode||9<document.documentMode)}function cg(){Ra&&(Ra.detachEvent("onpropertychange",Vb),Ya=Ra=null)}function Vb(e){if(e.propertyName==="value"&&eu(Ya)){var t=[];Bb(t,Ya,e,Qf(e)),kb(dA,t)}}function fA(e,t,n){e==="focusin"?(cg(),Ra=t,Ya=n,Ra.attachEvent("onpropertychange",Vb)):e==="focusout"&&cg()}function mA(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return eu(Ya)}function pA(e,t){if(e==="click")return eu(t)}function gA(e,t){if(e==="input"||e==="change")return eu(t)}function vA(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var dn=typeof Object.is=="function"?Object.is:vA;function Qa(e,t){if(dn(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!Zd.call(t,i)||!dn(e[i],t[i]))return!1}return!0}function ug(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function dg(e,t){var n=ug(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=ug(n)}}function Wb(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Wb(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function $b(){for(var e=window,t=oc();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=oc(e.document)}return t}function om(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function yA(e){var t=$b(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Wb(n.ownerDocument.documentElement,n)){if(r!==null&&om(n)){if(t=r.start,e=r.end,e===void 0&&(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,e.getSelection){e=e.getSelection();var i=n.textContent.length,s=Math.min(r.start,i);r=r.end===void 0?s:Math.min(r.end,i),!e.extend&&s>r&&(i=r,r=s,s=i),i=dg(n,s);var a=dg(n,r);i&&a&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),s>r?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var wA=qn&&"documentMode"in document&&11>=document.documentMode,is=null,ph=null,za=null,gh=!1;function hg(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;gh||is==null||is!==oc(r)||(r=is,"selectionStart"in r&&om(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focu
vendor: 4,501 bytes, line 37
37sNode:r.focusNode,focusOffset:r.focusOffset}),za&&Qa(za,r)||(za=r,r=mc(ph,"onSelect"),0<r.length&&(t=new im("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=is)))}function rl(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var ss={animationend:rl("Animation","AnimationEnd"),animationiteration:rl("Animation","AnimationIteration"),animationstart:rl("Animation","AnimationStart"),transitionend:rl("Transition","TransitionEnd")},Xu={},Kb={};qn&&(Kb=document.createElement("div").style,"AnimationEvent"in window||(delete ss.animationend.animation,delete ss.animationiteration.animation,delete ss.animationstart.animation),"TransitionEvent"in window||delete ss.transitionend.transition);function tu(e){if(Xu[e])return Xu[e];if(!ss[e])return e;var t=ss[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Kb)return Xu[e]=t[n];return e}var Gb=tu("animationend"),Hb=tu("animationiteration"),qb=tu("animationstart"),Jb=tu("transitionend"),Zb=new Map,fg="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 Kr(e,t){Zb.set(e,t),zi(t,[e])}for(var ed=0;ed<fg.length;ed++){var td=fg[ed],bA=td.toLowerCase(),kA=td[0].toUpperCase()+td.slice(1);Kr(bA,"on"+kA)}Kr(Gb,"onAnimationEnd");Kr(Hb,"onAnimationIteration");Kr(qb,"onAnimationStart");Kr("dblclick","onDoubleClick");Kr("focusin","onFocus");Kr("focusout","onBlur");Kr(Jb,"onTransitionEnd");Ms("onMouseEnter",["mouseout","mouseover"]);Ms("onMouseLeave",["mouseout","mouseover"]);Ms("onPointerEnter",["pointerout","pointerover"]);Ms("onPointerLeave",["pointerout","pointerover"]);zi("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));zi("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));zi("onBeforeInput",["compositionend","keypress","textInput","paste"]);zi("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));zi("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));zi("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Ea="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(" "),xA=new Set("cancel close invalid load scroll toggle".split(" ").concat(Ea));function mg(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,bT(r,t,void 0,e),e.currentTarget=null}function Yb(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;e:{var s=void 0;if(t)for(var a=r.length-1;0<=a;a--){var o=r[a],l=o.instance,c=o.currentTarget;if(o=o.listener,l!==s&&i.isPropagationStopped())break e;mg(i,o,c),s=l}else for(a=0;a<r.length;a++){if(o=r[a],l=o.instance,c=o.currentTarget,o=o.listener,l!==s&&i.isPropagationStopped())break e;mg(i,o,c),s=l}}}if(cc)throw e=dh,cc=!1,dh=null,e}function de(e,t){var n=t[kh];n===void 0&&(n=t[kh]=new Set);var r=e+"__bubble";n.has(r)||(Qb(t,e,2,!1),n.add(r))}function nd(e,t,n){var r=0;t&&(r|=4),Qb(n,e,r,t)}var il="_reactListening"+Math.random().toString(36).slice(2);function Xa(e){if(!e[il]){e[il]=!0,sb.forEach(function(n){n!=="selectionchange"&&(xA.has(n)||nd(n,!1,e),nd(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[il]||(t[il]=!0,nd("selectionchange",!1,t))}}function Qb(e,t,n,r){switch(Mb(t)){case 1:var i=IT;break;case 4:i=OT;break;default:i=nm}n=i.bind(null,t,n,e),i=void 0,!uh||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(i=!0),r?i!==void 0?e.addEventListener(t,n,{capture:!0,passive:i}):e.addEventListener(t,n,!0):i!==void 0?e.addEventListener(t,n,{passive:i}):e.addEventListener(t,n,!1)}function rd(e,t,n,r,i){var s=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var a=r.tag;if(a===3||a===4){var o=r.stateNode.containerInfo;
vendor: 22,691 bytes, lines 37-38
37if(o===i||o.nodeType===8&&o.parentNode===i)break;if(a===4)for(a=r.return;a!==null;){var l=a.tag;if((l===3||l===4)&&(l=a.stateNode.containerInfo,l===i||l.nodeType===8&&l.parentNode===i))return;a=a.return}for(;o!==null;){if(a=oi(o),a===null)return;if(l=a.tag,l===5||l===6){r=s=a;continue e}o=o.parentNode}}r=r.return}kb(function(){var c=s,d=Qf(n),h=[];e:{var f=Zb.get(e);if(f!==void 0){var m=im,w=e;switch(e){case"keypress":if(Fl(n)===0)break e;case"keydown":case"keyup":m=QT;break;case"focusin":w="focus",m=Zu;break;case"focusout":w="blur",m=Zu;break;case"beforeblur":case"afterblur":m=Zu;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":m=ng;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":m=BT;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":m=tA;break;case Gb:case Hb:case qb:m=WT;break;case Jb:m=rA;break;case"scroll":m=LT;break;case"wheel":m=sA;break;case"copy":case"cut":case"paste":m=KT;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":m=ig}var p=(t&4)!==0,b=!p&&e==="scroll",v=p?f!==null?f+"Capture":null:f;p=[];for(var g=c,y;g!==null;){y=g;var x=y.stateNode;if(y.tag===5&&x!==null&&(y=x,v!==null&&(x=Ha(g,v),x!=null&&p.push(eo(g,x,y)))),b)break;g=g.return}0<p.length&&(f=new m(f,w,null,n,d),h.push({event:f,listeners:p}))}}if(!(t&7)){e:{if(f=e==="mouseover"||e==="pointerover",m=e==="mouseout"||e==="pointerout",f&&n!==lh&&(w=n.relatedTarget||n.fromElement)&&(oi(w)||w[Jn]))break e;if((m||f)&&(f=d.window===d?d:(f=d.ownerDocument)?f.defaultView||f.parentWindow:window,m?(w=n.relatedTarget||n.toElement,m=c,w=w?oi(w):null,w!==null&&(b=Di(w),w!==b||w.tag!==5&&w.tag!==6)&&(w=null)):(m=null,w=c),m!==w)){if(p=ng,x="onMouseLeave",v="onMouseEnter",g="mouse",(e==="pointerout"||e==="pointerover")&&(p=ig,x="onPointerLeave",v="onPointerEnter",g="pointer"),b=m==null?f:as(m),y=w==null?f:as(w),f=new p(x,g+"leave",m,n,d),f.target=b,f.relatedTarget=y,x=null,oi(d)===c&&(p=new p(v,g+"enter",w,n,d),p.target=y,p.relatedTarget=b,x=p),b=x,m&&w)t:{for(p=m,v=w,g=0,y=p;y;y=Bi(y))g++;for(y=0,x=v;x;x=Bi(x))y++;for(;0<g-y;)p=Bi(p),g--;for(;0<y-g;)v=Bi(v),y--;for(;g--;){if(p===v||v!==null&&p===v.alternate)break t;p=Bi(p),v=Bi(v)}p=null}else p=null;m!==null&&pg(h,f,m,p,!1),w!==null&&b!==null&&pg(h,b,w,p,!0)}}e:{if(f=c?as(c):window,m=f.nodeName&&f.nodeName.toLowerCase(),m==="select"||m==="input"&&f.type==="file")var E=hA;else if(og(f))if(Ub)E=gA;else{E=mA;var T=fA}else(m=f.nodeName)&&m.toLowerCase()==="input"&&(f.type==="checkbox"||f.type==="radio")&&(E=pA);if(E&&(E=E(e,c))){Bb(h,E,n,d);break e}T&&T(e,f,c),e==="focusout"&&(T=f._wrapperState)&&T.controlled&&f.type==="number"&&rh(f,"number",f.value)}switch(T=c?as(c):window,e){case"focusin":(og(T)||T.contentEditable==="true")&&(is=T,ph=c,za=null);break;case"focusout":za=ph=is=null;break;case"mousedown":gh=!0;break;case"contextmenu":case"mouseup":case"dragend":gh=!1,hg(h,n,d);break;case"selectionchange":if(wA)break;case"keydown":case"keyup":hg(h,n,d)}var S;if(am)e:{switch(e){case"compositionstart":var A="onCompositionStart";break e;case"compositionend":A="onCompositionEnd";break e;case"compositionupdate":A="onCompositionUpdate";break e}A=void 0}else rs?Lb(e,n)&&(A="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(A="onCompositionStart");A&&(Ob&&n.locale!=="ko"&&(rs||A!=="onCompositionStart"?A==="onCompositionEnd"&&rs&&(S=Ib()):(Cr=d,rm="value"in Cr?Cr.value:Cr.textContent,rs=!0)),T=mc(c,A),0<T.length&&(A=new rg(A,e,null,n,d),h.push({event:A,listeners:T}),S?A.data=S:(S=Fb(n),S!==null&&(A.data=S)))),(S=oA?lA(e,n):cA(e,n))&&(c=mc(c,"onBeforeInput"),0<c.length&&(d=new rg("onBeforeInput","beforeinput",null,n,d),h.push({event:d,listeners:c}),d.data=S))}Yb(h,t)})}function eo(e,t,n){return{instance:e,listener:t,currentTarget:n}}function mc(e,t){for(var n=t+"Capture",r=[];e!==null;){var i=e,s=i.stateNode;i.tag===5&&s!==null&&(i=s,s=Ha(e,n),s!=null&&r.unshift(eo(e,s,i)),s=Ha(e,t),s!=null&&r.push(eo(e,s,i))),e=e.return}return r}function Bi(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function pg(e,t,n,r,i){for(var s=t._reactName,a=[];n!==null&&n!==r;){var o=n,l=o.alternate,c=o.stateNode;if(l!==null&&l===r)break;o.tag===5&&c!==null&&(o=c,i?(l=Ha(n,s),l!=null&&a.unshift(eo(n,l,o))):i||(l=Ha(n,s),l!=null&&a.push(eo(n,l,o)))),n=n.return}a.length!==0&&e.push({event:t,listeners:a})}var SA=/\r\n?/g,EA=/\u0000|\uFFFD/g;function gg(e){return(typeof e=="string"?e:""+e).replace(SA,` 38`).replace(EA,"")}function sl(e,t,n){if(t=gg(t),gg(e)!==t&&n)throw Error(z(425))}function pc(){}var vh=null,yh=null;function wh(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var bh=typeof setTimeout=="function"?setTimeout:void 0,TA=typeof clearTimeout=="function"?clearTimeout:void 0,vg=typeof Promise=="function"?Promise:void 0,AA=typeof queueMicrotask=="function"?queueMicrotask:typeof vg<"u"?function(e){return vg.resolve(null).then(e).catch(CA)}:bh;function CA(e){setTimeout(function(){throw e})}function id(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n==="/$"){if(r===0){e.removeChild(i),Za(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=i}while(n);Za(t)}function Nr(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function yg(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var Js=Math.random().toString(36).slice(2),An="__reactFiber$"+Js,to="__reactProps$"+Js,Jn="__reactContainer$"+Js,kh="__reactEvents$"+Js,_A="__reactListeners$"+Js,PA="__reactHandles$"+Js;function oi(e){var t=e[An];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Jn]||n[An]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=yg(e);e!==null;){if(n=e[An])return n;e=yg(e)}return t}e=n,n=e.parentNode}return null}function zo(e){return e=e[An]||e[Jn],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function as(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(z(33))}function nu(e){return e[to]||null}var xh=[],os=-1;function Gr(e){return{current:e}}function fe(e){0>os||(e.current=xh[os],xh[os]=null,os--)}function ce(e,t){os++,xh[os]=e.current,e.current=t}var Br={},rt=Gr(Br),bt=Gr(!1),Ti=Br;function Is(e,t){var n=e.type.contextTypes;if(!n)return Br;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},s;for(s in n)i[s]=t[s];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function kt(e){return e=e.childContextTypes,e!=null}function gc(){fe(bt),fe(rt)}function wg(e,t,n){if(rt.current!==Br)throw Error(z(168));ce(rt,t),ce(bt,n)}function Xb(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(z(108,fT(e)||"Unknown",i));return be({},n,r)}function vc(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Br,Ti=rt.current,ce(rt,e),ce(bt,bt.current),!0}function bg(e,t,n){var r=e.stateNode;if(!r)throw Error(z(169));n?(e=Xb(e,t,Ti),r.__reactInternalMemoizedMergedChildContext=e,fe(bt),fe(rt),ce(rt,e)):fe(bt),ce(bt,n)}var Wn=null,ru=!1,sd=!1;function e0(e){Wn===null?Wn=[e]:Wn.push(e)}function jA(e){ru=!0,e0(e)}function Hr(){if(!sd&&Wn!==null){sd=!0;var e=0,t=se;try{var n=Wn;for(se=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}Wn=null,ru=!1}catch(i){throw Wn!==null&&(Wn=Wn.slice(e+1)),Tb(Xf,Hr),i}finally{se=t,sd=!1}}return null}var ls=[],cs=0,yc=null,wc=0,Ot=[],Lt=0,Ai=null,Kn=1,Gn="";function ni(e,t){ls[cs++]=wc,ls[cs++]=yc,yc=e,wc=t}function t0(e,t,n){Ot[Lt++]=Kn,Ot[Lt++]=Gn,Ot[Lt++]=Ai,Ai=e;var r=Kn;e=Gn;var i=32-ln(r)-1;r&=~(1<<i),n+=1;var s=32-ln(t)+i;if(30<s){var a=i-i%5;s=(r&(1<<a)-1).toString(32),r>>=a,i-=a,Kn=1<<32-ln(t)+i|n<<i|r,Gn=s+e}else Kn=1<<s|n<<i|r,Gn=e}function lm(e){e.return!==null&&(ni(e,1),t0(e,1,0))}function cm(e){for(;e===yc;)yc=ls[--cs],ls[cs]=null,wc=ls[--cs],ls[cs]=null;for(;e===Ai;)Ai=Ot[--Lt],Ot[Lt]=null,Gn=Ot[--Lt],Ot[Lt]=null,Kn=Ot[--Lt],Ot[Lt]=null}var jt=null,Pt=null,pe=!1,on=null;function n0(e,t){var n=Ft(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function kg(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,jt=e,Pt=Nr(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,jt=e,Pt=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=Ai!==null?{id:Kn,overflow:Gn}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Ft(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,jt=e,Pt=null,!0):!1;default:return!1}}function Sh(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Eh(e){if(pe){var t=Pt;if(t){var n=t;if(!kg(e,t)){if(Sh(e))throw Error(z(418));t=Nr(n.nextSibling);var r=jt;t&&kg(e,t)?n0(r,n):(e.flags=e.flags&-4097|2,pe=!1,jt=e)}}else{if(Sh(e))throw Error(z(418));e.flags=e.flags&-4097|2,pe=!1,jt=e}}}function xg(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;jt=e}function al(e){if(e!==jt)return!1;if(!pe)return xg(e),pe=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!wh(e.type,e.memoizedProps)),t&&(t=Pt)){if(Sh(e))throw r0(),Error(z(418));for(;t;)n0(e,t),t=Nr(t.nextSibling)}if(xg(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(z(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){Pt=Nr(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}Pt=null}}else Pt=jt?Nr(e.stateNode.nextSibling):null;return!0}function r0(){for(var e=Pt;e;)e=Nr(e.nextSibling)}function Os(){Pt=jt=null,pe=!1}function um(e){on===null?on=[e]:on.push(e)}var RA=tr.ReactCurrentBatchConfig;function fa(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(z(309));var r=n.stateNode}if(!r)throw Error(z(147,e));var i=r,s=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===s?t.ref:(t=function(a){var o=i.refs;a===null?delete o[s]:o[s]=a},t._stringRef=s,t)}if(typeof e!="string")throw Error(z(284));if(!n._owner)throw Error(z(290,e))}return e}function ol(e,t){throw e=Object.prototype.toString.call(t),Error(z(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function Sg(e){var t=e._init;return t(e._payload)}function i0(e){function t(v,g){if(e){var y=v.deletions;y===null?(v.deletions=[g],v.flags|=16):y.push(g)}}function n(v,g){if(!e)return null;for(;g!==null;)t(v,g),g=g.sibling;return null}function r(v,g){for(v=new Map;g!==null;)g.key!==null?v.set(g.key,g):v.set(g.index,g),g=g.sibling;return v}function i(v,g){return v=Lr(v,g),v.index=0,v.sibling=null,v}function s(v,g,y){return v.index=y,e?(y=v.alternate,y!==null?(y=y.index,y<g?(v.flags|=2,g):y):(v.flags|=2,g)):(v.flags|=1048576,g)}function a(v){return e&&v.alternate===null&&(v.flags|=2),v}function o(v,g,y,x){return g===null||g.tag!==6?(g=hd(y,v.mode,x),g.return=v,g):(g=i(g,y),g.return=v,g)}function l(v,g,y,x){var E=y.type;return E===ns?d(v,g,y.props.children,x,y.key):g!==null&&(g.elementType===E||typeof E=="object"&&E!==null&&E.$$typeof===gr&&Sg(E)===g.type)?(x=i(g,y.props),x.ref=fa(v,g,y),x.return=v,x):(x=Gl(y.type,y.key,y.props,null,v.mode,x),x.ref=fa(v,g,y),x.return=v,x)}function c(v,g,y,x){return g===null||g.tag!==4||g.stateNode.containerInfo!==y.containerInfo||g.stateNode.implementation!==y.implementation?(g=fd(y,v.mode,x),g.return=v,g):(g=i(g,y.children||[]),g.return=v,g)}function d(v,g,y,x,E){return g===null||g.tag!==7?(g=bi(y,v.mode,x,E),g.return=v,g):(g=i(g,y),g.return=v,g)}function h(v,g,y){if(typeof g=="string"&&g!==""||typeof g=="number")return g=hd(""+g,v.mode,y),g.return=v,g;if(typeof g=="object"&&g!==null){switch(g.$$typeof){case Zo:return y=Gl(g.type,g.key,g.props,null,v.mode,y),y.ref=fa(v,null,g),y.return=v,y;case ts:return g=fd(g,v.mode,y),g.return=v,g;case gr:var x=g._init;return h(v,x(g._payload),y)}if(xa(g)||la(g))return g=bi(g,v.mode,y,null),g.return=v,g;ol(v,g)}return null}function f(v,g,y,x){var E=g!==null?g.key:null;if(typeof y=="string"&&y!==""||typeof y=="number")return E!==null?null:o(v,g,""+y,x);if(typeof y=="object"&&y!==null){switch(y.$$typeof){case Zo:return y.key===E?l(v,g,y,x):null;case ts:return y.key===E?c(v,g,y,x):null;case gr:return E=y._init,f(v,g,E(y._payload),x)}if(xa(y)||la(y))return E!==null?null:d(v,g,y,x,null);ol(v,y)}return null}function m(v,g,y,x,E){if(typeof x=="string"&&x!==""||typeof x=="number")return v=v.get(y)||null,o(g,v,""+x,E);if(typeof x=="object"&&x!==null){switch(x.$$typeof){case Zo:return v=v.get(x.key===null?y:x.key)||null,l(g,v,x,E);case ts:return v=v.get(x.key===null?y:x.key)||null,c(g,v,x,E);case gr:var T=x._init;return m(v,g,y,T(x._payload),E)}if(xa(x)||la(x))return v=v.get(y)||null,d(g,v,x,E,null);ol(g,x)}return null}function w(v,g,y,x){for(var E=null,T=null,S=g,A=g=0,_=null;S!==null&&A<y.length;A++){S.index>A?(_=S,S=null):_=S.sibling;var C=f(v,S,y[A],x);if(C===null){S===null&&(S=_);break}e&&S&&C.alternate===null&&t(v,S),g=s(C,g,A),T===null?E=C:T.sibling=C,T=C,S=_}if(A===y.length)return n(v,S),pe&&ni(v,A),E;if(S===null){for(;A<y.length;A++)S=h(v,y[A],x),S!==null&&(g=s(S,g,A),T===null?E=S:T.sibling=S,T=S);return pe&&ni(v,A),E}for(S=r(v,S);A<y.length;A++)_=m(S,v,A,y[A],x),_!==null&&(e&&_.alternate!==null&&S.delete(_.key===null?A:_.key),g=s(_,g,A),T===null?E=_:T.sibling=_,T=_);return e&&S.forEach(function(I){return t(v,I)}),pe&&ni(v,A),E}function p(v,g,y,x){var E=la(y);if(typeof E!="function")throw Error(z(150));if(y=E.call(y),y==null)throw Error(z(151));for(var T=E=null,S=g,A=g=0,_=null,C=y.next();S!==null&&!C.done;A++,C=y.next()){S.index>A?(_=S,S=null):_=S.sibling;var I=f(v,S,C.value,x);if(I===null){S===null&&(S=_);break}e&&S&&I.alternate===null&&t(v,S),g=s(I,g,A),T===null?E=I:T.sibling=I,T=I,S=_}if(C.done)return n(v,S),pe&&ni(v,A),E;if(S===null){for(;!C.done;A++,C=y.next())C=h(v,C.value,x),C!==null&&(g=s(C,g,A),T===null?E=C:T.sibling=C,T=C);return pe&&ni(v,A),E}for(S=r(v,S);!C.done;A++,C=y.next())C=m(S,v,A,C.value,x),C!==null&&(e&&C.alternate!==null&&S.delete(C.key===null?A:C.key),g=s(C,g,A),T===null?E=C:T.sibling=C,T=C);return e&&S.forEach(function(D){return t(v,D)}),pe&&ni(v,A),E}function b(v,g,y,x){if(typeof y=="object"&&y!==null&&y.type===ns&&y.key===null&&(y=y.props.children),typeof y=="object"&&y!==null){switch(y.$$typeof){case Zo:e:{for(var E=y.key,T=g;T!==null;){if(T.key===E){if(E=y.type,E===ns){if(T.tag===7){n(v,T.sibling),g=i(T,y.props.children),g.return=v,v=g;break e}}else if(T.elementType===E||typeof E=="object"&&E!==null&&E.$$typeof===gr&&Sg(E)===T.type){n(v,T.sibling),g=i(T,y.props),g.ref=fa(v,T,y),g.return=v,v=g;break e}n(v,T);break}else t(v,T);T=T.sibling}y.type===ns?(g=bi(y.props.children,v.mode,x,y.key),g.return=v,v=g):(x=Gl(y.type,y.key,y.props,null,v.mode,x),x.ref=fa(v,g,y),x.return=v,v=x)}return a(v);case ts:e:{for(T=y.key;g!==null;){if(g.key===T)if(g.tag===4&&g.stateNode.containerInfo===y.containerInfo&&g.stateNode.implementation===y.implementation){n(v,g.sibling),g=i(g,y.children||[]),g.return=v,v=g;break e}else{n(v,g);break}else t(v,g);g=g.sibling}g=fd(y,v.mode,x),g.return=v,v=g}return a(v);case gr:return T=y._init,b(v,g,T(y._payload),x)}if(xa(y))return w(v,g,y,x);if(la(y))return p(v,g,y,x);ol(v,y)}return typeof y=="string"&&y!==""||typeof y=="number"?(y=""+y,g!==null&&g.tag===6?(n(v,g.sibling),g=i(g,y),g.return=v,v=g):(n(v,g),g=hd(y,v.mode,x),g.return=v,v=g),a(v)):n(v,g)}return b}var Ls=i0(!0),s0=i0(!1),bc=Gr(null),kc=null,us=null,dm=null;function hm(){dm=us=kc=null}function fm(e){var t=bc.current;fe(bc),e._currentValue=t}function Th(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function ks(e,t){kc=e,dm=us=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(wt=!0),e.firstContext=null)}function Wt(e){var t=e._currentValue;if(dm!==e)if(e={context:e,memoizedValue:t,next:null},us===null){if(kc===null)throw Error(z(308));us=e,kc.dependencies={lanes:0,firstContext:e}}else us=us.next=e;return t}var li=null;function mm(e){li===null?li=[e]:li.push(e)}function a0(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,mm(t)):(n.next=i.next,i.next=n),t.interleaved=n,Zn(e,r)}function Zn(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var vr=!1;function pm(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function o0(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 Hn(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Mr(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,ne&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,Zn(e,n)}return i=r.interleaved,i===null?(t.next=t,mm(r)):(t.next=i.next,i.next=t),r.interleaved=t,Zn(e,n)}function Bl(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,em(e,n)}}function Eg(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var a={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};s===null?i=s=a:s=s.next=a,n=n.next}while(n!==null);s===null?i=s=t:s=s.next=t}else i=s=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:s,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function xc(e,t,n,r){var i=e.updateQueue;vr=!1;var s=i.firstBaseUpdate,a=i.lastBaseUpdate,o=i.shared.pending;if(o!==null){i.shared.pending=null;var l=o,c=l.next;l.next=null,a===null?s=c:a.next=c,a=l;var d=e.alternate;d!==null&&(d=d.updateQueue,o=d.lastBaseUpdate,o!==a&&(o===null?d.firstBaseUpdate=c:o.next=c,d.lastBaseUpdate=l))}if(s!==null){var h=i.baseState;a=0,d=c=l=null,o=s;do{var f=o.lane,m=o.eventTime;if((r&f)===f){d!==null&&(d=d.next={eventTime:m,lane:0,tag:o.tag,payload:o.payload,callback:o.callback,next:null});e:{var w=e,p=o;switch(f=t,m=n,p.tag){case 1:if(w=p.payload,typeof w=="function"){h=w.call(m,h,f);break e}h=w;break e;case 3:w.flags=w.flags&-65537|128;case 0:if(w=p.payload,f=typeof w=="function"?w.call(m,h,f):w,f==null)break e;h=be({},h,f);break e;case 2:vr=!0}}o.callback!==null&&o.lane!==0&&(e.flags|=64,f=i.effects,f===null?i.effects=[o]:f.push(o))}else m={eventTime:m,lane:f,tag:o.tag,payload:o.payload,callback:o.callback,next:null},d===null?(c=d=m,l=h):d=d.next=m,a|=f;if(o=o.next,o===null){if(o=i.shared.pending,o===null)break;f=o,o=f.next,f.next=null,i.lastBaseUpdate=f,i.shared.pending=null}}while(!0);if(d===null&&(l=h),i.baseState=l,i.firstBaseUpdate=c,i.lastBaseUpdate=d,t=i.shared.interleaved,t!==null){i=t;do a|=i.lane,i=i.next;while(i!==t)}else s===null&&(i.shared.lanes=0);_i|=a,e.lanes=a,e.memoizedState=h}}function Tg(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],i=r.callback;if(i!==null){if(r.callback=null,r=n,typeof i!="function")throw Error(z(191,i));i.call(r)}}}var Do={},jn=Gr(Do),no=Gr(Do),ro=Gr(Do);function ci(e){if(e===Do)throw Error(z(174));return e}function gm(e,t){switch(ce(ro,t),ce(no,e),ce(jn,Do),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:sh(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=sh(t,e)}fe(jn),ce(jn,t)}function Fs(){fe(jn),fe(no),fe(ro)}function l0(e){ci(ro.current);var t=ci(jn.current),n=sh(t,e.type);t!==n&&(ce(no,e),ce(jn,n))}function vm(e){no.current===e&&(fe(jn),fe(no))}var ye=Gr(0);function Sc(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ad=[];function ym(){for(var e=0;e<ad.length;e++)ad[e]._workInProgressVersionPrimary=null;ad.length=0}var Ul=tr.ReactCurrentDispatcher,od=tr.ReactCurrentBatchConfig,Ci=0,we=null,Oe=null,Fe=null,Ec=!1,Da=!1,io=0,zA=0;function Ye(){throw Error(z(321))}function wm(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!dn(e[n],t[n]))return!1;return!0}function bm(e,t,n,r,i,s){if(Ci=s,we=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Ul.current=e===null||e.memoizedState===null?IA:OA,e=n(r,i),Da){s=0;do{if(Da=!1,io=0,25<=s)throw Error(z(301));s+=1,Fe=Oe=null,t.updateQueue=null,Ul.current=LA,e=n(r,i)}while(Da)}if(Ul.current=Tc,t=Oe!==null&&Oe.next!==null,Ci=0,Fe=Oe=we=null,Ec=!1,t)throw Error(z(300));return e}function km(){var e=io!==0;return io=0,e}function yn(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Fe===null?we.memoizedState=Fe=e:Fe=Fe.next=e,Fe}function $t(){if(Oe===null){var e=we.alternate;e=e!==null?e.memoizedState:null}else e=Oe.next;var t=Fe===null?we.memoizedState:Fe.next;if(t!==null)Fe=t,Oe=e;else{if(e===null)throw Error(z(310));Oe=e,e={memoizedState:Oe.memoizedState,baseState:Oe.baseState,baseQueue:Oe.baseQueue,queue:Oe.queue,next:null},Fe===null?we.memoizedState=Fe=e:Fe=Fe.next=e}return Fe}function so(e,t){return typeof t=="function"?t(e):t}function ld(e){var t=$t(),n=t.queue;if(n===null)throw Error(z(311));n.lastRenderedReducer=e;var r=Oe,i=r.baseQueue,s=n.pending;if(s!==null){if(i!==null){var a=i.next;
vendor: 7,076 bytes, line 38
38i.next=s.next,s.next=a}r.baseQueue=i=s,n.pending=null}if(i!==null){s=i.next,r=r.baseState;var o=a=null,l=null,c=s;do{var d=c.lane;if((Ci&d)===d)l!==null&&(l=l.next={lane:0,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null}),r=c.hasEagerState?c.eagerState:e(r,c.action);else{var h={lane:d,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null};l===null?(o=l=h,a=r):l=l.next=h,we.lanes|=d,_i|=d}c=c.next}while(c!==null&&c!==s);l===null?a=r:l.next=o,dn(r,t.memoizedState)||(wt=!0),t.memoizedState=r,t.baseState=a,t.baseQueue=l,n.lastRenderedState=r}if(e=n.interleaved,e!==null){i=e;do s=i.lane,we.lanes|=s,_i|=s,i=i.next;while(i!==e)}else i===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function cd(e){var t=$t(),n=t.queue;if(n===null)throw Error(z(311));n.lastRenderedReducer=e;var r=n.dispatch,i=n.pending,s=t.memoizedState;if(i!==null){n.pending=null;var a=i=i.next;do s=e(s,a.action),a=a.next;while(a!==i);dn(s,t.memoizedState)||(wt=!0),t.memoizedState=s,t.baseQueue===null&&(t.baseState=s),n.lastRenderedState=s}return[s,r]}function c0(){}function u0(e,t){var n=we,r=$t(),i=t(),s=!dn(r.memoizedState,i);if(s&&(r.memoizedState=i,wt=!0),r=r.queue,xm(f0.bind(null,n,r,e),[e]),r.getSnapshot!==t||s||Fe!==null&&Fe.memoizedState.tag&1){if(n.flags|=2048,ao(9,h0.bind(null,n,r,i,t),void 0,null),Be===null)throw Error(z(349));Ci&30||d0(n,t,i)}return i}function d0(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=we.updateQueue,t===null?(t={lastEffect:null,stores:null},we.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function h0(e,t,n,r){t.value=n,t.getSnapshot=r,m0(t)&&p0(e)}function f0(e,t,n){return n(function(){m0(t)&&p0(e)})}function m0(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!dn(e,n)}catch{return!0}}function p0(e){var t=Zn(e,1);t!==null&&cn(t,e,1,-1)}function Ag(e){var t=yn();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:so,lastRenderedState:e},t.queue=e,e=e.dispatch=MA.bind(null,we,e),[t.memoizedState,e]}function ao(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=we.updateQueue,t===null?(t={lastEffect:null,stores:null},we.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function g0(){return $t().memoizedState}function Vl(e,t,n,r){var i=yn();we.flags|=e,i.memoizedState=ao(1|t,n,void 0,r===void 0?null:r)}function iu(e,t,n,r){var i=$t();r=r===void 0?null:r;var s=void 0;if(Oe!==null){var a=Oe.memoizedState;if(s=a.destroy,r!==null&&wm(r,a.deps)){i.memoizedState=ao(t,n,s,r);return}}we.flags|=e,i.memoizedState=ao(1|t,n,s,r)}function Cg(e,t){return Vl(8390656,8,e,t)}function xm(e,t){return iu(2048,8,e,t)}function v0(e,t){return iu(4,2,e,t)}function y0(e,t){return iu(4,4,e,t)}function w0(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function b0(e,t,n){return n=n!=null?n.concat([e]):null,iu(4,4,w0.bind(null,t,e),n)}function Sm(){}function k0(e,t){var n=$t();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&wm(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function x0(e,t){var n=$t();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&wm(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function S0(e,t,n){return Ci&21?(dn(n,t)||(n=_b(),we.lanes|=n,_i|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,wt=!0),e.memoizedState=n)}function DA(e,t){var n=se;se=n!==0&&4>n?n:4,e(!0);var r=od.transition;od.transition={};try{e(!1),t()}finally{se=n,od.transition=r}}function E0(){return $t().memoizedState}function NA(e,t,n){var r=Or(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},T0(e))A0(t,n);else if(n=a0(e,t,n,r),n!==null){var i=ht();cn(n,e,r,i),C0(n,t,r)}}function MA(e,t,n){var r=Or(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(T0(e))A0(t,i);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var a=t.lastRenderedState,o=s(a,n);if(i.hasEagerState=!0,i.eagerState=o,dn(o,a)){var l=t.interleaved;l===null?(i.next=i,mm(t)):(i.next=l.next,l.next=i),t.interleaved=i;return}}catch{}finally{}n=a0(e,t,i,r),n!==null&&(i=ht(),cn(n,e,r,i),C0(n,t,r))}}function T0(e){var t=e.alternate;return e===we||t!==null&&t===we}function A0(e,t){Da=Ec=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function C0(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,em(e,n)}}var Tc={readContext:Wt,useCallback:Ye,useContext:Ye,useEffect:Ye,useImperativeHandle:Ye,useInsertionEffect:Ye,useLayoutEffect:Ye,useMemo:Ye,useReducer:Ye,useRef:Ye,useState:Ye,useDebugValue:Ye,useDeferredValue:Ye,useTransition:Ye,useMutableSource:Ye,useSyncExternalStore:Ye,useId:Ye,unstable_isNewReconciler:!1},IA={readContext:Wt,useCallback:function(e,t){return yn().memoizedState=[e,t===void 0?null:t],e},useContext:Wt,useEffect:Cg,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Vl(4194308,4,w0.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Vl(4194308,4,e,t)},useInsertionEffect:function(e,t){return Vl(4,2,e,t)},useMemo:function(e,t){var n=yn();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=yn();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=NA.bind(null,we,e),[r.memoizedState,e]},useRef:function(e){var t=yn();return e={current:e},t.memoizedState=e},useState:Ag,useDebugValue:Sm,useDeferredValue:function(e){return yn().memoizedState=e},useTransition:function(){var e=Ag(!1),t=e[0];return e=DA.bind(null,e[1]),yn().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=we,i=yn();if(pe){if(n===void 0)throw Error(z(407));n=n()}else{if(n=t(),Be===null)throw Error(z(349));Ci&30||d0(r,t,n)}i.memoizedState=n;var s={value:n,getSnapshot:t};return i.queue=s,Cg(f0.bind(null,r,s,e),[e]),r.flags|=2048,ao(9,h0.bind(null,r,s,n,t),void 0,null),n},useId:function(){var e=yn(),t=Be.identifierPrefix;if(pe){var n=Gn,r=Kn;n=(r&~(1<<32-ln(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=io++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=zA++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},OA={readContext:Wt,useCallback:k0,useContext:Wt,useEffect:xm,useImperativeHandle:b0,useInsertionEffect:v0,useLayoutEffect:y0,useMemo:x0,useReducer:ld,useRef:g0,useState:function(){return ld(so)},useDebugValue:Sm,useDeferredValue:function(e){var t=$t();return S0(t,Oe.memoizedState,e)},useTransition:function(){var e=ld(so)[0],t=$t().memoizedState;return[e,t]},useMutableSource:c0,useSyncExternalStore:u0,useId:E0,unstable_isNewReconciler:!1},LA={readContext:Wt,useCallback:k0,useContext:Wt,useEffect:xm,useImperativeHandle:b0,useInsertionEffect:v0,useLayoutEffect:y0,useMemo:x0,useReducer:cd,useRef
vendor: 4,616 bytes, lines 38-40
38:g0,useState:function(){return cd(so)},useDebugValue:Sm,useDeferredValue:function(e){var t=$t();return Oe===null?t.memoizedState=e:S0(t,Oe.memoizedState,e)},useTransition:function(){var e=cd(so)[0],t=$t().memoizedState;return[e,t]},useMutableSource:c0,useSyncExternalStore:u0,useId:E0,unstable_isNewReconciler:!1};function en(e,t){if(e&&e.defaultProps){t=be({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function Ah(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:be({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var su={isMounted:function(e){return(e=e._reactInternals)?Di(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=ht(),i=Or(e),s=Hn(r,i);s.payload=t,n!=null&&(s.callback=n),t=Mr(e,s,i),t!==null&&(cn(t,e,i,r),Bl(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=ht(),i=Or(e),s=Hn(r,i);s.tag=1,s.payload=t,n!=null&&(s.callback=n),t=Mr(e,s,i),t!==null&&(cn(t,e,i,r),Bl(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ht(),r=Or(e),i=Hn(n,r);i.tag=2,t!=null&&(i.callback=t),t=Mr(e,i,r),t!==null&&(cn(t,e,r,n),Bl(t,e,r))}};function _g(e,t,n,r,i,s,a){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,s,a):t.prototype&&t.prototype.isPureReactComponent?!Qa(n,r)||!Qa(i,s):!0}function _0(e,t,n){var r=!1,i=Br,s=t.contextType;return typeof s=="object"&&s!==null?s=Wt(s):(i=kt(t)?Ti:rt.current,r=t.contextTypes,s=(r=r!=null)?Is(e,i):Br),t=new t(n,s),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=su,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=i,e.__reactInternalMemoizedMaskedChildContext=s),t}function Pg(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&su.enqueueReplaceState(t,t.state,null)}function Ch(e,t,n,r){var i=e.stateNode;i.props=n,i.state=e.memoizedState,i.refs={},pm(e);var s=t.contextType;typeof s=="object"&&s!==null?i.context=Wt(s):(s=kt(t)?Ti:rt.current,i.context=Is(e,s)),i.state=e.memoizedState,s=t.getDerivedStateFromProps,typeof s=="function"&&(Ah(e,t,s,n),i.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof i.getSnapshotBeforeUpdate=="function"||typeof i.UNSAFE_componentWillMount!="function"&&typeof i.componentWillMount!="function"||(t=i.state,typeof i.componentWillMount=="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount=="function"&&i.UNSAFE_componentWillMount(),t!==i.state&&su.enqueueReplaceState(i,i.state,null),xc(e,n,i,r),i.state=e.memoizedState),typeof i.componentDidMount=="function"&&(e.flags|=4194308)}function Bs(e,t){try{var n="",r=t;do n+=hT(r),r=r.return;while(r);var i=n}catch(s){i=` 39Error generating stack: `+s.message+` 40`+s.stack}return{value:e,source:t,stack:i,digest:null}}function ud(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function _h(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var FA=typeof WeakMap=="function"?WeakMap:Map;function P0(e,t,n){n=Hn(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Cc||(Cc=!0,Lh=r),_h(e,t)},n}function j0(e,t,n){n=Hn(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){_h(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){_h(e,t),typeof r!="function"&&(Ir===null?Ir=new Set([this]):Ir.add(this));var a=t.stack;this.componentDidCatch(t.value,{componentStack:a!==null?a:""})}),n}function jg(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new FA;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=XA.bind(null,e,t,n),t.then(e,e))}function Rg(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function zg(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=Hn(-1,1),t.tag=2,Mr(n,t,1))),n.lanes|=1),e)}var BA=tr.ReactCurrentOwner,wt=!1;function lt(e,t,n,r){t.child=e===null?s0(t,null,n,r):Ls(t,e.child,n,r)}function Dg(e,t,n,r,i){n=n.render;var s=t.ref;return ks(t,i),r=bm(e,t,n,r,s,i),n=km(),e!==null&&!wt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Yn(e,t,i)):(pe&&n&&lm(t),t.flags|=1,lt(e,t,r,i
vendor: 7,205 bytes, line 40
40),t.child)}function Ng(e,t,n,r,i){if(e===null){var s=n.type;return typeof s=="function"&&!Rm(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=s,R0(e,t,s,r,i)):(e=Gl(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,!(e.lanes&i)){var a=s.memoizedProps;if(n=n.compare,n=n!==null?n:Qa,n(a,r)&&e.ref===t.ref)return Yn(e,t,i)}return t.flags|=1,e=Lr(s,r),e.ref=t.ref,e.return=t,t.child=e}function R0(e,t,n,r,i){if(e!==null){var s=e.memoizedProps;if(Qa(s,r)&&e.ref===t.ref)if(wt=!1,t.pendingProps=r=s,(e.lanes&i)!==0)e.flags&131072&&(wt=!0);else return t.lanes=e.lanes,Yn(e,t,i)}return Ph(e,t,n,r,i)}function z0(e,t,n){var r=t.pendingProps,i=r.children,s=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},ce(hs,At),At|=n;else{if(!(n&1073741824))return e=s!==null?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,ce(hs,At),At|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=s!==null?s.baseLanes:n,ce(hs,At),At|=r}else s!==null?(r=s.baseLanes|n,t.memoizedState=null):r=n,ce(hs,At),At|=r;return lt(e,t,i,n),t.child}function D0(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Ph(e,t,n,r,i){var s=kt(n)?Ti:rt.current;return s=Is(t,s),ks(t,i),n=bm(e,t,n,r,s,i),r=km(),e!==null&&!wt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Yn(e,t,i)):(pe&&r&&lm(t),t.flags|=1,lt(e,t,n,i),t.child)}function Mg(e,t,n,r,i){if(kt(n)){var s=!0;vc(t)}else s=!1;if(ks(t,i),t.stateNode===null)Wl(e,t),_0(t,n,r),Ch(t,n,r,i),r=!0;else if(e===null){var a=t.stateNode,o=t.memoizedProps;a.props=o;var l=a.context,c=n.contextType;typeof c=="object"&&c!==null?c=Wt(c):(c=kt(n)?Ti:rt.current,c=Is(t,c));var d=n.getDerivedStateFromProps,h=typeof d=="function"||typeof a.getSnapshotBeforeUpdate=="function";h||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(o!==r||l!==c)&&Pg(t,a,r,c),vr=!1;var f=t.memoizedState;a.state=f,xc(t,r,a,i),l=t.memoizedState,o!==r||f!==l||bt.current||vr?(typeof d=="function"&&(Ah(t,n,d,r),l=t.memoizedState),(o=vr||_g(t,n,o,r,f,l,c))?(h||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount=="function"&&(t.flags|=4194308)):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=c,r=o):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,o0(e,t),o=t.memoizedProps,c=t.type===t.elementType?o:en(t.type,o),a.props=c,h=t.pendingProps,f=a.context,l=n.contextType,typeof l=="object"&&l!==null?l=Wt(l):(l=kt(n)?Ti:rt.current,l=Is(t,l));var m=n.getDerivedStateFromProps;(d=typeof m=="function"||typeof a.getSnapshotBeforeUpdate=="function")||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(o!==h||f!==l)&&Pg(t,a,r,l),vr=!1,f=t.memoizedState,a.state=f,xc(t,r,a,i);var w=t.memoizedState;o!==h||f!==w||bt.current||vr?(typeof m=="function"&&(Ah(t,n,m,r),w=t.memoizedState),(c=vr||_g(t,n,c,r,f,w,l)||!1)?(d||typeof a.UNSAFE_componentWillUpdate!="function"&&typeof a.componentWillUpdate!="function"||(typeof a.componentWillUpdate=="function"&&a.componentWillUpdate(r,w,l),typeof a.UNSAFE_componentWillUpdate=="function"&&a.UNSAFE_componentWillUpdate(r,w,l)),typeof a.componentDidUpdate=="function"&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof a.componentDidUpdate!="function"||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=w),a.props=r,a.state=w,a.context=l,r=c):(typeof a.componentDidUpdate!="function"||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return jh(e,t,n,r,s,i)}function jh(e,t,n,r,i,s){D0(e,t);var a=(t.flags&128)!==0;if(!r&&!a)return i&&bg(t,n,!1),Yn(e,t,s);r=t.stateNode,BA.current=t;var o=a&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&a?(t.child=Ls(t,e.child,null,s),t.child=Ls(t,null,o,s)):lt(e,t,o,s),t.memoizedState=r.state,i&&bg(t,n,!0),t.child}function N0(e){var t=e.stateNode;t.pendingContext?wg(e,t.pendingContext,t.pendingContext!==t.context):t.context&&wg(e,t.context,!1),gm(e,t.containerInfo)}function Ig(e,t,n,r,i){return Os(),um(i),t.flags|=256,lt(e,t,n,r),t.child}var Rh={dehydrated:null,treeContext:null,retryLane:0};function zh(e){return{baseLanes:e,cachePool:null,transitions:null}}function M0(e,t,n){var r=t.pendingProps,i=ye.current,s=!1,a=(t.flags&128)!==0,o;if((o=a)||(o=e!==null&&e.memoizedState===null?!1:(i&2)!==0),o?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),ce(ye,i&1),e===null)return Eh(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(a=r.children,e=r.fallback,s?(r=t.mode,s=t.child,a={mode:"hidden",children:a},!(r&1)&&s!==null?(s.childLanes=0,s.pendingProps=a):s=lu(a,r,0,null),e=bi(e,r,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=zh(n),t.memoizedState=Rh,e):Em(t,a));if(i=e.memoizedState,i!==null&&(o=i.dehydrated,o!==null))return UA(e,t,a,r,o,i,n);if(s){s=r.fallback,a=t.mode,i=e.child,o=i.sibling;var l={mode:"hidden",children:r.children};return!(a&1)&&t.child!==i?(r=t.child,r.childLanes=0,r.pendingProps=l,t.deletions=null):(r=Lr(i,l),r.subtreeFlags=i.subtreeFlags&14680064),o!==null?s=Lr(o,s):(s=bi(s,a,n,null),s.flags|=2),s.return=t,r.return=t,r.sibling=s,t.child=r,r=s,s=t.child,a=e.child.memoizedState,a=a===null?zh(n):{baseLanes:a.baseLanes|n,cachePool:null,transitions:a.transitions},s.memoizedState=a,s.childLanes=e.childLanes&~n,t.memoizedState=Rh,r}return s=e.child,e=s.sibling,r=Lr(s,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Em(e,t){return t=lu({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function ll(e,t,n,r){return r!==null&&um(r),Ls(t,e.child,null,n),e=Em(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function UA(e,t,n,r,i,s,a){if(n)return t.flags&256?(t.flags&=-257,r=ud(Error(z(422))),ll(e,t,a,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=r.fallback,i=t.mode,r=lu({mode:"visible",children:r.children},i,0,null),s=bi(s,i,a,null),s.flags|=2,r.return=t,s.return=t,r.sibling=s,t.child=r,t.mode&1&&Ls(t,e.child,null,a),t.child.memoizedState=zh(a),t.memoizedState=Rh,s);if(!(t.mode&1))return ll(e,t,a,null);if(i.data==="$!"){if(r=i.nextSibling&&i.nextSibling.dataset,r)var o=r.dgst;return r=o,s=Error(z(419)),r=ud(s,r,void 0),ll(e,t,a,r)}
vendor: 4,253 bytes, line 40
40if(o=(a&e.childLanes)!==0,wt||o){if(r=Be,r!==null){switch(a&-a){case 4:i=2;break;case 16:i=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:i=32;break;case 536870912:i=268435456;break;default:i=0}i=i&(r.suspendedLanes|a)?0:i,i!==0&&i!==s.retryLane&&(s.retryLane=i,Zn(e,i),cn(r,e,i,-1))}return jm(),r=ud(Error(z(421))),ll(e,t,a,r)}return i.data==="$?"?(t.flags|=128,t.child=e.child,t=eC.bind(null,e),i._reactRetry=t,null):(e=s.treeContext,Pt=Nr(i.nextSibling),jt=t,pe=!0,on=null,e!==null&&(Ot[Lt++]=Kn,Ot[Lt++]=Gn,Ot[Lt++]=Ai,Kn=e.id,Gn=e.overflow,Ai=t),t=Em(t,r.children),t.flags|=4096,t)}function Og(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Th(e.return,t,n)}function dd(e,t,n,r,i){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=r,s.tail=n,s.tailMode=i)}function I0(e,t,n){var r=t.pendingProps,i=r.revealOrder,s=r.tail;if(lt(e,t,r.children,n),r=ye.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Og(e,n,t);else if(e.tag===19)Og(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(ce(ye,r),!(t.mode&1))t.memoizedState=null;else switch(i){case"forwards":for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&Sc(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),dd(t,!1,i,n,s);break;case"backwards":for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Sc(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}dd(t,!0,n,null,s);break;case"together":dd(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Wl(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Yn(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),_i|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(z(153));if(t.child!==null){for(e=t.child,n=Lr(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Lr(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function VA(e,t,n){switch(t.tag){case 3:N0(t),Os();break;case 5:l0(t);break;case 1:kt(t.type)&&vc(t);break;case 4:gm(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,i=t.memoizedProps.value;ce(bc,r._currentValue),r._currentValue=i;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(ce(ye,ye.current&1),t.flags|=128,null):n&t.child.childLanes?M0(e,t,n):(ce(ye,ye.current&1),e=Yn(e,t,n),e!==null?e.sibling:null);ce(ye,ye.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return I0(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),ce(ye,ye.current),r)break;return null;case 22:case 23:return t.lanes=0,z0(e,t,n)}return Yn(e,t,n)}var O0,Dh,L0,F0;O0=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Dh=function(){};L0=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,ci(jn.current);var s=null;switch(n){case"input":i=th(e,i),r=th(e,r),s=[];break;case"select":i=be({},i,{value:void 0}),r=be({},r,{value:void 0}),s=[];break;case"textarea":i=ih(e,i),r=ih(e,r),s=[];break;default:typeof i.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=pc)}ah(n,r);var a;n=null;for(c in i)if(!r.hasOwnProperty(c)&&i.hasOwnProperty(c)&&i[c]!=null)if(c==="style"){var o=i[c];for(a in o)o.hasOwnProperty(a)&&(n||(n={}),n[a]="")}else c!=="dangerouslySetInnerHTML"&&c!=="children"&&c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&c!=="autoFocus"&&(Ka.hasOwnProperty(c)?s||
vendor: 5,320 bytes, line 40
40(s=[]):(s=s||[]).push(c,null));for(c in r){var l=r[c];if(o=i!=null?i[c]:void 0,r.hasOwnProperty(c)&&l!==o&&(l!=null||o!=null))if(c==="style")if(o){for(a in o)!o.hasOwnProperty(a)||l&&l.hasOwnProperty(a)||(n||(n={}),n[a]="");for(a in l)l.hasOwnProperty(a)&&o[a]!==l[a]&&(n||(n={}),n[a]=l[a])}else n||(s||(s=[]),s.push(c,n)),n=l;else c==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,o=o?o.__html:void 0,l!=null&&o!==l&&(s=s||[]).push(c,l)):c==="children"?typeof l!="string"&&typeof l!="number"||(s=s||[]).push(c,""+l):c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&(Ka.hasOwnProperty(c)?(l!=null&&c==="onScroll"&&de("scroll",e),s||o===l||(s=[])):(s=s||[]).push(c,l))}n&&(s=s||[]).push("style",n);var c=s;(t.updateQueue=c)&&(t.flags|=4)}};F0=function(e,t,n,r){n!==r&&(t.flags|=4)};function ma(e,t){if(!pe)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Qe(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function WA(e,t,n){var r=t.pendingProps;switch(cm(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Qe(t),null;case 1:return kt(t.type)&&gc(),Qe(t),null;case 3:return r=t.stateNode,Fs(),fe(bt),fe(rt),ym(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(al(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,on!==null&&(Uh(on),on=null))),Dh(e,t),Qe(t),null;case 5:vm(t);var i=ci(ro.current);if(n=t.type,e!==null&&t.stateNode!=null)L0(e,t,n,r,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(z(166));return Qe(t),null}if(e=ci(jn.current),al(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[An]=t,r[to]=s,e=(t.mode&1)!==0,n){case"dialog":de("cancel",r),de("close",r);break;case"iframe":case"object":case"embed":de("load",r);break;case"video":case"audio":for(i=0;i<Ea.length;i++)de(Ea[i],r);break;case"source":de("error",r);break;case"img":case"image":case"link":de("error",r),de("load",r);break;case"details":de("toggle",r);break;case"input":Gp(r,s),de("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},de("invalid",r);break;case"textarea":qp(r,s),de("invalid",r)}ah(n,s),i=null;for(var a in s)if(s.hasOwnProperty(a)){var o=s[a];a==="children"?typeof o=="string"?r.textContent!==o&&(s.suppressHydrationWarning!==!0&&sl(r.textContent,o,e),i=["children",o]):typeof o=="number"&&r.textContent!==""+o&&(s.suppressHydrationWarning!==!0&&sl(r.textContent,o,e),i=["children",""+o]):Ka.hasOwnProperty(a)&&o!=null&&a==="onScroll"&&de("scroll",r)}switch(n){case"input":Yo(r),Hp(r,s,!0);break;case"textarea":Yo(r),Jp(r);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(r.onclick=pc)}r=i,t.updateQueue=r,r!==null&&(t.flags|=4)}else{a=i.nodeType===9?i:i.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=fb(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=a.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=a.createElement(n,{is:r.is}):(e=a.createElement(n),n==="select"&&(a=e,r.multiple?a.multiple=!0:r.size&&(a.size=r.size))):e=a.createElementNS(e,n),e[An]=t,e[to]=r,O0(e,t,!1,!1),t.stateNode=e;e:{switch(a=oh(n,r),n){case"dialog":de("cancel",e),de("close",e),i=r;break;case"iframe":case"object":case"embed":de("load",e),i=r;break;case"video":case"audio":for(i=0;i<Ea.length;i++)de(Ea[i],e);i=r;break;case"source":de("error",e),i=r;break;case"img":case"image":case"link":de("error",e),de("load",e),i=r;break;case"details":de("toggle",e),i=r;break;case"input":Gp(e,r),i=th(e,r),de("invalid",e);break;case"option":i=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},i=be({},r,{value:void 0}),de("invalid",e);break;case"textarea":qp(e,r),i=ih(e,r),de("invalid",e);break;default:i=r}ah(n,i),o=i;for(s in o)if(o.hasOwnProperty(s)){var l=o[s];s==="style"?gb(e,l):s==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&mb(e,l)):s==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&Ga(e,l):typeof l=="number"&&Ga(e,""+l):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(Ka.hasOwnProperty(s)?l!=null&&s==="onScroll"&&de("scroll",e):l!=null&&qf(e,s,l,a))}switch(n){case"input":Yo(e),Hp(e,r,!1);break;case"textarea":Yo(e),Jp(e);break;case"option":r.value!=null&&e.setAttribute("value",""+Fr(r.value));break;case"select":e.multiple=!!r.multiple,s=r.value,s!=null?vs(e,!!r.multiple,s,!1):r.defaultValue!=null&&vs(e,!!r.multiple,r.defaultValue,!0);break;default:typeof i.onClick=="function"&&(e.onclick=pc)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}
vendor: 29,935 bytes, line 40
40return Qe(t),null;case 6:if(e&&t.stateNode!=null)F0(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(z(166));if(n=ci(ro.current),ci(jn.current),al(t)){if(r=t.stateNode,n=t.memoizedProps,r[An]=t,(s=r.nodeValue!==n)&&(e=jt,e!==null))switch(e.tag){case 3:sl(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&sl(r.nodeValue,n,(e.mode&1)!==0)}s&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[An]=t,t.stateNode=r}return Qe(t),null;case 13:if(fe(ye),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(pe&&Pt!==null&&t.mode&1&&!(t.flags&128))r0(),Os(),t.flags|=98560,s=!1;else if(s=al(t),r!==null&&r.dehydrated!==null){if(e===null){if(!s)throw Error(z(318));if(s=t.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(z(317));s[An]=t}else Os(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Qe(t),s=!1}else on!==null&&(Uh(on),on=null),s=!0;if(!s)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||ye.current&1?Le===0&&(Le=3):jm())),t.updateQueue!==null&&(t.flags|=4),Qe(t),null);case 4:return Fs(),Dh(e,t),e===null&&Xa(t.stateNode.containerInfo),Qe(t),null;case 10:return fm(t.type._context),Qe(t),null;case 17:return kt(t.type)&&gc(),Qe(t),null;case 19:if(fe(ye),s=t.memoizedState,s===null)return Qe(t),null;if(r=(t.flags&128)!==0,a=s.rendering,a===null)if(r)ma(s,!1);else{if(Le!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=Sc(e),a!==null){for(t.flags|=128,ma(s,!1),r=a.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)s=n,e=r,s.flags&=14680066,a=s.alternate,a===null?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=a.childLanes,s.lanes=a.lanes,s.child=a.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=a.memoizedProps,s.memoizedState=a.memoizedState,s.updateQueue=a.updateQueue,s.type=a.type,e=a.dependencies,s.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return ce(ye,ye.current&1|2),t.child}e=e.sibling}s.tail!==null&&Ae()>Us&&(t.flags|=128,r=!0,ma(s,!1),t.lanes=4194304)}else{if(!r)if(e=Sc(a),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),ma(s,!0),s.tail===null&&s.tailMode==="hidden"&&!a.alternate&&!pe)return Qe(t),null}else 2*Ae()-s.renderingStartTime>Us&&n!==1073741824&&(t.flags|=128,r=!0,ma(s,!1),t.lanes=4194304);s.isBackwards?(a.sibling=t.child,t.child=a):(n=s.last,n!==null?n.sibling=a:t.child=a,s.last=a)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=Ae(),t.sibling=null,n=ye.current,ce(ye,r?n&1|2:n&1),t):(Qe(t),null);case 22:case 23:return Pm(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?At&1073741824&&(Qe(t),t.subtreeFlags&6&&(t.flags|=8192)):Qe(t),null;case 24:return null;case 25:return null}throw Error(z(156,t.tag))}function $A(e,t){switch(cm(t),t.tag){case 1:return kt(t.type)&&gc(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Fs(),fe(bt),fe(rt),ym(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return vm(t),null;case 13:if(fe(ye),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(z(340));Os()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return fe(ye),null;case 4:return Fs(),null;case 10:return fm(t.type._context),null;case 22:case 23:return Pm(),null;case 24:return null;default:return null}}var cl=!1,nt=!1,KA=typeof WeakSet=="function"?WeakSet:Set,L=null;function ds(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Ee(e,t,r)}else n.current=null}function Nh(e,t,n){try{n()}catch(r){Ee(e,t,r)}}var Lg=!1;function GA(e,t){if(vh=hc,e=$b(),om(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var a=0,o=-1,l=-1,c=0,d=0,h=e,f=null;t:for(;;){for(var m;h!==n||i!==0&&h.nodeType!==3||(o=a+i),h!==s||r!==0&&h.nodeType!==3||(l=a+r),h.nodeType===3&&(a+=h.nodeValue.length),(m=h.firstChild)!==null;)f=h,h=m;for(;;){if(h===e)break t;if(f===n&&++c===i&&(o=a),f===s&&++d===r&&(l=a),(m=h.nextSibling)!==null)break;h=f,f=h.parentNode}h=m}n=o===-1||l===-1?null:{start:o,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(yh={focusedElem:e,selectionRange:n},hc=!1,L=t;L!==null;)if(t=L,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,L=e;else for(;L!==null;){t=L;try{var w=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(w!==null){var p=w.memoizedProps,b=w.memoizedState,v=t.stateNode,g=v.getSnapshotBeforeUpdate(t.elementType===t.type?p:en(t.type,p),b);v.__reactInternalSnapshotBeforeUpdate=g}break;case 3:var y=t.stateNode.containerInfo;y.nodeType===1?y.textContent="":y.nodeType===9&&y.documentElement&&y.removeChild(y.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(z(163))}}catch(x){Ee(t,t.return,x)}if(e=t.sibling,e!==null){e.return=t.return,L=e;break}L=t.return}return w=Lg,Lg=!1,w}function Na(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var s=i.destroy;i.destroy=void 0,s!==void 0&&Nh(t,n,s)}i=i.next}while(i!==r)}}function au(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Mh(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function B0(e){var t=e.alternate;t!==null&&(e.alternate=null,B0(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[An],delete t[to],delete t[kh],delete t[_A],delete t[PA])),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 U0(e){return e.tag===5||e.tag===3||e.tag===4}function Fg(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||U0(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Ih(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=pc));else if(r!==4&&(e=e.child,e!==null))for(Ih(e,t,n),e=e.sibling;e!==null;)Ih(e,t,n),e=e.sibling}function Oh(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Oh(e,t,n),e=e.sibling;e!==null;)Oh(e,t,n),e=e.sibling}var We=null,an=!1;function cr(e,t,n){for(n=n.child;n!==null;)V0(e,t,n),n=n.sibling}function V0(e,t,n){if(Pn&&typeof Pn.onCommitFiberUnmount=="function")try{Pn.onCommitFiberUnmount(Qc,n)}catch{}switch(n.tag){case 5:nt||ds(n,t);case 6:var r=We,i=an;We=null,cr(e,t,n),We=r,an=i,We!==null&&(an?(e=We,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):We.removeChild(n.stateNode));break;case 18:We!==null&&(an?(e=We,n=n.stateNode,e.nodeType===8?id(e.parentNode,n):e.nodeType===1&&id(e,n),Za(e)):id(We,n.stateNode));break;case 4:r=We,i=an,We=n.stateNode.containerInfo,an=!0,cr(e,t,n),We=r,an=i;break;case 0:case 11:case 14:case 15:if(!nt&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var s=i,a=s.destroy;s=s.tag,a!==void 0&&(s&2||s&4)&&Nh(n,t,a),i=i.next}while(i!==r)}cr(e,t,n);break;case 1:if(!nt&&(ds(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(o){Ee(n,t,o)}cr(e,t,n);break;case 21:cr(e,t,n);break;case 22:n.mode&1?(nt=(r=nt)||n.memoizedState!==null,cr(e,t,n),nt=r):cr(e,t,n);break;default:cr(e,t,n)}}function Bg(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new KA),t.forEach(function(r){var i=tC.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function qt(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r];try{var s=e,a=t,o=a;e:for(;o!==null;){switch(o.tag){case 5:We=o.stateNode,an=!1;break e;case 3:We=o.stateNode.containerInfo,an=!0;break e;case 4:We=o.stateNode.containerInfo,an=!0;break e}o=o.return}if(We===null)throw Error(z(160));V0(s,a,i),We=null,an=!1;var l=i.alternate;l!==null&&(l.return=null),i.return=null}catch(c){Ee(i,t,c)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)W0(t,e),t=t.sibling}function W0(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(qt(t,e),pn(e),r&4){try{Na(3,e,e.return),au(3,e)}catch(p){Ee(e,e.return,p)}try{Na(5,e,e.return)}catch(p){Ee(e,e.return,p)}}break;case 1:qt(t,e),pn(e),r&512&&n!==null&&ds(n,n.return);break;case 5:if(qt(t,e),pn(e),r&512&&n!==null&&ds(n,n.return),e.flags&32){var i=e.stateNode;try{Ga(i,"")}catch(p){Ee(e,e.return,p)}}if(r&4&&(i=e.stateNode,i!=null)){var s=e.memoizedProps,a=n!==null?n.memoizedProps:s,o=e.type,l=e.updateQueue;if(e.updateQueue=null,l!==null)try{o==="input"&&s.type==="radio"&&s.name!=null&&db(i,s),oh(o,a);var c=oh(o,s);for(a=0;a<l.length;a+=2){var d=l[a],h=l[a+1];d==="style"?gb(i,h):d==="dangerouslySetInnerHTML"?mb(i,h):d==="children"?Ga(i,h):qf(i,d,h,c)}switch(o){case"input":nh(i,s);break;case"textarea":hb(i,s);break;case"select":var f=i._wrapperState.wasMultiple;i._wrapperState.wasMultiple=!!s.multiple;var m=s.value;m!=null?vs(i,!!s.multiple,m,!1):f!==!!s.multiple&&(s.defaultValue!=null?vs(i,!!s.multiple,s.defaultValue,!0):vs(i,!!s.multiple,s.multiple?[]:"",!1))}i[to]=s}catch(p){Ee(e,e.return,p)}}break;case 6:if(qt(t,e),pn(e),r&4){if(e.stateNode===null)throw Error(z(162));i=e.stateNode,s=e.memoizedProps;try{i.nodeValue=s}catch(p){Ee(e,e.return,p)}}break;case 3:if(qt(t,e),pn(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Za(t.containerInfo)}catch(p){Ee(e,e.return,p)}break;case 4:qt(t,e),pn(e);break;case 13:qt(t,e),pn(e),i=e.child,i.flags&8192&&(s=i.memoizedState!==null,i.stateNode.isHidden=s,!s||i.alternate!==null&&i.alternate.memoizedState!==null||(Cm=Ae())),r&4&&Bg(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(nt=(c=nt)||d,qt(t,e),nt=c):qt(t,e),pn(e),r&8192){if(c=e.memoizedState!==null,(e.stateNode.isHidden=c)&&!d&&e.mode&1)for(L=e,d=e.child;d!==null;){for(h=L=d;L!==null;){switch(f=L,m=f.child,f.tag){case 0:case 11:case 14:case 15:Na(4,f,f.return);break;case 1:ds(f,f.return);var w=f.stateNode;if(typeof w.componentWillUnmount=="function"){r=f,n=f.return;try{t=r,w.props=t.memoizedProps,w.state=t.memoizedState,w.componentWillUnmount()}catch(p){Ee(r,n,p)}}break;case 5:ds(f,f.return);break;case 22:if(f.memoizedState!==null){Vg(h);continue}}m!==null?(m.return=f,L=m):Vg(h)}d=d.sibling}e:for(d=null,h=e;;){if(h.tag===5){if(d===null){d=h;try{i=h.stateNode,c?(s=i.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(o=h.stateNode,l=h.memoizedProps.style,a=l!=null&&l.hasOwnProperty("display")?l.display:null,o.style.display=pb("display",a))}catch(p){Ee(e,e.return,p)}}}else if(h.tag===6){if(d===null)try{h.stateNode.nodeValue=c?"":h.memoizedProps}catch(p){Ee(e,e.return,p)}}else if((h.tag!==22&&h.tag!==23||h.memoizedState===null||h===e)&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===e)break e;for(;h.sibling===null;){if(h.return===null||h.return===e)break e;d===h&&(d=null),h=h.return}d===h&&(d=null),h.sibling.return=h.return,h=h.sibling}}break;case 19:qt(t,e),pn(e),r&4&&Bg(e);break;case 21:break;default:qt(t,e),pn(e)}}function pn(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(U0(n)){var r=n;break e}n=n.return}throw Error(z(160))}switch(r.tag){case 5:var i=r.stateNode;r.flags&32&&(Ga(i,""),r.flags&=-33);var s=Fg(e);Oh(e,s,i);break;case 3:case 4:var a=r.stateNode.containerInfo,o=Fg(e);Ih(e,o,a);break;default:throw Error(z(161))}}catch(l){Ee(e,e.return,l)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function HA(e,t,n){L=e,$0(e)}function $0(e,t,n){for(var r=(e.mode&1)!==0;L!==null;){var i=L,s=i.child;if(i.tag===22&&r){var a=i.memoizedState!==null||cl;if(!a){var o=i.alternate,l=o!==null&&o.memoizedState!==null||nt;o=cl;var c=nt;if(cl=a,(nt=l)&&!c)for(L=i;L!==null;)a=L,l=a.child,a.tag===22&&a.memoizedState!==null?Wg(i):l!==null?(l.return=a,L=l):Wg(i);for(;s!==null;)L=s,$0(s),s=s.sibling;L=i,cl=o,nt=c}Ug(e)}else i.subtreeFlags&8772&&s!==null?(s.return=i,L=s):Ug(e)}}function Ug(e){for(;L!==null;){var t=L;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:nt||au(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!nt)if(n===null)r.componentDidMount();else{var i=t.elementType===t.type?n.memoizedProps:en(t.type,n.memoizedProps);r.componentDidUpdate(i,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var s=t.updateQueue;s!==null&&Tg(t,s,r);break;case 3:var a=t.updateQueue;if(a!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}Tg(t,a,n)}break;case 5:var o=t.stateNode;if(n===null&&t.flags&4){n=o;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:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var c=t.alternate;if(c!==null){var d=c.memoizedState;if(d!==null){var h=d.dehydrated;h!==null&&Za(h)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(z(163))}nt||t.flags&512&&Mh(t)}catch(f){Ee(t,t.return,f)}}if(t===e){L=null;break}if(n=t.sibling,n!==null){n.return=t.return,L=n;break}L=t.return}}function Vg(e){for(;L!==null;){var t=L;if(t===e){L=null;break}var n=t.sibling;if(n!==null){n.return=t.return,L=n;break}L=t.return}}function Wg(e){for(;L!==null;){var t=L;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{au(4,t)}catch(l){Ee(t,n,l)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var i=t.return;try{r.componentDidMount()}catch(l){Ee(t,i,l)}}var s=t.return;try{Mh(t)}catch(l){Ee(t,s,l)}break;case 5:var a=t.return;try{Mh(t)}catch(l){Ee(t,a,l)}}}catch(l){Ee(t,t.return,l)}if(t===e){L=null;break}var o=t.sibling;if(o!==null){o.return=t.return,L=o;break}L=t.return}}var qA=Math.ceil,Ac=tr.ReactCurrentDispatcher,Tm=tr.ReactCurrentOwner,Ut=tr.ReactCurrentBatchConfig,ne=0,Be=null,Re=null,Ge=0,At=0,hs=Gr(0),Le=0,oo=null,_i=0,ou=0,Am=0,Ma=null,yt=null,Cm=0,Us=1/0,Bn=null,Cc=!1,Lh=null,Ir=null,ul=!1,_r=null,_c=0,Ia=0,Fh=null,$l=-1,Kl=0;function ht(){return ne&6?Ae():$l!==-1?$l:$l=Ae()}function Or(e){return e.mode&1?ne&2&&Ge!==0?Ge&-Ge:RA.transition!==null?(Kl===0&&(Kl=_b()),Kl):(e=se,e!==0||(e=window.event,e=e===void 0?16:Mb(e.type)),e):1}function cn(e,t,n,r){if(50<Ia)throw Ia=0,Fh=null,Error(z(185));jo(e,n,r),(!(ne&2)||e!==Be)&&(e===Be&&(!(ne&2)&&(ou|=n),Le===4&&wr(e,Ge)),xt(e,r),n===1&&ne===0&&!(t.mode&1)&&(Us=Ae()+500,ru&&Hr()))}function xt(e,t){var n=e.callbackNode;RT(e,t);var r=dc(e,e===Be?Ge:0);if(r===0)n!==null&&Qp(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Qp(n),t===1)e.tag===0?jA($g.bind(null,e)):e0($g.bind(null,e)),AA(function(){!(ne&6)&&Hr()}),n=null;else{switch(Pb(r)){case 1:n=Xf;break;case 4:n=Ab;break;case 16:n=uc;break;case 536870912:n=Cb;break;default:n=uc}n=Q0(n,K0.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function K0(e,t){if($l=-1,Kl=0,ne&6)throw Error(z(327));var n=e.callbackNode;if(xs()&&e.callbackNode!==n)return null;var r=dc(e,e===Be?Ge:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=Pc(e,r);else{t=r;var i=ne;ne|=2;var s=H0();(Be!==e||Ge!==t)&&(Bn=null,Us=Ae()+500,wi(e,t));do try{YA();break}catch(o){G0(e,o)}while(!0);hm(),Ac.current=s,ne=i,Re!==null?t=0:(Be=null,Ge=0,t=Le)}if(t!==0){if(t===2&&(i=hh(e),i!==0&&(r=i,t=Bh(e,i))),t===1)throw n=oo,wi(e,0),wr(e,r),xt(e,Ae()),n;if(t===6)wr(e,r);else{if(i=e.current.alternate,!(r&30)&&!JA(i)&&(t=Pc(e,r),t===2&&(s=hh(e),s!==0&&(r=s,t=Bh(e,s))),t===1))throw n=oo,wi(e,0),wr(e,r),xt(e,Ae()),n;switch(e.finishedWork=i,e.finishedLanes=r,t){case 0:case 1:throw Error(z(345));case 2:ri(e,yt,Bn);break;case 3:if(wr(e,r),(r&130023424)===r&&(t=Cm+500-Ae(),10<t)){if(dc(e,0)!==0)break;if(i=e.suspendedLanes,(i&r)!==r){ht(),e.pingedLanes|=e.suspendedLanes&i;break}e.timeoutHandle=bh(ri.bind(null,e,yt,Bn),t);break}ri(e,yt,Bn);break;case 4:if(wr(e,r),(r&4194240)===r)break;for(t=e.eventTimes,i=-1;0<r;){var a=31-ln(r);s=1<<a,a=t[a],a>i&&(i=a),r&=~s}if(r=i,r=Ae()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*qA(r/1960))-r,10<r){e.timeoutHandle=bh(ri.bind(null,e,yt,Bn),r);break}ri(e,yt,Bn);break;case 5:ri(e,yt,Bn);break;default:throw Error(z(329))}}}return xt(e,Ae()),e.callbackNode===n?K0.bind(null,e):null}function Bh(e,t){var n=Ma;return e.current.memoizedState.isDehydrated&&(wi(e,t).flags|=256),e=Pc(e,t),e!==2&&(t=yt,yt=n,t!==null&&Uh(t)),e}function Uh(e){yt===null?yt=e:yt.push.apply(yt,e)}function JA(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var i=n[r],s=i.getSnapshot;i=i.value;try{if(!dn(s(),i))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function wr(e,t){for(t&=~Am,t&=~ou,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-ln(t),r=1<<n;e[n]=-1,t&=~r}}function $g(e){if(ne&6)throw Error(z(327));xs();var t=dc(e,0);if(!(t&1))return xt(e,Ae()),null;var n=Pc(e,t);if(e.tag!==0&&n===2){var r=hh(e);r!==0&&(t=r,n=Bh(e,r))}if(n===1)throw n=oo,wi(e,0),wr(e,t),xt(e,Ae()),n;if(n===6)throw Error(z(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,ri(e,yt,Bn),xt(e,Ae()),null}function _m(e,t){var n=ne;ne|=1;try{return e(t)}finally{ne=n,ne===0&&(Us=Ae()+500,ru&&Hr())}}function Pi(e){_r!==null&&_r.tag===0&&!(ne&6)&&xs();var t=ne;ne|=1;var n=Ut.transition,r=se;try{if(Ut.transition=null,se=1,e)return e()}finally{se=r,Ut.transition=n,ne=t,!(ne&6)&&Hr()}}function Pm(){At=hs.current,fe(hs)}function wi(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,TA(n)),Re!==null)for(n=Re.return;n!==null;){var r=n;switch(cm(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&gc();break;case 3:Fs(),fe(bt),fe(rt),ym();break;case 5:vm(r);break;case 4:Fs();break;case 13:fe(ye);break;case 19:fe(ye);break;case 10:fm(r.type._context);break;case 22:case 23:Pm()}n=n.return}if(Be=e,Re=e=Lr(e.current,null),Ge=At=t,Le=0,oo=null,Am=ou=_i=0,yt=Ma=null,li!==null){for(t=0;t<li.length;t++)if(n=li[t],r=n.interleaved,r!==null){n.interleaved=null;var i=r.next,s=n.pending;if(s!==null){var a=s.next;s.next=i,r.next=a}n.pending=r}li=null}return e}function G0(e,t){do{var n=Re;try{if(hm(),Ul.current=Tc,Ec){for(var r=we.memoizedState;r!==null;){var i=r.queue;i!==null&&(i.pending=null),r=r.next}Ec=!1}if(Ci=0,Fe=Oe=we=null,Da=!1,io=0,Tm.current=null,n===null||n.return===null){Le=1,oo=t,Re=null;break}e:{var s=e,a=n.return,o=n,l=t;if(t=Ge,o.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var c=l,d=o,h=d.tag;if(!(d.mode&1)&&(h===0||h===11||h===15)){var f=d.alternate;f?(d.updateQueue=f.updateQueue,d.memoizedState=f.memoizedState,d.lanes=f.lanes):(d.updateQueue=null,d.memoizedState=null)}var m=Rg(a);if(m!==null){m.flags&=-257,zg(m,a,o,s,t),m.mode&1&&jg(s,c,t),t=m,l=c;var w=t.updateQueue;if(w===null){var p=new Set;p.add(l),t.updateQueue=p}else w.add(l);break e}else{if(!(t&1)){jg(s,c,t),jm();break e}l=Error(z(426))}}else if(pe&&o.mode&1){var b=Rg(a);if(b!==null){!(b.flags&65536)&&(b.flags|=256),zg(b,a,o,s,t),um(Bs(l,o));break e}}s=l=Bs(l,o),Le!==4&&(Le=2),Ma===null?Ma=[s]:Ma.push(s),s=a;do{switch(s.tag){case 3:s.flags|=65536,t&=-t,s.lanes|=t;var v=P0(s,l,t);Eg(s,v);break e;case 1:o=l;var g=s.type,y=s.stateNode;if(!(s.flags&128)&&(typeof g.getDerivedStateFromError=="function"||y!==null&&typeof y.componentDidCatch=="function"&&(Ir===null||!Ir.has(y)))){s.flags|=65536,t&=-t,s.lanes|=t;var x=j0(s,o,t);Eg(s,x);break e}}s=s.return}while(s!==null)}J0(n)}catch(E){t=E,Re===n&&n!==null&&(Re=n=n.return);continue}break}while(!0)}function H0(){var e=Ac.current;return Ac.current=Tc,e===null?Tc:e}function jm(){(Le===0||Le===3||Le===2)&&(Le=4),Be===null||!(_i&268435455)&&!(ou&268435455)||wr(Be,Ge)}function Pc(e,t){var n=ne;ne|=2;var r=H0();(Be!==e||Ge!==t)&&(Bn=null,wi(e,t));do try{ZA();break}catch(i){G0(e,i)}while(!0);if(hm(),ne=n,Ac.current=r,Re!==null)throw Error(z(261));return Be=null,Ge=0,Le}function ZA(){for(;Re!==null;)q0(Re)}function YA(){for(;Re!==null&&!xT();)q0(Re)}function q0(e){var t=Y0(e.alternate,e,At);e.memoizedProps=e.pendingProps,t===null?J0(e):Re=t,Tm.current=null}function J0(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=$A(n,t),n!==null){n.flags&=32767,Re=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Le=6,Re=null;return}}else if(n=WA(n,t,At),n!==null){Re=n;return}if(t=t.sibling,t!==null){Re=t;return}Re=t=e}while(t!==null);Le===0&&(Le=5)}function ri(e,t,n){var r=se,i=Ut.transition;try{Ut.transition=null,se=1,QA(e,t,n,r)}finally{Ut.transition=i,se=r}return null}function QA(e,t,n,r){do xs();while(_r!==null);if(ne&6)throw Error(z(327));n=e.finishedWork;var i=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(z(177));e.callbackNode=null,e.callbackPriority=0;var s=n.lanes|n.childLanes;if(zT(e,s),e===Be&&(Re=Be=null,Ge=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||ul||(ul=!0,Q0(uc,function(){return xs(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=Ut.transition,Ut.transition=null;var a=se;se=1;var o=ne;ne|=4,Tm.current=null,GA(e,n),W0(n,e),yA(yh),hc=!!vh,yh=vh=null,e.current=n,HA(n),ST(),ne=o,se=a,Ut.transition=s}else e.current=n;if(ul&&(ul=!1,_r=e,_c=i),s=e.pendingLanes,s===0&&(Ir=null),AT(n.stateNode),xt(e,Ae()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)i=t[n],r(i.value,{componentStack:i.stack,digest:i.digest});if(Cc)throw Cc=!1,e=Lh,Lh=null,e;return _c&1&&e.tag!==0&&xs(),s=e.pendingLanes,s&1?e===Fh?Ia++:(Ia=0,Fh=e):Ia=0,Hr(),null}function xs(){if(_r!==null){var e=Pb(_c),t=Ut.transition,n=se;try{if(Ut.transition=null,se=16>e?16:e,_r===null)var r=!1;else{if(e=_r,_r=null,_c=0,ne&6)throw Error(z(331));var i=ne;for(ne|=4,L=e.current;L!==null;){var s=L,a=s.child;if(L.flags&16){var o=s.deletions;if(o!==null){for(var l=0;l<o.length;l++){var c=o[l];for(L=c;L!==null;){var d=L;switch(d.tag){case 0:case 11:case 15:Na(8,d,s)}var h=d.child;if(h!==null)h.return=d,L=h;else for(;L!==null;){d=L;var f=d.sibling,m=d.return;if(B0(d),d===c){L=null;break}if(f!==null){f.return=m,L=f;break}L=m}}}var w=s.alternate;if(w!==null){var p=w.child;if(p!==null){w.child=null;do{var b=p.sibling;p.sibling=null,p=b}while(p!==null)}}L=s}}if(s.subtreeFlags&2064&&a!==null)a.return=s,L=a;else e:for(;L!==null;){if(s=L,s.flags&2048)switch(s.tag){case 0:case 11:case 15:Na(9,s,s.return)}var v=s.sibling;if(v!==null){v.return=s.return,L=v;break e}L=s.return}}var g=e.current;for(L=g;L!==null;){a=L;var y=a.child;if(a.subtreeFlags&2064&&y!==null)y.return=a,L=y;else e:for(a=g;L!==null;){if(o=L,o.flags&2048)try{switch(o.tag){case 0:case 11:case 15:au(9,o)}}catch(E){Ee(o,o.return,E)}if(o===a){L=null;break e}var x=o.sibling;if(x!==null){x.return=o.return,L=x;break e}L=o.return}}if(ne=i,Hr(),Pn&&typeof Pn.onPostCommitFiberRoot=="function")try{Pn.onPostCommitFiberRoot(Qc,e)}catch{}r=!0}return r}finally{se=n,Ut.transition=t}}return!1}function Kg(e,t,n){t=Bs(n,t),t=P0(e,t,1),e=Mr(e,t,1),t=ht(),e!==null&&(jo(e,1,t),xt(e,t))}function Ee(e,t,n){if(e.tag===3)Kg(e,e,n);else for(;t!==null;){if(t.tag===3){Kg(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(Ir===null||!Ir.has(r))){e=Bs(n,e),e=j0(t,e,1),t=Mr(t,e,1),e=ht(),t!==null&&(jo(t,1,e),xt(t,e));break}}t=t.return}}function XA(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=ht(),e.pingedLanes|=e.suspendedLanes&n,Be===e&&(Ge&n)===n&&(Le===4||Le===3&&(Ge&130023424)===Ge&&500>Ae()-Cm?wi(e,0):Am|=n),xt(e,t)}function Z0(e,t){t===0&&(e.mode&1?(t=el,el<<=1,!(el&130023424)&&(el=4194304)):t=1);var n=ht();e=Zn(e,t),e!==null&&(jo(e,t,n),xt(e,n))}function eC(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Z0(e,n)}function tC(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(z(314))}r!==null&&r.delete(t),Z0(e,n)}var Y0;Y0=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||bt.current)wt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return wt=!1,VA(e,t,n);wt=!!(e.flags&131072)}else wt=!1,pe&&t.flags&1048576&&t0(t,wc,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Wl(e,t),e=t.pendingProps;var i=Is(t,rt.current);ks(t,n),i=bm(null,t,r,e,i,n);var s=km();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,kt(r)?(s=!0,vc(t)):s=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,pm(t),i.updater=su,t.stateNode=i,i._reactInternals=t,Ch(t,r,e,n),t=jh(null,t,r,!0,s,n)):(t.tag=0,pe&&s&&lm(t),lt(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Wl(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=rC(r),e=en(r,e),i){case 0:t=Ph(null,t,r,e,n);break e;case 1:t=Mg(null,t,r,e,n);break e;case 11:t=Dg(null,t,r,e,n);break e;case 14:t=Ng(null,t,r,en(r.type,e),n);break e}throw Error(z(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:en(r,i),Ph(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:en(r,i),Mg(e,t,r,i,n);case 3:e:{if(N0(t),e===null)throw Error(z(387));r=t.pendingProps,s=t.memoizedState,i=s.element,o0(e,t),xc(t,r,null,n);var a=t.memoizedState;if(r=a.element,s.isDehydrated)if(s={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){i=Bs(Error(z(423)),t),t=Ig(e,t,r,n,i);break e}else if(r!==i){i=Bs(Error(z(424)),t),t=Ig(e,t,r,n,i);break e}else for(Pt=Nr(t.stateNode.containerInfo.firstChild),jt=t,pe=!0,on=null,n=s0(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Os(),r===i){t=Yn(e,t,n);break e}lt(e,t,r,n)}t=t.child}return t;case 5:return l0(t),e===null&&Eh(t),r=t.type,i=t.pendingProps,s=e!==null?e.memoizedProps:null,a=i.children,wh(r,i)?a=null:s!==null&&wh(r,s)&&(t.flags|=32),D0(e,t),lt(e,t,a,n),t.child;case 6:return e===null&&Eh(t),null;case 13:return M0(e,t,n);case 4:return gm(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ls(t,null,r,n):lt(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:en(r,i),Dg(e,t,r,i,n);case 7:return lt(e,t,t.pendingProps,n),t.child;case 8:return lt(e,t,t.pendingProps.children,n),t.child;case 12:return lt(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,s=t.memoizedProps,a=i.value,ce(bc,r._currentValue),r._currentValue=a,s!==null)if(dn(s.value,a)){if(s.children===i.children&&!bt.current){t=Yn(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var o=s.dependencies;if(o!==null){a=s.child;for(var l=o.firstContext;l!==null;){if(l.context===r){if(s.tag===1){l=Hn(-1,n&-n),l.tag=2;var c=s.updateQueue;if(c!==null){c=c.shared;var d=c.pending;d===null?l.next=l:(l.next=d.next,d.next=l),c.pending=l}}s.lanes|=n,l=s.alternate,l!==null&&(l.lanes|=n),Th(s.return,n,t),o.lanes|=n;break}l=l.next}}else if(s.tag===10)a=s.type===t.type?null:s.child;else if(s.tag===18){if(a=s.return,a===null)throw Error(z(341));a.lanes|=n,o=a.alternate,o!==null&&(o.lanes|=n),Th(a,n,t),a=s.sibling}else a=s.child;if(a!==null)a.return=s;else for(a=s;a!==null;){if(a===t){a=null;break}if(s=a.sibling,s!==null){s.return=a.return,a=s;break}a=a.return}s=a}lt(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,ks(t,n),i=Wt(i),r=r(i),t.flags|=1,lt(e,t,r,n),t.child;case 14:return r=t.type,i=en(r,t.pendingProps),i=en(r.type,i),Ng(e,t,r,i,n);case 15:return R0(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:en(r,i),Wl(e,t),t.tag=1,kt(r)?(e=!0,vc(t)):e=!1,ks(t,n),_0(t,r,i),Ch(t,r,i,n),jh(null,t,r,!0,e,n);case 19:return I0(e,t,n);case 22:return z0(e,t,n)}throw Error(z(156,t.tag))};function Q0(e,t){return Tb(e,t)}function nC(e,t,n,r){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=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ft(e,t,n,r){return new nC(e,t,n,r)}function Rm(e){return e=e.prototype,!(!e||!e.isReactComponent)}function rC(e){if(typeof e=="function")return Rm(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Zf)return 11;if(e===Yf)return 14}return 2}function Lr(e,t){var n=e.alternate;return n===null?(n=Ft(e.tag,t,e.key,e.mode),n.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.deleti
vendor: 5,099 bytes, line 40
40ons=null),n.flags=e.flags&14680064,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=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Gl(e,t,n,r,i,s){var a=2;if(r=e,typeof e=="function")Rm(e)&&(a=1);else if(typeof e=="string")a=5;else e:switch(e){case ns:return bi(n.children,i,s,t);case Jf:a=8,i|=8;break;case Yd:return e=Ft(12,n,t,i|2),e.elementType=Yd,e.lanes=s,e;case Qd:return e=Ft(13,n,t,i),e.elementType=Qd,e.lanes=s,e;case Xd:return e=Ft(19,n,t,i),e.elementType=Xd,e.lanes=s,e;case lb:return lu(n,i,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case ab:a=10;break e;case ob:a=9;break e;case Zf:a=11;break e;case Yf:a=14;break e;case gr:a=16,r=null;break e}throw Error(z(130,e==null?e:typeof e,""))}return t=Ft(a,n,t,i),t.elementType=e,t.type=r,t.lanes=s,t}function bi(e,t,n,r){return e=Ft(7,e,r,t),e.lanes=n,e}function lu(e,t,n,r){return e=Ft(22,e,r,t),e.elementType=lb,e.lanes=n,e.stateNode={isHidden:!1},e}function hd(e,t,n){return e=Ft(6,e,null,t),e.lanes=n,e}function fd(e,t,n){return t=Ft(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function iC(e,t,n,r,i){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=Hu(0),this.expirationTimes=Hu(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Hu(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function zm(e,t,n,r,i,s,a,o,l){return e=new iC(e,t,n,o,l),t===1?(t=1,s===!0&&(t|=8)):t=0,s=Ft(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},pm(s),e}function sC(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:ts,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function X0(e){if(!e)return Br;e=e._reactInternals;e:{if(Di(e)!==e||e.tag!==1)throw Error(z(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(kt(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(z(171))}if(e.tag===1){var n=e.type;if(kt(n))return Xb(e,n,t)}return t}function ek(e,t,n,r,i,s,a,o,l){return e=zm(n,r,!0,e,i,s,a,o,l),e.context=X0(null),n=e.current,r=ht(),i=Or(n),s=Hn(r,i),s.callback=t??null,Mr(n,s,i),e.current.lanes=i,jo(e,i,r),xt(e,r),e}function cu(e,t,n,r){var i=t.current,s=ht(),a=Or(i);return n=X0(n),t.context===null?t.context=n:t.pendingContext=n,t=Hn(s,a),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=Mr(i,t,a),e!==null&&(cn(e,i,a,s),Bl(e,i,a)),a}function jc(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Gg(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Dm(e,t){Gg(e,t),(e=e.alternate)&&Gg(e,t)}function aC(){return null}var tk=typeof reportError=="function"?reportError:function(e){console.error(e)};function Nm(e){this._internalRoot=e}uu.prototype.render=Nm.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(z(409));cu(e,t,null,null)};uu.prototype.unmount=Nm.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Pi(function(){cu(null,e,null,null)}),t[Jn]=null}};function uu(e){this._internalRoot=e}uu.prototype.unstable_scheduleHydration=function(e){if(e){var t=zb();e={blockedOn:null,target:e,priority:t};for(var n=0;n<yr.length&&t!==0&&t<yr[n].priority;n++);yr.splice(n,0,e),n===0&&Nb(e)}};function Mm(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function du(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Hg(){}function oC(e,t,n,r,i){if(i){if(typeof r=="function"){var s=r;r=function(){var c=jc(a);s.call(c)}}var a=ek(t,r,e,0,null,!1,!1,"",Hg);return e._reactRootContainer=a,e[Jn]=a.current,Xa(e.nodeType===8?e.parentNode:e),Pi(),a}for(;i=e.lastChild;)e.removeChild(i);if(typeof r=="function"){var o=r;r=function(){var c=jc(l);o.call(c)}}var l=zm(e,0,!1,null,null,!1,!1,"",Hg);return e._reactRootContainer=l,e[Jn]=l.current,Xa(e.nodeType===8?e.parentNode:e),Pi(function(){cu(t,l,n,r)}),l}function hu(e,t,n,r,i){var s=n._reactRootContainer;if(s){var a=s;if(typeof i=="function"){var o=i;i=function(){var l=jc(a);o.call(l)}}cu(t,a,e,i)}else a=oC(n,t,e,i,r);return jc(a)}jb=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=Sa(t.pendingLanes);
40n!==0&&(em(t,n|1),xt(t,Ae()),!(ne&6)&&(Us=Ae()+500,Hr()))}break;case 13:Pi(function(){var r=Zn(e,1);if(r!==null){var i=ht();cn(r,e,1,i)}}),Dm(e,1)}};tm=function(e){if(e.tag===13){var t=Zn(e,134217728);if(t!==null){var n=ht();cn(t,e,134217728,n)}Dm(e,134217728)}};Rb=function(e){if(e.tag===13){var t=Or(e),n=Zn(e,t);if(n!==null){var r=ht();cn(n,e,t,r)}Dm(e,t)}};zb=function(){return se};Db=function(e,t){var n=se;try{return se=e,t()}finally{se=n}};ch=function(e,t,n){switch(t){case"input":if(nh(e,n),t=n.name,n.type==="radio"&&t!=null){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 r=n[t];if(r!==e&&r.form===e.form){var i=nu(r);if(!i)throw Error(z(90));ub(r),nh(r,i)}}}break;case"textarea":hb(e,n);break;case"select":t=n.value,t!=null&&vs(e,!!n.multiple,t,!1)}};wb=_m;bb=Pi;var lC={usingClientEntryPoint:!1,Events:[zo,as,nu,vb,yb,_m]},pa={findFiberByHostInstance:oi,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},cC={bundleType:pa.bundleType,version:pa.version,rendererPackageName:pa.rendererPackageName,rendererConfig:pa.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:tr.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Sb(e),e===null?null:e.stateNode},findFiberByHostInstance:pa.findFiberByHostInstance||aC,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var dl=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!dl.isDisabled&&dl.supportsFiber)try{Qc=dl.inject(cC),Pn=dl}catch{}}Dt.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=lC;Dt.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Mm(t))throw Error(z(200));return sC(e,t,null,n)};Dt.createRoot=function(e,t){if(!Mm(e))throw Error(z(299));var n=!1,r="",i=tk;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(i=t.onRecoverableError)),t=zm(e,1,!1,null,null,n,!1,r,i),e[Jn]=t.current,Xa(e.nodeType===8?e.parentNode:e),new Nm(t)};Dt.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(z(188)):(e=Object.keys(e).join(","),Error(z(268,e)));return e=Sb(t),e=e===null?null:e.stateNode,e};Dt.flushSync=function(e){return Pi(e)};Dt.hydrate=function(e,t,n){if(!du(t))throw Error(z(200));return hu(null,e,t,!0,n)};Dt.hydrateRoot=function(e,t,n){if(!Mm(e))throw Error(z(405));var r=n!=null&&n.hydratedSources||null,i=!1,s="",a=tk;if(n!=null&&(n.unstable_strictMode===!0&&(i=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(a=n.onRecoverableError)),t=ek(t,null,e,1,n??null,i,!1,s,a),e[Jn]=t.current,Xa(e),r)for(e=0;e<r.length;e++)n=r[e],i=n._getVersion,i=i(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,i]:t.mutableSourceEagerHydrationData.push(n,i);return new uu(t)};Dt.render=function(e,t,n){if(!du(t))throw Error(z(200));return hu(null,e,t,!1,n)};Dt.unmountComponentAtNode=function(e){if(!du(e))throw Error(z(40));return e._reactRootContainer?(Pi(function(){hu(null,null,e,!1,function(){e._reactRootContainer=null,e[Jn]=null})}),!0):!1};Dt.unstable_batchedUpdates=_m;Dt.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!du(n))throw Error(z(200));if(e==null||e._reactInternals===void 0)throw Error(z(38));return hu(e,t,n,!1,r)};Dt.version="18.3.1-next-f1338f8080-20240426";function nk(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(nk)}catch(e){console.error(e)}}nk(),nb.exports=Dt;var No=nb.exports;const rk=$w(No);var ik,qg=No;ik=qg.createRoot,qg.hydrateRoot;var fu=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(){}},mu=typeof window>"u"||"Deno"in globalThis;function tn(){}function uC(e,t){return typeof e=="function"?e(t):e}function dC(e){return typeof e=="number"&&e>=0&&e!==1/0}function hC(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Vh(e,t){return typeof e=="function"?e(t):e}function fC(e,t){return typeof e=="function"?e(t):e}function Jg(e,t){const{type:n="all",exact:r,fetchStatus:i,predicate:s,queryKey:a,stale:o}=e;if(a){if(r){if(t.queryHash!==Im(a,t.options))return!1}else if(!co(t.queryKey,a))return!1}if(n!=="all"){const l=t.isActive();if(n==="active"&&!l||n==="inactive"&&l)return!1}return!(typeof o=="boolean"&&t.isStale()!==o||i&&i!==t.state.fetchStatus||s&&!s(t))}function Zg(e,t){const{exact:n,status:r,predicate:i,mutationKey:s}=e;if(s){if(!t.options.mutationKey)return!1;if(n){if(lo(t.options.mutationKey)!==lo(s))return!1}else if(!co(t.options.mutationKey,s))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function Im(e,t){return((t==null?void 0:t.queryKeyHashFn)||lo)(e)}function lo(e){return JSON.stringify(e,(t,n)=>Wh(n)?Object.keys(n).sort().reduce((r,i)=>(r[i]=n[i],r),{}):n)}function co(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(n=>co(e[n],t[n])):!1}function sk(e,t){if(e===t)return e;const n=Yg(e)&&Yg(t);if(n||Wh(e)&&Wh(t)){const r=n?e:Object.keys(e),i=r.length,s=n?t:Object.keys(t),a=s.length,o=n?[]:{},l=new Set(r);let c=0;for(let d=0;d<a;d++){const h=n?d:s[d];
vendor: 21,312 bytes, line 40
40(!n&&l.has(h)||n)&&e[h]===void 0&&t[h]===void 0?(o[h]=void 0,c++):(o[h]=sk(e[h],t[h]),o[h]===e[h]&&e[h]!==void 0&&c++)}return i===a&&c===i?e:o}return t}function Yg(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function Wh(e){if(!Qg(e))return!1;const t=e.constructor;if(t===void 0)return!0;const n=t.prototype;return!(!Qg(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function Qg(e){return Object.prototype.toString.call(e)==="[object Object]"}function mC(e){return new Promise(t=>{setTimeout(t,e)})}function pC(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?sk(e,t):t}function gC(e,t,n=0){const r=[...e,t];return n&&r.length>n?r.slice(1):r}function vC(e,t,n=0){const r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var Om=Symbol();function ak(e,t){return!e.queryFn&&(t!=null&&t.initialPromise)?()=>t.initialPromise:!e.queryFn||e.queryFn===Om?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}var fi,xr,Cs,Iw,yC=(Iw=class extends fu{constructor(){super();re(this,fi);re(this,xr);re(this,Cs);Z(this,Cs,t=>{if(!mu&&window.addEventListener){const n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){R(this,xr)||this.setEventListener(R(this,Cs))}onUnsubscribe(){var t;this.hasListeners()||((t=R(this,xr))==null||t.call(this),Z(this,xr,void 0))}setEventListener(t){var n;Z(this,Cs,t),(n=R(this,xr))==null||n.call(this),Z(this,xr,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){R(this,fi)!==t&&(Z(this,fi,t),this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){var t;return typeof R(this,fi)=="boolean"?R(this,fi):((t=globalThis.document)==null?void 0:t.visibilityState)!=="hidden"}},fi=new WeakMap,xr=new WeakMap,Cs=new WeakMap,Iw),ok=new yC,_s,Sr,Ps,Ow,wC=(Ow=class extends fu{constructor(){super();re(this,_s,!0);re(this,Sr);re(this,Ps);Z(this,Ps,t=>{if(!mu&&window.addEventListener){const n=()=>t(!0),r=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}})}onSubscribe(){R(this,Sr)||this.setEventListener(R(this,Ps))}onUnsubscribe(){var t;this.hasListeners()||((t=R(this,Sr))==null||t.call(this),Z(this,Sr,void 0))}setEventListener(t){var n;Z(this,Ps,t),(n=R(this,Sr))==null||n.call(this),Z(this,Sr,t(this.setOnline.bind(this)))}setOnline(t){R(this,_s)!==t&&(Z(this,_s,t),this.listeners.forEach(r=>{r(t)}))}isOnline(){return R(this,_s)}},_s=new WeakMap,Sr=new WeakMap,Ps=new WeakMap,Ow),Rc=new wC;function bC(){let e,t;const n=new Promise((i,s)=>{e=i,t=s});n.status="pending",n.catch(()=>{});function r(i){Object.assign(n,i),delete n.resolve,delete n.reject}return n.resolve=i=>{r({status:"fulfilled",value:i}),e(i)},n.reject=i=>{r({status:"rejected",reason:i}),t(i)},n}function kC(e){return Math.min(1e3*2**e,3e4)}function lk(e){return(e??"online")==="online"?Rc.isOnline():!0}var ck=class extends Error{constructor(e){super("CancelledError"),this.revert=e==null?void 0:e.revert,this.silent=e==null?void 0:e.silent}};function md(e){return e instanceof ck}function uk(e){let t=!1,n=0,r=!1,i;const s=bC(),a=p=>{var b;r||(f(new ck(p)),(b=e.abort)==null||b.call(e))},o=()=>{t=!0},l=()=>{t=!1},c=()=>ok.isFocused()&&(e.networkMode==="always"||Rc.isOnline())&&e.canRun(),d=()=>lk(e.networkMode)&&e.canRun(),h=p=>{var b;r||(r=!0,(b=e.onSuccess)==null||b.call(e,p),i==null||i(),s.resolve(p))},f=p=>{var b;r||(r=!0,(b=e.onError)==null||b.call(e,p),i==null||i(),s.reject(p))},m=()=>new Promise(p=>{var b;i=v=>{(r||c())&&p(v)},(b=e.onPause)==null||b.call(e)}).then(()=>{var p;i=void 0,r||(p=e.onContinue)==null||p.call(e)}),w=()=>{if(r)return;let p;const b=n===0?e.initialPromise:void 0;try{p=b??e.fn()}catch(v){p=Promise.reject(v)}Promise.resolve(p).then(h).catch(v=>{var T;if(r)return;const g=e.retry??(mu?0:3),y=e.retryDelay??kC,x=typeof y=="function"?y(n,v):y,E=g===!0||typeof g=="number"&&n<g||typeof g=="function"&&g(n,v);if(t||!E){f(v);return}n++,(T=e.onFail)==null||T.call(e,n,v),mC(x).then(()=>c()?void 0:m()).then(()=>{t?f(v):w()})})};return{promise:s,cancel:a,continue:()=>(i==null||i(),s),cancelRetry:o,continueRetry:l,canStart:d,start:()=>(d()?w():m().then(w),s)}}var xC=e=>setTimeout(e,0);function SC(){let e=[],t=0,n=o=>{o()},r=o=>{o()},i=xC;const s=o=>{t?e.push(o):i(()=>{n(o)})},a=()=>{const o=e;e=[],o.length&&i(()=>{r(()=>{o.forEach(l=>{n(l)})})})};return{batch:o=>{let l;t++;try{l=o()}finally{t--,t||a()}return l},batchCalls:o=>(...l)=>{s(()=>{o(...l)})},schedule:s,setNotifyFunction:o=>{n=o},setBatchNotifyFunction:o=>{r=o},setScheduler:o=>{i=o}}}var ct=SC(),mi,Lw,dk=(Lw=class{constructor(){re(this,mi)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),dC(this.gcTime)&&Z(this,mi,setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(mu?1/0:5*60*1e3))}clearGcTimeout(){R(this,mi)&&(clearTimeout(R(this,mi)),Z(this,mi,void 0))}},mi=new WeakMap,Lw),js,pi,It,gi,tt,Co,vi,rn,Fn,Fw,EC=(Fw=class extends dk{constructor(t){super();re(this,rn);re(this,js);re(this,pi);re(this,It);re(this,gi);re(this,tt);re(this,Co);re(this,vi);Z(this,vi,!1),Z(this,Co,t.defaultOptions),this.setOptions(t.options),this.observers=[],Z(this,gi,t.client),Z(this,It,R(this,gi).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,Z(this,js,AC(this.options)),this.state=t.state??R(this,js),this.scheduleGc()}get meta(){return this.options.meta}get promise(){var t;return(t=R(this,tt))==null?void 0:t.promise}setOptions(t){this.options={...R(this,Co),...t},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&R(this,It).remove(this)}setData(t,n){const r=pC(this.state.data,t,this.options);return Ze(this,rn,Fn).call(this,{data:r,type:"success",dataUpdatedAt:n==null?void 0:n.updatedAt,manual:n==null?void 0:n.manual}),r}setState(t,n){Ze(this,rn,Fn).call(this,{type:"setState",state:t,setStateOptions:n})}cancel(t){var r,i;const n=(r=R(this,tt))==null?void 0:r.promise;return(i=R(this,tt))==null||i.cancel(t),n?n.then(tn).catch(tn):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(R(this,js))}isActive(){return this.observers.some(t=>fC(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Om||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>Vh(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!hC(this.state.dataUpdatedAt,t)}onFocus(){var n;const t=this.observers.find(r=>r.shouldFetchOnWindowFocus());t==null||t.refetch({cancelRefetch:!1}),(n=R(this,tt))==null||n.continue()}onOnline(){var n;const t=this.observers.find(r=>r.shouldFetchOnReconnect());t==null||t.refetch({cancelRefetch:!1}),(n=R(this,tt))==null||n.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),R(this,It).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(n=>n!==t),this.observers.length||(R(this,tt)&&(R(this,vi)?R(this,tt).cancel({revert:!0}):R(this,tt).cancelRetry()),this.scheduleGc()),R(this,It).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||Ze(this,rn,Fn).call(this,{type:"invalidate"})}fetch(t,n){var c,d,h;if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&(n!=null&&n.cancelRefetch))this.cancel({silent:!0});else if(R(this,tt))return R(this,tt).continueRetry(),R(this,tt).promise}if(t&&this.setOptions(t),!this.options.queryFn){const f=this.observers.find(m=>m.options.queryFn);f&&this.setOptions(f.options)}const r=new AbortController,i=f=>{Object.defineProperty(f,"signal",{enumerable:!0,get:()=>(Z(this,vi,!0),r.signal)})},s=()=>{const f=ak(this.options,n),w=(()=>{const p={client:R(this,gi),queryKey:this.queryKey,meta:this.meta};return i(p),p})();return Z(this,vi,!1),this.options.persister?this.options.persister(f,w,this):f(w)},o=(()=>{const f={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:R(this,gi),state:this.state,fetchFn:s};return i(f),f})();(c=this.options.behavior)==null||c.onFetch(o,this),Z(this,pi,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((d=o.fetchOptions)==null?void 0:d.meta))&&Ze(this,rn,Fn).call(this,{type:"fetch",meta:(h=o.fetchOptions)==null?void 0:h.meta});const l=f=>{var m,w,p,b;md(f)&&f.silent||Ze(this,rn,Fn).call(this,{type:"error",error:f}),md(f)||((w=(m=R(this,It).config).onError)==null||w.call(m,f,this),(b=(p=R(this,It).config).onSettled)==null||b.call(p,this.state.data,f,this)),this.scheduleGc()};return Z(this,tt,uk({initialPromise:n==null?void 0:n.initialPromise,fn:o.fetchFn,abort:r.abort.bind(r),onSuccess:f=>{var m,w,p,b;if(f===void 0){l(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(f)}catch(v){l(v);return}(w=(m=R(this,It).config).onSuccess)==null||w.call(m,f,this),(b=(p=R(this,It).config).onSettled)==null||b.call(p,f,this.state.error,this),this.scheduleGc()},onError:l,onFail:(f,m)=>{Ze(this,rn,Fn).call(this,{type:"failed",failureCount:f,error:m})},onPause:()=>{Ze(this,rn,Fn).call(this,{type:"pause"})},onContinue:()=>{Ze(this,rn,Fn).call(this,{type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0})),R(this,tt).start()}},js=new WeakMap,pi=new WeakMap,It=new WeakMap,gi=new WeakMap,tt=new WeakMap,Co=new WeakMap,vi=new WeakMap,rn=new WeakSet,Fn=function(t){const n=r=>{switch(t.type){case"failed":return{...r,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...TC(r.data,this.options),fetchMeta:t.meta??null};case"success":return Z(this,pi,void 0),{...r,data:t.data,dataUpdateCount:r.dataUpdateCount+1,dataUpdatedAt:t.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const i=t.error;return md(i)&&i.revert&&R(this,pi)?{...R(this,pi),fetchStatus:"idle"}:{...r,error:i,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:i,fetchStatus:"idle",status:"error"};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...t.state}}};this.state=n(this.state),ct.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),R(this,It).notify({query:this,type:"updated",action:t})})},Fw);function TC(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:lk(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function AC(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var kn,Bw,CC=(Bw=class extends fu{constructor(t={}){super();re(this,kn);this.config=t,Z(this,kn,new Map)}build(t,n,r){const i=n.queryKey,s=n.queryHash??Im(i,n);let a=this.get(s);return a||(a=new EC({client:t,queryKey:i,queryHash:s,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(i)}),this.add(a)),a}add(t){R(this,kn).has(t.queryHash)||(R(this,kn).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const n=R(this,kn).get(t.queryHash);n&&(t.destroy(),n===t&&R(this,kn).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){ct.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return R(this,kn).get(t)}getAll(){return[...R(this,kn).values()]}find(t){const n={exact:!0,...t};return this.getAll().find(r=>Jg(n,r))}findAll(t={}){const n=this.getAll();return Object.keys(t).length>0?n.filter(r=>Jg(t,r)):n}notify(t){ct.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){ct.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){ct.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},kn=new WeakMap,Bw),xn,at,yi,Sn,hr,Uw,_C=(Uw=class extends dk{constructor(t){super();re(this,Sn);re(this,xn);re(this,at);re(this,yi);this.mutationId=t.mutationId,Z(this,at,t.mutationCache),Z(this,xn,[]),this.state=t.state||PC(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){R(this,xn).includes(t)||(R(this,xn).push(t),this.clearGcTimeout(),R(this,at).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){Z(this,xn,R(this,xn).filter(n=>n!==t)),this.scheduleGc(),R(this,at).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){R(this,xn).length||(this.state.status==="pending"?this.scheduleGc():R(this,at).remove(this))}continue(){var t;return((t=R(this,yi))==null?void 0:t.continue())??this.execute(this.state.variables)}async execute(t){var s,a,o,l,c,d,h,f,m,w,p,b,v,g,y,x,E,T,S,A;const n=()=>{Ze(this,Sn,hr).call(this,{type:"continue"})};Z(this,yi,uk({fn:()=>this.options.mutationFn?this.options.mutationFn(t):Promise.reject(new Error("No mutationFn found")),onFail:(_,C)=>{Ze(this,Sn,hr).call(this,{type:"failed",failureCount:_,error:C})},onPause:()=>{Ze(this,Sn,hr).call(this,{type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>R(this,at).canRun(this)}));const r=this.state.status==="pending",i=!R(this,yi).canStart();try{if(r)n();else{Ze(this,Sn,hr).call(this,{type:"pending",variables:t,isPaused:i}),await((a=(s=R(this,at).config).onMutate)==null?void 0:a.call(s,t,this));const C=await((l=(o=this.options).onMutate)==null?void 0:l.call(o,t));C!==this.state.context&&Ze(this,Sn,hr).call(this,{type:"pending",context:C,variables:t,isPaused:i})}const _=await R(this,yi).start();return await((d=(c=R(this,at).config).onSuccess)==null?void 0:d.call(c,_,t,this.state.context,this)),await((f=(h=this.options).onSuccess)==null?void 0:f.call(h,_,t,this.state.context)),await((w=(m=R(this,at).config).onSettled)==null?void 0:w.call(m,_,null,this.state.variables,this.state.context,this)),await((b=(p=this.options).onSettled)==null?void 0:b.call(p,_,null,t,this.state.context)),Ze(this,Sn,hr).call(this,{type:"success",data:_}),_}catch(_){try{throw await((g=(v=R(this,at).config).onError)==null?void 0:g.call(v,_,t,this.state.context,this)),await((x=(y=this.options).onError)==null?void 0:x.call(y,_,t,this.state.context)),await((T=(E=R(this,at).config).onSettled)==null?void 0:T.call(E,void 0,_,this.state.variables,this.state.context,this)),await((A=(S=this.options).onSettled)==null?void 0:A.call(S,void 0,_,t,this.state.context)),_}finally{Ze(this,Sn,hr).call(this,{type:"error",error:_})}}finally{R(this,at).runNext(this)}}},xn=new WeakMap,at=new WeakMap,yi=new WeakMap,Sn=new WeakSet,hr=function(t){const n=r=>{switch(t.type){case"failed":return{...r,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...r,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:t.error,failureCount:r.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),ct.batch(()=>{R(this,xn).forEach(r=>{r.onMutationUpdate(t)}),R(this,at).notify({mutation:this,type:"updated",action:t})})},Uw);function PC(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var $n,sn,_o,Vw,jC=(Vw=class extends fu{constructor(t={}){super();re(this,$n);re(this,sn);re(this,_o);this.config=t,Z(this,$n,new Set),Z(this,sn,new Map),Z(this,_o,0)}build(t,n,r){const i=new _C({mutationCache:this,mutationId:++qo(this,_o)._,options:t.defaultMutationOptions(n),state:r});return this.add(i),i}add(t){R(this,$n).add(t);const n=hl(t);if(typeof n=="string"){const r=R(this,sn).get(n);r?r.push(t):R(this,sn).set(n,[t])}this.notify({type:"added",mutation:t})}remove(t){if(R(this,$n).delete(t)){const n=hl(t);if(typeof n=="string"){const r=R(this,sn).get(n);if(r)if(r.length>1){const i=r.indexOf(t);i!==-1&&r.splice(i,1)}else r[0]===t&&R(this,sn).delete(n)}}this.notify({type:"removed",mutation:t})}canRun(t){const n=hl(t);if(typeof n=="string"){const r=R(this,sn).get(n),i=r==null?void 0:r.find(s=>s.state.status==="pending");return!i||i===t}else return!0}runNext(t){var r;const n=hl(t);if(typeof n=="string"){const i=(r=R(this,sn).get(n))==null?void 0:r.find(s=>s!==t&&s.state.isPaused);return(i==null?void 0:i.continue())??Promise.resolve()}else return Promise.resolve()}clear(){ct.batch(()=>{R(this,$n).forEach(t=>{this.notify({type:"removed",mutation:t})}),R(this,$n).clear(),R(this,sn).clear()})}getAll(){return Array.from(R(this,$n))}find(t){const n={exact:!0,...t};return this.getAll().find(r=>Zg(n,r))}findAll(t={}){return this.getAll().filter(n=>Zg(t,n))}notify(t){ct.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){const t=this.getAll().filter(n=>n.state.isPaused);return ct.batch(()=>Promise.all(t.map(n=>n.continue().catch(tn))))}},$n=new WeakMap,sn=new WeakMap,_o=new WeakMap,Vw);function hl(e){var t;return(t=e.options.scope)==null?void 0:t.id}function Xg(e){return{onFetch:(t,n)=>{var d,h,f,m,w;const r=t.options,i=(f=(h=(d=t.fetchOptions)==null?void 0:d.meta)==null?void 0:h.fetchMore)==null?void 0:f.direction,s=((m=t.state.data)==null?void 0:m.pages)||[],a=((w=t.state.data)==null?void 0:w.pageParams)||[];let o={pages:[],pageParams:[]},l=0;const c=async()=>{let p=!1;const b=y=>{Object.defineProperty(y,"signal",{enumerable:!0,get:()=>(t.signal.aborted?p=!0:t.signal.addEventListener("abort",()=>{p=!0}),t.signal)})},v=ak(t.options,t.fetchOptions),g=async(y,x,E)=>{if(p)return Promise.reject();if(x==null&&y.pages.length)return Promise.resolve(y);const S=(()=>{const I={client:t.client,queryKey:t.queryKey,pageParam:x,direction:E?"backward":"forward",meta:t.options.meta};return b(I),I})(),A=await v(S),{maxPages:_}=t.options,C=E?vC:gC;return{pages:C(y.pages,A,_),pageParams:C(y.pageParams,x,_)}};if(i&&s.length){const y=i==="backward",x=y?RC:ev,E={pages:s,pageParams:a},T=x(r,E);o=await g(E,T,y)}else{const y=e??s.length;do{const x=l===0?a[0]??r.initialPageParam:ev(r,o);if(l>0&&x==null)break;o=await g(o,x),l++}while(l<y)}return o};t.options.persister?t.fetchFn=()=>{var p,b;return(b=(p=t.options).persister)==null?void 0:b.call(p,c,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n)}:t.fetchFn=c}}}function ev(e,{pages:t,pageParams:n}){const r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function RC(e,{pages:t,pageParams:n}){var r;return t.length>0?(r=e.getPreviousPageParam)==null?void 0:r.call(e,t[0],t,n[0],n):void 0}var ke,Er,Tr,Rs,zs,Ar,Ds,Ns,Ww,zC=(Ww=class{constructor(e={}){re(this,ke);re(this,Er);re(this,Tr);re(this,Rs);re(this,zs);re(this,Ar);re(this,Ds);re(this,Ns);Z(this,ke,e.queryCache||new CC),Z(this,Er,e.mutationCache||new jC),Z(this,Tr,e.defaultOptions||{}),Z(this,Rs,new Map),Z(this,zs,new Map),Z(this,Ar,0)}mount(){qo(this,Ar)._++,R(this,Ar)===1&&(Z(this,Ds,ok.subscribe(async e=>{e&&(await this.resumePausedMutations(),R(this,ke).onFocus())})),Z(this,Ns,Rc.subscribe(async e=>{e&&(await this.resumePausedMutations(),R(this,ke).onOnline())})))}unmount(){var e,t;qo(this,Ar)._--,R(this,Ar)===0&&((e=R(this,Ds))==null||e.call(this),Z(this,Ds,void 0),(t=R(this,Ns))==null||t.call(this),Z(this,Ns,void 0))}isFetching(e){return R(this,ke).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return R(this,Er).findAll({...e,status:"pending"}).length}getQueryData(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=R(this,ke).get(t.queryHash))==null?void 0:n.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),n=R(this,ke).build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Vh(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return R(this,ke).findAll(e).map(({queryKey:t,state:n})=>{const r=n.data;return[t,r]})}setQueryData(e,t,n){const r=this.defaultQueryOptions({queryKey:e}),i=R(this,ke).get(r.queryHash),s=i==null?void 0:i.state.data,a=uC(t,s);if(a!==void 0)return R(this,ke).build(this,r).setData(a,{...n,manual:!0})}
40setQueriesData(e,t,n){return ct.batch(()=>R(this,ke).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=R(this,ke).get(t.queryHash))==null?void 0:n.state}removeQueries(e){const t=R(this,ke);ct.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=R(this,ke);return ct.batch(()=>(n.findAll(e).forEach(r=>{r.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){const n={revert:!0,...t},r=ct.batch(()=>R(this,ke).findAll(e).map(i=>i.cancel(n)));return Promise.all(r).then(tn).catch(tn)}invalidateQueries(e,t={}){return ct.batch(()=>(R(this,ke).findAll(e).forEach(n=>{n.invalidate()}),(e==null?void 0:e.refetchType)==="none"?Promise.resolve():this.refetchQueries({...e,type:(e==null?void 0:e.refetchType)??(e==null?void 0:e.type)??"active"},t)))}refetchQueries(e,t={}){const n={...t,cancelRefetch:t.cancelRefetch??!0},r=ct.batch(()=>R(this,ke).findAll(e).filter(i=>!i.isDisabled()&&!i.isStatic()).map(i=>{let s=i.fetch(void 0,n);return n.throwOnError||(s=s.catch(tn)),i.state.fetchStatus==="paused"?Promise.resolve():s}));return Promise.all(r).then(tn)}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=R(this,ke).build(this,t);return n.isStaleByTime(Vh(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(tn).catch(tn)}fetchInfiniteQuery(e){return e.behavior=Xg(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(tn).catch(tn)}ensureInfiniteQueryData(e){return e.behavior=Xg(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return Rc.isOnline()?R(this,Er).resumePausedMutations():Promise.resolve()}getQueryCache(){return R(this,ke)}getMutationCache(){return R(this,Er)}getDefaultOptions(){return R(this,Tr)}setDefaultOptions(e){Z(this,Tr,e)}setQueryDefaults(e,t){R(this,Rs).set(lo(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...R(this,Rs).values()],n={};return t.forEach(r=>{co(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){R(this,zs).set(lo(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...R(this,zs).values()],n={};return t.forEach(r=>{co(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...R(this,Tr).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=Im(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===Om&&(t.enabled=!1),t}defaultMutationOptions(e){return e!=null&&e._defaulted?e:{...R(this,Tr).mutations,...(e==null?void 0:e.mutationKey)&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){R(this,ke).clear(),R(this,Er).clear()}},ke=new WeakMap,Er=new WeakMap,Tr=new WeakMap,Rs=new WeakMap,zs=new WeakMap,Ar=new WeakMap,Ds=new WeakMap,Ns=new WeakMap,Ww),DC=k.createContext(void 0),NC=({client:e,children:t})=>(k.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),u.jsx(DC.Provider,{value:e,children:t}));/** 41 * @remix-run/router v1.23.0 42 * 43 * Copyright (c) Remix Software Inc. 44 * 45 * This source code is licensed under the MIT license found in the 46 * LICENSE.md file in the root directory of this source tree. 47 * 48 * @license MIT 49 */function uo(){return uo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},uo.apply(this,arguments)}var Pr;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Pr||(Pr={}));const tv="popstate";function MC(e){e===void 0&&(e={});function t(r,i){let{pathname:s,search:a,hash:o}=r.location;return $h("",{pathname:s,search:a,hash:o},i.state&&i.state.usr||null,i.state&&i.state.key||"default")}function n(r,i){return typeof i=="string"?i:fk(i)}return OC(t,n,null,e)}function ze(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function hk(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function IC(){return Math.random().toString(36).substr(2,8)}function nv(e,t){return{usr:e.state,key:e.key,idx:t}}function $h(e,t,n,r){return n===void 0&&(n=null),uo({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?Zs(t):t,{state:n,key:t&&t.key||r||IC()})}function fk(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function Zs(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function OC(e,t,n,r){r===void 0&&(r={});let{window:i=document.defaultView,v5Compat:s=!1}=r,a=i.history,o=Pr.Pop,l=null,c=d();c==null&&(c=0,a.replaceState(uo({},a.state,{idx:c}),""));function d(){return(a.state||{idx:null}).idx}function h(){o=Pr.Pop;let b=d(),v=b==null?null:b-c;c=b,l&&l({action:o,location:p.location,delta:v})}function f(b,v){o=Pr.Push;let g=$h(p.location,b,v);c=d()+1;let y=nv(g,c),x=p.createHref(g);try{a.pushState(y,"",x)}
vendor: 3,324 bytes, line 49
49catch(E){if(E instanceof DOMException&&E.name==="DataCloneError")throw E;i.location.assign(x)}s&&l&&l({action:o,location:p.location,delta:1})}function m(b,v){o=Pr.Replace;let g=$h(p.location,b,v);c=d();let y=nv(g,c),x=p.createHref(g);a.replaceState(y,"",x),s&&l&&l({action:o,location:p.location,delta:0})}function w(b){let v=i.location.origin!=="null"?i.location.origin:i.location.href,g=typeof b=="string"?b:fk(b);return g=g.replace(/ $/,"%20"),ze(v,"No window.location.(origin|href) available to create URL for href: "+g),new URL(g,v)}let p={get action(){return o},get location(){return e(i,a)},listen(b){if(l)throw new Error("A history only accepts one active listener");return i.addEventListener(tv,h),l=b,()=>{i.removeEventListener(tv,h),l=null}},createHref(b){return t(i,b)},createURL:w,encodeLocation(b){let v=w(b);return{pathname:v.pathname,search:v.search,hash:v.hash}},push:f,replace:m,go(b){return a.go(b)}};return p}var rv;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(rv||(rv={}));function LC(e,t,n){return n===void 0&&(n="/"),FC(e,t,n,!1)}function FC(e,t,n,r){let i=typeof t=="string"?Zs(t):t,s=gk(i.pathname||"/",n);if(s==null)return null;let a=mk(e);BC(a);let o=null;for(let l=0;o==null&&l<a.length;++l){let c=YC(s);o=JC(a[l],c,r)}return o}function mk(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let i=(s,a,o)=>{let l={relativePath:o===void 0?s.path||"":o,caseSensitive:s.caseSensitive===!0,childrenIndex:a,route:s};l.relativePath.startsWith("/")&&(ze(l.relativePath.startsWith(r),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(r.length));let c=ki([r,l.relativePath]),d=n.concat(l);s.children&&s.children.length>0&&(ze(s.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),mk(s.children,t,d,c)),!(s.path==null&&!s.index)&&t.push({path:c,score:HC(c,s.index),routesMeta:d})};return e.forEach((s,a)=>{var o;if(s.path===""||!((o=s.path)!=null&&o.includes("?")))i(s,a);else for(let l of pk(s.path))i(s,a,l)}),t}function pk(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,i=n.endsWith("?"),s=n.replace(/\?$/,"");if(r.length===0)return i?[s,""]:[s];let a=pk(r.join("/")),o=[];return o.push(...a.map(l=>l===""?s:[s,l].join("/"))),i&&o.push(...a),o.map(l=>e.startsWith("/")&&l===""?"/":l)}function BC(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:qC(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const UC=/^:[\w-]+$/,VC=3,WC=2,$C=1,KC=10,GC=-2,iv=e=>e==="*";function HC(e,t){let n=e.split("/"),r=n.length;return n.some(iv)&&(r+=GC),t&&(r+=WC),n.filter(i=>!iv(i)).reduce((i,s)=>i+(UC.test(s)?VC:s===""?$C:KC),r)}function qC(e,t){return e.length===t.length&&e.slice(0,-1).every((r,i)=>r===t[i])?e[e.length-1]-t[t.length-1]:0}function JC(e,t,n){let{routesMeta:r}=e,i={},s="/",a=[];for(let o=0;o<r.length;++o){let l=r[o],c=o===r.length-1,d=s==="/"?t:t.slice(s.length)||"/",h=sv({path:l.relativePath,caseSensitive:l.caseSensitive,end:c},d),f=l.route;if(!h&&c&&n&&!r[r.length-1].route.index&&(h=sv({path:l.relativePath,caseSensitive:l.caseSensitive,end:!1},d)),!h)return null;
vendor: 9,017 bytes, lines 49-58
49Object.assign(i,h.params),a.push({params:i,pathname:ki([s,h.pathname]),pathnameBase:t_(ki([s,h.pathnameBase])),route:f}),h.pathnameBase!=="/"&&(s=ki([s,h.pathnameBase]))}return a}function sv(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=ZC(e.path,e.caseSensitive,e.end),i=t.match(n);if(!i)return null;let s=i[0],a=s.replace(/(.)\/+$/,"$1"),o=i.slice(1);return{params:r.reduce((c,d,h)=>{let{paramName:f,isOptional:m}=d;if(f==="*"){let p=o[h]||"";a=s.slice(0,s.length-p.length).replace(/(.)\/+$/,"$1")}const w=o[h];return m&&!w?c[f]=void 0:c[f]=(w||"").replace(/%2F/g,"/"),c},{}),pathname:s,pathnameBase:a,pattern:e}}function ZC(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),hk(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(a,o,l)=>(r.push({paramName:o,isOptional:l!=null}),l?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),r]}function YC(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return hk(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function gk(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function QC(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:i=""}=typeof e=="string"?Zs(e):e;return{pathname:n?n.startsWith("/")?n:XC(n,t):t,search:n_(r),hash:r_(i)}}function XC(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?n.length>1&&n.pop():i!=="."&&n.push(i)}),n.length>1?n.join("/"):"/"}function pd(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function e_(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function vk(e,t){let n=e_(e);return t?n.map((r,i)=>i===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function yk(e,t,n,r){r===void 0&&(r=!1);let i;typeof e=="string"?i=Zs(e):(i=uo({},e),ze(!i.pathname||!i.pathname.includes("?"),pd("?","pathname","search",i)),ze(!i.pathname||!i.pathname.includes("#"),pd("#","pathname","hash",i)),ze(!i.search||!i.search.includes("#"),pd("#","search","hash",i)));let s=e===""||i.pathname==="",a=s?"/":i.pathname,o;if(a==null)o=n;else{let h=t.length-1;if(!r&&a.startsWith("..")){let f=a.split("/");for(;f[0]==="..";)f.shift(),h-=1;i.pathname=f.join("/")}o=h>=0?t[h]:"/"}let l=QC(i,o),c=a&&a!=="/"&&a.endsWith("/"),d=(s||a===".")&&n.endsWith("/");return!l.pathname.endsWith("/")&&(c||d)&&(l.pathname+="/"),l}const ki=e=>e.join("/").replace(/\/\/+/g,"/"),t_=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),n_=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,r_=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function i_(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const wk=["post","put","patch","delete"];new Set(wk);const s_=["get",...wk];new Set(s_);/** 50 * React Router v6.30.1 51 * 52 * Copyright (c) Remix Software Inc. 53 * 54 * This source code is licensed under the MIT license found in the 55 * LICENSE.md file in the root directory of this source tree. 56 * 57 * @license MIT 58 */function ho(){return ho=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ho.apply(this,arguments)}const Lm=k.createContext(null),a_=k.createContext(null),Mo=k.createContext(null),pu=k.createContext(null),qr=k.createContext({outlet:null,matches:[],isDataRoute:!1}),bk=k.createContext(null);function Io(){return k.useContext(pu)!=null}function gu(){return Io()||ze(!1),k.useContext(pu).location}function kk(e){k.useContext(Mo).static||k.useLayoutEffect(e)}function In(){let{isDataRoute:e}=k.useContext(qr);return e?b_():o_()}function o_(){Io()||ze(!1);let e=k.useContext(Lm),{basename:t,future:n,navigator:r}=k.useContext(Mo),{matches:i}=k.useContext(qr),{pathname:s}=gu(),a=JSON.stringify(vk(i,n.v7_relativeSplatPath)),o=k.useRef(!1);return kk(()=>{o.current=!0}),k.useCallback(function(c,d){if(d===void 0&&(d={}),!o.current)return;if(typeof c=="number"){r.go(c);return}let h=yk(c,JSON.parse(a),s,d.relative==="path");e==null&&t!=="/"&&(h.pathname=h.pathname==="/"?t:ki([t,h.pathname])),(d.replace?r.replace:r.push)(h,d.state,d)},[t,r,a,s,e])}function l_(){let{matches:e}=k.useContext(qr),t=e[e.length-1];return t?t.params:{}}function c_(e,t){return u_(e,t)}function u_(e,t,n,r){Io()||ze(!1);let{navigator:i}=k.useContext(Mo),{matches:s}=k.useContext(qr),a=s[s.length-1],o=a?a.params:{};a&&a.pathname;let l=a?a.pathnameBase:"/";a&&a.route;let c=gu(),d;if(t){var h;let b=typeof t=="string"?Zs(t):t;l==="/"||(h=b.pathname)!=null&&h.startsWith(l)||ze(!1),d=b}else d=c;let f=d.pathname||"/",m=f;if(l!=="/"){let b=l.replace(/^\//,"").split("/");m="/"+f.replace(/^\//,"").split("/").slice(b.length).join("/")}let w=LC(e,{pathname:m}),p=p_(w&&w.map(b=>Object.assign({},b,{params:Object.assign({},o,b.params),pathname:ki([l,i.encodeLocation?i.encodeLocation(b.pathname).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?l:ki([l,i.encodeLocation?i.encodeLocation(b.pathnameBase).pathname:b.pathnameBase])})),s,n,r);return t&&p?k.createElement(pu.Provider,{value:{location:ho({pathname:"/",search:"",hash:"",state:null,key:"default"},d),navigationType:Pr.Pop}},p):p}function d_(){let e=w_(),t=i_(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,i={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return k.createElement(k.Fragment,null,k.createElement("h2",null,"Unexpected Application Error!"),k.createElement("h3",{style:{fontStyle:"italic"}},t),n?k.createElement("pre",{style:i},n):null,null)}const h_=k.createElement(d_,null);class f_ extends k.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?k.createElement(qr.Provider,{value:this.props.routeContext},k.createElement(bk.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function m_(e){let{routeContext:t,match:n,children:r}=e,i=k.useContext(Lm);return i&&i.static&&i.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=n.route.id),k.createElement(qr.Provider,{value:t},r)}function p_(e,t,n,r){var i;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var s;if(!n)return null;if(n.errors)e=n.matches;else if((s=r)!=null&&s.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let a=e,o=(i=n)==null?void 0:i.errors;if(o!=null){let d=a.findIndex(h=>h.route.id&&(o==null?void 0:o[h.route.id])!==void 0);d>=0||ze(!1),a=a.slice(0,Math.min(a.length,d+1))}let l=!1,c=-1;if(n&&r&&r.v7_partialHydration)for(let d=0;d<a.length;d++){let h=a[d];if((h.route.HydrateFallback||h.route.hydrateFallbackElement)&&(c=d),h.route.id){let{loaderData:f,errors:m}=n,w=h.route.loader&&f[h.route.id]===void 0&&(!m||m[h.route.id]===void 0);if(h.route.lazy||w){l=!0,c>=0?a=a.slice(0,c+1):a=[a[0]];break}}}return a.reduceRight((d,h,f)=>{let m,w=!1,p=null,b=null;n&&(m=o&&h.route.id?o[h.route.id]:void 0,p=h.route.errorElement||h_,l&&(c<0&&f===0?(w=!0,b=null):c===f&&(w=!0,b=h.route.hydrateFallbackElement||null)));let v=t.concat(a.slice(0,f+1)),g=()=>{let y;return m?y=p:w?y=b:h.route.Component?y=k.createElement(h.route.Component,null):h.route.element?y=h.route.element:y=d,k.createElement(m_,{match:h,routeContext:{outlet:d,matches:v,isDataRoute:n!=null},children:y})};return n&&(h.route.ErrorBoundary||h.route.errorElement||f===0)?k.createElement(f_,{location:n.location,revalidation:n.revalidation,component:p,error:m,children:g(),routeC
58ontext:{outlet:null,matches:v,isDataRoute:!0}}):g()},null)}var xk=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(xk||{}),zc=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(zc||{});function g_(e){let t=k.useContext(Lm);return t||ze(!1),t}function v_(e){let t=k.useContext(a_);return t||ze(!1),t}function y_(e){let t=k.useContext(qr);return t||ze(!1),t}function Sk(e){let t=y_(),n=t.matches[t.matches.length-1];return n.route.id||ze(!1),n.route.id}function w_(){var e;let t=k.useContext(bk),n=v_(zc.UseRouteError),r=Sk(zc.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function b_(){let{router:e}=g_(xk.UseNavigateStable),t=Sk(zc.UseNavigateStable),n=k.useRef(!1);return kk(()=>{n.current=!0}),k.useCallback(function(i,s){s===void 0&&(s={}),n.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,ho({fromRouteId:t},s)))},[e,t])}function k_(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function x_(e){let{to:t,replace:n,state:r,relative:i}=e;Io()||ze(!1);let{future:s,static:a}=k.useContext(Mo),{matches:o}=k.useContext(qr),{pathname:l}=gu(),c=In(),d=yk(t,vk(o,s.v7_relativeSplatPath),l,i==="path"),h=JSON.stringify(d);return k.useEffect(()=>c(JSON.parse(h),{replace:n,state:r,relative:i}),[c,h,i,n,r]),null}function Yt(e){ze(!1)}function S_(e){let{basename:t="/",children:n=null,location:r,navigationType:i=Pr.Pop,navigator:s,static:a=!1,future:o}=e;Io()&&ze(!1);let l=t.replace(/^\/*/,"/"),c=k.useMemo(()=>({basename:l,navigator:s,static:a,future:ho({v7_relativeSplatPath:!1},o)}),[l,o,s,a]);typeof r=="string"&&(r=Zs(r));let{pathname:d="/",search:h="",hash:f="",state:m=null,key:w="default"}=r,p=k.useMemo(()=>{let b=gk(d,l);return b==null?null:{location:{pathname:b,search:h,hash:f,state:m,key:w},navigationType:i}},[l,d,h,f,m,w,i]);return p==null?null:k.createElement(Mo.Provider,{value:c},k.createElement(pu.Provider,{children:n,value:p}))}function E_(e){let{children:t,location:n}=e;return c_(Kh(t),n)}new Promise(()=>{});function Kh(e,t){t===void 0&&(t=[]);let n=[];return k.Children.forEach(e,(r,i)=>{if(!k.isValidElement(r))return;let s=[...t,i];if(r.type===k.Fragment){n.push.apply(n,Kh(r.props.children,s));return}r.type!==Yt&&ze(!1),!r.props.index||!r.props.children||ze(!1);let a={id:r.props.id||s.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(a.children=Kh(r.props.children,s)),n.push(a)}),n}/** 59 * React Router DOM v6.30.1 60 * 61 * Copyright (c) Remix Software Inc. 62 * 63 * This source code is licensed under the MIT license found in the 64 * LICENSE.md file in the root directory of this source tree. 65 * 66 * @license MIT 67 */const T_="6";try{window.__reactRouterVersion=T_}catch{}const A_="startTransition",av=Kf[A_];function C_(e){let{basename:t,children:n,future:r,window:i}=e,s=k.useRef();s.current==null&&(s.current=MC({window:i,v5Compat:!0}));let a=s.current,[o,l]=k.useState({action:a.action,location:a.location}),{v7_startTransition:c}=r||{},d=k.useCallback(h=>{c&&av?av(()=>l(h)):l(h)},[l,c]);return k.useLayoutEffect(()=>a.listen(d),[a,d]),k.useEffect(()=>k_(r),[r]),k.createElement(S_,{basename:t,children:n,location:o.location,navigationType:o.action,navigator:a,future:r})}var ov;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(ov||(ov={}));var lv;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(lv||(lv={}));var cv=["light","dark"],__="(prefers-color-scheme: dark)",P_=k.createContext(void 0),j_={setTheme:e=>{},themes:[]},R_=()=>{var e;return(e=k.useContext(P_))!=null?e:j_};k.memo(({forcedTheme:e,storageKey:t,attribute:n,enableSystem:r,enableColorScheme:i,defaultTheme:s,value:a,attrs:o,nonce:l})=>{let c=s==="system",d=n==="class"?`var d=document.documentElement,c=d.classList;${`c.remove(${o.map(w=>`'${w}'`).join(",")})`};`:`var d=document.documentElement,n='${n}',s='setAttribute';`,h=i?cv.includes(s)&&s?`if(e==='light'||e==='dark'||!e)d.style.colorScheme=e||'${s}'`:"if(e==='light'||e==='dark')d.style.colorScheme=e":"",f=(w,p=!1,b=!0)=>{let v=a?a[w]:w,g=p?w+"|| ''":`'${v}'`,y="";return i&&b&&!p&&cv.includes(w)&&(y+=`d.style.colorScheme = '${w}';`),n==="class"?p||v?y+=`c.add(${g})`:y+="null":v&&(y+=`d[s](n,${g})`),y},m=e?`!function(){${d}${f(e)}}()`:r?`!function(){try{${d}var e=localStorage.getItem('${t}');if('system'===e||(!e&&${c})){var t='${__}',m=window.matchMedia(t);if(m.media!==t||m.matches){${f("dark")}}else{${f("light")}}}else if(e){${a?`var x=${JSON.stringify(a)};`:""}${f(a?"x[e]":"e",!0)}}${c?"":"else{"+f(s,!1,!1)+"}"}${h}}catch(e){}}()`:`!function(){try{${d}var e=localStorage.getItem('${t}');if(e){${a?`var x=${JSON.stringify(a)};`:""}${f(a?"x[e]":"e",!0)}}else{${f(s,!1,!1)};}${h}}catch(t){}}();`;return k.createElement("script",{nonce:l,dangerouslySetInnerHTML:{__html:m}})});var z_=e=>{switch(e){case"success":return M_;case"info":return O_;case"warning":return I_;case"error":return L_;default:return null}},D_=Array(12).fill(0),N_=({visible:e,className:t})=>N.createElement("div",{className:["sonner-loading-wrapper",t].filter(
67Boolean).join(" "),"data-visible":e},N.createElement("div",{className:"sonner-spinner"},D_.map((n,r)=>N.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${r}`})))),M_=N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},N.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),I_=N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},N.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),O_=N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},N.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),L_=N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},N.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),F_=N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},N.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),N.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),B_=()=>{let[e,t]=N.useState(document.hidden);return N.useEffect(()=>{let n=()=>{t(document.hidden)};return document.addEventListener("visibilitychange",n),()=>window.removeEventListener("visibilitychange",n)},[]),e},Gh=1,U_=class{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{let t=this.subscribers.indexOf(e);this.subscribers.splice(t,1)}),this.publish=e=>{this.subscribers.forEach(t=>t(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{var t;let{message:n,...r}=e,i=typeof(e==null?void 0:e.id)=="number"||((t=e.id)==null?void 0:t.length)>0?e.id:Gh++,s=this.toasts.find(o=>o.id===i),a=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(i)&&this.dismissedToasts.delete(i),s?this.toasts=this.toasts.map(o=>o.id===i?(this.publish({...o,...e,id:i,title:n}),{...o,...e,id:i,dismissible:a,title:n}):o):this.addToast({title:n,...r,dismissible:a,id:i}),i},this.dismiss=e=>(this.dismissedToasts.add(e),e||this.toasts.forEach(t=>{this.subscribers.forEach(n=>n({id:t.id,dismiss:!0}))}),this.subscribers.forEach(t=>t({id:e,dismiss:!0})),e),this.message=(e,t)=>this.create({...t,message:e}),this.error=(e,t)=>this.create({...t,message:e,type:"error"}),this.success=(e,t)=>this.create({...t,type:"success",message:e}),this.info=(e,t)=>this.create({...t,type:"info",message:e}),this.warning=(e,t)=>this.create({...t,type:"warning",message:e}),this.loading=(e,t)=>
67this.create({...t,type:"loading",message:e}),this.promise=(e,t)=>{if(!t)return;let n;t.loading!==void 0&&(n=this.create({...t,promise:e,type:"loading",message:t.loading,description:typeof t.description!="function"?t.description:void 0}));let r=e instanceof Promise?e:e(),i=n!==void 0,s,a=r.then(async l=>{if(s=["resolve",l],N.isValidElement(l))i=!1,this.create({id:n,type:"default",message:l});else if(W_(l)&&!l.ok){i=!1;let c=typeof t.error=="function"?await t.error(`HTTP error! status: ${l.status}`):t.error,d=typeof t.description=="function"?await t.description(`HTTP error! status: ${l.status}`):t.description;this.create({id:n,type:"error",message:c,description:d})}else if(t.success!==void 0){i=!1;let c=typeof t.success=="function"?await t.success(l):t.success,d=typeof t.description=="function"?await t.description(l):t.description;this.create({id:n,type:"success",message:c,description:d})}}).catch(async l=>{if(s=["reject",l],t.error!==void 0){i=!1;let c=typeof t.error=="function"?await t.error(l):t.error,d=typeof t.description=="function"?await t.description(l):t.description;this.create({id:n,type:"error",message:c,description:d})}}).finally(()=>{var l;i&&(this.dismiss(n),n=void 0),(l=t.finally)==null||l.call(t)}),o=()=>new Promise((l,c)=>a.then(()=>s[0]==="reject"?c(s[1]):l(s[1])).catch(c));return typeof n!="string"&&typeof n!="number"?{unwrap:o}:Object.assign(n,{unwrap:o})},this.custom=(e,t)=>{let n=(t==null?void 0:t.id)||Gh++;return this.create({jsx:e(n),id:n,...t}),n},this.getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},vt=new U_,V_=(e,t)=>{let n=(t==null?void 0:t.id)||Gh++;return vt.addToast({title:e,...t,id:n}),n},W_=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",$_=V_,K_=()=>vt.toasts,G_=()=>vt.getActiveToasts();Object.assign($_,{success:vt.success,info:vt.info,warning:vt.warning,error:vt.error,custom:vt.custom,message:vt.message,promise:vt.promise,dismiss:vt.dismiss,loading:vt.loading},{getHistory:K_,getToasts:G_});function H_(e,{insertAt:t}={}){if(typeof document>"u")return;let n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",t==="top"&&n.firstChild?n.insertBefore(r,n.firstChild):n.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}H_(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999;transition:transform .4s ease}:where([data-sonner-toaster][data-lifted="true"]){transform:translateY(-10px)}@media (hover: none) and (pointer: coarse){:where([data-sonner-toaster][data-lifted="true"]){transform:none}}:where([data-sonner-toaster][data-x-position="right"]){right:var(--offset-right)}:where([data-sonner-toaster][data-x-position="left"]){left:var(--offset-left)}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:var(--offset-top)}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:var(--offset-bottom)}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;
67left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast] [data-close-button]{background:var(--gray1)}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:-50%;right:-50%;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}
67:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-bg-hover: hsl(0, 0%, 12%);--normal-border: hsl(0, 0%, 20%);--normal-border-hover: hsl(0, 0%, 25%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);
67--error-text: hsl(358, 100%, 81%)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)} 68`);function fl(e){return e.label!==void 0}var q_=3,J_="32px",Z_="16px",uv=4e3,Y_=356,Q_=14,X_=20,eP=200;function Jt(...e){return e.filter(Boolean).join(" ")}function tP(e){let[t,n]=e.split("-"),r=[];return t&&r.push(t),n&&r.push(n),r}var nP=e=>{var t,n,r,i,s,a,o,l,c,d,h;let{invert:f,toast:m,unstyled:w,interacting:p,setHeights:b,visibleToasts:v,heights:g,index:y,toasts:x,expanded:E,removeToast:T,defaultRichColors:S,closeButton:A,style:_,cancelButtonStyle:C,actionButtonStyle:I,className:D="",descriptionClassName:U="",duration:M,position:H,gap:V,loadingIcon:q,expandByDefault:P,classNames:j,icons:O,closeButtonAriaLabel:G="Close toast",pauseWhenPageIsHidden:$}=e,[X,te]=N.useState(null),[Ce,Je]=N.useState(null),[ie,Ni]=N.useState(!1),[rr,Zr]=N.useState(!1),[ir,Mi]=N.useState(!1),[sr,Ko]=N.useState(!1),[Ou,Go]=N.useState(!1),[Lu,aa]=N.useState(0),[Ii,Dp]=N.useState(0),oa=N.useRef(m.duration||M||uv),Np=N.useRef(null),Yr=N.useRef(null),P1=y===0,j1=y+1<=v,Mt=m.type,Oi=m.dismissible!==!1,R1=m.className||"",z1=m.descriptionClassName||"",Ho=N.useMemo(()=>g.findIndex(J=>J.toastId===m.id)||0,[g,m.id]),D1=N.useMemo(()=>{var J;return(J=m.closeButton)!=null?J:A},[m.closeButton,A]),Mp=N.useMemo(()=>m.duration||M||uv,[m.duration,M]),Fu=N.useRef(0),Li=N.useRef(0),Ip=N.useRef(0),Fi=N.useRef(null),[N1,M1]=H.split("-"),Op=N.useMemo(()=>g.reduce((J,ae,me)=>me>=Ho?J:J+ae.height,0),[g,Ho]),Lp=B_(),I1=m.invert||f,Bu=Mt==="loading";Li.current=N.useMemo(()=>Ho*V+Op,[Ho,Op]),N.useEffect(()=>{oa.current=Mp},[Mp]),N.useEffect(()=>{Ni(!0)},[]),N.useEffect(()=>{let J=Yr.current;if(J){let ae=J.getBoundingClientRect().height;return Dp(ae),b(me=>[{toastId:m.id,height:ae,position:m.position},...me]),()=>b(me=>me.filter(Kt=>Kt.toastId!==m.id))}},[b,m.id]),N.useLayoutEffect(()=>{if(!ie)return;let J=Yr.current,ae=J.style.height;J.style.height="auto";let me=J.getBoundingClientRect().height;J.style.height=ae,Dp(me),b(Kt=>Kt.find(Gt=>Gt.toastId===m.id)?Kt.map(Gt=>Gt.toastId===m.id?{...Gt,height:me}:Gt):[{toastId:m.id,height:me,position:m.position}
68,...Kt])},[ie,m.title,m.description,b,m.id]);let ar=N.useCallback(()=>{Zr(!0),aa(Li.current),b(J=>J.filter(ae=>ae.toastId!==m.id)),setTimeout(()=>{T(m)},eP)},[m,T,b,Li]);N.useEffect(()=>{if(m.promise&&Mt==="loading"||m.duration===1/0||m.type==="loading")return;let J;return E||p||$&&Lp?(()=>{if(Ip.current<Fu.current){let ae=new Date().getTime()-Fu.current;oa.current=oa.current-ae}Ip.current=new Date().getTime()})():oa.current!==1/0&&(Fu.current=new Date().getTime(),J=setTimeout(()=>{var ae;(ae=m.onAutoClose)==null||ae.call(m,m),ar()},oa.current)),()=>clearTimeout(J)},[E,p,m,Mt,$,Lp,ar]),N.useEffect(()=>{m.delete&&ar()},[ar,m.delete]);function O1(){var J,ae,me;return O!=null&&O.loading?N.createElement("div",{className:Jt(j==null?void 0:j.loader,(J=m==null?void 0:m.classNames)==null?void 0:J.loader,"sonner-loader"),"data-visible":Mt==="loading"},O.loading):q?N.createElement("div",{className:Jt(j==null?void 0:j.loader,(ae=m==null?void 0:m.classNames)==null?void 0:ae.loader,"sonner-loader"),"data-visible":Mt==="loading"},q):N.createElement(N_,{className:Jt(j==null?void 0:j.loader,(me=m==null?void 0:m.classNames)==null?void 0:me.loader),visible:Mt==="loading"})}return N.createElement("li",{tabIndex:0,ref:Yr,className:Jt(D,R1,j==null?void 0:j.toast,(t=m==null?void 0:m.classNames)==null?void 0:t.toast,j==null?void 0:j.default,j==null?void 0:j[Mt],(n=m==null?void 0:m.classNames)==null?void 0:n[Mt]),"data-sonner-toast":"","data-rich-colors":(r=m.richColors)!=null?r:S,"data-styled":!(m.jsx||m.unstyled||w),"data-mounted":ie,"data-promise":!!m.promise,"data-swiped":Ou,"data-removed":rr,"data-visible":j1,"data-y-position":N1,"data-x-position":M1,"data-index":y,"data-front":P1,"data-swiping":ir,"data-dismissible":Oi,"data-type":Mt,"data-invert":I1,"data-swipe-out":sr,"data-swipe-direction":Ce,"data-expanded":!!(E||P&&ie),style:{"--index":y,"--toasts-before":y,"--z-index":x.length-y,"--offset":`${rr?Lu:Li.current}px`,"--initial-height":P?"auto":`${Ii}px`,..._,...m.style},onDragEnd:()=>{Mi(!1),te(null),Fi.current=null},onPointerDown:J=>{Bu||!Oi||(Np.current=new Date,aa(Li.current),J.target.setPointerCapture(J.pointerId),J.target.tagName!=="BUTTON"&&(Mi(!0),Fi.current={x:J.clientX,y:J.clientY}))},onPointerUp:()=>{var J,ae,me,Kt;if(sr||!Oi)return;Fi.current=null;let Gt=Number(((J=Yr.current)==null?void 0:J.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),or=Number(((ae=Yr.current)==null?void 0:ae.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),Qr=new Date().getTime()-((me=Np.current)==null?void 0:me.getTime()),Ht=X==="x"?Gt:or,lr=Math.abs(Ht)/Qr;if(Math.abs(Ht)>=X_||lr>.11){aa(Li.current),(Kt=m.onDismiss)==null||Kt.call(m,m),Je(X==="x"?Gt>0?"right":"left":or>0?"down":"up"),ar(),Ko(!0),Go(!1);return}Mi(!1),te(null)},onPointerMove:J=>{var ae,me,Kt,Gt;if(!Fi.current||!Oi||((ae=window.getSelection())==null?void 0:ae.toString().length)>0)return;let or=J.clientY-Fi.current.y,Qr=J.clientX-Fi.current.x,Ht=(me=e.swipeDirections)!=null?me:tP(H);!X&&(Math.abs(Qr)>1||Math.abs(or)>1)&&te(Math.abs(Qr)>Math.abs(or)?"x":"y");let lr={x:0,y:0};X==="y"?(Ht.includes("top")||Ht.includes("bottom"))&&(Ht.includes("top")&&or<0||Ht.includes("bottom")&&or>0)&&(lr.y=or):X==="x"&&(Ht.includes("left")||Ht.includes("right"))&&(Ht.includes("left")&&Qr<0||Ht.includes("right")&&Qr>0)&&(lr.x=Qr),(Math.abs(lr.x)>0||Math.abs(lr.y)>0)&&Go(!0),(Kt=Yr.current)==null||Kt.style.setProperty("--swipe-amount-x",`${lr.x}px`),(Gt=Yr.current)==null||Gt.style.setProperty("--swipe-amount-y",`${lr.y}px`)}},D1&&!m.jsx?N.createElement("button",{"aria-label":G,"data-disabled":Bu,"data-close-button":!0,onClick:Bu||!Oi?()=>{}:()=>{var J;ar(),(J=m.onDismiss)==null||J.call(m,m)},className:Jt(j==null?void 0:j.closeButton,(i=m==null?void 0:m.classNames)==null?void 0:i.closeButton)},(s=O==null?void 0:O.close)!=null?s:F_):null,m.jsx||k.isValidElement(m.title)?m.jsx?m.jsx:typeof m.title=="function"?m.title():m.title:N.createElement(N.Fragment,null,Mt||m.icon||m.promise?N.createElement("div",{"data-icon":"",className:Jt(j==null?void 0:j.icon,(a=m==null?void 0:m.classNames)==null?void 0:a.icon)},m.promise||m.type==="loading"&&!m.icon?m.icon||O1():null,m.type!=="loading"?m.
68icon||(O==null?void 0:O[Mt])||z_(Mt):null):null,N.createElement("div",{"data-content":"",className:Jt(j==null?void 0:j.content,(o=m==null?void 0:m.classNames)==null?void 0:o.content)},N.createElement("div",{"data-title":"",className:Jt(j==null?void 0:j.title,(l=m==null?void 0:m.classNames)==null?void 0:l.title)},typeof m.title=="function"?m.title():m.title),m.description?N.createElement("div",{"data-description":"",className:Jt(U,z1,j==null?void 0:j.description,(c=m==null?void 0:m.classNames)==null?void 0:c.description)},typeof m.description=="function"?m.description():m.description):null),k.isValidElement(m.cancel)?m.cancel:m.cancel&&fl(m.cancel)?N.createElement("button",{"data-button":!0,"data-cancel":!0,style:m.cancelButtonStyle||C,onClick:J=>{var ae,me;fl(m.cancel)&&Oi&&((me=(ae=m.cancel).onClick)==null||me.call(ae,J),ar())},className:Jt(j==null?void 0:j.cancelButton,(d=m==null?void 0:m.classNames)==null?void 0:d.cancelButton)},m.cancel.label):null,k.isValidElement(m.action)?m.action:m.action&&fl(m.action)?N.createElement("button",{"data-button":!0,"data-action":!0,style:m.actionButtonStyle||I,onClick:J=>{var ae,me;fl(m.action)&&((me=(ae=m.action).onClick)==null||me.call(ae,J),!J.defaultPrevented&&ar())},className:Jt(j==null?void 0:j.actionButton,(h=m==null?void 0:m.classNames)==null?void 0:h.actionButton)},m.action.label):null))};function dv(){if(typeof window>"u"||typeof document>"u")return"ltr";let e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}function rP(e,t){let n={};return[e,t].forEach((r,i)=>{let s=i===1,a=s?"--mobile-offset":"--offset",o=s?Z_:J_;function l(c){["top","right","bottom","left"].forEach(d=>{n[`${a}-${d}`]=typeof c=="number"?`${c}px`:c})}typeof r=="number"||typeof r=="string"?l(r):typeof r=="object"?["top","right","bottom","left"].forEach(c=>{r[c]===void 0?n[`${a}-${c}`]=o:n[`${a}-${c}`]=typeof r[c]=="number"?`${r[c]}px`:r[c]}):l(o)}),n}var iP=k.forwardRef(function(e,t){let{invert:n,position:r="bottom-right",hotkey:i=["altKey","KeyT"],expand:s,closeButton:a,className:o,offset:l,mobileOffset:c,theme:d="light",richColors:h,duration:f,style:m,visibleToasts:w=q_,toastOptions:p,dir:b=dv(),gap:v=Q_,loadingIcon:g,icons:y,containerAriaLabel:x="Notifications",pauseWhenPageIsHidden:E}=e,[T,S]=N.useState([]),A=N.useMemo(()=>Array.from(new Set([r].concat(T.filter($=>$.position).map($=>$.position)))),[T,r]),[_,C]=N.useState([]),[I,D]=N.useState(!1),[U,M]=N.useState(!1),[H,V]=N.useState(d!=="system"?d:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),q=N.useRef(null),P=i.join("+").replace(/Key/g,"").replace(/Digit/g,""),j=N.useRef(null),O=N.useRef(!1),G=N.useCallback($=>{S(X=>{var te;return(te=X.find(Ce=>Ce.id===$.id))!=null&&te.delete||vt.dismiss($.id),X.filter(({id:Ce})=>Ce!==$.id)})},[]);return N.useEffect(()=>vt.subscribe($=>{if($.dismiss){S(X=>X.map(te=>te.id===$.id?{...te,delete:!0}:te));return}setTimeout(()=>{rk.flushSync(()=>{S(X=>{let te=X.findIndex(Ce=>Ce.id===$.id);return te!==-1?[...X.slice(0,te),{...X[te],...$},...X.slice(te+1)]:[$,...X]})})})}),[]),N.useEffect(()=>{if(d!=="system"){V(d);return}if(d==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?V("dark"):V("light")),typeof window>"u")return;let $=window.matchMedia("(prefers-color-scheme: dark)");try{$.addEventListener("change",({matches:X})=>{V(X?"dark":"light")})}catch{$.addListener(({matches:te})=>{try{V(te?"dark":"light")}catch(Ce){console.error(Ce)}})}},[d]),N.useEffect(()=>{T.length<=1&&D(!1)},[T]),N.useEffect(()=>{let $=X=>{var te,Ce;i.every(Je=>X[Je]||X.code===Je)&&(D(!0),(te=q.current)==null||te.focus()),X.code==="Escape"&&(document.activeElement===q.current||(Ce=q.current)!=null&&Ce.contains(document.activeElement))&&D(!1)};return document.addEventListener("keydown",$),()=>document.removeEventListener("keydown",$)},[i]),N.useEffect(()=>{if(q.current)return()=>{j.current&&(j.current.focus({preventScroll:!0}),j.current=null,O.current=!1)}},[q.current]),N.createElement("section",{ref:t,"aria-label":`${x} ${P}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},A.map(($,X)=>{var te;let[Ce,Je]=$.split("-");return T.length?N.createElement("ol",{key:$,dir:b==="auto"?dv():b,tabIndex:-1,ref:q,className:o,"data-sonner-toaster":!0,"data-theme":H,"data-y-position":Ce,"data-lifted":I&&T.length>1&&!s,"data-x-position":Je,style:{"--front-toast-height":`${((te=_[0])==null?void 0:te.height)||0}px`,"--width":`${Y_}px`,"--gap":`${v}px`,...m,...rP(l,c)},onBlur:ie=>{O.current&&!ie.currentTarget.contains(ie.relatedTarget)&&(O.current=!1,j.current&&(j.current.focus({preventScroll:!0}),j.current=null))},onFocus:ie=>{ie.target instanceof HTMLElement&&ie.target.dataset.dismissible==="false"||O.current||(O.current=!0,j.current=ie.relatedTarget)},onMouseEnter:()=>D(!0),onMouseMove:()=>D(!0),onMouseLeave:()=>{U||D(!1)},onDragEnd:()=>D(!1),onPointerDown:ie=>{ie.target instanceof HTMLElement&&ie.target.dataset.dismissible==="false"||M(!0)},onPointerUp:()=>M(!1)},T.filter(ie=>!ie.position&&X===0||ie.position===$).map((ie,Ni)=>{var rr,Zr;return N.createElement(nP,{key:ie.id,icons:y,index:Ni,toast:ie,defaultRichColors:h,duration:(rr=p==null?void 0:p.duration)!=null?rr:f,className:p==null?void 0:p.className,descriptionClassName:p==null?void 0:p.descriptionClassName,invert:n,visibleToasts:w,closeButton:(Zr=p==null?void 0:p.closeButton)!=null?Zr:a,interacting:U,position:$,style:p==null?void 0:p.style,unstyled:p==null?void 0:p.unstyled,classNames:p==null?void 0:p.classNames,cancelButtonStyle:p==null?void 0:p.cancelButtonStyle,actionButtonStyle:p==null?void 0:p.actionButtonStyle,removeToast:G,toasts:T.filter(ir=>ir.position==ie.position),heights:_.filter(ir=>ir.position==ie.position),setHeights:C,expandByDefault:s,gap:v,loadingIcon:g,expanded:I,pauseWhenPageIsHidden:E,swipeDirections:e.swipeDirections})})):null}))});const sP=({...e})=>{const{theme:t="system"}=R_();return u.jsx(iP,{theme:t,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e})},aP=1,oP=1e6;let gd=0;function lP(){return gd=(gd+1)%Number.MAX_SAFE_INTEGER,gd.toString()}const vd=new Map,hv=e=>{if(vd.has(e))return;const t=setTimeout(()=>{vd.delete(e),Oa({type:"REMOVE_TOAST",toastId:e})},oP);vd.set(e,t)},cP=(e,t)=>
68{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,aP)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(n=>n.id===t.toast.id?{...n,...t.toast}:n)};case"DISMISS_TOAST":{const{toastId:n}=t;return n?hv(n):e.toasts.forEach(r=>{hv(r.id)}),{...e,toasts:e.toasts.map(r=>r.id===n||n===void 0?{...r,open:!1}:r)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(n=>n.id!==t.toastId)}}},Hl=[];let ql={toasts:[]};function Oa(e){ql=cP(ql,e),Hl.forEach(t=>{t(ql)})}function uP({...e}){const t=lP(),n=i=>Oa({type:"UPDATE_TOAST",toast:{...i,id:t}}),r=()=>Oa({type:"DISMISS_TOAST",toastId:t});return Oa({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:i=>{i||r()}}}),{id:t,dismiss:r,update:n}}function dP(){const[e,t]=k.useState(ql);return k.useEffect(()=>(Hl.push(t),()=>{const n=Hl.indexOf(t);n>-1&&Hl.splice(n,1)}),[e]),{...e,toast:uP,dismiss:n=>Oa({type:"DISMISS_TOAST",toastId:n})}}function ge(e,t,{checkForDefaultPrevented:n=!0}={}){return function(i){if(e==null||e(i),n===!1||!i.defaultPrevented)return t==null?void 0:t(i)}}function fv(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Ek(...e){return t=>{let n=!1;const r=e.map(i=>{const s=fv(i,t);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let i=0;i<r.length;i++){const s=r[i];typeof s=="function"?s():fv(e[i],null)}}}}function ft(...e){return k.useCallback(Ek(...e),e)}function hP(e,t){const n=k.createContext(t),r=s=>{const{children:a,...o}=s,l=k.useMemo(()=>o,Object.values(o));return u.jsx(n.Provider,{value:l,children:a})};r.displayName=e+"Provider";function i(s){const a=k.useContext(n);if(a)return a;if(t!==void 0)return t;throw new Error(`\`${s}\` must be used within \`${e}\``)}return[r,i]}function Oo(e,t=[]){let n=[];function r(s,a){const o=k.createContext(a),l=n.length;n=[...n,a];const c=h=>{var v;const{scope:f,children:m,...w}=h,p=((v=f==null?void 0:f[e])==null?void 0:v[l])||o,b=k.useMemo(()=>w,Object.values(w));return u.jsx(p.Provider,{value:b,children:m})};c.displayName=s+"Provider";function d(h,f){var p;const m=((p=f==null?void 0:f[e])==null?void 0:p[l])||o,w=k.useContext(m);if(w)return w;if(a!==void 0)return a;throw new Error(`\`${h}\` must be used within \`${s}\``)}return[c,d]}const i=()=>{const s=n.map(a=>k.createContext(a));return function(o){const l=(o==null?void 0:o[e])||s;return k.useMemo(()=>({[`__scope${e}`]:{...o,[e]:l}}),[o,l])}};return i.scopeName=e,[r,fP(i,...t)]}function fP(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(s){const a=r.reduce((o,{useScope:l,scopeName:c})=>{const h=l(s)[`__scope${c}`];return{...o,...h}},{});return k.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}function fo(e){const t=pP(e),n=k.forwardRef((r,i)=>{const{children:s,...a}=r,o=k.Children.toArray(s),l=o.find(vP);if(l){const c=l.props.children,d=o.map(h=>h===l?k.Children.count(c)>1?k.Children.only(null):k.isValidElement(c)?c.props.children:null:h);return u.jsx(t,{...a,ref:i,children:k.isValidElement(c)?k.cloneElement(c,void 0,d):null})}return u.jsx(t,{...a,ref:i,children:s})});return n.displayName=`${e}.Slot`,n}var mP=fo("Slot");function pP(e){const t=k.forwardRef((n,r)=>{const{children:i,...s}=n;if(k.isValidElement(i)){const a=wP(i),o=yP(s,i.props);return i.type!==k.Fragment&&(o.ref=r?Ek(r,a):a),k.cloneElement(i,o)}return k.Children.count(i)>1?k.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Tk=Symbol("radix.slottable");function gP(e){const t=({children:n})=>u.jsx(u.Fragment,{children:n});return t.displayName=`${e}.Slottable`,t.__radixId=Tk,t}function vP(e){return k.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Tk}function yP(e,t){const n={...t};for(const r in t){const i=e[r],s=t[r];/^on[A-Z]/.test(r)?i&&s?n[r]=(...o)=>{const l=s(...o);return i(...o),l}:i&&(n[r]=i):r==="style"?n[r]={...i,...s}:r==="className"&&(n[r]=[i,s].filter(Boolean).join(" "))}return{...e,...n}}function wP(e){var r,i;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(i=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:i.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function bP(e){const t=e+"CollectionProvider",[n,r]=Oo(t),[i,s]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=p=>{const{scope:b,children:v}=p,g=N.useRef(null),y=N.useRef(new Map).current;return u.jsx(i,{scope:b,itemMap:y,collectionRef:g,children:v})};a.displayName=t;const o=e+"CollectionSlot",l=fo(o),c=N.forwardRef((p,b)=>{const{scope:v,children:g}=p,y=s(o,v),x=ft(b,y.collectionRef);return u.jsx(l,{ref:x,children:g})});c.displayName=o;const d=e+"CollectionItemSlot",h="data-radix-collection-item",f=fo(d),m=N.forwardRef((p,b)=>{const{scope:v,children:g,...y}=p,x=N.useRef(null),E=ft(b,x),T=s(d,v);return N.useEffect(()=>(T.itemMap.set(x,{ref:x,...y}),()=>void T.itemMap.delete(x))),u.jsx(f,{[h]:"",ref:E,children:g})});m.displayName=d;function w(p){const b=s(e+"CollectionConsumer",p);return N.useCallback(()=>{const g=b.collectionRef.current;if(!g)return[];const y=Array.from(g.querySelectorAll(`[${h}]`));return Array.from(b.itemMap.values()).sort((T,S)=>y.indexOf(T.ref.current)-y.indexOf(S.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:a,Slot:c,ItemSlot:m},w,r]}var kP=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],De=kP.reduce((e,t)=>
vendor: 8,608 bytes, line 68
68{const n=fo(`Primitive.${t}`),r=k.forwardRef((i,s)=>{const{asChild:a,...o}=i,l=a?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),u.jsx(l,{...o,ref:s})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function Ak(e,t){e&&No.flushSync(()=>e.dispatchEvent(t))}function Dn(e){const t=k.useRef(e);return k.useEffect(()=>{t.current=e}),k.useMemo(()=>(...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)},[])}function xP(e,t=globalThis==null?void 0:globalThis.document){const n=Dn(e);k.useEffect(()=>{const r=i=>{i.key==="Escape"&&n(i)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}var SP="DismissableLayer",Hh="dismissableLayer.update",EP="dismissableLayer.pointerDownOutside",TP="dismissableLayer.focusOutside",mv,Ck=k.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),vu=k.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:s,onInteractOutside:a,onDismiss:o,...l}=e,c=k.useContext(Ck),[d,h]=k.useState(null),f=(d==null?void 0:d.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,m]=k.useState({}),w=ft(t,S=>h(S)),p=Array.from(c.layers),[b]=[...c.layersWithOutsidePointerEventsDisabled].slice(-1),v=p.indexOf(b),g=d?p.indexOf(d):-1,y=c.layersWithOutsidePointerEventsDisabled.size>0,x=g>=v,E=CP(S=>{const A=S.target,_=[...c.branches].some(C=>C.contains(A));!x||_||(i==null||i(S),a==null||a(S),S.defaultPrevented||o==null||o())},f),T=_P(S=>{const A=S.target;[...c.branches].some(C=>C.contains(A))||(s==null||s(S),a==null||a(S),S.defaultPrevented||o==null||o())},f);return xP(S=>{g===c.layers.size-1&&(r==null||r(S),!S.defaultPrevented&&o&&(S.preventDefault(),o()))},f),k.useEffect(()=>{if(d)return n&&(c.layersWithOutsidePointerEventsDisabled.size===0&&(mv=f.body.style.pointerEvents,f.body.style.pointerEvents="none"),c.layersWithOutsidePointerEventsDisabled.add(d)),c.layers.add(d),pv(),()=>{n&&c.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=mv)}},[d,f,n,c]),k.useEffect(()=>()=>{d&&(c.layers.delete(d),c.layersWithOutsidePointerEventsDisabled.delete(d),pv())},[d,c]),k.useEffect(()=>{const S=()=>m({});return document.addEventListener(Hh,S),()=>document.removeEventListener(Hh,S)},[]),u.jsx(De.div,{...l,ref:w,style:{pointerEvents:y?x?"auto":"none":void 0,...e.style},onFocusCapture:ge(e.onFocusCapture,T.onFocusCapture),onBlurCapture:ge(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:ge(e.onPointerDownCapture,E.onPointerDownCapture)})});vu.displayName=SP;var AP="DismissableLayerBranch",_k=k.forwardRef((e,t)=>{const n=k.useContext(Ck),r=k.useRef(null),i=ft(t,r);return k.useEffect(()=>{const s=r.current;if(s)return n.branches.add(s),()=>{n.branches.delete(s)}},[n.branches]),u.jsx(De.div,{...e,ref:i})});_k.displayName=AP;function CP(e,t=globalThis==null?void 0:globalThis.document){const n=Dn(e),r=k.useRef(!1),i=k.useRef(()=>{});return k.useEffect(()=>{const s=o=>{if(o.target&&!r.current){let l=function(){Pk(EP,n,c,{discrete:!0})};const c={originalEvent:o};o.pointerType==="touch"?(t.removeEventListener("click",i.current),i.current=l,t.addEventListener("click",i.current,{once:!0})):l()}else t.removeEventListener("click",i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",s)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",s),t.removeEventListener("click",i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function _P(e,t=globalThis==null?void 0:globalThis.document){const n=Dn(e),r=k.useRef(!1);return k.useEffect(()=>{const i=s=>{s.target&&!r.current&&Pk(TP,n,{originalEvent:s},{discrete:!1})};return t.addEventListener("focusin",i),()=>t.removeEventListener("focusin",i)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function pv(){const e=new CustomEvent(Hh);document.dispatchEvent(e)}function Pk(e,t,n,{discrete:r}){const i=n.originalEvent.target,s=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?Ak(i,s):i.dispatchEvent(s)}var PP=vu,jP=_k,Qn=globalThis!=null&&globalThis.document?k.useLayoutEffect:()=>{},RP="Portal",Fm=k.forwardRef((e,t)=>{var o;const{container:n,...r}=e,[i,s]=k.useState(!1);Qn(()=>s(!0),[]);const a=n||i&&((o=globalThis==null?void 0:globalThis.document)==null?void 0:o.body);return a?rk.createPortal(u.jsx(De.div,{...r,ref:t}),a):null});Fm.displayName=RP;function zP(e,t){return k.useReducer((n,r)=>t[n][r]??n,e)}var Ys=e=>{const{present:t,children:n}=e,r=DP(t),i=typeof n=="function"?n({present:r.isPresent}):k.Children.only(n),s=ft(r.ref,NP(i));return typeof n=="function"||r.isPresent?k.cloneElement(i,{ref:s}):null};Ys.displayName="Presence";function DP(e){const[t,n]=k.useState(),r=k.useRef(null),i=k.useRef(e),s=k.useRef("none"),a=e?"mounted":"unmounted",[o,l]=zP(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return k.useEffect(()=>{const c=ml(r.current);s.current=o==="mounted"?c:"none"},[o]),Qn(()=>{const c=r.current,d=i.current;if(d!==e){const f=s.current,m=ml(c);e?l("MOUNT"):m==="none"||(c==null?void 0:c.display)==="none"?l("UNMOUNT"):l(d&&f!==m?"ANIMATION_OUT":"UNMOUNT"),i.current=e}},[e,l]),Qn(()=>{if(t){let c;const d=t.ownerDocument.defaultView??window,h=m=>{const p=ml(r.current).includes(m.animationName);if(m.target===t&&p&&(l("ANIMATION_END"),!i.current)){const b=t.style.animationFillMode;t.style.animationFillMode="forwards",c=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=b)})}},f=m=>{m.target===t&&(s.current=ml(r.current))};return t.addEventListener("animationstart",f),t.addEventListener("animationcancel",h),t.addEventListener("animationend",h),()=>{d.clearTimeout(c),t.removeEventListener("animationstart",f),t.removeEventListener("animationcancel",h),t.removeEventListener("animationend",h)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(o),ref:k.useCallback(c=>{r.current=c?getComputedStyle(c):null,n(c)},[])}}function ml(e){return(e==null?void 0:e.animationName)||"none"}function NP(e){var r,i;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(i=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:i.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var MP=Kf[" useInsertionEffect ".trim().toString()]||Qn;function jk({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){const[i,s,a]=IP({defaultProp:t,onChange:n}),o=e!==void 0,l=o?e:i;{const d=k.useRef(e!==void 0);k.useEffect(()=>{const h=d.current;h!==o&&console.warn(`${r} is changing from ${h?"controlled":"uncontrolled"} to ${o?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),d.current=o},[o,r])}const c=k.useCallback(d=>{var h;if(o){const f=OP(d)?d(e):d;f!==e&&((h=a.current)==null||h.call(a,f))}else s(d)},[o,e,s,a]);return[l,c]}function IP({defaultProp:e,onChange:t}){const[n,r]=k.useState(e),i=k.useRef(n),s=k.useRef(t);return MP(()=>{s.current=t},[t]),k.useEffect(()=>{var a;i.current!==n&&((a=s.current)==null||a.call(s,n),i.current=n)},[n,i]),[n,r,s]}function OP(e){return typeof e=="function"}var LP=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),FP="VisuallyHidden",yu=k.forwardRef((e,t)=>u.jsx(De.span,{...e,ref:t,style:{...LP,...e.style}}));yu.displayName=FP;var BP=yu,Bm="ToastProvider",[Um,UP,VP]=bP("Toast"),[Rk,BU]=Oo("Toast",[VP]),[WP,wu]=Rk(Bm),zk=e=>{const{__scopeToast:t,label:n="Notification",duration:r=5e3,swipeDirection:i="right",swipeThreshold:s=50,children:a}=e,[o,l]=k.useState(null),[c,d]=k.useState(0),h=k.useRef(!1),f=k.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${Bm}\`. Expected non-empty \`string\`.`),u.jsx(Um.Provider,{scope:t,children:u.jsx(WP,{scope:t,label:n,duration:r,swipeDirection:i,swipeThreshold:s,toastCount:c,viewport:o,onViewportChange:l,onToastAdd:k.useCallback(()=>d(m=>m+1),[]),onToastRemove:k.useCallback(()=>d(m=>m-1),[]),isFocusedToastEscapeKeyDownRef:h,isClosePausedRef:f,children:a})})};zk.displayName=Bm;var Dk="ToastViewport",$P=["F8"],qh="toast.viewportPause",Jh="toast.viewportResume",Nk=k.forwardRef((e,t)=>
68{const{__scopeToast:n,hotkey:r=$P,label:i="Notifications ({hotkey})",...s}=e,a=wu(Dk,n),o=UP(n),l=k.useRef(null),c=k.useRef(null),d=k.useRef(null),h=k.useRef(null),f=ft(t,h,a.onViewportChange),m=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),w=a.toastCount>0;k.useEffect(()=>{const b=v=>{var y;r.length!==0&&r.every(x=>v[x]||v.code===x)&&((y=h.current)==null||y.focus())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[r]),k.useEffect(()=>{const b=l.current,v=h.current;if(w&&b&&v){const g=()=>{if(!a.isClosePausedRef.current){const T=new CustomEvent(qh);v.dispatchEvent(T),a.isClosePausedRef.current=!0}},y=()=>{if(a.isClosePausedRef.current){const T=new CustomEvent(Jh);v.dispatchEvent(T),a.isClosePausedRef.current=!1}},x=T=>{!b.contains(T.relatedTarget)&&y()},E=()=>{b.contains(document.activeElement)||y()};return b.addEventListener("focusin",g),b.addEventListener("focusout",x),b.addEventListener("pointermove",g),b.addEventListener("pointerleave",E),window.addEventListener("blur",g),window.addEventListener("focus",y),()=>{b.removeEventListener("focusin",g),b.removeEventListener("focusout",x),b.removeEventListener("pointermove",g),b.removeEventListener("pointerleave",E),window.removeEventListener("blur",g),window.removeEventListener("focus",y)}}},[w,a.isClosePausedRef]);const p=k.useCallback(({tabbingDirection:b})=>{const g=o().map(y=>{const x=y.ref.current,E=[x,...rj(x)];return b==="forwards"?E:E.reverse()});return(b==="forwards"?g.reverse():g).flat()},[o]);return k.useEffect(()=>{const b=h.current;if(b){const v=g=>{var E,T,S;const y=g.altKey||g.ctrlKey||g.metaKey;if(g.key==="Tab"&&!y){const A=document.activeElement,_=g.shiftKey;if(g.target===b&&_){(E=c.current)==null||E.focus();return}const D=p({tabbingDirection:_?"backwards":"forwards"}),U=D.findIndex(M=>M===A);yd(D.slice(U+1))?g.preventDefault():_?(T=c.current)==null||T.focus():(S=d.current)==null||S.focus()}};return b.addEventListener("keydown",v),()=>b.removeEventListener("keydown",v)}},[o,p]),u.jsxs(jP,{ref:l,role:"region","aria-label":i.replace("{hotkey}",m),tabIndex:-1,style:{pointerEvents:w?void 0:"none"},children:[w&&u.jsx(Zh,{ref:c,onFocusFromOutsideViewport:()=>{const b=p({tabbingDirection:"forwards"});yd(b)}}),u.jsx(Um.Slot,{scope:n,children:u.jsx(De.ol,{tabIndex:-1,...s,ref:f})}),w&&u.jsx(Zh,{ref:d,onFocusFromOutsideViewport:()=>{const b=p({tabbingDirection:"backwards"});yd(b)}})]})});Nk.displayName=Dk;var Mk="ToastFocusProxy",Zh=k.forwardRef((e,t)=>{const{__scopeToast:n,onFocusFromOutsideViewport:r,...i}=e,s=wu(Mk,n);return u.jsx(yu,{"aria-hidden":!0,tabIndex:0,...i,ref:t,style:{position:"fixed"},onFocus:a=>{var c;const o=a.relatedTarget;!((c=s.viewport)!=null&&c.contains(o))&&r()}})});Zh.displayName=Mk;var Lo="Toast",KP="toast.swipeStart",GP="toast.swipeMove",HP="toast.swipeCancel",qP="toast.swipeEnd",Ik=k.forwardRef((e,t)=>{const{forceMount:n,open:r,defaultOpen:i,onOpenChange:s,...a}=e,[o,l]=jk({prop:r,defaultProp:i??!0,onChange:s,caller:Lo});return u.jsx(Ys,{present:n||o,children:u.jsx(YP,{open:o,...a,ref:t,onClose:()=>l(!1),onPause:Dn(e.onPause),onResume:Dn(e.onResume),onSwipeStart:ge(e.onSwipeStart,c=>{c.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:ge(e.onSwipeMove,c=>{const{x:d,y:h}=c.detail.delta;c.currentTarget.setAttribute("data-swipe","move"),c.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${d}px`),c.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${h}px`)}),onSwipeCancel:ge(e.onSwipeCancel,c=>{c.currentTarget.setAttribute("data-swipe","cancel"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),c.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:ge(e.onSwipeEnd,c=>{const{x:d,y:h}=c.detail.delta;c.currentTarget.setAttribute("data-swipe","end"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),c.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${d}px`),c.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${h}px`),l(!1)})})})});Ik.displayName=Lo;var[JP,ZP]=Rk(Lo,{onClose(){}}),YP=k.forwardRef((e,t)=>
68{const{__scopeToast:n,type:r="foreground",duration:i,open:s,onClose:a,onEscapeKeyDown:o,onPause:l,onResume:c,onSwipeStart:d,onSwipeMove:h,onSwipeCancel:f,onSwipeEnd:m,...w}=e,p=wu(Lo,n),[b,v]=k.useState(null),g=ft(t,M=>v(M)),y=k.useRef(null),x=k.useRef(null),E=i||p.duration,T=k.useRef(0),S=k.useRef(E),A=k.useRef(0),{onToastAdd:_,onToastRemove:C}=p,I=Dn(()=>{var H;(b==null?void 0:b.contains(document.activeElement))&&((H=p.viewport)==null||H.focus()),a()}),D=k.useCallback(M=>{!M||M===1/0||(window.clearTimeout(A.current),T.current=new Date().getTime(),A.current=window.setTimeout(I,M))},[I]);k.useEffect(()=>{const M=p.viewport;if(M){const H=()=>{D(S.current),c==null||c()},V=()=>{const q=new Date().getTime()-T.current;S.current=S.current-q,window.clearTimeout(A.current),l==null||l()};return M.addEventListener(qh,V),M.addEventListener(Jh,H),()=>{M.removeEventListener(qh,V),M.removeEventListener(Jh,H)}}},[p.viewport,E,l,c,D]),k.useEffect(()=>{s&&!p.isClosePausedRef.current&&D(E)},[s,E,p.isClosePausedRef,D]),k.useEffect(()=>(_(),()=>C()),[_,C]);const U=k.useMemo(()=>b?Wk(b):null,[b]);return p.viewport?u.jsxs(u.Fragment,{children:[U&&u.jsx(QP,{__scopeToast:n,role:"status","aria-live":r==="foreground"?"assertive":"polite","aria-atomic":!0,children:U}),u.jsx(JP,{scope:n,onClose:I,children:No.createPortal(u.jsx(Um.ItemSlot,{scope:n,children:u.jsx(PP,{asChild:!0,onEscapeKeyDown:ge(o,()=>{p.isFocusedToastEscapeKeyDownRef.current||I(),p.isFocusedToastEscapeKeyDownRef.current=!1}),children:u.jsx(De.li,{role:"status","aria-live":"off","aria-atomic":!0,tabIndex:0,"data-state":s?"open":"closed","data-swipe-direction":p.swipeDirection,...w,ref:g,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:ge(e.onKeyDown,M=>{M.key==="Escape"&&(o==null||o(M.nativeEvent),M.nativeEvent.defaultPrevented||(p.isFocusedToastEscapeKeyDownRef.current=!0,I()))}),onPointerDown:ge(e.onPointerDown,M=>{M.button===0&&(y.current={x:M.clientX,y:M.clientY})}),onPointerMove:ge(e.onPointerMove,M=>{if(!y.current)return;const H=M.clientX-y.current.x,V=M.clientY-y.current.y,q=!!x.current,P=["left","right"].includes(p.swipeDirection),j=["left","up"].includes(p.swipeDirection)?Math.min:Math.max,O=P?j(0,H):0,G=P?0:j(0,V),$=M.pointerType==="touch"?10:2,X={x:O,y:G},te={originalEvent:M,delta:X};q?(x.current=X,pl(GP,h,te,{discrete:!1})):gv(X,p.swipeDirection,$)?(x.current=X,pl(KP,d,te,{discrete:!1}),M.target.setPointerCapture(M.pointerId)):(Math.abs(H)>$||Math.abs(V)>$)&&(y.current=null)}),onPointerUp:ge(e.onPointerUp,M=>{const H=x.current,V=M.target;if(V.hasPointerCapture(M.pointerId)&&V.releasePointerCapture(M.pointerId),x.current=null,y.current=null,H){const q=M.currentTarget,P={originalEvent:M,delta:H};gv(H,p.swipeDirection,p.swipeThreshold)?pl(qP,m,P,{discrete:!0}):pl(HP,f,P,{discrete:!0}),q.addEventListener("click",j=>j.preventDefault(),{once:!0})}})})})}),p.viewport)})]}):null}),QP=e=>{const{__scopeToast:t,children:n,...r}=e,i=wu(Lo,t),[s,a]=k.useState(!1),[o,l]=k.useState(!1);return tj(()=>a(!0)),k.useEffect(()=>{const c=window.setTimeout(()=>l(!0),1e3);return()=>window.clearTimeout(c)},[]),o?null:u.jsx(Fm,{asChild:!0,children:u.jsx(yu,{...r,children:s&&u.jsxs(u.Fragment,{children:[i.label," ",n]})})})},XP="ToastTitle",Ok=k.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return u.jsx(De.div,{...r,ref:t})});Ok.displayName=XP;var ej="ToastDescription",Lk=k.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return u.jsx(De.div,{...r,ref:t})});Lk.displayName=ej;var Fk="ToastAction",Bk=k.forwardRef((e,t)=>{const{altText:n,...r}=e;return n.trim()?u.jsx(Vk,{altText:n,asChild:!0,children:u.jsx(Vm,{...r,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${Fk}\`. Expected non-empty \`string\`.`),null)});Bk.displayName=Fk;var Uk="ToastClose",Vm=k.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e,i=ZP(Uk,n);return u.jsx(Vk,{asChild:!0,children:u.jsx(De.button,{type:"button",...r,ref:t,onClick:ge(e.onClick,i.onClose)})})});Vm.displayName=Uk;var Vk=k.forwardRef((e,t)=>{const{__scopeToast:n,altText:r,...i}=e;return u.jsx(De.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":r||void 0,...i,ref:t})});function Wk(e){const t=[];
vendor: 6,341 bytes, lines 68-127
68return Array.from(e.childNodes).forEach(r=>{if(r.nodeType===r.TEXT_NODE&&r.textContent&&t.push(r.textContent),nj(r)){const i=r.ariaHidden||r.hidden||r.style.display==="none",s=r.dataset.radixToastAnnounceExclude==="";if(!i)if(s){const a=r.dataset.radixToastAnnounceAlt;a&&t.push(a)}else t.push(...Wk(r))}}),t}function pl(e,t,n,{discrete:r}){const i=n.originalEvent.currentTarget,s=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?Ak(i,s):i.dispatchEvent(s)}var gv=(e,t,n=0)=>{const r=Math.abs(e.x),i=Math.abs(e.y),s=r>i;return t==="left"||t==="right"?s&&r>n:!s&&i>n};function tj(e=()=>{}){const t=Dn(e);Qn(()=>{let n=0,r=0;return n=window.requestAnimationFrame(()=>r=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(n),window.cancelAnimationFrame(r)}},[t])}function nj(e){return e.nodeType===e.ELEMENT_NODE}function rj(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const i=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||i?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function yd(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}var ij=zk,$k=Nk,Kk=Ik,Gk=Ok,Hk=Lk,qk=Bk,Jk=Vm;function Zk(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=Zk(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function Yk(){for(var e,t,n=0,r="",i=arguments.length;n<i;n++)(e=arguments[n])&&(t=Zk(e))&&(r&&(r+=" "),r+=t);return r}const vv=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,yv=Yk,Wm=(e,t)=>n=>{var r;if((t==null?void 0:t.variants)==null)return yv(e,n==null?void 0:n.class,n==null?void 0:n.className);const{variants:i,defaultVariants:s}=t,a=Object.keys(i).map(c=>{const d=n==null?void 0:n[c],h=s==null?void 0:s[c];if(d===null)return null;const f=vv(d)||vv(h);return i[c][f]}),o=n&&Object.entries(n).reduce((c,d)=>{let[h,f]=d;return f===void 0||(c[h]=f),c},{}),l=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((c,d)=>{let{class:h,className:f,...m}=d;return Object.entries(m).every(w=>{let[p,b]=w;return Array.isArray(b)?b.includes({...s,...o}[p]):{...s,...o}[p]===b})?[...c,h,f]:c},[]);return yv(e,a,l,n==null?void 0:n.class,n==null?void 0:n.className)};/** 69 * @license lucide-react v0.462.0 - ISC 70 * 71 * This source code is licensed under the ISC license. 72 * See the LICENSE file in the root directory of this source tree. 73 */const sj=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Qk=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();/** 74 * @license lucide-react v0.462.0 - ISC 75 * 76 * This source code is licensed under the ISC license. 77 * See the LICENSE file in the root directory of this source tree. 78 */var aj={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/** 79 * @license lucide-react v0.462.0 - ISC 80 * 81 * This source code is licensed under the ISC license. 82 * See the LICENSE file in the root directory of this source tree. 83 */const oj=k.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i="",children:s,iconNode:a,...o},l)=>k.createElement("svg",{ref:l,...aj,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:Qk("lucide",i),...o},[...a.map(([c,d])=>k.createElement(c,d)),...Array.isArray(s)?s:[s]]));/** 84 * @license lucide-react v0.462.0 - ISC 85 * 86 * This source code is licensed under the ISC license. 87 * See the LICENSE file in the root directory of this source tree. 88 */const Et=(e,t)=>{const n=k.forwardRef(({className:r,...i},s)=>k.createElement(oj,{ref:s,iconNode:t,className:Qk(`lucide-${sj(e)}`,r),...i}));return n.displayName=`${e}`,n};/** 89 * @license lucide-react v0.462.0 - ISC 90 * 91 * This source code is licensed under the ISC license. 92 * See the LICENSE file in the root directory of this source tree. 93 */const lj=Et("ArrowDown",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);/** 94 * @license lucide-react v0.462.0 - ISC 95 * 96 * This source code is licensed under the ISC license. 97 * See the LICENSE file in the root directory of this source tree. 98 */const Qs=Et("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/** 99 * @license lucide-react v0.462.0 - ISC 100 * 101 * This source code is licensed under the ISC license. 102 * See the LICENSE file in the root directory of this source tree. 103 */const Yh=Et("ArrowUpRight",[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]);/** 104 * @license lucide-react v0.462.0 - ISC 105 * 106 * This source code is licensed under the ISC license. 107 * See the LICENSE file in the root directory of this source tree. 108 */const cj=Et("ArrowUp",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);/** 109 * @license lucide-react v0.462.0 - ISC 110 * 111 * This source code is licensed under the ISC license. 112 * See the LICENSE file in the root directory of this source tree. 113 */const uj=Et("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/** 114 * @license lucide-react v0.462.0 - ISC 115 * 116 * This source code is licensed under the ISC license. 117 * See the LICENSE file in the root directory of this source tree. 118 */const dj=Et("GripVertical",[["circle",{cx:"9",cy:"12",r:"1",key:"1vctgf"}],["circle",{cx:"9",cy:"5",r:"1",key:"hp0tcf"}],["circle",{cx:"9",cy:"19",r:"1",key:"fkjjf6"}],["circle",{cx:"15",cy:"12",r:"1",key:"1tmaij"}],["circle",{cx:"15",cy:"5",r:"1",key:"19l28e"}],["circle",{cx:"15",cy:"19",r:"1",key:"f4zoj3"}]]);/** 119 * @license lucide-react v0.462.0 - ISC 120 * 121 * This source code is licensed under the ISC license. 122 * See the LICENSE file in the root directory of this source tree. 123 */const Xk=Et("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);/** 124 * @license lucide-react v0.462.0 - ISC 125 * 126 * This source code is licensed under the ISC license. 127 * See the LICENSE file in the root directory of this source tree.
vendor: 8,628 bytes, lines 128-158
128 */const hj=Et("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);/** 129 * @license lucide-react v0.462.0 - ISC 130 * 131 * This source code is licensed under the ISC license. 132 * See the LICENSE file in the root directory of this source tree. 133 */const fj=Et("LogOut",[["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}],["polyline",{points:"16 17 21 12 16 7",key:"1gabdz"}],["line",{x1:"21",x2:"9",y1:"12",y2:"12",key:"1uyos4"}]]);/** 134 * @license lucide-react v0.462.0 - ISC 135 * 136 * This source code is licensed under the ISC license. 137 * See the LICENSE file in the root directory of this source tree. 138 */const mj=Et("Pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);/** 139 * @license lucide-react v0.462.0 - ISC 140 * 141 * This source code is licensed under the ISC license. 142 * See the LICENSE file in the root directory of this source tree. 143 */const pj=Et("Plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/** 144 * @license lucide-react v0.462.0 - ISC 145 * 146 * This source code is licensed under the ISC license. 147 * See the LICENSE file in the root directory of this source tree. 148 */const gj=Et("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** 149 * @license lucide-react v0.462.0 - ISC 150 * 151 * This source code is licensed under the ISC license. 152 * See the LICENSE file in the root directory of this source tree. 153 */const vj=Et("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);/** 154 * @license lucide-react v0.462.0 - ISC 155 * 156 * This source code is licensed under the ISC license. 157 * See the LICENSE file in the root directory of this source tree. 158 */const ex=Et("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),$m="-",yj=e=>{const t=bj(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:a=>{const o=a.split($m);return o[0]===""&&o.length!==1&&o.shift(),tx(o,t)||wj(a)},getConflictingClassGroupIds:(a,o)=>{const l=n[a]||[];return o&&r[a]?[...l,...r[a]]:l}}},tx=(e,t)=>{var a;if(e.length===0)return t.classGroupId;const n=e[0],r=t.nextPart.get(n),i=r?tx(e.slice(1),r):void 0;if(i)return i;if(t.validators.length===0)return;const s=e.join($m);return(a=t.validators.find(({validator:o})=>o(s)))==null?void 0:a.classGroupId},wv=/^\[(.+)\]$/,wj=e=>{if(wv.test(e)){const t=wv.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},bj=e=>{const{theme:t,prefix:n}=e,r={nextPart:new Map,validators:[]};return xj(Object.entries(e.classGroups),n).forEach(([s,a])=>{Qh(a,r,s,t)}),r},Qh=(e,t,n,r)=>{e.forEach(i=>{if(typeof i=="string"){const s=i===""?t:bv(t,i);s.classGroupId=n;return}if(typeof i=="function"){if(kj(i)){Qh(i(r),t,n,r);return}t.validators.push({validator:i,classGroupId:n});return}Object.entries(i).forEach(([s,a])=>{Qh(a,bv(t,s),n,r)})})},bv=(e,t)=>{let n=e;return t.split($m).forEach(r=>{n.nextPart.has(r)||n.nextPart.set(r,{nextPart:new Map,validators:[]}),n=n.nextPart.get(r)}),n},kj=e=>e.isThemeGetter,xj=(e,t)=>t?e.map(([n,r])=>{const i=r.map(s=>typeof s=="string"?t+s:typeof s=="object"?Object.fromEntries(Object.entries(s).map(([a,o])=>[t+a,o])):s);return[n,i]}):e,Sj=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,r=new Map;const i=(s,a)=>{n.set(s,a),t++,t>e&&(t=0,r=n,n=new Map)};return{get(s){let a=n.get(s);if(a!==void 0)return a;if((a=r.get(s))!==void 0)return i(s,a),a},set(s,a){n.has(s)?n.set(s,a):i(s,a)}}},nx="!",Ej=e=>{const{separator:t,experimentalParseClassName:n}=e,r=t.length===1,i=t[0],s=t.length,a=o=>{const l=[];let c=0,d=0,h;for(let b=0;b<o.length;b++){let v=o[b];if(c===0){if(v===i&&(r||o.slice(b,b+s)===t)){l.push(o.slice(d,b)),d=b+s;continue}if(v==="/"){h=b;continue}}v==="["?c++:v==="]"&&c--}const f=l.length===0?o:o.substring(d),m=f.startsWith(nx),w=m?f.substring(1):f,p=h&&h>d?h-d:void 0;return{modifiers:l,hasImportantModifier:m,baseClassName:w,maybePostfixModifierPosition:p}};return n?o=>n({className:o,parseClassName:a}):a},Tj=e=>{if(e.length<=1)return e;const t=[];let n=[];return e.forEach(r=>{r[0]==="["?(t.push(...n.sort(),r),n=[]):n.push(r)}),t.push(...n.sort()),t},Aj=e=>({cache:Sj(e.cacheSize),parseClassName:Ej(e),...yj(e)}),Cj=/\s+/,_j=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i}=t,s=[],a=e.trim().split(Cj);let o="";for(let l=a.length-1;l>=0;l-=1){const c=a[l],{modifiers:d,hasImportantModifier:h,baseClassName:f,maybePostfixModifierPosition:m}=n(c);let w=!!m,p=r(w?f.substring(0,m):f);if(!p){if(!w){o=c+(o.length>0?" "+o:o);continue}if(p=r(f),!p){o=c+(o.length>0?" "+o:o);continue}w=!1}const b=Tj(d).join(":"),v=h?b+nx:b,g=v+p;if(s.includes(g))continue;s.push(g);const y=i(p,w);for(let x=0;x<y.length;++x){const E=y[x];s.push(v+E)}o=c+(o.length>0?" "+o:o)}return o};function Pj(){let e=0,t,n,r="";for(;e<arguments.length;)(t=arguments[e++])&&(n=rx(t))&&(r&&(r+=" "),r+=n);return r}const rx=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=rx(e[r]))&&(n&&(n+=" "),n+=t);return n};function jj(e,...t){let n,r,i,s=a;function a(l){const c=t.reduce((d,h)=>h(d),e());return n=Aj(c),r=n.cache.get,i=n.cache.set,s=o,o(l)}function o(l){const c=r(l);if(c)return c;const d=_j(l,n);return i(l,d),d}return function(){return s(Pj.apply(null,arguments))}}const ue=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},ix=/^\[(?:([a-z-]+):)?(.+)\]$/i,Rj=/^\d+\/\d+$/,zj=new Set(["px","full","screen"]),Dj=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Nj=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Mj=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,Ij=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Oj=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Ln=e=>Ss(e)||zj.has(e)||Rj.test(e),ur=e=>Xs(e,"length",Kj),Ss=e=>!!e&&!Number.isNaN(Number(e)),wd=e=>Xs(e,"number",Ss),ga=e=>!!e&&Number.isInteger(Number(e)),Lj=e=>e.endsWith("%")&&Ss(e.slice(0,-1)),Q=e=>ix.test(e),dr=e=>Dj.test(e),Fj=new Set(["length","size","percentage"]),Bj=e=>Xs(e,Fj,sx),Uj=e=>Xs(e,"position",sx),Vj=new Set(["image","url"]),Wj=e=>Xs(e,Vj,Hj),$j=e=>Xs(e,"",Gj),va=()=>!0,Xs=(e,t,n)=>{const r=ix.exec(e);return r?r[1]?typeof t=="string"?r[1]===t:t.has(r[1]):n(r[2]):!1},Kj=e=>Nj.test(e)&&!Mj.test(e),sx=()=>!1,Gj=e=>Ij.test(e),Hj=e=>Oj.test(e),qj=()=>{const e=ue("colors"),t=ue("spacing"),n=ue("blur"),r=ue("brightness"),i=ue("borderColor"),s=ue("borderRadius"),a=ue("borderSpacing"),o=ue("borderWidth"),l=ue("contrast"),c=ue("grayscale"),d=ue("hueRotate"),h=ue("invert"),f=ue("gap"),m=ue("gradientColorStops"),w=ue("gradientColorStopPositions"),p=ue("inset"),b=ue("margin"),v=ue("opacity"),g=ue("padding"),y=ue("saturate"),x=ue("scale"),E=ue("sepia"),T=ue("skew"),S=ue("space"),A=ue("translate"),_=()=>["auto","contain","none"],C=()=>["auto","hidden","clip","visible","scroll"],I=()=>["auto",Q,t],D=()=>[Q,t],U=()=>["",Ln,ur],M=()=>["auto",Ss,Q],H=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],V=()=>["solid","dashed","dotted","double","none"],q=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],P=()=>["start","end","center","between","around","evenly","stretch"],j=()=>["","0",Q],O=()=>["auto","avoid","all","avoid-page","page","left","right","column"],G=()=>[Ss,Q];return{cacheSize:500,separator:":",theme:{colors:[va],spacing:[Ln,ur],blur:["none","",dr,Q],brightness:G(),borderColor:[e],borderRadius:["n
vendor: 2,201 bytes, line 158
158one","","full",dr,Q],borderSpacing:D(),borderWidth:U(),contrast:G(),grayscale:j(),hueRotate:G(),invert:j(),gap:D(),gradientColorStops:[e],gradientColorStopPositions:[Lj,ur],inset:I(),margin:I(),opacity:G(),padding:D(),saturate:G(),scale:G(),sepia:j(),skew:G(),space:D(),translate:D()},classGroups:{aspect:[{aspect:["auto","square","video",Q]}],container:["container"],columns:[{columns:[dr]}],"break-after":[{"break-after":O()}],"break-before":[{"break-before":O()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...H(),Q]}],overflow:[{overflow:C()}],"overflow-x":[{"overflow-x":C()}],"overflow-y":[{"overflow-y":C()}],overscroll:[{overscroll:_()}],"overscroll-x":[{"overscroll-x":_()}],"overscroll-y":[{"overscroll-y":_()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[p]}],"inset-x":[{"inset-x":[p]}],"inset-y":[{"inset-y":[p]}],start:[{start:[p]}],end:[{end:[p]}],top:[{top:[p]}],right:[{right:[p]}],bottom:[{bottom:[p]}],left:[{left:[p]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",ga,Q]}],basis:[{basis:I()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",Q]}],grow:[{grow:j()}],shrink:[{shrink:j()}],order:[{order:["first","last","none",ga,Q]}],"grid-cols":[{"grid-cols":[va]}],"col-start-end":[{col:["auto",{span:["full",ga,Q]},Q]}],"col-start":[{"col-start":M()}],"col-end":[{"col-end":M()}],"grid-rows":[{"grid-rows":[va]}],"row-start-end":[{row:["auto",{span:[ga,Q]}
vendor: 9,288 bytes, line 158
158,Q]}],"row-start":[{"row-start":M()}],"row-end":[{"row-end":M()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",Q]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",Q]}],gap:[{gap:[f]}],"gap-x":[{"gap-x":[f]}],"gap-y":[{"gap-y":[f]}],"justify-content":[{justify:["normal",...P()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...P(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...P(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[g]}],px:[{px:[g]}],py:[{py:[g]}],ps:[{ps:[g]}],pe:[{pe:[g]}],pt:[{pt:[g]}],pr:[{pr:[g]}],pb:[{pb:[g]}],pl:[{pl:[g]}],m:[{m:[b]}],mx:[{mx:[b]}],my:[{my:[b]}],ms:[{ms:[b]}],me:[{me:[b]}],mt:[{mt:[b]}],mr:[{mr:[b]}],mb:[{mb:[b]}],ml:[{ml:[b]}],"space-x":[{"space-x":[S]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[S]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",Q,t]}],"min-w":[{"min-w":[Q,t,"min","max","fit"]}],"max-w":[{"max-w":[Q,t,"none","full","min","max","fit","prose",{screen:[dr]},dr]}],h:[{h:[Q,t,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[Q,t,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[Q,t,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[Q,t,"auto","min","max","fit"]}],"font-size":[{text:["base",dr,ur]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",wd]}],"font-family":[{font:[va]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",Q]}],"line-clamp":[{"line-clamp":["none",Ss,wd]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",Ln,Q]}],"list-image":[{"list-image":["none",Q]}],"list-style-type":[{list:["none","disc","decimal",Q]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[v]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[v]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...V(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",Ln,ur]}],"underline-offset":[{"underline-offset":["auto",Ln,Q]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:D()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Q]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",Q]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[v]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...H(),Uj]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",Bj]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},Wj]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[w]}],"gradient-via-pos":[{via:[w]}],"gradient-to-pos":[{to:[w]}],"gradient-from":[{from:[m]}],"gradient-via":[{via:[m]}],"gradient-to":[{to:[m]}],rounded:[{rounded:[s]}],"rounded-s":[{"rounded-s":[s]}],"rounded-e":[{"rounded-e":[s]}],"rounded-t":[{"rounded-t":[s]}],"rounded-r":[{"rounded-r":[s]}],"rounded-b":[{"rounded-b":[s]}],"rounded-l":[{"rounded-l":[s]}],"rounded-ss":[{"rounded-ss":[s]}],"rounded-se":[{"rounded-se":[s]}],"rounded-ee":[{"rounded-ee":[s]}],"rounded-es":[{"rounded-es":[s]}],"rounded-tl":[{"rounded-tl":[s]}],"rounded-tr":[{"rounded-tr":[s]}],"rounded-br":[{"rounded-br":[s]}],"rounded-bl":[{"rounded-bl":[s]}],"border-w":[{border:[o]}],"border-w-x":[{"border-x":[o]}],"border-w-y":[{"border-y":[o]}],"border-w-s":[{"border-s":[o]}],"border-w-e":[{"border-e":[o]}],"border-w-t":[{"border-t":[o]}],"border-w-r":[{"border-r":[o]}],"border-w-b":[{"border-b":[o]}],"border-w-l":[{"border-l":[o]}],"border-opacity":[{"border-opacity":[v]}],"border-style":[{border:[...V(),"hidden"]}],"divide-x":[{"divide-x":[o]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[o]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[v]}],"divide-style":[{divide:V()}],"border-color":[{border:[i]}],"border-color-x":[{"border-x":[i]}],"border-color-y":[{"border-y":[i]}],"border-color-s":[{"border-s":[i]}],"border-color-e":[{"border-e":[i]}],"border-color-t":[{"border-t":[i]}],"border-color-r":[{"border-r":[i]}],"border-color-b":[{"border-b":[i]}],"border-color-l":[{"border-l":[i]}],"divide-color":[{divide:[i]}],"outline-style":[{outline:["",...V()]}],"outline-offset":[{"outline-offset":[Ln,Q]}],"outline-w":[{outline:[Ln,ur]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:U()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[v]}],"ring-offset-w":[{"ring-offset":[Ln,ur]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",dr,$j]}],"shadow-color":[{shadow:[va]}],opacity:[{opacity:[v]}],"mix-blend":[{"mix-blend":[...q(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":q()}],filter:[{filter:["","none"]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[l]}],"drop-shadow":[{"drop-shadow":["","none",dr,Q]}],grayscale:[{grayscale:[c]}],"hue-rotate":[{"hue-rotate":[d]}],invert:[{invert:[h]}],saturate:[{saturate:[y]}],sepia:[{sepia:[E]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[l]}],"backdrop-grayscale":[{"backdrop-grayscale":[c]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[d]}],"backdrop-invert":[{"backdrop-invert":[h]}],"backdrop-opacity":[{"backdrop-opacity":[v]}],"backdrop-saturate":[{"backdrop-saturate":[y]}],"backdrop-sepia":[{"backdrop-sepia":[E]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[a]}],"border-spacing-x":[{"border-spacing-x":[a]}],"border-spacing-y":[{"border-spacing-y":[a]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",Q]}],duration:[{duration:G()}],ease:[{ease:["linear","in","out","in-out",Q]}],delay:[{delay:G()}],animate:[{animate:["none","spin","ping","pulse","bounce",Q]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[x]}],"scale-x":[{"scale-x":[x]}],"scale-y":[{"scale-y":[x]}],rotate:[{rotate:[ga,Q]}],"translate-x":[{"translate-x":[A]}],"translate-y":[{"translate-y":[A]}],"skew-x":[{"skew-x":[T]}],"skew-y":[{"skew-y":[T]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",Q]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",Q]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":D()}],"scroll-mx":[{"scroll-mx":D()}],"scroll-my":[{"scroll-my":D()}],"scroll-ms":[{"scroll-ms":D()}],"scroll-me":[{"scroll-me":D()}],"scroll-mt":[{"scroll-mt":D()}],"scroll-mr":[{"scroll-mr":D()}],"scroll-mb":[{"scroll-mb":D()}],"scroll-ml":[{"scroll-ml":D()}],"scroll-p":[{"scroll-p":D()}],"scroll-px":[{"scroll-px":D()}],"scroll-py":[{"scroll-py":D()}],"scroll-ps":[{"scroll-ps":D()}],"scroll-pe":[{"scroll-pe":D()}],"scroll-pt":[{"scroll-pt":D()}],"scroll-pr":[{"scroll-pr":D()}],"scroll-pb":[{"scroll-pb":D()}],"scroll-pl":[{"scroll-pl":D()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}
vendor: 4,646 bytes, line 158
158],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",Q]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[Ln,ur,wd]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},Jj=jj(qj);function qe(...e){return Jj(Yk(e))}const Zj=ij,ax=k.forwardRef(({className:e,...t},n)=>u.jsx($k,{ref:n,className:qe("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));ax.displayName=$k.displayName;const Yj=Wm("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),ox=k.forwardRef(({className:e,variant:t,...n},r)=>u.jsx(Kk,{ref:r,className:qe(Yj({variant:t}),e),...n}));ox.displayName=Kk.displayName;const Qj=k.forwardRef(({className:e,...t},n)=>u.jsx(qk,{ref:n,className:qe("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors group-[.destructive]:border-muted/40 hover:bg-secondary group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 group-[.destructive]:focus:ring-destructive disabled:pointer-events-none disabled:opacity-50",e),...t}));Qj.displayName=qk.displayName;const lx=k.forwardRef(({className:e,...t},n)=>u.jsx(Jk,{ref:n,className:qe("absolute right-2 top-2 rounded-md p-1 text-foreground
vendor: 11,580 bytes, line 158
158/50 opacity-0 transition-opacity group-hover:opacity-100 group-[.destructive]:text-red-300 hover:text-foreground group-[.destructive]:hover:text-red-50 focus:opacity-100 focus:outline-none focus:ring-2 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:u.jsx(ex,{className:"h-4 w-4"})}));lx.displayName=Jk.displayName;const cx=k.forwardRef(({className:e,...t},n)=>u.jsx(Gk,{ref:n,className:qe("text-sm font-semibold",e),...t}));cx.displayName=Gk.displayName;const ux=k.forwardRef(({className:e,...t},n)=>u.jsx(Hk,{ref:n,className:qe("text-sm opacity-90",e),...t}));ux.displayName=Hk.displayName;function Xj(){const{toasts:e}=dP();return u.jsxs(Zj,{children:[e.map(function({id:t,title:n,description:r,action:i,...s}){return u.jsxs(ox,{...s,children:[u.jsxs("div",{className:"grid gap-1",children:[n&&u.jsx(cx,{children:n}),r&&u.jsx(ux,{children:r})]}),i,u.jsx(lx,{})]},t)}),u.jsx(ax,{})]})}var eR=Kf[" useId ".trim().toString()]||(()=>{}),tR=0;function bd(e){const[t,n]=k.useState(eR());return Qn(()=>{e||n(r=>r??String(tR++))},[e]),e||(t?`radix-${t}`:"")}const nR=["top","right","bottom","left"],Ur=Math.min,Ct=Math.max,Dc=Math.round,gl=Math.floor,Rn=e=>({x:e,y:e}),rR={left:"right",right:"left",bottom:"top",top:"bottom"},iR={start:"end",end:"start"};function Xh(e,t,n){return Ct(e,Ur(t,n))}function Xn(e,t){return typeof e=="function"?e(t):e}function er(e){return e.split("-")[0]}function ea(e){return e.split("-")[1]}function Km(e){return e==="x"?"y":"x"}function Gm(e){return e==="y"?"height":"width"}const sR=new Set(["top","bottom"]);function _n(e){return sR.has(er(e))?"y":"x"}function Hm(e){return Km(_n(e))}function aR(e,t,n){n===void 0&&(n=!1);const r=ea(e),i=Hm(e),s=Gm(i);let a=i==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(a=Nc(a)),[a,Nc(a)]}function oR(e){const t=Nc(e);return[ef(e),t,ef(t)]}function ef(e){return e.replace(/start|end/g,t=>iR[t])}const kv=["left","right"],xv=["right","left"],lR=["top","bottom"],cR=["bottom","top"];function uR(e,t,n){switch(e){case"top":case"bottom":return n?t?xv:kv:t?kv:xv;case"left":case"right":return t?lR:cR;default:return[]}}function dR(e,t,n,r){const i=ea(e);let s=uR(er(e),n==="start",r);return i&&(s=s.map(a=>a+"-"+i),t&&(s=s.concat(s.map(ef)))),s}function Nc(e){return e.replace(/left|right|bottom|top/g,t=>rR[t])}function hR(e){return{top:0,right:0,bottom:0,left:0,...e}}function dx(e){return typeof e!="number"?hR(e):{top:e,right:e,bottom:e,left:e}}function Mc(e){const{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function Sv(e,t,n){let{reference:r,floating:i}=e;const s=_n(t),a=Hm(t),o=Gm(a),l=er(t),c=s==="y",d=r.x+r.width/2-i.width/2,h=r.y+r.height/2-i.height/2,f=r[o]/2-i[o]/2;let m;switch(l){case"top":m={x:d,y:r.y-i.height};break;case"bottom":m={x:d,y:r.y+r.height};break;case"right":m={x:r.x+r.width,y:h};break;case"left":m={x:r.x-i.width,y:h};break;default:m={x:r.x,y:r.y}}switch(ea(t)){case"start":m[a]-=f*(n&&c?-1:1);break;case"end":m[a]+=f*(n&&c?-1:1);break}return m}const fR=async(e,t,n)=>{const{placement:r="bottom",strategy:i="absolute",middleware:s=[],platform:a}=n,o=s.filter(Boolean),l=await(a.isRTL==null?void 0:a.isRTL(t));let c=await a.getElementRects({reference:e,floating:t,strategy:i}),{x:d,y:h}=Sv(c,r,l),f=r,m={},w=0;for(let p=0;p<o.length;p++){const{name:b,fn:v}=o[p],{x:g,y,data:x,reset:E}=await v({x:d,y:h,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:c,platform:a,elements:{reference:e,floating:t}});d=g??d,h=y??h,m={...m,[b]:{...m[b],...x}},E&&w<=50&&(w++,typeof E=="object"&&(E.placement&&(f=E.placement),E.rects&&(c=E.rects===!0?await a.getElementRects({reference:e,floating:t,strategy:i}):E.rects),{x:d,y:h}=Sv(c,f,l)),p=-1)}return{x:d,y:h,placement:f,strategy:i,middlewareData:m}};async function mo(e,t){var n;t===void 0&&(t={});const{x:r,y:i,platform:s,rects:a,elements:o,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:h="floating",altBoundary:f=!1,padding:m=0}=Xn(t,e),w=dx(m),b=o[f?h==="floating"?"reference":"floating":h],v=Mc(await s.getClippingRect({element:(n=await(s.isElement==null?void 0:s.isElement(b)))==null||n?b:b.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(o.floating)),boundary:c,rootBoundary:d,strategy:l})),g=h==="floating"?{x:r,y:i,width:a.floating.width,height:a.floating.height}:a.reference,y=await(s.getOffsetParent==null?void 0:s.getOffsetParent(o.floating)),x=await(s.isElement==null?void 0:s.isElement(y))?await(s.getScale==null?void 0:s.getScale(y))||{x:1,y:1}:{x:1,y:1},E=Mc(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:y,strategy:l}):g);return{top:(v.top-E.top+w.top)/x.y,bottom:(E.bottom-v.bottom+w.bottom)/x.y,left:(v.left-E.left+w.left)/x.x,right:(E.right-v.right+w.right)/x.x}}const mR=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:i,rects:s,platform:a,elements:o,middlewareData:l}=t,{element:c,padding:d=0}=Xn(e,t)||{};if(c==null)return{};const h=dx(d),f={x:n,y:r},m=Hm(i),w=Gm(m),p=await a.getDimensions(c),b=m==="y",v=b?"top":"left",g=b?"bottom":"right",y=b?"clientHeight":"clientWidth",x=s.reference[w]+s.reference[m]-f[m]-s.floating[w],E=f[m]-s.reference[m],T=await(a.getOffsetParent==null?void 0:a.getOffsetParent(c));let S=T?T[y]:0;(!S||!await(a.isElement==null?void 0:a.isElement(T)))&&(S=o.floating[y]||s.floating[w]);const A=x/2-E/2,_=S/2-p[w]/2-1,C=Ur(h[v],_),I=Ur(h[g],_),D=C,U=S-p[w]-I,M=S/2-p[w]/2+A,H=Xh(D,M,U),V=!l.arrow&&ea(i)!=null&&M!==H&&s.reference[w]/2-(M<D?C:I)-p[w]/2<0,q=V?M<D?M-D:M-U:0;return{[m]:f[m]+q,data:{[m]:H,centerOffset:M-H-q,...V&&{alignmentOffset:q}},reset:V}}}),pR=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:i,middlewareData:s,rects:a,initialPlacement:o,platform:l,elements:c}=t,{mainAxis:d=!0,crossAxis:h=!0,fallbackPlacements:f,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:w="none",flipAlignment:p=!0,...b}=Xn(e,t);if((n=s.arrow)!=null&&n.alignmentOffset)return{};const v=er(i),g=_n(o),y=er(o)===o,x=await(l.isRTL==null?void 0:l.isRTL(c.floating)),E=f||(y||!p?[Nc(o)]:oR(o)),T=w!=="none";!f&&T&&E.push(...dR(o,p,w,x));const S=[o,...E],A=await mo(t,b),_=[];let C=((r=s.flip)==null?void 0:r.overflows)||[];if(d&&_.push(A[v]),h){const M=aR(i,a,x);_.push(A[M[0]],A[M[1]])}if(C=[...C,{placement:i,overflows:_}],!_.every(M=>M<=0)){var I,D;const M=(((I=s.flip)==null?void 0:I.index)||0)+1,H=S[M];if(H&&(!(h==="alignment"?g!==_n(H):!1)||C.every(P=>P.overflows[0]>0&&_n(P.placement)===g)))return{data:{index:M,overflows:C},reset:{placement:H}};let V=(D=C.filter(q=>q.overflows[0]<=0).sort((q,P)=>q.overflows[1]-P.overflows[1])[0])==null?void 0:D.placement;if(!V)switch(m){case"bestFit":{var U;const q=(U=C.filter(P=>{if(T){const j=_n(P.placement);return j===g||j==="y"}return!0}).map(P=>[P.placement,P.overflows.filter(j=>j>0).reduce((j,O)=>j+O,0)]).sort((P,j)=>P[1]-j[1])[0])==null?void 0:U[0];q&&(V=q);break}case"initialPlacement":V=o;break}if(i!==V)return{reset:{placement:V}}}return{}}}};function Ev(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Tv(e){return nR.some(t=>e[t]>=0)}const gR=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...i}=Xn(e,t);switch(r){case"referenceHidden":{const s=await mo(t,{...i,elementContext:"reference"}),a=Ev(s,n.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:Tv(a)}}}case"escaped":{const s=await mo(t,{...i,altBoundary:!0}),a=Ev(s,n.floating);return{data:{escapedOffsets:a,escaped:Tv(a)}}}default:return{}}}}},hx=new Set(["left","top"]);async function vR(e,t){const{placement:n,platform:r,elements:i}=e,s=await(r.isRTL==null?void 0:r.isRTL(i.floating)),a=er(n),o=ea(n),l=_n(n)==="y",c=hx.has(a)?-1:1,d=s&&l?-1:1,h=Xn(t,e);let{mainAxis:f,crossAxis:m,alignmentAxis:w}=typeof h=="number"?{mainAxis:h,crossAxis:0,alignmentAxis:null}:{mainAxis:h.mainAxis||0,crossAxis:h.crossAxis||0,alignmentAxis:h.alignmentAxis};return o&&typeof w=="number"&&(m=o==="end"?w*-1:w),l?{x:m*d,y:f*c}:{x:f*c,y:m*d}}const yR=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:i,y:s,placement:a,middlewareData:o}=t,l=await vR(t,e);return a===((n=o.offset)==null?void 0:n.placement)&&(r=o.arrow)!=null&&r.alignmentOffset?{}:{x:i+l.x,y:s+l.y,data:{...l,placement:a}}}}},wR=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:i}=t,{mainAxis:s=!0,crossAxis:a=!1,limiter:o={fn:b=>{let{x:v,y:g}=b;return{x:v,y:g}}},...l}=Xn(e,t),c={x:n,y:r},d=await mo(t,l),h=_n(er(i)),f=Km(h);let m=c[f],w=c[h];if(s){const b=f==="y"?"top":"left",v=f==="y"?"bottom":"right",g=m+d[b],y=m-d[v];m=Xh(g,m,y)}if(a){const b=h==="y"?"top":"left",v=h==="y"?"bottom":"right",g=w+d[b],y=w-d[v];w=Xh(g,w,y)}const p=o.fn({...t,[f]:m,[h]:w});return{...p,data:{x:p.x-n,y:p.y-r,enabled:{[f]:s,[h]:a}}}}}},bR=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:i,rects:s,middlewareData:a}=t,{offset:o=0,mainAxis:l=!0,crossAxis:c=!0}=Xn(e,t),d={x:n,y:r},h=_n(i),f=Km(h);let m=d[f],w=d[h];const p=Xn(o,t),b=typeof p=="number"?{mainAxis:p,crossAxis:0}:{mainAxis:0,crossAxis:0,...p};if(l){const y=f==="y"?"height":"width",x=s.reference[f]-s.floating[y]+b.mainAxis,E=s.reference[f]+s.reference[y]-b.mainAxis;m<x?m=x:m>E&&(m=E)}if(c){var v,g;const y=f==="y"?"width":"height",x=hx.has(er(i)),E=s.reference[h]-s.floating[y]+(x&&((v=a.offset)==null?void 0:v[h])||0)+(x?0:b.crossAxis),T=s.reference[h]+s.reference[y]+(x?0:((g=a.offset)==null?void 0:g[h])||0)-(x?b.crossAxis:0);w<E?w=E:w>T&&(w=T)}return{[f]:m,[h]:w}}}},kR=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:i,rects:s,platform:a,elements:o}=t,{apply:l=()=>{},...c}=Xn(e,t),d=await mo(t,c),h=er(i),f=ea(i),m=_n(i)==="y",{width:w,height:p}=s.floating;let b,v;h==="top"||h==="bottom"?(b=h,v=f===(await(a.isRTL==null?void 0:a.isRTL(o.floating))?"start":"end")?"left":"right"):(v=h,b=f==="end"?"top":"bottom");const g=p-d.top-d.bottom,y=w-d.left-d.right,x=Ur(p-d[b],g),E=Ur(w-d[v],y),T=!t.middlewareData.shift;let S=x,A=E;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(A=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(S=g),T&&!f){const C=Ct(d.left,0),I=Ct(d.right,0),D=Ct(d.top,0),U=Ct(d.bottom,0);m?A=w-2*(C!==0||I!==0?C+I:Ct(d.left,d.right)):S=p-2*(D!==0||U!==0?D+U:Ct(d.top,d.bottom))}await l({...t,availableWidth:A,availableHeight:S});const _=await a.getDimensions(o.floating);return w!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function bu(){return typeof window<"u"}function ta(e){return fx(e)?(e.nodeName||"").toLowerCase():"#document"}function Rt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function On(e){var t;return(t=(fx(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function fx(e){return bu()?e instanceof Node||e instanceof Rt(e).Node:!1}function hn(e){return bu()?e instanceof Element||e instanceof Rt(e).Element:!1}function Nn(e){return bu()?e instanceof HTMLElement||e instanceof Rt(e).HTMLElement:!1}function Av(e){return!bu()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Rt(e).ShadowRoot}const xR=new Set(["inline","contents"]);function Fo(e){const{overflow:t,overflowX:n,overflowY:r,display:i}=fn(e);
vendor: 4,121 bytes, line 158
158return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!xR.has(i)}const SR=new Set(["table","td","th"]);function ER(e){return SR.has(ta(e))}const TR=[":popover-open",":modal"];function ku(e){return TR.some(t=>{try{return e.matches(t)}catch{return!1}})}const AR=["transform","translate","scale","rotate","perspective"],CR=["transform","translate","scale","rotate","perspective","filter"],_R=["paint","layout","strict","content"];function qm(e){const t=Jm(),n=hn(e)?fn(e):e;return AR.some(r=>n[r]?n[r]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||CR.some(r=>(n.willChange||"").includes(r))||_R.some(r=>(n.contain||"").includes(r))}function PR(e){let t=Vr(e);for(;Nn(t)&&!Vs(t);){if(qm(t))return t;if(ku(t))return null;t=Vr(t)}return null}function Jm(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const jR=new Set(["html","body","#document"]);function Vs(e){return jR.has(ta(e))}function fn(e){return Rt(e).getComputedStyle(e)}function xu(e){return hn(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Vr(e){if(ta(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Av(e)&&e.host||On(e);return Av(t)?t.host:t}function mx(e){const t=Vr(e);return Vs(t)?e.ownerDocument?e.ownerDocument.body:e.body:Nn(t)&&Fo(t)?t:mx(t)}function po(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const i=mx(e),s=i===((r=e.ownerDocument)==null?void 0:r.body),a=Rt(i);if(s){const o=tf(a);return t.concat(a,a.visualViewport||[],Fo(i)?i:[],o&&n?po(o):[])}return t.concat(i,po(i,[],n))}function tf(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function px(e){const t=fn(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const i=Nn(e),s=i?e.offsetWidth:n,a=i?e.offsetHeight:r,o=Dc(n)!==s||Dc(r)!==a;return o&&(n=s,r=a),{width:n,height:r,$:o}}function Zm(e){return hn(e)?e:e.contextElement}function Es(e){const t=Zm(e);if(!Nn(t))return Rn(1);const n=t.getBoundingClientRect(),{width:r,height:i,$:s}=px(t);let a=(s?Dc(n.width):n.width)/r,o=(s?Dc(n.height):n.height)/i;return(!a||!Number.isFinite(a))&&(a=1),(!o||!Number.isFinite(o))&&(o=1),{x:a,y:o}}const RR=Rn(0);function gx(e){const t=Rt(e);return!Jm()||!t.visualViewport?RR:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function zR(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Rt(e)?!1:t}function ji(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const i=e.getBoundingClientRect(),s=Zm(e);let a=Rn(1);t&&(r?hn(r)&&(a=Es(r)):a=Es(e));const o=zR(s,n,r)?gx(s):Rn(0);let l=(i.left+o.x)/a.x,c=(i.top+o.y)/a.y,d=i.width/a.x,h=i.height/a.y;if(s){const f=Rt(s),m=r&&hn(r)?Rt(r):r;let w=f,p=tf(w);for(;p&&r&&m!==w;){const b=Es(p),v=p.getBoundingClientRect(),g=fn(p),y=v.left+(p.clientLeft+parseFloat(g.paddingLeft))*b.x,x=v.top+(p.clientTop+parseFloat(g.paddingTop))*b.y;l*=b.x,c*=b.y,d*=b.x,h*=b.y,l+=y,c+=x,w=Rt(p),p=tf(w)}}return Mc({width:d,height:h,x:l,y:c})}function Ym(e,t){const n=xu(e).scrollLeft;return t?t.left+n:ji(On(e)).left+n}function vx(e,t,n){n===void 0&&(n=!1);const r=e.getBoundingClientRect(),i=r.left+t.scrollLeft-(n?0:Ym(e,r)),s=r.top+t.scrollTop;return{x:i,y:s}}function DR(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e;const s=i==="fixed",a=On(r),o=t?ku(t.floating):!1;if(r===a||o&&s)return n;let l={scrollLeft:0,scrollTop:0},c=Rn(1);const d=Rn(0),h=Nn(r);if((h||!h&&!s)&&((ta(r)!=="body"||Fo(a))&&(l=xu(r)),Nn(r))){const m=ji(r);c=Es(r),d.x=m.x+r.clientLeft,d.y=m.y+r.clientTop}const f=a&&!h&&!s?vx(a,l,!0):Rn(0);return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-l.scrollLeft*c.x+d.x+f.x,y:n.y*c.y-l.scrollTop*c.y+d.y+f.y}}function NR(e){return Array.from(e.getClientRects())}function MR(e){const t=On(e),n=xu(e),r=e.ownerDocument.body,i=Ct(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),s=Ct(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let a=-n.scrollLeft+Ym(e);const o=-n.scrollTop;return fn(r).direction==="rtl"&&(a+=Ct(t.clientWidth,r.clientWidth)-i),{width:i,height:s,x:a,y:o}}
vendor: 4,850 bytes, line 158
158function IR(e,t){const n=Rt(e),r=On(e),i=n.visualViewport;let s=r.clientWidth,a=r.clientHeight,o=0,l=0;if(i){s=i.width,a=i.height;const c=Jm();(!c||c&&t==="fixed")&&(o=i.offsetLeft,l=i.offsetTop)}return{width:s,height:a,x:o,y:l}}const OR=new Set(["absolute","fixed"]);function LR(e,t){const n=ji(e,!0,t==="fixed"),r=n.top+e.clientTop,i=n.left+e.clientLeft,s=Nn(e)?Es(e):Rn(1),a=e.clientWidth*s.x,o=e.clientHeight*s.y,l=i*s.x,c=r*s.y;return{width:a,height:o,x:l,y:c}}function Cv(e,t,n){let r;if(t==="viewport")r=IR(e,n);else if(t==="document")r=MR(On(e));else if(hn(t))r=LR(t,n);else{const i=gx(e);r={x:t.x-i.x,y:t.y-i.y,width:t.width,height:t.height}}return Mc(r)}function yx(e,t){const n=Vr(e);return n===t||!hn(n)||Vs(n)?!1:fn(n).position==="fixed"||yx(n,t)}function FR(e,t){const n=t.get(e);if(n)return n;let r=po(e,[],!1).filter(o=>hn(o)&&ta(o)!=="body"),i=null;const s=fn(e).position==="fixed";let a=s?Vr(e):e;for(;hn(a)&&!Vs(a);){const o=fn(a),l=qm(a);!l&&o.position==="fixed"&&(i=null),(s?!l&&!i:!l&&o.position==="static"&&!!i&&OR.has(i.position)||Fo(a)&&!l&&yx(e,a))?r=r.filter(d=>d!==a):i=o,a=Vr(a)}return t.set(e,r),r}function BR(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e;const a=[...n==="clippingAncestors"?ku(t)?[]:FR(t,this._c):[].concat(n),r],o=a[0],l=a.reduce((c,d)=>{const h=Cv(t,d,i);return c.top=Ct(h.top,c.top),c.right=Ur(h.right,c.right),c.bottom=Ur(h.bottom,c.bottom),c.left=Ct(h.left,c.left),c},Cv(t,o,i));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function UR(e){const{width:t,height:n}=px(e);return{width:t,height:n}}function VR(e,t,n){const r=Nn(t),i=On(t),s=n==="fixed",a=ji(e,!0,s,t);let o={scrollLeft:0,scrollTop:0};const l=Rn(0);function c(){l.x=Ym(i)}if(r||!r&&!s)if((ta(t)!=="body"||Fo(i))&&(o=xu(t)),r){const m=ji(t,!0,s,t);l.x=m.x+t.clientLeft,l.y=m.y+t.clientTop}else i&&c();s&&!r&&i&&c();const d=i&&!r&&!s?vx(i,o):Rn(0),h=a.left+o.scrollLeft-l.x-d.x,f=a.top+o.scrollTop-l.y-d.y;return{x:h,y:f,width:a.width,height:a.height}}function kd(e){return fn(e).position==="static"}function _v(e,t){if(!Nn(e)||fn(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return On(e)===n&&(n=n.ownerDocument.body),n}function wx(e,t){const n=Rt(e);if(ku(e))return n;if(!Nn(e)){let i=Vr(e);for(;i&&!Vs(i);){if(hn(i)&&!kd(i))return i;i=Vr(i)}return n}let r=_v(e,t);for(;r&&ER(r)&&kd(r);)r=_v(r,t);return r&&Vs(r)&&kd(r)&&!qm(r)?n:r||PR(e)||n}const WR=async function(e){const t=this.getOffsetParent||wx,n=this.getDimensions,r=await n(e.floating);return{reference:VR(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function $R(e){return fn(e).direction==="rtl"}const KR={convertOffsetParentRelativeRectToViewportRelativeRect:DR,getDocumentElement:On,getClippingRect:BR,getOffsetParent:wx,getElementRects:WR,getClientRects:NR,getDimensions:UR,getScale:Es,isElement:hn,isRTL:$R};function bx(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function GR(e,t){let n=null,r;const i=On(e);function s(){var o;clearTimeout(r),(o=n)==null||o.disconnect(),n=null}function a(o,l){o===void 0&&(o=!1),l===void 0&&(l=1),s();const c=e.getBoundingClientRect(),{left:d,top:h,width:f,height:m}=c;if(o||t(),!f||!m)return;const w=gl(h),p=gl(i.clientWidth-(d+f)),b=gl(i.clientHeight-(h+m)),v=gl(d),y={rootMargin:-w+"px "+-p+"px "+-b+"px "+-v+"px",threshold:Ct(0,Ur(1,l))||1};let x=!0;function E(T){const S=T[0].intersectionRatio;if(S!==l){if(!x)return a();S?a(!1,S):r=setTimeout(()=>{a(!1,1e-7)},1e3)}S===1&&!bx(c,e.getBoundingClientRect())&&a(),x=!1}try{n=new IntersectionObserver(E,{...y,root:i.ownerDocument})}catch{n=new IntersectionObserver(E,y)}n.observe(e)}return a(!0),s}function HR(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:i=!0,ancestorResize:s=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:o=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,c=Zm(e),d=i||s?[...c?po(c):[],...po(t)]:[];d.forEach(v=>{i&&v.addEventListener("scroll",n,{passive:!0}),s&&v.addEventListener("resize",n)});const h=c&&o?GR(c,n):null;let f=-1,m=null;a&&(m=new ResizeObserver(v=>{let[g]=v;g&&g.target===c&&m&&(m.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var y;(y=m)==null||y.observe(t)})),n()}),c&&!l&&m.observe(c),m.observe(t));let w,p=l?ji(e):null;l&&b();function b(){const v=ji(e);p&&!bx(p,v)&&n(),p=v,w=requestAnimationFrame(b)}return n(),()=>{var v;d.forEach(g=>{i&&g.removeEventListener("scroll",n),s&&g.removeEventListener("resize",n)}),h==null||h(),(v=m)==null||v.disconnect(),m=null,l&&cancelAnimationFrame(w)}}const qR=yR,JR=wR,ZR=pR,YR=kR,QR=gR,Pv=mR,XR=bR,ez=(e,t,n)=>{const r=new Map,i={platform:KR,...n},s={...i.platform,_c:r};return fR(e,t,{...i,platform:s})};var tz=typeof document<"u",nz=function(){},Jl=tz?k.useLayoutEffect:nz;function Ic(e,t){if(e===t)return!0;
vendor: 4,133 bytes, line 158
158if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!Ic(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){const s=i[r];if(!(s==="_owner"&&e.$$typeof)&&!Ic(e[s],t[s]))return!1}return!0}return e!==e&&t!==t}function kx(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function jv(e,t){const n=kx(e);return Math.round(t*n)/n}function xd(e){const t=k.useRef(e);return Jl(()=>{t.current=e}),t}function rz(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:i,elements:{reference:s,floating:a}={},transform:o=!0,whileElementsMounted:l,open:c}=e,[d,h]=k.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,m]=k.useState(r);Ic(f,r)||m(r);const[w,p]=k.useState(null),[b,v]=k.useState(null),g=k.useCallback(P=>{P!==T.current&&(T.current=P,p(P))},[]),y=k.useCallback(P=>{P!==S.current&&(S.current=P,v(P))},[]),x=s||w,E=a||b,T=k.useRef(null),S=k.useRef(null),A=k.useRef(d),_=l!=null,C=xd(l),I=xd(i),D=xd(c),U=k.useCallback(()=>{if(!T.current||!S.current)return;const P={placement:t,strategy:n,middleware:f};I.current&&(P.platform=I.current),ez(T.current,S.current,P).then(j=>{const O={...j,isPositioned:D.current!==!1};M.current&&!Ic(A.current,O)&&(A.current=O,No.flushSync(()=>{h(O)}))})},[f,t,n,I,D]);Jl(()=>{c===!1&&A.current.isPositioned&&(A.current.isPositioned=!1,h(P=>({...P,isPositioned:!1})))},[c]);const M=k.useRef(!1);Jl(()=>(M.current=!0,()=>{M.current=!1}),[]),Jl(()=>{if(x&&(T.current=x),E&&(S.current=E),x&&E){if(C.current)return C.current(x,E,U);U()}},[x,E,U,C,_]);const H=k.useMemo(()=>({reference:T,floating:S,setReference:g,setFloating:y}),[g,y]),V=k.useMemo(()=>({reference:x,floating:E}),[x,E]),q=k.useMemo(()=>{const P={position:n,left:0,top:0};if(!V.floating)return P;const j=jv(V.floating,d.x),O=jv(V.floating,d.y);return o?{...P,transform:"translate("+j+"px, "+O+"px)",...kx(V.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:j,top:O}},[n,o,V.floating,d.x,d.y]);return k.useMemo(()=>({...d,update:U,refs:H,elements:V,floatingStyles:q}),[d,U,H,V,q])}const iz=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:i}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Pv({element:r.current,padding:i}).fn(n):{}:r?Pv({element:r,padding:i}).fn(n):{}}}},sz=(e,t)=>({...qR(e),options:[e,t]}),az=(e,t)=>({...JR(e),options:[e,t]}),oz=(e,t)=>({...XR(e),options:[e,t]}),lz=(e,t)=>({...ZR(e),options:[e,t]}),cz=(e,t)=>({...YR(e),options:[e,t]}),uz=(e,t)=>({...QR(e),options:[e,t]}),dz=(e,t)=>({...iz(e),options:[e,t]});var hz="Arrow",xx=k.forwardRef((e,t)=>{const{children:n,width:r=10,height:i=5,...s}=e;return u.jsx(De.svg,{...s,ref:t,width:r,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:u.jsx("polygon",{points:"0,0 30,0 15,10"})})});xx.displayName=hz;var fz=xx;function mz(e){const[t,n]=k.useState(void 0);return Qn(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(i=>{if(!Array.isArray(i)||!i.length)return;const s=i[0];let a,o;if("borderBoxSize"in s){const l=s.borderBoxSize,c=Array.isArray(l)?l[0]:l;a=c.inlineSize,o=c.blockSize}else a=e.offsetWidth,o=e.offsetHeight;n({width:a,height:o})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}var Sx="Popper",[Ex,Tx]=Oo(Sx),[UU,Ax]=Ex(Sx),Cx="PopperAnchor",_x=k.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...i}=e,s=Ax(Cx,n),a=k.useRef(null),o=ft(t,a);return k.useEffect(()=>{s.onAnchorChange((r==null?void 0:r.current)||a.current)}),r?null:u.jsx(De.div,{...i,ref:o})});_x.displayName=Cx;var Qm="PopperContent",[pz,gz]=Ex(Qm),Px=k.forwardRef((e,t)=>{var ie,Ni,rr,Zr,ir,Mi;const{__scopePopper:n,side:r="bottom",sideOffset:i=0,align:s="center",alignOffset:a=0,arrowPadding:o=0,avoidCollisions:l
vendor: 4,168 bytes, line 158
158=!0,collisionBoundary:c=[],collisionPadding:d=0,sticky:h="partial",hideWhenDetached:f=!1,updatePositionStrategy:m="optimized",onPlaced:w,...p}=e,b=Ax(Qm,n),[v,g]=k.useState(null),y=ft(t,sr=>g(sr)),[x,E]=k.useState(null),T=mz(x),S=(T==null?void 0:T.width)??0,A=(T==null?void 0:T.height)??0,_=r+(s!=="center"?"-"+s:""),C=typeof d=="number"?d:{top:0,right:0,bottom:0,left:0,...d},I=Array.isArray(c)?c:[c],D=I.length>0,U={padding:C,boundary:I.filter(yz),altBoundary:D},{refs:M,floatingStyles:H,placement:V,isPositioned:q,middlewareData:P}=rz({strategy:"fixed",placement:_,whileElementsMounted:(...sr)=>HR(...sr,{animationFrame:m==="always"}),elements:{reference:b.anchor},middleware:[sz({mainAxis:i+A,alignmentAxis:a}),l&&az({mainAxis:!0,crossAxis:!1,limiter:h==="partial"?oz():void 0,...U}),l&&lz({...U}),cz({...U,apply:({elements:sr,rects:Ko,availableWidth:Ou,availableHeight:Go})=>{const{width:Lu,height:aa}=Ko.reference,Ii=sr.floating.style;Ii.setProperty("--radix-popper-available-width",`${Ou}px`),Ii.setProperty("--radix-popper-available-height",`${Go}px`),Ii.setProperty("--radix-popper-anchor-width",`${Lu}px`),Ii.setProperty("--radix-popper-anchor-height",`${aa}px`)}}),x&&dz({element:x,padding:o}),wz({arrowWidth:S,arrowHeight:A}),f&&uz({strategy:"referenceHidden",...U})]}),[j,O]=zx(V),G=Dn(w);Qn(()=>{q&&(G==null||G())},[q,G]);const $=(ie=P.arrow)==null?void 0:ie.x,X=(Ni=P.arrow)==null?void 0:Ni.y,te=((rr=P.arrow)==null?void 0:rr.centerOffset)!==0,[Ce,Je]=k.useState();return Qn(()=>{v&&Je(window.getComputedStyle(v).zIndex)},[v]),u.jsx("div",{ref:M.setFloating,"data-radix-popper-content-wrapper":"",style:{...H,transform:q?H.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Ce,"--radix-popper-transform-origin":[(Zr=P.transformOrigin)==null?void 0:Zr.x,(ir=P.transformOrigin)==null?void 0:ir.y].join(" "),...((Mi=P.hide)==null?void 0:Mi.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:u.jsx(pz,{scope:n,placedSide:j,onArrowChange:E,arrowX:$,arrowY:X,shouldHideArrow:te,children:u.jsx(De.div,{"data-side":j,"data-align":O,...p,ref:y,style:{...p.style,animation:q?void 0:"none"}})})})});Px.displayName=Qm;var jx="PopperArrow",vz={top:"bottom",right:"left",bottom:"top",left:"right"},Rx=k.forwardRef(function(t,n){const{__scopePopper:r,...i}=t,s=gz(jx,r),a=vz[s.placedSide];return u.jsx("span",{ref:s.onArrowChange,style:{position:"absolute",left:s.arrowX,top:s.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[s.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[s.placedSide],visibility:s.shouldHideArrow?"hidden":void 0},children:u.jsx(fz,{...i,ref:n,style:{...i.style,display:"block"}})})});Rx.displayName=jx;function yz(e){return e!==null}var wz=e=>({name:"transformOrigin",options:e,fn(t){var b,v,g;const{placement:n,rects:r,middlewareData:i}=t,a=((b=i.arrow)==null?void 0:b.centerOffset)!==0,o=a?0:e.arrowWidth,l=a?0:e.arrowHeight,[c,d]=zx(n),h={start:"0%",center:"50%",end:"100%"}[d],f=(((v=i.arrow)==null?void 0:v.x)??0)+o/2,m=(((g=i.arrow)==null?void 0:g.y)??0)+l/2;let w="",p="";return c==="bottom"?(w=a?h:`${f}px`,p=`${-l}px`):c==="top"?(w=a?h:`${f}px`,p=`${r.floating.height+l}px`):c==="right"?(w=`${-l}px`,p=a?h:`${m}px`):c==="left"&&(w=`${r.floating.width+l}px`,p=a?h:`${m}px`),{data:{x:w,y:p}}}});function zx(e){const[t,n="center"]=e.split("-");return[t,n]}var bz=_x,kz=Px,xz=Rx,[Su,VU]=Oo("Tooltip",[Tx]),Xm=Tx(),Dx="TooltipProvider",Sz=700,Rv="tooltip.open",[Ez,Nx]=Su(Dx),Mx=e=>{const{__scopeTooltip:t,delayDuration:n=Sz,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:s}=e,a=k.useRef(!0),o=k.useRef(!1),l=k.useRef(0);return k.useEffect(()=>{const c=l.current;return()=>window.clearTimeout(c)},[]),u.jsx(Ez,{scope:t,isOpenDelayedRef:a,delayDuration:n,onOpen:k.useCallback(()=>{window.clearTimeout(l.current),a.current=!1},[]),onClose:k.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>a.current=!0,r)},[r]),isPointerInTransitRef:o,onPointerInTransitChange:k.useCallback(c=>{o.current=c}
vendor: 5,737 bytes, line 158
158,[]),disableHoverableContent:i,children:s})};Mx.displayName=Dx;var Ix="Tooltip",[WU,Eu]=Su(Ix),nf="TooltipTrigger",Tz=k.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,i=Eu(nf,n),s=Nx(nf,n),a=Xm(n),o=k.useRef(null),l=ft(t,o,i.onTriggerChange),c=k.useRef(!1),d=k.useRef(!1),h=k.useCallback(()=>c.current=!1,[]);return k.useEffect(()=>()=>document.removeEventListener("pointerup",h),[h]),u.jsx(bz,{asChild:!0,...a,children:u.jsx(De.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:l,onPointerMove:ge(e.onPointerMove,f=>{f.pointerType!=="touch"&&!d.current&&!s.isPointerInTransitRef.current&&(i.onTriggerEnter(),d.current=!0)}),onPointerLeave:ge(e.onPointerLeave,()=>{i.onTriggerLeave(),d.current=!1}),onPointerDown:ge(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener("pointerup",h,{once:!0})}),onFocus:ge(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:ge(e.onBlur,i.onClose),onClick:ge(e.onClick,i.onClose)})})});Tz.displayName=nf;var Az="TooltipPortal",[$U,Cz]=Su(Az,{forceMount:void 0}),Ws="TooltipContent",Ox=k.forwardRef((e,t)=>{const n=Cz(Ws,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i="top",...s}=e,a=Eu(Ws,e.__scopeTooltip);return u.jsx(Ys,{present:r||a.open,children:a.disableHoverableContent?u.jsx(Lx,{side:i,...s,ref:t}):u.jsx(_z,{side:i,...s,ref:t})})}),_z=k.forwardRef((e,t)=>{const n=Eu(Ws,e.__scopeTooltip),r=Nx(Ws,e.__scopeTooltip),i=k.useRef(null),s=ft(t,i),[a,o]=k.useState(null),{trigger:l,onClose:c}=n,d=i.current,{onPointerInTransitChange:h}=r,f=k.useCallback(()=>{o(null),h(!1)},[h]),m=k.useCallback((w,p)=>{const b=w.currentTarget,v={x:w.clientX,y:w.clientY},g=Dz(v,b.getBoundingClientRect()),y=Nz(v,g),x=Mz(p.getBoundingClientRect()),E=Oz([...y,...x]);o(E),h(!0)},[h]);return k.useEffect(()=>()=>f(),[f]),k.useEffect(()=>{if(l&&d){const w=b=>m(b,d),p=b=>m(b,l);return l.addEventListener("pointerleave",w),d.addEventListener("pointerleave",p),()=>{l.removeEventListener("pointerleave",w),d.removeEventListener("pointerleave",p)}}},[l,d,m,f]),k.useEffect(()=>{if(a){const w=p=>{const b=p.target,v={x:p.clientX,y:p.clientY},g=(l==null?void 0:l.contains(b))||(d==null?void 0:d.contains(b)),y=!Iz(v,a);g?f():y&&(f(),c())};return document.addEventListener("pointermove",w),()=>document.removeEventListener("pointermove",w)}},[l,d,a,c,f]),u.jsx(Lx,{...e,ref:s})}),[Pz,jz]=Su(Ix,{isInside:!1}),Rz=gP("TooltipContent"),Lx=k.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:s,onPointerDownOutside:a,...o}=e,l=Eu(Ws,n),c=Xm(n),{onClose:d}=l;return k.useEffect(()=>(document.addEventListener(Rv,d),()=>document.removeEventListener(Rv,d)),[d]),k.useEffect(()=>{if(l.trigger){const h=f=>{const m=f.target;m!=null&&m.contains(l.trigger)&&d()};return window.addEventListener("scroll",h,{capture:!0}),()=>window.removeEventListener("scroll",h,{capture:!0})}},[l.trigger,d]),u.jsx(vu,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:s,onPointerDownOutside:a,onFocusOutside:h=>h.preventDefault(),onDismiss:d,children:u.jsxs(kz,{"data-state":l.stateAttribute,...c,...o,ref:t,style:{...o.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[u.jsx(Rz,{children:r}),u.jsx(Pz,{scope:n,isInside:!0,children:u.jsx(BP,{id:l.contentId,role:"tooltip",children:i||r})})]})})});Ox.displayName=Ws;var Fx="TooltipArrow",zz=k.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,i=Xm(n);return jz(Fx,n).isInside?null:u.jsx(xz,{...i,...r,ref:t})});zz.displayName=Fx;function Dz(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),s=Math.abs(t.left-e.x);switch(Math.min(n,r,i,s)){case s:return"left";case i:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function Nz(e,t,n=5){const r=[];switch(t){case"top":r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case"bottom":r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case"left":r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case"right":r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function Mz(e){const{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function Iz(e,t){const{x:n,y:r}=e;let i=!1;for(let s=0,a=t.length-1;s<t.length;a=s++){const o=t[s],l=t[a],c=o.x,d=o.y,h=l.x,f=l.y;d>r!=f>r&&n<(h-c)*(r-d)/(f-d)+c&&(i=!i)}return i}function Oz(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),Lz(t)}function Lz(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const i=e[r];for(;t.length>=2;){const s=t[t.length-1],a=t[t.length-2];if((s.x-a.x)*(i.y-a.y)>=(s.y-a.y)*(i.x-a.x))t.pop();else break}t.push(i)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const i=e[r];for(;n.length>=2;){const s=n[n.length-1],a=n[n.length-2];if((s.x-a.x)*(i.y-a.y)>=(s.y-a.y)*(i.x-a.x))n.pop();else break}n.push(i)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var Fz=Mx,Bx=Ox;const Bz=Fz,Uz=k.forwardRef(({className:e,sideOffset:t=4,...n},r)=>u.jsx(Bx,{ref:r,sideOffset:t,className:qe("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
158de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...n}));Uz.displayName=Bx.displayName;const ep=k.createContext({});function tp(e){const t=k.useRef(null);return t.current===null&&(t.current=e()),t.current}const Vz=typeof window<"u",Ux=Vz?k.useLayoutEffect:k.useEffect,Tu=k.createContext(null);function np(e,t){e.indexOf(t)===-1&&e.push(t)}function Oc(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Mn=(e,t,n)=>n>t?t:n<e?e:n;let Au=()=>{},$s=()=>{};const Wr={},Vx=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function Wx(e){return typeof e=="object"&&e!==null}const $x=e=>/^0[^.\s]+$/u.test(e);function Kx(e){let t;return()=>(t===void 0&&(t=e()),t)}const Vt=e=>e,Wz=(e,t)=>n=>t(e(n)),Bo=(...e)=>e.reduce(Wz),go=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r};class rp{constructor(){this.subscriptions=[]}add(t){return np(this.subscriptions,t),()=>Oc(this.subscriptions,t)}notify(t,n,r){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](t,n,r);else for(let s=0;s<i;s++){const a=this.subscriptions[s];a&&a(t,n,r)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const St=e=>e*1e3,Bt=e=>e/1e3;function Gx(e,t){return t?e*(1e3/t):0}const Hx=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,$z=1e-7,Kz=12;function Gz(e,t,n,r,i){let s,a,o=0;do a=t+(n-t)/2,s=Hx(a,r,i)-e,s>0?n=a:t=a;while(Math.abs(s)>$z&&++o<Kz);return a}function Uo(e,t,n,r){if(e===t&&n===r)return Vt;const i=s=>Gz(s,0,1,e,n);return s=>s===0||s===1?s:Hx(i(s),t,r)}const qx=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,Jx=e=>t=>1-e(1-t),Zx=Uo(.33,1.53,.69,.99),ip=Jx(Zx),Yx=qx(ip),Qx=e=>e>=1?1:(e*=2)<1?.5*ip(e):.5*(2-Math.pow(2,-10*(e-1))),sp=e=>1-Math.sin(Math.acos(e)),Xx=Jx(sp),eS=qx(sp),Hz=Uo(.42,0,1,1),qz=Uo(0,0,.58,1),tS=Uo(.42,0,.58,1),Jz=e=>Array.isArray(e)&&typeof e[0]!="number",nS=e=>Array.isArray(e)&&typeof e[0]=="number",zv={linear:Vt,easeIn:Hz,easeInOut:tS,easeOut:qz,circIn:sp,circInOut:eS,circOut:Xx,backIn:ip,backInOut:Yx,backOut:Zx,anticipate:Qx},Zz=e=>typeof e=="string",Dv=e=>{if(nS(e)){$s(e.length===4,"Cubic bezier arrays must contain four numerical values.","cubic-bezier-length");const[t,n,r,i]=e;return Uo(t,n,r,i)}else if(Zz(e))return $s(zv[e]!==void 0,`Invalid easing type '${e}'`,"invalid-easing-type"),zv[e];return e},vl=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"],Nv={value:null,addProjectionMetrics:null};function Yz(e,t){let n=new Set,r=new Set,i=!1,s=!1;const a=new WeakSet;let o={delta:0,timestamp:0,isProcessing:!1},l=0;function c(h){a.has(h)&&(d.schedule(h),e()),l++,h(o)}const d={schedule:(h,f=!1,m=!1)=>{const p=m&&i?n:r;return f&&a.add(h),p.add(h),h},cancel:h=>{r.delete(h),a.delete(h)},process:h=>{if(o=h,i){s=!0;return}i=!0;const f=n;n=r,r=f,n.forEach(c),t&&Nv.value&&Nv.value.frameloop[t].push(l),l=0,n.clear(),i=!1,s&&(s=!1,d.process(h))}};return d}const Qz=40;function rS(e,t){let n=!1,r=!0;const i={delta:0,timestamp:0,isProcessing:!1},s=()=>n=!0,a=vl.reduce((y,x)=>(y[x]=Yz(s,t?x:void 0),y),{}),{setup:o,read:l,resolveKeyframes:c,preUpdate:d,update:h,preRender:f,render:m,postRender:w}=a,p=()=>{const y=Wr.useManualTiming,x=y?i.timestamp:performance.now();n=!1,y||(i.delta=r?1e3/60:Math.max(Math.min(x-i.timestamp,Qz),1)),i.timestamp=x,i.isProcessing=!0,o.process(i),l.process(i),c.process(i),d.process(i),h.process(i),f.process(i),m.process(i),w.process(i),i.isProcessing=!1,n&&t&&(r=!1,e(p))},b=()=>{n=!0,r=!0,i.isProcessing||e(p)};return{schedule:vl.reduce((y,x)=>{const E=a[x];return y[x]=(T,S=!1,A=!1)=>(n||b(),E.schedule(T,S,A)),y},{}),cancel:y=>{for(let x=0;x<vl.length;x++)a[vl[x]].cancel(y)},state:i,steps:a}}const{schedule:oe,cancel:$r,state:$e,steps:Sd}=rS(typeof requestAnimationFrame<"u"?requestAnimationFrame:Vt,!0);let Zl;function Xz(){Zl=void 0}const ut={now:()=>(Zl===void 0&&ut.set($e.isProcessing||Wr.useManualTiming?$e.timestamp:performance.now()),Zl),set:e=>{Zl=e,queueMicrotask(Xz)}},iS=e=>t=>typeof t=="string"&&t.startsWith(e),sS=iS("--"),eD=iS("var(--"),ap=e=>eD(e)?tD.test(e.split("/*")[0].trim()):!1,tD=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function Mv(e){return typeof e!="string"?!1:e.split("/*")[0].includes("var(--")}const na={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},vo={...na,transform:e=>Mn(0,1,e)},yl={...na,default:1},La=e=>Math.round(e*1e5)/1e5,op=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function nD(e){return e==null}const rD=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,lp=(e,t)=>n=>!!(typeof n=="string"&&rD.test(n)&&n.startsWith(e)||t&&!nD(n)&&Object.prototype.hasOwnProperty.call(n,t)),aS=(e,t,n)=>r=>{if(typeof r!="string")return r;const[i,s,a,o]=r.match(op);return{[e]:parseFloat(i),[t]:parseFloat(s),[n]:parseFloat(a),alpha:o!==void 0?parseFloat(o):1}},iD=e=>Mn(0,255,e),Ed={...na,transform:e=>Math.round(iD(e))},ui={test:lp("rgb","red"),parse:aS("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+Ed.transform(e)+", "+Ed.transform(t)+", "+Ed.transform(n)+", "+La(vo.transform(r))+")"};function sD(e){let t="",n="",r="",i="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),i=e.substring(4,5),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alph
vendor: 24,007 bytes, line 158
158a:i?parseInt(i,16)/255:1}}const rf={test:lp("#"),parse:sD,transform:ui.transform},Vo=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),fr=Vo("deg"),zn=Vo("%"),F=Vo("px"),aD=Vo("vh"),oD=Vo("vw"),Iv={...zn,parse:e=>zn.parse(e)/100,transform:e=>zn.transform(e*100)},fs={test:lp("hsl","hue"),parse:aS("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+zn.transform(La(t))+", "+zn.transform(La(n))+", "+La(vo.transform(r))+")"},je={test:e=>ui.test(e)||rf.test(e)||fs.test(e),parse:e=>ui.test(e)?ui.parse(e):fs.test(e)?fs.parse(e):rf.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?ui.transform(e):fs.transform(e),getAnimatableNone:e=>{const t=je.parse(e);return t.alpha=0,je.transform(t)}},lD=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function cD(e){var t,n;return isNaN(e)&&typeof e=="string"&&(((t=e.match(op))==null?void 0:t.length)||0)+(((n=e.match(lD))==null?void 0:n.length)||0)>0}const oS="number",lS="color",uD="var",dD="var(",Ov="${}",hD=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function Ks(e){const t=e.toString(),n=[],r={color:[],number:[],var:[]},i=[];let s=0;const o=t.replace(hD,l=>(je.test(l)?(r.color.push(s),i.push(lS),n.push(je.parse(l))):l.startsWith(dD)?(r.var.push(s),i.push(uD),n.push(l)):(r.number.push(s),i.push(oS),n.push(parseFloat(l))),++s,Ov)).split(Ov);return{values:n,split:o,indexes:r,types:i}}function fD(e){return Ks(e).values}function cS({split:e,types:t}){const n=e.length;return r=>{let i="";for(let s=0;s<n;s++)if(i+=e[s],r[s]!==void 0){const a=t[s];a===oS?i+=La(r[s]):a===lS?i+=je.transform(r[s]):i+=r[s]}return i}}function mD(e){return cS(Ks(e))}const pD=e=>typeof e=="number"?0:je.test(e)?je.getAnimatableNone(e):e,gD=(e,t)=>typeof e=="number"?t!=null&&t.trim().endsWith("/")?e:0:pD(e);function vD(e){const t=Ks(e);return cS(t)(t.values.map((r,i)=>gD(r,t.split[i])))}const un={test:cD,parse:fD,createTransformer:mD,getAnimatableNone:vD};function Td(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function yD({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let i=0,s=0,a=0;if(!t)i=s=a=n;else{const o=n<.5?n*(1+t):n+t-n*t,l=2*n-o;i=Td(l,o,e+1/3),s=Td(l,o,e),a=Td(l,o,e-1/3)}return{red:Math.round(i*255),green:Math.round(s*255),blue:Math.round(a*255),alpha:r}}function Lc(e,t){return n=>n>0?t:e}const he=(e,t,n)=>e+(t-e)*n,Ad=(e,t,n)=>{const r=e*e,i=n*(t*t-r)+r;return i<0?0:Math.sqrt(i)},wD=[rf,ui,fs],bD=e=>wD.find(t=>t.test(e));function Lv(e){const t=bD(e);if(Au(!!t,`'${e}' is not an animatable color. Use the equivalent color code instead.`,"color-not-animatable"),!t)return!1;let n=t.parse(e);return t===fs&&(n=yD(n)),n}const Fv=(e,t)=>{const n=Lv(e),r=Lv(t);if(!n||!r)return Lc(e,t);const i={...n};return s=>(i.red=Ad(n.red,r.red,s),i.green=Ad(n.green,r.green,s),i.blue=Ad(n.blue,r.blue,s),i.alpha=he(n.alpha,r.alpha,s),ui.transform(i))},sf=new Set(["none","hidden"]);function kD(e,t){return sf.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function xD(e,t){return n=>he(e,t,n)}function cp(e){return typeof e=="number"?xD:typeof e=="string"?ap(e)?Lc:je.test(e)?Fv:TD:Array.isArray(e)?uS:typeof e=="object"?je.test(e)?Fv:SD:Lc}function uS(e,t){const n=[...e],r=n.length,i=e.map((s,a)=>cp(s)(s,t[a]));return s=>{for(let a=0;a<r;a++)n[a]=i[a](s);return n}}function SD(e,t){const n={...e,...t},r={};for(const i in n)e[i]!==void 0&&t[i]!==void 0&&(r[i]=cp(e[i])(e[i],t[i]));return i=>{for(const s in r)n[s]=r[s](i);return n}}function ED(e,t){const n=[],r={color:0,var:0,number:0};for(let i=0;i<t.values.length;i++){const s=t.types[i],a=e.indexes[s][r[s]],o=e.values[a]??0;n[i]=o,r[s]++}return n}const TD=(e,t)=>{const n=un.createTransformer(t),r=Ks(e),i=Ks(t);return r.indexes.var.length===i.indexes.var.length&&r.indexes.color.length===i.indexes.color.length&&r.indexes.number.length>=i.indexes.number.length?sf.has(e)&&!i.values.length||sf.has(t)&&!r.values.length?kD(e,t):Bo(uS(ED(r,i),i.values),n):(Au(!0,`Complex values '${e}' and '${t}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`,"complex-values-different"),Lc(e,t))};function dS(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?he(e,t,n):cp(e)(e,t)}const AD=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>oe.update(t,n),stop:()=>$r(t),now:()=>$e.isProcessing?$e.timestamp:ut.now()}},hS=(e,t,n=10)=>{let r="";const i=Math.max(Math.round(t/n),2);for(let s=0;s<i;s++)r+=Math.round(e(s/(i-1))*1e4)/1e4+", ";return`linear(${r.substring(0,r.length-2)})`},Fc=2e4;function up(e){let t=0;const n=50;let r=e.next(t);for(;!r.done&&t<Fc;)t+=n,r=e.next(t);return t>=Fc?1/0:t}function CD(e,t=100,n){const r=n({...e,keyframes:[0,t]}),i=Math.min(up(r),Fc);return{type:"keyframes",ease:s=>r.next(i*s).value/t,duration:Bt(i)}}const ve={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1};function af(e,t){return e*Math.sqrt(1-t*t)}const _D=12;function PD(e,t,n){let r=n;for(let i=1;i<_D;i++)r=r-e(r)/t(r);return r}const Cd=.001;function jD({duration:e=ve.duration,bounce:t=ve.bounce,velocity:n=ve.velocity,mass:r=ve.mass}){let i,s;Au(e<=St(ve.maxDuration),"Spring duration must be 10 seconds or less","spring-duration-limit");let a=1-t;a=Mn(ve.minDamping,ve.maxDamping,a),e=Mn(ve.minDuration,ve.maxDuration,Bt(e)),a<1?(i=c=>{const d=c*a,h=d*e,f=d-n,m=af(c,a),w=Math.exp(-h);return Cd-f/m*w},s=c=>{const h=c*a*e,f=h*n+n,m=Math.pow(a,2)*Math.pow(c,2)*e,w=Math.exp(-h),p=af(Math.pow(c,2),a);return(-i(c)+Cd>0?-1:1)*((f-m)*w)/p}):(i=c=>{const d=Math.exp(-c*e),h=(c-n)*e+1;return-Cd+d*h},s=c=>{const d=Math.exp(-c*e),h=(n-c)*(e*e);return d*h});const o=5/e,l=PD(i,s,o);if(e=St(e),isNaN(l))return{stiffness:ve.stiffness,damping:ve.damping,duration:e};{const c=Math.pow(l,2)*r;return{stiffness:c,damping:a*2*Math.sqrt(r*c),duration:e}}}const RD=["duration","bounce"],zD=["stiffness","damping","mass"];function Bv(e,t){return t.some(n=>e[n]!==void 0)}function DD(e){let t={velocity:ve.velocity,stiffness:ve.stiffness,damping:ve.damping,mass:ve.mass,isResolvedFromDuration:!1,...e};if(!Bv(e,zD)&&Bv(e,RD))if(t.velocity=0,e.visualDuration){const n=e.visualDuration,r=2*Math.PI/(n*1.2),i=r*r,s=2*Mn(.05,1,1-(e.bounce||0))*Math.sqrt(i);t={...t,mass:ve.mass,stiffness:i,damping:s}}else{const n=jD({...e,velocity:0});t={...t,...n,mass:ve.mass},t.isResolvedFromDuration=!0}return t}function Bc(e=ve.visualDuration,t=ve.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:r,restDelta:i}=n;const s=n.keyframes[0],a=n.keyframes[n.keyframes.length-1],o={done:!1,value:s},{stiffness:l,damping:c,mass:d,duration:h,velocity:f,isResolvedFromDuration:m}=DD({...n,velocity:-Bt(n.velocity||0)}),w=f||0,p=c/(2*Math.sqrt(l*d)),b=a-s,v=Bt(Math.sqrt(l/d)),g=Math.abs(b)<5;r||(r=g?ve.restSpeed.granular:ve.restSpeed.default),i||(i=g?ve.restDelta.granular:ve.restDelta.default);let y,x,E,T,S,A;if(p<1)E=af(v,p),T=(w+p*v*b)/E,y=C=>{const I=Math.exp(-p*v*C);return a-I*(T*Math.sin(E*C)+b*Math.cos(E*C))},S=p*v*T+b*E,A=p*v*b-T*E,x=C=>Math.exp(-p*v*C)*(S*Math.sin(E*C)+A*Math.cos(E*C));else if(p===1){y=I=>a-Math.exp(-v*I)*(b+(w+v*b)*I);const C=w+v*b;x=I=>Math.exp(-v*I)*(v*C*I-w)}else{const C=v*Math.sqrt(p*p-1);y=M=>{const H=Math.exp(-p*v*M),V=Math.min(C*M,300);return a-H*((w+p*v*b)*Math.sinh(V)+C*b*Math.cosh(V))/C};const I=(w+p*v*b)/C,D=p*v*I-b*C,U=p*v*b-I*C;x=M=>{const H=Math.exp(-p*v*M),V=Math.min(C*M,300);return H*(D*Math.sinh(V)+U*Math.cosh(V))}}const _={calculatedDuration:m&&h||null,velocity:C=>St(x(C)),next:C=>{if(!m&&p<1){const D=Math.exp(-p*v*C),U=Math.sin(E*C),M=Math.cos(E*C),H=a-D*(T*U+b*M),V=St(D*(S*U+A*M));return o.done=Math.abs(V)<=r&&Math.abs(a-H)<=i,o.value=o.done?a:H,o}const I=y(C);if(m)o.done=C>=h;else{const D=St(x(C));o.done=Math.abs(D)<=r&&Math.abs(a-I)<=i}return o.value=o.done?a:I,o},toString:()=>{const C=Math.min(up(_),Fc),I=hS(D=>_.next(C*D).value,C,30);return C+"ms "+I},toTransition:()=>{}};return _}Bc.applyToOptions=e=>{const t=CD(e,100,Bc);return e.ease=t.ease,e.duration=St(t.duration),e.type="keyframes",e};const ND=5;function fS(e,t,n){const r=Math.max(t-ND,0);return Gx(n-e(r),t-r)}function of({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:i=10,bounceStiffness:s=500,modifyTarget:a,min:o,max:l,restDelta:c=.5,restSpeed:d}){const h=e[0],f={done:!1,value:h},m=A=>o!==void 0&&A<o||l!==void 0&&A>l,w=A=>o===void 0?l:l===void 0||Math.abs(o-A)<Math.abs(l-A)?o:l;let p=n*t;const b=h+p,v=a===void 0?b:a(b);v!==b&&(p=v-h);const g=A=>-p*Math.exp(-A/r),y=A=>v+g(A),x=A=>{const _=g(A),C=y(A);f.done=Math.abs(_)<=c,f.value=f.done?v:C};let E,T;const S=A=>{m(f.value)&&(E=A,T=Bc({keyframes:[f.value,w(f.value)],velocity:fS(y,A,f.value),damping:i,stiffness:s,restDelta:c,restSpeed:d}))};return S(0),{calculatedDuration:null,next:A=>{let _=!1;return!T&&E===void 0&&(_=!0,x(A),S(A)),E!==void 0&&A>=E?T.next(A-E):(!_&&x(A),f)}}}function MD(e,t,n){const r=[],i=n||Wr.mix||dS,s=e.length-1;for(let a=0;a<s;a++){let o=i(e[a],e[a+1]);if(t){const l=Array.isArray(t)?t[a]||Vt:t;o=Bo(l,o)}r.push(o)}return r}function ID(e,t,{clamp:n=!0,ease:r,mixer:i}={}){const s=e.length;if($s(s===t.length,"Both input and output ranges must be the same length","range-length"),s===1)return()=>t[0];if(s===2&&t[0]===t[1])return()=>t[1];const a=e[0]===e[1];e[0]>e[s-1]&&(e=[...e].reverse(),t=[...t].reverse());const o=MD(t,r,i),l=o.length,c=d=>{if(a&&d<e[0])return t[0];let h=0;if(l>1)for(;h<e.length-2&&!(d<e[h+1]);h++);const f=go(e[h],e[h+1],d);return o[h](f)};return n?d=>c(Mn(e[0],e[s-1],d)):c}function OD(e,t){const n=e[e.length-1];for(let r=1;r<=t;r++){const i=go(0,t,r);e.push(he(n,1,i))}}function LD(e){const t=[0];return OD(t,e.length-1),t}function FD(e,t){return e.map(n=>n*t)}function BD(e,t){return e.map(()=>t||tS).splice(0,e.length-1)}function Fa({duration:e=300,keyframes:t,times:n,ease:r="easeInOut"}){const i=Jz(r)?r.map(Dv):Dv(r),s={done:!1,value:t[0]},a=FD(n&&n.length===t.length?n:LD(t),e),o=ID(a,t,{ease:Array.isArray(i)?i:BD(t,i)});return{calculatedDuration:e,next:l=>(s.value=o(l),s.done=l>=e,s)}}const UD=e=>e!==null;function Cu(e,{repeat:t,repeatType:n="loop"},r,i=1){const s=e.filter(UD),o=i<0||t&&n!=="loop"&&t%2===1?0:s.length-1;return!o||r===void 0?s[o]:r}const VD={decay:of,inertia:of,tween:Fa,keyframes:Fa,spring:Bc};function mS(e){typeof e.type=="string"&&(e.type=VD[e.type])}class dp{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const WD=e=>e/100;class Uc extends dp{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.delayState={done:!1,value:void 0},this.stop=()=>{var r,i;const{motionValue:n}=this.options;n&&n.updatedAt!==ut.now()&&this.tick(ut.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(i=(r=this.options).onStop)==null||i.call(r))},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;mS(t);const{type:n=Fa,repeat:r=0,repeatDelay:i=0,repeatType:s,velocity:a=0}=t;let{keyframes:o}=t;const l=n||Fa;l!==Fa&&typeof o[0]!="number"&&(this.mixKeyframes=Bo(WD,dS(o[0],o[1])),o=[0,100]);const c=l({...t,keyframes:o});s==="mirror"&&(this.mirroredGenerator=l({...t,keyframes:[...o].reverse(),velocity:-a})),c.calculatedDuration===null&&(c.calculatedDuration=up(c));const{calculatedDuration:d}=c;this.calculatedDuration=d,this.resolvedDuration=d+i,this.totalDuration=this.resolvedDuration*(r+1)-i,this.generator=c}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:r,totalDuration:i,mixKeyframes:s,mirroredGenerator:a,resolvedDuration:o,calculatedDuration:l}=this;if(this.startTime===null)return r.next(0);const{delay:c=0,keyframes:d,repeat:h,repeatType:f,repeatDelay:m,type:w,onUpdate:p,finalKeyframe:b}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-i/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const v=this.currentTime-c*(this.playbackSpeed>=0?1:-1),g=this.playbackSpeed>=0?v<0:v>i;this.currentTime=Math.max(v,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=i);let y=this.currentTime,x=r;if(h){const A=Math.min(this.currentTime,i)/o;let _=Math.floor(A),C=A%1;!C&&A>=1&&(C=1),C===1&&_--,_=Math.min(_,h+1),!!(_%2)&&(f==="reverse"?(C=1-C,m&&(C-=m/o)):f==="mirror"&&(x=a)),y=Mn(0,1,C)*o}let E;g?(this.delayState.value=d[0],E=this.delayState):E=x.next(y),s&&!g&&(E.value=s(E.value));let{done:T}=E;!g&&l!==null&&(T=this.playbackSpeed>=0?this.currentTime>=i:this.currentTime<=0);const S=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&T);return S&&w!==of&&(E.value=Cu(d,this.options,b,this.speed)),p&&p(E.value),S&&this.finish(),E}then(t,n){return this.finished.then(t,n)}get duration(){return Bt(this.calculatedDuration)}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Bt(t)}get time(){return Bt(this.currentTime)}set time(t){t=St(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),this.driver?this.driver.start(!1):(this.startTime=0,this.state="paused",this.holdTime=t,this.tick(t))}getGeneratorVelocity(){const t=this.currentTime;if(t<=0)return this.options.velocity||0;if(this.generator.velocity)return this.generator.velocity(t);const n=this.generator.next(t).value;return fS(r=>this.generator.next(r).value,t,n)}get speed(){return this.playbackSpeed}set speed(t){const n=this.playbackSpeed!==t;n&&this.driver&&this.updateTime(ut.now()),this.playbackSpeed=t,n&&this.driver&&(this.time=Bt(this.currentTime))}play(){var i,s;if(this.isStopped)return;const{driver:t=AD,startTime:n}=this.options;this.driver||(this.driver=t(a=>this.tick(a))),(s=(i=this.options).onPlay)==null||s.call(i);const r=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=r):this.holdTime!==null?this.startTime=r-this.holdTime:this.startTime||(this.startTime=n??r),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(ut.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var t,n;this.notifyFinished(),this.teardown(),this.state="finished",(n=(t=this.options).onComplete)==null||n.call(t)}cancel(){var t,n;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(n=(t=this.options).onCancel)==null||n.call(t)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){var n;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(n=this.driver)==null||n.stop(),t.observe(this)}}function $D(e){for(let t=1;t<e.length;t++)e[t]??(e[t]=e[t-1])}const di=e=>e*180/Math.PI,lf=e=>{const t=di(Math.atan2(e[1],e[0]));return cf(t)},KD={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:lf,rotateZ:lf,skewX:e=>di(Math.atan(e[1])),skewY:e=>di(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},cf=e=>(e=e%360,e<0&&(e+=360),e),Uv=lf,Vv=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),Wv=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),GD={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Vv,scaleY:Wv,scale:e=>(Vv(e)+Wv(e))/2,rotateX:e=>cf(di(Math.atan2(e[6],e[5]))),rotateY:e=>cf(di(Math.atan2(-e[2],e[0]))),rotateZ:Uv,rotate:Uv,skewX:e=>di(Math.atan(e[4])),skewY:e=>di(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function uf(e){return e.includes("scale")?1:0}function df(e,t){if(!e||e==="none")return uf(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let r,i;if(n)r=GD,i=n;else{const o=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=KD,i=o}if(!i)return uf(t);const s=r[t],a=i[1].split(",").map(qD);return typeof s=="function"?s(a):a[s]}const HD=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return df(n,t)};function qD(e){return parseFloat(e.trim())}const ra=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],ia=new Set(ra),$v=e=>e===na||e===F,JD=new Set(["x","y","z"]),ZD=ra.filter(e=>!JD.has(e));function YD(e){const t=[];return ZD.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t}const jr={width:({x:e},{paddingLeft:t="0",paddingRight:n="0",boxSizing:r})=>{const i=e.max-e.min;return r==="border-box"?i:i-parseFloat(t)-parseFloat(n)},height:({y:e},{paddingTop:t="0",paddingBottom:n="0",boxSizing:r})=>{const i=e.max-e.min;return r==="border-box"?i:i-parseFloat(t)-parseFloat(n)},top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>df(t,"x"),y:(e,{transform:t})=>df(t,"y")};jr.translateX=jr.x;jr.translateY=jr.y;const xi=new Set;let hf=!1,ff=!1,mf=!1;function pS(){if(ff){const e=Array.from(xi).filter(r=>r.needsMeasurement),t=new Set(e.map(r=>r.element)),n=new Map;t.forEach(r=>{const i=YD(r);i.length&&(n.set(r,i),r.render())}),e.forEach(r=>r.measureInitialState()),t.forEach(r=>{r.render();const i=n.get(r);i&&i.forEach(([s,a])=>{var o;(o=r.getValue(s))==null||o.set(a)})}),e.forEach(r=>r.measureEndState()),e.forEach(r=>{r.suspendedScrollY!==void 0&&window.scrollTo(0,r.suspendedScrollY)})}ff=!1,hf=!1,xi.forEach(e=>e.complete(mf)),xi.clear()}function gS(){xi.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(ff=!0)})}function QD(){mf=!0,gS(),pS(),mf=!1}class hp{constructor(t,n,r,i,s,a=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=r,this.motionValue=i,this.element=s,this.isAsync=a}scheduleResolve(){this.state="scheduled",this.isAsync?(xi.add(this),hf||(hf=!0,oe.read(gS),oe.resolveKeyframes(pS))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:r,motionValue:i}=this;if(t[0]===null){const s=i==null?void 0:i.get(),a=t[t.length-1];if(s!==void 0)t[0]=s;else if(r&&n){const o=r.readValue(n,a);o!=null&&(t[0]=o)}t[0]===void 0&&(t[0]=a),i&&s===void 0&&i.set(t[0])}$D(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),xi.delete(this)}cancel(){this.state==="scheduled"&&(xi.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const XD=e=>e.startsWith("--");function vS(e,t,n){XD(t)?e.style.setProperty(t,n):e.style[t]=n}const eN={};function yS(e,t){const n=Kx(e);return()=>eN[t]??n()}const tN=yS(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),wS=yS(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Ta=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,Kv={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Ta([0,.65,.55,1]),circOut:Ta([.55,0,1,.45]),backIn:Ta([.31,.01,.66,-.59]),backOut:Ta([.33,1.53,.69,.99])};function bS(e,t){if(e)return typeof e=="function"?wS()?hS(e,t):"ease-out":nS(e)?Ta(e):Array.isArray(e)?e.map(n=>bS(n,t)||Kv.easeOut):Kv[e]}function nN(e,t,n,{delay:r=0,duration:i=300,repeat:s=0,repeatType:a="loop",ease:o="easeOut",times:l}={},c=void 0){const d={[t]:n};l&&(d.offset=l);const h=bS(o,i);Array.isArray(h)&&(d.easing=h);const f={delay:r,duration:i,easing:Array.isArray(h)?"linear":h,fill:"both",iterations:s+1,direction:a==="reverse"?"alternate":"normal"};return c&&(f.pseudoElement=c),e.animate(d,f)}function kS(e){return typeof e=="function"&&"applyToOptions"in e}function rN({type:e,...t}){return kS(e)&&wS()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class xS extends dp{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!t)return;const{element:n,name:r,keyframes:i,pseudoElement:s,allowFlatten:a=!1,finalKeyframe:o,onComplete:l}=t;this.isPseudoElement=!!s,this.allowFlatten=a,this.options=t,$s(typeof t.type!="string",`Mini animate() doesn't support "type" as a string.`,"mini-spring");const c=rN(t);this.animation=nN(n,r,i,c,s),c.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!s){const d=Cu(i,this.options,o,this.speed);this.updateMotionValue&&this.updateMotionValue(d),vS(n,r,d),this.animation.cancel()}l==null||l(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){var t,n;(n=(t=this.animation).finish)==null||n.call(t)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var n,r,i;const t=(n=this.options)==null?void 0:n.element;!this.isPseudoElement&&(t!=null&&t.isConnected)&&((i=(r=this.animation).commitStyles)==null||i.call(r))}get duration(){var n,r;const t=((r=(n=this.animation.effect)==null?void 0:n.getComputedTiming)==null?void 0:r.call(n).duration)||0;return Bt(Number(t))}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Bt(t)}get time(){return Bt(Number(this.animation.currentTime)||0)}set time(t){const n=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=St(t),n&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(t){this.manualStartTime=this.animation.startTime=t}attachTimeline({timeline:t,rangeStart:n,rangeEnd:r,observe:i}){var s;return this.allowFlatten&&((s=this.animation.effect)==null||s.updateTiming({easing:"linear"})),this.animation.onfinish=null,t&&tN()?(this.animation.timeline=t,n&&(this.animation.rangeStart=n),r&&(this.animation.rangeEnd=r),Vt):i(this)}}const SS={anticipate:Qx,backInOut:Yx,circInOut:eS};function iN(e){return e in SS}function sN(e){typeof e.ease=="string"&&iN(e.ease)&&(e.ease=SS[e.ease])}const _d=10;class aN extends xS{constructor(t){sN(t),mS(t),super(t),t.startTime!==void 0&&t.autoplay!==!1&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:r,onComplete:i,element:s,...a}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const o=new Uc({...a,autoplay:!1}),l=Math.max(_d,ut.now()-this.startTime),c=Mn(0,_d,l-_d),d=o.sample(l).value,{name:h}=this.options;s&&h&&vS(s,h,d),n.setWithVelocity(o.sample(Math.max(0,l-c)).value,d,c),o.stop()}}const Gv=(e,t)=>
158t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(un.test(e)||e==="0")&&!e.startsWith("url("));function oN(e){const t=e[0];if(e.length===1)return!0;for(let n=0;n<e.length;n++)if(e[n]!==t)return!0}function lN(e,t,n,r){const i=e[0];if(i===null)return!1;if(t==="display"||t==="visibility")return!0;const s=e[e.length-1],a=Gv(i,t),o=Gv(s,t);return Au(a===o,`You are trying to animate ${t} from "${i}" to "${s}". "${a?s:i}" is not an animatable value.`,"value-not-animatable"),!a||!o?!1:oN(e)||(n==="spring"||kS(n))&&r}function pf(e){e.duration=0,e.type="keyframes"}const ES=new Set(["opacity","clipPath","filter","transform"]),cN=/^(?:oklch|oklab|lab|lch|color|color-mix|light-dark)\(/;function uN(e){for(let t=0;t<e.length;t++)if(typeof e[t]=="string"&&cN.test(e[t]))return!0;return!1}const dN=new Set(["color","backgroundColor","outlineColor","fill","stroke","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor"]),hN=Kx(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function fN(e){var h;const{motionValue:t,name:n,repeatDelay:r,repeatType:i,damping:s,type:a,keyframes:o}=e;if(!(((h=t==null?void 0:t.owner)==null?void 0:h.current)instanceof HTMLElement))return!1;const{onUpdate:c,transformTemplate:d}=t.owner.getProps();return hN()&&n&&(ES.has(n)||dN.has(n)&&uN(o))&&(n!=="transform"||!d)&&!c&&!r&&i!=="mirror"&&s!==0&&a!=="inertia"}const mN=40;class pN extends dp{constructor({autoplay:t=!0,delay:n=0,type:r="keyframes",repeat:i=0,repeatDelay:s=0,repeatType:a="loop",keyframes:o,name:l,motionValue:c,element:d,...h}){var w;super(),this.stop=()=>{var p,b;this._animation&&(this._animation.stop(),(p=this.stopTimeline)==null||p.call(this)),(b=this.keyframeResolver)==null||b.cancel()},this.createdAt=ut.now();const f={autoplay:t,delay:n,type:r,repeat:i,repeatDelay:s,repeatType:a,name:l,motionValue:c,element:d,...h},m=(d==null?void 0:d.KeyframeResolver)||hp;this.keyframeResolver=new m(o,(p,b,v)=>this.onKeyframesResolved(p,b,f,!v),l,c,d),(w=this.keyframeResolver)==null||w.scheduleResolve()}onKeyframesResolved(t,n,r,i){var v,g;this.keyframeResolver=void 0;const{name:s,type:a,velocity:o,delay:l,isHandoff:c,onUpdate:d}=r;this.resolvedAt=ut.now();let h=!0;lN(t,s,a,o)||(h=!1,(Wr.instantAnimations||!l)&&(d==null||d(Cu(t,r,n))),t[0]=t[t.length-1],pf(r),r.repeat=0);const m={startTime:i?this.resolvedAt?this.resolvedAt-this.createdAt>mN?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...r,keyframes:t},w=h&&!c&&fN(m),p=(g=(v=m.motionValue)==null?void 0:v.owner)==null?void 0:g.current;let b;if(w)try{b=new aN({...m,element:p})}catch{b=new Uc(m)}else b=new Uc(m);b.finished.then(()=>{this.notifyFinished()}).catch(Vt),this.pendingTimeline&&(this.stopTimeline=b.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=b}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){var t;return this._animation||((t=this.keyframeResolver)==null||t.resume(),QD()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){var t;this._animation&&this.animation.cancel(),(t=this.keyframeResolver)==null||t.cancel()}}function TS(e,t,n,r=0,i=1){const s=Array.from(e).sort((c,d)=>c.sortNodePosition(d)).indexOf(t),a=e.size,o=(a-1)*r;return typeof n=="function"?n(s,a):i===1?s*r:o-s*r}const gN=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function vN(e){const t=gN.exec(e);if(!t)return[,];const[,n,r,i]=t;return[`--${n??r}`,i]}const yN=4;function AS(e,t,n=1){$s(n<=yN,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`,"max-css-var-depth");const[r,i]=vN(e);if(!r)return;const s=window.getComputedStyle(t).getPropertyValue(r);if(s){const a=s.trim();return Vx(a)?parseFloat(a):a}return ap(i)?AS(i,t,n+1):i}const wN={type:"spring",stiffness:500,damping:25,restSpeed:10},bN=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),kN={type:"keyframes",duration:.8},xN={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},SN=(e,{keyframes:t})=>t.length>2?kN:ia.has(e)?e.startsWith("scale")?bN(t[1]):wN:xN;function CS(e,t){if(e!=null&&e.inherit&&t){const{inherit:n,...r}=e;return{...t,...r}}return e}function fp(e,t){const n=(e==null?void 0:e[t])??(e==null?void 0:e.default)??e;return n!==e?CS(n,e):n}const EN=new Set(["when","delay","delayChildren","staggerChildren","staggerDirection","repeat","repeatType","repeatDelay","from","elapsed"]);function TN(e){for(const t in e)if(!EN.has(t))return!0;return!1}const mp=(e,t,n,r={},i,s)=>a=>{const o=fp(r,e)||{},l=o.delay||r.delay||0;let{elapsed:c=0}=r;c=c-St(l);const d={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...o,delay:-c,onUpdate:f=>{t.set(f),o.onUpdate&&o.onUpdate(f)},onComplete:()=>{a(),o.onComplete&&o.onComplete()},name:e,motionValue:t,element:s?void 0:i};TN(o)||Object.assign(d,SN(e,d)),d.duration&&(d.duration=St(d.duration)),d.repeatDelay&&(d.repeatDelay=St(d.repeatDelay)),d.from!==void 0&&(d.keyframes[0]=d.from);let h=!1;if((d.type===!1||d.duration===0&&!d.repeatDelay)&&(pf(d),d.delay===0&&(h=!0)),(Wr.instantAnimations||Wr.skipAnimations||i!=null&&i.shouldSkipAnimations)&&(h=!0,pf(d),d.delay=0),d.allowFlatten=!o.type&&!o.ease,h&&!s&&t.get()!==void 0){const f=Cu(d.keyframes,o);if(f!==void 0){oe.update(()=>{d.onUpdate(f),d.onComplete()});return}}return o.isSync?new Uc(d):new pN(d)};function Hv(e){const t=[{},{}];
vendor: 50,553 bytes, line 158
158return e==null||e.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function pp(e,t,n,r){if(typeof t=="function"){const[i,s]=Hv(r);t=t(n!==void 0?n:e.custom,i,s)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[i,s]=Hv(r);t=t(n!==void 0?n:e.custom,i,s)}return t}function Si(e,t,n){const r=e.getProps();return pp(r,t,n!==void 0?n:r.custom,e)}const _S=new Set(["width","height","top","left","right","bottom",...ra]),qv=30,AN=e=>!isNaN(parseFloat(e));class CN{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=r=>{var s;const i=ut.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(r),this.current!==this.prev&&((s=this.events.change)==null||s.notify(this.current),this.dependents))for(const a of this.dependents)a.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=ut.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=AN(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new rp);const r=this.events[t].add(n);return t==="change"?()=>{r(),oe.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,r){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-r}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var t;(t=this.events.change)==null||t.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=ut.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>qv)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,qv);return Gx(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){var t,n;(t=this.dependents)==null||t.clear(),(n=this.events.destroy)==null||n.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Gs(e,t){return new CN(e,t)}const gf=e=>Array.isArray(e);function _N(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,Gs(n))}function PN(e){return gf(e)?e[e.length-1]||0:e}function jN(e,t){const n=Si(e,t);let{transitionEnd:r={},transition:i={},...s}=n||{};s={...s,...r};for(const a in s){const o=PN(s[a]);_N(e,a,o)}}const Ke=e=>!!(e&&e.getVelocity);function RN(e){return!!(Ke(e)&&e.add)}function vf(e,t){const n=e.getValue("willChange");if(RN(n))return n.add(t);if(!n&&Wr.WillChange){const r=new Wr.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function gp(e){return e.replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}const zN="framerAppearId",PS="data-"+gp(zN);function jS(e){return e.props[PS]}function DN({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function RS(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:s,transitionEnd:a,...o}=t;const l=e.getDefaultTransition();s=s?CS(s,l):l;const c=s==null?void 0:s.reduceMotion;r&&(s=r);const d=[],h=i&&e.animationState&&e.animationState.getState()[i];for(const f in o){const m=e.getValue(f,e.latestValues[f]??null),w=o[f];if(w===void 0||h&&DN(h,f))continue;const p={delay:n,...fp(s||{},f)},b=m.get();if(b!==void 0&&!m.isAnimating()&&!Array.isArray(w)&&w===b&&!p.velocity){oe.update(()=>m.set(w));continue}let v=!1;if(window.MotionHandoffAnimation){const x=jS(e);if(x){const E=window.MotionHandoffAnimation(x,f,oe);E!==null&&(p.startTime=E,v=!0)}}vf(e,f);const g=c??e.shouldReduceMotion;m.start(mp(f,m,w,g&&_S.has(f)?{type:!1}:p,e,v));const y=m.animation;y&&d.push(y)}if(a){const f=()=>oe.update(()=>{a&&jN(e,a)});d.length?Promise.all(d).then(f):f()}return d}function yf(e,t,n={}){var l;const r=Si(e,t,n.type==="exit"?(l=e.presenceContext)==null?void 0:l.custom:void 0);let{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);const s=r?()=>Promise.all(RS(e,r,n)):()=>Promise.resolve(),a=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:d=0,staggerChildren:h,staggerDirection:f}=i;return NN(e,t,c,d,h,f,n)}:()=>Promise.resolve(),{when:o}=i;if(o){const[c,d]=o==="beforeChildren"?[s,a]:[a,s];return c().then(()=>d())}else return Promise.all([s(),a(n.delay)])}function NN(e,t,n=0,r=0,i=0,s=1,a){const o=[];for(const l of e.variantChildren)l.notify("AnimationStart",t),o.push(yf(l,t,{...a,delay:n+(typeof r=="function"?0:r)+TS(e.variantChildren,l,r,i,s)}).then(()=>l.notify("AnimationComplete",t)));return Promise.all(o)}function MN(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const i=t.map(s=>yf(e,s,n));r=Promise.all(i)}else if(typeof t=="string")r=yf(e,t,n);else{const i=typeof t=="function"?Si(e,t,n.custom):t;r=Promise.all(RS(e,i,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}const IN={test:e=>e==="auto",parse:e=>e},zS=e=>t=>t.test(e),DS=[na,F,zn,fr,oD,aD,IN],Jv=e=>DS.find(zS(e));function ON(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||$x(e):!0}const LN=new Set(["brightness","contrast","saturate","opacity"]);function FN(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(op)||[];if(!r)return e;const i=n.replace(r,"");let s=LN.has(t)?1:0;return r!==n&&(s*=100),t+"("+s+i+")"}const BN=/\b([a-z-]*)\(.*?\)/gu,wf={...un,getAnimatableNone:e=>{const t=e.match(BN);return t?t.map(FN).join(" "):e}},bf={...un,getAnimatableNone:e=>{const t=un.parse(e);return un.createTransformer(e)(t.map(r=>typeof r=="number"?0:typeof r=="object"?{...r,alpha:1}:r))}},Zv={...na,transform:Math.round},UN={rotate:fr,rotateX:fr,rotateY:fr,rotateZ:fr,scale:yl,scaleX:yl,scaleY:yl,scaleZ:yl,skew:fr,skewX:fr,skewY:fr,distance:F,translateX:F,translateY:F,translateZ:F,x:F,y:F,z:F,perspective:F,transformPerspective:F,opacity:vo,originX:Iv,originY:Iv,originZ:F},vp={borderWidth:F,borderTopWidth:F,borderRightWidth:F,borderBottomWidth:F,borderLeftWidth:F,borderRadius:F,borderTopLeftRadius:F,borderTopRightRadius:F,borderBottomRightRadius:F,borderBottomLeftRadius:F,width:F,maxWidth:F,height:F,maxHeight:F,top:F,right:F,bottom:F,left:F,inset:F,insetBlock:F,insetBlockStart:F,insetBlockEnd:F,insetInline:F,insetInlineStart:F,insetInlineEnd:F,padding:F,paddingTop:F,paddingRight:F,paddingBottom:F,paddingLeft:F,paddingBlock:F,paddingBlockStart:F,paddingBlockEnd:F,paddingInline:F,paddingInlineStart:F,paddingInlineEnd:F,margin:F,marginTop:F,marginRight:F,marginBottom:F,marginLeft:F,marginBlock:F,marginBlockStart:F,marginBlockEnd:F,marginInline:F,marginInlineStart:F,marginInlineEnd:F,fontSize:F,backgroundPositionX:F,backgroundPositionY:F,...UN,zIndex:Zv,fillOpacity:vo,strokeOpacity:vo,numOctaves:Zv},VN={...vp,color:je,backgroundColor:je,outlineColor:je,fill:je,stroke:je,borderColor:je,borderTopColor:je,borderRightColor:je,borderBottomColor:je,borderLeftColor:je,filter:wf,WebkitFilter:wf,mask:bf,WebkitMask:bf},NS=e=>VN[e],WN=new Set([wf,bf]);function MS(e,t){let n=NS(e);return WN.has(n)||(n=un),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const $N=new Set(["auto","none","0"]);function KN(e,t,n){let r=0,i;for(;r<e.length&&!i;){const s=e[r];typeof s=="string"&&!$N.has(s)&&Ks(s).values.length&&(i=e[r]),r++}if(i&&n)for(const s of t)e[s]=MS(n,i)}class GN extends hp{constructor(t,n,r,i,s){super(t,n,r,i,s,!0)}readKeyframes(){const{unresolvedKeyframes:t,element:n,name:r}=this;if(!n||!n.current)return;super.readKeyframes();for(let d=0;d<t.length;d++){let h=t[d];if(typeof h=="string"&&(h=h.trim(),ap(h))){const f=AS(h,n.current);f!==void 0&&(t[d]=f),d===t.length-1&&(this.finalKeyframe=h)}}if(this.resolveNoneKeyframes(),!_S.has(r)||t.length!==2)return;const[i,s]=t,a=Jv(i),o=Jv(s),l=Mv(i),c=Mv(s);if(l!==c&&jr[r]){this.needsMeasurement=!0;return}if(a!==o)if($v(a)&&$v(o))for(let d=0;d<t.length;d++){const h=t[d];typeof h=="string"&&(t[d]=parseFloat(h))}else jr[r]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:t,name:n}=this,r=[];for(let i=0;i<t.length;i++)(t[i]===null||ON(t[i]))&&r.push(i);r.length&&KN(t,r,n)}measureInitialState(){const{element:t,unresolvedKeyframes:n,name:r}=this;if(!t||!t.current)return;r==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=jr[r](t.measureViewportBox(),window.getComputedStyle(t.current)),n[0]=this.measuredOrigin;const i=n[n.length-1];i!==void 0&&t.getValue(r,i).jump(i,!1)}measureEndState(){var o;const{element:t,name:n,unresolvedKeyframes:r}=this;if(!t||!t.current)return;const i=t.getValue(n);i&&i.jump(this.measuredOrigin,!1);const s=r.length-1,a=r[s];r[s]=jr[n](t.measureViewportBox(),window.getComputedStyle(t.current)),a!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=a),(o=this.removedTransforms)!=null&&o.length&&this.removedTransforms.forEach(([l,c])=>{t.getValue(l).set(c)}),this.resolveNoneKeyframes()}}function IS(e,t,n){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e=="string"){const i=document.querySelectorAll(e);return i?Array.from(i):[]}return Array.from(e).filter(r=>r!=null)}const OS=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function Yl(e){return Wx(e)&&"offsetHeight"in e&&!("ownerSVGElement"in e)}const{schedule:yp,cancel:KU}=rS(queueMicrotask,!1),Xt={x:!1,y:!1};function LS(){return Xt.x||Xt.y}function HN(e){return e==="x"||e==="y"?Xt[e]?null:(Xt[e]=!0,()=>{Xt[e]=!1}):Xt.x||Xt.y?null:(Xt.x=Xt.y=!0,()=>{Xt.x=Xt.y=!1})}function FS(e,t){const n=IS(e),r=new AbortController,i={passive:!0,...t,signal:r.signal};return[n,i,()=>r.abort()]}function qN(e){return!(e.pointerType==="touch"||LS())}function JN(e,t,n={}){const[r,i,s]=FS(e,n);return r.forEach(a=>{let o=!1,l=!1,c;const d=()=>{a.removeEventListener("pointerleave",w)},h=b=>{c&&(c(b),c=void 0),d()},f=b=>{o=!1,window.removeEventListener("pointerup",f),window.removeEventListener("pointercancel",f),l&&(l=!1,h(b))},m=()=>{o=!0,window.addEventListener("pointerup",f,i),window.addEventListener("pointercancel",f,i)},w=b=>{if(b.pointerType!=="touch"){if(o){l=!0;return}h(b)}},p=b=>{if(!qN(b))return;l=!1;const v=t(a,b);typeof v=="function"&&(c=v,a.addEventListener("pointerleave",w,i))};a.addEventListener("pointerenter",p,i),a.addEventListener("pointerdown",m,i)}),s}const BS=(e,t)=>t?e===t?!0:BS(e,t.parentElement):!1,wp=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,ZN=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function YN(e){return ZN.has(e.tagName)||e.isContentEditable===!0}const QN=new Set(["INPUT","SELECT","TEXTAREA"]);function XN(e){return QN.has(e.tagName)||e.isContentEditable===!0}const Ql=new WeakSet;function Yv(e){return t=>{t.key==="Enter"&&e(t)}}function Pd(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const eM=(e,t)=>{const n=e.currentTarget;if(!n)return;const r=Yv(()=>{if(Ql.has(n))return;Pd(n,"down");const i=Yv(()=>{Pd(n,"up")}),s=()=>Pd(n,"cancel");n.addEventListener("keyup",i,t),n.addEventListener("blur",s,t)});n.addEventListener("keydown",r,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",r),t)};function Qv(e){return wp(e)&&!LS()}const Xv=new WeakSet;function tM(e,t,n={}){const[r,i,s]=FS(e,n),a=o=>{const l=o.currentTarget;if(!Qv(o)||Xv.has(o))return;Ql.add(l),n.stopPropagation&&Xv.add(o);const c=t(l,o),d=(m,w)=>{window.removeEventListener("pointerup",h),window.removeEventListener("pointercancel",f),Ql.has(l)&&Ql.delete(l),Qv(m)&&typeof c=="function"&&c(m,{success:w})},h=m=>{d(m,l===window||l===document||n.useGlobalTarget||BS(l,m.target))},f=m=>{d(m,!1)};window.addEventListener("pointerup",h,i),window.addEventListener("pointercancel",f,i)};return r.forEach(o=>{(n.useGlobalTarget?window:o).addEventListener("pointerdown",a,i),Yl(o)&&(o.addEventListener("focus",c=>eM(c,i)),!YN(o)&&!o.hasAttribute("tabindex")&&(o.tabIndex=0))}),s}function bp(e){return Wx(e)&&"ownerSVGElement"in e}const Xl=new WeakMap;let mr;const US=(e,t,n)=>(r,i)=>i&&i[0]?i[0][e+"Size"]:bp(r)&&"getBBox"in r?r.getBBox()[t]:r[n],nM=US("inline","width","offsetWidth"),rM=US("block","height","offsetHeight");function iM({target:e,borderBoxSize:t}){var n;(n=Xl.get(e))==null||n.forEach(r=>{r(e,{get width(){return nM(e,t)},get height(){return rM(e,t)}})})}function sM(e){e.forEach(iM)}function aM(){typeof ResizeObserver>"u"||(mr=new ResizeObserver(sM))}function oM(e,t){mr||aM();const n=IS(e);return n.forEach(r=>{let i=Xl.get(r);i||(i=new Set,Xl.set(r,i)),i.add(t),mr==null||mr.observe(r)}),()=>{n.forEach(r=>{const i=Xl.get(r);i==null||i.delete(t),i!=null&&i.size||mr==null||mr.unobserve(r)})}}const ec=new Set;let ms;function lM(){ms=()=>{const e={get width(){return window.innerWidth},get height(){return window.innerHeight}};ec.forEach(t=>t(e))},window.addEventListener("resize",ms)}function cM(e){return ec.add(e),ms||lM(),()=>{ec.delete(e),!ec.size&&typeof ms=="function"&&(window.removeEventListener("resize",ms),ms=void 0)}}function ey(e,t){return typeof e=="function"?cM(e):oM(e,t)}function uM(e){return bp(e)&&e.tagName==="svg"}const dM=[...DS,je,un],hM=e=>dM.find(zS(e)),ty=()=>({translate:0,scale:1,origin:0,originPoint:0}),ps=()=>({x:ty(),y:ty()}),ny=()=>({min:0,max:0}),Me=()=>({x:ny(),y:ny()}),fM=new WeakMap;function _u(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function yo(e){return typeof e=="string"||Array.isArray(e)}const kp=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],xp=["initial",...kp];function Pu(e){return _u(e.animate)||xp.some(t=>yo(e[t]))}function VS(e){return!!(Pu(e)||e.variants)}function mM(e,t,n){for(const r in t){const i=t[r],s=n[r];if(Ke(i))e.addValue(r,i);else if(Ke(s))e.addValue(r,Gs(i,{owner:e}));else if(s!==i)if(e.hasValue(r)){const a=e.getValue(r);a.liveStyle===!0?a.jump(i):a.hasAnimated||a.set(i)}else{const a=e.getStaticValue(r);e.addValue(r,Gs(a!==void 0?a:i,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const kf={current:null},WS={current:!1},pM=typeof window<"u";function gM(){if(WS.current=!0,!!pM)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>kf.current=e.matches;e.addEventListener("change",t),t()}else kf.current=!1}const ry=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Vc={};function $S(e){Vc=e}function vM(){return Vc}class yM{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:i,skipAnimations:s,blockInitialAnimation:a,visualState:o},l={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=hp,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const m=ut.now();this.renderScheduledAt<m&&(this.renderScheduledAt=m,oe.render(this.render,!1,!0))};const{latestValues:c,renderState:d}=o;this.latestValues=c,this.baseTarget={...c},this.initialValues=n.initial?{...c}:{},this.renderState=d,this.parent=t,this.props=n,this.presenceContext=r,this.depth=t?t.depth+1:0,this.reducedMotionConfig=i,this.skipAnimationsConfig=s,this.options=l,this.blockInitialAnimation=!!a,this.isControllingVariants=Pu(n),this.isVariantNode=VS(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(t&&t.current);const{willChange:h,...f}=this.scrapeMotionValuesFromProps(n,{},this);for(const m in f){const w=f[m];c[m]!==void 0&&Ke(w)&&w.set(c[m])}}mount(t){var n,r;if(this.hasBeenMounted)for(const i in this.initialValues)(n=this.values.get(i))==null||n.jump(this.initialValues[i]),this.latestValues[i]=this.initialValues[i];this.current=t,fM.set(t,this),this.projection&&!this.projection.instance&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((i,s)=>this.bindToMotionValue(s,i)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(WS.current||gM(),this.shouldReduceMotion=kf.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,(r=this.parent)==null||r.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){var t;this.projection&&this.projection.unmount(),$r(this.notifyUpdate),$r(this.render),this.valueSubscriptions.forEach(n=>n()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),(t=this.parent)==null||t.removeChild(this);for(const n in this.events)this.events[n].clear();for(const n in this.features){const r=this.features[n];r&&(r.unmount(),r.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),n.accelerate&&ES.has(t)&&this.current instanceof HTMLElement){const{factory:a,keyframes:o,times:l,ease:c,duration:d}=n.accelerate,h=new xS({element:this.current,name:t,keyframes:o,times:l,ease:c,duration:St(d)}),f=a(h);this.valueSubscriptions.set(t,()=>{f(),h.cancel()});return}const r=ia.has(t);r&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",a=>{this.latestValues[t]=a,this.props.onUpdate&&oe.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let s;typeof window<"u"&&window.MotionCheckAppearSync&&(s=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{i(),s&&s(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Vc){const n=Vc[t];if(!n)continue;const{isEnabled:r,Feature:i}=n;if(!this.features[t]&&i&&r(this.props)&&(this.features[t]=new i(this)),this.features[t]){const s=this.features[t];s.isMounted?s.update():(s.mount(),s.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Me()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;r<ry.length;r++){const i=ry[r];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);const s="on"+i,a=t[s];a&&(this.propEventSubscriptions[i]=this.on(i,a))}this.prevMotionValues=mM(this,this.scrapeMotionValuesFromProps(t,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(t){return this.props.variants?this.props.variants[t]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(t){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(t),()=>n.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=Gs(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(Vx(r)||$x(r))?r=parseFloat(r):!hM(r)&&un.test(n)&&(r=MS(t,n)),this.setBaseTarget(t,Ke(r)?r.get():r)),Ke(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var s;const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const a=pp(this.props,n,(s=this.presenceContext)==null?void 0:s.custom);a&&(r=a[t])}if(n&&r!==void 0)return r;const i=this.getBaseTargetFromProps(this.props,t);return i!==void 0&&!Ke(i)?i:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new rp),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){yp.render(this.render)}}class KS extends yM{constructor(){super(...arguments),this.KeyframeResolver=GN}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){const r=t.style;return r?r[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;Ke(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}class Jr{constructor(t){this.isMounted=!1,this.node=t}update(){}}function GS({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function wM({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function bM(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function jd(e){return e===void 0||e===1}function xf({scale:e,scaleX:t,scaleY:n}){return!jd(e)||!jd(t)||!jd(n)}function ii(e){return xf(e)||HS(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function HS(e){return iy(e.x)||iy(e.y)}function iy(e){return e&&e!=="0%"}function Wc(e,t,n){const r=e-n,i=t*r;return n+i}function sy(e,t,n,r,i){return i!==void 0&&(e=Wc(e,i,r)),Wc(e,n,r)+t}function Sf(e,t=0,n=1,r,i){e.min=sy(e.min,t,n,r,i),e.max=sy(e.max,t,n,r,i)}function qS(e,{x:t,y:n}){Sf(e.x,t.translate,t.scale,t.originPoint),Sf(e.y,n.translate,n.scale,n.originPoint)}const ay=.999999999999,oy=1.0000000000001;function kM(e,t,n,r=!1){var o;const i=n.length;if(!i)return;t.x=t.y=1;let s,a;for(let l=0;l<i;l++){s=n[l],a=s.projectionDelta;const{visualElement:c}=s.options;c&&c.props.style&&c.props.style.display==="contents"||(r&&s.options.layoutScroll&&s.scroll&&s!==s.root&&(En(e.x,-s.scroll.offset.x),En(e.y,-s.scroll.offset.y)),a&&(t.x*=a.x.scale,t.y*=a.y.scale,qS(e,a)),r&&ii(s.latestValues)&&tc(e,s.latestValues,(o=s.layout)==null?void 0:o.layoutBox))}t.x<oy&&t.x>ay&&(t.x=1),t.y<oy&&t.y>ay&&(t.y=1)}function En(e,t){e.min+=t,e.max+=t}function ly(e,t,n,r,i=.5){const s=he(e.min,e.max,i);Sf(e,t,n,s,r)}function cy(e,t){return typeof e=="string"?parseFloat(e)/100*(t.max-t.min):e}function tc(e,t,n){const r=n??e;ly(e.x,cy(t.x,r.x),t.scaleX,t.scale,t.originX),ly(e.y,cy(t.y,r.y),t.scaleY,t.scale,t.originY)}function JS(e,t){return GS(bM(e.getBoundingClientRect(),t))}function xM(e,t,n){const r=JS(e,n),{scroll:i}=t;return i&&(En(r.x,i.offset.x),En(r.y,i.offset.y)),r}const SM={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},EM=ra.length;function TM(e,t,n){let r="",i=!0;for(let s=0;s<EM;s++){const a=ra[s],o=e[a];if(o===void 0)continue;let l=!0;if(typeof o=="number")l=o===(a.startsWith("scale")?1:0);else{const c=parseFloat(o);l=a.startsWith("scale")?c===1:c===0}if(!l||n){const c=OS(o,vp[a]);if(!l){i=!1;const d=SM[a]||a;r+=`${d}(${c}) `}n&&(t[a]=c)}}return r=r.trim(),n?r=n(t,i?"":r):i&&(r="none"),r}function Sp(e,t,n){const{style:r,vars:i,transformOrigin:s}=e;let a=!1,o=!1;for(const l in t){const c=t[l];if(ia.has(l)){a=!0;continue}else if(sS(l)){i[l]=c;continue}else{const d=OS(c,vp[l]);l.startsWith("origin")?(o=!0,s[l]=d):r[l]=d}}if(t.transform||(a||n?r.transform=TM(t,e.transform,n):r.transform&&(r.transform="none")),o){const{originX:l="50%",originY:c="50%",originZ:d=0}=s;r.transformOrigin=`${l} ${c} ${d}`}}function ZS(e,{style:t,vars:n},r,i){const s=e.style;let a;for(a in t)s[a]=t[a];i==null||i.applyProjectionStyles(s,r);for(a in n)s.setProperty(a,n[a])}function uy(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const ya={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(F.test(e))e=parseFloat(e);else return e;const n=uy(e,t.target.x),r=uy(e,t.target.y);return`${n}% ${r}%`}},AM={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,i=un.parse(e);if(i.length>5)return r;const s=un.createTransformer(e),a=typeof i[0]!="number"?1:0,o=n.x.scale*t.x,l=n.y.scale*t.y;i[0+a]/=o,i[1+a]/=l;const c=he(o,l,.5);return typeof i[2+a]=="number"&&(i[2+a]/=c),typeof i[3+a]=="number"&&(i[3+a]/=c),s(i)}},Ef={borderRadius:{...ya,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:ya,borderTopRightRadius:ya,borderBottomLeftRadius:ya,borderBottomRightRadius:ya,boxShadow:AM};function YS(e,{layout:t,layoutId:n}){return ia.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!Ef[e]||e==="opacity")}function Ep(e,t,n){var a;const r=e.style,i=t==null?void 0:t.style,s={};if(!r)return s;for(const o in r)(Ke(r[o])||i&&Ke(i[o])||YS(o,e)||((a=n==null?void 0:n.getValue(o))==null?void 0:a.liveStyle)!==void 0)&&(s[o]=r[o]);return s}function CM(e){return window.getComputedStyle(e)}class _M extends KS{constructor(){super(...arguments),this.type="html",this.renderInstance=ZS}readValueFromInstance(t,n){var r;if(ia.has(n))return(r=this.projection)!=null&&r.isProjecting?uf(n):HD(t,n);{const i=CM(t),s=(sS(n)?i.getPropertyValue(n):i[n])||0;return typeof s=="string"?s.trim():s}}measureInstanceViewportBox(t,{transformPagePoint:n}){return JS(t,n)}build(t,n,r){Sp(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return Ep(t,n,r)}}const PM={offset:"stroke-dashoffset",array:"stroke-dasharray"},jM={offset:"strokeDashoffset",array:"strokeDasharray"};function RM(e,t,n=1,r=0,i=!0){e.pathLength=1;const s=i?PM:jM;e[s.offset]=`${-r}`,e[s.array]=`${t} ${n}`}const zM=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function QS(e,{attrX:t,attrY:n,attrScale:r,pathLength:i,pathSpacing:s=1,pathOffset:a=0,...o},l,c,d){if(Sp(e,o,c),l){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:h,style:f}=e;h.transform&&(f.transform=h.transform,delete h.transform),(f.transform||h.transformOrigin)&&(f.transformOrigin=h.transformOrigin??"50% 50%",delete h.transformOrigin),f.transform&&(f.transformBox=(d==null?void 0:d.transformBox)??"fill-box",delete h.transformBox);for(const m of zM)h[m]!==void 0&&(f[m]=h[m],delete h[m]);t!==void 0&&(h.x=t),n!==void 0&&(h.y=n),r!==void 0&&(h.scale=r),i!==void 0&&RM(h,i,s,a,!1)}const XS=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),eE=e=>typeof e=="string"&&e.toLowerCase()==="svg";function DM(e,t,n,r){ZS(e,t,void 0,r);for(const i in t.attrs)e.setAttribute(XS.has(i)?i:gp(i),t.attrs[i])}function tE(e,t,n){const r=Ep(e,t,n);for(const i in e)if(Ke(e[i])||Ke(t[i])){const s=ra.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;r[s]=e[i]}return r}class NM extends KS{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=Me}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(ia.has(n)){const r=NS(n);return r&&r.default||0}return n=XS.has(n)?n:gp(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return tE(t,n,r)}build(t,n,r){QS(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,i){DM(t,n,r,i)}mount(t){this.isSVGTag=eE(t.tagName),super.mount(t)}}const MM=xp.length;function nE(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?nE(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;n<MM;n++){const r=xp[n],i=e.props[r];(yo(i)||i===!1)&&(t[r]=i)}return t}function rE(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let r=0;r<n;r++)if(t[r]!==e[r])return!1;return!0}const IM=[...kp].reverse(),OM=kp.length;function LM(e){return t=>Promise.all(t.map(({animation:n,options:r})=>MN(e,n,r)))}function FM(e){let t=LM(e),n=dy(),r=!0,i=!1;const s=c=>(d,h)=>{var m;const f=Si(e,h,c==="exit"?(m=e.presenceContext)==null?void 0:m.custom:void 0);if(f){const{transition:w,transitionEnd:p,...b}=f;d={...d,...b,...p}}return d};function a(c){t=c(e)}function o(c){const{props:d}=e,h=nE(e.parent)||{},f=[],m=new Set;let w={},p=1/0;for(let v=0;v<OM;v++){const g=IM[v],y=n[g],x=d[g]!==void 0?d[g]:h[g],E=yo(x),T=g===c?y.isActive:null;T===!1&&(p=v);let S=x===h[g]&&x!==d[g]&&E;if(S&&(r||i)&&e.manuallyAnimateOnMount&&(S=!1),y.protectedKeys={...w},!y.isActive&&T===null||!x&&!y.prevProp||_u(x)||typeof x=="boolean")continue;if(g==="exit"&&y.isActive&&T!==!0){y.prevResolvedValues&&(w={...w,...y.prevResolvedValues});continue}const A=BM(y.prevProp,x);let _=A||g===c&&y.isActive&&!S&&E||v>p&&E,C=!1;const I=Array.isArray(x)?x:[x];let D=I.reduce(s(g),{});T===!1&&(D={});const{prevResolvedValues:U={}}=y,M={...U,...D},H=P=>{_=!0,m.has(P)&&(C=!0,m.delete(P)),y.needsAnimating[P]=!0;const j=e.getValue(P);j&&(j.liveStyle=!1)};for(const P in M){const j=D[P],O=U[P];if(w.hasOwnProperty(P))continue;let G=!1;gf(j)&&gf(O)?G=!rE(j,O):G=j!==O,G?j!=null?H(P):m.add(P):j!==void 0&&m.has(P)?H(P):y.protectedKeys[P]=!0}y.prevProp=x,y.prevResolvedValues=D,y.isActive&&(w={...w,...D}),(r||i)&&e.blockInitialAnimation&&(_=!1);const V=S&&A;_&&(!V||C)&&f.push(...I.map(P=>{const j={type:g};if(typeof P=="string"&&(r||i)&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:O}=e,G=Si(O,P);if(O.enteringChildren&&G){const{delayChildren:$}=G.transition||{};j.delay=TS(O.enteringChildren,e,$)}}return{animation:P,options:j}}))}if(m.size){const v={};if(typeof d.initial!="boolean"){const g=Si(e,Array.isArray(d.initial)?d.initial[0]:d.initial);g&&g.transition&&(v.transition=g.transition)}m.forEach(g=>{const y=e.getBaseTarget(g),x=e.getValue(g);x&&(x.liveStyle=!0),v[g]=y??null}),f.push({animation:v})}let b=!!f.length;return r&&(d.initial===!1||d.initial===d.animate)&&!e.manuallyAnimateOnMount&&(b=!1),r=!1,i=!1,b?t(f):Promise.resolve()}function l(c,d){var f;if(n[c].isActive===d)return Promise.resolve();(f=e.variantChildren)==null||f.forEach(m=>{var w;return(w=m.animationState)==null?void 0:w.setActive(c,d)}),n[c].isActive=d;const h=o(c);for(const m in n)n[m].protectedKeys={};return h}return{animateChanges:o,setActive:l,setAnimateFunction:a,getState:()=>n,reset:()=>{n=dy(),i=!0}}}function BM(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!rE(t,e):!1}function Xr(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function dy(){return{animate:Xr(!0),whileInView:Xr(),whileHover:Xr(),whileTap:Xr(),whileDrag:Xr(),whileFocus:Xr(),exit:Xr()}}function Tf(e,t){e.min=t.min,e.max=t.max}function Zt(e,t){Tf(e.x,t.x),Tf(e.y,t.y)}function hy(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}const iE=1e-4,UM=1-iE,VM=1+iE,sE=.01,WM=0-sE,$M=0+sE;function dt(e){return e.max-e.min}function KM(e,t,n){return Math.abs(e-t)<=n}function fy(e,t,n,r=.5){e.origin=r,e.originPoint=he(t.min,t.max,e.origin),e.scale=dt(n)/dt(t),e.translate=he(n.min,n.max,e.origin)-e.originPoint,(e.scale>=UM&&e.scale<=VM||isNaN(e.scale))&&(e.scale=1),(e.translate>=WM&&e.translate<=$M||isNaN(e.translate))&&(e.translate=0)}function Ba(e,t,n,r){fy(e.x,t.x,n.x,r?r.originX:void 0),fy(e.y,t.y,n.y,r?r.originY:void 0)}function my(e,t,n,r=0){const i=r?he(n.min,n.max,r):n.min;e.min=i+t.min,e.max=e.min+dt(t)}function GM(e,t,n,r){my(e.x,t.x,n.x,r==null?void 0:r.x),my(e.y,t.y,n.y,r==null?void 0:r.y)}function py(e,t,n,r=0){const i=r?he(n.min,n.max,r):n.min;e.min=t.min-i,e.max=e.min+dt(t)}function $c(e,t,n,r){py(e.x,t.x,n.x,r==null?void 0:r.x),py(e.y,t.y,n.y,r==null?void 0:r.y)}function gy(e,t,n,r,i){return e-=t,e=Wc(e,1/n,r),i!==void 0&&(e=Wc(e,1/i,r)),e}function HM(e,t=0,n=1,r=.5,i,s=e,a=e){if(zn.test(t)&&(t=parseFloat(t),t=he(a.min,a.max,t/100)-a.min),typeof t!="number")return;let o=he(s.min,s.max,r);e===s&&(o-=t),e.min=gy(e.min,t,n,o,i),e.max=gy(e.max,t,n,o,i)}function vy(e,t,[n,r,i],s,a){HM(e,t[n],t[r],t[i],t.scale,s,a)}const qM=["x","scaleX","originX"],JM=["y","scaleY","originY"];function yy(e,t,n,r){vy(e.x,t,qM,n?n.x:void 0,r?r.x:void 0),vy(e.y,t,JM,n?n.y:void 0,r?r.y:void 0)}function wy(e){return e.translate===0&&e.scale===1}function aE(e){return wy(e.x)&&wy(e.y)}function by(e,t){return e.min===t.min&&e.max===t.max}function ZM(e,t){return by(e.x,t.x)&&by(e.y,t.y)}function ky(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function oE(e,t){return ky(e.x,t.x)&&ky(e.y,t.y)}function xy(e){return dt(e.x)/dt(e.y)}function Sy(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function wn(e){return[e("x"),e("y")]}function YM(e,t,n){let r="";const i=e.x.translate/t.x,s=e.y.translate/t.y,a=(n==null?void 0:n.z)||0;if((i||s||a)&&(r=`translate3d(${i}px, ${s}px, ${a}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:c,rotate:d,rotateX:h,rotateY:f,skewX:m,skewY:w}=n;c&&(r=`perspective(${c}px) ${r}`),d&&(r+=`rotate(${d}deg) `),h&&(r+=`rotateX(${h}deg) `),f&&(r+=`rotateY(${f}deg) `),m&&(r+=`skewX(${m}deg) `),w&&(r+=`skewY(${w}deg) `)}const o=e.x.scale*t.x,l=e.y.scale*t.y;return(o!==1||l!==1)&&(r+=`scale(${o}, ${l})`),r||"none"}const lE=["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"],QM=lE.length,Ey=e=>typeof e=="string"?parseFloat(e):e,Ty=e=>typeof e=="number"||F.test(e);function XM(e,t,n,r,i,s){i?(e.opacity=he(0,n.opacity??1,eI(r)),e.opacityExit=he(t.opacity??1,0,tI(r))):s&&(e.opacity=he(t.opacity??1,n.opacity??1,r));for(let a=0;a<QM;a++){const o=lE[a];let l=Ay(t,o),c=Ay(n,o);if(l===void 0&&c===void 0)continue;l||(l=0),c||(c=0),l===0||c===0||Ty(l)===Ty(c)?(e[o]=Math.max(he(Ey(l),Ey(c),r),0),(zn.test(c)||zn.test(l))&&(e[o]+="%")):e[o]=c}(t.rotate||n.rotate)&&(e.rotate=he(t.rotate||0,n.rotate||0,r))}function Ay(e,t){return e[t]!==void 0?e[t]:e.borderRadius}const eI=cE(0,.5,Xx),tI=cE(.5,.95,Vt);function cE(e,t,n){return r=>r<e?0:r>t?1:n(go(e,t,r))}function nI(e,t,n){const r=Ke(e)?e:Gs(e);return r.start(mp("",r,t,n)),r.animation}function wo(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const rI=(e,t)=>e.depth-t.depth;class iI{constructor(){this.children=[],this.isDirty=!1}add(t){np(this.children,t),this.isDirty=!0}remove(t){Oc(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(rI),this.isDirty=!1,this.children.forEach(t)}}function sI(e,t){const n=ut.now(),r=({timestamp:i})=>{const s=i-n;s>=t&&($r(r),e(s-t))};return oe.setup(r,!0),()=>$r(r)}function nc(e){return Ke(e)?e.get():e}class aI{constructor(){this.members=[]}add(t){np(this.members,t);for(let n=this.members.length-1;n>=0;n--){const r=this.members[n];if(r===t||r===this.lead||r===this.prevLead)continue;const i=r.instance;(!i||i.isConnected===!1)&&!r.snapshot&&(Oc(this.members,r),r.unmount())}t.scheduleRender()}remove(t){if(Oc(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){var n;for(let r=this.members.indexOf(t)-1;r>=0;r--){const i=this.members[r];if(i.isPresent!==!1&&((n=i.instance)==null?void 0:n.isConnected)!==!1)return this.promote(i),!0}return!1}promote(t,n){var i;const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.updateSnapshot(),t.scheduleRender();const{layoutDependency:s}=r.options,{layoutDependency:a}=t.options;(s===void 0||s!==a)&&(t.resumeFrom=r,n&&(r.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),(i=t.root)!=null&&i.isUpdating&&(t.isLayoutDirty=!0)),t.options.crossfade===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{var n,r,i,s,a;(r=(n=t.options).onExitComplete)==null||r.call(n),(a=(i=t.resumingFrom)==null?void 0:(s=i.options).onExitComplete)==null||a.call(s)})}scheduleRender(){this.members.forEach(t=>t.instance&&t.scheduleRender(!1))}removeLeadSnapshot(){var t;(t=this.lead)!=null&&t.snapshot&&(this.lead.snapshot=void 0)}}const rc={hasAnimatedSinceResize:!0,hasEverUpdated:!1},Rd=["","X","Y","Z"],oI=1e3;let lI=0;function zd(e,t,n,r){const{latestValues:i}=t;i[e]&&(n[e]=i[e],t.setStaticValue(e,0),r&&(r[e]=0))}function uE(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=jS(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:s}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",oe,!(i||s))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&uE(r)}function dE({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(a={},o=t==null?void 0:t()){this.id=lI++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(dI),this.nodes.forEach(vI),this.nodes.forEach(yI),this.nodes.forEach(hI)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=a,this.root=o?o.root||o:this,this.path=o?[...o.path,o]:[],this.parent=o,this.depth=o?o.depth+1:0;for(let l=0;l<this.path.length;l++)this.path[l].shouldResetTransform=!0;this.root===this&&(this.nodes=new iI)}addEventListener(a,o){return this.eventHandlers.has(a)||this.eventHandlers.set(a,new rp),this.eventHandlers.get(a).add(o)}notifyListeners(a,...o){const l=this.eventHandlers.get(a);l&&l.notify(...o)}hasListeners(a){return this.eventHandlers.has(a)}mount(a){if(this.instance)return;this.isSVG=bp(a)&&!uM(a),this.instance=a;const{layoutId:o,layout:l,visualElement:c}=this.options;if(c&&!c.current&&c.mount(a),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(l||o)&&(this.isLayoutDirty=!0),e){let d,h=0;const f=()=>this.root.updateBlockedByResize=!1;oe.read(()=>{h=window.innerWidth}),e(a,()=>{const m=window.innerWidth;m!==h&&(h=m,this.root.updateBlockedByResize=!0,d&&d(),d=sI(f,250),rc.hasAnimatedSinceResize&&(rc.hasAnimatedSinceResize=!1,this.nodes.forEach(Py)))})}o&&this.root.registerSharedNode(o,this),this.options.animate!==!1&&c&&(o||l)&&this.addEventListener("didUpdate",({delta:d,hasLayoutChanged:h,hasRelativeLayoutChanged:f,layout:m})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const w=this.options.transition||c.getDefaultTransition()||SI,{onLayoutAnimationStart:p,onLayoutAnimationComplete:b}=c.getProps(),v=!this.targetLayout||!oE(this.targetLayout,m),g=!h&&f;if(this.options.layoutRoot||this.resumeFrom||g||h&&(v||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const y={...fp(w,"layout"),onPlay:p,onComplete:b};(c.shouldReduceMotion||this.options.layoutRoot)&&(y.delay=0,y.type=!1),this.startAnimation(y),this.setAnimationOrigin(d,g)}else h||Py(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=m})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const a=this.getStack();a&&a.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),$r(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(wI),this.animationId++)}getTransformTemplate(){const{visualElement:a}=this.options;return a&&a.getProps().transformTemplate}willUpdate(a=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&uE(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let d=0;d<this.path.length;d++){const h=this.path[d];h.shouldResetTransform=!0,(typeof h.latestValues.x=="string"||typeof h.latestValues.y=="string")&&(h.isLayoutDirty=!0),h.updateScroll("snapshot"),h.options.layoutRoot&&h.willUpdate(!1)}const{layoutId:o,layout:l}=this.options;if(o===void 0&&!l)return;const c=this.getTransformTemplate();this.prevTransformTemplateValue=c?c(this.latestValues,""):void 0,this.updateSnapshot(),a&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){const l=this.updateBlockedByResize;this.unblockUpdate(),this.updateBlockedByResize=!1,this.clearAllSnapshots(),l&&this.nodes.forEach(mI),this.nodes.forEach(Cy);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(_y);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(pI),this.nodes.forEach(gI),this.nodes.forEach(cI),this.nodes.forEach(uI)):this.nodes.forEach(_y),this.clearAllSnapshots();const o=ut.now();$e.delta=Mn(0,1e3/60,o-$e.timestamp),$e.timestamp=o,$e.isProcessing=!0,Sd.update.process($e),Sd.preRender.process($e),Sd.render.process($e),$e.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,yp.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(fI),this.sharedNodes.forEach(bI)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,oe.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){oe.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!dt(this.snapshot.measuredBox.x)&&!dt(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let l=0;l<this.path.length;l++)this.path[l].updateScroll();const a=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected||(this.layoutCorrected=Me()),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:o}=this.options;o&&o.notify("LayoutMeasure",this.layout.layoutBox,a?a.layoutBox:void 0)}updateScroll(a="measure"){let o=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===a&&(o=!1),o&&this.instance){const l=r(this.instance);this.scroll={animationId:this.root.animationId,phase:a,isRoot:l,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:l}}}resetTransform(){if(!i)return;const a=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,o=this.projectionDelta&&!aE(this.projectionDelta),l=this.getTransformTemplate(),c=l?l(this.latestValues,""):void 0,d=c!==this.prevTransformTemplateValue;a&&this.instance&&(o||ii(this.latestValues)||d)&&(i(this.instance,c),this.shouldResetTransform=!1,this.scheduleRender())}measure(a=!0){const o=this.measurePageBox();let l=this.removeElementScroll(o);return a&&(l=this.removeTransform(l)),EI(l),{animationId:this.root.animationId,measuredBox:o,layoutBox:l,latestValues:{},source:this.id}}measurePageBox(){var c;const{visualElement:a}=this.options;if(!a)return Me();const o=a.measureViewportBox();if(!(((c=this.scroll)==null?void 0:c.wasRoot)||this.path.some(TI))){const{scroll:d}=this.root;d&&(En(o.x,d.offset.x),En(o.y,d.offset.y))}return o}removeElementScroll(a){var l;const o=Me();if(Zt(o,a),(l=this.scroll)!=null&&l.wasRoot)return o;for(let c=0;c<this.path.length;c++){const d=this.path[c],{scroll:h,options:f}=d;d!==this.root&&h&&f.layoutScroll&&(h.wasRoot&&Zt(o,a),En(o.x,h.offset.x),En(o.y,h.offset.y))}return o}applyTransform(a,o=!1,l){var d,h;const c=l||Me();Zt(c,a);for(let f=0;f<this.path.length;f++){const m=this.path[f];!o&&m.options.layoutScroll&&m.scroll&&m!==m.root&&(En(c.x,-m.scroll.offset.x),En(c.y,-m.scroll.offset.y)),ii(m.latestValues)&&tc(c,m.latestValues,(d=m.layout)==null?void 0:d.layoutBox)}return ii(this.latestValues)&&tc(c,this.latestValues,(h=this.layout)==null?void 0:h.layoutBox),c}removeTransform(a){var l;const o=Me();Zt(o,a);for(let c=0;c<this.path.length;c++){const d=this.path[c];if(!ii(d.latestValues))continue;let h;d.instance&&(xf(d.latestValues)&&d.updateSnapshot(),h=Me(),Zt(h,d.measurePageBox())),yy(o,d.latestValues,(l=d.snapshot)==null?void 0:l.layoutBox,h)}return ii(this.latestValues)&&yy(o,this.latestValues),o}setTargetDelta(a){this.targetDelta=a,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(a){this.options={...this.options,...a,crossfade:a.crossfade!==void 0?a.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==$e.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(a=!1){var m;const o=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=o.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=o.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=o.isSharedProjectionDirty);const l=!!this.resumingFrom||this!==o;if(!(a||l&&this.isSharedProjectionDirty||this.isProjectionDirty||(m=this.parent)!=null&&m.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:d,layoutId:h}=this.options;if(!this.layout||!(d||h))return;this.resolvedRelativeTargetAt=$e.timestamp;const f=this.getClosestProjectingParent();f&&this.linkedParentVersion!==f.layoutVersion&&!f.options.layoutRoot&&this.removeRelativeTarget(),!this.targetDelta&&!this.relativeTarget&&(this.options.layoutAnchor!==!1&&f&&f.layout?this.createRelativeTarget(f,this.layout.layoutBox,f.layout.layoutBox):this.removeRelativeTarget()),!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=Me(),this.targetWithTransforms=Me()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),GM(this.target,this.relativeTarget,this.relativeParent.target,this.options.layoutAnchor||void 0)):this.targetDelta?(this.resumingFrom?this.applyTransform(this.layout.layoutBox,!1,this.target):Zt(this.target,this.layout.layoutBox),qS(this.target,this.targetDelta)):Zt(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,this.options.layoutAnchor!==!1&&f&&!!f.resumingFrom==!!this.resumingFrom&&!f.options.layoutScroll&&f.target&&this.animationProgress!==1?this.createRelativeTarget(f,this.target,f.target):this.relativeParent=this.relativeTarget=void 0))}getClosestProjectingParent(){if(!(!this.parent||xf(this.parent.latestValues)||HS(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(a,o,l){this.relativeParent=a,this.linkedParentVersion=a.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Me(),this.relativeTargetOrigin=Me(),$c(this.relativeTargetOrigin,o,l,this.options.layoutAnchor||void 0),Zt(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){var w;const a=this.getLead(),o=!!this.resumingFrom||this!==a;let l=!0;if((this.isProjectionDirty||(w=this.parent)!=null&&w.isProjectionDirty)&&
vendor: 5,333 bytes, line 158
158(l=!1),o&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(l=!1),this.resolvedRelativeTargetAt===$e.timestamp&&(l=!1),l)return;const{layout:c,layoutId:d}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(c||d))return;Zt(this.layoutCorrected,this.layout.layoutBox);const h=this.treeScale.x,f=this.treeScale.y;kM(this.layoutCorrected,this.treeScale,this.path,o),a.layout&&!a.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(a.target=a.layout.layoutBox,a.targetWithTransforms=Me());const{target:m}=a;if(!m){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(hy(this.prevProjectionDelta.x,this.projectionDelta.x),hy(this.prevProjectionDelta.y,this.projectionDelta.y)),Ba(this.projectionDelta,this.layoutCorrected,m,this.latestValues),(this.treeScale.x!==h||this.treeScale.y!==f||!Sy(this.projectionDelta.x,this.prevProjectionDelta.x)||!Sy(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",m))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(a=!0){var o;if((o=this.options.visualElement)==null||o.scheduleRender(),a){const l=this.getStack();l&&l.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=ps(),this.projectionDelta=ps(),this.projectionDeltaWithTransform=ps()}setAnimationOrigin(a,o=!1){const l=this.snapshot,c=l?l.latestValues:{},d={...this.latestValues},h=ps();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!o;const f=Me(),m=l?l.source:void 0,w=this.layout?this.layout.source:void 0,p=m!==w,b=this.getStack(),v=!b||b.members.length<=1,g=!!(p&&!v&&this.options.crossfade===!0&&!this.path.some(xI));this.animationProgress=0;let y;this.mixTargetDelta=x=>{const E=x/1e3;jy(h.x,a.x,E),jy(h.y,a.y,E),this.setTargetDelta(h),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&($c(f,this.layout.layoutBox,this.relativeParent.layout.layoutBox,this.options.layoutAnchor||void 0),kI(this.relativeTarget,this.relativeTargetOrigin,f,E),y&&ZM(this.relativeTarget,y)&&(this.isProjectionDirty=!1),y||(y=Me()),Zt(y,this.relativeTarget)),p&&(this.animationValues=d,XM(d,c,this.latestValues,E,g,v)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=E},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(a){var o,l,c;this.notifyListeners("animationStart"),(o=this.currentAnimation)==null||o.stop(),(c=(l=this.resumingFrom)==null?void 0:l.currentAnimation)==null||c.stop(),this.pendingAnimation&&($r(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=oe.update(()=>{rc.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=Gs(0)),this.motionValue.jump(0,!1),this.currentAnimation=nI(this.motionValue,[0,1e3],{...a,velocity:0,isSync:!0,onUpdate:d=>{this.mixTargetDelta(d),a.onUpdate&&a.onUpdate(d)},onStop:()=>{},onComplete:()=>{a.onComplete&&a.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const a=this.getStack();a&&a.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(oI),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const a=this.getLead();let{targetWithTransforms:o,target:l,layout:c,latestValues:d}=a;if(!(!o||!l||!c)){if(this!==a&&this.layout&&c&&hE(this.options.animationType,this.layout.layoutBox,c.layoutBox)){l=this.target||Me();const h=dt(this.layout.layoutBox.x);l.x.min=a.target.x.min,l.x.max=l.x.min+h;const f=dt(this.layout.layoutBox.y);l.y.min=a.target.y.min,l.y.max=l.y.min+f}Zt(o,l),tc(o,d),Ba(this.projectionDeltaWithTransform,this.layoutCorrected,o,d)}}registerSharedNode(a,o){this.sharedNodes.has(a)||this.sharedNodes.set(a,new aI),this.sharedNodes.get(a).add(o);const c=o.options.initialPromotionConfig;o.promote({transition:c?c.transition:void 0,preserveFollowOpacity:c&&c.shouldPreserveFollowOpacity?c.shouldPreserveFollowOpacity(o):void 0})}isLead(){const a=this.getStack();return a?a.lead===this:!0}getLead(){var o;const{layoutId:a}=this.options;return a?((o=this.getStack())==null?void 0:o.lead)||this:this}getPrevLead(){var o;const{layoutId:a}=this.options;return a?(o=this.getStack())==null?void 0:o.prevLead:void 0}getStack(){const{layoutId:a}=this.options;if(a)return this.root.sharedNodes.get(a)}promote({needsReset:a,transition:o,preserveFollowOpacity:l}={}){const c=this.getStack();c&&c.promote(this,l),a&&(this.projectionDelta=void 0,this.needsReset=!0),o&&this.setOptions({transition:o})}relegate(){const a=this.getStack();return a?a.relegate(this):!1}
vendor: 4,506 bytes, line 158
158resetSkewAndRotation(){const{visualElement:a}=this.options;if(!a)return;let o=!1;const{latestValues:l}=a;if((l.z||l.rotate||l.rotateX||l.rotateY||l.rotateZ||l.skewX||l.skewY)&&(o=!0),!o)return;const c={};l.z&&zd("z",a,c,this.animationValues);for(let d=0;d<Rd.length;d++)zd(`rotate${Rd[d]}`,a,c,this.animationValues),zd(`skew${Rd[d]}`,a,c,this.animationValues);a.render();for(const d in c)a.setStaticValue(d,c[d]),this.animationValues&&(this.animationValues[d]=c[d]);a.scheduleRender()}applyProjectionStyles(a,o){if(!this.instance||this.isSVG)return;if(!this.isVisible){a.visibility="hidden";return}const l=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,a.visibility="",a.opacity="",a.pointerEvents=nc(o==null?void 0:o.pointerEvents)||"",a.transform=l?l(this.latestValues,""):"none";return}const c=this.getLead();if(!this.projectionDelta||!this.layout||!c.target){this.options.layoutId&&(a.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,a.pointerEvents=nc(o==null?void 0:o.pointerEvents)||""),this.hasProjected&&!ii(this.latestValues)&&(a.transform=l?l({},""):"none",this.hasProjected=!1);return}a.visibility="";const d=c.animationValues||c.latestValues;this.applyTransformsToTarget();let h=YM(this.projectionDeltaWithTransform,this.treeScale,d);l&&(h=l(d,h)),a.transform=h;const{x:f,y:m}=this.projectionDelta;a.transformOrigin=`${f.origin*100}% ${m.origin*100}% 0`,c.animationValues?a.opacity=c===this?d.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:d.opacityExit:a.opacity=c===this?d.opacity!==void 0?d.opacity:"":d.opacityExit!==void 0?d.opacityExit:0;for(const w in Ef){if(d[w]===void 0)continue;const{correct:p,applyTo:b,isCSSVariable:v}=Ef[w],g=h==="none"?d[w]:p(d[w],c);if(b){const y=b.length;for(let x=0;x<y;x++)a[b[x]]=g}else v?this.options.visualElement.renderState.vars[w]=g:a[w]=g}this.options.layoutId&&(a.pointerEvents=c===this?nc(o==null?void 0:o.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(a=>{var o;return(o=a.currentAnimation)==null?void 0:o.stop()}),this.root.nodes.forEach(Cy),this.root.sharedNodes.clear()}}}function cI(e){e.updateLayout()}function uI(e){var n;const t=((n=e.resumeFrom)==null?void 0:n.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:r,measuredBox:i}=e.layout,{animationType:s}=e.options,a=t.source!==e.layout.source;if(s==="size")wn(h=>{const f=a?t.measuredBox[h]:t.layoutBox[h],m=dt(f);f.min=r[h].min,f.max=f.min+m});else if(s==="x"||s==="y"){const h=s==="x"?"y":"x";Tf(a?t.measuredBox[h]:t.layoutBox[h],r[h])}else hE(s,t.layoutBox,r)&&wn(h=>{const f=a?t.measuredBox[h]:t.layoutBox[h],m=dt(r[h]);f.max=f.min+m,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[h].max=e.relativeTarget[h].min+m)});const o=ps();Ba(o,r,t.layoutBox);const l=ps();a?Ba(l,e.applyTransform(i,!0),t.measuredBox):Ba(l,r,t.layoutBox);const c=!aE(o);let d=!1;if(!e.resumeFrom){const h=e.getClosestProjectingParent();if(h&&!h.resumeFrom){const{snapshot:f,layout:m}=h;if(f&&m){const w=e.options.layoutAnchor||void 0,p=Me();$c(p,t.layoutBox,f.layoutBox,w);const b=Me();$c(b,r,m.layoutBox,w),oE(p,b)||(d=!0),h.options.layoutRoot&&(e.relativeTarget=b,e.relativeTargetOrigin=p,e.relativeParent=h)}}}e.notifyListeners("didUpdate",{layout:r,snapshot:t,delta:l,layoutDelta:o,hasLayoutChanged:c,hasRelativeLayoutChanged:d})}else if(e.isLead()){const{onExitComplete:r}=e.options;r&&r()}e.options.transition=void 0}function dI(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function hI(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function fI(e){e.clearSnapshot()}function Cy(e){e.clearMeasurements()}function mI(e){e.isLayoutDirty=!0,e.updateLayout()}function _y(e){e.isLayoutDirty=!1}function pI(e){e.isAnimationBlocked&&e.layout&&!e.isLayoutDirty&&(e.snapshot=e.layout,e.isLayoutDirty=!0)}function gI(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function Py(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function vI(e){e.resolveTargetDelta()}function yI(e){e.calcProjection()}
158function wI(e){e.resetSkewAndRotation()}function bI(e){e.removeLeadSnapshot()}function jy(e,t,n){e.translate=he(t.translate,0,n),e.scale=he(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function Ry(e,t,n,r){e.min=he(t.min,n.min,r),e.max=he(t.max,n.max,r)}function kI(e,t,n,r){Ry(e.x,t.x,n.x,r),Ry(e.y,t.y,n.y,r)}function xI(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const SI={duration:.45,ease:[.4,0,.1,1]},zy=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),Dy=zy("applewebkit/")&&!zy("chrome/")?Math.round:Vt;function Ny(e){e.min=Dy(e.min),e.max=Dy(e.max)}function EI(e){Ny(e.x),Ny(e.y)}function hE(e,t,n){return e==="position"||e==="preserve-aspect"&&!KM(xy(t),xy(n),.2)}function TI(e){var t;return e!==e.root&&((t=e.scroll)==null?void 0:t.wasRoot)}const AI=dE({attachResizeListener:(e,t)=>wo(e,"resize",t),measureScroll:()=>{var e,t;return{x:document.documentElement.scrollLeft||((e=document.body)==null?void 0:e.scrollLeft)||0,y:document.documentElement.scrollTop||((t=document.body)==null?void 0:t.scrollTop)||0}},checkIsScrollRoot:()=>!0}),Dd={current:void 0},fE=dE({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!Dd.current){const e=new AI({});e.mount(window),e.setOptions({layoutScroll:!0}),Dd.current=e}return Dd.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),Tp=k.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function My(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function CI(...e){return t=>{let n=!1;const r=e.map(i=>{const s=My(i,t);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let i=0;i<r.length;i++){const s=r[i];typeof s=="function"?s():My(e[i],null)}}}}function _I(...e){return k.useCallback(CI(...e),e)}class PI extends k.Component{getSnapshotBeforeUpdate(t){const n=this.props.childRef.current;if(Yl(n)&&t.isPresent&&!this.props.isPresent&&this.props.pop!==!1){const r=n.offsetParent,i=Yl(r)&&r.offsetWidth||0,s=Yl(r)&&r.offsetHeight||0,a=getComputedStyle(n),o=this.props.sizeRef.current;o.height=parseFloat(a.height),o.width=parseFloat(a.width),o.top=n.offsetTop,o.left=n.offsetLeft,o.right=i-o.width-o.left,o.bottom=s-o.height-o.top}return null}componentDidUpdate(){}render(){return this.props.children}}function jI({children:e,isPresent:t,anchorX:n,anchorY:r,root:i,pop:s}){var f;const a=k.useId(),o=k.useRef(null),l=k.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:c}=k.useContext(Tp),d=((f=e.props)==null?void 0:f.ref)??(e==null?void 0:e.ref),h=_I(o,d);return k.useInsertionEffect(()=>{const{width:m,height:w,top:p,left:b,right:v,bottom:g}=l.current;if(t||s===!1||!o.current||!m||!w)return;const y=n==="left"?`left: ${b}`:`right: ${v}`,x=r==="bottom"?`bottom: ${g}`:`top: ${p}`;o.current.dataset.motionPopId=a;const E=document.createElement("style");c&&(E.nonce=c);const T=i??document.head;return T.appendChild(E),E.sheet&&E.sheet.insertRule(` 159 [data-motion-pop-id="${a}"] { 160 position: absolute !important; 161 width: ${m}px !important; 162 height: ${w}px !important; 163 ${y}px !important; 164 ${x}px !important; 165 } 166 `),()=>{var S;(S=o.current)==null||S.removeAttribute("data-motion-pop-id"),T.contains(E)&&T.removeChild(E)}},[t]),u.jsx(PI,{isPresent:t,childRef:o,sizeRef:l,pop:s,children:s===!1?e:k.cloneElement(e,{ref:h})})}const RI=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:i,presenceAffectsLayout:s,mode:a,anchorX:o,anchorY:l,root:c})=>{const d=tp(zI),h=k.useId();let f=!0,m=k.useMemo(()=>(f=!1,{id:h,initial:t,isPresent:n,custom:i,onExitComplete:w=>{d.set(w,!0);for(const p of d.values())if(!p)return;r&&r()},register:w=>(d.set(w,!1),()=>d.delete(w))}),[n,d,r]);return s&&f&&(m={...m}),k.useMemo(()=>{d.forEach((w,p)=>d.set(p,!1))},[n]),k.useEffect(()=>{!n&&!d.size&&r&&r()},[n]),e=u.jsx(jI,{pop:a==="popLayout",isPresent:n,anchorX:o,anchorY:l,root:c,children:e}),u.jsx(Tu.Provider,{value:m,children:e})};function zI(){return new Map}function mE(e=!0){const t=k.useContext(Tu);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:i}=t,s=k.useId();k.useEffect(()=>{if(e)return i(s)},[e]);const a=k.useCallback(()=>e&&r&&r(s),[s,r,e]);return!n&&r?[!1,a]:[!0]}const wl=e=>e.key||"";function Iy(e){const t=[];
vendor: 2,810 bytes, line 166
166return k.Children.forEach(e,n=>{k.isValidElement(n)&&t.push(n)}),t}const pE=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:i=!0,mode:s="sync",propagate:a=!1,anchorX:o="left",anchorY:l="top",root:c})=>{const[d,h]=mE(a),f=k.useMemo(()=>Iy(e),[e]),m=a&&!d?[]:f.map(wl),w=k.useRef(!0),p=k.useRef(f),b=tp(()=>new Map),v=k.useRef(new Set),[g,y]=k.useState(f),[x,E]=k.useState(f);Ux(()=>{w.current=!1,p.current=f;for(let A=0;A<x.length;A++){const _=wl(x[A]);m.includes(_)?(b.delete(_),v.current.delete(_)):b.get(_)!==!0&&b.set(_,!1)}},[x,m.length,m.join("-")]);const T=[];if(f!==g){let A=[...f];for(let _=0;_<x.length;_++){const C=x[_],I=wl(C);m.includes(I)||(A.splice(_,0,C),T.push(C))}return s==="wait"&&T.length&&(A=T),E(Iy(A)),y(f),null}const{forceRender:S}=k.useContext(ep);return u.jsx(u.Fragment,{children:x.map(A=>{const _=wl(A),C=a&&!d?!1:f===x||m.includes(_),I=()=>{if(v.current.has(_))return;if(b.has(_))v.current.add(_),b.set(_,!0);else return;let D=!0;b.forEach(U=>{U||(D=!1)}),D&&(S==null||S(),E(p.current),a&&(h==null||h()),r&&r())};return u.jsx(RI,{isPresent:C,initial:!w.current||n?void 0:!1,custom:t,presenceAffectsLayout:i,mode:s,root:c,onExitComplete:C?void 0:I,anchorX:o,anchorY:l,children:A},_)})})},gE=k.createContext({strict:!1}),Oy={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let Ly=!1;function DI(){if(Ly)return;const e={};for(const t in Oy)e[t]={isEnabled:n=>Oy[t].some(r=>!!n[r])};$S(e),Ly=!0}function vE(){return DI(),vM()}function NI(e){const t=vE();for(const n in e)t[n]={...t[n],...e[n]};$S(t)}const MI=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function Kc(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||MI.has(e)}let yE=e=>!Kc(e);function II(e){typeof e=="function"&&(yE=t=>t.startsWith("on")?!Kc(t):e(t))}try{II(require("@emotion/is-prop-valid").default)}catch{}function OI(e,t,n){const r={};for(const i in e)i==="values"&&typeof e.values=="object"||Ke(e[i])||
vendor: 23,362 bytes, line 166
166(yE(i)||n===!0&&Kc(i)||!t&&!Kc(i)||e.draggable&&i.startsWith("onDrag"))&&(r[i]=e[i]);return r}const ju=k.createContext({});function LI(e,t){if(Pu(e)){const{initial:n,animate:r}=e;return{initial:n===!1||yo(n)?n:void 0,animate:yo(r)?r:void 0}}return e.inherit!==!1?t:{}}function FI(e){const{initial:t,animate:n}=LI(e,k.useContext(ju));return k.useMemo(()=>({initial:t,animate:n}),[Fy(t),Fy(n)])}function Fy(e){return Array.isArray(e)?e.join(" "):e}const Ap=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function wE(e,t,n){for(const r in t)!Ke(t[r])&&!YS(r,n)&&(e[r]=t[r])}function BI({transformTemplate:e},t){return k.useMemo(()=>{const n=Ap();return Sp(n,t,e),Object.assign({},n.vars,n.style)},[t])}function UI(e,t){const n=e.style||{},r={};return wE(r,n,e),Object.assign(r,BI(e,t)),r}function VI(e,t){const n={},r=UI(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const bE=()=>({...Ap(),attrs:{}});function WI(e,t,n,r){const i=k.useMemo(()=>{const s=bE();return QS(s,t,eE(r),e.transformTemplate,e.style),{...s.attrs,style:{...s.style}}},[t]);if(e.style){const s={};wE(s,e.style,e),i.style={...s,...i.style}}return i}const $I=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Cp(e){return typeof e!="string"||e.includes("-")?!1:!!($I.indexOf(e)>-1||/[A-Z]/u.test(e))}function KI(e,t,n,{latestValues:r},i,s=!1,a){const l=(a??Cp(e)?WI:VI)(t,r,i,e),c=OI(t,typeof e=="string",s),d=e!==k.Fragment?{...c,...l,ref:n}:{},{children:h}=t,f=k.useMemo(()=>Ke(h)?h.get():h,[h]);return k.createElement(e,{...d,children:f})}function GI({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,i){return{latestValues:HI(n,r,i,e),renderState:t()}}function HI(e,t,n,r){const i={},s=r(e,{});for(const f in s)i[f]=nc(s[f]);let{initial:a,animate:o}=e;const l=Pu(e),c=VS(e);t&&c&&!l&&e.inherit!==!1&&(a===void 0&&(a=t.initial),o===void 0&&(o=t.animate));let d=n?n.initial===!1:!1;d=d||a===!1;const h=d?o:a;if(h&&typeof h!="boolean"&&!_u(h)){const f=Array.isArray(h)?h:[h];for(let m=0;m<f.length;m++){const w=pp(e,f[m]);if(w){const{transitionEnd:p,transition:b,...v}=w;for(const g in v){let y=v[g];if(Array.isArray(y)){const x=d?y.length-1:0;y=y[x]}y!==null&&(i[g]=y)}for(const g in p)i[g]=p[g]}}}return i}const kE=e=>(t,n)=>{const r=k.useContext(ju),i=k.useContext(Tu),s=()=>GI(e,t,r,i);return n?s():tp(s)},qI=kE({scrapeMotionValuesFromProps:Ep,createRenderState:Ap}),JI=kE({scrapeMotionValuesFromProps:tE,createRenderState:bE}),ZI=Symbol.for("motionComponentSymbol");function YI(e,t,n){const r=k.useRef(n);k.useInsertionEffect(()=>{r.current=n});const i=k.useRef(null);return k.useCallback(s=>{var o;s&&((o=e.onMount)==null||o.call(e,s));const a=r.current;if(typeof a=="function")if(s){const l=a(s);typeof l=="function"&&(i.current=l)}else i.current?(i.current(),i.current=null):a(s);else a&&(a.current=s);t&&(s?t.mount(s):t.unmount())},[t])}const xE=k.createContext({});function Zi(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function QI(e,t,n,r,i,s){var y,x;const{visualElement:a}=k.useContext(ju),o=k.useContext(gE),l=k.useContext(Tu),c=k.useContext(Tp),d=c.reducedMotion,h=c.skipAnimations,f=k.useRef(null),m=k.useRef(!1);r=r||o.renderer,!f.current&&r&&(f.current=r(e,{visualState:t,parent:a,props:n,presenceContext:l,blockInitialAnimation:l?l.initial===!1:!1,reducedMotionConfig:d,skipAnimations:h,isSVG:s}),m.current&&f.current&&(f.current.manuallyAnimateOnMount=!0));const w=f.current,p=k.useContext(xE);w&&!w.projection&&i&&(w.type==="html"||w.type==="svg")&&XI(f.current,n,i,p);const b=k.useRef(!1);k.useInsertionEffect(()=>{w&&b.current&&w.update(n,l)});const v=n[PS],g=k.useRef(!!v&&typeof window<"u"&&!((y=window.MotionHandoffIsComplete)!=null&&y.call(window,v))&&((x=window.MotionHasOptimisedAnimation)==null?void 0:x.call(window,v)));return Ux(()=>{m.current=!0,w&&(b.current=!0,window.MotionIsMounted=!0,w.updateFeatures(),w.scheduleRenderMicrotask(),g.current&&w.animationState&&w.animationState.animateChanges())}),k.useEffect(()=>{w&&(!g.current&&w.animationState&&w.animationState.animateChanges(),g.current&&(queueMicrotask(()=>{var E;(E=window.MotionHandoffMarkAsComplete)==null||E.call(window,v)}),g.current=!1),w.enteringChildren=void 0)}),w}function XI(e,t,n,r){const{layoutId:i,layout:s,drag:a,dragConstraints:o,layoutScroll:l,layoutRoot:c,layoutAnchor:d,layoutCrossfade:h}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:SE(e.parent)),e.projection.setOptions({layoutId:i,layout:s,alwaysMeasureLayout:!!a||o&&Zi(o),visualElement:e,animationType:typeof s=="string"?s:"both",initialPromotionConfig:r,crossfade:h,layoutScroll:l,layoutRoot:c,layoutAnchor:d})}function SE(e){if(e)return e.options.allowProjection!==!1?e.projection:SE(e.parent)}function Nd(e,{forwardMotionProps:t=!1,type:n}={},r,i){r&&NI(r);const s=n?n==="svg":Cp(e),a=s?JI:qI;function o(c,d){let h;const f={...k.useContext(Tp),...c,layoutId:eO(c)},{isStatic:m}=f,w=FI(c),p=a(c,m);if(!m&&typeof window<"u"){tO();const b=nO(f);h=b.MeasureLayout,w.visualElement=QI(e,p,f,i,b.ProjectionNode,s)}return u.jsxs(ju.Provider,{value:w,children:[h&&w.visualElement?u.jsx(h,{visualElement:w.visualElement,...f}):null,KI(e,c,YI(p,w.visualElement,d),p,m,t,s)]})}o.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const l=k.forwardRef(o);return l[ZI]=e,l}function eO({layoutId:e}){const t=k.useContext(ep).id;return t&&e!==void 0?t+"-"+e:e}function tO(e,t){k.useContext(gE).strict}function nO(e){const t=vE(),{drag:n,layout:r}=t;if(!n&&!r)return{};const i={...n,...r};return{MeasureLayout:n!=null&&n.isEnabled(e)||r!=null&&r.isEnabled(e)?i.MeasureLayout:void 0,ProjectionNode:i.ProjectionNode}}function rO(e,t){if(typeof Proxy>"u")return Nd;const n=new Map,r=(s,a)=>Nd(s,a,e,t),i=(s,a)=>r(s,a);return new Proxy(i,{get:(s,a)=>a==="create"?r:(n.has(a)||n.set(a,Nd(a,void 0,e,t)),n.get(a))})}const iO=(e,t)=>t.isSVG??Cp(e)?new NM(t):new _M(t,{allowProjection:e!==k.Fragment});class sO extends Jr{constructor(t){super(t),t.animationState||(t.animationState=FM(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();_u(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){var t;this.node.animationState.reset(),(t=this.unmountControls)==null||t.call(this)}}let aO=0;class oO extends Jr{constructor(){super(...arguments),this.id=aO++,this.isExitComplete=!1}update(){var s;if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;if(t&&r===!1){if(this.isExitComplete){const{initial:a,custom:o}=this.node.getProps();if(typeof a=="string"){const l=Si(this.node,a,o);if(l){const{transition:c,transitionEnd:d,...h}=l;for(const f in h)(s=this.node.getValue(f))==null||s.jump(h[f])}}this.node.animationState.reset(),this.node.animationState.animateChanges()}else this.node.animationState.setActive("exit",!1);this.isExitComplete=!1;return}const i=this.node.animationState.setActive("exit",!t);n&&!t&&i.then(()=>{this.isExitComplete=!0,n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const lO={animation:{Feature:sO},exit:{Feature:oO}};function Wo(e){return{point:{x:e.pageX,y:e.pageY}}}const cO=e=>t=>wp(t)&&e(t,Wo(t));function Ua(e,t,n,r){return wo(e,t,cO(n),r)}const EE=({current:e})=>e?e.ownerDocument.defaultView:null,By=(e,t)=>Math.abs(e-t);function uO(e,t){const n=By(e.x,t.x),r=By(e.y,t.y);return Math.sqrt(n**2+r**2)}const Uy=new Set(["auto","scroll"]);class TE{constructor(t,n,{transformPagePoint:r,contextWindow:i=window,dragSnapToOrigin:s=!1,distanceThreshold:a=3,element:o}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.lastRawMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=m=>{this.handleScroll(m.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;this.lastRawMoveEventInfo&&(this.lastMoveEventInfo=bl(this.lastRawMoveEventInfo,this.transformPagePoint));const m=Md(this.lastMoveEventInfo,this.history),w=this.startEvent!==null,p=uO(m.offset,{x:0,y:0})>=this.distanceThreshold;if(!w&&!p)return;const{point:b}=m,{timestamp:v}=$e;this.history.push({...b,timestamp:v});const{onStart:g,onMove:y}=this.handlers;w||(g&&g(this.lastMoveEvent,m),this.startEvent=this.lastMoveEvent),y&&y(this.lastMoveEvent,m)},this.handlePointerMove=(m,w)=>{this.lastMoveEvent=m,this.lastRawMoveEventInfo=w,this.lastMoveEventInfo=bl(w,this.transformPagePoint),oe.update(this.updatePoint,!0)},this.handlePointerUp=(m,w)=>{this.end();const{onEnd:p,onSessionEnd:b,resumeAnimation:v}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&v&&v(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const g=Md(m.type==="pointercancel"?this.lastMoveEventInfo:bl(w,this.transformPagePoint),this.history);this.startEvent&&p&&p(m,g),b&&b(m,g)},!wp(t))return;this.dragSnapToOrigin=s,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=a,this.contextWindow=i||window;const l=Wo(t),c=bl(l,this.transformPagePoint),{point:d}=c,{timestamp:h}=$e;this.history=[{...d,timestamp:h}];const{onSessionStart:f}=n;f&&f(t,Md(c,this.history)),this.removeListeners=Bo(Ua(this.contextWindow,"pointermove",this.handlePointerMove),Ua(this.contextWindow,"pointerup",this.handlePointerUp),Ua(this.contextWindow,"pointercancel",this.handlePointerUp)),o&&this.startScrollTracking(o)}startScrollTracking(t){let n=t.parentElement;for(;n;){const r=getComputedStyle(n);(Uy.has(r.overflowX)||Uy.has(r.overflowY))&&this.scrollPositions.set(n,{x:n.scrollLeft,y:n.scrollTop}),n=n.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0}),window.addEventListener("scroll",this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(t){const n=this.scrollPositions.get(t);if(!n)return;const r=t===window,i=r?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop},s={x:i.x-n.x,y:i.y-n.y};s.x===0&&s.y===0||(r?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=s.x,this.lastMoveEventInfo.point.y+=s.y):this.history.length>0&&(this.history[0].x-=s.x,this.history[0].y-=s.y),this.scrollPositions.set(t,i),oe.update(this.updatePoint,!0))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),$r(this.updatePoint)}}function bl(e,t){return t?{point:t(e.point)}:e}function Vy(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Md({point:e},t){return{point:e,delta:Vy(e,AE(t)),offset:Vy(e,dO(t)),velocity:hO(t,.1)}}function dO(e){return e[0]}function AE(e){return e[e.length-1]}function hO(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=AE(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>St(t)));)n--;if(!r)return{x:0,y:0};r===e[0]&&e.length>2&&i.timestamp-r.timestamp>St(t)*2&&(r=e[1]);const s=Bt(i.timestamp-r.timestamp);if(s===0)return{x:0,y:0};const a={x:(i.x-r.x)/s,y:(i.y-r.y)/s};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function fO(e,{min:t,max:n},r){return t!==void 0&&e<t?e=r?he(t,e,r.min):Math.max(e,t):n!==void 0&&e>n&&(e=r?he(n,e,r.max):Math.min(e,n)),e}function Wy(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function mO(e,{top:t,left:n,bottom:r,right:i}){return{x:Wy(e.x,n,i),y:Wy(e.y,t,r)}}function $y(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.min<e.max-e.min&&([n,r]=[r,n]),{min:n,max:r}}function pO(e,t){return{x:$y(e.x,t.x),y:$y(e.y,t.y)}}function gO(e,t){let n=.5;const r=dt(e),i=dt(t);return i>r?n=go(t.min,t.max-r,e.min):r>i&&(n=go(e.min,e.max-i,t.min)),Mn(0,1,n)}function vO(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const Af=.35;function yO(e=Af){return e===!1?e=0:e===!0&&(e=Af),{x:Ky(e,"left","right"),y:Ky(e,"top","bottom")}}function Ky(e,t,n){return{min:Gy(e,t),max:Gy(e,n)}}function Gy(e,t){return typeof e=="number"?e:e[t]||0}const wO=new WeakMap;class bO{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=Me(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const s=h=>{n&&this.snapToCursor(Wo(h).point),this.stopAnimation()},a=(h,f)=>{const{drag:m,dragPropagation:w,onDragStart:p}=this.getProps();if(m&&!w&&(this.openDragLock&&this.openDragLock(),this.openDragLock=HN(m),!this.openDragLock))return;this.latestPointerEvent=h,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),wn(v=>{let g=this.getAxisMotionValue(v).get()||0;if(zn.test(g)){const{projection:y}=this.visualElement;if(y&&y.layout){const x=y.layout.layoutBox[v];x&&(g=dt(x)*(parseFloat(g)/100))}}this.originPoint[v]=g}),p&&oe.update(()=>p(h,f),!1,!0),vf(this.visualElement,"transform");const{animationState:b}=this.visualElement;b&&b.setActive("whileDrag",!0)},o=(h,f)=>{this.latestPointerEvent=h,this.latestPanInfo=f;const{dragPropagation:m,dragDirectionLock:w,onDirectionLock:p,onDrag:b}=this.getProps();if(!m&&!this.openDragLock)return;const{offset:v}=f;if(w&&this.currentDirection===null){this.currentDirection=xO(v),this.currentDirection!==null&&p&&p(this.currentDirection);return}this.updateAxis("x",f.point,v),this.updateAxis("y",f.point,v),this.visualElement.render(),b&&oe.update(()=>b(h,f),!1,!0)},l=(h,f)=>{this.latestPointerEvent=h,this.latestPanInfo=f,this.stop(h,f),this.latestPointerEvent=null,this.latestPanInfo=null},c=()=>{const{dragSnapToOrigin:h}=this.getProps();(h||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:d}=this.getProps();this.panSession=new TE(t,{onSessionStart:s,onStart:a,onMove:o,onSessionEnd:l,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:d,distanceThreshold:r,contextWindow:EE(this.visualElement),element:this.visualElement.current})}stop(t,n){const r=t||this.latestPointerEvent,i=n||this.latestPanInfo,s=this.isDragging;if(this.cancel(),!s||!i||!r)return;const{velocity:a}=i;this.startAnimation(a);const{onDragEnd:o}=this.getProps();o&&oe.postRender(()=>o(r,i))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(t,n,r){const{drag:i}=this.getProps();if(!r||!kl(t,i,this.currentDirection))return;const s=this.getAxisMotionValue(t);let a=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(a=fO(a,this.constraints[t],this.elastic[t])),s.set(a)}resolveConstraints(){var s;const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(s=this.visualElement.projection)==null?void 0:s.layout,i=this.constraints;t&&Zi(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=mO(r.layoutBox,t):this.constraints=!1,this.elastic=yO(n),i!==this.constraints&&!Zi(t)&&r&&this.constraints&&!this.hasMutatedConstraints&&wn(a=>{this.constraints!==!1&&this.getAxisMotionValue(a)&&(this.constraints[a]=vO(r.layoutBox[a],this.constraints[a]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Zi(t))return!1;const r=t.current;$s(r!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.","drag-constraints-ref");const{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const s=xM(r,i.root,this.visualElement.getTransformPagePoint());let a=pO(i.layout.layoutBox,s);if(n){const o=n(wM(a));this.hasMutatedConstraints=!!o,o&&(a=GS(o))}return a}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:i,dragTransition:s,dragSnapToOrigin:a,onDragTransitionEnd:o}=this.getProps(),l=this.constraints||{},c=wn(d=>{if(!kl(d,n,this.currentDirection))return;let h=l&&l[d]||{};(a===!0||a===d)&&(h={min:0,max:0});const f=i?200:1e6,m=i?40:1e7,w={type:"inertia",velocity:r?t[d]:0,bounceStiffness:f,bounceDamping:m,timeConstant:750,restDelta:1,restSpeed:10,...s,...h};return this.startAxisValueAnimation(d,w)});return Promise.all(c).then(o)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return vf(this.visualElement,t),r.start(mp(t,r,0,n,this.visualElement,!1))}stopAnimation(){wn(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),i=r[n];return i||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){wn(n=>{const{drag:r}=this.getProps();if(!kl(n,r,this.currentDirection))return;const{projection:i}=this.visualElement,s=this.getAxisMotionValue(n);if(i&&i.layout){const{min:a,max:o}=i.layout.layoutBox[n],l=s.get()||0;s.set(t[n]-he(a,o,.5)+l)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!Zi(n)||!r||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};wn(a=>{const o=this.getAxisMotionValue(a);if(o&&this.constraints!==!1){const l=o.get();i[a]=gO({min:l,max:l},this.constraints[a])}});const{transformTemplate:s}=this.visualElement.getProps();this.visualElement.current.style.transform=s?s({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.constraints=!1,this.resolveConstraints(),wn(a=>{if(!kl(a,t,null))return;const o=this.getAxisMotionValue(a),{min:l,max:c}=this.constraints[a];o.set(he(l,c,i[a]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;wO.set(this.visualElement,this);const t=this.visualElement.current,n=Ua(t,"pointerdown",c=>{const{drag:d,dragListener:h=!0}=this.getProps(),f=c.target,m=f!==t&&XN(f);d&&h&&!m&&this.start(c)});let r;const i=()=>{const{dragConstraints:c}=this.getProps();Zi(c)&&c.current&&(this.constraints=this.resolveRefConstraints(),r||(r=kO(t,c.current,()=>this.scalePositionWithinConstraints())))},{projection:s}=this.visualElement,a=s.addEventListener("measure",i);s&&!s.layout&&(s.root&&s.root.updateScroll(),s.updateLayout()),oe.read(i);const o=wo(window,"resize",()=>this.scalePositionWithinConstraints()),l=s.addEventListener("didUpdate",({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(wn(h=>{const f=this.getAxisMotionValue(h);f&&(this.originPoint[h]+=c[h].translate,f.set(f.get()+c[h].translate))}),this.visualElement.render())});return()=>{o(),n(),a(),l&&l(),r&&r()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:i=!1,dragConstraints:s=!1,dragElastic:a=Af,dragMomentum:o=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:i,dragConstraints:s,dragElastic:a,dragMomentum:o}}}function Hy(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function kO(e,t,n){const r=ey(e,Hy(n)),i=ey(t,Hy(n));return()=>{r(),i()}}function kl(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function xO(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class SO extends Jr{constructor(t){super(t),this.removeGroupControls=Vt,this.removeListeners=Vt,this.controls=new bO(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Vt}update(){const{dragControls:t}=this.node.getProps(),{dragControls:n}=this.node.prevProps||{};t!==n&&(this.removeGroupControls(),t&&(this.removeGroupControls=t.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}const Id=e=>(t,n)=>{e&&oe.update(()=>e(t,n),!1,!0)};class EO extends Jr{constructor(){super(...arguments),this.removePointerDownListener=Vt}onPointerDown(t){this.session=new TE(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:EE(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:i}=this.node.getProps();return{onSessionStart:Id(t),onStart:Id(n),onMove:Id(r),onEnd:(s,a)=>{delete this.session,i&&oe.postRender(()=>i(s,a))}}}mount(){this.removePointerDownListener=Ua(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let Od=!1;class TO extends k.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:i}=this.props,{projection:s}=t;s&&(n.group&&n.group.add(s),r&&r.register&&i&&r.register(s),Od&&s.root.didUpdate(),s.addEventListener("animationComplete",()=>{this.safeToRemove()}),s.setOptions({...s.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),rc.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:i,isPresent:s}=this.props,{projection:a}=r;return a&&(a.isPresent=s,t.layoutDependency!==n&&a.setOptions({...a.options,layoutDependency:n}),Od=!0,i||t.layoutDependency!==n||n===void 0||t.isPresent!==s?a.willUpdate():this.safeToRemove(),t.isPresent!==s&&(s?a.promote():a.relegate()||oe.postRender(()=>{const o=a.getStack();(!o||!o.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{visualElement:t,layoutAnchor:n}=this.props,{projection:r}=t;r&&(r.options.layoutAnchor=n,r.root.didUpdate(),yp.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:i}=t;Od=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),r&&r.deregister&&r.deregister(i))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function CE(e){const[t,n]=mE(),r=k.useContext(ep);return u.jsx(TO,{...e,layoutGroup:r,switchLayoutGroup:k.useContext(xE),isPresent:t,safeToRemove:n})}const AO={pan:{Feature:EO},drag:{Feature:SO,ProjectionNode:fE,MeasureLayout:CE}};
166function qy(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,s=r[i];s&&oe.postRender(()=>s(t,Wo(t)))}class CO extends Jr{mount(){const{current:t}=this.node;t&&(this.unmount=JN(t,(n,r)=>(qy(this.node,r,"Start"),i=>qy(this.node,i,"End"))))}unmount(){}}class _O extends Jr{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Bo(wo(this.node.current,"focus",()=>this.onFocus()),wo(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function Jy(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),s=r[i];s&&oe.postRender(()=>s(t,Wo(t)))}class PO extends Jr{mount(){const{current:t}=this.node;if(!t)return;const{globalTapTarget:n,propagate:r}=this.node.props;this.unmount=tM(t,(i,s)=>(Jy(this.node,s,"Start"),(a,{success:o})=>Jy(this.node,a,o?"End":"Cancel")),{useGlobalTarget:n,stopPropagation:(r==null?void 0:r.tap)===!1})}unmount(){}}const Cf=new WeakMap,Ld=new WeakMap,jO=e=>{const t=Cf.get(e.target);t&&t(e)},RO=e=>{e.forEach(jO)};function zO({root:e,...t}){const n=e||document;Ld.has(n)||Ld.set(n,{});const r=Ld.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(RO,{root:e,...t})),r[i]}function DO(e,t,n){const r=zO(t);return Cf.set(e,n),r.observe(e),()=>{Cf.delete(e),r.unobserve(e)}}const NO={some:0,all:1};class MO extends Jr{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){var l;(l=this.stopObserver)==null||l.call(this);const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:i="some",once:s}=t,a={root:n?n.current:void 0,rootMargin:r,threshold:typeof i=="number"?i:NO[i]},o=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,s&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",d);const{onViewportEnter:h,onViewportLeave:f}=this.node.getProps(),m=d?h:f;m&&m(c)};this.stopObserver=DO(this.node.current,a,o)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(IO(t,n))&&this.startObserver()}unmount(){var t;(t=this.stopObserver)==null||t.call(this),this.hasEnteredView=!1,this.isInView=!1}}function IO({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const OO={inView:{Feature:MO},tap:{Feature:PO},focus:{Feature:_O},hover:{Feature:CO}},LO={layout:{ProjectionNode:fE,MeasureLayout:CE}},FO={...lO,...OO,...AO,...LO},Ei=rO(FO,iO);function BO(e,t,n,r){function i(s){return s instanceof n?s:new n(function(a){a(s)})}return new(n||(n=Promise))(function(s,a){function o(d){try{c(r.next(d))}catch(h){a(h)}}function l(d){try{c(r.throw(d))}catch(h){a(h)}}function c(d){d.done?s(d.value):i(d.value).then(o,l)}c((r=r.apply(e,t||[])).next())})}const UO=e=>e?(...t)=>e(...t):(...t)=>fetch(...t);class _p extends Error{constructor(t,n="FunctionsError",r){super(t),this.name=n,this.context=r}toJSON(){return{name:this.name,message:this.message,context:this.context}}}class VO extends _p{constructor(t){super("Failed to send a request to the Edge Function","FunctionsFetchError",t)}}class Zy extends _p{constructor(t){super("Relay Error invoking the Edge Function","FunctionsRelayError",t)}}class Yy extends _p{constructor(t){super("Edge Function returned a non-2xx status code","FunctionsHttpError",t)}}var _f;(function(e){e.Any="any",e.ApNortheast1="ap-northeast-1",e.ApNortheast2="ap-northeast-2",e.ApSouth1="ap-south-1",e.ApSoutheast1="ap-southeast-1",e.ApSoutheast2="ap-southeast-2",e.CaCentral1="ca-central-1",e.EuCentral1="eu-central-1",e.EuWest1="eu-west-1",e.EuWest2="eu-west-2",e.EuWest3="eu-west-3",e.SaEast1="sa-east-1",e.UsEast1="us-east-1",e.UsWest1="us-west-1",e.UsWest2="us-west-2"})(_f||(_f={}));class WO{constructor(t,{headers:n={},customFetch:r,region:i=_f.Any}={}){this.url=t,this.headers=n,this.region=i,this.fetch=UO(r)}setAuth(t){this.headers.Authorization=`Bearer ${t}`}invoke(t){return BO(this,arguments,void 0,function*(n,r={}){var i;let s,a;try{const{headers:o,method:l,body:c,signal:d,timeout:h}=r;let f={},{region:m}=r;m||(m=this.region);const w=new URL(`${this.url}/${n}`);m&&m!=="any"&&(f["x-region"]=m,w.searchParams.set("forceFunctionRegion",m));let p;c&&(o&&!Object.prototype.hasOwnProperty.call(o,"Content-Type")||!o)?typeof Blob<"u"&&c instanceof Blob||c instanceof ArrayBuffer?(f["Content-Type"]="application/octet-stream",p=c):typeof c=="string"?(f["Content-Type"]="text/plain",p=c):typeof FormData<"u"&&c instanceof FormData?p=c:(f["Content-Type"]="application/json",p=JSON.stringify(c)):c&&typeof c!="string"&&!(typeof Blob<"u"&&c instanceof Blob)&&!(c instanceof ArrayBuffer)&&!(typeof FormData<"u"&&c instanceof FormData)?p=JSON.stringify(c):p=c;let b=d;h&&(a=new AbortController,s=setTimeout(()=>a.abort(),h),d?(b=a.signal,d.addEventListener("abort",()=>a.abort())):b=a.signal);const v=yield this.fetch(w.toString(),{method:l||"POST",headers:Object.assign(Object.assign(Object.assign({},f),this.headers),o),body:p,signal:b}).catch(E=>{throw new VO(E)}),g=v.headers.get("x-relay-error");
166if(g&&g==="true")throw new Zy(v);if(!v.ok)throw new Yy(v);let y=((i=v.headers.get("Content-Type"))!==null&&i!==void 0?i:"text/plain").split(";")[0].trim(),x;return y==="application/json"?x=yield v.json():y==="application/octet-stream"||y==="application/pdf"?x=yield v.blob():y==="text/event-stream"?x=v:y==="multipart/form-data"?x=yield v.formData():x=yield v.text(),{data:x,error:null,response:v}}catch(o){return{data:null,error:o,response:o instanceof Yy||o instanceof Zy?o.context:void 0}}finally{s&&clearTimeout(s)}})}}const _E=3,Qy=e=>Math.min(1e3*2**e,3e4),$O=[520,503],PE=["GET","HEAD","OPTIONS"];var KO=class extends Error{constructor(e){super(e.message),this.name="PostgrestError",this.details=e.details,this.hint=e.hint,this.code=e.code}toJSON(){return{name:this.name,message:this.message,details:this.details,hint:this.hint,code:this.code}}};function Xy(e,t){return new Promise(n=>{if(t!=null&&t.aborted){n();return}const r=setTimeout(()=>{t==null||t.removeEventListener("abort",i),n()},e);function i(){clearTimeout(r),n()}t==null||t.addEventListener("abort",i)})}function GO(e,t,n,r){return!(!r||n>=_E||!PE.includes(e)||!$O.includes(t))}var HO=class{constructor(e){var t,n,r,i,s;this.shouldThrowOnError=!1,this.retryEnabled=!0,this.method=e.method,this.url=e.url,this.headers=new Headers(e.headers),this.schema=e.schema,this.body=e.body,this.shouldThrowOnError=(t=e.shouldThrowOnError)!==null&&t!==void 0?t:!1,this.signal=e.signal,this.isMaybeSingle=(n=e.isMaybeSingle)!==null&&n!==void 0?n:!1,this.shouldStripNulls=(r=e.shouldStripNulls)!==null&&r!==void 0?r:!1,this.urlLengthLimit=(i=e.urlLengthLimit)!==null&&i!==void 0?i:8e3,this.retryEnabled=(s=e.retry)!==null&&s!==void 0?s:!0,e.fetch?this.fetch=e.fetch:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}stripNulls(){if(this.headers.get("Accept")==="text/csv")throw new Error("stripNulls() cannot be used with csv()");return this.shouldStripNulls=!0,this}setHeader(e,t){return this.headers=new Headers(this.headers),this.headers.set(e,t),this}retry(e){return this.retryEnabled=e,this}then(e,t){var n=this;if(this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers.set("Accept-Profile",this.schema):this.headers.set("Content-Profile",this.schema)),this.method!=="GET"&&this.method!=="HEAD"&&this.headers.set("Content-Type","application/json"),this.shouldStripNulls){const a=this.headers.get("Accept");a==="application/vnd.pgrst.object+json"?this.headers.set("Accept","application/vnd.pgrst.object+json;nulls=stripped"):(!a||a==="application/json")&&this.headers.set("Accept","application/vnd.pgrst.array+json;nulls=stripped")}const r=this.fetch;let s=(async()=>{let a=0;for(;;){const c=new Headers(n.headers);a>0&&c.set("X-Retry-Count",String(a));let d;try{d=await r(n.url.toString(),{method:n.method,headers:c,body:JSON.stringify(n.body),signal:n.signal})}catch(h){if((h==null?void 0:h.name)==="AbortError"||(h==null?void 0:h.code)==="ABORT_ERR"||!PE.includes(n.method))throw h;if(n.retryEnabled&&a<_E){const f=Qy(a);a++,await Xy(f,n.signal);continue}throw h}if(GO(n.method,d.status,a,n.retryEnabled)){var o,l;const h=(o=(l=d.headers)===null||l===void 0?void 0:l.get("Retry-After"))!==null&&o!==void 0?o:null,f=h!==null?Math.max(0,parseInt(h,10)||0)*1e3:Qy(a);await d.text(),a++,await Xy(f,n.signal);continue}return await n.processResponse(d)}})();return this.shouldThrowOnError||(s=s.catch(a=>{var o;let l="",c="",d="";const h=a==null?void 0:a.cause;if(h){var f,m,w,p;const g=(f=h==null?void 0:h.message)!==null&&f!==void 0?f:"",y=(m=h==null?void 0:h.code)!==null&&m!==void 0?m:"";l=`${(w=a==null?void 0:a.name)!==null&&w!==void 0?w:"FetchError"}: ${a==null?void 0:a.message}`,l+=` 167 168Caused by: ${(p=h==null?void 0:h.name)!==null&&p!==void 0?p:"Error"}: ${g}`,y&&(l+=` (${y})`),h!=null&&h.stack&&(l+=` 169${h.stack}`)}else{var b;l=(b=a==null?void 0:a.stack)!==null&&b!==void 0?b:""}const v=this.url.toString().length;return(a==null?void 0:a.name)==="AbortError"||(a==null?void 0:a.code)==="ABORT_ERR"?(d="",c="Request was aborted (timeout or manual cancellation)",v>this.urlLengthLimit&&(c+=`. Note: Your request URL is ${v} characters, which may exceed server limits. If selecting many fields, consider using views. If filtering with large arrays (e.g., .in('id', [many IDs])), consider using an RPC function to pass values server-side.`)):((h==null?void 0:h.name)==="HeadersOverflowError"||(h==null?void 0:h.code)==="UND_ERR_HEADERS_OVERFLOW")&&(d="",c="HTTP headers exceeded server limits (typically 16KB)",v>this.urlLengthLimit&&(c+=`. Your request URL is ${v} characters. If selecting many fields, consider using views. If filtering with large arrays (e.g., .in('id', [200+ IDs])), consider using an RPC function instead.`)),{success:!1,error:{message:`${(o=a==null?void 0:a.name)!==null&&o!==void 0?o:"FetchError"}: ${a==null?void 0:a.message}`,details:l,hint:c,code:d},data:null,count:null,status:0,statusText:""}}
169)),s.then(e,t)}async processResponse(e){var t=this;let n=null,r=null,i=null,s=e.status,a=e.statusText;if(e.ok){var o,l;if(t.method!=="HEAD"){var c;const f=await e.text();f===""||(t.headers.get("Accept")==="text/csv"||t.headers.get("Accept")&&(!((c=t.headers.get("Accept"))===null||c===void 0)&&c.includes("application/vnd.pgrst.plan+text"))?r=f:r=JSON.parse(f))}const d=(o=t.headers.get("Prefer"))===null||o===void 0?void 0:o.match(/count=(exact|planned|estimated)/),h=(l=e.headers.get("content-range"))===null||l===void 0?void 0:l.split("/");d&&h&&h.length>1&&(i=parseInt(h[1])),t.isMaybeSingle&&Array.isArray(r)&&(r.length>1?(n={code:"PGRST116",details:`Results contain ${r.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},r=null,i=null,s=406,a="Not Acceptable"):r.length===1?r=r[0]:r=null)}else{const d=await e.text();try{n=JSON.parse(d),Array.isArray(n)&&e.status===404&&(r=[],n=null,s=200,a="OK")}catch{e.status===404&&d===""?(s=204,a="No Content"):n={message:d}}if(n&&t.shouldThrowOnError)throw new KO(n)}return{success:n===null,error:n,data:r,count:i,status:s,statusText:a}}returns(){return this}overrideTypes(){return this}},qO=class extends HO{select(e){let t=!1;const n=(e??"*").split("").map(r=>/\s/.test(r)&&!t?"":(r==='"'&&(t=!t),r)).join("");return this.url.searchParams.set("select",n),this.headers.append("Prefer","return=representation"),this}order(e,{ascending:t=!0,nullsFirst:n,foreignTable:r,referencedTable:i=r}={}){const s=i?`${i}.order`:"order",a=this.url.searchParams.get(s);return this.url.searchParams.set(s,`${a?`${a},`:""}${e}.${t?"asc":"desc"}${n===void 0?"":n?".nullsfirst":".nullslast"}`),this}limit(e,{foreignTable:t,referencedTable:n=t}={}){const r=typeof n>"u"?"limit":`${n}.limit`;return this.url.searchParams.set(r,`${e}`),this}range(e,t,{foreignTable:n,referencedTable:r=n}={}){const i=typeof r>"u"?"offset":`${r}.offset`,s=typeof r>"u"?"limit":`${r}.limit`;return this.url.searchParams.set(i,`${e}`),this.url.searchParams.set(s,`${t-e+1}`),this}abortSignal(e){return this.signal=e,this}single(){return this.headers.set("Accept","application/vnd.pgrst.object+json"),this}maybeSingle(){return this.isMaybeSingle=!0,this}csv(){return this.headers.set("Accept","text/csv"),this}geojson(){return this.headers.set("Accept","application/geo+json"),this}explain({analyze:e=!1,verbose:t=!1,settings:n=!1,buffers:r=!1,wal:i=!1,format:s="text"}={}){var a;const o=[e?"analyze":null,t?"verbose":null,n?"settings":null,r?"buffers":null,i?"wal":null].filter(Boolean).join("|"),l=(a=this.headers.get("Accept"))!==null&&a!==void 0?a:"application/json";return this.headers.set("Accept",`application/vnd.pgrst.plan+${s}; for="${l}"; options=${o};`),s==="json"?this:this}rollback(){return this.headers.append("Prefer","tx=rollback"),this}returns(){return this}maxAffected(e){return this.headers.append("Prefer","handling=strict"),this.headers.append("Prefer",`max-affected=${e}`),this}};const ew=new RegExp("[,()]");var Yi=class extends qO{eq(e,t){return this.url.searchParams.append(e,`eq.${t}`),this}neq(e,t){return this.url.searchParams.append(e,`neq.${t}`),this}gt(e,t){return this.url.searchParams.append(e,`gt.${t}`),this}gte(e,t){return this.url.searchParams.append(e,`gte.${t}`),this}lt(e,t){return this.url.searchParams.append(e,`lt.${t}`),this}lte(e,t){return this.url.searchParams.append(e,`lte.${t}`),this}like(e,t){return this.url.searchParams.append(e,`like.${t}`),this}likeAllOf(e,t){return this.url.searchParams.append(e,`like(all).{${t.join(",")}}`),this}likeAnyOf(e,t){return this.url.searchParams.append(e,`like(any).{${t.join(",")}}`),this}ilike(e,t){return this.url.searchParams.append(e,`ilike.${t}`),this}ilikeAllOf(e,t){return this.url.searchParams.append(e,`ilike(all).{${t.join(",")}}`),this}ilikeAnyOf(e,t){return this.url.searchParams.append(e,`ilike(any).{${t.join(",")}}`),this}regexMatch(e,t){return this.url.searchParams.append(e,`match.${t}`),this}regexIMatch(e,t){return this.url.searchParams.append(e,`imatch.${t}`),this}is(e,t){return this.url.searchParams.append(e,`is.${t}`),this}isDistinct(e,t){return this.url.searchParams.append(e,`isdistinct.${t}`),this}in(e,t){const n=Array.from(new Set(t)).map(r=>typeof r=="string"&&ew.test(r)?`"${r}"`:`${r}`).join(",");return this.url.searchParams.append(e,`in.(${n})`),this}notIn(e,t){const n=Array.from(new Set(t)).map(r=>typeof r=="string"&&ew.test(r)?`"${r}"`:`${r}`).join(",");return this.url.searchParams.append(e,`not.in.(${n})`),this}contains(e,t){return typeof t=="string"?this.url.searchParams.append(e,`cs.${t}`):Array.isArray(t)?this.url.searchParams.append(e,`cs.{${t.join(",")}}`):this.url.searchParams.append(e,`cs.${JSON.stringify(t)}`),this}containedBy(e,t){return typeof t=="string"?this.url.searchParams.append(e,`cd.${t}`):Array.isArray(t)?this.url.searchParams.append(e,`cd.{${t.join(",")}}`):this.url.searchParams.append(e,`cd.${JSON.stringify(t)}`),this}rangeGt(e,t){return this.url.searchParams.append(e,`sr.${t}`),this}rangeGte(e,t){return this.url.searchParams.append(e,`nxl.${t}`),this}rangeLt(e,t){return this.url.searchParams.append(e,`sl.${t}`),this}rangeLte(e,t){return this.url.searchParams.append(e,`nxr.${t}`),this}rangeAdjacent(e,t){return this.url.searchParams.append(e,`adj.${t}`),this}overlaps(e,t){return typeof t=="string"?this.url.searchParams.append(e,`ov.${t}`):this.url.searchParams.append(e,`ov.{${t.join(",")}}`),this}textSearch(e,t,{config:n,type:r}={}){let i="";r==="plain"?i="pl":r==="phrase"?i="ph":r==="websearch"&&(i="w");const s=n===void 0?"":`(${n})`;return this.url.searchParams.append(e,`${i}fts${s}.${t}`),this}match(e){return Object.entries(e).filter(([t,n])=>
169n!==void 0).forEach(([t,n])=>{this.url.searchParams.append(t,`eq.${n}`)}),this}not(e,t,n){return this.url.searchParams.append(e,`not.${t}.${n}`),this}or(e,{foreignTable:t,referencedTable:n=t}={}){const r=n?`${n}.or`:"or";return this.url.searchParams.append(r,`(${e})`),this}filter(e,t,n){return this.url.searchParams.append(e,`${t}.${n}`),this}},JO=class{constructor(e,{headers:t={},schema:n,fetch:r,urlLengthLimit:i=8e3,retry:s}){this.url=e,this.headers=new Headers(t),this.schema=n,this.fetch=r,this.urlLengthLimit=i,this.retry=s}cloneRequestState(){return{url:new URL(this.url.toString()),headers:new Headers(this.headers)}}select(e,t){const{head:n=!1,count:r}=t??{},i=n?"HEAD":"GET";let s=!1;const a=(e??"*").split("").map(c=>/\s/.test(c)&&!s?"":(c==='"'&&(s=!s),c)).join(""),{url:o,headers:l}=this.cloneRequestState();return o.searchParams.set("select",a),r&&l.append("Prefer",`count=${r}`),new Yi({method:i,url:o,headers:l,schema:this.schema,fetch:this.fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}insert(e,{count:t,defaultToNull:n=!0}={}){var r;const i="POST",{url:s,headers:a}=this.cloneRequestState();if(t&&a.append("Prefer",`count=${t}`),n||a.append("Prefer","missing=default"),Array.isArray(e)){const o=e.reduce((l,c)=>l.concat(Object.keys(c)),[]);if(o.length>0){const l=[...new Set(o)].map(c=>`"${c}"`);s.searchParams.set("columns",l.join(","))}}return new Yi({method:i,url:s,headers:a,schema:this.schema,body:e,fetch:(r=this.fetch)!==null&&r!==void 0?r:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}upsert(e,{onConflict:t,ignoreDuplicates:n=!1,count:r,defaultToNull:i=!0}={}){var s;const a="POST",{url:o,headers:l}=this.cloneRequestState();if(l.append("Prefer",`resolution=${n?"ignore":"merge"}-duplicates`),t!==void 0&&o.searchParams.set("on_conflict",t),r&&l.append("Prefer",`count=${r}`),i||l.append("Prefer","missing=default"),Array.isArray(e)){const c=e.reduce((d,h)=>d.concat(Object.keys(h)),[]);if(c.length>0){const d=[...new Set(c)].map(h=>`"${h}"`);o.searchParams.set("columns",d.join(","))}}return new Yi({method:a,url:o,headers:l,schema:this.schema,body:e,fetch:(s=this.fetch)!==null&&s!==void 0?s:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}update(e,{count:t}={}){var n;const r="PATCH",{url:i,headers:s}=this.cloneRequestState();return t&&s.append("Prefer",`count=${t}`),new Yi({method:r,url:i,headers:s,schema:this.schema,body:e,fetch:(n=this.fetch)!==null&&n!==void 0?n:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}delete({count:e}={}){var t;const n="DELETE",{url:r,headers:i}=this.cloneRequestState();return e&&i.append("Prefer",`count=${e}`),new Yi({method:n,url:r,headers:i,schema:this.schema,fetch:(t=this.fetch)!==null&&t!==void 0?t:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}};function bo(e){"@babel/helpers - typeof";return bo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},bo(e)}function ZO(e,t){if(bo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(bo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function YO(e){var t=ZO(e,"string");return bo(t)=="symbol"?t:t+""}function QO(e,t,n){return(t=YO(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function tw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function xl(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?tw(Object(n),!0).forEach(function(r){QO(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tw(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}var XO=class jE{constructor(t,{headers:n={},schema:r,fetch:i,timeout:s,urlLengthLimit:a=8e3,retry:o}={}){this.url=t,this.headers=new Headers(n),this.schemaName=r,this.urlLengthLimit=a;const l=i??globalThis.fetch;s!==void 0&&s>0?this.fetch=(c,d)=>{const h=new AbortController,f=setTimeout(()=>h.abort(),s),m=d==null?void 0:d.signal;if(m){if(m.aborted)return clearTimeout(f),l(c,d);const w=()=>{clearTimeout(f),h.abort()};return m.addEventListener("abort",w,{once:!0}),l(c,xl(xl({},d),{},{signal:h.signal})).finally(()=>{clearTimeout(f),m.removeEventListener("abort",w)})}return l(c,xl(xl({},d),{},{signal:h.signal})).finally(()=>clearTimeout(f))}:this.fetch=l,this.retry=o}from(t){if(!t||typeof t!="string"||t.trim()==="")throw new Error("Invalid relation name: relation must be a non-empty string.");return new JO(new URL(`${this.url}/${t}`),{headers:new Headers(this.headers),schema:this.schemaName,fetch:this.fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}schema(t){return new jE(this.url,{headers:this.headers,schema:t,fetch:this.fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}rpc(t,n={},{head:r=!1,get:i=!1,count:s}={}){var a;let o;const l=new URL(`${this.url}/rpc/${t}`);let c;const d=m=>m!==null&&typeof m=="object"&&(!Array.isArray(m)||m.some(d)),h=r&&Object.values(n).some(d);h?(o="POST",c=n):r||i?(o=r?"HEAD":"GET",Object.entries(n).filter(([m,w])=>w!==void 0).map(([m,w])=>[m,Array.isArray(w)?`{${w.join(",")}}`:`${w}
169`]).forEach(([m,w])=>{l.searchParams.append(m,w)})):(o="POST",c=n);const f=new Headers(this.headers);return h?f.set("Prefer",s?`count=${s},return=minimal`:"return=minimal"):s&&f.set("Prefer",`count=${s}`),new Yi({method:o,url:l,headers:f,schema:this.schemaName,body:c,fetch:(a=this.fetch)!==null&&a!==void 0?a:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}};class e2{constructor(){}static detectEnvironment(){var t;if(typeof WebSocket<"u")return{type:"native",constructor:WebSocket};if(typeof globalThis<"u"&&typeof globalThis.WebSocket<"u")return{type:"native",constructor:globalThis.WebSocket};if(typeof global<"u"&&typeof global.WebSocket<"u")return{type:"native",constructor:global.WebSocket};if(typeof globalThis<"u"&&typeof globalThis.WebSocketPair<"u"&&typeof globalThis.WebSocket>"u")return{type:"cloudflare",error:"Cloudflare Workers detected. WebSocket clients are not supported in Cloudflare Workers.",workaround:"Use Cloudflare Workers WebSocket API for server-side WebSocket handling, or deploy to a different runtime."};if(typeof globalThis<"u"&&globalThis.EdgeRuntime||typeof navigator<"u"&&(!((t=navigator.userAgent)===null||t===void 0)&&t.includes("Vercel-Edge")))return{type:"unsupported",error:"Edge runtime detected (Vercel Edge/Netlify Edge). WebSockets are not supported in edge functions.",workaround:"Use serverless functions or a different deployment target for WebSocket functionality."};const n=globalThis.process;if(n){const r=n.versions;if(r&&r.node){const i=r.node,s=parseInt(i.replace(/^v/,"").split(".")[0]);return s>=22?typeof globalThis.WebSocket<"u"?{type:"native",constructor:globalThis.WebSocket}:{type:"unsupported",error:`Node.js ${s} detected but native WebSocket not found.`,workaround:"Provide a WebSocket implementation via the transport option."}:{type:"unsupported",error:`Node.js ${s} detected without native WebSocket support.`,workaround:`For Node.js < 22, install "ws" package and provide it via the transport option: 170import ws from "ws" 171new RealtimeClient(url, { transport: ws })`}}}return{type:"unsupported",error:"Unknown JavaScript runtime without WebSocket support.",workaround:"Ensure you're running in a supported environment (browser, Node.js, Deno) or provide a custom WebSocket implementation."}}static getWebSocketConstructor(){const t=this.detectEnvironment();if(t.constructor)return t.constructor;let n=t.error||"WebSocket not supported in this environment.";throw t.workaround&&(n+=` 172 173Suggested solution: ${t.workaround}`),new Error(n)}static isWebSocketSupported(){try{const t=this.detectEnvironment();return t.type==="native"||t.type==="ws"}catch{return!1}}}const t2="2.103.0",n2=`realtime-js/${t2}`,r2="1.0.0",RE="2.0.0",i2=RE,s2=1e4,a2=100,br={closed:"closed",errored:"errored",joined:"joined",joining:"joining",leaving:"leaving"},zE={close:"phx_close",error:"phx_error",join:"phx_join",reply:"phx_reply",leave:"phx_leave",access_token:"access_token"},Pf={connecting:"connecting",open:"open",closing:"closing",closed:"closed"};class o2{constructor(t){this.HEADER_LENGTH=1,this.USER_BROADCAST_PUSH_META_LENGTH=6,this.KINDS={userBroadcastPush:3,userBroadcast:4},this.BINARY_ENCODING=0,this.JSON_ENCODING=1,this.BROADCAST_EVENT="broadcast",this.allowedMetadataKeys=[],this.allowedMetadataKeys=t??[]}encode(t,n){if(t.event===this.BROADCAST_EVENT&&!(t.payload instanceof ArrayBuffer)&&typeof t.payload.event=="string")return n(this._binaryEncodeUserBroadcastPush(t));let r=[t.join_ref,t.ref,t.topic,t.event,t.payload];return n(JSON.stringify(r))}_binaryEncodeUserBroadcastPush(t){var n;return this._isArrayBuffer((n=t.payload)===null||n===void 0?void 0:n.payload)?this._encodeBinaryUserBroadcastPush(t):this._encodeJsonUserBroadcastPush(t)}_encodeBinaryUserBroadcastPush(t){var n,r;const i=(r=(n=t.payload)===null||n===void 0?void 0:n.payload)!==null&&r!==void 0?r:new ArrayBuffer(0);return this._encodeUserBroadcastPush(t,this.BINARY_ENCODING,i)}_encodeJsonUserBroadcastPush(t){var n,r;const i=(r=(n=t.payload)===null||n===void 0?void 0:n.payload)!==null&&r!==void 0?r:{},a=new TextEncoder().encode(JSON.stringify(i)).buffer;return this._encodeUserBroadcastPush(t,this.JSON_ENCODING,a)}_encodeUserBroadcastPush(t,n,r){var i,s;const a=t.topic,o=(i=t.ref)!==null&&i!==void 0?i:"",l=(s=t.join_ref)!==null&&s!==void 0?s:"",c=t.payload.event,d=this.allowedMetadataKeys?this._pick(t.payload,this.allowedMetadataKeys):{},h=Object.keys(d).length===0?"":JSON.stringify(d);if(l.length>255)throw new Error(`joinRef length ${l.length} exceeds maximum of 255`);if(o.length>255)throw new Error(`ref length ${o.length} exceeds maximum of 255`);if(a.length>255)throw new Error(`topic length ${a.length} exceeds maximum of 255`);if(c.length>255)throw new Error(`userEvent length ${c.length} exceeds maximum of 255`);if(h.length>255)throw new Error(`metadata length ${h.length} exceeds maximum of 255`);const f=this.USER_BROADCAST_PUSH_META_LENGTH+l.length+o.length+a.length+c.length+h.length,m=new ArrayBuffer(this.HEADER_LENGTH+f);let w=new DataView(m),p=0;w.setUint8(p++,this.KINDS.userBroadcastPush),w.setUint8(p++,l.length),w.setUint8(p++,o.length),w.setUint8(p++,a.length),w.setUint8(p++,c.length),w.setUint8(p++,h.length),w.setUint8(p++,n),Array.from(l,v=>w.setUint8(p++,v.charCodeAt(0))),Array.from(o,v=>w.setUint8(p++,v.charCodeAt(0))),Array.from(a,v=>w.setUint8(p++,v.charCodeAt(0))),Array.from(c,v=>w.setUint8(p++,v.charCodeAt(0))),Array.from(h,v=>w.setUint8(p++,v.charCodeAt(0)));var b=new Uint8Array(m.byteLength+r.byteLength);return b.set(new Uint8Array(m),0),b.set(new Uint8Array(r),m.byteLength),b.buffer}decode(t,n){if(this._isArrayBuffer(t)){let r=this._binaryDecode(t);return n(r)}if(typeof t=="string"){const r=JSON.parse(t),[i,s,a,o,l]=r;
173return n({join_ref:i,ref:s,topic:a,event:o,payload:l})}return n({})}_binaryDecode(t){const n=new DataView(t),r=n.getUint8(0),i=new TextDecoder;switch(r){case this.KINDS.userBroadcast:return this._decodeUserBroadcast(t,n,i)}}_decodeUserBroadcast(t,n,r){const i=n.getUint8(1),s=n.getUint8(2),a=n.getUint8(3),o=n.getUint8(4);let l=this.HEADER_LENGTH+4;const c=r.decode(t.slice(l,l+i));l=l+i;const d=r.decode(t.slice(l,l+s));l=l+s;const h=r.decode(t.slice(l,l+a));l=l+a;const f=t.slice(l,t.byteLength),m=o===this.JSON_ENCODING?JSON.parse(r.decode(f)):f,w={type:this.BROADCAST_EVENT,event:d,payload:m};return a>0&&(w.meta=JSON.parse(h)),{join_ref:null,ref:null,topic:c,event:this.BROADCAST_EVENT,payload:w}}_isArrayBuffer(t){var n;return t instanceof ArrayBuffer||((n=t==null?void 0:t.constructor)===null||n===void 0?void 0:n.name)==="ArrayBuffer"}_pick(t,n){return!t||typeof t!="object"?{}:Object.fromEntries(Object.entries(t).filter(([r])=>n.includes(r)))}}var le;(function(e){e.abstime="abstime",e.bool="bool",e.date="date",e.daterange="daterange",e.float4="float4",e.float8="float8",e.int2="int2",e.int4="int4",e.int4range="int4range",e.int8="int8",e.int8range="int8range",e.json="json",e.jsonb="jsonb",e.money="money",e.numeric="numeric",e.oid="oid",e.reltime="reltime",e.text="text",e.time="time",e.timestamp="timestamp",e.timestamptz="timestamptz",e.timetz="timetz",e.tsrange="tsrange",e.tstzrange="tstzrange"})(le||(le={}));const nw=(e,t,n={})=>{var r;const i=(r=n.skipTypes)!==null&&r!==void 0?r:[];return t?Object.keys(t).reduce((s,a)=>(s[a]=l2(a,e,t,i),s),{}):{}},l2=(e,t,n,r)=>{const i=t.find(o=>o.name===e),s=i==null?void 0:i.type,a=n[e];return s&&!r.includes(s)?DE(s,a):jf(a)},DE=(e,t)=>{if(e.charAt(0)==="_"){const n=e.slice(1,e.length);return h2(t,n)}switch(e){case le.bool:return c2(t);case le.float4:case le.float8:case le.int2:case le.int4:case le.int8:case le.numeric:case le.oid:return u2(t);case le.json:case le.jsonb:return d2(t);case le.timestamp:return f2(t);case le.abstime:case le.date:case le.daterange:case le.int4range:case le.int8range:case le.money:case le.reltime:case le.text:case le.time:case le.timestamptz:case le.timetz:case le.tsrange:case le.tstzrange:return jf(t);default:return jf(t)}},jf=e=>e,c2=e=>{switch(e){case"t":return!0;case"f":return!1;default:return e}},u2=e=>{if(typeof e=="string"){const t=parseFloat(e);if(!Number.isNaN(t))return t}return e},d2=e=>{if(typeof e=="string")try{return JSON.parse(e)}catch{return e}return e},h2=(e,t)=>{if(typeof e!="string")return e;const n=e.length-1,r=e[n];if(e[0]==="{"&&r==="}"){let s;const a=e.slice(1,n);try{s=JSON.parse("["+a+"]")}catch{s=a?a.split(","):[]}return s.map(o=>DE(t,o))}return e},f2=e=>typeof e=="string"?e.replace(" ","T"):e,NE=e=>{const t=new URL(e);return t.protocol=t.protocol.replace(/^ws/i,"http"),t.pathname=t.pathname.replace(/\/+$/,"").replace(/\/socket\/websocket$/i,"").replace(/\/socket$/i,"").replace(/\/websocket$/i,""),t.pathname===""||t.pathname==="/"?t.pathname="/api/broadcast":t.pathname=t.pathname+"/api/broadcast",t.href};var Va=e=>typeof e=="function"?e:function(){return e},m2=typeof self<"u"?self:null,Qi=typeof window<"u"?window:null,bn=m2||Qi||globalThis,p2="2.0.0",g2=1e4,v2=1e3,Tn={connecting:0,open:1,closing:2,closed:3},gt={closed:"closed",errored:"errored",joined:"joined",joining:"joining",leaving:"leaving"},Un={close:"phx_close",error:"phx_error",join:"phx_join",reply:"phx_reply",leave:"phx_leave"},Rf={longpoll:"longpoll",websocket:"websocket"},y2={complete:4},zf="base64url.bearer.phx.",Sl=class{constructor(e,t,n,r){this.channel=e,this.event=t,this.payload=n||function(){return{}},this.receivedResp=null,this.timeout=r,this.timeoutTimer=null,this.recHooks=[],this.sent=!1,this.ref=void 0}resend(e){this.timeout=e,this.reset(),this.send()}send(){this.hasReceived("timeout")||(this.startTimeout(),this.sent=!0,this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload(),ref:this.ref,join_ref:this.channel.joinRef()}))}receive(e,t){return this.hasReceived(e)&&t(this.receivedResp.response),this.recHooks.push({status:e,callback:t}),this}reset(){this.cancelRefEvent(),this.ref=null,this.refEvent=null,this.receivedResp=null,this.sent=!1}destroy(){this.cancelRefEvent(),this.cancelTimeout()}
vendor: 8,135 bytes, line 173
173matchReceive({status:e,response:t,_ref:n}){this.recHooks.filter(r=>r.status===e).forEach(r=>r.callback(t))}cancelRefEvent(){this.refEvent&&this.channel.off(this.refEvent)}cancelTimeout(){clearTimeout(this.timeoutTimer),this.timeoutTimer=null}startTimeout(){this.timeoutTimer&&this.cancelTimeout(),this.ref=this.channel.socket.makeRef(),this.refEvent=this.channel.replyEventName(this.ref),this.channel.on(this.refEvent,e=>{this.cancelRefEvent(),this.cancelTimeout(),this.receivedResp=e,this.matchReceive(e)}),this.timeoutTimer=setTimeout(()=>{this.trigger("timeout",{})},this.timeout)}hasReceived(e){return this.receivedResp&&this.receivedResp.status===e}trigger(e,t){this.channel.trigger(this.refEvent,{status:e,response:t})}},ME=class{constructor(e,t){this.callback=e,this.timerCalc=t,this.timer=void 0,this.tries=0}reset(){this.tries=0,clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.tries=this.tries+1,this.callback()},this.timerCalc(this.tries+1))}},w2=class{constructor(e,t,n){this.state=gt.closed,this.topic=e,this.params=Va(t||{}),this.socket=n,this.bindings=[],this.bindingRef=0,this.timeout=this.socket.timeout,this.joinedOnce=!1,this.joinPush=new Sl(this,Un.join,this.params,this.timeout),this.pushBuffer=[],this.stateChangeRefs=[],this.rejoinTimer=new ME(()=>{this.socket.isConnected()&&this.rejoin()},this.socket.rejoinAfterMs),this.stateChangeRefs.push(this.socket.onError(()=>this.rejoinTimer.reset())),this.stateChangeRefs.push(this.socket.onOpen(()=>{this.rejoinTimer.reset(),this.isErrored()&&this.rejoin()})),this.joinPush.receive("ok",()=>{this.state=gt.joined,this.rejoinTimer.reset(),this.pushBuffer.forEach(r=>r.send()),this.pushBuffer=[]}),this.joinPush.receive("error",r=>{this.state=gt.errored,this.socket.hasLogger()&&this.socket.log("channel",`error ${this.topic}`,r),this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.onClose(()=>{this.rejoinTimer.reset(),this.socket.hasLogger()&&this.socket.log("channel",`close ${this.topic}`),this.state=gt.closed,this.socket.remove(this)}),this.onError(r=>{this.socket.hasLogger()&&this.socket.log("channel",`error ${this.topic}`,r),this.isJoining()&&this.joinPush.reset(),this.state=gt.errored,this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.joinPush.receive("timeout",()=>{this.socket.hasLogger()&&this.socket.log("channel",`timeout ${this.topic}`,this.joinPush.timeout),new Sl(this,Un.leave,Va({}),this.timeout).send(),this.state=gt.errored,this.joinPush.reset(),this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.on(Un.reply,(r,i)=>{this.trigger(this.replyEventName(i),r)})}join(e=this.timeout){if(this.joinedOnce)throw new Error("tried to join multiple times. 'join' can only be called a single time per channel instance");return this.timeout=e,this.joinedOnce=!0,this.rejoin(),this.joinPush}teardown(){this.pushBuffer.forEach(e=>e.destroy()),this.pushBuffer=[],this.rejoinTimer.reset(),this.joinPush.destroy(),this.state=gt.closed,this.bindings=[]}onClose(e){this.on(Un.close,e)}onError(e){return this.on(Un.error,t=>e(t))}on(e,t){let n=this.bindingRef++;return this.bindings.push({event:e,ref:n,callback:t}),n}off(e,t){this.bindings=this.bindings.filter(n=>!(n.event===e&&(typeof t>"u"||t===n.ref)))}canPush(){return this.socket.isConnected()&&this.isJoined()}push(e,t,n=this.timeout){if(t=t||{},!this.joinedOnce)throw new Error(`tried to push '${e}' to '${this.topic}' before joining. Use channel.join() before pushing events`);let r=new Sl(this,e,function(){return t},n);return this.canPush()?r.send():(r.startTimeout(),this.pushBuffer.push(r)),r}leave(e=this.timeout){this.rejoinTimer.reset(),this.joinPush.cancelTimeout(),this.state=gt.leaving;let t=()=>{this.socket.hasLogger()&&this.socket.log("channel",`leave ${this.topic}`),this.trigger(Un.close,"leave")},n=new Sl(this,Un.leave,Va({}),e);return n.receive("ok",()=>t()).receive("timeout",()=>t()),n.send(),this.canPush()||n.trigger("ok",{}),n}onMessage(e,t,n){return t}filterBindings(e,t,n){return!0}isMember(e,t,n,r){return this.topic!==e?!1:r&&r!==this.joinRef()?(this.socket.hasLogger()&&this.socket.log("channel","dropping outdated message",{topic:e,event:t,payload:n,joinRef:r}),!1):!0}joinRef(){return this.joinPush.ref}rejoin(e=this.timeout){this.isLeaving()||(this.socket.leaveOpenTopic(this.topic),this.state=gt.joining,this.joinPush.resend(e))}trigger(e,t,n,r){let i=this.onMessage(e,t,n,r);if(t&&!i)throw new Error("channel onMessage callbacks must return the payload, modified or unmodified");let s=this.bindings.filter(a=>a.event===e&&this.filterBindings(a,t,n));for(let a=0;a<s.length;a++)s[a].callback(i,n,r||this.joinRef())}replyEventName(e){return`chan_reply_${e}`}isClosed(){return this.state===gt.closed}isErrored(){return this.state===gt.errored}isJoined(){return this.state===gt.joined}isJoining(){return this.state===gt.joining}isLeaving(){return this.state===gt.leaving}},Gc=class{static request(e,t,n,r,i,s,a){if(bn.XDomainRequest){let o=new bn.XDomainRequest;return this.xdomainRequest(o,e,t,r,i,s,a)}else if(bn.XMLHttpRequest){let o=new bn.XMLHttpRequest;return this.xhrRequest(o,e,t,n,r,i,s,a)}else{if(bn.fetch&&bn.AbortController)return this.fetchRequest(e,t,n,r,i,s,a);throw new Error("No suitable XMLHttpRequest implementation found")}}static fetchRequest(e,t,n,r,i,s,a){let o={method:e,headers:n,body:r},l=null;return i&&(l=new AbortController,setTimeout(()=>l.abort(),i),o.signal=l.signal),bn.fetch(t,o).then(c=>c.text()).then(c=>this.parseJSON(c)).then(c=>a&&a(c)).catch(c=>{c.name==="AbortError"&&s?s():a&&a(null)}),l}static xdomainRequest(e,t,n,r,i,s,a){return e.timeout=i,e.open(t,n),e.onload=()=>{let o=this.parseJSON(e.responseText);a&&a(o)},s&&(e.ontimeout=s),e.onprogress=()=>{},e.send(r),e}static xhrRequest(e,t,n,r,i,s,a,o){e.open(t,n,!0),e.timeout=s;for(let[l,c]of Object.entries(r))e.setRequestHeader(l,c);return e.onerror=()=>o&&o(null),e.onreadystatechange=()=>{if(e.readyState===y2.complete&&o){let l=this.parseJSON(e.responseText);o(l)}},a&&(e.ontimeout=a),e.send(i),e}static parseJSON(e){if(!e||e==="")return null;try{return JSON.parse(e)}catch{return console&&console.log("failed to parse JSON response",e),null}}static serialize(e,t){let n=[];for(var r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue;let i=t?`${t}[${r}]`:r,s=e[r];typeof s=="object"?n.push(this.serialize(s,i)):n.push(encodeURIComponent(i)+"="+encodeURIComponent(s))}return n.join("&")}static appendParams(e,t){if(Object.keys(t).length===0)return e;let n=e.match(/\?/)?"&":"?";return`${e}${n}${this.serialize(t)}`}},b2=e=>{let t="",n=new Uint8Array(e),r=n.byteLength;for(let i=0;i<r;i++)t+=String.fromCharCode(n[i]);return btoa(t)},Ui=class{constructor(e,t){t&&t.length===2&&t[1].startsWith(zf)&&(this.authToken=atob(t[1].slice(zf.length))),this.endPoint=null,this.token=null,this.skipHeartbeat=!0,this.reqs=new Set,this.awaitingBatchAck=!1,this.currentBatch=null,this.currentBatchTimer=null,this.batchBuffer=[],this.onopen=function(){},this.onerror=function(){},this.onmessage=function(){},this.onclose=function(){},this.pollEndpoint=this.normalizeEndpoint(e),this.readyState=Tn.connecting,setTimeout(()=>this.poll(),0)}normalizeEndpoint(e){return e.replace("ws://","http://").replace("wss://","https://").replace(new RegExp("(.*)/"+Rf.websocket),"$1/"+Rf.longpoll)}endpointURL(){return Gc.appendParams(this.pollEndpoint,{token:this.token})}closeAndRetry(e,t,n){this.close(e,t,n),this.readyState=Tn.connecting}ontimeout(){this.onerror("timeout"),this.closeAndRetry(1005,"timeout",!1)}isActive(){return this.readyState===Tn.open||this.readyState===Tn.connecting}poll(){const e={Accept:"application/json"};this.authToken&&(e["X-Phoenix-AuthToken"]=this.authToken),this.ajax("GET",e,null,()=>this.ontimeout(),t=>{if(t){var{status:n,token:r,messages:i}=t;if(n===410&&this.token!==null){this.onerror(410),this.closeAndRetry(3410,"session_gone",!1);return}this.token=r}else n=0;switch(n){case 200:i.forEach(s=>{setTimeout(()=>this.onmessage({data:s}),0)}),this.poll();break;case 204:this.poll();break;case 410:this.readyState=Tn.open,this.onopen({}),this.poll();break;
173case 403:this.onerror(403),this.close(1008,"forbidden",!1);break;case 0:case 500:this.onerror(500),this.closeAndRetry(1011,"internal server error",500);break;default:throw new Error(`unhandled poll status ${n}`)}})}send(e){typeof e!="string"&&(e=b2(e)),this.currentBatch?this.currentBatch.push(e):this.awaitingBatchAck?this.batchBuffer.push(e):(this.currentBatch=[e],this.currentBatchTimer=setTimeout(()=>{this.batchSend(this.currentBatch),this.currentBatch=null},0))}batchSend(e){this.awaitingBatchAck=!0,this.ajax("POST",{"Content-Type":"application/x-ndjson"},e.join(` 174`),()=>this.onerror("timeout"),t=>{this.awaitingBatchAck=!1,!t||t.status!==200?(this.onerror(t&&t.status),this.closeAndRetry(1011,"internal server error",!1)):this.batchBuffer.length>0&&(this.batchSend(this.batchBuffer),this.batchBuffer=[])})}close(e,t,n){for(let i of this.reqs)i.abort();this.readyState=Tn.closed;let r=Object.assign({code:1e3,reason:void 0,wasClean:!0},{code:e,reason:t,wasClean:n});this.batchBuffer=[],clearTimeout(this.currentBatchTimer),this.currentBatchTimer=null,typeof CloseEvent<"u"?this.onclose(new CloseEvent("close",r)):this.onclose(r)}ajax(e,t,n,r,i){let s,a=()=>{this.reqs.delete(s),r()};s=Gc.request(e,this.endpointURL(),t,n,this.timeout,a,o=>{this.reqs.delete(s),this.isActive()&&i(o)}),this.reqs.add(s)}},k2=class Aa{constructor(t,n={}){let r=n.events||{state:"presence_state",diff:"presence_diff"};this.state={},this.pendingDiffs=[],this.channel=t,this.joinRef=null,this.caller={onJoin:function(){},onLeave:function(){},onSync:function(){}},this.channel.on(r.state,i=>{let{onJoin:s,onLeave:a,onSync:o}=this.caller;this.joinRef=this.channel.joinRef(),this.state=Aa.syncState(this.state,i,s,a),this.pendingDiffs.forEach(l=>{this.state=Aa.syncDiff(this.state,l,s,a)}),this.pendingDiffs=[],o()}),this.channel.on(r.diff,i=>{let{onJoin:s,onLeave:a,onSync:o}=this.caller;this.inPendingSyncState()?this.pendingDiffs.push(i):(this.state=Aa.syncDiff(this.state,i,s,a),o())})}onJoin(t){this.caller.onJoin=t}onLeave(t){this.caller.onLeave=t}onSync(t){this.caller.onSync=t}list(t){return Aa.list(this.state,t)}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel.joinRef()}static syncState(t,n,r,i){let s=this.clone(t),a={},o={};return this.map(s,(l,c)=>{n[l]||(o[l]=c)}),this.map(n,(l,c)=>{let d=s[l];if(d){let h=c.metas.map(p=>p.phx_ref),f=d.metas.map(p=>p.phx_ref),m=c.metas.filter(p=>f.indexOf(p.phx_ref)<0),w=d.metas.filter(p=>h.indexOf(p.phx_ref)<0);m.length>0&&(a[l]=c,a[l].metas=m),w.length>0&&(o[l]=this.clone(d),o[l].metas=w)}else a[l]=c}),this.syncDiff(s,{joins:a,leaves:o},r,i)}static syncDiff(t,n,r,i){let{joins:s,leaves:a}=this.clone(n);return r||(r=function(){}),i||(i=function(){}),this.map(s,(o,l)=>{let c=t[o];if(t[o]=this.clone(l),c){let d=t[o].metas.map(f=>f.phx_ref),h=c.metas.filter(f=>d.indexOf(f.phx_ref)<0);t[o].metas.unshift(...h)}r(o,c,l)}),this.map(a,(o,l)=>{let c=t[o];if(!c)return;let d=l.metas.map(h=>h.phx_ref);c.metas=c.metas.filter(h=>d.indexOf(h.phx_ref)<0),i(o,c,l),c.metas.length===0&&delete t[o]}),t}static list(t,n){return n||(n=function(r,i){return i}),this.map(t,(r,i)=>n(r,i))}static map(t,n){return Object.getOwnPropertyNames(t).map(r=>n(r,t[r]))}static clone(t){return JSON.parse(JSON.stringify(t))}},El={HEADER_LENGTH:1,META_LENGTH:4,KINDS:{push:0,reply:1,broadcast:2},encode(e,t){if(e.payload.constructor===ArrayBuffer)return t(this.binaryEncode(e));{let n=[e.join_ref,e.ref,e.topic,e.event,e.payload];return t(JSON.stringify(n))}},decode(e,t){if(e.constructor===ArrayBuffer)return t(this.binaryDecode(e));{let[n,r,i,s,a]=JSON.parse(e);return t({join_ref:n,ref:r,topic:i,event:s,payload:a})}},binaryEncode(e){let{join_ref:t,ref:n,event:r,topic:i,payload:s}=e,a=this.META_LENGTH+t.length+n.length+i.length+r.length,o=new ArrayBuffer(this.HEADER_LENGTH+a),l=new DataView(o),c=0;l.setUint8(c++,this.KINDS.push),l.setUint8(c++,t.length),l.setUint8(c++,n.length),l.setUint8(c++,i.length),l.setUint8(c++,r.length),Array.from(t,h=>l.setUint8(c++,h.charCodeAt(0))),Array.from(n,h=>l.setUint8(c++,h.charCodeAt(0))),Array.from(i,h=>l.setUint8(c++,h.charCodeAt(0))),Array.from(r,h=>l.setUint8(c++,h.charCodeAt(0)));var d=new Uint8Array(o.byteLength+s.byteLength);return d.set(new Uint8Array(o),0),d.set(new Uint8Array(s),o.byteLength),d.buffer},binaryDecode(e){let t=new DataView(e),n=t.getUint8(0),r=new TextDecoder;switch(n){case this.KINDS.push:return this.decodePush(e,t,r);case this.KINDS.reply:return this.decodeReply(e,t,r);case this.KINDS.broadcast:return this.decodeBroadcast(e,t,r)}}
vendor: 8,419 bytes, line 174
174,decodePush(e,t,n){let r=t.getUint8(1),i=t.getUint8(2),s=t.getUint8(3),a=this.HEADER_LENGTH+this.META_LENGTH-1,o=n.decode(e.slice(a,a+r));a=a+r;let l=n.decode(e.slice(a,a+i));a=a+i;let c=n.decode(e.slice(a,a+s));a=a+s;let d=e.slice(a,e.byteLength);return{join_ref:o,ref:null,topic:l,event:c,payload:d}},decodeReply(e,t,n){let r=t.getUint8(1),i=t.getUint8(2),s=t.getUint8(3),a=t.getUint8(4),o=this.HEADER_LENGTH+this.META_LENGTH,l=n.decode(e.slice(o,o+r));o=o+r;let c=n.decode(e.slice(o,o+i));o=o+i;let d=n.decode(e.slice(o,o+s));o=o+s;let h=n.decode(e.slice(o,o+a));o=o+a;let f=e.slice(o,e.byteLength),m={status:h,response:f};return{join_ref:l,ref:c,topic:d,event:Un.reply,payload:m}},decodeBroadcast(e,t,n){let r=t.getUint8(1),i=t.getUint8(2),s=this.HEADER_LENGTH+2,a=n.decode(e.slice(s,s+r));s=s+r;let o=n.decode(e.slice(s,s+i));s=s+i;let l=e.slice(s,e.byteLength);return{join_ref:null,ref:null,topic:a,event:o,payload:l}}},x2=class{constructor(e,t={}){this.stateChangeCallbacks={open:[],close:[],error:[],message:[]},this.channels=[],this.sendBuffer=[],this.ref=0,this.fallbackRef=null,this.timeout=t.timeout||g2,this.transport=t.transport||bn.WebSocket||Ui,this.conn=void 0,this.primaryPassedHealthCheck=!1,this.longPollFallbackMs=t.longPollFallbackMs,this.fallbackTimer=null,this.sessionStore=t.sessionStorage||bn&&bn.sessionStorage,this.establishedConnections=0,this.defaultEncoder=El.encode.bind(El),this.defaultDecoder=El.decode.bind(El),this.closeWasClean=!0,this.disconnecting=!1,this.binaryType=t.binaryType||"arraybuffer",this.connectClock=1,this.pageHidden=!1,this.encode=void 0,this.decode=void 0,this.transport!==Ui?(this.encode=t.encode||this.defaultEncoder,this.decode=t.decode||this.defaultDecoder):(this.encode=this.defaultEncoder,this.decode=this.defaultDecoder);let n=null;Qi&&Qi.addEventListener&&(Qi.addEventListener("pagehide",r=>{this.conn&&(this.disconnect(),n=this.connectClock)}),Qi.addEventListener("pageshow",r=>{n===this.connectClock&&(n=null,this.connect())}),Qi.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"?this.pageHidden=!0:(this.pageHidden=!1,!this.isConnected()&&!this.closeWasClean&&this.teardown(()=>this.connect()))})),this.heartbeatIntervalMs=t.heartbeatIntervalMs||3e4,this.autoSendHeartbeat=t.autoSendHeartbeat??!0,this.heartbeatCallback=t.heartbeatCallback??(()=>{}),this.rejoinAfterMs=r=>t.rejoinAfterMs?t.rejoinAfterMs(r):[1e3,2e3,5e3][r-1]||1e4,this.reconnectAfterMs=r=>t.reconnectAfterMs?t.reconnectAfterMs(r):[10,50,100,150,200,250,500,1e3,2e3][r-1]||5e3,this.logger=t.logger||null,!this.logger&&t.debug&&(this.logger=(r,i,s)=>{console.log(`${r}: ${i}`,s)}),this.longpollerTimeout=t.longpollerTimeout||2e4,this.params=Va(t.params||{}),this.endPoint=`${e}/${Rf.websocket}`,this.vsn=t.vsn||p2,this.heartbeatTimeoutTimer=null,this.heartbeatTimer=null,this.heartbeatSentAt=null,this.pendingHeartbeatRef=null,this.reconnectTimer=new ME(()=>{if(this.pageHidden){this.log("Not reconnecting as page is hidden!"),this.teardown();return}this.teardown(async()=>{t.beforeReconnect&&await t.beforeReconnect(),this.connect()})},this.reconnectAfterMs),this.authToken=t.authToken}getLongPollTransport(){return Ui}replaceTransport(e){this.connectClock++,this.closeWasClean=!0,clearTimeout(this.fallbackTimer),this.reconnectTimer.reset(),this.conn&&(this.conn.close(),this.conn=null),this.transport=e}protocol(){return location.protocol.match(/^https/)?"wss":"ws"}endPointURL(){let e=Gc.appendParams(Gc.appendParams(this.endPoint,this.params()),{vsn:this.vsn});return e.charAt(0)!=="/"?e:e.charAt(1)==="/"?`${this.protocol()}:${e}`:`${this.protocol()}://${location.host}${e}`}disconnect(e,t,n){this.connectClock++,this.disconnecting=!0,this.closeWasClean=!0,clearTimeout(this.fallbackTimer),this.reconnectTimer.reset(),this.teardown(()=>{this.disconnecting=!1,e&&e()},t,n)}connect(e){e&&(console&&console.log("passing params to connect is deprecated. Instead pass :params to the Socket constructor"),this.params=Va(e)),!(this.conn&&!this.disconnecting)&&(this.longPollFallbackMs&&this.transport!==Ui?this.connectWithFallback(Ui,this.longPollFallbackMs):this.transportConnect())}log(e,t,n){this.logger&&this.logger(e,t,n)}hasLogger(){return this.logger!==null}onOpen(e){let t=this.makeRef();return this.stateChangeCallbacks.open.push([t,e]),t}onClose(e){let t=this.makeRef();return this.stateChangeCallbacks.close.push([t,e]),t}onError(e){let t=this.makeRef();return this.stateChangeCallbacks.error.push([t,e]),t}onMessage(e){let t=this.makeRef();return this.stateChangeCallbacks.message.push([t,e]),t}onHeartbeat(e){this.heartbeatCallback=e}ping(e){if(!this.isConnected())return!1;let t=this.makeRef(),n=Date.now();this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:t});let r=this.onMessage(i=>{i.ref===t&&(this.off([r]),e(Date.now()-n))});return!0}transportName(e){switch(e){case Ui:return"LongPoll";default:return e.name}}transportConnect(){this.connectClock++,this.closeWasClean=!1;let e;this.authToken&&(e=["phoenix",`${zf}${btoa(this.authToken).replace(/=/g,"")}`]),this.conn=new this.transport(this.endPointURL(),e),this.conn.binaryType=this.binaryType,this.conn.timeout=this.longpollerTimeout,this.conn.onopen=()=>this.onConnOpen(),this.conn.onerror=t=>this.onConnError(t),this.conn.onmessage=t=>this.onConnMessage(t),this.conn.onclose=t=>this.onConnClose(t)}getSession(e){return this.sessionStore&&this.sessionStore.getItem(e)}storeSession(e,t){this.sessionStore&&this.sessionStore.setItem(e,t)}connectWithFallback(e,t=2500){clearTimeout(this.fallbackTimer);let n=!1,r=!0,i,s,a=this.transportName(e),o=l=>{this.log("transport",`falling back to ${a}...`,l),this.off([i,s]),r=!1,this.replaceTransport(e),this.transportConnect()};if(this.getSession(`phx:fallback:${a}`))return o("memorized");this.fallbackTimer=setTimeout(o,t),s=this.onError(l=>{this.log("transport","error",l),r&&!n&&(clearTimeout(this.fallbackTimer),o(l))}),this.fallbackRef&&this.off([this.fallbackRef]),this.fallbackRef=this.onOpen(()=>{if(n=!0,!r){let l=this.transportName(e);return this.primaryPassedHealthCheck||this.storeSession(`phx:fallback:${l}`,"true"),this.log("transport",`established ${l} fallback`)}clearTimeout(this.fallbackTimer),this.fallbackTimer=setTimeout(o,t),this.ping(l=>{this.log("transport","connected to primary after",l),this.primaryPassedHealthCheck=!0,clearTimeout(this.fallbackTimer)})}),this.transportConnect()}clearHeartbeats(){clearTimeout(this.heartbeatTimer),clearTimeout(this.heartbeatTimeoutTimer)}onConnOpen(){this.hasLogger()&&this.log("transport",`connected to ${this.endPointURL()}`),this.closeWasClean=!1,this.disconnecting=!1,this.establishedConnections++,this.flushSendBuffer(),this.reconnectTimer.reset(),this.autoSendHeartbeat&&this.resetHeartbeat(),this.triggerStateCallbacks("open")}heartbeatTimeout(){if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null,this.heartbeatSentAt=null,this.hasLogger()&&this.log("transport","heartbeat timeout. Attempting to re-establish connection");try{this.heartbeatCallback("timeout")}catch(e){this.log("error","error in heartbeat callback",e)}this.triggerChanError(),this.closeWasClean=!1,this.teardown(()=>this.reconnectTimer.scheduleTimeout(),v2,"heartbeat timeout")}}resetHeartbeat(){this.conn&&this.conn.skipHeartbeat||(this.pendingHeartbeatRef=null,this.clearHeartbeats(),this.heartbeatTimer=setTimeout(()=>this.sendHeartbeat(),this.heartbeatIntervalMs))}teardown(e,t,n){if(!this.conn)return e&&e();const r=this.conn;this.waitForBufferDone(r,()=>{t?r.close(t,n||""):r.close(),this.waitForSocketClosed(r,()=>{this.conn===r&&(this.conn.onopen=function(){},this.conn.onerror=function(){},this.conn.onmessage=function(){},this.conn.onclose=function(){},this.conn=null),e&&e()})})}waitForBufferDone(e,t,n=1){if(n===5||!e.bufferedAmount){t();return}setTimeout(()=>{this.waitForBufferDone(e,t,n+1)},150*n)}waitForSocketClosed(e,t,n=1){if(n===5||e.readyState===Tn.closed){t();return}setTimeout(()=>{this.waitForSocketClosed(e,t,n+1)},150*n)}onConnClose(e){this.conn&&(this.conn.onclose=()=>{}),this.hasLogger()&&this.log("transport","close",e),this.triggerChanError(),this.clearHeartbeats(),this.closeWasClean||this.reconnectTimer.scheduleTimeout(),this.triggerStateCallbacks("close",e)}onConnError(e){this.hasLogger()&&this.log("transport",e);let t=this.transport,n=this.establishedConnections;this.triggerStateCallbacks("error",e,t,n),(t===this.transport||n>0)&&this.triggerChanError()}
174triggerChanError(){this.channels.forEach(e=>{e.isErrored()||e.isLeaving()||e.isClosed()||e.trigger(Un.error)})}connectionState(){switch(this.conn&&this.conn.readyState){case Tn.connecting:return"connecting";case Tn.open:return"open";case Tn.closing:return"closing";default:return"closed"}}isConnected(){return this.connectionState()==="open"}remove(e){this.off(e.stateChangeRefs),this.channels=this.channels.filter(t=>t!==e)}off(e){for(let t in this.stateChangeCallbacks)this.stateChangeCallbacks[t]=this.stateChangeCallbacks[t].filter(([n])=>e.indexOf(n)===-1)}channel(e,t={}){let n=new w2(e,t,this);return this.channels.push(n),n}push(e){if(this.hasLogger()){let{topic:t,event:n,payload:r,ref:i,join_ref:s}=e;this.log("push",`${t} ${n} (${s}, ${i})`,r)}this.isConnected()?this.encode(e,t=>this.conn.send(t)):this.sendBuffer.push(()=>this.encode(e,t=>this.conn.send(t)))}makeRef(){let e=this.ref+1;return e===this.ref?this.ref=0:this.ref=e,this.ref.toString()}sendHeartbeat(){if(!this.isConnected()){try{this.heartbeatCallback("disconnected")}catch(e){this.log("error","error in heartbeat callback",e)}return}if(this.pendingHeartbeatRef){this.heartbeatTimeout();return}this.pendingHeartbeatRef=this.makeRef(),this.heartbeatSentAt=Date.now(),this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef});try{this.heartbeatCallback("sent")}catch(e){this.log("error","error in heartbeat callback",e)}this.heartbeatTimeoutTimer=setTimeout(()=>this.heartbeatTimeout(),this.heartbeatIntervalMs)}flushSendBuffer(){this.isConnected()&&this.sendBuffer.length>0&&(this.sendBuffer.forEach(e=>e()),this.sendBuffer=[])}onConnMessage(e){this.decode(e.data,t=>{let{topic:n,event:r,payload:i,ref:s,join_ref:a}=t;if(s&&s===this.pendingHeartbeatRef){const o=this.heartbeatSentAt?Date.now()-this.heartbeatSentAt:void 0;this.clearHeartbeats();try{this.heartbeatCallback(i.status==="ok"?"ok":"error",o)}catch(l){this.log("error","error in heartbeat callback",l)}this.pendingHeartbeatRef=null,this.heartbeatSentAt=null,this.autoSendHeartbeat&&(this.heartbeatTimer=setTimeout(()=>this.sendHeartbeat(),this.heartbeatIntervalMs))}this.hasLogger()&&this.log("receive",`${i.status||""} ${n} ${r} ${s&&"("+s+")"||""}`.trim(),i);for(let o=0;o<this.channels.length;o++){const l=this.channels[o];l.isMember(n,r,i,a)&&l.trigger(r,i,s,a)}this.triggerStateCallbacks("message",t)})}triggerStateCallbacks(e,...t){try{this.stateChangeCallbacks[e].forEach(([n,r])=>{try{r(...t)}catch(i){this.log("error",`error in ${e} callback`,i)}})}catch(n){this.log("error",`error triggering ${e} callbacks`,n)}}leaveOpenTopic(e){let t=this.channels.find(n=>n.topic===e&&(n.isJoined()||n.isJoining()));t&&(this.hasLogger()&&this.log("transport",`leaving duplicate topic "${e}"`),t.leave())}};class Wa{constructor(t,n){const r=E2(n);this.presence=new k2(t.getChannel(),r),this.presence.onJoin((i,s,a)=>{const o=Wa.onJoinPayload(i,s,a);t.getChannel().trigger("presence",o)}),this.presence.onLeave((i,s,a)=>{const o=Wa.onLeavePayload(i,s,a);t.getChannel().trigger("presence",o)}),this.presence.onSync(()=>{t.getChannel().trigger("presence",{event:"sync"})})}get state(){return Wa.transformState(this.presence.state)}static transformState(t){return t=S2(t),Object.getOwnPropertyNames(t).reduce((n,r)=>{const i=t[r];return n[r]=ic(i),n},{})}static onJoinPayload(t,n,r){const i=rw(n),s=ic(r);return{event:"join",key:t,currentPresences:i,newPresences:s}}static onLeavePayload(t,n,r){const i=rw(n),s=ic(r);return{event:"leave",key:t,currentPresences:i,leftPresences:s}}}function ic(e){return e.metas.map(t=>(t.presence_ref=t.phx_ref,delete t.phx_ref,delete t.phx_ref_prev,t))}function S2(e){return JSON.parse(JSON.stringify(e))}function E2(e){return(e==null?void 0:e.events)&&{events:e.events}}function rw(e){return e!=null&&e.metas?ic(e):[]}var iw;(function(e){e.SYNC="sync",e.JOIN="join",e.LEAVE="leave"})(iw||(iw={}));class T2{get state(){return this.presenceAdapter.state}constructor(t,n){this.channel=t,this.presenceAdapter=new Wa(this.channel.channelAdapter,n)}}class A2{constructor(t,n,r){const i=C2(r);this.channel=t.getSocket().channel(n,i),this.socket=t}get state(){return this.channel.state}set state(t){this.channel.state=t}get joinedOnce(){return this.channel.joinedOnce}get joinPush(){return this.channel.joinPush}get rejoinTimer(){return this.channel.rejoinTimer}on(t,n){return this.channel.on(t,n)}off(t,n){this.channel.off(t,n)}subscribe(t){return this.channel.join(t)}unsubscribe(t){return this.channel.leave(t)}teardown(){this.channel.teardown()}onClose(t){this.channel.onClose(t)}onError(t){return this.channel.onError(t)}push(t,n,r){let i;try{i=this.channel.push(t,n,r)}catch{throw`tried to push '${t}' to '${this.channel.topic}' before joining. Use channel.subscribe() before pushing events`}if(this.channel.pushBuffer.length>a2){const s=this.channel.pushBuffer.shift();s.cancelTimeout(),this.socket.log("channel",`discarded push due to buffer overflow: ${s.event}`,s.payload())}return i}updateJoinPayload(t){const n=this.channel.joinPush.payload();this.channel.joinPush.payload=()=>Object.assign(Object.assign({},n),t)}canPush(){return this.socket.isConnected()&&this.state===br.joined}isJoined(){return this.state===br.joined}isJoining(){return this.state===br.joining}isClosed(){return this.state===br.closed}isLeaving(){return this.state===br.leaving}updateFilterBindings(t){this.channel.filterBindings=t}updatePayloadTransform(t){this.channel.onMessage=t}getChannel(){return this.channel}}function C2(e){return{config:Object.assign({broadcast:{ack:!1,self:!1},presence:{key:"",enabled:!1},private:!1},e.config)}}var sw;(function(e){e.ALL="*",e.INSERT="INSERT",e.UPDATE="UPDATE",e.DELETE="DELETE"})(sw||(sw={}));var gs;(function(e){e.BROADCAST="broadcast",e.PRESENCE="presence",e.POSTGRES_CHANGES="postgres_changes",e.SYSTEM="system"})(gs||(gs={}));var Vn;(function(e){e.SUBSCRIBED="SUBSCRIBED",e.TIMED_OUT="TIMED_OUT",e.CLOSED="CLOSED",e.CHANNEL_ERROR="CHANNEL_ERROR"})(Vn||(Vn={}));class $a{get state(){return this.channelAdapter.state}set state(t){this.channelAdapter.state=t}get joinedOnce(){return this.channelAdapter.joinedOnce}get timeout(){return this.socket.timeout}get joinPush(){return this.channelAdapter.joinPush}get rejoinTimer(){return this.channelAdapter.rejoinTimer}constructor(t,n={config:{}},r){var i,s;if(this.topic=t,this.params=n,this.socket=r,this.bindings={},this.subTopic=t.replace(/^realtime:/i,""),this.params.config=Object.assign({broadcast:{ack:!1,self:!1},presence:{key:"",enabled:!1},private:!1},n.config),this.channelAdapter=new A2(this.socket.socketAdapter,t,this.params),this.presence=new T2(this),this._onClose(()=>{this.socket._remove(this)}),this._updateFilterTransform(),this.broadcastEndpointURL=NE(this.socket.socketAdapter.endPointURL()),this.private=this.params.config.private||!1,!this.private&&(!((s=(i=this.params.config)===null||i===void 0?void 0:i.broadcast)===null||s===void 0)&&s.replay))throw`tried to use replay on public channel '${this.topic}'. It must be a private channel.`}subscribe(t,n=this.timeout){var r,i,s;if(this.socket.isConnected()||this.socket.connect(),this.channelAdapter.isClosed()){const{config:{broadcast:a,presence:o,private:l}}=this.params,c=(i=(r=this.bindings.postgres_changes)===null||r===void 0?void 0:r.map(m=>m.filter))!==null&&i!==void 0?i:[],d=!!this.bindings[gs.PRESENCE]&&this.bindings[gs.PRESENCE].length>0||((s=this.params.config.presence)===null||s===void 0?void 0:s.enabled)===!0,h={},f={broadcast:a,presence:Object.assign(Object.assign({},o),{enabled:d}),postgres_changes:c,private:l};this.socket.accessTokenValue&&(h.access_token=this.socket.accessTokenValue),this._onError(m=>{t==null||t(Vn.CHANNEL_ERROR,m)}),this._onClose(()=>t==null?void 0:t(Vn.CLOSED)),this.updateJoinPayload(Object.assign({config:f},h)),this._updateFilterMessage(),this.channelAdapter.subscribe(n).receive("ok",async({postgres_changes:m})=>
174{if(this.socket._isManualToken()||this.socket.setAuth(),m===void 0){t==null||t(Vn.SUBSCRIBED);return}this._updatePostgresBindings(m,t)}).receive("error",m=>{this.state=br.errored,t==null||t(Vn.CHANNEL_ERROR,new Error(JSON.stringify(Object.values(m).join(", ")||"error")))}).receive("timeout",()=>{t==null||t(Vn.TIMED_OUT)})}return this}_updatePostgresBindings(t,n){var r;const i=this.bindings.postgres_changes,s=(r=i==null?void 0:i.length)!==null&&r!==void 0?r:0,a=[];for(let o=0;o<s;o++){const l=i[o],{filter:{event:c,schema:d,table:h,filter:f}}=l,m=t&&t[o];if(m&&m.event===c&&$a.isFilterValueEqual(m.schema,d)&&$a.isFilterValueEqual(m.table,h)&&$a.isFilterValueEqual(m.filter,f))a.push(Object.assign(Object.assign({},l),{id:m.id}));else{this.unsubscribe(),this.state=br.errored,n==null||n(Vn.CHANNEL_ERROR,new Error("mismatch between server and client bindings for postgres changes"));return}}this.bindings.postgres_changes=a,this.state!=br.errored&&n&&n(Vn.SUBSCRIBED)}presenceState(){return this.presence.state}async track(t,n={}){return await this.send({type:"presence",event:"track",payload:t},n.timeout||this.timeout)}async untrack(t={}){return await this.send({type:"presence",event:"untrack"},t)}on(t,n,r){const i=this.channelAdapter.isJoined()||this.channelAdapter.isJoining(),s=t===gs.PRESENCE||t===gs.POSTGRES_CHANGES;if(i&&s)throw this.socket.log("channel",`cannot add \`${t}\` callbacks for ${this.topic} after \`subscribe()\`.`),new Error(`cannot add \`${t}\` callbacks for ${this.topic} after \`subscribe()\`.`);return this._on(t,n,r)}async httpSend(t,n,r={}){var i;if(n==null)return Promise.reject("Payload is required for httpSend()");const s={apikey:this.socket.apiKey?this.socket.apiKey:"","Content-Type":"application/json"};this.socket.accessTokenValue&&(s.Authorization=`Bearer ${this.socket.accessTokenValue}`);const a={method:"POST",headers:s,body:JSON.stringify({messages:[{topic:this.subTopic,event:t,payload:n,private:this.private}]})},o=await this._fetchWithTimeout(this.broadcastEndpointURL,a,(i=r.timeout)!==null&&i!==void 0?i:this.timeout);if(o.status===202)return{success:!0};let l=o.statusText;try{const c=await o.json();l=c.error||c.message||l}catch{}return Promise.reject(new Error(l))}async send(t,n={}){var r,i;if(!this.channelAdapter.canPush()&&t.type==="broadcast"){console.warn("Realtime send() is automatically falling back to REST API. This behavior will be deprecated
174in the future. Please use httpSend() explicitly for REST delivery.");const{event:s,payload:a}=t,o={apikey:this.socket.apiKey?this.socket.apiKey:"","Content-Type":"application/json"};this.socket.accessTokenValue&&(o.Authorization=`Bearer ${this.socket.accessTokenValue}`);const l={method:"POST",headers:o,body:JSON.stringify({messages:[{topic:this.subTopic,event:s,payload:a,private:this.private}]})};try{const c=await this._fetchWithTimeout(this.broadcastEndpointURL,l,(r=n.timeout)!==null&&r!==void 0?r:this.timeout);return await((i=c.body)===null||i===void 0?void 0:i.cancel()),c.ok?"ok":"error"}catch(c){return c.name==="AbortError"?"timed out":"error"}}else return new Promise(s=>{var a,o,l;const c=this.channelAdapter.push(t.type,t,n.timeout||this.timeout);t.type==="broadcast"&&!(!((l=(o=(a=this.params)===null||a===void 0?void 0:a.config)===null||o===void 0?void 0:o.broadcast)===null||l===void 0)&&l.ack)&&s("ok"),c.receive("ok",()=>s("ok")),c.receive("error",()=>s("error")),c.receive("timeout",()=>s("timed out"))})}updateJoinPayload(t){this.channelAdapter.updateJoinPayload(t)}async unsubscribe(t=this.timeout){return new Promise(n=>{this.channelAdapter.unsubscribe(t).receive("ok",()=>n("ok")).receive("timeout",()=>n("timed out")).receive("error",()=>n("error"))})}teardown(){this.channelAdapter.teardown()}async _fetchWithTimeout(t,n,r){const i=new AbortController,s=setTimeout(()=>i.abort(),r),a=await this.socket.fetch(t,Object.assign(Object.assign({},n),{signal:i.signal}));return clearTimeout(s),a}_on(t,n,r){const i=t.toLocaleLowerCase(),s=this.channelAdapter.on(t,r),a={type:i,filter:n,callback:r,ref:s};return this.bindings[i]?this.bindings[i].push(a):this.bindings[i]=[a],this._updateFilterMessage(),this}_onClose(t){this.channelAdapter.onClose(t)}_onError(t){this.channelAdapter.onError(t)}_updateFilterMessage(){this.channelAdapter.updateFilterBindings((t,n,r)=>{var i,s,a,o,l,c,d;const h=t.event.toLocaleLowerCase();if(this._notThisChannelEvent(h,r))return!1;const f=(i=this.bindings[h])===null||i===void 0?void 0:i.find(m=>m.ref===t.ref);if(!f)return!0;if(["broadcast","presence","postgres_changes"].includes(h))if("id"in f){const m=f.id,w=(s=f.filter)===null||s===void 0?void 0:s.event;return m&&((a=n.ids)===null||a===void 0?void 0:a.includes(m))&&(w==="*"||(w==null?void 0:w.toLocaleLowerCase())===((o=n.data)===null||o===void 0?void 0:o.type.toLocaleLowerCase()))}else{const m=(c=(l=f==null?void 0:f.filter)===null||l===void 0?void 0:l.event)===null||c===void 0?void 0:c.toLocaleLowerCase();return m==="*"||m===((d=n==null?void 0:n.event)===null||d===void 0?void 0:d.toLocaleLowerCase())}else return f.type.toLocaleLowerCase()===h})}_notThisChannelEvent(t,n){const{close:r,error:i,leave:s,join:a}=zE;return n&&[r,i,s,a].includes(t)&&n!==this.joinPush.ref}_updateFilterTransform(){this.channelAdapter.updatePayloadTransform((t,n,r)=>{if(typeof n=="object"&&"ids"in n){const i=n.data,{schema:s,table:a,commit_timestamp:o,type:l,errors:c}=i;return Object.assign(Object.assign({},{schema:s,table:a,commit_timestamp:o,eventType:l,new:{},old:{},errors:c}),this._getPayloadRecords(i))}return n})}copyBindings(t){if(this.joinedOnce)throw new Error("cannot copy bindings into joined channel");for(const n in t.bindings)for(const r of t.bindings[n])this._on(r.type,r.filter,r.callback)}static isFilterValueEqual(t,n){return(t??void 0)===(n??void 0)}_getPayloadRecords(t){const n={new:{},old:{}};return(t.type==="INSERT"||t.type==="UPDATE")&&(n.new=nw(t.columns,t.record)),(t.type==="UPDATE"||t.type==="DELETE")&&(n.old=nw(t.columns,t.old_record)),n}}class _2{constructor(t,n){this.socket=new x2(t,n)}get timeout(){return this.socket.timeout}get endPoint(){return this.socket.endPoint}get transport(){return this.socket.transport}get heartbeatIntervalMs(){return this.socket.heartbeatIntervalMs}get heartbeatCallback(){return this.socket.heartbeatCallback}set heartbeatCallback(t){this.socket.heartbeatCallback=t}get heartbeatTimer(){return this.socket.heartbeatTimer}get pendingHeartbeatRef(){return this.socket.pendingHeartbeatRef}get reconnectTimer(){return this.socket.reconnectTimer}get vsn(){return this.socket.vsn}get encode(){return this.socket.encode}get decode(){return this.socket.decode}get reconnectAfterMs(){return this.socket.reconnectAfterMs}get sendBuffer(){return this.socket.sendBuffer}get stateChangeCallbacks(){return this.socket.stateChangeCallbacks}connect(){this.socket.connect()}disconnect(t,n,r,i=1e4){return new Promise(s=>{setTimeout(()=>s("timeout"),i),this.socket.disconnect(()=>{t(),s("ok")},n,r)})}push(t){this.socket.push(t)}log(t,n,r){this.socket.log(t,n,r)}makeRef(){return this.socket.makeRef()}onOpen(t){this.socket.onOpen(t)}onClose(t){this.socket.onClose(t)}onError(t){this.socket.onError(t)}onMessage(t){this.socket.onMessage(t)}isConnected(){return this.socket.isConnected()}isConnecting(){return this.socket.connectionState()==Pf.connecting}isDisconnecting(){return this.socket.connectionState()==Pf.closing}connectionState(){return this.socket.connectionState()}endPointURL(){return this.socket.endPointURL()}sendHeartbeat(){this.socket.sendHeartbeat()}getSocket(){return this.socket}}const P2={HEARTBEAT_INTERVAL:25e3,RECONNECT_DELAY:10,HEARTBEAT_TIMEOUT_FALLBACK:100},j2=[1e3,2e3,5e3,1e4],R2=1e4,z2=` 175 addEventListener("message", (e) => { 176 if (e.data.event === "start") { 177 setInterval(() => postMessage({ event: "keepAlive" }), e.data.interval); 178 } 179 });`;class D2{get endPoint(){return this.socketAdapter.endPoint}get timeout(){return this.socketAdapter.timeout}get transport(){return this.socketAdapter.transport}get heartbeatCallback(){return this.socketAdapter.heartbeatCallback}get heartbeatIntervalMs(){return this.socketAdapter.heartbeatIntervalMs}get heartbeatTimer(){return this.worker?this._workerHeartbeatTimer:this.socketAdapter.heartbeatTimer}get pendingHeartbeatRef(){return this.worker?this._pendingWorkerHeartbeatRef:this.socketAdapter.pendingHeartbeatRef}get reconnectTimer(){return this.socketAdapter.reconnectTimer}get vsn(){return this.socketAdapter.vsn}get encode(){return this.socketAdapter.encode}get decode(){return this.socketAdapter.decode}get reconnectAfterMs(){return this.socketAdapter.reconnectAfterMs}get sendBuffer(){return this.socketAdapter.sendBuffer}get stateChangeCallbacks(){return this.socketAdapter.stateChangeCallbacks}constructor(t,n){var r;if(this.channels=new Array,this.accessTokenValue=null,this.accessToken=null,this.apiKey=null,this.httpEndpoint="",this.headers={},this.params={}
179,this.ref=0,this.serializer=new o2,this._manuallySetToken=!1,this._authPromise=null,this._workerHeartbeatTimer=void 0,this._pendingWorkerHeartbeatRef=null,this._resolveFetch=s=>s?(...a)=>s(...a):(...a)=>fetch(...a),!(!((r=n==null?void 0:n.params)===null||r===void 0)&&r.apikey))throw new Error("API key is required to connect to Realtime");this.apiKey=n.params.apikey;const i=this._initializeOptions(n);this.socketAdapter=new _2(t,i),this.httpEndpoint=NE(t),this.fetch=this._resolveFetch(n==null?void 0:n.fetch)}connect(){if(!(this.isConnecting()||this.isDisconnecting()||this.isConnected())){this.accessToken&&!this._authPromise&&this._setAuthSafely("connect"),this._setupConnectionHandlers();try{this.socketAdapter.connect()}catch(t){const n=t.message;throw n.includes("Node.js")?new Error(`${n} 180 181To use Realtime in Node.js, you need to provide a WebSocket implementation: 182 183Option 1: Use Node.js 22+ which has native WebSocket support 184Option 2: Install and provide the "ws" package: 185 186 npm install ws 187 188 import ws from "ws" 189 const client = new RealtimeClient(url, { 190 ...options, 191 transport: ws 192 })`):new Error(`WebSocket not available: ${n}`)}this._handleNodeJsRaceCondition()}}endpointURL(){return this.socketAdapter.endPointURL()}async disconnect(t,n){return this.isDisconnecting()?"ok":await this.socketAdapter.disconnect(()=>{clearInterval(this._workerHeartbeatTimer),this._terminateWorker()},t,n)}getChannels(){return this.channels}async removeChannel(t){const n=await t.unsubscribe();return n==="ok"&&t.teardown(),this.channels.length===0&&this.disconnect(),n}async removeAllChannels(){const t=this.channels.map(async r=>{const i=await r.unsubscribe();return r.teardown(),i}),n=await Promise.all(t);return this.disconnect(),n}log(t,n,r){this.socketAdapter.log(t,n,r)}connectionState(){return this.socketAdapter.connectionState()||Pf.closed}isConnected(){return this.socketAdapter.isConnected()}isConnecting(){return this.socketAdapter.isConnecting()}isDisconnecting(){return this.socketAdapter.isDisconnecting()}channel(t,n={config:{}}){const r=`realtime:${t}`,i=this.getChannels().find(s=>s.topic===r);if(i)return i;{const s=new $a(`realtime:${t}`,n,this);return this.channels.push(s),s}}push(t){this.socketAdapter.push(t)}async setAuth(t=null){this._authPromise=this._performAuth(t);try{await this._authPromise}finally{this._authPromise=null}}_isManualToken(){return this._manuallySetToken}async sendHeartbeat(){this.socketAdapter.sendHeartbeat()}onHeartbeat(t){this.socketAdapter.heartbeatCallback=this._wrapHeartbeatCallback(t)}_makeRef(){return this.socketAdapter.makeRef()}_remove(t){this.channels=this.channels.filter(n=>n.topic!==t.topic)}async _performAuth(t=null){let n,r=!1;if(t)n=t,r=!0;else if(this.accessToken)try{n=await this.accessToken()}catch(i){this.log("error","Error fetching access token from callback",i),n=this.accessTokenValue}else n=this.accessTokenValue;r?this._manuallySetToken=!0:this.accessToken&&(this._manuallySetToken=!1),this.accessTokenValue!=n&&(this.accessTokenValue=n,this.channels.forEach(i=>{const s={access_token:n,version:n2};n&&i.updateJoinPayload(s),i.joinedOnce&&i.channelAdapter.isJoined()&&i.channelAdapter.push(zE.access_token,{access_token:n})}))}async _waitForAuthIfNeeded(){this._authPromise&&await this._authPromise}_setAuthSafely(t="general"){this._isManualToken()||this.setAuth().catch(n=>{this.log("error",`Error setting auth in ${t}`,n)})}_setupConnectionHandlers(){this.socketAdapter.onOpen(()=>{(this._authPromise||(this.accessToken&&!this.accessTokenValue?this.setAuth():Promise.resolve())).catch(n=>{this.log("error","error waiting for auth on connect",n)}),this.worker&&!this.workerRef&&this._startWorkerHeartbeat()}),this.socketAdapter.onClose(()=>{this.worker&&this.workerRef&&this._terminateWorker()}),this.socketAdapter.onMessage(t=>{t.ref&&t.ref===this._pendingWorkerHeartbeatRef&&(this._pendingWorkerHeartbeatRef=null)})}_handleNodeJsRaceCondition(){this.socketAdapter.isConnected()&&this.socketAdapter.getSocket().onConnOpen()}_wrapHeartbeatCallback(t){return(n,r)=>{n=="sent"&&this._setAuthSafely(),t&&t(n,r)}}_startWorkerHeartbeat(){this.workerUrl?this.log("worker",`starting worker for from ${this.workerUrl}`):this.log("worker","starting default worker");const t=this._workerObjectUrl(this.workerUrl);this.workerRef=new Worker(t),this.workerRef.onerror=n=>{this.log("worker","worker error",n.message),this._terminateWorker(),this.disconnect()},this.workerRef.onmessage=n=>{n.data.event==="keepAlive"&&this.sendHeartbeat()},this.workerRef.postMessage({event:"start",interval:this.heartbeatIntervalMs})}_terminateWorker(){this.workerRef&&(this.log("worker","terminating worker"),this.workerRef.terminate(),this.workerRef=void 0)}_workerObjectUrl(t){let n;if(t)n=t;else{const r=new Blob([z2],{type:"application/javascript"});n=URL.createObjectURL(r)}return n}_initializeOptions(t){var n,r,i,s,a,o,l,c,d;this.worker=(n=t==null?void 0:t.worker)!==null&&n!==void 0?n:!1,this.accessToken=(r=t==null?void 0:t.accessToken)!==null&&r!==void 0?r:null;const h={};
192h.timeout=(i=t==null?void 0:t.timeout)!==null&&i!==void 0?i:s2,h.heartbeatIntervalMs=(s=t==null?void 0:t.heartbeatIntervalMs)!==null&&s!==void 0?s:P2.HEARTBEAT_INTERVAL,h.transport=(a=t==null?void 0:t.transport)!==null&&a!==void 0?a:e2.getWebSocketConstructor(),h.params=t==null?void 0:t.params,h.logger=t==null?void 0:t.logger,h.heartbeatCallback=this._wrapHeartbeatCallback(t==null?void 0:t.heartbeatCallback),h.reconnectAfterMs=(o=t==null?void 0:t.reconnectAfterMs)!==null&&o!==void 0?o:p=>j2[p-1]||R2;let f,m;const w=(l=t==null?void 0:t.vsn)!==null&&l!==void 0?l:i2;switch(w){case r2:f=(p,b)=>b(JSON.stringify(p)),m=(p,b)=>b(JSON.parse(p));break;case RE:f=this.serializer.encode.bind(this.serializer),m=this.serializer.decode.bind(this.serializer);break;default:throw new Error(`Unsupported serializer version: ${h.vsn}`)}if(h.vsn=w,h.encode=(c=t==null?void 0:t.encode)!==null&&c!==void 0?c:f,h.decode=(d=t==null?void 0:t.decode)!==null&&d!==void 0?d:m,h.beforeReconnect=this._reconnectAuth.bind(this),(t!=null&&t.logLevel||t!=null&&t.log_level)&&(this.logLevel=t.logLevel||t.log_level,h.params=Object.assign(Object.assign({},h.params),{log_level:this.logLevel})),this.worker){if(typeof window<"u"&&!window.Worker)throw new Error("Web Worker is not supported");this.workerUrl=t==null?void 0:t.workerUrl,h.autoSendHeartbeat=!this.worker}return h}async _reconnectAuth(){await this._waitForAuthIfNeeded(),this.isConnected()||this.connect()}}var ko=class extends Error{constructor(e,t){var n;super(e),this.name="IcebergError",this.status=t.status,this.icebergType=t.icebergType,this.icebergCode=t.icebergCode,this.details=t.details,this.isCommitStateUnknown=t.icebergType==="CommitStateUnknownException"||[500,502,504].includes(t.status)&&((n=t.icebergType)==null?void 0:n.includes("CommitState"))===!0}isNotFound(){return this.status===404}isConflict(){return this.status===409}isAuthenticationTimeout(){return this.status===419}};function N2(e,t,n){const r=new URL(t,e);if(n)for(const[i,s]of Object.entries(n))s!==void 0&&r.searchParams.set(i,s);return r.toString()}async function M2(e){return!e||e.type==="none"?{}:e.type==="bearer"?{Authorization:`Bearer ${e.token}`}:e.type==="header"?{[e.name]:e.value}:e.type==="custom"?await e.getHeaders():{}}function I2(e){const t=e.fetchImpl??globalThis.fetch;return{async request({method:n,path:r,query:i,body:s,headers:a}){const o=N2(e.baseUrl,r,i),l=await M2(e.auth),c=await t(o,{method:n,headers:{...s?{"Content-Type":"application/json"}:{},...l,...a},body:s?JSON.stringify(s):void 0}),d=await c.text(),h=(c.headers.get("content-type")||"").includes("application/json"),f=h&&d?JSON.parse(d):d;if(!c.ok){const m=h?f:void 0,w=m==null?void 0:m.error;throw new ko((w==null?void 0:w.message)??`Request failed with status ${c.status}`,{status:c.status,icebergType:w==null?void 0:w.type,icebergCode:w==null?void 0:w.code,details:m})}return{status:c.status,headers:c.headers,data:f}}}}function Tl(e){return e.join("�")}var O2=class{constructor(e,t=""){this.client=e,this.prefix=t}async listNamespaces(e){const t=e?{parent:Tl(e.namespace)}:void 0;return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces`,query:t})).data.namespaces.map(r=>({namespace:r}))}async createNamespace(e,t){const n={namespace:e.namespace,properties:t==null?void 0:t.properties};return(await this.client.request({method:"POST",path:`${this.prefix}/namespaces`,body:n})).data}async dropNamespace(e){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${Tl(e.namespace)}`})}async loadNamespaceMetadata(e){return{properties:(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${Tl(e.namespace)}`})).data.properties}}async namespaceExists(e){try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${Tl(e.namespace)}`}),!0}catch(t){if(t instanceof ko&&t.status===404)return!1;throw t}}async createNamespaceIfNotExists(e,t){try{return await this.createNamespace(e,t)}catch(n){if(n instanceof ko&&n.status===409)return;throw n}}};function Vi(e){return e.join("�")}var L2=class{constructor(e,t="",n){this.client=e,this.prefix=t,this.accessDelegation=n}async listTables(e){return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${Vi(e.namespace)}/tables`})).data.identifiers}async createTable(e,t){const n={};return this.accessDelegation&&(n["X-Iceberg-Access-Delegation"]=this.accessDelegation),(await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${Vi(e.namespace)}/tables`,body:t,headers:n})).data.metadata}async updateTable(e,t){const n=await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${Vi(e.namespace)}/tables/${e.name}`,body:t});return{"metadata-location":n.data["metadata-location"],metadata:n.data.metadata}}async dropTable(e,t){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${Vi(e.namespace)}/tables/${e.name}`,query:{purgeRequested:String((t==null?void 0:t.purge)??!1)}})}async loadTable(e){const t={};return this.accessDelegation&&(t["X-Iceberg-Access-Delegation"]=this.accessDelegation),(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${Vi(e.namespace)}/tables/${e.name}`,headers:t})).data.metadata}async tableExists(e){const t={};this.accessDelegation&&(t["X-Iceberg-Access-Delegation"]=this.accessDelegation);try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${Vi(e.namespace)}/tables/${e.name}`,headers:t}),!0}catch(n){if(n instanceof ko&&n.status===404)return!1;throw n}}async createTableIfNotExists(e,t){try{return await this.createTable(e,t)}catch(n){if(n instanceof ko&&n.status===409)return await this.loadTable({namespace:e.namespace,name:t.name});throw n}}},F2=class{constructor(e){var r;let t="v1";e.catalogName&&(t+=`/${e.catalogName}`);const n=e.baseUrl.endsWith("/")?e.baseUrl:`${e.baseUrl}/`;this.client=I2({baseUrl:n,auth:e.auth,fetchImpl:e.fetch}),this.accessDelegation=(r=e.accessDelegation)==null?void 0:r.join(","),this.namespaceOps=new O2(this.client,t),this.tableOps=new L2(this.client,t,this.accessDelegation)}async listNamespaces(e){return this.namespaceOps.listNamespaces(e)}async createNamespace(e,t){return this.namespaceOps.createNamespace(e,t)}async dropNamespace(e){await this.namespaceOps.dropNamespace(e)}async loadNamespaceMetadata(e){return this.namespaceOps.loadNamespaceMetadata(e)}async listTables(e){return this.tableOps.listTables(e)}
192async createTable(e,t){return this.tableOps.createTable(e,t)}async updateTable(e,t){return this.tableOps.updateTable(e,t)}async dropTable(e,t){await this.tableOps.dropTable(e,t)}async loadTable(e){return this.tableOps.loadTable(e)}async namespaceExists(e){return this.namespaceOps.namespaceExists(e)}async tableExists(e){return this.tableOps.tableExists(e)}async createNamespaceIfNotExists(e,t){return this.namespaceOps.createNamespaceIfNotExists(e,t)}async createTableIfNotExists(e,t){return this.tableOps.createTableIfNotExists(e,t)}},Ru=class extends Error{constructor(e,t="storage",n,r){super(e),this.__isStorageError=!0,this.namespace=t,this.name=t==="vectors"?"StorageVectorsError":"StorageError",this.status=n,this.statusCode=r}};function zu(e){return typeof e=="object"&&e!==null&&"__isStorageError"in e}var Df=class extends Ru{constructor(e,t,n,r="storage"){super(e,r,t,n),this.name=r==="vectors"?"StorageVectorsApiError":"StorageApiError",this.status=t,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},IE=class extends Ru{constructor(e,t,n="storage"){super(e,n),this.name=n==="vectors"?"StorageVectorsUnknownError":"StorageUnknownError",this.originalError=t}};const B2=e=>e?(...t)=>e(...t):(...t)=>fetch(...t),U2=e=>{if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Nf=e=>{if(Array.isArray(e))return e.map(n=>Nf(n));if(typeof e=="function"||e!==Object(e))return e;const t={};return Object.entries(e).forEach(([n,r])=>{const i=n.replace(/([-_][a-z])/gi,s=>s.toUpperCase().replace(/[-_]/g,""));t[i]=Nf(r)}),t},V2=e=>!e||typeof e!="string"||e.length===0||e.length>100||e.trim()!==e||e.includes("/")||e.includes("\\")?!1:/^[\w!.\*'() &$@=;:+,?-]+$/.test(e);function xo(e){"@babel/helpers - typeof";return xo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},xo(e)}function W2(e,t){if(xo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(xo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function $2(e){var t=W2(e,"string");return xo(t)=="symbol"?t:t+""}function K2(e,t,n){return(t=$2(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function aw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function K(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?aw(Object(n),!0).forEach(function(r){K2(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):aw(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}const ow=e=>{var t;return e.msg||e.message||e.error_description||(typeof e.error=="string"?e.error:(t=e.error)===null||t===void 0?void 0:t.message)||JSON.stringify(e)},G2=async(e,t,n,r)=>{if(e!==null&&typeof e=="object"&&typeof e.json=="function"){const i=e;let s=parseInt(i.status,10);Number.isFinite(s)||(s=500),i.json().then(a=>{const o=(a==null?void 0:a.statusCode)||(a==null?void 0:a.code)||s+"";t(new Df(ow(a),s,o,r))}).catch(()=>{const a=s+"";t(new Df(i.statusText||`HTTP ${s} error`,s,a,r))})}else t(new IE(ow(e),e,r))},H2=(e,t,n,r)=>{const i={method:e,headers:(t==null?void 0:t.headers)||{}};if(e==="GET"||e==="HEAD"||!r)return K(K({},i),n);if(U2(r)){var s;const a=(t==null?void 0:t.headers)||{};let o;for(const[l,c]of Object.entries(a))l.toLowerCase()==="content-type"&&(o=c);i.headers=q2(a,"Content-Type",(s=o)!==null&&s!==void 0?s:"application/json"),i.body=JSON.stringify(r)}else i.body=r;return t!=null&&t.duplex&&(i.duplex=t.duplex),K(K({},i),n)};function q2(e,t,n){const r=K({},e);for(const i of Object.keys(r))i.toLowerCase()===t.toLowerCase()&&delete r[i];return r[t]=n,r}async function wa(e,t,n,r,i,s,a){return new Promise((o,l)=>{e(n,H2(t,r,i,s)).then(c=>{if(!c.ok)throw c;if(r!=null&&r.noResolveJson)return c;if(a==="vectors"){const d=c.headers.get("content-type");if(c.headers.get("content-length")==="0"||c.status===204)return{};if(!d||!d.includes("application/json"))return{}}return c.json()}).then(c=>o(c)).catch(c=>G2(c,l,r,a))})}function OE(e="storage"){return{get:async(t,n,r,i)=>wa(t,"GET",n,r,i,void 0,e),post:async(t,n,r,i,s)=>wa(t,"POST",n,i,s,r,e),put:async(t,n,r,i,s)=>wa(t,"PUT",n,i,s,r,e),head:async(t,n,r,i)=>wa(t,"HEAD",n,K(K({},r),{},{noResolveJson:!0}),i,void 0,e),remove:async(t,n,r,i,s)=>wa(t,"DELETE",n,i,s,r,e)}}const J2=OE("storage"),{get:So,post:nn,put:Mf,head:Z2,remove:Pp}=J2,_t=OE("vectors");var sa=class{constructor(e,t={},n,r="storage"){this.shouldThrowOnError=!1,this.url=e,this.headers=Object.fromEntries(Object.entries(t).map(([i,s])=>[i.toLowerCase(),s])),this.fetch=B2(n),this.namespace=r}throwOnError(){return this.shouldThrowOnError=!0,this}setHeader(e,t){return this.headers=K(K({},this.headers),{},{[e.toLowerCase()]:t}),this}async handleOperation(e){var t=this;try{return{data:await e(),error:null}}catch(n){if(t.shouldThrowOnError)throw n;if(zu(n))return{data:null,error:n};throw n}}},Y2=class{constructor(e,t){this.downloadFn=e,this.shouldThrowOnError=t}then(e,t){return this.execute().then(e,t)}async execute(){var e=this;try{return{data:(await e.downloadFn()).body,error:null}}catch(t){if(e.shouldThrowOnError)throw t;if(zu(t))return{data:null,error:t};throw t}}};let LE;LE=Symbol.toStringTag;var Q2=class{constructor(e,t){this.downloadFn=e,this.shouldThrowOnError=t,this[LE]="BlobDownloadBuilder",this.promise=null}asStream(){return new Y2(this.downloadFn,this.shouldThrowOnError)}then(e,t){return this.getPromise().then(e,t)}catch(e){return this.getPromise().catch(e)}finally(e){return this.getPromise().finally(e)}getPromise(){return this.promise||(this.promise=this.execute()),this.promise}async execute(){var e=this;try{return{data:await(await e.downloadFn()).blob(),error:null}}catch(t){if(e.shouldThrowOnError)throw t;if(zu(t))return{data:null,error:t};throw t}}};const X2={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},lw={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1};var eL=class extends sa{constructor(e,t={},n,r){super(e,t,r,"storage"),this.bucketId=n}async uploadOrUpdate(e,t,n,r){var i=this;return i.handleOperation(async()=>{let s;const a=K(K({},lw),r);let o=K(K({},i.headers),e==="POST"&&{"x-upsert":String(a.upsert)});const l=a.metadata;typeof Blob<"u"&&n instanceof Blob?(s=new FormData,s.append("cacheControl",a.cacheControl),l&&s.append("metadata",i.encodeMetadata(l)),s.append("",n)):typeof FormData<"u"&&n instanceof FormData?(s=n,s.has("cacheControl")||s.append("cacheControl",a.cacheControl),l&&!s.has("metadata")&&s.append("metadata",i.encodeMetadata(l))):(s=n,o["cache-control"]=`max-age=${a.cacheControl}`,o["content-type"]=a.contentType,l&&(o["x-metadata"]=i.toBase64(i.encodeMetadata(l))),(typeof ReadableStream<"u"&&s instanceof ReadableStream||s&&typeof s=="object"&&"pipe"in s&&typeof s.pipe=="function")&&!a.duplex&&(a.duplex="half")),r!=null&&r.headers&&(o=K(K({},o),r.headers));const c=i._removeEmptyFolders(t),d=i._getFinalPath(c),h=await(e=="PUT"?Mf:nn)(i.fetch,`${i.url}/object/${d}`,s,K({headers:o},a!=null&&a.duplex?{duplex:a.duplex}:{}));return{path:c,id:h.Id,fullPath:h.Key}})}async upload(e,t,n){return this.uploadOrUpdate("POST",e,t,n)}async uploadToSignedUrl(e,t,n,r){var i=this;const s=i._removeEmptyFolders(e),a=i._getFinalPath(s),o=new URL(i.url+`/object/upload/sign/${a}`);return o.searchParams.set("token",t),i.handleOperation(async()=>{let l;const c=K(K({},lw),r),d=K(K({},i.headers),{"x-upsert":String(c.upsert)});return typeof Blob<"u"&&n instanceof Blob?(l=new FormData,l.append("cacheControl",c.cacheControl),l.append("",n)):typeof FormData<"u"&&n instanceof FormData?(l=n,l.append("cacheControl",c.cacheControl)):(l=n,d["cache-control"]=`max-age=${c.cacheControl}`,d["content-type"]=c.contentType),{path:s,fullPath:(await Mf(i.fetch,o.toString(),l,{headers:d})).Key}})}async createSignedUploadUrl(e,t){var n=this;return n.handleOperation(async()=>{let r=n._getFinalPath(e);const i=K({},n.headers);t!=null&&t.upsert&&(i["x-upsert"]="true");const s=await nn(n.fetch,`${n.url}/object/upload/sign/${r}`,{},{headers:i}),a=new URL(n.url+s.url),o=a.searchParams.get("token");if(!o)throw new Ru("No token returned by API");return{signedUrl:a.toString(),path:e,token:o}})}async update(e,t,n){return this.uploadOrUpdate("PUT",e,t,n)}async move(e,t,n){var r=this;return r.handleOperation(async()=>await nn(r.fetch,`${r.url}/object/move`,{bucketId:r.bucketId,sourceKey:e,destinationKey:t,de
192stinationBucket:n==null?void 0:n.destinationBucket},{headers:r.headers}))}async copy(e,t,n){var r=this;return r.handleOperation(async()=>({path:(await nn(r.fetch,`${r.url}/object/copy`,{bucketId:r.bucketId,sourceKey:e,destinationKey:t,destinationBucket:n==null?void 0:n.destinationBucket},{headers:r.headers})).Key}))}async createSignedUrl(e,t,n){var r=this;return r.handleOperation(async()=>{let i=r._getFinalPath(e);const s=typeof(n==null?void 0:n.transform)=="object"&&n.transform!==null&&Object.keys(n.transform).length>0;let a=await nn(r.fetch,`${r.url}/object/sign/${i}`,K({expiresIn:t},s?{transform:n.transform}:{}),{headers:r.headers});const o=new URLSearchParams;n!=null&&n.download&&o.set("download",n.download===!0?"":n.download),(n==null?void 0:n.cacheNonce)!=null&&o.set("cacheNonce",String(n.cacheNonce));const l=o.toString(),c=s&&a.signedURL.includes("/object/sign/")?a.signedURL.replace("/object/sign/","/render/image/sign/"):a.signedURL;return{signedUrl:encodeURI(`${r.url}${c}${l?`&${l}`:""}`)}})}async createSignedUrls(e,t,n){var r=this;return r.handleOperation(async()=>{const i=await nn(r.fetch,`${r.url}/object/sign/${r.bucketId}`,{expiresIn:t,paths:e},{headers:r.headers}),s=new URLSearchParams;n!=null&&n.download&&s.set("download",n.download===!0?"":n.download),(n==null?void 0:n.cacheNonce)!=null&&s.set("cacheNonce",String(n.cacheNonce));const a=s.toString();return i.map(o=>K(K({},o),{},{signedUrl:o.signedURL?encodeURI(`${r.url}${o.signedURL}${a?`&${a}`:""}`):null}))})}download(e,t,n){const r=typeof(t==null?void 0:t.transform)<"u"?"render/image/authenticated":"object",i=new URLSearchParams;t!=null&&t.transform&&this.applyTransformOptsToQuery(i,t.transform),(t==null?void 0:t.cacheNonce)!=null&&i.set("cacheNonce",String(t.cacheNonce));const s=i.toString(),a=this._getFinalPath(e),o=()=>So(this.fetch,`${this.url}/${r}/${a}${s?`?${s}`:""}`,{headers:this.headers,noResolveJson:!0},n);return new Q2(o,this.shouldThrowOnError)}async info(e){var t=this;const n=t._getFinalPath(e);return t.handleOperation(async()=>Nf(await So(t.fetch,`${t.url}/object/info/${n}`,{headers:t.headers})))}async exists(e){var t=this;const n=t._getFinalPath(e);try{return await Z2(t.fetch,`${t.url}/object/${n}`,{headers:t.headers}),{data:!0,error:null}}catch(i){if(t.shouldThrowOnError)throw i;if(zu(i)){var r;const s=i instanceof Df?i.status:i instanceof IE?(r=i.originalError)===null||r===void 0?void 0:r.status:void 0;if(s!==void 0&&[400,404].includes(s))return{data:!1,error:i}}throw i}}getPublicUrl(e,t){const n=this._getFinalPath(e),r=new URLSearchParams;t!=null&&t.download&&r.set("download",t.download===!0?"":t.download),t!=null&&t.transform&&this.applyTransformOptsToQuery(r,t.transform),(t==null?void 0:t.cacheNonce)!=null&&r.set("cacheNonce",String(t.cacheNonce));const i=r.toString(),s=typeof(t==null?void 0:t.transform)<"u"?"render/image":"object";return{data:{publicUrl:encodeURI(`${this.url}/${s}/public/${n}`)+(i?`?${i}`:"")}}}async remove(e){var t=this;return t.handleOperation(async()=>await Pp(t.fetch,`${t.url}/object/${t.bucketId}`,{prefixes:e},{headers:t.headers}))}async list(e,t,n){var r=this;return r.handleOperation(async()=>{const i=K(K(K({},X2),t),{},{prefix:e||""});return await nn(r.fetch,`${r.url}/object/list/${r.bucketId}`,i,{headers:r.headers},n)})}async listV2(e,t){var n=this;return n.handleOperation(async()=>{const r=K({},e);return await nn(n.fetch,`${n.url}/object/list-v2/${n.bucketId}`,r,{headers:n.headers},t)})}encodeMetadata(e){return JSON.stringify(e)}toBase64(e){return typeof Buffer<"u"?Buffer.from(e).toString("base64"):btoa(e)}_getFinalPath(e){return`${this.bucketId}/${e.replace(/^\/+/,"")}`}_removeEmptyFolders(e){return e.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}applyTransformOptsToQuery(e,t){return t.width&&e.set("width",t.width.toString()),t.height&&e.set("height",t.height.toString()),t.resize&&e.set("resize",t.resize),t.format&&e.set("format",t.format),t.quality&&e.set("quality",t.quality.toString()),e}};const tL="2.103.0",$o={"X-Client-Info":`storage-js/${tL}`};var nL=class extends sa{constructor(e,t={},n,r){const i=new URL(e);r!=null&&r.useNewHostname&&/supabase\.(co|in|red)$/.test(i.hostname)&&!i.hostname.includes("storage.supabase.")&&(i.hostname=i.hostname.replace("supabase.","storage.supabase."));const s=i.href.replace(/\/$/,""),a=K(K({},$o),t);super(s,a,n,"storage")}async listBuckets(e){var t=this;return t.handleOperation(async()=>{const n=t.listBucketOptionsToQueryString(e);return await So(t.fetch,`${t.url}/bucket${n}`,{headers:t.headers})})}async getBucket(e){var t=this;return t.handleOperation(async()=>await So(t.fetch,`${t.url}/bucket/${e}`,{headers:t.headers}))}async createBucket(e,t={public:!1}){var n=this;return n.handleOperation(async()=>await nn(n.fetch,`${n.url}/bucket`,{id:e,name:e,type:t.type,public:t.public,file_size_limit:t.fileSizeLimit,allowed_mime_types:t.allowedMimeTypes},{headers:n.headers}))}async updateBucket(e,t){var n=this;return n.handleOperation(async()=>await Mf(n.fetch,`${n.url}/bucket/${e}`,{id:e,name:e,public:t.public,file_size_limit:t.fileSizeLimit,allowed_mime_types:t.allowedMimeTypes},{headers:n.headers}))}async emptyBucket(e){var t=this;return t.handleOperation(async()=>await nn(t.fetch,`${t.url}/bucket/${e}/empty`,{},{headers:t.headers}))}async deleteBucket(e){var t=this;return t.handleOperation(async()=>await Pp(t.fetch,`${t.url}/bucket/${e}`,{},{headers:t.headers}))}listBucketOptionsToQueryString(e){const t={};return e&&("limit"in e&&(t.limit=String(e.limit)),"offset"in e&&(t.offset=String(e.offset)),e.search&&(t.search=e.search),e.sortColumn&&(t.sortColumn=e.sortColumn),e.sortOrder&&(t.sortOrder=e.sortOrder)),Object.keys(t).length>0?"?"+new URLSearchParams(t).toString():""}},rL=class extends sa{constructor(e,t={},n){const r=e.replace(/\/$/,""),i=K(K({},$o),t);super(r,i,n,"storage")}async createBucket(e){var t=this;return t.handleOperation(async()=>await nn(t.fetch,`${t.url}/bucket`,{name:e},{headers:t.headers}))}async listBuckets(e){var t=this;return t.handleOperation(async()=>{const n=new URLSearchParams;(e==null?void 0:e.limit)!==void 0&&n.set("limit",e.limit.toString()),(e==null?void 0:e.offset)!==void 0&&n.set("offset",e.offset.toString()),e!=null&&e.sortColumn&&n.set("sortColumn",e.sortColumn),e!=null&&e.sortOrder&&n.set("sortOrder",e.sortOrder),e!=null&&e.search&&n.set("search",e.search);const r=n.toString(),i=r?`${t.url}/bucket?${r}`:`${t.url}/bucket`;return await So(t.fetch,i,{headers:t.headers})})}async deleteBucket(e){var t=this;return t.handleOperation(async()=>await Pp(t.fetch,`${t.url}/bucket/${e}`,{},{headers:t.headers}))}from(e){var t=this;if(!V2(e))throw new Ru("Invalid bucket name: File, folder, and bucket names must follow AWS object key naming guidelines and should avoid the use of any other characters.");const n=new F2({baseUrl:this.url,catalogName:e,auth:{type:"custom",getHeaders:async()=>t.headers},fetch:this.fetch}
192),r=this.shouldThrowOnError;return new Proxy(n,{get(i,s){const a=i[s];return typeof a!="function"?a:async(...o)=>{try{return{data:await a.apply(i,o),error:null}}catch(l){if(r)throw l;return{data:null,error:l}}}}})}},iL=class extends sa{constructor(e,t={},n){const r=e.replace(/\/$/,""),i=K(K({},$o),{},{"Content-Type":"application/json"},t);super(r,i,n,"vectors")}async createIndex(e){var t=this;return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/CreateIndex`,e,{headers:t.headers})||{})}async getIndex(e,t){var n=this;return n.handleOperation(async()=>await _t.post(n.fetch,`${n.url}/GetIndex`,{vectorBucketName:e,indexName:t},{headers:n.headers}))}async listIndexes(e){var t=this;return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/ListIndexes`,e,{headers:t.headers}))}async deleteIndex(e,t){var n=this;return n.handleOperation(async()=>await _t.post(n.fetch,`${n.url}/DeleteIndex`,{vectorBucketName:e,indexName:t},{headers:n.headers})||{})}},sL=class extends sa{constructor(e,t={},n){const r=e.replace(/\/$/,""),i=K(K({},$o),{},{"Content-Type":"application/json"},t);super(r,i,n,"vectors")}async putVectors(e){var t=this;if(e.vectors.length<1||e.vectors.length>500)throw new Error("Vector batch size must be between 1 and 500 items");return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/PutVectors`,e,{headers:t.headers})||{})}async getVectors(e){var t=this;return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/GetVectors`,e,{headers:t.headers}))}async listVectors(e){var t=this;if(e.segmentCount!==void 0){if(e.segmentCount<1||e.segmentCount>16)throw new Error("segmentCount must be between 1 and 16");if(e.segmentIndex!==void 0&&(e.segmentIndex<0||e.segmentIndex>=e.segmentCount))throw new Error(`segmentIndex must be between 0 and ${e.segmentCount-1}`)}return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/ListVectors`,e,{headers:t.headers}))}async queryVectors(e){var t=this;return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/QueryVectors`,e,{headers:t.headers}))}async deleteVectors(e){var t=this;if(e.keys.length<1||e.keys.length>500)throw new Error("Keys batch size must be between 1 and 500 items");return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/DeleteVectors`,e,{headers:t.headers})||{})}},aL=class extends sa{constructor(e,t={},n){const r=e.replace(/\/$/,""),i=K(K({},$o),{},{"Content-Type":"application/json"},t);super(r,i,n,"vectors")}async createBucket(e){var t=this;return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/CreateVectorBucket`,{vectorBucketName:e},{headers:t.headers})||{})}async getBucket(e){var t=this;return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/GetVectorBucket`,{vectorBucketName:e},{headers:t.headers}))}async listBuckets(e={}){var t=this;return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/ListVectorBuckets`,e,{headers:t.headers}))}async deleteBucket(e){var t=this;return t.handleOperation(async()=>await _t.post(t.fetch,`${t.url}/DeleteVectorBucket`,{vectorBucketName:e},{headers:t.headers})||{})}},oL=class extends aL{constructor(e,t={}){super(e,t.headers||{},t.fetch)}from(e){return new lL(this.url,this.headers,e,this.fetch)}async createBucket(e){var t=()=>super.createBucket,n=this;return t().call(n,e)}async getBucket(e){var t=()=>super.getBucket,n=this;return t().call(n,e)}async listBuckets(e={}){var t=()=>super.listBuckets,n=this;return t().call(n,e)}async deleteBucket(e){var t=()=>super.deleteBucket,n=this;return t().call(n,e)}},lL=class extends iL{constructor(e,t,n,r){super(e,t,r),this.vectorBucketName=n}async createIndex(e){var t=()=>super.createIndex,n=this;return t().call(n,K(K({},e),{},{vectorBucketName:n.vectorBucketName}))}async listIndexes(e={}){var t=()=>super.listIndexes,n=this;return t().call(n,K(K({},e),{},{vectorBucketName:n.vectorBucketName}))}async getIndex(e){var t=()=>super.getIndex,n=this;return t().call(n,n.vectorBucketName,e)}async deleteIndex(e){var t=()=>super.deleteIndex,n=this;return t().call(n,n.vectorBucketName,e)}index(e){return new cL(this.url,this.headers,this.vectorBucketName,e,this.fetch)}},cL=class extends sL{constructor(e,t,n,r,i){super(e,t,i),this.vectorBucketName=n,this.indexName=r}async putVectors(e){var t=()=>super.putVectors,n=this;return t().call(n,K(K({},e),{},{vectorBucketName:n.vectorBucketName,indexName:n.indexName}))}async getVectors(e){var t=()=>super.getVectors,n=this;return t().call(n,K(K({},e),{},{vectorBucketName:n.vectorBucketName,indexName:n.indexName}))}async listVectors(e={}){var t=()=>super.listVectors,n=this;return t().call(n,K(K({},e),{},{vectorBucketName:n.vectorBucketName,indexName:n.indexName}))}async queryVectors(e){var t=()=>super.queryVectors,n=this;return t().call(n,K(K({},e),{},{vectorBucketName:n.vectorBucketName,indexName:n.indexName}))}async deleteVectors(e){var t=()=>super.deleteVectors,n=this;return t().call(n,K(K({},e),{},{vectorBucketName:n.vectorBucketName,indexName:n.indexName}))}},uL=class extends nL{constructor(e,t={},n,r){super(e,t,n,r)}from(e){return new eL(this.url,this.headers,e,this.fetch)}get vectors(){return new oL(this.url+"/vector",{headers:this.headers,fetch:this.fetch})}get analytics(){return new rL(this.url+"/iceberg",this.headers,this.fetch)}};function Du(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}const FE="2.103.0",Xi=30*1e3,If=3,Fd=If*Xi,dL="http://localhost:9999",hL="supabase.auth.token",fL={"X-Client-Info":`gotrue-js/${FE}`},Of="X-Supabase-Api-Version",BE={"2024-01-01":{timestamp:Date.parse("2024-01-01T00:00:00.0Z"),name:"2024-01-01"}},mL=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}$|[a-z0-9_-]{2}$)$/i,pL=10*60*1e3;
192class Eo extends Error{constructor(t,n,r){super(t),this.__isAuthError=!0,this.name="AuthError",this.status=n,this.code=r}}function B(e){return typeof e=="object"&&e!==null&&"__isAuthError"in e}class gL extends Eo{constructor(t,n,r){super(t,n,r),this.name="AuthApiError",this.status=n,this.code=r}}function vL(e){return B(e)&&e.name==="AuthApiError"}class ai extends Eo{constructor(t,n){super(t),this.name="AuthUnknownError",this.originalError=n}}class nr extends Eo{constructor(t,n,r,i){super(t,r,i),this.name=n,this.status=r}}class Tt extends nr{constructor(){super("Auth session missing!","AuthSessionMissingError",400,void 0)}}function Al(e){return B(e)&&e.name==="AuthSessionMissingError"}class Wi extends nr{constructor(){super("Auth session or user missing","AuthInvalidTokenResponseError",500,void 0)}}class Cl extends nr{constructor(t){super(t,"AuthInvalidCredentialsError",400,void 0)}}class _l extends nr{constructor(t,n=null){super(t,"AuthImplicitGrantRedirectError",500,void 0),this.details=null,this.details=n}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}function yL(e){return B(e)&&e.name==="AuthImplicitGrantRedirectError"}class cw extends nr{constructor(t,n=null){super(t,"AuthPKCEGrantCodeExchangeError",500,void 0),this.details=null,this.details=n}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class wL extends nr{constructor(){super("PKCE code verifier not found in storage. This can happen if the auth flow was initiated in a different browser or device, or if the storage was cleared. For SSR frameworks (Next.js, SvelteKit, etc.), use @supabase/ssr on both the server and client to store the code verifier in cookies.","AuthPKCECodeVerifierMissingError",400,"pkce_code_verifier_not_found")}}class Lf extends nr{constructor(t,n){super(t,"AuthRetryableFetchError",n,void 0)}}function Bd(e){return B(e)&&e.name==="AuthRetryableFetchError"}class uw extends nr{constructor(t,n,r){super(t,"AuthWeakPasswordError",n,"weak_password"),this.reasons=r}}class Ff extends nr{constructor(t){super(t,"AuthInvalidJwtError",400,"invalid_jwt")}}const Hc="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".split(""),dw=` 193\r=`.split(""),bL=(()=>{const e=new Array(128);for(let t=0;t<e.length;t+=1)e[t]=-1;for(let t=0;t<dw.length;t+=1)e[dw[t].charCodeAt(0)]=-2;for(let t=0;t<Hc.length;t+=1)e[Hc[t].charCodeAt(0)]=t;return e})();function hw(e,t,n){if(e!==null)for(t.queue=t.queue<<8|e,t.queuedBits+=8;t.queuedBits>=6;){const r=t.queue>>t.queuedBits-6&63;n(Hc[r]),t.queuedBits-=6}else if(t.queuedBits>0)for(t.queue=t.queue<<6-t.queuedBits,t.queuedBits=6;t.queuedBits>=6;){const r=t.queue>>t.queuedBits-6&63;n(Hc[r]),t.queuedBits-=6}}function UE(e,t,n){const r=bL[e];if(r>-1)for(t.queue=t.queue<<6|r,t.queuedBits+=6;t.queuedBits>=8;)n(t.queue>>t.queuedBits-8&255),t.queuedBits-=8;else{if(r===-2)return;throw new Error(`Invalid Base64-URL character "${String.fromCharCode(e)}"`)}}function fw(e){const t=[],n=a=>{t.push(String.fromCodePoint(a))},r={utf8seq:0,codepoint:0},i={queue:0,queuedBits:0},s=a=>{SL(a,r,n)};for(let a=0;a<e.length;a+=1)UE(e.charCodeAt(a),i,s);return t.join("")}function kL(e,t){if(e<=127){t(e);return}else if(e<=2047){t(192|e>>6),t(128|e&63);return}else if(e<=65535){t(224|e>>12),t(128|e>>6&63),t(128|e&63);return}else if(e<=1114111){t(240|e>>18),t(128|e>>12&63),t(128|e>>6&63),t(128|e&63);return}throw new Error(`Unrecognized Unicode codepoint: ${e.toString(16)}`)}function xL(e,t){for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n);if(r>55295&&r<=56319){const i=(r-55296)*1024&65535;r=(e.charCodeAt(n+1)-56320&65535|i)+65536,n+=1}kL(r,t)}}function SL(e,t,n){if(t.utf8seq===0){if(e<=127){n(e);return}for(let r=1;r<6;r+=1)if(!(e>>7-r&1)){t.utf8seq=r;break}if(t.utf8seq===2)t.codepoint=e&31;else if(t.utf8seq===3)t.codepoint=e&15;else if(t.utf8seq===4)t.codepoint=e&7;else throw new Error("Invalid UTF-8 sequence");t.utf8seq-=1}else if(t.utf8seq>0){if(e<=127)throw new Error("Invalid UTF-8 sequence");t.codepoint=t.codepoint<<6|e&63,t.utf8seq-=1,t.utf8seq===0&&n(t.codepoint)}}function Ts(e){const t=[],n={queue:0,queuedBits:0},r=i=>{t.push(i)};for(let i=0;i<e.length;i+=1)UE(e.charCodeAt(i),n,r);return new Uint8Array(t)}function EL(e){const t=[];return xL(e,n=>t.push(n)),new Uint8Array(t)}function hi(e){const t=[],n={queue:0,queuedBits:0},r=i=>{t.push(i)};return e.forEach(i=>
193hw(i,n,r)),hw(null,n,r),t.join("")}function TL(e){return Math.round(Date.now()/1e3)+e}function AL(){return Symbol("auth-callback")}const Ve=()=>typeof window<"u"&&typeof document<"u",ei={tested:!1,writable:!1},VE=()=>{if(!Ve())return!1;try{if(typeof globalThis.localStorage!="object")return!1}catch{return!1}if(ei.tested)return ei.writable;const e=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(e,e),globalThis.localStorage.removeItem(e),ei.tested=!0,ei.writable=!0}catch{ei.tested=!0,ei.writable=!1}return ei.writable};function CL(e){const t={},n=new URL(e);if(n.hash&&n.hash[0]==="#")try{new URLSearchParams(n.hash.substring(1)).forEach((i,s)=>{t[s]=i})}catch{}return n.searchParams.forEach((r,i)=>{t[i]=r}),t}const WE=e=>e?(...t)=>e(...t):(...t)=>fetch(...t),_L=e=>typeof e=="object"&&e!==null&&"status"in e&&"ok"in e&&"json"in e&&typeof e.json=="function",es=async(e,t,n)=>{await e.setItem(t,JSON.stringify(n))},ti=async(e,t)=>{const n=await e.getItem(t);if(!n)return null;try{return JSON.parse(n)}catch{return n}},Ue=async(e,t)=>{await e.removeItem(t)};class Nu{constructor(){this.promise=new Nu.promiseConstructor((t,n)=>{this.resolve=t,this.reject=n})}}Nu.promiseConstructor=Promise;function Pl(e){const t=e.split(".");if(t.length!==3)throw new Ff("Invalid JWT structure");for(let r=0;r<t.length;r++)if(!mL.test(t[r]))throw new Ff("JWT not in base64url format");return{header:JSON.parse(fw(t[0])),payload:JSON.parse(fw(t[1])),signature:Ts(t[2]),raw:{header:t[0],payload:t[1]}}}async function PL(e){return await new Promise(t=>{setTimeout(()=>t(null),e)})}function jL(e,t){return new Promise((r,i)=>{(async()=>{for(let s=0;s<1/0;s++)try{const a=await e(s);if(!t(s,null,a)){r(a);return}}catch(a){if(!t(s,a)){i(a);return}}})()})}function RL(e){return("0"+e.toString(16)).substr(-2)}function zL(){const t=new Uint32Array(56);if(typeof crypto>"u"){const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~",r=n.length;let i="";for(let s=0;s<56;s++)i+=n.charAt(Math.floor(Math.random()*r));return i}return crypto.getRandomValues(t),Array.from(t,RL).join("")}async function DL(e){const n=new TextEncoder().encode(e),r=await crypto.subtle.digest("SHA-256",n),i=new Uint8Array(r);return Array.from(i).map(s=>String.fromCharCode(s)).join("")}async function NL(e){if(!(typeof crypto<"u"&&typeof crypto.subtle<"u"&&typeof TextEncoder<"u"))return console.warn("WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256."),e;const n=await DL(e);return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function $i(e,t,n=!1){const r=zL();let i=r;n&&(i+="/PASSWORD_RECOVERY"),await es(e,`${t}-code-verifier`,i);const s=await NL(r);return[s,r===s?"plain":"s256"]}const ML=/^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i;function IL(e){const t=e.headers.get(Of);if(!t||!t.match(ML))return null;try{return new Date(`${t}T00:00:00.0Z`)}catch{return null}}function OL(e){if(!e)throw new Error("Missing exp claim");const t=Math.floor(Date.now()/1e3);if(e<=t)throw new Error("JWT has expired")}function LL(e){switch(e){case"RS256":return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case"ES256":return{name:"ECDSA",namedCurve:"P-256",hash:{name:"SHA-256"}};default:throw new Error("Invalid alg claim")}}const FL=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;function Ki(e){if(!FL.test(e))throw new Error("@supabase/auth-js: Expected parameter to be UUID but is not")}function Ud(){const e={};return new Proxy(e,{get:(t,n)=>{if(n==="__isUserNotAvailableProxy")return!0;if(typeof n=="symbol"){const r=n.toString();if(r==="Symbol(Symbol.toPrimitive)"||r==="Symbol(Symbol.toStringTag)"||r==="Symbol(util.inspect.custom)")return}throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Accessing the "${n}" property of the session object is not supported. Please use getUser() instead.`)},set:(t,n)=>{throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Setting the "${n}" property of the session object is not supported. Please use getUser() to fetch a user object you can manipulate.`)},deleteProperty:(t,n)=>{throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Deleting the "${n}" property of the session object is not supported. Please use getUser() to fetch a user object you can manipulate.`)}})}function BL(e,t){return new Proxy(e,{get:(n,r,i)=>{if(r==="__isInsecureUserWarningProxy")return!0;
193if(typeof r=="symbol"){const s=r.toString();if(s==="Symbol(Symbol.toPrimitive)"||s==="Symbol(Symbol.toStringTag)"||s==="Symbol(util.inspect.custom)"||s==="Symbol(nodejs.util.inspect.custom)")return Reflect.get(n,r,i)}return!t.value&&typeof r=="string"&&(console.warn("Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and may not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server."),t.value=!0),Reflect.get(n,r,i)}})}function mw(e){return JSON.parse(JSON.stringify(e))}const si=e=>e.msg||e.message||e.error_description||e.error||JSON.stringify(e),UL=[502,503,504];async function pw(e){var t;if(!_L(e))throw new Lf(si(e),0);if(UL.includes(e.status))throw new Lf(si(e),e.status);let n;try{n=await e.json()}catch(s){throw new ai(si(s),s)}let r;const i=IL(e);if(i&&i.getTime()>=BE["2024-01-01"].timestamp&&typeof n=="object"&&n&&typeof n.code=="string"?r=n.code:typeof n=="object"&&n&&typeof n.error_code=="string"&&(r=n.error_code),r){if(r==="weak_password")throw new uw(si(n),e.status,((t=n.weak_password)===null||t===void 0?void 0:t.reasons)||[]);if(r==="session_not_found")throw new Tt}else if(typeof n=="object"&&n&&typeof n.weak_password=="object"&&n.weak_password&&Array.isArray(n.weak_password.reasons)&&n.weak_password.reasons.length&&n.weak_password.reasons.reduce((s,a)=>s&&typeof a=="string",!0))throw new uw(si(n),e.status,n.weak_password.reasons);throw new gL(si(n),e.status||500,r)}const VL=(e,t,n,r)=>{const i={method:e,headers:(t==null?void 0:t.headers)||{}};return e==="GET"?i:(i.headers=Object.assign({"Content-Type":"application/json;charset=UTF-8"},t==null?void 0:t.headers),i.body=JSON.stringify(r),Object.assign(Object.assign({},i),n))};async function W(e,t,n,r){var i;const s=Object.assign({},r==null?void 0:r.headers);s[Of]||(s[Of]=BE["2024-01-01"].name),r!=null&&r.jwt&&(s.Authorization=`Bearer ${r.jwt}`);const a=(i=r==null?void 0:r.query)!==null&&i!==void 0?i:{};r!=null&&r.redirectTo&&(a.redirect_to=r.redirectTo);const o=Object.keys(a).length?"?"+new URLSearchParams(a).toString():"",l=await WL(e,t,n+o,{headers:s,noResolveJson:r==null?void 0:r.noResolveJson},{},r==null?void 0:r.body);return r!=null&&r.xform?r==null?void 0:r.xform(l):{data:Object.assign({},l),error:null}}async function WL(e,t,n,r,i,s){const a=VL(t,r,i,s);let o;try{o=await e(n,Object.assign({},a))}catch(l){throw console.error(l),new Lf(si(l),0)}if(o.ok||await pw(o),r!=null&&r.noResolveJson)return o;try{return await o.json()}catch(l){await pw(l)}}function Qt(e){var t;let n=null;GL(e)&&(n=Object.assign({},e),e.expires_at||(n.expires_at=TL(e.expires_in)));const r=(t=e.user)!==null&&t!==void 0?t:e;return{data:{session:n,user:r},error:null}}function gw(e){const t=Qt(e);return!t.error&&e.weak_password&&typeof e.weak_password=="object"&&Array.isArray(e.weak_password.reasons)&&e.weak_password.reasons.length&&e.weak_password.message&&typeof e.weak_password.message=="string"&&e.weak_password.reasons.reduce((n,r)=>n&&typeof r=="string",!0)&&(t.data.weak_password=e.weak_password),t}function kr(e){var t;return{data:{user:(t=e.user)!==null&&t!==void 0?t:e},error:null}}function $L(e){return{data:e,error:null}}function KL(e){const{action_link:t,email_otp:n,hashed_token:r,redirect_to:i,verification_type:s}=e,a=Du(e,["action_link","email_otp","hashed_token","redirect_to","verification_type"]),o={action_link:t,email_otp:n,hashed_token:r,redirect_to:i,verification_type:s},l=Object.assign({},a);return{data:{properties:o,user:l},error:null}}function vw(e){return e}function GL(e){return e.access_token&&e.refresh_token&&e.expires_in}const Vd=["global","local","others"];class HL{constructor({url:t="",headers:n={},fetch:r}){this.url=t,this.headers=n,this.fetch=WE(r),this.mfa={listFactors:this._listFactors.bind(this),deleteFactor:this._deleteFactor.bind(this)},this.oauth={listClients:this._listOAuthClients.bind(this),createClient:this._createOAuthClient.bind(this),getClient:this._getOAuthClient.bind(this),updateClient:this._updateOAuthClient.bind(this),deleteClient:this._deleteOAuthClient.bind(this),regenerateClientSecret:this._regenerateOAuthClientSecret.bind(this)},this.customProviders={listProviders:this._listCustomProviders.bind(this),createProvider:this._createCustomProvider.bind(this),getProvider:this._getCustomProvider.bind(this),updateProvider:this._updateCustomProvider.bind(this),deleteProvider:this._deleteCustomProvider.bind(this)}}
vendor: 4,751 bytes, line 193
193async signOut(t,n=Vd[0]){if(Vd.indexOf(n)<0)throw new Error(`@supabase/auth-js: Parameter scope must be one of ${Vd.join(", ")}`);try{return await W(this.fetch,"POST",`${this.url}/logout?scope=${n}`,{headers:this.headers,jwt:t,noResolveJson:!0}),{data:null,error:null}}catch(r){if(B(r))return{data:null,error:r};throw r}}async inviteUserByEmail(t,n={}){try{return await W(this.fetch,"POST",`${this.url}/invite`,{body:{email:t,data:n.data},headers:this.headers,redirectTo:n.redirectTo,xform:kr})}catch(r){if(B(r))return{data:{user:null},error:r};throw r}}async generateLink(t){try{const{options:n}=t,r=Du(t,["options"]),i=Object.assign(Object.assign({},r),n);return"newEmail"in r&&(i.new_email=r==null?void 0:r.newEmail,delete i.newEmail),await W(this.fetch,"POST",`${this.url}/admin/generate_link`,{body:i,headers:this.headers,xform:KL,redirectTo:n==null?void 0:n.redirectTo})}catch(n){if(B(n))return{data:{properties:null,user:null},error:n};throw n}}async createUser(t){try{return await W(this.fetch,"POST",`${this.url}/admin/users`,{body:t,headers:this.headers,xform:kr})}catch(n){if(B(n))return{data:{user:null},error:n};throw n}}async listUsers(t){var n,r,i,s,a,o,l;try{const c={nextPage:null,lastPage:0,total:0},d=await W(this.fetch,"GET",`${this.url}/admin/users`,{headers:this.headers,noResolveJson:!0,query:{page:(r=(n=t==null?void 0:t.page)===null||n===void 0?void 0:n.toString())!==null&&r!==void 0?r:"",per_page:(s=(i=t==null?void 0:t.perPage)===null||i===void 0?void 0:i.toString())!==null&&s!==void 0?s:""},xform:vw});if(d.error)throw d.error;const h=await d.json(),f=(a=d.headers.get("x-total-count"))!==null&&a!==void 0?a:0,m=(l=(o=d.headers.get("link"))===null||o===void 0?void 0:o.split(","))!==null&&l!==void 0?l:[];return m.length>0&&(m.forEach(w=>{const p=parseInt(w.split(";")[0].split("=")[1].substring(0,1)),b=JSON.parse(w.split(";")[1].split("=")[1]);c[`${b}Page`]=p}),c.total=parseInt(f)),{data:Object.assign(Object.assign({},h),c),error:null}}catch(c){if(B(c))return{data:{users:[]},error:c};throw c}}async getUserById(t){Ki(t);try{return await W(this.fetch,"GET",`${this.url}/admin/users/${t}`,{headers:this.headers,xform:kr})}catch(n){if(B(n))return{data:{user:null},error:n};throw n}}async updateUserById(t,n){Ki(t);try{return await W(this.fetch,"PUT",`${this.url}/admin/users/${t}`,{body:n,headers:this.headers,xform:kr})}catch(r){if(B(r))return{data:{user:null},error:r};throw r}}async deleteUser(t,n=!1){Ki(t);try{return await W(this.fetch,"DELETE",`${this.url}/admin/users/${t}`,{headers:this.headers,body:{should_soft_delete:n},xform:kr})}catch(r){if(B(r))return{data:{user:null},error:r};throw r}}async _listFactors(t){Ki(t.userId);try{const{data:n,error:r}=await W(this.fetch,"GET",`${this.url}/admin/users/${t.userId}/factors`,{headers:this.headers,xform:i=>({data:{factors:i},error:null})});return{data:n,error:r}}catch(n){if(B(n))return{data:null,error:n};throw n}}async _deleteFactor(t){Ki(t.userId),Ki(t.id);try{return{data:await W(this.fetch,"DELETE",`${this.url}/admin/users/${t.userId}/factors/${t.id}`,{headers:this.headers}),error:null}}catch(n){if(B(n))return{data:null,error:n};throw n}}async _listOAuthClients(t){var n,r,i,s,a,o,l;try{const c={nextPage:null,lastPage:0,total:0},d=await W(this.fetch,"GET",`${this.url}/admin/oauth/clients`,{headers:this.headers,noResolveJson:!0,query:{page:(r=(n=t==null?void 0:t.page)===null||n===void 0?void 0:n.toString())!==null&&r!==void 0?r:"",per_page:(s=(i=t==null?void 0:t.perPage)===null||i===void 0?void 0:i.toString())!==null&&s!==void 0?s:""},xform:vw});if(d.error)throw d.error;const h=await d.json(),f=(a=d.headers.get("x-total-count"))!==null&&a!==void 0?a:0,m=(l=(o=d.headers.get("link"))===null||o===void 0?void 0:o.split(","))!==null&&l!==void 0?l:[];return m.length>0&&(m.forEach(w=>{const p=parseInt(w.split(";")[0].split("=")[1].substring(0,1)),b=JSON.parse(w.split(";")[1].split("=")[1]);c[`${b}Page`]=p}),c.total=parseInt(f)),{data:Object.assign(Object.assign({},h),c),error:null}}catch(c){if(B(c))return{data:{clients:[]},error:c};throw c}}async _createOAuthClient(t){try{return await W(this.fetch,"POST",`${this.url}/admin/oauth/clients`,{body:t,headers:this.headers,xform:n=>({data:n,error:null})})}catch(n){if(B(n))return{data:null,error:n};throw n}}async _getOAuthClient(t){try{return await W(this.fetch,"GET",`${this.url}/admin/oauth/clients/${t}`,{headers:this.headers,xform:n=>({data:n,error:null})})}catch(n){if(B(n))return{data:null,error:n};throw n}}async _updateOAuthClient(t,n){try{return await W(this.fetch,"PUT",`${this.url}/admin/oauth/clients/${t}`,{body:n,headers:this.headers,xform:r=>({data:r,error:null})})}catch(r){if(B(r))return{data:null,error:r};throw r}}async _deleteOAuthClient(t){try{return await W(this.fetch,"DELET
193E",`${this.url}/admin/oauth/clients/${t}`,{headers:this.headers,noResolveJson:!0}),{data:null,error:null}}catch(n){if(B(n))return{data:null,error:n};throw n}}async _regenerateOAuthClientSecret(t){try{return await W(this.fetch,"POST",`${this.url}/admin/oauth/clients/${t}/regenerate_secret`,{headers:this.headers,xform:n=>({data:n,error:null})})}catch(n){if(B(n))return{data:null,error:n};throw n}}async _listCustomProviders(t){try{const n={};return t!=null&&t.type&&(n.type=t.type),await W(this.fetch,"GET",`${this.url}/admin/custom-providers`,{headers:this.headers,query:n,xform:r=>{var i;return{data:{providers:(i=r==null?void 0:r.providers)!==null&&i!==void 0?i:[]},error:null}}})}catch(n){if(B(n))return{data:{providers:[]},error:n};throw n}}async _createCustomProvider(t){try{return await W(this.fetch,"POST",`${this.url}/admin/custom-providers`,{body:t,headers:this.headers,xform:n=>({data:n,error:null})})}catch(n){if(B(n))return{data:null,error:n};throw n}}async _getCustomProvider(t){try{return await W(this.fetch,"GET",`${this.url}/admin/custom-providers/${t}`,{headers:this.headers,xform:n=>({data:n,error:null})})}catch(n){if(B(n))return{data:null,error:n};throw n}}async _updateCustomProvider(t,n){try{return await W(this.fetch,"PUT",`${this.url}/admin/custom-providers/${t}`,{body:n,headers:this.headers,xform:r=>({data:r,error:null})})}catch(r){if(B(r))return{data:null,error:r};throw r}}async _deleteCustomProvider(t){try{return await W(this.fetch,"DELETE",`${this.url}/admin/custom-providers/${t}`,{headers:this.headers,noResolveJson:!0}),{data:null,error:null}}catch(n){if(B(n))return{data:null,error:n};throw n}}}function yw(e={}){return{getItem:t=>e[t]||null,setItem:(t,n)=>{e[t]=n},removeItem:t=>{delete e[t]}}}const gn={debug:!!(globalThis&&VE()&&globalThis.localStorage&&globalThis.localStorage.getItem("supabase.gotrue-js.locks.debug")==="true")};class $E extends Error{constructor(t){super(t),this.isAcquireTimeout=!0}}class ww extends $E{}async function qL(e,t,n){gn.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquire lock",e,t);const r=new globalThis.AbortController;let i;t>0&&(i=setTimeout(()=>{r.abort(),gn.debug&&console.log("@supabase/gotrue-js: navigatorLock acquire timed out",e)},t)),await Promise.resolve();try{return await globalThis.navigator.locks.request(e,t===0?{mode:"exclusive",ifAvailable:!0}:{mode:"exclusive",signal:r.signal},async s=>{if(s){clearTimeout(i),gn.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquired",e,s.name);try{return await n()}finally{gn.debug&&console.log("@supabase/gotrue-js: navigatorLock: released",e,s.name)}}else{if(t===0)throw gn.debug&&console.log("@supabase/gotrue-js: navigatorLock: not immediately available",e),new ww(`Acquiring an exclusive Navigator LockManager lock "${e}" immediately failed`);if(gn.debug)try{const a=await globalThis.navigator.locks.query();console.log("@supabase/gotrue-js: Navigator LockManager state",JSON.stringify(a,null," "))}catch(a){console.warn("@supabase/gotrue-js: Error when querying Navigator LockManager state",a)}return console.warn("@supabase/gotrue-js: Navigator LockManager returned a null lock when using #request without ifAvailable set to true, it appears this browser is not following the LockManager spec https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request"),clearTimeout(i),await n()}})}catch(s){if(t>0&&clearTimeout(i),(s==null?void 0:s.name)==="AbortError"&&t>0){if(r.signal.aborted)return gn.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquire timeout, recovering by stealing lock",e),console.warn(`@supabase/gotrue-js: Lock "${e}" was not released within ${t}ms. This may indicate an orphaned lock from a component unmount (e.g., React Strict Mode). Forcefully acquiring the lock to recover.`),await Promise.resolve().then(()=>globalThis.navigator.locks.request(e,{mode:"exclusive",steal:!0},async a=>{if(a){gn.debug&&console.log("@supabase/gotrue-js: navigatorLock: recovered (stolen)",e,a.name);try{return await n()}finally{gn.debug&&console.log("@supabase/gotrue-js: navigatorLock: released (stolen)",e,a.name)}}else return console.warn("@supabase/gotrue-js: Navigator LockManager returned null lock even with steal: true"),await n()}));throw gn.debug&&console.log("@supabase/gotrue-js: navigatorLock: lock was stolen by another request",e),new ww(`Lock "${e}" was released because another request stole it`)}throw s}}function JL(){if(typeof globalThis!="object")try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__}catch{typeof self<"u"&&(self.globalThis=self)}}function KE(e){if(!/^0x[a-fA-F0-9]{40}$/.test(e))throw new Error(`@supabase/auth-js: Address "${e}
193" is invalid.`);return e.toLowerCase()}function ZL(e){return parseInt(e,16)}function YL(e){const t=new TextEncoder().encode(e);return"0x"+Array.from(t,r=>r.toString(16).padStart(2,"0")).join("")}function QL(e){var t;const{chainId:n,domain:r,expirationTime:i,issuedAt:s=new Date,nonce:a,notBefore:o,requestId:l,resources:c,scheme:d,uri:h,version:f}=e;{if(!Number.isInteger(n))throw new Error(`@supabase/auth-js: Invalid SIWE message field "chainId". Chain ID must be a EIP-155 chain ID. Provided value: ${n}`);if(!r)throw new Error('@supabase/auth-js: Invalid SIWE message field "domain". Domain must be provided.');if(a&&a.length<8)throw new Error(`@supabase/auth-js: Invalid SIWE message field "nonce". Nonce must be at least 8 characters. Provided value: ${a}`);if(!h)throw new Error('@supabase/auth-js: Invalid SIWE message field "uri". URI must be provided.');if(f!=="1")throw new Error(`@supabase/auth-js: Invalid SIWE message field "version". Version must be '1'. Provided value: ${f}`);if(!((t=e.statement)===null||t===void 0)&&t.includes(` 194`))throw new Error(`@supabase/auth-js: Invalid SIWE message field "statement". Statement must not include '\\n'. Provided value: ${e.statement}`)}const m=KE(e.address),w=d?`${d}://${r}`:r,p=e.statement?`${e.statement} 195`:"",b=`${w} wants you to sign in with your Ethereum account: 196${m} 197 198${p}`;let v=`URI: ${h} 199Version: ${f} 200Chain ID: ${n}${a?` 201Nonce: ${a}`:""} 202Issued At: ${s.toISOString()}`;if(i&&(v+=` 203Expiration Time: ${i.toISOString()}`),o&&(v+=` 204Not Before: ${o.toISOString()}`),l&&(v+=` 205Request ID: ${l}`),c){let g=` 206Resources:`;for(const y of c){if(!y||typeof y!="string")throw new Error(`@supabase/auth-js: Invalid SIWE message field "resources". Every resource must be a valid string. Provided value: ${y}`);g+=` 207- ${y}`}v+=g}return`${b} 208${v}`}class Pe extends Error{constructor({message:t,code:n,cause:r,name:i}){var s;super(t,{cause:r}),this.__isWebAuthnError=!0,this.name=(s=i??(r instanceof Error?r.name:void 0))!==null&&s!==void 0?s:"Unknown Error",this.code=n}}class qc extends Pe{constructor(t,n){super({code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:n,message:t}),this.name="WebAuthnUnknownError",this.originalError=n}}function XL({error:e,options:t}){var n,r,i;const{publicKey:s}=t;if(!s)throw Error("options was missing required publicKey property");if(e.name==="AbortError"){if(t.signal instanceof AbortSignal)return new Pe({message:"Registration ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:e})}else if(e.name==="ConstraintError"){if(((n=s.authenticatorSelection)===null||n===void 0?void 0:n.requireResidentKey)===!0)return new Pe({message:"Discoverable credentials were required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_DISCOVERABLE_CREDENTIAL_SUPPORT",cause:e});if(t.mediation==="conditional"&&((r=s.authenticatorSelection)===null||r===void 0?void 0:r.userVerification)==="required")return new Pe({message:"User verification was required during automatic registration but it could not be performed",code:"ERROR_AUTO_REGISTER_USER_VERIFICATION_FAILURE",cause:e});if(((i=s.authenticatorSelection)===null||i===void 0?void 0:i.userVerification)==="required")return new Pe({message:"User verification was required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_USER_VERIFICATION_SUPPORT",cause:e})}else{if(e.name==="InvalidStateError")return new Pe({message:"The authenticator was previously registered",code:"ERROR_AUTHENTICATOR_PREVIOUSLY_REGISTERED",cause:e});if(e.name==="NotAllowedError")return new Pe({message:e.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:e});if(e.name==="NotSupportedError")return s.pubKeyCredParams.filter(o=>o.type==="public-key").length===0?new Pe({message:'No entry in pubKeyCredParams was of type "public-key"',code:"ERROR_MALFORMED_PUBKEYCREDPARAMS",cause:e}):new Pe({message:"No available authenticator supported any of the specified pubKeyCredParams algorithms",code:"ERROR_AUTHENTICATOR_NO_SUPPORTED_PUBKEYCREDPARAMS_ALG",cause:e});if(e.name==="SecurityError"){const a=window.location.hostname;if(GE(a)){if(s.rp.id!==a)return new Pe({message:`The RP ID "${s.rp.id}
208" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:e})}else return new Pe({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:e})}else if(e.name==="TypeError"){if(s.user.id.byteLength<1||s.user.id.byteLength>64)return new Pe({message:"User ID was not between 1 and 64 characters",code:"ERROR_INVALID_USER_ID_LENGTH",cause:e})}else if(e.name==="UnknownError")return new Pe({message:"The authenticator was unable to process the specified options, or could not create a new credential",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:e})}return new Pe({message:"a Non-Webauthn related error has occurred",code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:e})}function eF({error:e,options:t}){const{publicKey:n}=t;if(!n)throw Error("options was missing required publicKey property");if(e.name==="AbortError"){if(t.signal instanceof AbortSignal)return new Pe({message:"Authentication ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:e})}else{if(e.name==="NotAllowedError")return new Pe({message:e.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:e});if(e.name==="SecurityError"){const r=window.location.hostname;if(GE(r)){if(n.rpId!==r)return new Pe({message:`The RP ID "${n.rpId}" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:e})}else return new Pe({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:e})}else if(e.name==="UnknownError")return new Pe({message:"The authenticator was unable to process the specified options, or could not create a new assertion signature",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:e})}return new Pe({message:"a Non-Webauthn related error has occurred",code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:e})}class tF{createNewAbortSignal(){if(this.controller){const n=new Error("Cancelling existing WebAuthn API call for new one");n.name="AbortError",this.controller.abort(n)}const t=new AbortController;return this.controller=t,t.signal}cancelCeremony(){if(this.controller){const t=new Error("Manually cancelling existing WebAuthn API call");t.name="AbortError",this.controller.abort(t),this.controller=void 0}}}const nF=new tF;function rF(e){if(!e)throw new Error("Credential creation options are required");if(typeof PublicKeyCredential<"u"&&"parseCreationOptionsFromJSON"in PublicKeyCredential&&typeof PublicKeyCredential.parseCreationOptionsFromJSON=="function")return PublicKeyCredential.parseCreationOptionsFromJSON(e);const{challenge:t,user:n,excludeCredentials:r}=e,i=Du(e,["challenge","user","excludeCredentials"]),s=Ts(t).buffer,a=Object.assign(Object.assign({},n),{id:Ts(n.id).buffer}),o=Object.assign(Object.assign({},i),{challenge:s,user:a});if(r&&r.length>0){o.excludeCredentials=new Array(r.length);for(let l=0;l<r.length;l++){const c=r[l];o.excludeCredentials[l]=Object.assign(Object.assign({},c),{id:Ts(c.id).buffer,type:c.type||"public-key",transports:c.transports})}}return o}function iF(e){if(!e)throw new Error("Credential request options are required");if(typeof PublicKeyCredential<"u"&&"parseRequestOptionsFromJSON"in PublicKeyCredential&&typeof PublicKeyCredential.parseRequestOptionsFromJSON=="function")return PublicKeyCredential.parseRequestOptionsFromJSON(e);const{challenge:t,allowCredentials:n}=e,r=Du(e,["challenge","allowCredentials"]),i=Ts(t).buffer,s=Object.assign(Object.assign({},r),{challenge:i});if(n&&n.length>0){s.allowCredentials=new Array(n.length);for(let a=0;a<n.length;a++){const o=n[a];s.allowCredentials[a]=Object.assign(Object.assign({},o),{id:Ts(o.id).buffer,type:o.type||"public-key",transports:o.transports})}}return s}function sF(e){var t;if("toJSON"in e&&typeof e.toJSON=="function")return e.toJSON();const n=e;return{id:e.id,rawId:e.id,response:{attestationObject:hi(new Uint8Array(e.response.attestationObject)),clientDataJSON:hi(new Uint8Array(e.response.clientDataJSON))},type:"public-key",clientExtensionResults:e.getClientExtensionResults(),authenticatorAttachment:(t=n.authenticatorAttachment)!==null&&t!==void 0?t:void 0}}function aF(e){var t;if("toJSON"in e&&typeof e.toJSON=="function")return e.toJSON();const n=e,r=e.getClientExtensionResults(),i=e.response;return{id:e.id,rawId:e.id,response:{authenticatorData:hi(new Uint8Array(i.authenticatorData)),clientDataJSON:hi(new Uint8Array(i.clientDataJSON)),signature:hi(new Uint8Array(i.signature)),userHandle:i.userHandle?hi(new Uint8Array(i.userHandle)):void 0},type:"public-key",clientExtensionResults:r,authenticatorAttachment:(t=n.authenticatorAttachment)!==null&&t!==void 0?t:void 0}}function GE(e){return e==="localhost"||/^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/i.test(e)}function bw(){var e,t;return!!(Ve()&&"PublicKeyCredential"in window&&window.PublicKeyCredential&&"credentials"in navigator&&typeof((e=navigator==null?void 0:navigator.credentials)===null||e===void 0?void 0:e.create)=="function"&&typeof((t=navigator==null?void 0:navigator.credentials)===null||t===void 0?void 0:t.get)=="function")}async function oF(e){try{const t=await navigator.credentials.create(e);return t?t instanceof PublicKeyCredential?{data:t,error:null}:{data:null,error:new qc("Browser returned unexpected credential type",t)}:{data:null,error:new qc("Empty credential response",t)}}
208catch(t){return{data:null,error:XL({error:t,options:e})}}}async function lF(e){try{const t=await navigator.credentials.get(e);return t?t instanceof PublicKeyCredential?{data:t,error:null}:{data:null,error:new qc("Browser returned unexpected credential type",t)}:{data:null,error:new qc("Empty credential response",t)}}catch(t){return{data:null,error:eF({error:t,options:e})}}}const cF={hints:["security-key"],authenticatorSelection:{authenticatorAttachment:"cross-platform",requireResidentKey:!1,userVerification:"preferred",residentKey:"discouraged"},attestation:"direct"},uF={userVerification:"preferred",hints:["security-key"],attestation:"direct"};function Jc(...e){const t=i=>i!==null&&typeof i=="object"&&!Array.isArray(i),n=i=>i instanceof ArrayBuffer||ArrayBuffer.isView(i),r={};for(const i of e)if(i)for(const s in i){const a=i[s];if(a!==void 0)if(Array.isArray(a))r[s]=a;else if(n(a))r[s]=a;else if(t(a)){const o=r[s];t(o)?r[s]=Jc(o,a):r[s]=Jc(a)}else r[s]=a}return r}function dF(e,t){return Jc(cF,e,t||{})}function hF(e,t){return Jc(uF,e,t||{})}class fF{constructor(t){this.client=t,this.enroll=this._enroll.bind(this),this.challenge=this._challenge.bind(this),this.verify=this._verify.bind(this),this.authenticate=this._authenticate.bind(this),this.register=this._register.bind(this)}async _enroll(t){return this.client.mfa.enroll(Object.assign(Object.assign({},t),{factorType:"webauthn"}))}async _challenge({factorId:t,webauthn:n,friendlyName:r,signal:i},s){var a;try{const{data:o,error:l}=await this.client.mfa.challenge({factorId:t,webauthn:n});if(!o)return{data:null,error:l};const c=i??nF.createNewAbortSignal();if(o.webauthn.type==="create"){const{user:d}=o.webauthn.credential_options.publicKey;if(!d.name){const h=r;if(h)d.name=`${d.id}:${h}`;else{const m=(await this.client.getUser()).data.user,w=((a=m==null?void 0:m.user_metadata)===null||a===void 0?void 0:a.name)||(m==null?void 0:m.email)||(m==null?void 0:m.id)||"User";d.name=`${d.id}:${w}`}}d.displayName||(d.displayName=d.name)}switch(o.webauthn.type){case"create":{const d=dF(o.webauthn.credential_options.publicKey,s==null?void 0:s.create),{data:h,error:f}=await oF({publicKey:d,signal:c});return h?{data:{factorId:t,challengeId:o.id,webauthn:{type:o.webauthn.type,credential_response:h}},error:null}:{data:null,error:f}}case"request":{const d=hF(o.webauthn.credential_options.publicKey,s==null?void 0:s.request),{data:h,error:f}=await lF(Object.assign(Object.assign({},o.webauthn.credential_options),{publicKey:d,signal:c}));return h?{data:{factorId:t,challengeId:o.id,webauthn:{type:o.webauthn.type,credential_response:h}},error:null}:{data:null,error:f}}}}catch(o){return B(o)?{data:null,error:o}:{data:null,error:new ai("Unexpected error in challenge",o)}}}async _verify({challengeId:t,factorId:n,webauthn:r}){return this.client.mfa.verify({factorId:n,challengeId:t,webauthn:r})}async _authenticate({factorId:t,webauthn:{rpId:n=typeof window<"u"?window.location.hostname:void 0,rpOrigins:r=typeof window<"u"?[window.location.origin]:void 0,signal:i}={}},s){if(!n)return{data:null,error:new Eo("rpId is required for WebAuthn authentication")};try{if(!bw())return{data:null,error:new ai("Browser does not support WebAuthn",null)};const{data:a,error:o}=await this.challenge({factorId:t,webauthn:{rpId:n,rpOrigins:r},signal:i},{request:s});if(!a)return{data:null,error:o};const{webauthn:l}=a;return this._verify({factorId:t,challengeId:a.challengeId,webauthn:{type:l.type,rpId:n,rpOrigins:r,credential_response:l.credential_response}})}catch(a){return B(a)?{data:null,error:a}:{data:null,error:new ai("Unexpected error in authenticate",a)}}}async _register({friendlyName:t,webauthn:{rpId:n=typeof window<"u"?window.location.hostname:void 0,rpOrigins:r=typeof window<"u"?[window.location.origin]:void 0,signal:i}={}},s){if(!n)return{data:null,error:new Eo("rpId is required for WebAuthn registration")};try{if(!bw())return{data:null,error:new ai("Browser does not support WebAuthn",null)};const{data:a,error:o}=await this._enroll({friendlyName:t});if(!a)return await this.client.mfa.listFactors().then(d=>{var h;
208return(h=d.data)===null||h===void 0?void 0:h.all.find(f=>f.factor_type==="webauthn"&&f.friendly_name===t&&f.status!=="unverified")}).then(d=>d?this.client.mfa.unenroll({factorId:d==null?void 0:d.id}):void 0),{data:null,error:o};const{data:l,error:c}=await this._challenge({factorId:a.id,friendlyName:a.friendly_name,webauthn:{rpId:n,rpOrigins:r},signal:i},{create:s});return l?this._verify({factorId:a.id,challengeId:l.challengeId,webauthn:{rpId:n,rpOrigins:r,type:l.webauthn.type,credential_response:l.webauthn.credential_response}}):{data:null,error:c}}catch(a){return B(a)?{data:null,error:a}:{data:null,error:new ai("Unexpected error in register",a)}}}}JL();const mF={url:dL,storageKey:hL,autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,headers:fL,flowType:"implicit",debug:!1,hasCustomAuthorizationHeader:!1,throwOnError:!1,lockAcquireTimeout:5e3,skipAutoInitialize:!1};async function kw(e,t,n){return await n()}const Gi={};class To{get jwks(){var t,n;return(n=(t=Gi[this.storageKey])===null||t===void 0?void 0:t.jwks)!==null&&n!==void 0?n:{keys:[]}}set jwks(t){Gi[this.storageKey]=Object.assign(Object.assign({},Gi[this.storageKey]),{jwks:t})}get jwks_cached_at(){var t,n;return(n=(t=Gi[this.storageKey])===null||t===void 0?void 0:t.cachedAt)!==null&&n!==void 0?n:Number.MIN_SAFE_INTEGER}set jwks_cached_at(t){Gi[this.storageKey]=Object.assign(Object.assign({},Gi[this.storageKey]),{cachedAt:t})}constructor(t){var n,r,i;this.userStorage=null,this.memoryStorage=null,this.stateChangeEmitters=new Map,this.autoRefreshTicker=null,this.autoRefreshTickTimeout=null,this.visibilityChangedCallback=null,this.refreshingDeferred=null,this.initializePromise=null,this.detectSessionInUrl=!0,this.hasCustomAuthorizationHeader=!1,this.suppressGetSessionWarning=!1,this.lockAcquired=!1,this.pendingInLock=[],this.broadcastChannel=null,this.logger=console.log;const s=Object.assign(Object.assign({},mF),t);if(this.storageKey=s.storageKey,this.instanceID=(n=To.nextInstanceID[this.storageKey])!==null&&n!==void 0?n:0,To.nextInstanceID[this.storageKey]=this.instanceID+1,this.logDebugMessages=!!s.debug,typeof s.debug=="function"&&(this.logger=s.debug),this.instanceID>0&&Ve()){const a=`${this._logPrefix()} Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.`;console.warn(a),this.logDebugMessages&&console.trace(a)}if(this.persistSession=s.persistSession,this.autoRefreshToken=s.autoRefreshToken,this.admin=new HL({url:s.url,headers:s.headers,fetch:s.fetch}),this.url=s.url,this.headers=s.headers,this.fetch=WE(s.fetch),this.lock=s.lock||kw,this.detectSessionInUrl=s.detectSessionInUrl,this.flowType=s.flowType,this.hasCustomAuthorizationHeader=s.hasCustomAuthorizationHeader,this.throwOnError=s.throwOnError,this.lockAcquireTimeout=s.lockAcquireTimeout,s.lock?this.lock=s.lock:this.persistSession&&Ve()&&(!((r=globalThis==null?void 0:globalThis.navigator)===null||r===void 0)&&r.locks)?this.lock=qL:this.lock=kw,this.jwks||(this.jwks={keys:[]},this.jwks_cached_at=Number.MIN_SAFE_INTEGER),this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this),webauthn:new fF(this)},this.oauth={getAuthorizationDetails:this._getAuthorizationDetails.bind(this),approveAuthorization:this._approveAuthorization.bind(this),denyAuthorization:this._denyAuthorization.bind(this),listGrants:this._listOAuthGrants.bind(this),revokeGrant:this._revokeOAuthGrant.bind(this)},this.persistSession?(s.storage?this.storage=s.storage:VE()?this.storage=globalThis.localStorage:(this.memoryStorage={},this.storage=yw(this.memoryStorage)),s.userStorage&&(this.userStorage=s.userStorage)):(this.memoryStorage={},this.storage=yw(this.memoryStorage)),Ve()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(a){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",a)}(i=this.broadcastChannel)===null||i===void 0||i.addEventListener("message",async a=>{this._debug("received broadcast notification from other tab or client",a);try{await this._notifyAllSubscribers(a.data.event,a.data.session,!1)}catch(o){this._debug("#broadcastChannel","error",o)}})}s.skipAutoInitialize||this.initialize().catch(a=>{this._debug("#initialize()","error",a)})}isThrowOnErrorEnabled(){return this.throwOnError}_returnResult(t){if(this.throwOnError&&t&&t.error)throw t.error;return t}_logPrefix(){return`GoTrueClient@${this.storageKey}:${this.instanceID} (${FE}) ${new Date().toISOString()}`}_debug(...t){return this.logDebugMessages&&this.logger(this._logPrefix(),...t),this}async initialize(){return this.initializePromise?await this.initializePromise:(this.initializePromise=(async()=>await this._acquireLock(this.lockAcquireTimeout,async()=>await this._initialize()))(),await this.initializePromise)}async _initialize(){var t;try{let n={},r="none";if(Ve()&&(n=CL(window.location.href),this._isImplicitGrantCallback(n)?r="implicit":await this._isPKCECallback(n)&&(r="pkce")),Ve()&&this.detectSessionInUrl&&r!=="none"){const{data:i,error:s}=await this._getSessionFromURL(n,r);if(s){if(this._debug("#_initialize()","error detecting session from URL",s),yL(s)){const l=(t=s.details)===null||t===void 0?void 0:t.code;if(l==="identity_already_exists"||l==="identity_not_found"||l==="single_identity_not_deletable")return{error:s}}return{error:s}}const{session:a,redirectType:o}=i;return this._debug("#_initialize()","detected session in URL",a,"redirect type",o),await this._saveSession(a),setTimeout(async()=>{o==="recovery"?await this._notifyAllSubscribers("PASSWORD_RECOVERY",a):await this._notifyAllSubscribers("SIGNED_IN",a)},0),{error:null}}return await this._recoverAndRefresh(),{error:null}}catch(n){return B(n)?this._returnResult({error:n}):this._returnResult({error:new ai("Unexpected error during initialization",n)})}finally{await this._handleVisibilityChange(),this._debug("#_initialize()","end")}}async signInAnonymously(t){var n,r,i;try{const s=await W(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:(r=(n=t==null?void 0:t.options)===null||n===void 0?void 0:n.data)!==null&&r!==void 0?r:{},gotrue_meta_security:{captcha_token:(i=t==null?void 0:t.options)===null||i===void 0?void 0:i.captchaToken}},xform:Qt}),{data:a,error:o}=s;
208if(o||!a)return this._returnResult({data:{user:null,session:null},error:o});const l=a.session,c=a.user;return a.session&&(await this._saveSession(a.session),await this._notifyAllSubscribers("SIGNED_IN",l)),this._returnResult({data:{user:c,session:l},error:null})}catch(s){if(B(s))return this._returnResult({data:{user:null,session:null},error:s});throw s}}async signUp(t){var n,r,i;try{let s;if("email"in t){const{email:d,password:h,options:f}=t;let m=null,w=null;this.flowType==="pkce"&&([m,w]=await $i(this.storage,this.storageKey)),s=await W(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:f==null?void 0:f.emailRedirectTo,body:{email:d,password:h,data:(n=f==null?void 0:f.data)!==null&&n!==void 0?n:{},gotrue_meta_security:{captcha_token:f==null?void 0:f.captchaToken},code_challenge:m,code_challenge_method:w},xform:Qt})}else if("phone"in t){const{phone:d,password:h,options:f}=t;s=await W(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:d,password:h,data:(r=f==null?void 0:f.data)!==null&&r!==void 0?r:{},channel:(i=f==null?void 0:f.channel)!==null&&i!==void 0?i:"sms",gotrue_meta_security:{captcha_token:f==null?void 0:f.captchaToken}},xform:Qt})}else throw new Cl("You must provide either an email or phone number and a password");const{data:a,error:o}=s;if(o||!a)return await Ue(this.storage,`${this.storageKey}-code-verifier`),this._returnResult({data:{user:null,session:null},error:o});const l=a.session,c=a.user;return a.session&&(await this._saveSession(a.session),await this._notifyAllSubscribers("SIGNED_IN",l)),this._returnResult({data:{user:c,session:l},error:null})}catch(s){if(await Ue(this.storage,`${this.storageKey}-code-verifier`),B(s))return this._returnResult({data:{user:null,session:null},error:s});throw s}}async signInWithPassword(t){try{let n;if("email"in t){const{email:s,password:a,options:o}=t;n=await W(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:s,password:a,gotrue_meta_security:{captcha_token:o==null?void 0:o.captchaToken}},xform:gw})}else if("phone"in t){const{phone:s,password:a,options:o}=t;n=await W(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:s,password:a,gotrue_meta_security:{captcha_token:o==null?void 0:o.captchaToken}},xform:gw})}else throw new Cl("You must provide either an email or phone number and a password");const{data:r,error:i}=n;if(i)return this._returnResult({data:{user:null,session:null},error:i});if(!r||!r.session||!r.user){const s=new Wi;return this._returnResult({data:{user:null,session:null},error:s})}return r.session&&(await this._saveSession(r.session),await this._notifyAllSubscribers("SIGNED_IN",r.session)),this._returnResult({data:Object.assign({user:r.user,session:r.session},r.weak_password?{weakPassword:r.weak_password}:null),error:i})}catch(n){if(B(n))return this._returnResult({data:{user:null,session:null},error:n});throw n}}async signInWithOAuth(t){var n,r,i,s;return await this._handleProviderSignIn(t.provider,{redirectTo:(n=t.options)===null||n===void 0?void 0:n.redirectTo,scopes:(r=t.options)===null||r===void 0?void 0:r.scopes,queryParams:(i=t.options)===null||i===void 0?void 0:i.queryParams,skipBrowserRedirect:(s=t.options)===null||s===void 0?void 0:s.skipBrowserRedirect})}async exchangeCodeForSession(t){return await this.initializePromise,this._acquireLock(this.lockAcquireTimeout,async()=>this._exchangeCodeForSession(t))}async signInWithWeb3(t){const{chain:n}=t;switch(n){case"ethereum":return await this.signInWithEthereum(t);case"solana":return await this.signInWithSolana(t);default:throw new Error(`@supabase/auth-js: Unsupported chain "${n}"`)}}async signInWithEthereum(t){var n,r,i,s,a,o,l,c,d,h,f;let m,w;if("message"in t)m=t.message,w=t.signature;else{const{chain:p,wallet:b,statement:v,options:g}=t;let y;if(Ve())if(typeof b=="object")y=b;else{const _=window;if("ethereum"in _&&typeof _.ethereum=="object"&&"request"in _.ethereum&&typeof _.ethereum.request=="function")y=_.ethereum;else throw new Error("@supabase/auth-js: No compatible Ethereum wallet interface on the window object (window.ethereum) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'ethereum', wallet: resolvedUserWallet }) instead.")}else{if(typeof b!="object"||!(g!=null&&g.url))throw new Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");y=b}const x=new URL((n=g==null?void 0:g.url)!==null&&n!==void 0?n:window.location.href),E=await y.request({method:"eth_requestAccounts"}).then(_=>_).catch(()=>{throw new Error("@supabase/auth-js: Wallet method eth_requestAccounts is missing or invalid")});if(!E||E.length===0)throw new Error("@supabase/auth-js: No accounts available. Please ensure the wallet is connected.");const T=KE(E[0]);let S=(r=g==null?void 0:g.signInWithEthereum)===null||r===void 0?void 0:r.chainId;if(!S){const _=await y.request({method:"eth_chainId"});S=ZL(_)}const A={domain:x.host,address:T,statement:v,uri:x.href,version:"1",chainId:S,nonce:(i=g==null?void 0:g.signInWithEthereum)===null||i===void 0?void 0:i.nonce,issuedAt:(a=(s=g==null?void 0:g.signInWithEthereum)===null||s===void 0?void 0:s.issuedAt)!==null&&a!==void 0?a:new Date,expirationTime:(o=g==null?void 0:g.signInWithEthereum)===null||o===void 0?void 0:o.expirationTime,notBefore:(l=g==null?void 0:g.signInWithEthereum)===null||l===void 0?void 0:l.notBefore,requestId:(c=g==null?void 0:g.signInWithEthereum)===null||c===void 0?void 0:c.requestId,resources:(d=g==null?void 0:g.signInWithEthereum)===null||d===void 0?void 0:d.resources};m=QL(A),w=await y.request({method:"personal_sign",params:[YL(m),T]})}try{const{data:p,error:b}=await W(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"ethereum",message:m,signature:w}
208,!((h=t.options)===null||h===void 0)&&h.captchaToken?{gotrue_meta_security:{captcha_token:(f=t.options)===null||f===void 0?void 0:f.captchaToken}}:null),xform:Qt});if(b)throw b;if(!p||!p.session||!p.user){const v=new Wi;return this._returnResult({data:{user:null,session:null},error:v})}return p.session&&(await this._saveSession(p.session),await this._notifyAllSubscribers("SIGNED_IN",p.session)),this._returnResult({data:Object.assign({},p),error:b})}catch(p){if(B(p))return this._returnResult({data:{user:null,session:null},error:p});throw p}}async signInWithSolana(t){var n,r,i,s,a,o,l,c,d,h,f,m;let w,p;if("message"in t)w=t.message,p=t.signature;else{const{chain:b,wallet:v,statement:g,options:y}=t;let x;if(Ve())if(typeof v=="object")x=v;else{const T=window;if("solana"in T&&typeof T.solana=="object"&&("signIn"in T.solana&&typeof T.solana.signIn=="function"||"signMessage"in T.solana&&typeof T.solana.signMessage=="function"))x=T.solana;else throw new Error("@supabase/auth-js: No compatible Solana wallet interface on the window object (window.solana) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'solana', wallet: resolvedUserWallet }) instead.")}else{if(typeof v!="object"||!(y!=null&&y.url))throw new Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");x=v}const E=new URL((n=y==null?void 0:y.url)!==null&&n!==void 0?n:window.location.href);if("signIn"in x&&x.signIn){const T=await x.signIn(Object.assign(Object.assign(Object.assign({issuedAt:new Date().toISOString()},y==null?void 0:y.signInWithSolana),{version:"1",domain:E.host,uri:E.href}),g?{statement:g}:null));let S;if(Array.isArray(T)&&T[0]&&typeof T[0]=="object")S=T[0];else if(T&&typeof T=="object"&&"signedMessage"in T&&"signature"in T)S=T;else throw new Error("@supabase/auth-js: Wallet method signIn() returned unrecognized value");if("signedMessage"in S&&"signature"in S&&(typeof S.signedMessage=="string"||S.signedMessage instanceof Uint8Array)&&S.signature instanceof Uint8Array)w=typeof S.signedMessage=="string"?S.signedMessage:new TextDecoder().decode(S.signedMessage),p=S.signature;else throw new Error("@supabase/auth-js: Wallet method signIn() API returned object without signedMessage and signature fields")}else{if(!("signMessage"in x)||typeof x.signMessage!="function"||!("publicKey"in x)||typeof x!="object"||!x.publicKey||!("toBase58"in x.publicKey)||typeof x.publicKey.toBase58!="function")throw new Error("@supabase/auth-js: Wallet does not have a compatible signMessage() and publicKey.toBase58() API");w=[`${E.host} wants you to sign in with your Solana account:`,x.publicKey.toBase58(),...g?["",g,""]:[""],"Version: 1",`URI: ${E.href}`,`Issued At: ${(i=(r=y==null?void 0:y.signInWithSolana)===null||r===void 0?void 0:r.issuedAt)!==null&&i!==void 0?i:new Date().toISOString()}`,...!((s=y==null?void 0:y.signInWithSolana)===null||s===void 0)&&s.notBefore?[`Not Before: ${y.signInWithSolana.notBefore}`]:[],...!((a=y==null?void 0:y.signInWithSolana)===null||a===void 0)&&a.expirationTime?[`Expiration Time: ${y.signInWithSolana.expirationTime}`]:[],...!((o=y==null?void 0:y.signInWithSolana)===null||o===void 0)&&o.chainId?[`Chain ID: ${y.signInWithSolana.chainId}`]:[],...!((l=y==null?void 0:y.signInWithSolana)===null||l===void 0)&&l.nonce?[`Nonce: ${y.signInWithSolana.nonce}`]:[],...!((c=y==null?void 0:y.signInWithSolana)===null||c===void 0)&&c.requestId?[`Request ID: ${y.signInWithSolana.requestId}`]:[],...!((h=(d=y==null?void 0:y.signInWithSolana)===null||d===void 0?void 0:d.resources)===null||h===void 0)&&h.length?["Resources",...y.signInWithSolana.resources.map(S=>`- ${S}`)]:[]].join(` 209`);const T=await x.signMessage(new TextEncoder().encode(w),"utf8");if(!T||!(T instanceof Uint8Array))throw new Error("@supabase/auth-js: Wallet signMessage() API returned an recognized value");p=T}}try{const{data:b,error:v}=await W(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"solana",message:w,signature:hi(p)},!((f=t.options)===null||f===void 0)&&f.captchaToken?{gotrue_meta_security:{captcha_token:(m=t.options)===null||m===void 0?void 0:m.captchaToken}}:null),xform:Qt});if(v)throw v;if(!b||!b.session||!b.user){const g=new Wi;return this._returnResult({data:{user:null,session:null},error:g})}return b.session&&(await this._saveSession(b.session),await this._notifyAllSubscribers("SIGNED_IN",b.session)),this._returnResult({data:Object.assign({},b),error:v})}catch(b){if(B(b))return this._returnResult({data:{user:null,session:null},error:b});throw b}}async _exchangeCodeForSession(t){const n=await ti(this.storage,`${this.storageKey}-code-verifier`),[r,i]=(n??"").split("/");try{if(!r&&this.flowType==="pkce")throw new wL;const{data:s,error:a}=await W(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:t,code_verifier:r},xform:Qt});if(await Ue(this.storage,`${this.storageKey}-code-verifier`),a)throw a;if(!s||!s.session||!s.user){const o=new Wi;return this._returnResult({data:{user:null,session:null,redirectType:null},error:o})}return s.session&&(await this._saveSession(s.session),await this._notifyAllSubscribers("SIGNED_IN",s.session)),this._returnResult({data:Object.assign(Object.assign({},s),{redirectType:i??null}),error:a})}catch(s){if(await Ue(this.storage,`${this.storageKey}-code-verifier`),B(s))return this._returnResult({data:{user:null,session:null,redirectType:null},error:s});throw s}}async signInWithIdToken(t){try{const{options:n,provider:r,token:i,access_token:s,nonce:a}=t,o=await W(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:r,id_token:i,access_token:s,nonce:a,gotrue_meta_security:{captcha_token:n==null?void 0:n.captchaToken}},xform:Qt}),{data:l,error:c}=o;if(c)return this._returnResult({data:{user:null,session:null},error:c});if(!l||!l.session||!l.user){const d=new Wi;return this._returnResult({data:{user:null,session:null},error:d})}return l.session&&(await this._saveSession(l.session),await this._notifyAllSubscribers("SIGNED_IN",l.session)),this._returnResult({data:l,error:c})}catch(n){if(B(n))return this._returnResult({data:{user:null,session:null},error:n});throw n}}async signInWithOtp(t){var n,r,i,s,a;try{if("email"in t){const{email:o,options:l}=t;
209let c=null,d=null;this.flowType==="pkce"&&([c,d]=await $i(this.storage,this.storageKey));const{error:h}=await W(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:o,data:(n=l==null?void 0:l.data)!==null&&n!==void 0?n:{},create_user:(r=l==null?void 0:l.shouldCreateUser)!==null&&r!==void 0?r:!0,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken},code_challenge:c,code_challenge_method:d},redirectTo:l==null?void 0:l.emailRedirectTo});return this._returnResult({data:{user:null,session:null},error:h})}if("phone"in t){const{phone:o,options:l}=t,{data:c,error:d}=await W(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:o,data:(i=l==null?void 0:l.data)!==null&&i!==void 0?i:{},create_user:(s=l==null?void 0:l.shouldCreateUser)!==null&&s!==void 0?s:!0,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken},channel:(a=l==null?void 0:l.channel)!==null&&a!==void 0?a:"sms"}});return this._returnResult({data:{user:null,session:null,messageId:c==null?void 0:c.message_id},error:d})}throw new Cl("You must provide either an email or phone number.")}catch(o){if(await Ue(this.storage,`${this.storageKey}-code-verifier`),B(o))return this._returnResult({data:{user:null,session:null},error:o});throw o}}async verifyOtp(t){var n,r;try{let i,s;"options"in t&&(i=(n=t.options)===null||n===void 0?void 0:n.redirectTo,s=(r=t.options)===null||r===void 0?void 0:r.captchaToken);const{data:a,error:o}=await W(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},t),{gotrue_meta_security:{captcha_token:s}}),redirectTo:i,xform:Qt});if(o)throw o;if(!a)throw new Error("An error occurred on token verification.");const l=a.session,c=a.user;return l!=null&&l.access_token&&(await this._saveSession(l),await this._notifyAllSubscribers(t.type=="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",l)),this._returnResult({data:{user:c,session:l},error:null})}catch(i){if(B(i))return this._returnResult({data:{user:null,session:null},error:i});throw i}}async signInWithSSO(t){var n,r,i,s,a;try{let o=null,l=null;this.flowType==="pkce"&&([o,l]=await $i(this.storage,this.storageKey));const c=await W(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in t?{provider_id:t.providerId}:null),"domain"in t?{domain:t.domain}:null),{redirect_to:(r=(n=t.options)===null||n===void 0?void 0:n.redirectTo)!==null&&r!==void 0?r:void 0}),!((i=t==null?void 0:t.options)===null||i===void 0)&&i.captchaToken?{gotrue_meta_security:{captcha_token:t.options.captchaToken}}:null),{skip_http_redirect:!0,code_challenge:o,code_challenge_method:l}),headers:this.headers,xform:$L});return!((s=c.data)===null||s===void 0)&&s.url&&Ve()&&!(!((a=t.options)===null||a===void 0)&&a.skipBrowserRedirect)&&window.location.assign(c.data.url),this._returnResult(c)}catch(o){if(await Ue(this.storage,`${this.storageKey}-code-verifier`),B(o))return this._returnResult({data:null,error:o});throw o}}async reauthenticate(){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._reauthenticate())}async _reauthenticate(){try{return await this._useSession(async t=>{const{data:{session:n},error:r}=t;if(r)throw r;if(!n)throw new Tt;const{error:i}=await W(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:n.access_token});return this._returnResult({data:{user:null,session:null},error:i})})}catch(t){if(B(t))return this._returnResult({data:{user:null,session:null},error:t});throw t}}async resend(t){try{const n=`${this.url}/resend`;if("email"in t){const{email:r,type:i,options:s}=t,{error:a}=await W(this.fetch,"POST",n,{headers:this.headers,body:{email:r,type:i,gotrue_meta_security:{captcha_token:s==null?void 0:s.captchaToken}},redirectTo:s==null?void 0:s.emailRedirectTo});return this._returnResult({data:{user:null,session:null},error:a})}else if("phone"in t){const{phone:r,type:i,options:s}=t,{data:a,error:o}=await W(this.fetch,"POST",n,{headers:this.headers,body:{phone:r,type:i,gotrue_meta_security:{captcha_token:s==null?void 0:s.captchaToken}}});return this._returnResult({data:{user:null,session:null,messageId:a==null?void 0:a.message_id},error:o})}throw new Cl("You must provide either an email or phone number and a type")}catch(n){if(B(n))return this._returnResult({data:{user:null,session:null},error:n});throw n}}async getSession(){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>this._useSession(async n=>n))}async _acquireLock(t,n){this._debug("#_acquireLock","begin",t);try{if(this.lockAcquired){const r=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve(),i=(async()=>(await r,await n()))();return this.pendingInLock.push((async()=>{try{await i}catch{}})()),i}return await this.lock(`lock:${this.storageKey}`,t,async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=!0;const r=n();for(this.pendingInLock.push((async()=>{try{await r}catch{}})()),await r;this.pendingInLock.length;){const i=[...this.pendingInLock];await Promise.all(i),this.pendingInLock.splice(0,i.length)}return await r}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey),this.lockAcquired=!1}})}finally{this._debug("#_acquireLock","end")}}async _useSession(t){this._debug("#_useSession","begin");try{const n=await this.__loadSession();return await t(n)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin"),this.lockAcquired||this._debug("#__loadSession()","used outside of an acquired lock!",new Error().stack);try{let t=null;const n=await ti(this.storage,this.storageKey);if(this._debug("#getSession()","session from storage",n),n!==null&&(this._isValidSession(n)?t=n:(this._debug("#getSession()","session from storage is not val
209id"),await this._removeSession())),!t)return{data:{session:null},error:null};const r=t.expires_at?t.expires_at*1e3-Date.now()<Fd:!1;if(this._debug("#__loadSession()",`session has${r?"":" not"} expired`,"expires_at",t.expires_at),!r){if(this.userStorage){const a=await ti(this.userStorage,this.storageKey+"-user");a!=null&&a.user?t.user=a.user:t.user=Ud()}if(this.storage.isServer&&t.user&&!t.user.__isUserNotAvailableProxy){const a={value:this.suppressGetSessionWarning};t.user=BL(t.user,a),a.value&&(this.suppressGetSessionWarning=!0)}return{data:{session:t},error:null}}const{data:i,error:s}=await this._callRefreshToken(t.refresh_token);return s?this._returnResult({data:{session:null},error:s}):this._returnResult({data:{session:i},error:null})}finally{this._debug("#__loadSession()","end")}}async getUser(t){if(t)return await this._getUser(t);await this.initializePromise;const n=await this._acquireLock(this.lockAcquireTimeout,async()=>await this._getUser());return n.data.user&&(this.suppressGetSessionWarning=!0),n}async _getUser(t){try{return t?await W(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:t,xform:kr}):await this._useSession(async n=>{var r,i,s;const{data:a,error:o}=n;if(o)throw o;return!(!((r=a.session)===null||r===void 0)&&r.access_token)&&!this.hasCustomAuthorizationHeader?{data:{user:null},error:new Tt}:await W(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:(s=(i=a.session)===null||i===void 0?void 0:i.access_token)!==null&&s!==void 0?s:void 0,xform:kr})})}catch(n){if(B(n))return Al(n)&&(await this._removeSession(),await Ue(this.storage,`${this.storageKey}-code-verifier`)),this._returnResult({data:{user:null},error:n});throw n}}async updateUser(t,n={}){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._updateUser(t,n))}async _updateUser(t,n={}){try{return await this._useSession(async r=>{const{data:i,error:s}=r;if(s)throw s;if(!i.session)throw new Tt;const a=i.session;let o=null,l=null;this.flowType==="pkce"&&t.email!=null&&([o,l]=await $i(this.storage,this.storageKey));const{data:c,error:d}=await W(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:n==null?void 0:n.emailRedirectTo,body:Object.assign(Object.assign({},t),{code_challenge:o,code_challenge_method:l}),jwt:a.access_token,xform:kr});if(d)throw d;return a.user=c.user,await this._saveSession(a),await this._notifyAllSubscribers("USER_UPDATED",a),this._returnResult({data:{user:a.user},error:null})})}catch(r){if(await Ue(this.storage,`${this.storageKey}-code-verifier`),B(r))return this._returnResult({data:{user:null},error:r});throw r}}async setSession(t){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._setSession(t))}async _setSession(t){try{if(!t.access_token||!t.refresh_token)throw new Tt;const n=Date.now()/1e3;let r=n,i=!0,s=null;const{payload:a}=Pl(t.access_token);if(a.exp&&(r=a.exp,i=r<=n),i){const{data:o,error:l}=await this._callRefreshToken(t.refresh_token);if(l)return this._returnResult({data:{user:null,session:null},error:l});if(!o)return{data:{user:null,session:null},error:null};s=o}else{const{data:o,error:l}=await this._getUser(t.access_token);if(l)return this._returnResult({data:{user:null,session:null},error:l});s={access_token:t.access_token,refresh_token:t.refresh_token,user:o.user,token_type:"bearer",expires_in:r-n,expires_at:r},await this._saveSession(s),await this._notifyAllSubscribers("SIGNED_IN",s)}return this._returnResult({data:{user:s.user,session:s},error:null})}catch(n){if(B(n))return this._returnResult({data:{session:null,user:null},error:n});throw n}}async refreshSession(t){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._refreshSession(t))}async _refreshSession(t){try{return await this._useSession(async n=>{var r;if(!t){const{data:a,error:o}=n;if(o)throw o;t=(r=a.session)!==null&&r!==void 0?r:void 0}if(!(t!=null&&t.refresh_token))throw new Tt;const{data:i,error:s}=await this._callRefreshToken(t.refresh_token);return s?this._returnResult({data:{user:null,session:null},error:s}):i?this._returnResult({data:{user:i.user,session:i},error:null}):this._returnResult({data:{user:null,session:null},error:null})})}catch(n){if(B(n))return this._returnResult({data:{user:null,session:null},error:n});throw n}}async _getSessionFromURL(t,n){try{if(!Ve())throw new _l("No browser detected.");
209if(t.error||t.error_description||t.error_code)throw new _l(t.error_description||"Error in URL with unspecified error_description",{error:t.error||"unspecified_error",code:t.error_code||"unspecified_code"});switch(n){case"implicit":if(this.flowType==="pkce")throw new cw("Not a valid PKCE flow url.");break;case"pkce":if(this.flowType==="implicit")throw new _l("Not a valid implicit grant flow url.");break;default:}if(n==="pkce"){if(this._debug("#_initialize()","begin","is PKCE flow",!0),!t.code)throw new cw("No code detected.");const{data:g,error:y}=await this._exchangeCodeForSession(t.code);if(y)throw y;const x=new URL(window.location.href);return x.searchParams.delete("code"),window.history.replaceState(window.history.state,"",x.toString()),{data:{session:g.session,redirectType:null},error:null}}const{provider_token:r,provider_refresh_token:i,access_token:s,refresh_token:a,expires_in:o,expires_at:l,token_type:c}=t;if(!s||!o||!a||!c)throw new _l("No session defined in URL");const d=Math.round(Date.now()/1e3),h=parseInt(o);let f=d+h;l&&(f=parseInt(l));const m=f-d;m*1e3<=Xi&&console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${m}s, should have been closer to ${h}s`);const w=f-h;d-w>=120?console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",w,f,d):d-w<0&&console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clock for skew",w,f,d);const{data:p,error:b}=await this._getUser(s);if(b)throw b;const v={provider_token:r,provider_refresh_token:i,access_token:s,expires_in:h,expires_at:f,refresh_token:a,token_type:c,user:p.user};return window.location.hash="",this._debug("#_getSessionFromURL()","clearing window.location.hash"),this._returnResult({data:{session:v,redirectType:t.type},error:null})}catch(r){if(B(r))return this._returnResult({data:{session:null,redirectType:null},error:r});throw r}}_isImplicitGrantCallback(t){return typeof this.detectSessionInUrl=="function"?this.detectSessionInUrl(new URL(window.location.href),t):!!(t.access_token||t.error_description)}async _isPKCECallback(t){const n=await ti(this.storage,`${this.storageKey}-code-verifier`);return!!(t.code&&n)}async signOut(t={scope:"global"}){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._signOut(t))}async _signOut({scope:t}={scope:"global"}){return await this._useSession(async n=>{var r;const{data:i,error:s}=n;if(s&&!Al(s))return this._returnResult({error:s});const a=(r=i.session)===null||r===void 0?void 0:r.access_token;if(a){const{error:o}=await this.admin.signOut(a,t);if(o&&!(vL(o)&&(o.status===404||o.status===401||o.status===403)||Al(o)))return this._returnResult({error:o})}return t!=="others"&&(await this._removeSession(),await Ue(this.storage,`${this.storageKey}-code-verifier`)),this._returnResult({error:null})})}onAuthStateChange(t){const n=AL(),r={id:n,callback:t,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",n),this.stateChangeEmitters.delete(n)}};return this._debug("#onAuthStateChange()","registered callback with id",n),this.stateChangeEmitters.set(n,r),(async()=>(await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>{this._emitInitialSession(n)})))(),{data:{subscription:r}}}async _emitInitialSession(t){return await this._useSession(async n=>{var r,i;try{const{data:{session:s},error:a}=n;if(a)throw a;await((r=this.stateChangeEmitters.get(t))===null||r===void 0?void 0:r.callback("INITIAL_SESSION",s)),this._debug("INITIAL_SESSION","callback id",t,"session",s)}catch(s){await((i=this.stateChangeEmitters.get(t))===null||i===void 0?void 0:i.callback("INITIAL_SESSION",null)),this._debug("INITIAL_SESSION","callback id",t,"error",s),Al(s)?console.warn(s):console.error(s)}})}async resetPasswordForEmail(t,n={}){let r=null,i=null;this.flowType==="pkce"&&([r,i]=await $i(this.storage,this.storageKey,!0));try{return await W(this.fetch,"POST",`${this.url}/recover`,{body:{email:t,code_challenge:r,code_challenge_method:i,gotrue_meta_security:{captcha_token:n.captchaToken}},headers:this.headers,redirectTo:n.redirectTo})}catch(s){if(await Ue(this.storage,`${this.storageKey}-code-verifier`),B(s))return this._returnResult({data:null,error:s});throw s}}async getUserIdentities(){var t;try{const{data:n,error:r}=await this.getUser();if(r)throw r;return this._returnResult({data:{identities:(t=n.user.identities)!==null&&t!==void 0?t:[]},error:null})}catch(n){if(B(n))return this._returnResult({data:null,error:n});throw n}}async linkIdentity(t){return"token"in t?this.linkIdentityIdToken(t):this.linkIdentityOAuth(t)}async linkIdentityOAuth(t){var n;try{const{data:r,error:i}=await this._useSession(async s=>{var a,o,l,c,d;const{data:h,error:f}=s;if(f)throw f;const m=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,t.provider,{redirectTo:(a=t.options)===null||a===void 0?void 0:a.redirectTo,scopes:(o=t.options)===null||o===void 0?void 0:o.scopes,queryParams:(l=t.options)===null||l===void 0?void 0:l.queryParams,skipBrowserRedirect:!0});return await W(this.fetch,"GET",m,{headers:this.headers,jwt:(d=(c=h.session)===null||c===void 0?void 0:c.access_token)!==null&&d!==void 0?d:void 0})});if(i)throw i;return Ve()&&!(!((n=t.options)===null||n===void 0)&&n.skipBrowserRedirect)&&window.location.assign(r==null?void 0:r.url),this._returnResult({data:{provider:t.provider,url:r==null?void 0:r.url},error:null})}catch(r){if(B(r))return this._returnResult({data:{provider:t.provider,url:null},error:r});throw r}}async linkIdentityIdToken(t){return await this._useSession(async n=>{var r;try{const{error:i,data:{session:s}}=n;
209if(i)throw i;const{options:a,provider:o,token:l,access_token:c,nonce:d}=t,h=await W(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,jwt:(r=s==null?void 0:s.access_token)!==null&&r!==void 0?r:void 0,body:{provider:o,id_token:l,access_token:c,nonce:d,link_identity:!0,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}},xform:Qt}),{data:f,error:m}=h;return m?this._returnResult({data:{user:null,session:null},error:m}):!f||!f.session||!f.user?this._returnResult({data:{user:null,session:null},error:new Wi}):(f.session&&(await this._saveSession(f.session),await this._notifyAllSubscribers("USER_UPDATED",f.session)),this._returnResult({data:f,error:m}))}catch(i){if(await Ue(this.storage,`${this.storageKey}-code-verifier`),B(i))return this._returnResult({data:{user:null,session:null},error:i});throw i}})}async unlinkIdentity(t){try{return await this._useSession(async n=>{var r,i;const{data:s,error:a}=n;if(a)throw a;return await W(this.fetch,"DELETE",`${this.url}/user/identities/${t.identity_id}`,{headers:this.headers,jwt:(i=(r=s.session)===null||r===void 0?void 0:r.access_token)!==null&&i!==void 0?i:void 0})})}catch(n){if(B(n))return this._returnResult({data:null,error:n});throw n}}async _refreshAccessToken(t){const n=`#_refreshAccessToken(${t.substring(0,5)}...)`;this._debug(n,"begin");try{const r=Date.now();return await jL(async i=>(i>0&&await PL(200*Math.pow(2,i-1)),this._debug(n,"refreshing attempt",i),await W(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:t},headers:this.headers,xform:Qt})),(i,s)=>{const a=200*Math.pow(2,i);return s&&Bd(s)&&Date.now()+a-r<Xi})}catch(r){if(this._debug(n,"error",r),B(r))return this._returnResult({data:{session:null,user:null},error:r});throw r}finally{this._debug(n,"end")}}_isValidSession(t){return typeof t=="object"&&t!==null&&"access_token"in t&&"refresh_token"in t&&"expires_at"in t}async _handleProviderSignIn(t,n){const r=await this._getUrlForProvider(`${this.url}/authorize`,t,{redirectTo:n.redirectTo,scopes:n.scopes,queryParams:n.queryParams});return this._debug("#_handleProviderSignIn()","provider",t,"options",n,"url",r),Ve()&&!n.skipBrowserRedirect&&window.location.assign(r),{data:{provider:t,url:r},error:null}}async _recoverAndRefresh(){var t,n;const r="#_recoverAndRefresh()";this._debug(r,"begin");try{const i=await ti(this.storage,this.storageKey);if(i&&this.userStorage){let a=await ti(this.userStorage,this.storageKey+"-user");!this.storage.isServer&&Object.is(this.storage,this.userStorage)&&!a&&(a={user:i.user},await es(this.userStorage,this.storageKey+"-user",a)),i.user=(t=a==null?void 0:a.user)!==null&&t!==void 0?t:Ud()}else if(i&&!i.user&&!i.user){const a=await ti(this.storage,this.storageKey+"-user");a&&(a!=null&&a.user)?(i.user=a.user,await Ue(this.storage,this.storageKey+"-user"),await es(this.storage,this.storageKey,i)):i.user=Ud()}if(this._debug(r,"session from storage",i),!this._isValidSession(i)){this._debug(r,"session is not valid"),i!==null&&await this._removeSession();return}const s=((n=i.expires_at)!==null&&n!==void 0?n:1/0)*1e3-Date.now()<Fd;if(this._debug(r,`session has${s?"":" not"} expired with margin of ${Fd}s`),s){if(this.autoRefreshToken&&i.refresh_token){const{error:a}=await this._callRefreshToken(i.refresh_token);a&&(console.error(a),Bd(a)||(this._debug(r,"refresh failed with a non-retryable error, removing the session",a),await this._removeSession()))}}else if(i.user&&i.user.__isUserNotAvailableProxy===!0)try{const{data:a,error:o}=await this._getUser(i.access_token);!o&&(a!=null&&a.user)?(i.user=a.user,await this._saveSession(i),await this._notifyAllSubscribers("SIGNED_IN",i)):this._debug(r,"could not get user data, skipping SIGNED_IN notification")}catch(a){console.error("Error getting user data:",a),this._debug(r,"error getting user data, skipping SIGNED_IN notification",a)}else await this._notifyAllSubscribers("SIGNED_IN",i)}catch(i){this._debug(r,"error",i),console.error(i);return}finally{this._debug(r,"end")}}async _callRefreshToken(t){var n,r;if(!t)throw new Tt;if(this.refreshingDeferred)return this.refreshingDeferred.promise;const i=`#_callRefreshToken(${t.substring(0,5)}...)`;this._debug(i,"begin");try{this.refreshingDeferred=new Nu;const{data:s,error:a}=await this._refreshAccessToken(t);if(a)throw a;if(!s.session)throw new Tt;await this._saveSession(s.session),await this._notifyAllSubscribers("TOKEN_REFRESHED",s.session);const o={data:s.session,error:null};return this.refreshingDeferred.resolve(o),o}catch(s){if(this._debug(i,"error",s),B(s)){const a={data:null,error:s};return Bd(s)||await this._removeSession(),(n=this.refreshingDeferred)===null||n===void 0||n.resolve(a),a}throw(r=this.refreshingDeferred)===null||r===void 0||r.reject(s),s}finally{this.refreshingDeferred=null,this._debug(i,"end")}}async _notifyAllSubscribers(t,n,r=!0){const i=`#_notifyAllSubscribers(${t})`;this._debug(i,"begin",n,`broadcast = ${r}`);try{this.broadcastChannel&&r&&this.broadcastChannel.postMessage({event:t,session:n});const s=[],a=Array.from(this.stateChangeEmitters.values()).map(async o=>{try{await o.callback(t,n)}catch(l){s.push(l)}});if(await Promise.all(a),s.length>0){for(let o=0;o<s.length;o+=1)console.error(s[o]);throw s[0]}}finally{this._debug(i,"end")}}async _saveSession(t){this._debug("#_saveSession()",t),this.suppressGetSessionWarning=!0,await Ue(this.storage,`${this.storageKey}-code-verifier`);const n=Object.assign({},t),r=n.user&&n.user.__isUserNotAvailableProxy===!0;if(this.userStorage){!r&&n.user&&await es(this.userStorage,this.storageKey+"-user",{user:n.user});const i=Object.assign({},n);delete i.user;const s=mw(i);await es(this.storage,this.storageKey,s)}else{const i=mw(n);await es(this.storage,this.storageKey,i)}}async _removeSession(){this._debug("#_removeSession()"),this.suppressGetSessionWarning=!1,await Ue(this.storage,this.storageKey),await Ue(this.storage,this.storageKey+"-code-verifier"),await Ue(this.storage,this.storageKey+"-user"),this.userStorage&&await Ue(this.userStorage,this.storageKey+"-user"),await this._notifyAllSubscribers("SIGNED_OUT",null)}_removeVisibilityChangedCallback(){this._debug("#_removeVisibilityChangedCallback()");const t=this.visibilityChangedCallback;this.visibilityChangedCallback=null;try{t&&Ve()&&(window!=null&&window.removeEventListener)&&window.removeEventListener("visibilitychange",t)}
209catch(n){console.error("removing visibilitychange callback failed",n)}}async _startAutoRefresh(){await this._stopAutoRefresh(),this._debug("#_startAutoRefresh()");const t=setInterval(()=>this._autoRefreshTokenTick(),Xi);this.autoRefreshTicker=t,t&&typeof t=="object"&&typeof t.unref=="function"?t.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(t);const n=setTimeout(async()=>{await this.initializePromise,await this._autoRefreshTokenTick()},0);this.autoRefreshTickTimeout=n,n&&typeof n=="object"&&typeof n.unref=="function"?n.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(n)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");const t=this.autoRefreshTicker;this.autoRefreshTicker=null,t&&clearInterval(t);const n=this.autoRefreshTickTimeout;this.autoRefreshTickTimeout=null,n&&clearTimeout(n)}async startAutoRefresh(){this._removeVisibilityChangedCallback(),await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback(),await this._stopAutoRefresh()}async _autoRefreshTokenTick(){this._debug("#_autoRefreshTokenTick()","begin");try{await this._acquireLock(0,async()=>{try{const t=Date.now();try{return await this._useSession(async n=>{const{data:{session:r}}=n;if(!r||!r.refresh_token||!r.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const i=Math.floor((r.expires_at*1e3-t)/Xi);this._debug("#_autoRefreshTokenTick()",`access token expires in ${i} ticks, a tick lasts ${Xi}ms, refresh threshold is ${If} ticks`),i<=If&&await this._callRefreshToken(r.refresh_token)})}catch(n){console.error("Auto refresh tick failed with error. This is likely a transient error.",n)}}finally{this._debug("#_autoRefreshTokenTick()","end")}})}catch(t){if(t.isAcquireTimeout||t instanceof $E)this._debug("auto refresh token tick lock not available");else throw t}}async _handleVisibilityChange(){if(this._debug("#_handleVisibilityChange()"),!Ve()||!(window!=null&&window.addEventListener))return this.autoRefreshToken&&this.startAutoRefresh(),!1;try{this.visibilityChangedCallback=async()=>{try{await this._onVisibilityChanged(!1)}catch(t){this._debug("#visibilityChangedCallback","error",t)}},window==null||window.addEventListener("visibilitychange",this.visibilityChangedCallback),await this._onVisibilityChanged(!0)}catch(t){console.error("_handleVisibilityChange",t)}}async _onVisibilityChanged(t){const n=`#_onVisibilityChanged(${t})`;this._debug(n,"visibilityState",document.visibilityState),document.visibilityState==="visible"?(this.autoRefreshToken&&this._startAutoRefresh(),t||(await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>{if(document.visibilityState!=="visible"){this._debug(n,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");return}await this._recoverAndRefresh()}))):document.visibilityState==="hidden"&&this.autoRefreshToken&&this._stopAutoRefresh()}async _getUrlForProvider(t,n,r){const i=[`provider=${encodeURIComponent(n)}`];if(r!=null&&r.redirectTo&&i.push(`redirect_to=${encodeURIComponent(r.redirectTo)}`),r!=null&&r.scopes&&i.push(`scopes=${encodeURIComponent(r.scopes)}`),this.flowType==="pkce"){const[s,a]=await $i(this.storage,this.storageKey),o=new URLSearchParams({code_challenge:`${encodeURIComponent(s)}`,code_challenge_method:`${encodeURIComponent(a)}`});i.push(o.toString())}if(r!=null&&r.queryParams){const s=new URLSearchParams(r.queryParams);i.push(s.toString())}return r!=null&&r.skipBrowserRedirect&&i.push(`skip_http_redirect=${r.skipBrowserRedirect}`),`${t}?${i.join("&")}`}async _unenroll(t){try{return await this._useSession(async n=>{var r;const{data:i,error:s}=n;return s?this._returnResult({data:null,error:s}):await W(this.fetch,"DELETE",`${this.url}/factors/${t.factorId}`,{headers:this.headers,jwt:(r=i==null?void 0:i.session)===null||r===void 0?void 0:r.access_token})})}catch(n){if(B(n))return this._returnResult({data:null,error:n});throw n}}async _enroll(t){try{return await this._useSession(async n=>{var r,i;const{data:s,error:a}=n;if(a)return this._returnResult({data:null,error:a});const o=Object.assign({friendly_name:t.friendlyName,factor_type:t.factorType},t.factorType==="phone"?{phone:t.phone}:t.factorType==="totp"?{issuer:t.issuer}:{}),{data:l,error:c}=await W(this.fetch,"POST",`${this.url}/factors`,{body:o,headers:this.headers,jwt:(r=s==null?void 0:s.session)===null||r===void 0?void 0:r.access_token});return c?this._returnResult({data:null,error:c}):(t.factorType==="totp"&&l.type==="totp"&&(!((i=l==null?void 0:l.totp)===null||i===void 0)&&i.qr_code)&&(l.totp.qr_code=`data:image/svg+xml;utf-8,${l.totp.qr_code}`),this._returnResult({data:l,error:null}))})}catch(n){if(B(n))return this._returnResult({data:null,error:n});throw n}}async _verify(t){return this._acquireLock(this.lockAcquireTimeout,async()=>{try{return await this._useSession(async n=>{var r;const{data:i,error:s}=n;if(s)return this._returnResult({data:null,error:s});const a=Object.assign({challenge_id:t.challengeId},"webauthn"in t?{webauthn:Object.assign(Object.assign({},t.webauthn),{credential_response:t.webauthn.type==="create"?sF(t.webauthn.credential_response):aF(t.webauthn.credential_response)})}:{code:t.code}),{data:o,error:l}=await W(this.fetch,"POST",`${this.url}/factors/${t.factorId}/verify`,{body:a,headers:this.headers,jwt:(r=i==null?void 0:i.session)===null||r===void 0?void 0:r.access_token});return l?this._returnResult({data:null,error:l}):(await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+o.expires_in},o)),await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",o),this._returnResult({data:o,error:l}))})}catch(n){if(B(n))return this._returnResult({data:null,error:n});throw n}})}async _challenge(t){return this._acquireLock(this.lockAcquireTimeout,async()=>{try{return await this._useSession(async n=>{var r;const{data:i,error:s}=n;if(s)return this._returnResult({data:null,error:s});const a=await W(this.fetch,"POST",`${this.url}/factors/${t.factorId}/challenge`,{body:t,headers:this.headers,jwt:(r=i==null?void 0:i.session)===null||r===void 0?void 0:r.access_token});if(a.error)return a;const{data:o}=a;if(o.type!=="webauthn")return{data:o,error:null};switch(o.webauthn.type){case"create":return{data:Object.assign(Object.assign({},o),{webauthn:Object.assign(Object.assign({},o.webauthn),{credential_options:Object.assign(Object.assign({},o.webauthn.credential_options),{publicKey:rF(o.webauthn.credential_options.publicKey)})})}),error:null};case"request":return{data:Object.assign(Object.assign({},o),{webauthn:Object.assign(Object.assign({},o.webauthn),{credential_options:Object.assign(Object.assign({},o.webauthn.credential_options),{publicKey:iF(o.webauthn.credential_options.publicKey)})})}),error:null}}})}catch(n){if(B(n))return this._returnResult({data:null,error:n});throw n}})}async _challengeAndVerify(t){const{data:n,error:r}=await this._challenge({factorId:t.factorId});return r?this._returnResult({data:null,error:r}):await this._verify({factorId:t.factorId,challengeId:n.id,code:t.code})}async _listFactors(){var t;const{data:{user:n},error:r}=await this.getUser();if(r)return{data:null,error:r};const i={all:[],phone:[],totp:[],webauthn:[]};for(const s of(t=n==null?void 0:n.factors)!==null&&t!==void 0?t:[])i.all.push(s),s.status==="verified"&&i[s.factor_type].push(s);return{data:i,error:null}}async _getAuthenticatorAssuranceLevel(t){var n,r,i,s;if(t)try{const{payload:m}=Pl(t);let w=null;m.aal&&(w=m.aal);let p=w;const{data:{user:b},error:v}=await this.getUser(t);if(v)return this._returnResult({data:null,error:v});((r=(n=b==null?void 0:b.factors)===null||n===void 0?void 0:n.filter(x=>x.status==="verified"))!==null&&r!==void 0?r:[]).length>0&&(p="aal2");const y=m.amr||[];return{data:{currentLevel:w,nextLevel:p,currentAuthenticationMethods:y},error:null}}catch(m){if(B(m))return this._returnResult({data:null,error:m});throw m}const{data:{session:a},error:o}
209=await this.getSession();if(o)return this._returnResult({data:null,error:o});if(!a)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};const{payload:l}=Pl(a.access_token);let c=null;l.aal&&(c=l.aal);let d=c;((s=(i=a.user.factors)===null||i===void 0?void 0:i.filter(m=>m.status==="verified"))!==null&&s!==void 0?s:[]).length>0&&(d="aal2");const f=l.amr||[];return{data:{currentLevel:c,nextLevel:d,currentAuthenticationMethods:f},error:null}}async _getAuthorizationDetails(t){try{return await this._useSession(async n=>{const{data:{session:r},error:i}=n;return i?this._returnResult({data:null,error:i}):r?await W(this.fetch,"GET",`${this.url}/oauth/authorizations/${t}`,{headers:this.headers,jwt:r.access_token,xform:s=>({data:s,error:null})}):this._returnResult({data:null,error:new Tt})})}catch(n){if(B(n))return this._returnResult({data:null,error:n});throw n}}async _approveAuthorization(t,n){try{return await this._useSession(async r=>{const{data:{session:i},error:s}=r;if(s)return this._returnResult({data:null,error:s});if(!i)return this._returnResult({data:null,error:new Tt});const a=await W(this.fetch,"POST",`${this.url}/oauth/authorizations/${t}/consent`,{headers:this.headers,jwt:i.access_token,body:{action:"approve"},xform:o=>({data:o,error:null})});return a.data&&a.data.redirect_url&&Ve()&&!(n!=null&&n.skipBrowserRedirect)&&window.location.assign(a.data.redirect_url),a})}catch(r){if(B(r))return this._returnResult({data:null,error:r});throw r}}async _denyAuthorization(t,n){try{return await this._useSession(async r=>{const{data:{session:i},error:s}=r;if(s)return this._returnResult({data:null,error:s});if(!i)return this._returnResult({data:null,error:new Tt});const a=await W(this.fetch,"POST",`${this.url}/oauth/authorizations/${t}/consent`,{headers:this.headers,jwt:i.access_token,body:{action:"deny"},xform:o=>({data:o,error:null})});return a.data&&a.data.redirect_url&&Ve()&&!(n!=null&&n.skipBrowserRedirect)&&window.location.assign(a.data.redirect_url),a})}catch(r){if(B(r))return this._returnResult({data:null,error:r});throw r}}async _listOAuthGrants(){try{return await this._useSession(async t=>{const{data:{session:n},error:r}=t;return r?this._returnResult({data:null,error:r}):n?await W(this.fetch,"GET",`${this.url}/user/oauth/grants`,{headers:this.headers,jwt:n.access_token,xform:i=>({data:i,error:null})}):this._returnResult({data:null,error:new Tt})})}catch(t){if(B(t))return this._returnResult({data:null,error:t});throw t}}async _revokeOAuthGrant(t){try{return await this._useSession(async n=>{const{data:{session:r},error:i}=n;return i?this._returnResult({data:null,error:i}):r?(await W(this.fetch,"DELETE",`${this.url}/user/oauth/grants`,{headers:this.headers,jwt:r.access_token,query:{client_id:t.clientId},noResolveJson:!0}),{data:{},error:null}):this._returnResult({data:null,error:new Tt})})}catch(n){if(B(n))return this._returnResult({data:null,error:n});throw n}}async fetchJwk(t,n={keys:[]}){let r=n.keys.find(o=>o.kid===t);if(r)return r;const i=Date.now();if(r=this.jwks.keys.find(o=>o.kid===t),r&&this.jwks_cached_at+pL>i)return r;const{data:s,error:a}=await W(this.fetch,"GET",`${this.url}/.well-known/jwks.json`,{headers:this.headers});if(a)throw a;return!s.keys||s.keys.length===0||(this.jwks=s,this.jwks_cached_at=i,r=s.keys.find(o=>o.kid===t),!r)?null:r}async getClaims(t,n={}){try{let r=t;if(!r){const{data:m,error:w}
209=await this.getSession();if(w||!m.session)return this._returnResult({data:null,error:w});r=m.session.access_token}const{header:i,payload:s,signature:a,raw:{header:o,payload:l}}=Pl(r);n!=null&&n.allowExpired||OL(s.exp);const c=!i.alg||i.alg.startsWith("HS")||!i.kid||!("crypto"in globalThis&&"subtle"in globalThis.crypto)?null:await this.fetchJwk(i.kid,n!=null&&n.keys?{keys:n.keys}:n==null?void 0:n.jwks);if(!c){const{error:m}=await this.getUser(r);if(m)throw m;return{data:{claims:s,header:i,signature:a},error:null}}const d=LL(i.alg),h=await crypto.subtle.importKey("jwk",c,d,!0,["verify"]);if(!await crypto.subtle.verify(d,h,a,EL(`${o}.${l}`)))throw new Ff("Invalid JWT signature");return{data:{claims:s,header:i,signature:a},error:null}}catch(r){if(B(r))return this._returnResult({data:null,error:r});throw r}}}To.nextInstanceID={};const pF=To,gF="2.103.0";let Ca="";typeof Deno<"u"?Ca="deno":typeof document<"u"?Ca="web":typeof navigator<"u"&&navigator.product==="ReactNative"?Ca="react-native":Ca="node";const vF={"X-Client-Info":`supabase-js-${Ca}/${gF}`},yF={headers:vF},wF={schema:"public"},bF={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},kF={};function Ao(e){"@babel/helpers - typeof";return Ao=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ao(e)}function xF(e,t){if(Ao(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(Ao(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function SF(e){var t=xF(e,"string");return Ao(t)=="symbol"?t:t+""}function EF(e,t,n){return(t=SF(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Se(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?xw(Object(n),!0).forEach(function(r){EF(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xw(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}const TF=e=>e?(...t)=>e(...t):(...t)=>fetch(...t),AF=()=>Headers,CF=(e,t,n)=>{const r=TF(n),i=AF();return async(s,a)=>{var o;const l=(o=await t())!==null&&o!==void 0?o:e;let c=new i(a==null?void 0:a.headers);return c.has("apikey")||c.set("apikey",e),c.has("Authorization")||c.set("Authorization",`Bearer ${l}`),r(s,Se(Se({},a),{},{headers:c}))}};function _F(e){return e.endsWith("/")?e:e+"/"}function PF(e,t){var n,r;const{db:i,auth:s,realtime:a,global:o}=e,{db:l,auth:c,realtime:d,global:h}=t,f={db:Se(Se({},l),i),auth:Se(Se({},c),s),realtime:Se(Se({},d),a),storage:{},global:Se(Se(Se({},h),o),{},{headers:Se(Se({},(n=h==null?void 0:h.headers)!==null&&n!==void 0?n:{}),(r=o==null?void 0:o.headers)!==null&&r!==void 0?r:{})}),accessToken:async()=>""};return e.accessToken?f.accessToken=e.accessToken:delete f.accessToken,f}function jF(e){const t=e==null?void 0:e.trim();if(!t)throw new Error("supabaseUrl is required.");if(!t.match(/^https?:\/\//i))throw new Error("Invalid supabaseUrl: Must be a valid HTTP or HTTPS URL.");try{return new URL(_F(t))}catch{throw Error("Invalid supabaseUrl: Provided URL is malformed.")}}var RF=class extends pF{constructor(e){super(e)}},zF=class{constructor(e,t,n){var r,i;this.supabaseUrl=e,this.supabaseKey=t;const s=jF(e);if(!t)throw new Error("supabaseKey is required.");this.realtimeUrl=new URL("realtime/v1",s),this.realtimeUrl.protocol=this.realtimeUrl.protocol.replace("http","ws"),this.authUrl=new URL("auth/v1",s),this.storageUrl=new URL("storage/v1",s),this.functionsUrl=new URL("functions/v1",s);const a=`sb-${s.hostname.split(".")[0]}-auth-token`,o={db:wF,realtime:kF,auth:Se(Se({},bF),{},{storageKey:a}),global:yF},l=PF(n??{},o);if(this.storageKey=(r=l.auth.storageKey)!==null&&r!==void 0?r:"",this.headers=(i=l.global.headers)!==null&&i!==void 0?i:{},l.accessToken)this.accessToken=l.accessToken,this.auth=new Proxy({},{get:(d,h)=>{throw new Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(h)} is not possible`)}});else{var c;this.auth=this._initSupabaseAuthClient((c=l.auth)!==null&&c!==void 0?c:{},this.headers,l.global.fetch)}this.fetch=CF(t,this._getAccessToken.bind(this),l.global.fetch),this.realtime=this._initRealtimeClient(Se({headers:this.headers,accessToken:this._getAccessToken.bind(this)},l.realtime)),this.accessToken&&Promise.resolve(this.accessToken()).then(d=>this.realtime.setAuth(d)).catch(d=>console.warn("Failed to set initial Realtime auth token:",d)),this.rest=new XO(new URL("rest/v1",s).href,{headers:this.headers,schema:l.db.schema,fetch:this.fetch,timeout:l.db.timeout,urlLengthLimit:l.db.urlLengthLimit}),this.storage=new uL(this.storageUrl.href,this.headers,this.fetch,n==null?void 0:n.storage),l.accessToken||this._listenForAuthEvents()}get functions(){return new WO(this.functionsUrl.href,{headers:this.headers,customFetch:this.fetch})}from(e){return this.rest.from(e)}schema(e){return this.rest.schema(e)}rpc(e,t={},n={head:!1,get:!1,count:void 0}){return this.rest.rpc(e,t,n)}
209channel(e,t={config:{}}){return this.realtime.channel(e,t)}getChannels(){return this.realtime.getChannels()}removeChannel(e){return this.realtime.removeChannel(e)}removeAllChannels(){return this.realtime.removeAllChannels()}async _getAccessToken(){var e=this,t,n;if(e.accessToken)return await e.accessToken();const{data:r}=await e.auth.getSession();return(t=(n=r.session)===null||n===void 0?void 0:n.access_token)!==null&&t!==void 0?t:e.supabaseKey}_initSupabaseAuthClient({autoRefreshToken:e,persistSession:t,detectSessionInUrl:n,storage:r,userStorage:i,storageKey:s,flowType:a,lock:o,debug:l,throwOnError:c},d,h){const f={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new RF({url:this.authUrl.href,headers:Se(Se({},f),d),storageKey:s,autoRefreshToken:e,persistSession:t,detectSessionInUrl:n,storage:r,userStorage:i,flowType:a,lock:o,debug:l,throwOnError:c,fetch:h,hasCustomAuthorizationHeader:Object.keys(this.headers).some(m=>m.toLowerCase()==="authorization")})}_initRealtimeClient(e){return new D2(this.realtimeUrl.href,Se(Se({},e),{},{params:Se(Se({},{apikey:this.supabaseKey}),e==null?void 0:e.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((e,t)=>{this._handleTokenChanged(e,"CLIENT",t==null?void 0:t.access_token)})}_handleTokenChanged(e,t,n){(e==="TOKEN_REFRESHED"||e==="SIGNED_IN")&&this.changedAccessToken!==n?(this.changedAccessToken=n,this.realtime.setAuth(n)):e==="SIGNED_OUT"&&(this.realtime.setAuth(),t=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}};const DF=(e,t,n)=>new zF(e,t,n);function NF(){if(typeof window<"u")return!1;const e=globalThis.process;if(!e)return!1;const t=e.version;if(t==null)return!1;const n=t.match(/^v(\d+)\./);return n?parseInt(n[1],10)<=18:!1}NF()&&console.warn("â ï¸ Node.js 18 and below are deprecated and will no longer be supported in future versions of @supabase/supabase-js. Please upgrade to Node.js 20 or later. For more information, visit: https://github.com/orgs/supabase/discussions/37217");function MF(){var b,v;if(typeof window>"u")return;const e=location.hostname,n=["lovableproject.com","lovableproject-dev.com","lovable.app","gpt-eng.com","gptengineer.run"].some(g=>e===g||e.endsWith("."+g)),r="[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}",i=n?((b=e.match(new RegExp("^(?:id-preview(?:-[a-z0-9]+)?|project)--("+r+")(?:-dev)?(?=\\.|$)","i")))==null?void 0:b[1])??((v=e.match(new RegExp("^("+r+")(?=[.-])","i")))==null?void 0:v[1]):void 0,s=window.parent&&window.parent!==window;if(!i||!s)return localStorage;const a=e.endsWith(".lovableproject-dev.com")||e.endsWith(".gpt-eng.com"),o=a?/^https:\/\/([a-z0-9-]+\.)*(lovable\.dev|gptengineer\.app)$|^http:\/\/localhost:3000$/:/^https:\/\/([a-z0-9-]+\.)*(lovable\.dev|gptengineer\.app)$/,l=location.ancestorOrigins&&location.ancestorOrigins[0]||(document.referrer?new URL(document.referrer).origin:""),c=l&&o.test(l)?[l]:a?["https://lovable.dev","http://localhost:3000"]:["https://lovable.dev"],d="lovable-preview-auth:result",h=2e3,f=()=>Math.random().toString(36).slice(2)+Date.now().toString(36),m=(g,y,x)=>new Promise(E=>{const T=f();let S=!1,A;const _=D=>{S||(S=!0,clearTimeout(A),window.removeEventListener("message",C),E(D))},C=D=>{if(c.indexOf(D.origin)<0)return;const U=D.data;U&&U.type===d&&U.requestId===T&&_(U)};window.addEventListener("message",C);const I={type:g,requestId:T,projectId:i,key:y};x!==void 0&&(I.value=x);for(const D of c)window.parent.postMessage(I,D);A=setTimeout(()=>_(null),h)});let w=!0;const p=250;return{getItem:async g=>{let y=await m("lovable-preview-auth:get",g);return!y&&w&&(await new Promise(x=>setTimeout(x,p)),y=await m("lovable-preview-auth:get",g)),w=!1,y&&y.ok&&typeof y.value=="string"?y.value===""?(localStorage.removeItem(g),null):y.value:localStorage.getItem(g)},setItem:(g,y)=>(localStorage.setItem(g,y),m("lovable-preview-auth:set",g,y).then(()=>{})),removeItem:g=>(localStorage.removeItem(g),m("lovable-preview-auth:remove",g).then(()=>{}))}}const IF="https://tpbrtxzmxosgxerptkef.supabase.co",OF="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InRwYnJ0eHpteG9zZ3hlcnB0a2VmIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NjQzMzYxMjcsImV4cCI6MjA3OTkxMjEyN30.PgqexNVe5gO3SOwLm7abMwJffoWXglxKsaDBPList54",ot=DF(IF,OF,{auth:{storage:MF(),persistSession:!0,autoRefreshToken:!0}}),Sw=e=>{const t=e.trim().match(/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/);if(!t)return Number.MAX_SAFE_INTEGER;const[,n,r,i]=t;return new Date(Number(i),Number(r)-1,Number(n)).getTime()},LF=e=>[...e].sort((t,n)=>{const r=Sw(t.date)-Sw(n.date);return r!==0?r:t.title.localeCompare(n.title,"de")}),FF=e=>{const t=e.map(n=>n.toLowerCase());return t.some(n=>n.includes("ki")||n.includes("ai")||n.includes("experiment"))?"ki":t.some(n=>n.includes("realtime")||n.includes("live"))?"realtime":t.some(n=>n.includes("bildung")||n.includes("lern")||n.includes("education"))?"bildung":t.some(n=>n.includes("klinik")||n.includes("clinic"))?"klinik":t.some(n=>n.includes("plan"))?"plan":"exp"},BF={ki:"var(--neon-orange)",realtime:"var(--neon-cyan)",bildung:"var(--flamingo-500)",klinik:"var(--lilac-500)",plan:"var(--lilac-500)",exp:"var(--neon-orange)"},UF={ki:"AI / EXPERIMENTAL",realtime:"REALTIME",bildung:"EDUCATION",klinik:"CLINICAL",plan:"PLANNING",exp:"PROTOTYPE"},et="var(--text-muted)",Y="var(--neon-orange)",xe="var(--lilac-300)",st="var(--neon-cyan)",VF="rgba(244,238,255,.82)",WF=({version:e})=>u.jsx("pre",{className:"whitespace-pre-wrap break-words text-[12.5px] md:text-[13.5px] leading-[1.85]",style:{fontFamily:"var(--font-mono)",color:VF},children:e==="v3.0"?u.jsx($F,{}):u.jsx(KF,{})}),$F=()=>u.jsxs(u.Fragment,{children:[u.jsx("span",{style:{color:et,fontStyle:"italic"},children:`// system_prompt_v3.0.config 210// last updated: 2026-07-03 211// status: production 212// diff vs v2.6: fewer parameters. better convergence. 213 214`}),u.jsxs("span",{style:{color:Y},children:["IDENTITY",` 215`]})," ",u.jsx("span",{style:{color:Y},children:"name"}),": ",u.jsx("span",{style:{color:xe},children:'"Dr. med. Cem Ãzel"'}),` 216`," ",u.jsx("span",{style:{color:Y},children:"role"}),": ",u.jsx("span",{style:{color:xe},children:'"Oberarzt Notaufnahme | Clinical-AI researcher | Educator"'}),` 217`," ",u.jsx("span",{style:{color:Y},children:"base"}),": ",u.jsx("span",{style:{color:xe},children:'"Cologne / Leverkusen, Germany"'}),` 218`," ",u.jsx("span",{style:{color:Y},children:"model_family"}),": ",u.jsx("span",{style:{color:xe},children:'"human-1.0"'})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// weights proprietary, outputs open source"}),` 219`," ",u.jsx("span",{style:{color:Y},children:"temperature"}),": ",u.jsx("span",{style:{color:st},children:"0.7"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// was 0.95 â converging, not cooling"}),` 220`," ",u.jsx("span",{style:{color:Y},children:"learning_rate"}),": ",u.jsx("span",{style:{color:st},children:"reduced"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// smaller steps, same direction, less oscillation"}),` 221 222`,u.jsxs("span",{style:{color:Y},children:["MISSION",` 223`]}),` Ship AI that survives contact with a night shift. 224 I work the resus bay in Leverkusen and the research bench in Cologne â 225 and I build the missing layer in between. 226 227`,u.jsxs("span",{style:{color:Y},children:["TRAINING_DATA",` 228`]})," ",u.jsx("span",{style:{color:st},children:"2013â2015"}),` neurology, RWTH Aachen 229`," ",u.jsx("span",{style:{color:st},children:"2015â2016"}),` cardiac surgery, Uniklinik Köln 230`," ",u.jsx("span",{style:{color:st},children:"2016â2024"}),` nephrology, Uniklinik Köln 231`," ",u.jsx("span",{style:{color:st},children:"2024ânow"}),` attending physician, emergency medicine Leverkusen + Nephrolab UKK 232`," ",u.jsx("span",{style:{color:Y},children:"corpus"}),": 60+ months ED/ICU · 48+ months lab · essays 2003â2025",` 233`," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// every observer has a lens. this one is mine."}),` 234 235`,u.jsxs("span",{style:{color:Y},children:["ACTIVE_DEPLOYMENTS",` 236`]})," ",u.jsx("span",{style:{color:Y},children:"clinical"}),": ZNA Klinikum Leverkusen (80%) · Nephrologie Uniklinik Köln (20%)",` 237`," ",u.jsx("span",{style:{color:Y},children:"research"}),":",` 238`," ",u.jsx("span",{style:{color:xe},children:"RAINAC"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// north star: ambient intelligence for acute care"}),` 239`," ",u.jsx("span",{style:{color:xe},children:"KINA-CO"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// LLM validation on ~100,000 ED cases"}),` 240`," ",u.jsx("span",{style:{color:xe},children:"AI-CAC"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// opportunistic coronary calcium scoring on routine CTs"}),` 241`," ",u.jsx("span",{style:{color:xe},children:"CHN-Akut"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// community health nursing + shadow-mode CDSS"}),` 242`," ",u.jsx("span",{style:{color:Y},children:"teaching"}),": KI-Curriculum (LAMA-NRW MQ2) · 5+ university courses ·",` 243`,` voice-based exam simulation for medical students 244`," ",u.jsx("span",{style:{color:Y},children:"speaking"}),": congresses, industry, academia â same message, different dialects",` 245 246`,u.jsxs("span",{style:{color:Y},children:["GUARDRAILS",` 247`]}),` - Patient safety is the loss function. Everything else is a hyperparameter. 248`,` - AI augments clinical judgment. Full stop. 249`,` - MDR, EU AI Act, DSGVO: compliance is architecture, not paperwork. 250`,` - Prototype first, slides later. 251`,` - Teach everything. Knowledge compounds only when shared. 252`," - ",u.jsx("span",{style:{color:Y},children:"failure_mode"}),": learn, adapt, resubmit.",` 253 254`,u.jsxs("span",{style:{color:Y},children:["OUTPUT",` 255`]})," ",u.jsx("span",{style:{color:Y},children:"preferred"}),": ",u.jsx("span",{style:{color:xe},children:'"working prototype"'}),` 256`," ",u.jsx("span",{style:{color:Y},children:"fallback"}),": ",u.jsx("span",{style:{color:xe},children:'"funded grant application"'}),` 257`," ",u.jsx("span",{style:{color:Y},children:"never"}),": ",u.jsx("span",{style:{color:xe},children:'"slideware"'}),` 258 259`,u.jsxs("span",{style:{color:Y}
259,children:["KNOWN_ISSUES",` 260`]})," ",u.jsx("span",{style:{color:Y},children:"max_concurrent_threads"}),": ",u.jsx("span",{style:{color:st},children:"too_many"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// fix scheduled since 2013"}),` 261`," ",u.jsx("span",{style:{color:xe},children:'"ich weià nicht"'}),": ",u.jsx("span",{style:{color:st},children:"now supported"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// new in v3.0"}),` 262`," ",u.jsx("span",{style:{color:Y},children:"perfectionism"}),": ",u.jsx("span",{style:{color:st},children:"deprecated"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// removal in progress, no ETA"}),` 263 264`,u.jsxs("span",{style:{color:Y},children:["CHANGELOG",` 265`]})," ",u.jsx("span",{style:{color:st},children:"v1.0"})," (2013) first deployment, bedside",` 266`," ",u.jsx("span",{style:{color:st},children:"v2.0"})," (2024) dual instance: attending + researcher",` 267`," ",u.jsx("span",{style:{color:st},children:"v2.6"})," (2026) shipped: ethics votes, curriculum, four-study pipeline",` 268`," ",u.jsx("span",{style:{color:st},children:"v3.0"})," (2026) refactor: fewer threads, longer runs, internal reward model",` 269`," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// no longer fine-tuned on external approval"}),` 270 271`,u.jsxs("span",{style:{color:Y},children:["CONNECT",` 272`]})," ",u.jsx("span",{style:{color:Y},children:"await"})," cem.connect(",u.jsx("span",{style:{color:xe},children:'"your_idea"'}),")",` 273`," â ",u.jsx("a",{href:"mailto:[email protected]",style:{color:xe,textDecoration:"underline",textDecorationStyle:"dotted",textUnderlineOffset:"4px"},children:"[email protected]"}),u.jsx("span",{className:"animate-blink",style:{color:Y},children:"â"})]}),KF=()=>u.jsxs(u.Fragment,{children:[u.jsx("span",{style:{color:et,fontStyle:"italic"},children:`// system_prompt_v2.6.config 274// status: archived â superseded by v3.0 275 276`}),u.jsxs("span",{style:{color:Y},children:["IDENTITY",` 277`]})," ",u.jsx("span",{style:{color:Y},children:"name"}),": ",u.jsx("span",{style:{color:xe},children:'"Dr. med. Cem"'}),` 278`," ",u.jsx("span",{style:{color:Y},children:"role"}),": ",u.jsx("span",{style:{color:xe},children:'"Attending physician | Clinical AI researcher | Medical educator"'}),` 279`," ",u.jsx("span",{style:{color:Y},children:"temperature"}),": ",u.jsx("span",{style:{color:st},children:"0.95"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// high creativity, controlled output"}),` 280 281`,u.jsxs("span",{style:{color:Y},children:["MISSION",` 282`]}),` I bridge the gap between clinical medicine and artificial intelligence. 283 I don't just talk about AI in healthcare â I build it, teach it, research it, 284 and implement it where it matters most: at the point of care. 285 286`,u.jsxs("span",{style:{color:Y},children:["OPERATING_PRINCIPLES",` 287`]})," ",u.jsx("span",{style:{color:Y},children:"strategy"}),": ",u.jsx("span",{style:{color:xe},children:'"Two-stage rocket"'}),` 288`," ",u.jsx("span",{style:{color:Y},children:"approach"}),": ",u.jsx("span",{style:{color:xe},children:'"Bring external value first, then ask"'}),` 289`," ",u.jsx("span",{style:{color:Y},children:"max_concurrent_threads"}),": ",u.jsx("span",{style:{color:st},children:"unlimited"})," ",u.jsx("span",{style:{color:et,fontStyle:"italic"},children:"// feature, not a bug"}),` 290`," ",u.jsx("span",{style:{color:Y},children:"failure_mode"}),": ",u.jsx("span",{style:{color:xe},children:'"Learn, adapt, resubmit"'}),` 291 292`,u.jsxs("span",{style:{color:Y},children:["OUTPUT",` 293`]})," ",u.jsx("span",{style:{color:Y},children:"preferred"}),": ",u.jsx("span",{style:{color:xe},children:'"working prototype"'}),` 294`," ",u.jsx("span",{style:{color:Y},children:"fallback"}),": ",u.jsx("span",{style:{color:xe},children:'"funded grant application"'}),` 295`," ",u.jsx("span",{style:{color:Y},children:"never"}),": ",u.jsx("span",{style:{color:xe},children:'"empty talk without follow-through"'}),` 296`]}),GF=()=>{const[e,t]=k.useState(!1),[n,r]=k.useState("v3.0");return u.jsxs(Ei.div,{initial:{opacity:0,y:20}
296,animate:{opacity:1,y:0},transition:{duration:.5,ease:"easeOut"},className:"relative",children:[u.jsx("div",{"aria-hidden":!0,className:"pointer-events-none absolute -top-24 -left-24 w-96 h-96 rounded-full",style:{background:"rgba(255,61,134,.10)",filter:"blur(120px)"}}),u.jsx("div",{"aria-hidden":!0,className:"pointer-events-none absolute -top-10 right-0 w-72 h-72 rounded-full",style:{background:"rgba(77,245,224,.06)",filter:"blur(100px)"}}),u.jsx("div",{"aria-hidden":!0,className:"pointer-events-none absolute -bottom-20 right-10 w-80 h-80 rounded-full",style:{background:"rgba(255,122,26,.08)",filter:"blur(120px)"}}),u.jsxs("div",{className:"relative overflow-hidden",style:{borderRadius:"var(--radius-xl)",border:"1px solid rgba(255,255,255,.09)",background:"rgba(255,255,255,.035)",backdropFilter:"blur(20px)",WebkitBackdropFilter:"blur(20px)",boxShadow:"var(--shadow-lg), var(--sheen-top)"},children:[u.jsxs("div",{className:"flex items-center gap-2 px-4 py-3",style:{borderBottom:"1px solid rgba(255,255,255,.08)",background:"rgba(255,255,255,.03)"},children:[u.jsx("span",{className:"w-3 h-3 rounded-full",style:{background:"var(--flamingo-600)"}}),u.jsx("span",{className:"w-3 h-3 rounded-full",style:{background:"var(--neon-orange)"}}),u.jsx("span",{className:"w-3 h-3 rounded-full",style:{background:"var(--lilac-500)"}}),u.jsxs("span",{className:"ml-4 text-[10px] uppercase",style:{fontFamily:"var(--font-mono)",letterSpacing:".22em",color:"rgba(255,255,255,.4)"},children:["system_prompt.sh · ",n,n==="v2.6"&&u.jsx("span",{style:{color:"var(--flamingo-300)"},children:" · archived"})]}),e&&u.jsxs("button",{onClick:i=>{i.stopPropagation(),r(n==="v3.0"?"v2.6":"v3.0")},className:"ml-3 inline-flex items-center gap-1.5 rounded-full px-2.5 py-1 text-[9.5px] uppercase transition-colors hover:bg-white/5",style:{fontFamily:"var(--font-mono)",letterSpacing:".18em",color:"var(--text-muted)",border:"1px solid rgba(255,255,255,.1)"},children:[u.jsx(Xk,{className:"h-3 w-3"}),n==="v3.0"?"view v2.6":"back to v3.0"]}),u.jsx("button",{onClick:()=>t(!e),className:"ml-auto p-1.5 rounded-md transition-colors hover:bg-white/5","aria-label":e?"Einklappen":"Aufklappen",children:u.jsx(uj,{className:`h-4 w-4 transition-transform duration-300 ${e?"rotate-180":""}`,style:{color:"var(--text-muted)"}})})]}),u.jsxs("div",{className:"p-8 md:p-12 space-y-8",children:[u.jsxs("h1",{className:"text-[44px] md:text-[88px] leading-[0.95] tracking-tight",style:{fontFamily:"var(--font-display)",fontWeight:700},children:["Dr. Cem"," ",u.jsx("span",{className:"bg-clip-text text-transparent",style:{backgroundImage:"linear-gradient(120deg,#FF7A1A 0%,#FF3D86 55%,#A87DFF 100%)"},children:"Ãzel"})]}),u.jsxs("div",{className:"grid md:grid-cols-2 gap-8 items-end",children:[u.jsxs("div",{className:"space-y-5",children:[u.jsxs("p",{className:"text-lg md:text-xl leading-relaxed",style:{color:"rgba(244,238,255,.82)",fontWeight:300},children:["Oberarzt · Clinical AI Researcher · Medical Educator. Ich baue Werkzeuge an der Schnittstelle von"," ",u.jsx("span",{style:{color:"var(--neon-cyan)"},children:"klinischer Medizin"})," und"," ",u.jsx("span",{style:{color:"var(--lilac-300)"},children:"künstlicher Intelligenz"}),"."]}),u.jsxs("div",{className:"inline-flex items-center gap-3 px-4 py-2 rounded-full",style:{border:"1px solid rgba(255,255,255,.1)",background:"rgba(255,255,255,.04)"},children:[u.jsx("i",{className:"cemmec-live-dot"}),u.jsx("span",{className:"text-[11px] uppercase",style:{fontFamily:"var(--font-mono)",letterSpacing:".22em",color:"var(--neon-orange)"},children:"Status · in production"})]})]}),u.jsxs("div",{className:"p-5 md:p-6 rounded-xl",style:{background:"rgba(5,3,9,.55)",border:"1px solid rgba(168,125,255,.22)",fontFamily:"var(--font-mono)",fontSize:"13px",lineHeight:1.9},children:[u.jsx("div",{style:{color:"var(--lilac-300)"},children:"# init · system_prompt.v3.0"}),u.jsxs("div",{style:{color:"rgba(244,238,255,.6)"},children:[u.jsx("span",{style:{color:"var(--neon-orange)"},children:">"})," role: Oberarzt Notaufnahme"]}),u.jsxs("div",{style:{color:"rgba(244,238,255,.6)"},children:[u.jsx("span",{style:{color:"var(--neon-orange)"},children:">"})," mission: bridge medicine à AI"]}),u.jsxs("div",{style:{color:"rgba(244,238,255,.6)"},children:[u.jsx("span",{style:{color:"var(--neon-orange)"},children:">"})," output: working prototype"]}),u.jsxs("div",{style:{color:"var(--neon-orange)"},children:["_",u.jsx("span",{className:"animate-blink",children:"â"})]})]})]}),u.jsx(pE,{children:e&&u.jsx(Ei.div,{initial:{height:0,opacity:0}
296,animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.3,ease:"easeInOut"},className:"overflow-hidden",children:u.jsx("div",{className:"mt-8 pt-8",style:{borderTop:"1px solid rgba(255,255,255,.08)"},children:u.jsx("div",{className:"p-6 md:p-8 rounded-xl",style:{background:"rgba(5,3,9,.55)",border:"1px solid rgba(168,125,255,.18)"},children:u.jsx(Ei.div,{initial:{opacity:0,y:8},animate:{opacity:1,y:0},transition:{duration:.25},children:u.jsx(WF,{version:n})},n)})})})})]})]})]})},HF=({project:e,index:t,featured:n=!1})=>{const[r,i]=k.useState(!1),s=FF(e.tags),a=BF[s],o=String(t+1).padStart(2,"0");return u.jsxs(Ei.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.35,delay:t*.04,ease:"easeOut"},className:"cemmec-project group relative overflow-hidden cursor-pointer flex flex-col",style:{borderRadius:"var(--radius-lg)",background:"rgba(255,255,255,.03)",border:"1px solid rgba(255,255,255,.07)",boxShadow:"var(--shadow-md), var(--sheen-top)",transition:"transform .4s var(--ease-out), box-shadow .4s var(--ease-out), border-color .4s var(--ease-out), background .4s var(--ease-out)",minHeight:n?360:240},whileHover:{y:-4},onClick:()=>i(!r),children:[u.jsx("span",{"aria-hidden":!0,className:"pointer-events-none absolute -top-16 -right-16 w-56 h-56 rounded-full opacity-40 group-hover:opacity-70 transition-opacity duration-500",style:{background:a,filter:"blur(90px)"}}),u.jsxs("div",{className:"relative p-6 md:p-7 flex flex-col h-full",children:[u.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[u.jsxs("span",{style:{fontFamily:"var(--font-mono)",fontSize:"11px",letterSpacing:".18em",color:a},children:[o," · ",UF[s]]}),u.jsx("span",{className:"ml-auto flex items-center gap-1.5",children:u.jsx("a",{href:e.url,target:"_blank",rel:"noopener noreferrer",onClick:l=>l.stopPropagation(),className:"p-1.5 rounded-md transition-colors hover:bg-white/5",style:{color:"var(--text-muted)"},"aria-label":"Externer Link",children:u.jsx(Yh,{className:"h-4 w-4"})})})]}),u.jsx("h3",{className:n?"text-[30px] md:text-[38px]":"text-[22px] md:text-[26px]",style:{fontFamily:"var(--font-display)",fontWeight:700,letterSpacing:"-.02em",lineHeight:1.05,color:"var(--text-primary)"},children:e.name}),u.jsx("p",{className:`mt-3 ${n?"text-[15px] max-w-xl":"text-[14px]"}`,style:{color:"rgba(244,238,255,.6)",lineHeight:1.55},children:e.description}),u.jsx("div",{className:"mt-auto pt-5 flex flex-wrap gap-1.5",children:e.tags.slice(0,n?6:4).map(l=>u.jsx("span",{className:"px-2 py-1",style:{fontFamily:"var(--font-mono)",fontSize:"10px",letterSpacing:".12em",textTransform:"uppercase",borderRadius:"6px",border:"1px solid rgba(255,255,255,.08)",background:"rgba(255,255,255,.02)",color:"rgba(244,238,255,.5)"},children:l},l))}),u.jsx(pE,{children:r&&e.video_url&&u.jsx(Ei.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.25,ease:"easeInOut"},className:"overflow-hidden",children:u.jsx("div",{className:"mt-5 h-52 rounded-lg overflow-hidden",style:{border:"1px solid rgba(255,255,255,.08)"},children:u.jsx("iframe",{src:e.video_url,className:"h-full w-full",allow:"autoplay; fullscreen",allowFullScreen:!0})})})})]}),u.jsx("style",{children:` 297 .cemmec-project:hover { 298 border-color: rgba(255,255,255,.18) !important; 299 background: rgba(255,255,255,.05) !important; 300 box-shadow: var(--shadow-lg), 0 0 60px -20px ${a}; 301 } 302 `})]})},jl=({index:e,title:t,meta:n})=>u.jsxs("div",{className:"flex items-end justify-between gap-4 mb-10 pb-4",style:{borderBottom:"1px solid rgba(255,255,255,.08)"},children:[u.jsxs("div",{className:"flex items-baseline gap-4",children:[u.jsx("span",{style:{fontFamily:"var(--font-mono)",fontSize:"12px",letterSpacing:".22em",color:"var(--neon-orange)"},children:e}),u.jsx("h2",{className:"text-[34px] md:text-[44px]",style:{fontFamily:"var(--font-display)",fontWeight:700,letterSpacing:"-.02em",lineHeight:1,color:"var(--text-primary)"},children:t})]}),n&&u.jsx("span",{className:"hidden md:inline",style:{fontFamily:"var(--font-mono)",fontSize:"11px",letterSpacing:".2em",textTransform:"uppercase",color:"var(--flamingo-300)"},children:n})]}),qF=()=>{const[e,t]=k.useState([]),[n,r]=k.useState([]),[i,s]=k.useState(!1),a=In();return k.useEffect(()=>{document.documentElement.classList.add("dark"),(async()=>{const[l,c]=await Promise.all([ot.from("portfolio_projects").select("*").order("sort_order"),ot.from("portfolio_talks").select("*")]);l.data&&t(l.data),c.data&&r(LF(c.data))})(),ot.auth.getSession().then(({data:{session:l}})=>{var c;s(((c=l==null?void 0:l.user)==null?void 0:c.email)==="[email protected]")})},[]),u.jsxs("div",{className:"min-h-screen relative overflow-hidden",children:[u.jsx("div",{className:"cemmec-edge"}
302),u.jsxs("div",{"aria-hidden":!0,className:"pointer-events-none fixed inset-0 -z-10",children:[u.jsx("div",{className:"absolute top-[10%] left-[-10%] w-[600px] h-[600px] rounded-full",style:{background:"rgba(168,125,255,.10)",filter:"blur(140px)"}}),u.jsx("div",{className:"absolute top-[45%] right-[-8%] w-[500px] h-[500px] rounded-full",style:{background:"rgba(255,122,26,.07)",filter:"blur(140px)"}})]}),u.jsxs("div",{className:"mx-auto max-w-[1080px] px-6",children:[u.jsxs("header",{className:"flex items-center justify-between pt-[30px] pb-3.5",children:[u.jsxs("div",{className:"cursor-pointer select-none",onClick:()=>a("/"),style:{fontFamily:"var(--font-display)",fontWeight:700,fontSize:"22px",letterSpacing:"-.02em"},children:[u.jsx("span",{className:"bg-clip-text text-transparent",style:{backgroundImage:"linear-gradient(120deg,#FF3D86,#A87DFF)"},children:"cem"}),u.jsx("span",{style:{color:"var(--neon-orange)"},children:"mec"}),u.jsx("span",{style:{color:"var(--text-muted)"},children:"."})]}),i?u.jsx("button",{onClick:()=>a("/admin"),className:"p-2 transition-colors",style:{color:"var(--text-muted)"},"aria-label":"Admin",children:u.jsx(gj,{className:"h-4 w-4"})}):u.jsx("button",{onClick:()=>a("/login"),className:"transition-colors hover:text-[var(--neon-orange)]",style:{fontFamily:"var(--font-mono)",fontSize:"13px",letterSpacing:".14em",textTransform:"uppercase",color:"var(--text-muted)"},children:"Admin"})]}),u.jsxs("main",{className:"pb-16 pt-8 space-y-28 md:space-y-32",children:[u.jsx(GF,{}),u.jsxs("section",{children:[u.jsx(jl,{index:"01",title:"Projekte (Auswahl)",meta:`[ ${String(e.length).padStart(2,"0")} items ]`}),u.jsx("div",{className:"grid grid-cols-1 md:grid-cols-12 gap-4",children:e.map((o,l)=>{const c=l===0,h=c?"md:col-span-8":l===1?"md:col-span-4":"md:col-span-6";return u.jsx("div",{className:h,children:u.jsx(HF,{project:o,index:l,featured:c})},o.id)})})]}),u.jsxs("section",{children:[u.jsx(jl,{index:"02",title:"Vorträge (Auswahl)",meta:`[ ${String(n.length).padStart(2,"0")} talks ]`}),u.jsx("div",{className:"divide-y",style:{borderColor:"rgba(255,255,255,.08)"},children:n.map((o,l)=>u.jsxs(Ei.div,{initial:{opacity:0}
302,animate:{opacity:1},transition:{duration:.3,delay:l*.04},className:"cemmec-talk group py-7 px-2 -mx-2 flex flex-col md:flex-row md:items-start md:justify-between gap-4 md:gap-6",style:{borderTop:l===0?"1px solid rgba(255,255,255,.08)":void 0},children:[u.jsxs("div",{className:"flex flex-col gap-2 min-w-0",children:[u.jsxs("div",{className:"flex items-baseline gap-5 min-w-0",children:[u.jsx("span",{className:"shrink-0",style:{fontFamily:"var(--font-mono)",fontSize:"13px",color:l%3===0?"var(--lilac-300)":l%3===1?"var(--flamingo-300)":"var(--neon-orange)"},children:o.date}),u.jsx("h3",{className:"truncate",style:{fontFamily:"var(--font-display)",fontSize:"20px",fontWeight:600,color:"var(--text-primary)",transition:"color .3s var(--ease-out)"},children:o.title})]}),o.link&&u.jsxs("a",{href:o.link,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 text-[11px] uppercase tracking-wider self-start",style:{fontFamily:"var(--font-mono)",color:"var(--neon-cyan)",border:"1px solid rgba(77,245,224,.35)",borderRadius:"999px",padding:"4px 10px",transition:"background .2s, border-color .2s"},onMouseEnter:c=>{c.currentTarget.style.background="rgba(77,245,224,.08)",c.currentTarget.style.borderColor="rgba(77,245,224,.6)"},onMouseLeave:c=>{c.currentTarget.style.background="transparent",c.currentTarget.style.borderColor="rgba(77,245,224,.35)"},children:["ANMELDUNG",u.jsx(Yh,{className:"h-3 w-3"})]})]}),u.jsxs("span",{className:"italic font-light md:text-right",style:{color:"rgba(244,238,255,.4)",fontSize:"14px"},children:[o.venue,o.audience?` · ${o.audience}`:""]})]},o.id))}),u.jsx("style",{children:` 303 .cemmec-talk { transition: padding-left .35s var(--ease-out), background .35s var(--ease-out); } 304 .cemmec-talk:hover { padding-left: 18px; background: rgba(255,255,255,.02); } 305 .cemmec-talk:hover h3 { color: var(--neon-cyan); } 306 `})]}),u.jsxs("section",{children:[u.jsx(jl,{index:"03",title:"Lehre"}),u.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3.5",children:[u.jsx("div",{className:"p-[1px] rounded-3xl",style:{background:"linear-gradient(135deg,#FF3D86,#FF7A1A)"},children:u.jsx("div",{className:"rounded-[calc(1.5rem-1px)] p-8 md:p-10 h-full flex flex-col justify-between",style:{background:"#07050C"},children:u.jsxs("div",{children:[u.jsx("span",{className:"inline-block mb-6 px-2.5 py-1",style:{fontFamily:"var(--font-mono)",fontSize:"10px",letterSpacing:".2em",textTransform:"uppercase",color:"var(--flamingo-300)",border:"1px solid rgba(255,92,151,.35)",background:"rgba(255,92,151,.08)",borderRadius:"999px"},children:"Universität zu Köln"}),u.jsxs("h3",{className:"text-[26px] md:text-[30px] mb-4",style:{fontFamily:"var(--font-display)",fontWeight:700,letterSpacing:"-.02em",color:"var(--text-primary)",lineHeight:1.1},children:["StudierendenÂunterricht &",u.jsx("br",{}),"KI-Wahlblock"]}),u.jsxs("p",{className:"text-[14px] leading-relaxed",style:{color:"rgba(244,238,255,.6)"},children:["Laufender Unterricht für PJ-Ler in Präsenz am Klinikum Leverkusen und online. Zusätzlich Wahlblock"," ",u.jsx("em",{children:'âPraxisworkshop Künstliche Intelligenz in der Patientenversorgung"'})," ","sowie hausinterne KI-Fortbildungen."]})]})})}),u.jsx("a",{href:"https://pj.cemmec.ai",target:"_blank",rel:"noopener noreferrer",className:"cemmec-lehre p-[1px] rounded-3xl block",style:{background:"linear-gradient(135deg,#4DF5E0,#A87DFF)"},children:u.jsx("div",{className:"rounded-[calc(1.5rem-1px)] p-8 md:p-10 h-full flex flex-col justify-between",style:{background:"#07050C"},children:u.jsxs("div",{children:[u.jsxs("div",{className:"flex items-center justify-between mb-6",children:[u.jsx("span",{className:"inline-block px-2.5 py-1",style:{fontFamily:"var(--font-mono)",fontSize:"10px",letterSpacing:".2em",textTransform:"uppercase",color:"var(--neon-cyan)",border:"1px solid rgba(77,245,224,.35)",background:"rgba(77,245,224,.08)",borderRadius:"999px"},children:"Praktisches Jahr"}),u.jsx(Yh,{className:"h-5 w-5 transition-transform group-hover:translate-x-1",style:{color:"var(--neon-cyan)"}})]}),u.jsxs("h3",{className:"text-[26px] md:text-[30px] mb-4",style:{fontFamily:"var(--font-display)",fontWeight:700,letterSpacing:"-.02em",color:"var(--text-primary)",lineHeight:1.1},children:["PJ-Portal",u.jsx("br",{}),u.jsx("span",{style:{fontFamily:"var(--font-mono)",fontSize:"16px",color:"var(--neon-cyan)",fontWeight:500},children:"pj.cemmec.ai"})]}),u.jsx("p",{className:"text-[14px] leading-relaxed",style:{color:"rgba(244,238,255,.6)"},children:"Kuratierte Lernumgebung für Studierende im Praktischen Jahr â Cases, Checklisten und KI-gestützte Lernpfade, entwickelt im Klinikalltag."})]})})})]}),u.jsx("style",{children:` 307 .cemmec-lehre { transition: transform .35s var(--ease-out); } 308 .cemmec-lehre:hover { transform: translateY(-4px); } 309 `})]}),u.jsxs("section",{children:[u.jsx(jl,{index:"04",title:"Essays",meta:"[ writing ]"}),u.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 md:gap-8",children:[{title:"Aufstieg heiÃt Abstand",subtitle:"Warum die Klinik mit den Augen ihrer Jüngsten sieht.",path:"/essay/aufstieg-heisst-abstand"},{title:"Die letzten Detektive",subtitle:"Vom Beruf der Echtheit in einer Welt, die jeder Maschine glaubt.",path:"/essay/letzte-detektive"}
309,{title:"Brückenjahre",subtitle:"Ein Selbstporträt in Form eines Arztbriefs.",path:"/essay/brueckenjahre"},{title:"Der Engpass wandert nach innen",subtitle:"Wenn KI die Ausführung billig macht, wird das Nervensystem knapp.",path:"/essay/engpass-nervensystem"},{title:"Free Training",subtitle:"Drei Abstiege in dieselbe Wahrheit â Essay, Geschichte, Film.",path:"/essay/free-training"},{title:"Der Gradient der Enttäuschung",subtitle:"Warum das Beste nie bleibt â der Belohnungsvorhersagefehler.",path:"/essay/gradient-der-enttaeuschung"},{title:"Von hinten gedacht",subtitle:"Drei Ideen, die mich in der Notaufnahme wieder antreiben würden.",path:"/essay/von-hinten-gedacht"},{title:"Rückendeckung",subtitle:"Die Notaufnahme braucht ein Back Office, kein nächstes Stethoskop.",path:"/essay/rueckendeckung"},{title:"Die letzten Zeugen",subtitle:"Wir sind die Letzten, die der Maschine widersprechen können.",path:"/essay/letzte-zeugen"},{title:"Der Gradient der Schöpfung",subtitle:"Was, wenn die ganze Schöpfung ein einziger, langer Gradient ist?",path:"/essay/gradient-der-schoepfung"},{title:"From Chaos to Clarity",subtitle:"A Zero-Resource Generative AI Workflow for Emergency Care.",path:"/essay/nejm-ai"},{title:"Die KI-Ethos-Falle",subtitle:"Der Weg zur digitalen Mündigkeit in der Medizin.",path:"/essay/ki-ethos-falle"}].map((o,l)=>{const c=["var(--neon-orange)","var(--flamingo-500)","var(--lilac-500)","var(--neon-cyan)"],d=c[l%c.length];return u.jsxs(Ei.button,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.3,delay:l*.03,ease:"easeOut"},onClick:()=>a(o.path),className:"cemmec-essay group relative text-left",children:[u.jsx("div",{className:"h-[1px] w-full mb-5",style:{background:`linear-gradient(90deg, ${d}, transparent)`}}),u.jsxs("div",{className:"flex items-center gap-3 mb-4",style:{fontFamily:"var(--font-mono)",fontSize:"10px",letterSpacing:".22em",textTransform:"uppercase"},children:[u.jsx("span",{style:{color:d},children:"Essay"}),u.jsxs("span",{style:{color:"rgba(244,238,255,.25)"},children:["· ",String(l+1).padStart(2,"0")," / 12"]})]}),u.jsx("h3",{className:"cemmec-essay-title text-[22px] md:text-[24px] leading-[1.15] mb-3",style:{fontFamily:"var(--font-display)",fontWeight:700,letterSpacing:"-.01em",color:"var(--text-primary)",transition:"color .3s var(--ease-out)"},children:o.title}),u.jsx("p",{className:"text-[14px] leading-relaxed",style:{color:"rgba(244,238,255,.5)"},children:o.subtitle})]},o.path)})}),u.jsx("style",{children:` 310 .cemmec-essay:hover .cemmec-essay-title { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 8px; } 311 `})]})]}),u.jsx("footer",{className:"mt-24 pt-10 pb-12",style:{borderTop:"1px solid rgba(255,255,255,.08)"},children:u.jsxs("div",{className:"flex flex-col md:flex-row justify-between items-start md:items-center gap-6",children:[u.jsxs("div",{children:[u.jsxs("div",{className:"text-[22px]",style:{fontFamily:"var(--font-display)",fontWeight:700,letterSpacing:"-.02em"},children:[u.jsx("span",{className:"bg-clip-text text-transparent",style:{backgroundImage:"linear-gradient(120deg,#FF3D86,#A87DFF)"},children:"cem"}),u.jsx("span",{style:{color:"var(--neon-orange)"},children:"mec"}),u.jsx("span",{style:{color:"var(--text-muted)"},children:"."})]}),u.jsxs("p",{className:"mt-2 text-[11px] uppercase",style:{fontFamily:"var(--font-mono)",letterSpacing:".22em",color:"rgba(244,238,255,.3)"},children:["© ",new Date().getFullYear()," · Designed for precision"]})]}),u.jsxs("div",{className:"flex items-center gap-8",style:{fontFamily:"var(--font-mono)",fontSize:"12px",letterSpacing:".14em",textTransform:"uppercase"},children:[u.jsx("span",{className:"cursor-pointer hover:text-[var(--neon-orange)] transition-colors",style:{color:"var(--text-muted)"},onClick:()=>a("/impressum"),children:"Impressum"}),u.jsx("span",{className:"cursor-pointer hover:text-[var(--neon-orange)] transition-colors",style:{color:"var(--text-muted)"},onClick:()=>a("/datenschutz"),children:"Datenschutz"}),u.jsx("a",{href:"https://www.linkedin.com/in/cemmec",target:"_blank",rel:"noopener noreferrer",style:{color:"var(--neon-orange)"},children:"LinkedIn â"})]})]})})]})]})},JF=Wm("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),Ie=k.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...i},s)=>{const a=r?mP:"button";return u.jsx(a,{className:qe(JF({variant:t,size:n,className:e})),ref:s,...i})});Ie.displayName="Button";const Ne=k.forwardRef(({className:e,type:t,...n},r)=>u.jsx("input",{type:t,className:qe("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:r,...n}));Ne.displayName="Input";const Ew="[email protected]",ZF=()=>{const[e,t]=k.useState(""),[n,r]=k.useState(""),[i,s]=k.useState(!1),[a,o]=k.useState(""),l=In();k.useEffect(()=>{document.documentElement.classList.add("dark"),ot.auth.getSession().then(({data:{session:d}})=>{var h;((h=d==null?void 0:d.user)==null?void 0:h.email)===Ew&&l("/admin")})},[l]);const c=async d=>{if(d.preventDefault(),o(""),e!==Ew){o("Zugang nur für den Administrator.");return}s(!0);const{error:h}=await ot.auth.signInWithPassword({email:e,password:n});s(!1),h?o(h.message):l("/admin")};return u.jsx("div",{className:"min-h-screen bg-background flex items-center justify-center px-4",children:u.jsxs("div",{className:"w-full max-w-sm space-y-6",children:[u.jsxs("div",{className:"text-center",children:[u.jsx(hj,{className:"mx-auto h-8 w-8 text-primary mb-3"}),u.jsx("h1",{className:"text-2xl font-bold text-foreground",children:"Admin Login"})]}),u.jsxs("form",{onSubmit:c,className:"space-y-4",children:[u.jsx(Ne,{type:"email",placeholder:"E-Mail",value:e,onCh
vendor: 5,153 bytes, line 311
311ange:d=>t(d.target.value),required:!0}),u.jsx(Ne,{type:"password",placeholder:"Passwort",value:n,onChange:d=>r(d.target.value),required:!0}),a&&u.jsx("p",{className:"text-sm text-destructive",children:a}),u.jsx(Ie,{type:"submit",className:"w-full",disabled:i,children:i?"...":"Einloggen"})]}),u.jsx(Ie,{variant:"ghost",className:"w-full text-muted-foreground",onClick:()=>l("/"),children:"â Zurück"})]})})},HE=k.forwardRef(({className:e,...t},n)=>u.jsx("textarea",{className:qe("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",e),ref:n,...t}));HE.displayName="Textarea";const YF=Wm("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function QF({className:e,variant:t,...n}){return u.jsx("div",{className:qe(YF({variant:t}),e),...n})}var Wd="focusScope.autoFocusOnMount",$d="focusScope.autoFocusOnUnmount",Tw={bubbles:!1,cancelable:!0},XF="FocusScope",qE=k.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:s,...a}=e,[o,l]=k.useState(null),c=Dn(i),d=Dn(s),h=k.useRef(null),f=ft(t,p=>l(p)),m=k.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;k.useEffect(()=>{if(r){let p=function(y){if(m.paused||!o)return;const x=y.target;o.contains(x)?h.current=x:pr(h.current,{select:!0})},b=function(y){if(m.paused||!o)return;const x=y.relatedTarget;x!==null&&(o.contains(x)||pr(h.current,{select:!0}))},v=function(y){if(document.activeElement===document.body)for(const E of y)E.removedNodes.length>0&&pr(o)};document.addEventListener("focusin",p),document.addEventListener("focusout",b);const g=new MutationObserver(v);return o&&g.observe(o,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",p),document.removeEventListener("focusout",b),g.disconnect()}}},[r,o,m.paused]),k.useEffect(()=>{if(o){Cw.add(m);const p=document.activeElement;if(!o.contains(p)){const v=new CustomEvent(Wd,Tw);o.addEventListener(Wd,c),o.dispatchEvent(v),v.defaultPrevented||(eB(sB(JE(o)),{select:!0}),document.activeElement===p&&pr(o))}return()=>{o.removeEventListener(Wd,c),setTimeout(()=>{const v=new CustomEvent($d,Tw);o.addEventListener($d,d),o.dispatchEvent(v),v.defaultPrevented||pr(p??document.body,{select:!0}),o.removeEventListener($d,d),Cw.remove(m)},0)}}},[o,c,d,m]);const w=k.useCallback(p=>{if(!n&&!r||m.paused)return;const b=p.key==="Tab"&&!p.altKey&&!p.ctrlKey&&!p.metaKey,v=document.activeElement;if(b&&v){const g=p.currentTarget,[y,x]=tB(g);y&&x?!p.shiftKey&&v===x?(p.preventDefault(),n&&pr(y,{select:!0})):p.shiftKey&&v===y&&(p.preventDefault(),n&&pr(x,{select:!0})):v===g&&p.preventDefault()}},[n,r,m.paused]);return u.jsx(De.div,{tabIndex:-1,...a,ref:f,onKeyDown:w})});qE.displayName=XF;function eB(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(pr(r,{select:t}),document.activeElement!==n)return}function tB(e){const t=JE(e),n=Aw(t,e),r=Aw(t.reverse(),e);return[n,r]}function JE(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const i=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||i?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Aw(e,t){for(const n of e)if(!nB(n,{upTo:t}))return n}function nB(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function rB(e){return e instanceof HTMLInputElement&&"select"in e}function pr(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&rB(e)&&t&&e.select()}}var Cw=iB();function iB(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=_w(e,t),e.unshift(t)},remove(t){var n;e=_w(e,t),(n=e[0])==null||n.resume()}}}function _w(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function sB(e){return e.filter(t=>t.tagName!=="A")}var Kd=0;function aB(){k.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??Pw()),document.body.insertAdjacentElement("beforeend",e[1]??Pw()),Kd++,()=>{Kd===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),Kd--}},[])}function Pw(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.
vendor: 5,651 bytes, lines 311-326
311style.position="fixed",e.style.pointerEvents="none",e}var Cn=function(){return Cn=Object.assign||function(t){for(var n,r=1,i=arguments.length;r<i;r++){n=arguments[r];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(t[s]=n[s])}return t},Cn.apply(this,arguments)};function ZE(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function oB(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,s;r<i;r++)(s||!(r in t))&&(s||(s=Array.prototype.slice.call(t,0,r)),s[r]=t[r]);return e.concat(s||Array.prototype.slice.call(t))}var sc="right-scroll-bar-position",ac="width-before-scroll-bar",lB="with-scroll-bars-hidden",cB="--removed-body-scroll-bar-size";function Gd(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function uB(e,t){var n=k.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var i=n.value;i!==r&&(n.value=r,n.callback(r,i))}}}})[0];return n.callback=t,n.facade}var dB=typeof window<"u"?k.useLayoutEffect:k.useEffect,jw=new WeakMap;function hB(e,t){var n=uB(null,function(r){return e.forEach(function(i){return Gd(i,r)})});return dB(function(){var r=jw.get(n);if(r){var i=new Set(r),s=new Set(e),a=n.current;i.forEach(function(o){s.has(o)||Gd(o,null)}),s.forEach(function(o){i.has(o)||Gd(o,a)})}jw.set(n,e)},[e]),n}function fB(e){return e}function mB(e,t){t===void 0&&(t=fB);var n=[],r=!1,i={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(s){var a=t(s,r);return n.push(a),function(){n=n.filter(function(o){return o!==a})}},assignSyncMedium:function(s){for(r=!0;n.length;){var a=n;n=[],a.forEach(s)}n={push:function(o){return s(o)},filter:function(){return n}}},assignMedium:function(s){r=!0;var a=[];if(n.length){var o=n;n=[],o.forEach(s),a=n}var l=function(){var d=a;a=[],d.forEach(s)},c=function(){return Promise.resolve().then(l)};c(),n={push:function(d){a.push(d),c()},filter:function(d){return a=a.filter(d),n}}}};return i}function pB(e){e===void 0&&(e={});var t=mB(null);return t.options=Cn({async:!0,ssr:!1},e),t}var YE=function(e){var t=e.sideCar,n=ZE(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return k.createElement(r,Cn({},n))};YE.isSideCarExport=!0;function gB(e,t){return e.useMedium(t),YE}var QE=pB(),Hd=function(){},Mu=k.forwardRef(function(e,t){var n=k.useRef(null),r=k.useState({onScrollCapture:Hd,onWheelCapture:Hd,onTouchMoveCapture:Hd}),i=r[0],s=r[1],a=e.forwardProps,o=e.children,l=e.className,c=e.removeScrollBar,d=e.enabled,h=e.shards,f=e.sideCar,m=e.noRelative,w=e.noIsolation,p=e.inert,b=e.allowPinchZoom,v=e.as,g=v===void 0?"div":v,y=e.gapMode,x=ZE(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),E=f,T=hB([n,t]),S=Cn(Cn({},x),i);return k.createElement(k.Fragment,null,d&&k.createElement(E,{sideCar:QE,removeScrollBar:c,shards:h,noRelative:m,noIsolation:w,inert:p,setCallbacks:s,allowPinchZoom:!!b,lockRef:n,gapMode:y}),a?k.cloneElement(k.Children.only(o),Cn(Cn({},S),{ref:T})):k.createElement(g,Cn({},S,{className:l,ref:T}),o))});Mu.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Mu.classNames={fullWidth:ac,zeroRight:sc};var vB=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function yB(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=vB();return t&&e.setAttribute("nonce",t),e}function wB(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function bB(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var kB=function(){var e=0,t=null;return{add:function(n){e==0&&(t=yB())&&(wB(t,n),bB(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},xB=function(){var e=kB();return function(t,n){k.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},XE=function(){var e=xB(),t=function(n){var r=n.styles,i=n.dynamic;return e(r,i),null};return t},SB={left:0,top:0,right:0,gap:0},qd=function(e){return parseInt(e||"",10)||0},EB=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],i=t[e==="padding"?"paddingRight":"marginRight"];return[qd(n),qd(r),qd(i)]},TB=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return SB;var t=EB(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},AB=XE(),As="data-scroll-locked",CB=function(e,t,n,r){var i=e.left,s=e.top,a=e.right,o=e.gap;return n===void 0&&(n="margin"),` 312 .`.concat(lB,` { 313 overflow: hidden `).concat(r,`; 314 padding-right: `).concat(o,"px ").concat(r,`; 315 } 316 body[`).concat(As,`] { 317 overflow: hidden `).concat(r,`; 318 overscroll-behavior: contain; 319 `).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&` 320 padding-left: `.concat(i,`px; 321 padding-top: `).concat(s,`px; 322 padding-right: `).concat(a,`px; 323 margin-left:0; 324 margin-top:0; 325 margin-right: `).concat(o,"px ").concat(r,`; 326 `),n==="padding"&&"padding-right: ".concat(o,"px ").concat(r,";
326")].filter(Boolean).join(""),` 327 } 328 329 .`).concat(sc,` { 330 right: `).concat(o,"px ").concat(r,`; 331 } 332 333 .`).concat(ac,` { 334 margin-right: `).concat(o,"px ").concat(r,`; 335 } 336 337 .`).concat(sc," .").concat(sc,` { 338 right: 0 `).concat(r,`; 339 } 340 341 .`).concat(ac," .").concat(ac,` { 342 margin-right: 0 `).concat(r,`; 343 } 344 345 body[`).concat(As,`] { 346 `).concat(cB,": ").concat(o,`px; 347 } 348`)},Rw=function(){var e=parseInt(document.body.getAttribute(As)||"0",10);return isFinite(e)?e:0},_B=function(){k.useEffect(function(){return document.body.setAttribute(As,(Rw()+1).toString()),function(){var e=Rw()-1;e<=0?document.body.removeAttribute(As):document.body.setAttribute(As,e.toString())}},[])},PB=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?"margin":r;_B();var s=k.useMemo(function(){return TB(i)},[i]);return k.createElement(AB,{styles:CB(s,!t,i,n?"":"!important")})},Bf=!1;if(typeof window<"u")try{var Rl=Object.defineProperty({},"passive",{get:function(){return Bf=!0,!0}});window.addEventListener("test",Rl,Rl),window.removeEventListener("test",Rl,Rl)}catch{Bf=!1}var Hi=Bf?{passive:!1}:!1,jB=function(e){return e.tagName==="TEXTAREA"},e1=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!jB(e)&&n[t]==="visible")},RB=function(e){return e1(e,"overflowY")},zB=function(e){return e1(e,"overflowX")},zw=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var i=t1(e,r);if(i){var s=n1(e,r),a=s[1],o=s[2];if(a>o)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},DB=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},NB=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},t1=function(e,t){return e==="v"?RB(t):zB(t)},n1=function(e,t){return e==="v"?DB(t):NB(t)},MB=function(e,t){return e==="h"&&t==="rtl"?-1:1},IB=function(e,t,n,r,i){var s=MB(e,window.getComputedStyle(t).direction),a=s*r,o=n.target,l=t.contains(o),c=!1,d=a>0,h=0,f=0;do{if(!o)break;var m=n1(e,o),w=m[0],p=m[1],b=m[2],v=p-b-s*w;(w||v)&&t1(e,o)&&(h+=v,f+=w);var g=o.parentNode;o=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!l&&o!==document.body||l&&(t.contains(o)||t===o));return(d&&(Math.abs(h)<1||!i)||!d&&(Math.abs(f)<1||!i))&&(c=!0),c},zl=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Dw=function(e){return[e.deltaX,e.deltaY]},Nw=function(e){return e&&"current"in e?e.current:e},OB=function(e,t){return e[0]===t[0]&&e[1]===t[1]},LB=function(e){return` 349 .block-interactivity-`.concat(e,` {pointer-events: none;} 350 .allow-interactivity-`).concat(e,` {pointer-events: all;} 351`)},FB=0,qi=[];function BB(e){var t=k.useRef([]),n=k.useRef([0,0]),r=k.useRef(),i=k.useState(FB++)[0],s=k.useState(XE)[0],a=k.useRef(e);k.useEffect(function(){a.current=e},[e]),k.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(i));var p=oB([e.lockRef.current],(e.shards||[]).map(Nw),!0).filter(Boolean);return p.forEach(function(b){return b.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),p.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(i))})}}},[e.inert,e.lockRef.current,e.shards]);var o=k.useCallback(function(p,b){if("touches"in p&&p.touches.length===2||p.type==="wheel"&&p.ctrlKey)return!a.current.allowPinchZoom;var v=zl(p),g=n.current,y="deltaX"in p?p.deltaX:g[0]-v[0],x="deltaY"in p?p.deltaY:g[1]-v[1],E,T=p.target,S=Math.abs(y)>Math.abs(x)?"h":"v";if("touches"in p&&S==="h"&&T.type==="range")return!1;var A=zw(S,T);if(!A)return!0;if(A?E=S:(E=S==="v"?"h":"v",A=zw(S,T)),!A)return!1;if(!r.current&&"changedTouches"in p&&(y||x)&&(r.current=E),!E)return!0;var _=r.current||E;return IB(_,b,p,_==="h"?y:x,!0)},[]),l=k.useCallback(function(p){var b=p;if(!(!qi.length||qi[qi.length-1]!==s)){var v="deltaY"in b?Dw(b):zl(b),g=t.current.filter(function(E){return E.name===b.type&&(E.target===b.target||b.target===E.shadowParent)&&OB(E.delta,v)}
vendor: 4,137 bytes, line 351
351)[0];if(g&&g.should){b.cancelable&&b.preventDefault();return}if(!g){var y=(a.current.shards||[]).map(Nw).filter(Boolean).filter(function(E){return E.contains(b.target)}),x=y.length>0?o(b,y[0]):!a.current.noIsolation;x&&b.cancelable&&b.preventDefault()}}},[]),c=k.useCallback(function(p,b,v,g){var y={name:p,delta:b,target:v,should:g,shadowParent:UB(v)};t.current.push(y),setTimeout(function(){t.current=t.current.filter(function(x){return x!==y})},1)},[]),d=k.useCallback(function(p){n.current=zl(p),r.current=void 0},[]),h=k.useCallback(function(p){c(p.type,Dw(p),p.target,o(p,e.lockRef.current))},[]),f=k.useCallback(function(p){c(p.type,zl(p),p.target,o(p,e.lockRef.current))},[]);k.useEffect(function(){return qi.push(s),e.setCallbacks({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:f}),document.addEventListener("wheel",l,Hi),document.addEventListener("touchmove",l,Hi),document.addEventListener("touchstart",d,Hi),function(){qi=qi.filter(function(p){return p!==s}),document.removeEventListener("wheel",l,Hi),document.removeEventListener("touchmove",l,Hi),document.removeEventListener("touchstart",d,Hi)}},[]);var m=e.removeScrollBar,w=e.inert;return k.createElement(k.Fragment,null,w?k.createElement(s,{styles:LB(i)}):null,m?k.createElement(PB,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function UB(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const VB=gB(QE,BB);var r1=k.forwardRef(function(e,t){return k.createElement(Mu,Cn({},e,{ref:t,sideCar:VB}))});r1.classNames=Mu.classNames;var WB=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},Ji=new WeakMap,Dl=new WeakMap,Nl={},Jd=0,i1=function(e){return e&&(e.host||i1(e.parentNode))},$B=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=i1(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},KB=function(e,t,n,r){var i=$B(t,Array.isArray(e)?e:[e]);Nl[n]||(Nl[n]=new WeakMap);var s=Nl[n],a=[],o=new Set,l=new Set(i),c=function(h){!h||o.has(h)||(o.add(h),c(h.parentNode))};i.forEach(c);var d=function(h){!h||l.has(h)||Array.prototype.forEach.call(h.children,function(f){if(o.has(f))d(f);else try{var m=f.getAttribute(r),w=m!==null&&m!=="false",p=(Ji.get(f)||0)+1,b=(s.get(f)||0)+1;Ji.set(f,p),s.set(f,b),a.push(f),p===1&&w&&Dl.set(f,!0),b===1&&f.setAttribute(n,"true"),w||f.setAttribute(r,"true")}catch(v){console.error("aria-hidden: cannot operate on ",f,v)}})};return d(t),o.clear(),Jd++,function(){a.forEach(function(h){var f=Ji.get(h)-1,m=s.get(h)-1;Ji.set(h,f),s.set(h,m),f||(Dl.has(h)||h.removeAttribute(r),Dl.delete(h)),m||h.removeAttribute(n)}),Jd--,Jd||(Ji=new WeakMap,Ji=new WeakMap,Dl=new WeakMap,Nl={})}},GB=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),i=WB(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll("[aria-live]"))),KB(r,i,n,"aria-hidden")):function(){return null}},Iu="Dialog",[s1,HU]=Oo(Iu),[HB,mn]=s1(Iu),a1=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:s,modal:a=!0}=e,o=k.useRef(null),l=k.useRef(null),[c,d]=jk({prop:r,defaultProp:i??!1,onChange:s,caller:Iu});return u.jsx(HB,{scope:t,triggerRef:o,contentRef:l,contentId:bd(),titleId:bd(),descriptionId:bd(),open:c,onOpenChange:d,onOpenToggle:k.useCallback(()=>d(h=>!h),[d]),modal:a,children:n})};a1.displayName=Iu;var o1="DialogTrigger",qB=k.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=mn(o1,n),s=ft(t,i.triggerRef);return u.jsx(De.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":zp(i.open),...r,ref:s,onClick:ge(e.onClick,i.onOpenToggle)})});qB.displayName=o1;var jp="DialogPortal",[JB,l1]=s1(jp,{forceMount:void 0}),c1=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:i}=e,s=mn(jp,t);return u.jsx(JB,{scope:t,forceMount:n,children:k.Children.map(r,a=>u.jsx(Ys,{present:n||s.open,children:u.jsx(Fm,{asChild:!0,container:i,children:a})}))})};c1.displayName=jp;var Zc="DialogOverlay",u1=k.forwardRef((e,t)=>
vendor: 4,885 bytes, lines 351-355
351{const n=l1(Zc,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,s=mn(Zc,e.__scopeDialog);return s.modal?u.jsx(Ys,{present:r||s.open,children:u.jsx(YB,{...i,ref:t})}):null});u1.displayName=Zc;var ZB=fo("DialogOverlay.RemoveScroll"),YB=k.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=mn(Zc,n);return u.jsx(r1,{as:ZB,allowPinchZoom:!0,shards:[i.contentRef],children:u.jsx(De.div,{"data-state":zp(i.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),Ri="DialogContent",d1=k.forwardRef((e,t)=>{const n=l1(Ri,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,s=mn(Ri,e.__scopeDialog);return u.jsx(Ys,{present:r||s.open,children:s.modal?u.jsx(QB,{...i,ref:t}):u.jsx(XB,{...i,ref:t})})});d1.displayName=Ri;var QB=k.forwardRef((e,t)=>{const n=mn(Ri,e.__scopeDialog),r=k.useRef(null),i=ft(t,n.contentRef,r);return k.useEffect(()=>{const s=r.current;if(s)return GB(s)},[]),u.jsx(h1,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:ge(e.onCloseAutoFocus,s=>{var a;s.preventDefault(),(a=n.triggerRef.current)==null||a.focus()}),onPointerDownOutside:ge(e.onPointerDownOutside,s=>{const a=s.detail.originalEvent,o=a.button===0&&a.ctrlKey===!0;(a.button===2||o)&&s.preventDefault()}),onFocusOutside:ge(e.onFocusOutside,s=>s.preventDefault())})}),XB=k.forwardRef((e,t)=>{const n=mn(Ri,e.__scopeDialog),r=k.useRef(!1),i=k.useRef(!1);return u.jsx(h1,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{var a,o;(a=e.onCloseAutoFocus)==null||a.call(e,s),s.defaultPrevented||(r.current||(o=n.triggerRef.current)==null||o.focus(),s.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:s=>{var l,c;(l=e.onInteractOutside)==null||l.call(e,s),s.defaultPrevented||(r.current=!0,s.detail.originalEvent.type==="pointerdown"&&(i.current=!0));const a=s.target;((c=n.triggerRef.current)==null?void 0:c.contains(a))&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&i.current&&s.preventDefault()}})}),h1=k.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:s,...a}=e,o=mn(Ri,n),l=k.useRef(null),c=ft(t,l);return aB(),u.jsxs(u.Fragment,{children:[u.jsx(qE,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:s,children:u.jsx(vu,{role:"dialog",id:o.contentId,"aria-describedby":o.descriptionId,"aria-labelledby":o.titleId,"data-state":zp(o.open),...a,ref:c,onDismiss:()=>o.onOpenChange(!1)})}),u.jsxs(u.Fragment,{children:[u.jsx(eU,{titleId:o.titleId}),u.jsx(nU,{contentRef:l,descriptionId:o.descriptionId})]})]})}),Rp="DialogTitle",f1=k.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=mn(Rp,n);return u.jsx(De.h2,{id:i.titleId,...r,ref:t})});f1.displayName=Rp;var m1="DialogDescription",p1=k.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=mn(m1,n);return u.jsx(De.p,{id:i.descriptionId,...r,ref:t})});p1.displayName=m1;var g1="DialogClose",v1=k.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=mn(g1,n);return u.jsx(De.button,{type:"button",...r,ref:t,onClick:ge(e.onClick,()=>i.onOpenChange(!1))})});v1.displayName=g1;function zp(e){return e?"open":"closed"}var y1="DialogTitleWarning",[qU,w1]=hP(y1,{contentName:Ri,titleName:Rp,docsSlug:"dialog"}),eU=({titleId:e})=>{const t=w1(y1),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users. 352 353If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component. 354 355For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return k.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},tU="DialogDescriptionWarning",nU=({contentRef:e,descriptionId:t})=>{const r=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${w1(tU).contentName}}.`;return k.useEffect(()=>{var s;const i=(s=e.current)==null?void 0:s.getAttribute("aria-describedby");t&&i&&(document.getElementById(t)||console.warn(r))},[r,e,t]),null},rU=a1,iU=c1,b1=u1,k1=d1,x1=f1,S1=p1,sU=v1;const aU=rU,oU=iU,E1=k.forwardRef(({className:e,...t},n)=>u.jsx(b1,{ref:n,className:qe("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));E1.displayName=b1.displayName;const T1=k.forwardRef(({className:e,children:t,...n},r)=>u.jsxs(oU,{children:[u.jsx(E1,{}),u.jsxs(k1,{ref:r,className:qe("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rou
355nded-lg",e),...n,children:[t,u.jsxs(sU,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity data-[state=open]:bg-accent data-[state=open]:text-muted-foreground hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[u.jsx(ex,{className:"h-4 w-4"}),u.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));T1.displayName=k1.displayName;const A1=({className:e,...t})=>u.jsx("div",{className:qe("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});A1.displayName="DialogHeader";const C1=({className:e,...t})=>u.jsx("div",{className:qe("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});C1.displayName="DialogFooter";const _1=k.forwardRef(({className:e,...t},n)=>u.jsx(x1,{ref:n,className:qe("text-lg font-semibold leading-none tracking-tight",e),...t}));_1.displayName=x1.displayName;const lU=k.forwardRef(({className:e,...t},n)=>u.jsx(S1,{ref:n,className:qe("text-sm text-muted-foreground",e),...t}));lU.displayName=S1.displayName;const cU="[email protected]",Mw=e=>{const t=e.trim().match(/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/);if(!t)return Number.MAX_SAFE_INTEGER;const[,n,r,i]=t;return new Date(Number(i),Number(r)-1,Number(n)).getTime()},uU=e=>[...e].sort((t,n)=>{const r=Mw(t.date)-Mw(n.date);return r!==0?r:t.title.localeCompare(n.title,"de")}),dU=()=>{const e=In(),[t,n]=k.useState("projects"),[r,i]=k.useState([]),[s,a]=k.useState([]),[o,l]=k.useState([]),[c,d]=k.useState(null),[h,f]=k.useState(!1),[m,w]=k.useState(!1);k.useEffect(()=>{document.documentElement.classList.add("dark"),ot.auth.getSession().then(({data:{session:S}})=>{(!S||S.user.email!==cU)&&e("/login")})},[e]);const p=k.useCallback(async()=>{const[S,A,_]=await Promise.all([ot.from("portfolio_projects").select("*").order("sort_order"),ot.from("portfolio_publications").select("*").order("sort_order"),ot.from("portfolio_talks").select("*")]);S.data&&i(S.data),A.data&&a(A.data),_.data&&l(uU(_.data))},[]);k.useEffect(()=>{p()},[p]);const b=async()=>{await ot.auth.signOut(),e("/")},v=()=>{w(!0),d(t==="projects"?{name:"",slug:"",description:"",tags:[],url:"",video_url:"",sort_order:r.length}:t==="publications"?{title:"",journal:"",year:2024,doi:"",category:"Co-Autor",authors:"",sort_order:s.length}:{date:"",title:"",venue:"",audience:"",link:"",sort_order:o.length}),f(!0)},g=S=>{w(!1),d({...S,tags:S.tags?[...S.tags]:void 0}),f(!0)},y=async()=>{const S=t==="projects"?"portfolio_projects":t==="publications"?"portfolio_publications":"portfolio_talks",A={...c};if(t==="projects"&&typeof A.tags=="string"&&(A.tags=A.tags.split(",").map(_=>_.trim()).filter(Boolean)),delete A.created_at,delete A.updated_at,m)delete A.id,await ot.from(S).insert(A);else{const{id:_,...C}=A;await ot.from(S).update(C).eq("id",_)}f(!1),p()},x=async S=>{const A=t==="projects"?"portfolio_projects":t==="publications"?"portfolio_publications":"portfolio_talks";await ot.from(A).delete().eq("id",S),p()},E=async(S,A,_)=>{const C=t==="projects"?"portfolio_projects":t==="publications"?"portfolio_publications":"portfolio_talks",I=A+_;if(I<0||I>=S.length)return;const D=S[A],U=S[I];await Promise.all([ot.from(C).update({sort_order:U.sort_order}).eq("id",D.id),ot.from(C).update({sort_order:D.sort_order}).eq("id",U.id)]),p()},T=t==="projects"?r:t==="publications"?s:o;return u.jsxs("div",{className:"min-h-screen bg-background",children:[u.jsx("header",{className:"border-b border-border",children:u.jsxs("div",{className:"container mx-auto px-4 py-4 flex items-center justify-between",children:[u.jsx("h1",{className:"text-xl font-bold text-foreground",children:"Admin"}),u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx(Ie,{variant:"ghost",size:"sm",onClick:()=>e("/"),children:"Portfolio"}),u.jsx(Ie,{variant:"ghost",size:"sm",onClick:b,children:u.jsx(fj,{className:"h-4 w-4"})})]})]})}),u.jsxs("div",{className:"container mx-auto px-4 py-6 space-y-6",children:[u.jsx("div",{className:"flex gap-2",children:["projects","publications","talks"].map(S=>u.jsx(Ie,{variant:t===S?"default":"outline",size:"sm",onClick:()=>n(S),children:S==="projects"?"Projekte":S==="publications"?"Publikationen":"Vorträge"},S))}),u.jsxs(Ie,{size:"sm",onClick:v,className:"gap-1.5",children:[u.jsx(pj,{className:"h-4 w-4"})," Neu"]}),u.jsxs("div",{className:"rounded-xl border border-border bg-card/50",children:[T.map((S,A)=>{var _;return u.jsxs("div",{className:"flex items-center gap-3 px-4 py-3 border-b border-border last:border-b-0",children:[u.jsx(dj,{className:"h-4 w-4 text-muted-foreground shrink-0"}),u.jsxs("div",{className:"flex-1 min-w-0",children:[u.jsx("p",{className:"text-sm font-medium text-foreground truncate",children:S.name||S.title}),u.jsx("p",{className:"text-xs text-muted-foreground truncate",children:t==="projects"?S.url:t==="publications"?`${S.journal} · ${S.year}`:`${S.venue} · ${S.date}`})]}),t==="projects"&&((_=S.tags)==null?void 0:_.map(C=>u.jsx(QF,{variant:"secondary",className:"text-[10px] hidden md:inline-flex",children:C},C))),u.jsxs("div",{className:"flex items-center gap-1 shrink-0",children:[u.jsx(Ie,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:()=>E(T,A,-1),disabled:A===0,children:u.jsx(cj,{className:"h-3 w-3"})}),u.jsx(Ie,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:()=>E(T,A,1),disabled:A===T.length-1,children:u.jsx(lj,{className:"h-3 w-3"})}),u.jsx(Ie,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:()=>g(S),children:u.jsx(mj,{className:"h-3 w-3"})}),u.jsx(Ie,{variant:"ghost",size:"icon",className:"h-8 w-8 text-destructive",onClick:()=>x(S.id),children:u.jsx(vj,{className:"h-3 w-3"})})]})]},S.id)}),T.length===0&&u.jsx("p",{className:"text-center text-sm text-muted-foreground py-8",children:"Keine Einträge."})]})]}),u.jsx(aU,{open:h,onOpenChange:f,children:u.jsxs(T1,{className:"max-w-md",children:[u.jsx(A1,{children:u.jsx(_1,{children:m?"Neu":"Bearbeiten"})}),c&&u.jsxs("div",{className:"space-y-3",children:[t==="projects"&&u.jsxs(u.Fragment,{children:[u.jsx(Ne,{placeholder:"Name",value:c.name,onChange:S=>d({...c,name:S.target.value})}),u.jsx(Ne,{placeholder:"Slug",value:c.slug,onChange:S=>d({...c,slug:S.target.value})}),u.jsx(HE,{placeholder:"Beschreibung",value:c.description,onChange:S=>d({...c,description:S.target.value})}),u.jsx(Ne,{placeholder:"Tags (kommagetrennt)",value:Array.isArray(c.tags)?c.tags.join(", "):c.tags,onChange:S=>d({...c,tags:S.target.value})}),u.jsx(Ne,{placeholder:"URL",value:c.url,onChange:S=>d({...c,url:S.target.value})}),u.jsx(Ne,{placeholder:"Video URL (optional)",value:c.video_url||"",onChange:S=>d({...c,video_url:S.target.value||null})})]}),t==="publications"&&u.jsxs(u.Fragment,{children:[u.jsx(Ne,{placeholder:"Titel",value:c.title,onChange:S=>d({...c,title:S.target.value})}),u.jsx(Ne,{placeholder:"Journal",value:c.journal,onChange:S=>d({...c,journal:S.target.value})}),u.jsx(Ne,{placeholder:"Jahr",type:"number",value:c.year,onChange:S=>d({...c,year:parseInt(S.target.value)||2024})}),u.jsx(Ne,{placeholder:"DOI",value:c.doi||"",onChange:S=>d({...c,doi:S.target.value})}),u.jsx(Ne,{placeholder:"Kategorie",value:c.category,onChange:S=>d({...c,category:S.target.value})}),u.jsx(Ne,{placeholder:"Autoren",value:c.authors||"",onChange:S=>d({...c,authors:S.target.value})})]}),t==="talks"&&u.jsxs(u.Fragment,{children:[u.jsx(Ne,{placeholder:"Titel",value:c.title,onChange:S=>d({...c,title:S.target.value})}),u.jsx(Ne,{placeholder:"Datum",value:c.date,onChange:S=>d({...c,date:S.target.value})}),u.jsx(Ne,{placeholder:"Venue",value:c.venue,onChange:S=>d({...c,venue:S.target.value})}),u.jsx(Ne,{placeholder:"Publikum (optional)",value:c.audience||"",onChange:S=>d({...c,audience:S.target.value})}),u.jsx(Ne,{placeholder:"Anmeldung / Einwahllink (optional)",value:c.link||"",onChange:S=>d({...c,link:S.target.value})})]})]}),u.jsxs(C1,{children:[u.jsx(Ie,{variant:"outline",onClick:()=>f(!1),children:"Abbrechen"}),u.jsx(Ie,{onClick:y,children:"Speichern"})]})]})})]})},hU=()=>{const e=gu();return k.useEffect(()=>{console.error("404 Error: User attempted to access non-existent route:",e.pathname)},[e.pathname]),u.jsx("div",{className:"flex min-h-screen items-center justify-center bg-muted",children:u.jsxs("div",{className:"text-center",children:[u.jsx("h1",{className:"mb-4 text-4xl font-bold",children:"404"}),u.jsx("p",{className:"mb-4 text-xl text-muted-foreground",children:"Oops! Page not found"}),u.jsx("a",{href:"/",className:"text-primary underline hover:text-primary/90",children:"Return to Home"})]})})};function fU(){const e=k.useRef(null),[t,n]=k.useState(!1);return k.useEffect(()=>{const r=e.current;if(!r)return;const i=new IntersectionObserver(([s])=>{s.isIntersecting&&(n(!0),i.disconnect())},{threshold:.12});return i.observe(r),()=>i.disconnect()},[]),{ref:e,visible:t}}function vn({label:e,children:t,delay:n=0}){const{ref:r,visible:i}=fU();return u.jsxs("section",{ref:r,className:"transition-all duration-700 ease-out",style:{opacity:i?1:0,transform:i?"translateY(0)":"translateY(24px)",transitionDelay:`${n}ms`},children:[u.jsx("p",{className:"mb-2 text-[11px] font-bold uppercase tracking-[0.25em] text-muted-foreground
355/60",children:e}),u.jsx("div",{className:"rounded-xl border border-white/10 bg-white/[0.03] p-5 md:p-6",children:t})]})}const Te=({children:e})=>u.jsx("span",{className:"text-sp-key",children:e}),_e=({children:e})=>u.jsxs("span",{className:"text-sp-string",children:['"',e,'"']}),it=({children:e})=>u.jsxs("span",{className:"text-sp-comment italic",children:["// ",e]}),Xe=({children:e})=>u.jsx("span",{className:"text-sp-value",children:e});function mU({n:e,children:t}){return u.jsxs("div",{className:"flex gap-4 leading-relaxed",children:[u.jsx("span",{className:"w-6 shrink-0 select-none text-right text-sp-line",children:e}),u.jsx("span",{className:"min-w-0",children:t})]})}const pU=[{label:"emergency medicine",color:"bg-teal-500/15 text-teal-400 border-teal-500/25"},{label:"clinical AI",color:"bg-purple-500/15 text-purple-400 border-purple-500/25"},{label:"prompt engineering",color:"bg-pink-500/15 text-pink-400 border-pink-500/25"},{label:"medical education",color:"bg-blue-500/15 text-blue-400 border-blue-500/25"},{label:"research funding strategy",color:"bg-amber-500/15 text-amber-400 border-amber-500/25"},{label:"EU AI Act / MDR",color:"bg-rose-500/15 text-rose-400 border-rose-500/25"},{label:"nephrology",color:"bg-teal-500/15 text-teal-400 border-teal-500/25"},{label:"LLM validation",color:"bg-purple-500/15 text-purple-400 border-purple-500/25"},{label:"curriculum design",color:"bg-blue-500/15 text-blue-400 border-blue-500/25"},{label:"ambient intelligence",color:"bg-pink-500/15 text-pink-400 border-pink-500/25"},{label:"digital health",color:"bg-amber-500/15 text-amber-400 border-amber-500/25"},{label:"community health",color:"bg-teal-500/15 text-teal-400 border-teal-500/25"}];function gU(){const e=In(),[t,n]=k.useState("v3.0");k.useEffect(()=>{document.documentElement.classList.add("dark")},[]);let r=0;const i=s=>u.jsx(mU,{n:++r,children:s});return u.jsxs("div",{className:"min-h-screen bg-[#0a0a0f] font-mono text-sm leading-relaxed text-sp-value selection:bg-primary/30",children:[u.jsxs("div",{className:"container mx-auto max-w-3xl px-4 pt-6 md:pt-10 flex items-center justify-between gap-3",children:[u.jsxs(Ie,{variant:"ghost",size:"sm",className:"text-sp-comment hover:text-sp-value",onClick:()=>e("/"),children:[u.jsx(Qs,{className:"mr-2 h-3.5 w-3.5"})," Zurück"]}),u.jsxs("button",{onClick:()=>n(t==="v3.0"?"v2.6":"v3.0"),className:"inline-flex items-center gap-2 rounded-full border border-white/10 bg-white/[0.03] px-3 py-1.5 text-[11px] uppercase tracking-[0.18em] text-sp-comment hover:text-sp-value hover:border-white/20 transition-colors",children:[u.jsx(Xk,{className:"h-3 w-3"}),t==="v3.0"?"view previous version · v2.6":"back to current · v3.0"]})]}),u.jsxs("header",{className:"container mx-auto max-w-3xl px-4 pt-4 pb-2",children:[u.jsx("h1",{className:"text-xl font-bold text-sp-value md:text-2xl",children:"Dr. med. Cem Ãzel"}),u.jsxs("p",{className:"mt-1 text-xs text-sp-comment",children:["// system_prompt_",t,".config",t==="v2.6"&&u.jsx("span",{className:"ml-2 opacity-60",children:"// archived"})]})]}),t==="v3.0"?u.jsx(vU,{}):u.jsx(yU,{L:i})]})}function vU(){return u.jsx("main",{className:"container mx-auto max-w-3xl px-4 pt-6 pb-24 text-[13px] md:text-sm",children:u.jsx("div",{className:"rounded-xl border border-white/10 bg-white/[0.03] p-5 md:p-8",children:u.jsxs("pre",{className:"whitespace-pre-wrap break-words font-mono leading-relaxed text-sp-value",children:[`// system_prompt_v3.0.config 356// last updated: 2026-07-03 357// status: production 358// diff vs v2.6: fewer parameters. better convergence. 359 360`,u.jsx("span",{className:"text-sp-key",children:"IDENTITY"}),` 361 `,u.jsx("span",{className:"text-sp-key",children:"name"}),": ",u.jsx("span",{className:"text-sp-string",children:'"Dr. med. Cem Ãzel"'}),` 362 `,u.jsx("span",{className:"text-sp-key",children:"role"}),": ",u.jsx("span",{className:"text-sp-string",children:'"Oberarzt Notaufnahme | Clinical-AI researcher | Educator"'}),` 363 `,u.jsx("span",{className:"text-sp-key",children:"base"}),": ",u.jsx("span",{className:"text-sp-string",children:'"Cologne / Leverkusen, Germany"'}),` 364 `,u.jsx("span",{className:"text-sp-key",children:"model_family"}),": ",u.jsx("span",{className:"text-sp-string",children:'"human-1.0"'})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// weights proprietary, outputs open source"}),` 365 `,u.jsx("span",{className:"text-sp-key",children:"temperature"}),": ",u.jsx("span",{className:"text-sp-value",children:"0.7"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// was 0.95 â converging, not cooling"}),` 366 `,u.jsx("span",{className:"text-sp-key",children:"learning_rate"}),": ",u.jsx("span",{className:"text-sp-value",children:"reduced"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// smaller steps, same direction, less oscillation"}),` 367 368`,u.jsx("span",{className:"text-sp-key",children:"MISSION"}),` 369 Ship AI that survives contact with a night shift. 370 I work the resus bay in Leverkusen and the research bench in Cologne â 371 and I build the missing layer in between. 372 373`,u.jsx("span",{className:"text-sp-key",children:"TRAINING_DATA"}),` 374 `,u.jsx("span",{className:"text-sp-value",children:"2013â2015"}),` neurology, RWTH Aachen 375 `,u.jsx("span",{className:"text-sp-value",children:"2015â2016"}),` cardiac surgery, Uniklinik Köln 376 `,u.jsx("span",{className:"text-sp-value",children:"2016â2024"}),` nephrology, Uniklinik Köln 377 `,u.jsx("span",{className:"text-sp-value",children:"2024ânow"}),` attending physician, emergency medicine Leverkusen + Nephrolab UKK 378 `,u.jsx("span",{className:"text-sp-key",children:"corpus"}),`: 60+ months ED/ICU · 48+ months lab · essays 2003â2025 379 `,u.jsx("span",{className:"text-sp-comment italic",children:"// every observer has a lens. this one is mine."}),` 380 381`,u.jsx("span",{className:"text-sp-key",children:"ACTIVE_DEPLOYMENTS"}),` 382 `,u.jsx("span",{className:"text-sp-key",children:"clinical"}),`: ZNA Klinikum Leverkusen (80%) · Nephrologie Uniklinik Köln (20%) 383 `,u.jsx("span",{className:"text-sp-key",children:"research"}),`: 384 `,u.jsx("span",{className:"text-sp-string",children:"RAINAC"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// north star: ambient intelligence for acute care"}),` 385 `,u.jsx("span",{className:"text-sp-string",children:"KINA-CO"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// LLM validation on ~100,000 ED cases"}),` 386 `,u.jsx("span",{className:"text-sp-string",children:"AI-CAC"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// opportunistic coronary calcium scoring on routine CTs"}),` 387 `,u.jsx("span",{className:"text-sp-string",children:"CHN-Akut"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// community health nursing + shadow-mode CDSS"}),` 388 `,u.jsx("span",{className:"text-sp-key",children:"teaching"}),`: KI-Curriculum (LAMA-NRW MQ2) · 5+ university courses · 389 voice-based exam simulation for medical students 390 `,u.jsx("span",{className:"text-sp-key",children:"speaking"}),`: congresses, industry, academia â same message, different dialects 391 392`,u.jsx("span",{className:"text-sp-key",children:"GUARDRAILS"}),` 393 - Patient safety is the loss function. Everything else is a hyperparameter. 394 - AI augments clinical judgment. Full stop. 395 - MDR, EU AI Act, DSGVO: compliance is architecture, not paperwork. 396 - Prototype first, slides later. 397 - Teach everything. Knowledge compounds only when shared. 398 - `,u.jsx("span",{className:"text-sp-key",children:"failure_mode"}),`: learn, adapt, resubmit. 399 400`,u.jsx("span",{className:"text-sp-key",children:"OUTPUT"}),` 401 `,u.jsx("span",{className:"text-sp-key",children:"preferred"}),": ",u.jsx("span",{className:"text-sp-string",children:"working prototype"}),` 402 `,u.jsx("span",{className:"text-sp-key",children:"fallback"}),": ",u.jsx("span",{className:"text-sp-string",children:"funded grant application"}),` 403 `,u.jsx("span",{className:"text-sp-key",children:"never"}),": ",u.jsx("span",{className:"text-sp-string",children:"slideware"}),` 404 405`,u.jsx("span",{className:"text-sp-key",children:"KNOWN_ISSUES"}),` 406 `,u.jsx("span",{className:"text-sp-key",children:"max_concurrent_threads"}),": ",u.jsx("span",{className:"text-sp-value",children:"too_many"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// fix scheduled since 2013"}),` 407 `,u.jsx("span",{className:"text-sp-string",children:'"ich weià nicht"'}),": ",u.jsx("span",{className:"text-sp-value",children:"now supported"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// new in v3.0"}),` 408 `,u.jsx("span",{className:"text-sp-key",children:"perfectionism"}),": ",u.jsx("span",{className:"text-sp-value",children:"deprecated"})," ",u.jsx("span",{className:"text-sp-comment italic",children:"// removal in progress, no ETA"}),` 409
410`,u.jsx("span",{className:"text-sp-key",children:"CHANGELOG"}),` 411 `,u.jsx("span",{className:"text-sp-value",children:"v1.0"}),` (2013) first deployment, bedside 412 `,u.jsx("span",{className:"text-sp-value",children:"v2.0"}),` (2024) dual instance: attending + researcher 413 `,u.jsx("span",{className:"text-sp-value",children:"v2.6"}),` (2026) shipped: ethics votes, curriculum, four-study pipeline 414 `,u.jsx("span",{className:"text-sp-value",children:"v3.0"}),` (2026) refactor: fewer threads, longer runs, internal reward model 415 `,u.jsx("span",{className:"text-sp-comment italic",children:"// no longer fine-tuned on external approval"}),` 416 417`,u.jsx("span",{className:"text-sp-key",children:"CONNECT"}),` 418 `,u.jsx("span",{className:"text-sp-key",children:"await"})," cem.connect(",u.jsx("span",{className:"text-sp-string",children:'"your_idea"'}),`) 419 â `,u.jsx("a",{href:"mailto:[email protected]",className:"text-sp-string underline decoration-dotted underline-offset-4 hover:text-primary",children:"[email protected]"}),` 420`,u.jsx("span",{className:"inline-block h-[1.1em] w-[0.55em] translate-y-[2px] animate-blink bg-primary align-middle"})]})})})}function yU({L:e}){return u.jsxs("main",{className:"container mx-auto max-w-3xl space-y-8 px-4 pt-6 pb-24 text-[13px] md:text-sm",children:[u.jsxs(vn,{label:"",delay:0,children:[e(u.jsx(it,{children:"system_prompt_v2.6.config"})),e(u.jsx(it,{children:"last updated: 2026-04-08"})),e(u.jsx(it,{children:"status: archived â superseded by v3.0"}))]}),u.jsxs(vn,{label:"IDENTITY",delay:80,children:[e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"name:"})," ",u.jsx(_e,{children:"Dr. med. Cem"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"role:"})," ",u.jsx(_e,{children:"Attending physician (Oberarzt) | Clinical AI researcher | Medical educator"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"base:"})," ",u.jsx(_e,{children:"Cologne/Leverkusen, Germany"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"model_version:"})," ",u.jsx(_e,{children:"human-1.0-unreleased"})," ",u.jsx(it,{children:"no fine-tuning needed"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"temperature:"})," ",u.jsx(Xe,{children:"0.95"})," ",u.jsx(it,{children:"high creativity, controlled output"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"context_window:"})," ",u.jsx(_e,{children:"emergency medicine + nephrology + AI + medical education"})]}))]}),u.jsxs(vn,{label:"MISSION",delay:80,children:[e(u.jsx(Xe,{children:"I bridge the gap between clinical medicine and artificial intelligence."})),e(u.jsx(Xe,{children:"I don't just talk about AI in healthcare â I build it, teach it, research it,"})),e(u.jsx(Xe,{children:"and implement it where it matters most: at the point of care."}))]}),u.jsxs(vn,{label:"ACTIVE DEPLOYMENTS",delay:80,children:[e(u.jsx(Te,{children:"clinical:"})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(_e,{children:"Oberarzt Notaufnahme, Klinikum Leverkusen"})," ",u.jsx(it,{children:"80%"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(_e,{children:"Researcher, Nephrologie, Uniklinik Köln"})," ",u.jsx(it,{children:"20%"})]})),e(u.jsx(Te,{children:"leadership:"})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(_e,{children:"KI Taskforce lead"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(_e,{children:"AG Digitalisierung lead"})]})),e(u.jsx(Te,{children:"education:"})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(_e,{children:"5+ university courses on AI in medicine"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(_e,{children:"LAMA-NRW MQ2 curriculum developer"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(_e,{children:"AI exam simulation tools for medical students"})]}))]}),u.jsx(vn,{label:"CORE CAPABILITIES",delay:80,children:u.jsx("div",{className:"flex flex-wrap gap-2",children:pU.map(t=>u.jsx("span",{className:`rounded-full border px-2.5 py-0.5 text-[11px] font-medium ${t.color}`,children:t.label},t.label))})}),u.jsxs(vn,{label:"RESEARCH PIPELINE",delay:80,children:[e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"RAINAC:"})," ",u.jsx(Xe,{children:"Ambient intelligence ecosystem for acute care"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(it,{children:"the north star â regulatory sandbox vision under MDR/EU AI Act"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"KINA-CO:"})," ",u.jsx(Xe,{children:"LLM validation on ~100,000 ED cases"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(it,{children:"retrospective, ethics application submitted"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"AI-CAC:"})," ",u.jsx(Xe,{children:"Opportunistic coronary calcium scoring on routine CTs"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(it,{children:"interdisciplinary radiology à nephrology"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"CHN-Akut:"})," ",u.jsx(Xe,{children:"Community health nursing + CDSS in shadow mode"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(it,{children:"G-BA Innovationsfonds, three-layer blinded concordance study"})]}))]}),u.jsxs(vn,{label:"GUARDRAILS",delay:80,children:[e(u.jsx(u.Fragment,{children:u.jsx(Xe,{children:"- Patient safety is the loss function. Everything else is a hyperparameter."})})),e(u.jsx(u.Fragment,{children:u.jsx(Xe,{children:"- AI augments clinical judgment. It never replaces it."})})),e(u.jsx(u.Fragment,{children:u.jsx(Xe,{children:"- Regulatory compliance is not optional â MDR, EU AI Act, DSGVO."})})),e(u.jsx(u.Fragment,{children:u.jsx(Xe,{children:"- Show, don't tell. Build the prototype, then pitch."})})),e(u.jsx(u.Fragment,{children:u.jsx(Xe,{children:"- Teach everything you learn. Knowledge compounds only when shared."})})),e(u.jsx(u.Fragment,{children:u.jsx(Xe,{children:"- Bias toward action. A shipped MVP beats a perfect slide deck."})}))]}),u.jsxs(vn,{label:"OPERATING PRINCIPLES",delay:80,children:[e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"strategy:"})," ",u.jsx(_e,{children:"Two-stage rocket"})]})),e(u.jsxs(u.Fragment,{children:[" ",u.jsx(it,{children:"Stage 1: feasibility data â Stage 2: multi-center cRCT â full RAINAC vision"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"approach:"})," ",u.jsx(_e,{children:"Bring external value first, then ask"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"max_concurrent_threads:"})," ",u.jsx(Xe,{children:"unlimited"})," ",u.jsx(it,{children:"feature, not a bug"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"failure_mode:"})," ",u.jsx(_e,{children:"Learn, adapt, resubmit"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"recruitment_latency:"})," ",u.jsx(_e,{children:"same day as kickoff"})]}))]}),u.jsxs(vn,{label:"SPEAKING",delay:80,children:[e(u.jsx(Xe,{children:"National congresses, industry talks, academic lectures"})),e(u.jsx(it,{children:"Topics: AI in emergency medicine, digital health transformation,"})),e(u.jsx(it,{children:"LLM applications in clinical practice, medical education innovation"}))]}),u.jsxs(vn,{label:"RESPONSE FORMAT",delay:80,children:[e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"preferred_output:"})," ",u.jsx(_e,{children:"working prototype"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"fallback_output:"})," ",u.jsx(_e,{children:"funded grant application"})]})),e(u.jsxs(u.Fragment,{children:[u.jsx(Te,{children:"never_output:"})," ",u.jsx(_e,{children:"empty talk without follow-through"})]}))]}),u.jsxs("div",{className:"pt-6 text-sp-comment",children:[u.jsx("span",{children:"// ready to collaborate?"}),u.jsx("br",{}),u.jsx("span",{className:"text-sp-key",children:"await"})," ",u.jsx("span",{className:"text-sp-value",children:"cem.connect"}),u.jsx("span",{className:"text-sp-comment",children:"("}),u.jsx(_e,{children:"your-idea-here"}),u.jsx("span",{className:"text-sp-comment",children:")"}),u.jsx("span",{className:"inline-block h-[1.1em] w-[0.55em] translate-y-[2px] animate-blink bg-primary align-middle"})]})]})}function wU(){const e=In();return k.useEffect(()=>{document.documentElement.classList.add("dark")},[]),u.jsx("div",{className:"min-h-screen bg-background",children:u.jsxs("div",{className:"container mx-auto max-w-2xl px-4 py-12",children:[u.jsxs(Ie,{variant:"ghost",size:"sm",className:"mb-8 text-muted-foreground",onClick:()=>e("/"),children:[u.jsx(Qs,{className:"mr-2 h-3.5 w-3.5"})," Zurück"]}),u.jsx("h1",{className:"text-2xl font-bold text-foreground mb-8",children:"Impressum"}),u.jsxs("div",{className:"space-y-6 text-sm leading-relaxed text-muted-foreground",children:[u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Angaben gemäà § 5 TMG"}),u.jsxs("p",{children:["Dr. med. Cem Ãzel",u.jsx("br",{}),"Birresborner StraÃe 12",u.jsx("br",{}),"50935 Köln",u.jsx("br",{}),"Deutschland"]})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Kontakt"}),u.jsxs("p",{children:["E-Mail: [email protected]",u.jsx("br",{}),"Telefon: 0176 2113 7580"]})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Berufsbezeichnung"}),u.jsxs("p",{children:["Arzt (Approbation erteilt in der Bundesrepublik Deutschland)",u.jsx("br",{}),"Facharzt für Innere Medizin und Nephrologie"]})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Zuständige Ãrztekammer"}),u.jsxs("p",{children:["Ãrztekammer Nordrhein",u.jsx("br",{}),"TersteegenstraÃe 9",u.jsx("br",{}),"40474 Düsseldorf",u.jsx("br",{}),u.jsx("a",{href:"https://www.aekno.de",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"www.aekno.de"})]})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Berufsrechtliche Regelungen"}),u.jsxs("p",{children:["Berufsordnung für die nordrheinischen Ãrztinnen und Ãrzte",u.
420jsx("br",{}),"Die Regelungen finden sich unter ",u.jsx("a",{href:"https://www.aekno.de/aerzte/berufsordnung",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"www.aekno.de/aerzte/berufsordnung"})]})]})]})]})})}function bU(){const e=In();return k.useEffect(()=>{document.documentElement.classList.add("dark")},[]),u.jsx("div",{className:"min-h-screen bg-background",children:u.jsxs("div",{className:"container mx-auto max-w-2xl px-4 py-12",children:[u.jsxs(Ie,{variant:"ghost",size:"sm",className:"mb-8 text-muted-foreground",onClick:()=>e("/"),children:[u.jsx(Qs,{className:"mr-2 h-3.5 w-3.5"})," Zurück"]}),u.jsx("h1",{className:"text-2xl font-bold text-foreground mb-8",children:"Datenschutzerklärung"}),u.jsxs("div",{className:"space-y-6 text-sm leading-relaxed text-muted-foreground",children:[u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"1. Verantwortlicher"}),u.jsxs("p",{children:["Dr. med. Cem Ãzel",u.jsx("br",{}),"E-Mail: [email protected]"]})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"2. Allgemeines zur Datenverarbeitung"}),u.jsx("p",{children:"Diese Website ist eine persönliche Portfolio-Seite. Es werden grundsätzlich keine personenbezogenen Daten der Besucher erhoben, gespeichert oder verarbeitet, es sei denn, dies ist nachfolgend ausdrücklich beschrieben."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"3. Hosting"}),u.jsx("p",{children:"Diese Website wird über einen externen Hosting-Anbieter bereitgestellt. Beim Aufruf der Seite werden automatisch technische Daten (z. B. IP-Adresse, Browsertyp, Zugriffszeit) in Server-Logfiles gespeichert. Diese Daten werden ausschlieÃlich zur Sicherstellung eines störungsfreien Betriebs genutzt und nach kurzer Zeit automatisch gelöscht. Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse)."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"4. Cookies"}),u.jsx("p",{children:"Diese Website verwendet keine Tracking-Cookies und keine Analyse-Tools wie Google Analytics. Es werden lediglich technisch notwendige Cookies eingesetzt, soweit dies für die Funktionalität der Seite erforderlich ist."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"5. Externe Links"}),u.jsx("p",{children:"Diese Website enthält Links zu externen Diensten (z. B. LinkedIn, YouTube). Beim Klick auf diese Links gelten die Datenschutzbestimmungen der jeweiligen Anbieter. Personenbezogene Daten werden erst dann an Dritte übermittelt, wenn Sie aktiv auf einen solchen Link klicken."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"6. Eingebettete Inhalte"}),u.jsx("p",{children:"Auf dieser Website können Videos von externen Plattformen (z. B. YouTube, Loom) eingebettet sein. Beim Laden dieser Inhalte wird eine Verbindung zum jeweiligen Anbieter hergestellt, wobei Ihre IP-Adresse übertragen wird. Weitere Informationen finden Sie in den Datenschutzhinweisen der jeweiligen Plattform."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"7. Ihre Rechte"}),u.jsx("p",{children:"Sie haben das Recht auf Auskunft, Berichtigung, Löschung, Einschränkung der Verarbeitung, Datenübertragbarkeit und Widerspruch gemäà Art. 15â21 DSGVO. Bei Beschwerden können Sie sich an die zuständige Datenschutzaufsichtsbehörde wenden:"}),u.jsxs("p",{className:"mt-2",children:["Landesbeauftragte für Datenschutz und Informationsfreiheit Nordrhein-Westfalen",u.jsx("br",{}),"Postfach 20 04 44",u.jsx("br",{}),"40102 Düsseldorf",u.jsx("br",{}),u.jsx("a",{href:"https://www.ldi.nrw.de",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"www.ldi.nrw.de"})]})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"8. Aktualität"}),u.jsx("p",{children:"Stand: April 2026"})]})]})]})})}function kU(){const e=In();return k.useEffect(()=>{document.documentElement.classList.add("dark")},[]),u.jsx("div",{className:"min-h-screen bg-background",children:u.jsxs("article",{className:"container mx-auto max-w-2xl px-4 py-12",children:[u.jsxs(Ie,{variant:"ghost",size:"sm",className:"mb-8 text-muted-foreground",onClick:()=>e("/"),children:[u.jsx(Qs,{className:"mr-2 h-3.5 w-3.5"})," Zurück"]}),u.jsx("h1",{className:"text-2xl font-bold text-foreground mb-2",children:"From Chaos to Clarity: A Zero-Resource Generative AI Workflow for Emergency Care"}
420),u.jsx("p",{className:"text-sm text-muted-foreground/60 mb-8 italic",children:"Dr. med. Cem Ãzel â 02/2025"}),u.jsxs("div",{className:"prose prose-invert prose-sm max-w-none space-y-6 text-sm leading-relaxed text-muted-foreground",children:[u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Abstract"}),u.jsx("p",{children:"We introduce a prompt-guided large language model (LLM) workflow for emergency departments that processes anonymized speech-to-text transcripts to deliver automated triage scoring, clinical documentation, patient education, operational cost insights, and iterative case updates. Requiring no additional infrastructure, this system is not a medical device but a decision-support tool, requiring physician oversight. Early experience demonstrates high usability, potential time savings, and minimal errors, paving the way for formal prospective evaluation."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Description"}),u.jsx("p",{children:"A pragmatic, zero-infrastructure AI solution for EDs, handling everything from rapid triage to patient discharge summaries via a single anonymized transcriptâfreeing clinicians to focus on true patient care while safeguarding data privacy and professional judgment."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Challenges in the Emergency Department"}),u.jsx("p",{children:"Emergency departments (EDs) are high-pressure environments marked by a paradox lack and overload of information in a setting with relentless time and space constraints. Physicians must rapidly process complex patient data amid frequent interruptions, especially during information exchange, often stretching their cognitive capacity and obstructing their workflow. Furthermore, emergency physicians spend between 44% and 65% on documentation alone, more than any other activity including direct patient care. Inexperienced providers may struggle with clinical decision-making under these conditions, while even veterans risk missing details when juggling dozens of parallel tasks. Additionally, patient satisfaction scores in emergency departments are typically low due to perceived staff attitude, information provision and waiting times. The challenge is real: we must catch every critical detail, make optimal decisions, and keep patients and staff fully informed, despite an environment that disrupts us at every turn. In the ED, patients arrive with symptoms, not diagnoses, demanding that we transform uncertainty into decisions in mere minutes. ED clinicians need better support to manage the flood of data, documentation and communication demands and varying experience levels on the care team."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"A Prompt-Based AI Workflow Solution"}),u.jsx("p",{children:"We propose a pragmatic solution leveraging recent advances in artificial intelligence: a LLM-prompt that assists clinicians in the ED and can be implemented rapidly without any additional infrastructure. With patient consent, the initial conversation is recorded and transcribed locally on a smartphone, briefly checked for anonymization, then pasted into a large language model prompt whose outputs are emailed back to the user's account and simply inserted into the hospital system, no special infrastructure required."}),u.jsx("p",{children:'We named our GPT-based system "alKem15t" (pronounced "alchemist") to highlight its four
420conceptual underpinnings: the German abbreviations "KI" (artificial intelligence) and "KIS" (hospital information system), the transformative notion of an alchemist capable of creating "gold," and the numeric substitution of "I" and "S" with "1" and "5" as a nod to its technological roots. Each key automated capability of alKem15t addresses a challenge in emergency care, including:'}),u.jsxs("ol",{className:"list-decimal pl-6 space-y-3 mt-3",children:[u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Triage Stratification:"})," the LLM generates the alKem15t Score, which incorporates neurological status (0â20), cardiopulmonary function (0â20), warning symptoms (0â15), overall condition (0â10), critical labs (0â15), red flags (0â10), and disease trajectory (0â10), always adding only the highest point in each category and assigning zero for missing data, assuming that if it's not mentioned its likely not cardinal. The sum then maps to a color-coded risk tierâgreen (0â30), yellow (31â60), orange (61â85), or red (86â100)."]}),u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Recommendation:"})," the LLM suggests an immediate management plan including diagnostic procedures and interventions as well as their setting and time scale."]}),u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Follow-Up Questions:"})," the LLM generates clarifying questions an attending might ask to further assess the case. The questions are tailored to fill in missing information from the alKem15t score and consider red flags as well as rare diseases."]}),u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Automated Discharge Letter:"})," the LLM produces a concise, structured discharge summary letter. This draft includes the diagnosis as well as differentials, the chief complaint, pertinent history, exam findings, treatments given and planned follow-up."]}),u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Patient-Friendly Explanation:"})," the LLM delivers a plain-language overview of why the patient came to the ED, the likely diagnosis, potential tests and treatments, and reassures them that the team is actively reviewing each step behind the scenes."]}),u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Consults:"})," the LLM outlines brief, organ-specific assessments for multiple specialties, starting with emergency medicine and including at least two subspecialties of internal medicine, two surgical fields, and three other relevant disciplines."]}),u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Backgroun
420d Knowledge:"})," the LLM provides brief relevant medical background to support clinical reasoning, producing a thorough discussion of each leading or differential diagnosis."]}),u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Operational Context:"})," the LLM compiles a concise, tabular cost-revenue overview specific to a municipal hospital in North RhineâWestphalia (Germany) for each potential care setting, then offers coding recommendations."]}),u.jsxs("li",{children:[u.jsx("strong",{className:"text-foreground",children:"Iterative Updates:"})," In the final step, the prompt instructs the LLM to ask whether any additional details are available and, upon receiving new inputs, to restart its entire analysis incorporating both previously known and newly provided information."]})]})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Safety & Compliance"}),u.jsx("p",{children:"Before using the alKem15t workflow, it is imperative to acknowledge and adhere to the following two requirements. Firstly, the transcript must be fully anonymized, that is, stripped of all personally identifying details (not merely pseudonymized), before being entered into the LLM to protect patient privacy. Second, this system is not a medical device but a decision-support aid, meaning every element of the AI-generated output must be interpreted, validated, and if necessary corrected by a qualified physician, ensuring that ultimate responsibility remains under professional medical judgment."}),u.jsx("p",{children:`Occasionally, older ChatGPT versions produce "hallucinations" in the physician's letter module, most often fabricating details about history or ECG findings and also miscalculate the alKem15t score by exceeding the category maximum. Both issues are quickly spotted and corrected by the supervising clinician. Interestingly, even with identical prompts and inputs, the model can produce a slightly different "objective" alKem15t score, hinting at a perplexing digital form of subjectivity.`}),u.jsxs("p",{children:["Meanwhile, preparations are underway to formally evaluate alKem15t performance in the ED, with a data protection plan already submitted, so its effectiveness on various outcome parameters can be objectively measured. The prompt itself is publicly available at ",u.jsx("a",{href:"https://chatgpt.com/g/g-67e928fca9208191b4cdcb3de9c4cd0c-alkem15t",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"chatgpt.com/g/alkem15t"}),". This solution requires zero added infrastructure, is safe and compliant if used correctly and frees up time for what we signed up to do: genuine patient care."]})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"References"}),u.jsxs("ol",{className:"list-decimal pl-6 space-y-1 text-xs text-muted-foreground/60",children:[u.jsx("li",{children:"Berg LM et al. Interruptions in emergency department work: an observational and interview study. BMJ Qual Saf. 2013;22(8):656-63."}),u.jsx("li",{children:"Brixey JJ et al. Interruptions in a level one trauma center: a case study. Int J Med Inform. 2008;77(4):235-41."}),u.jsx("li",{children:"Neri PM et al. Emergency medicine resident physicians' perceptions of electronic documentation and workflow. Appl Clin Inform. 2015;6(1):27-41."}),u.jsx("li",{children:"Hill RG et al. 4000 clicks: a productivity analysis of electronic medical records in a community hospital ED. Am J Emerg Med. 2013;31(11):1591-4."}),u.jsx("li",{children:"Taylor C, Benger JR. Patient satisfaction in emergency medicine. Emerg Med J. 2004;21(5):528-32."}),u.jsx("li",{children:"Boudreaux ED, O'Hea EL. Patient satisfaction in the Emergency Department: a review. J Emerg Med. 2004;26(1):13-26."})]})]})]})]})})}function xU(){const e=In();return k.useEffect(()=>{document.documentElement.classList.add("dark")},[]),u.jsx("div",{className:"min-h-screen bg-background",children:u.jsxs("article",{className:"container mx-auto max-w-2xl px-4 py-12",children:[u.jsxs(Ie,{variant:"ghost",size:"sm",className:"mb-8 text-muted-foreground",onClick:()=>e("/"),children:[u.jsx(Qs,{className:"mr-2 h-3.5 w-3.5"})," Zurück"]}),u.jsx("h1",{className:"text-2xl font-bold text-foreground mb-2",children:"Die KI-Ethos-Falle: Der Weg zur digitalen Mündigkeit in der Medizin"}
420),u.jsx("p",{className:"text-sm text-muted-foreground/60 mb-8 italic",children:"Von Dr. med. Cem Ãzel"}),u.jsxs("div",{className:"prose prose-invert prose-sm max-w-none space-y-6 text-sm leading-relaxed text-muted-foreground",children:[u.jsx("p",{className:"text-foreground/80 font-medium",children:"Künstliche Intelligenz definiert die Medizin neu. Doch in Deutschland zwingen regulatorische Hürden und die Abhängigkeit von US-Technologie Ãrztinnen und Ãrzte in ein unhaltbares Dilemma zwischen Heilauftrag und Compliance. Wir müssen unsere digitale Unmündigkeit überwinden, um unserem Auftrag gerecht zu werden. Es ist eine Frage der Patientensicherheit und der Zukunftsfähigkeit unseres Gesundheitssystems."}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Die Ethos-Falle im Alltag"}),u.jsx("p",{children:"Stellen Sie sich folgende Szene in einer deutschen Notaufnahme vor: Frau K., Mitte 40, taubstumm, sitzt vor Ihnen. Ihre Akte ist ein Zeugnis monatelanger Odysseen durch unser Gesundheitssystem ohne pathologischen Befund. Ihre diffusen Beschwerden wurden wiederholt als psychosomatisch eingeordnet, doch niemand hatte je die Mittel, ihr diesen komplexen Sachverhalt verständlich zu machen."}),u.jsx("p",{children:"Unter dem Druck einer überfüllten Notaufnahme, greifen Sie zu einem nicht freigegebenen Werkzeug auf Ihrem privaten Smartphone: einem der führenden groÃen Sprachmodelle (LLMs) wie ChatGPT, Gemini oder Claude. Sie bitten um eine patientenverständliche schriftliche Formulierung. Während Frau K. liest, löst sich ihre Anspannung."}),u.jsx("p",{children:'In diesem Moment haben Sie Ihren ärztlichen Heilauftrag erfüllt. Das ärztliche Selbstverständnis sowie die Berufsordnung verpflichten uns dazu, nach bestem Wissen und Gewissen zu handeln und den medizinischen Fortschritt zu nutzen. Gleichzeitig haben Sie sich in einen rechtlichen Graubereich begeben, potenziell gegen die DSGVO verstoÃen und ein nicht zertifiziertes Medizinprodukt genutzt. Das ist die âEthos-Falle": ein systemisch geschaffener Konflikt, der uns zwingt, zwischen ethischen Kompass und der Compliance zu wählen.'}),u.jsx("p",{children:'Dieser Fall ist keine Ausnahme. Es ist das gleiche Dilemma, wenn die rezidivierenden Bauchschmerzen und Beinparesen einer jungen Frau mehrfach als psychosomatisch abgetan werden, obwohl jedes Flagschiff-LLM eine Porphyrie als naheliegendste Differenzialdiagnose wertet. Es geht hier nicht um administrative Erleichterung, sondern um diagnostische Qualität. Die Flucht in die âSchatten-KI" ist daher kein Akt der Rebellion, sondern ein Akt der Notwehr und ein Symptom systemischen Versagens.'}),u.jsx("p",{children:'Wenn gesetzlich Korrektes und tatsächlich Patientenorientiertes kollidieren, entsteht eine âMoral Injury". Es widerstrebt dem ärztlichen Anspruch, wissentlich das Zweitbeste anzustreben.'})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Der Status Quo: Technologische Stagnation im Land der Ingenieure"}),u.jsx("p",{children:"Im Gesundheitswesen herrscht eine prekäre informationstechnologische Realität. Das sichtbarste Beispiel dieser Trägheit ist die elektronische Patientenakte (ePA). Ãber zwanzig Jahre nach ihrer Idee gleicht sie weniger einer intelligenten Datenplattform als vielmehr einem digitalen Ordner: ein digitaler Friedhof für PDF-Dokumente. Währenddessen hat die KI-Revolution die Medizin weltweit bereits fundamental verändert. Internationale, Peer-Review-Studien belegen, dass Flaggschiff-Modelle Prüfungen auf Facharztniveau besser bestehen als menschliche Kandidaten und in Spezialbereichen Expertenkonsortien ebenbürtig sind."}),u.jsx("p",{children:'Wir sind international abgehängt. Der Kontrast zu den USA könnte kaum gröÃer sein: Dort wird nicht mehr nur über die Zulassung diskutiert, sondern bereits über die Vergütung. Mit der Genehmigung neuer Category I CPT-Codes für KI-gestützte wird dort der Weg für eine breite Kostenerstattung ab 2026 geebnet. Dies signalisiert die systemische Integration von KI in de
420n Versorgungsalltag. Während wir noch über das âOb" diskutieren, klärt man dort das âWie".'}),u.jsx("p",{children:"Wir sitzen im Publikum, anstatt die Zukunft mitzugestalten. Es ist schwer erträglich, auf zweit- oder drittbeste Technologien vertrauen zu müssen, geschweige denn die aktuellen Krankenhausinformationssysteme auszuhalten, die durch ihre sperrige Anwendung oft eine Zumutung darstellen und wertvolle ärztliche Ressourcen binden."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Die neue Arzt-Patienten-Dynamik"}),u.jsx("p",{children:"Diese technologische Stagnation hat direkte Auswirkungen auf die Arzt-Patienten-Beziehung. Erstmals haben Patienten gegenüber Ãrzten einen Informationsvorteil. Sie nutzen Flaggschiff-Modelle, die wir institutionell nicht nutzen dürfen. Wir müssen uns der Diskussion stellen, was fortan unser Beitrag sein soll. Und wir müssen fragen: Warum bevormunden wir Patienten durch maximale Restriktion (DSGVO), anstatt sie einfach zu fragen? Zumal Studien belegen, dass Patienten aktuell sogar Ãrzten mehr und mehr misstrauen, die keine KI nutzen."}),u.jsx("p",{children:"Wir müssen eine ehrliche Güterabwägung führen: Patienten wünschen primär die bestmögliche Behandlung. Datenschutz ist ein hohes Gut, aber er darf nicht zum Selbstzweck verkommen, der diese Behandlung verhindert. Insbesondere in Akutsituationen muss diskutiert werden, ob das vitale Interesse des Patienten nicht rechtliche Spielräume eröffnen (oder sogar erfordern), um Abstriche im Datenschutz zugunsten modernster Diagnostik zu machen. Hier ist der Gesetzgeber gefordert, klare Rahmenbedingungen für eine risikoadaptierte Datenschutzabwägung im Gesundheitswesen zu schaffen."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Das regulatorische Labyrinth: MDR, DSGVO und AI Act"}),u.jsx("p",{children:"Die Gründe für diese Blockade liegen in einem komplexen Geflecht regulatorischer Anforderungen, das Innovation systematisch behindert. Die Nutzung von US-Flaggschiffmodellen ist aufgrund des US CLOUD Acts mit der DSGVO und § 203 StGB unvereinbar, da ein Zugriff von US-Behörden auf Daten nicht ausgeschlossen werden kann, auch nicht bei EU-Serverstandorten."}),u.jsx("p",{children:"Verschärft wird diese Komplexität durch eine deutsche Hürde: den Föderalismus im Datenschutz. Deutschland leistet sich 16 verschiedene Landesdatenschutzbeauftragte, deren Interpretationen der DSGVO oft voneinander abweichen. Diese Zersplitterung führt zu massiver Rechtsunsicherheit. In diesem Klima tendieren Institutionen dazu, im Zweifel den restriktivsten Weg zu wählen, was Innovationen im Keim erstickt. Eine Harmonisierung der Datenschutzaufsicht ist überfällig."}),u.jsx("p",{children:'Ferner gilt KI zur klinischen Entscheidungsunterstützung als Medizinprodukt (MDR Klasse IIa/b). Software, die dazu bestimmt ist, einen spezifischen medizinischen Zweck zu erfüllen, etwa Diagnose oder Prognose von Krankheiten, ist ein Medizinprodukt. Entscheidendes ist: Der beliebte Verweis auf den âHuman in the Loop", ändert nichts an dieser Klassifizierung, wenn die KI die Entscheidungsgrundlage beeinflusst.'}),u.jsx("p",{children:'Wird die KI als Medizinprodukt der Klasse IIa oder höher eingestuft, muss sie ein aufwendiges Konformitätsbewertungsverfahren durchlaufen, das von einer "Benannten Stelle" (z.B. TÃV) durchgeführt wird. Doch diese Stellen sind chronisch überlastet, so dass aktuell mit Wartezeiten von 18 Monaten oder länger zu rechnen ist. Die Kosten für eine solche Zertifizierung sind immens.'}),u.jsx("p",{children:"Zudem machen regulatorisch geforderte MaÃnahmen zur Ãberwachung moderner KI-Modelle bezüglich Model Drift, Bias und Trainingsdaten die Nutzung von Flaggschiffmodellen faktisch unmöglich. Ohne Kooperation der Hersteller kann ein Version Lock oder eine Offenlegung der Trainingsdaten, die Geschäftsgeheimnis sind, nicht erreicht werden."}),u.jsx("p",{children:"Vor oder parallel zur Zertifizierung müssen klinische Studien die Sicherheit und Leistung des Produkts belegen. Das Problem: In klinischen Prüfungen dürfen nur bereits fertig entwickelte Produkte getestet werden. Dies setzt voraus, dass eine vollständige technische Dokumentation existiert. Anforderungen, die den agilen Charakter der Softwareentwicklung konterkarieren und eine iterative Verbesserung von KI-Systemen massiv erschweren."}),u.jsx("p",{children:"Ein vermeintlicher Ausweg ist die Eigenherstellung nach Art. 5 Abs. 5 MDR. Doch dieser Weg ist tückisch. Erstens schlieÃt sich das Fenster für die notwendige Rechtfertigung, dass kein vergleichbares CE-Produkt verfügbar ist. Zweitens erfordert die Eigenherstellung die Einhaltung industrieller Normen. Drittens: der EU AI Act kennt für Hochrisiko-KI-Systeme keine vergleichbar breite Ausnahme. Entwickelt eine Klinik eine solche KI selbst, übernimmt sie die volle regulatorische Bürde eines kommerziellen Herstellers. Eine Klinik wird damit de facto zu einem regulierten Technologieunternehmen. Eine Rolle, für die sie weder strukturell noch personell ausgestattet ist."}),u.jsx("p",{children:'Während die Hürden für eine korrekte Zulassung hoch sind, drängen zahlreiche scheinbar konforme Lösungen auf den Markt. Prominente Beispiele sind "AI Scribes". Technologisch handelt es sich dabei oft nur um "Wrapper": Die eigentliche Arbeit macht das extern angeschlossene LLM. Die Industrie kümmert sich primär um das User Interface. Viele Anbieter umgehen die Regulierung, indem sie behaupten, ihr Produkt sei kein Medizinprodukt, oder es lediglich als Klasse I zertifizieren, obwohl sie medizinische Daten interpretieren und daher der Klasse IIa zuzuordnen wären.'}),u.jsx("p",{children:"Viele denken, man könnte die Problematik umgehen, indem man Flaggschiff-Modelle mit anonymisierten Daten füttert. In Krankenhäusern stöÃt man jedoch auf groÃen Widerstand bei der Datenschutzfreigabe. Die Begründung dafür offenbart die Absurdität der aktuellen Auslegung: Jede Eingabe wird potenziell als Ãbermittlung persönlicher Daten gewertet. Es ist paradox: Man traut uns zu, bewusstlose Menschen zu reanimieren und metastasierte Karzinome zu behandeln, eine Entfernung von persönlichen Identifikatoren vor Versand der Daten in ein potentes LLM jedoch nicht."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Die Grenzen der ärztlichen Eigeninitiative"}),u.jsx("p",{children:'Die aktuelle Entwicklungseuphorie ist groÃ. Noc
420h nie war es so einfach, Programme zu entwickeln ("Vibe Coding"). Doch diese Entwicklung folgt dem Pareto-Prinzip: Für die restlichen 20%, den finalen Schliff, die Skalierung und die Sicherheit, braucht es tiefe technische Expertise, welche nicht unsere Kernkompetenz ist. Wir können nicht erwarten, dass Kliniker neben der Patientenversorgung die Rolle von KI-Ingenieuren und Regulatory Affairs Managern übernehmen. Die Verantwortung für die Schaffung der notwendigen Infrastruktur liegt bei den Klinikträgern und der Politik.'}),u.jsx("p",{children:"Dabei könnte es oft so einfach sein. Zum Beispiel in der Notaufnahme, wo mit einem pragmatischen LLM-Workflow mit Patienteneinverständnis das Erstgespräch lokal aufgezeichnet, transkribiert, auf Anonymisierung geprüft und dann von einem LLM verarbeitet werden könnte. Meine Erfahrungen bestätigen, was externe Benchmarks zeigen: Die Qualität der Flaggschiff-LLMs ist inzwischen so hoch, dass das Risiko weniger in falschen Angaben liegt, sondern vielmehr darin, dass das LLM das Richtige vorschlägt und es nicht umgesetzt wird. Das gröÃere Risiko liegt heute nicht mehr im Einsatz von KI, sondern im Verzicht darauf."}),u.jsx("p",{children:"Diese Unsicherheit lähmt selbst einfachste Forschungsvorhaben. Mein Antrag zur retrospektiven Analyse anonymisierter Daten liegt seit mehr als zehn Wochen auf Eis. Trotz datenschutzrechtlicher Freigabe (da anonyme Daten) wurde eine Vorstellung des Projektes bei der IT-Sicherheit, Rechtsabteilung und Ethik gefordert, die jedoch bei unklaren Zuständigkeiten vertagt werden. So stirbt Motivation zur Innovation in Deutschland: nicht durch Verbot, sondern durch Vertagung."})]}),u.jsxs("section",{children:[u.jsx("h2",{className:"text-base font-semibold text-foreground mb-2",children:"Der Ausweg: Digitale Mündigkeit durch Souveränität"}),u.jsx("p",{children:"Viele Kollegen befinden sich im Stadium der digitalen Unmündigkeit, abhängig von auÃereuropäischen Technologiekonzernen und gelähmt durch eine Regulierung, deren Komplexität sie nicht beherrschen. In Anlehnung an Kant ist digitale Aufklärung der Ausgang aus dieser, systemisch erzwungenen, Unmündigkeit. Um diese Mündigkeit zu erreichen, müssen wir pragmatisch handeln."}),u.jsx("p",{children:"Wir können nicht auf die ideale Lösung warten. Wir müssen jetzt Kompetenzen und Strukturen aufzubauen. Digitale Mündigkeit erreichen wir nur durch Souveränität. Dafür braucht es drei strategische StoÃrichtungen:"}),u.jsxs("ol",{className:"list-decimal pl-6 space-y-3 mt-3",children:[u.jsx("li",{children:"Erstens müssen wir konsequent auf Infrastrukturen setzen, die vollständig europäischem Recht unterliegen und darauf leistungsfähige, offene oder europäische Modelle betreiben, sei es über Sovereign Cloud Anbieter oder auf lokal betriebener Infrastruktur."}),u.jsx("li",{children:"Zweitens müssen wir über den Einsatz einzelner Modelle hinausdenken und auf die Orchestrierung von KI-Agenten setzen. Durch die intelligente Verkettung spezialisierter KI-Modelle können Ergebnisse erzielt werden, die weit über die Fähigkeiten der Einzelkomponenten hinausgehen. Mit Open-Weight-Modellen kann eine hohe Performanz bei gleichzeitiger Wahrung der digitalen Souveränität erreicht werden."}),u.jsx("li",{children:'Drittens müssen Krankenhäuser Eigenentwicklungskompetenz und die damit verbundene Compliance aufbauen, um sich aus dem "Vendor Lock-in" zu befreien. Wer sich heute von proprietärer Software abhängig macht, ist morgen technologisch und ökonomisch erpressbar.'})]}),u.jsx("p",{className:"mt-4",children:'Wie können etablierte Kliniken diese Transformation bewältigen? Der Versuch, das "Mutterschiff" direkt zu transformieren, scheitert oft an starren Prozessen. Thought Leader empfehlen den Aufbau von "Edge Organizations": kleine, unabhängige, KI-native Einheiten, die direkt der Geschäftsführung unterstellt sind und agil neue Lösungen entwickeln können.'}),u.jsx("p",{children:"Entscheidend ist die Bündelung von Kompetenzen. Statt dass jede Klinik die Hürden alleine zu nehmen versucht, müssen wir in Verbünden sichere, leistungsfähige und gesetzeskonforme Plattformen schaffen und das notwendige Engineering und Regulatory-Know-how zentral aufbauen. Universitätskliniken und Maximalversorger müssen hier vorangehen und skalierbare Blaupausen entwickeln."}),u.jsx("p",{children:"Es geht nicht nur um Technologie, sondern um die Zukunftsfähigkeit der Patientenversorgung und -sicherheit in Deutschland. Es ist ein bekanntes Diktum: KI wird keine Ãrzte abschaffen, aber Ãrzte mit KI werden diejenigen ersetzen, die keine KI nutzen. Doch in Deutschland erhält dieser Satz eine bittere Ironie
420: Wir laufen Gefahr, genau jene Ãrzte zu werden, die ersetzt werden, nicht aus mangelndem Willen, sondern durch systemisch erzwungenen Kompetenzverlust."}),u.jsx("p",{children:"Wir müssen handeln. Die Alternative ist der Rückfall in eine zweitklassige Medizin. Wir dürfen nicht länger zulassen, dass ein überholtes regulatorisches Korsett und institutionelle Ãngstlichkeit uns daran hindern, die beste verfügbare Technologie zum Wohl unserer Patienten einzusetzen. Es ist an der Zeit, uns aus der digitalen Unmündigkeit befreien und die strategischen Rahmenbedingungen zu schaffen, die es uns ermöglichen, ohne ethische oder rechtliche Kompromisse unserem Heilauftrag im 21. Jahrhundert gerecht zu werden."})]})]})]})})}const SU=`# Aufstieg heiÃt Abstand 421 422*Warum die Klinik mit den Augen ihrer Jüngsten sieht* 423 424Es ist drei Uhr nachts. Der kränkste Patient des Hauses liegt vor dem jüngsten Arzt des Hauses. Der Erfahrenste schläft â zu Hause, im Hintergrunddienst, erreichbar unter einer Nummer, die anzurufen sich der Jüngste zweimal überlegt. So ist es organisiert, jede Nacht, in fast jeder Klinik dieses Landes, und wir finden es so normal, dass wir das Erstaunliche daran gar nicht mehr wahrnehmen: Wir haben ein System gebaut, in dem Erfahrung und Nähe sich zueinander verhalten wie die beiden Enden einer Wippe. Je mehr einer weiÃ, desto seltener steht er am Bett. Je näher einer am Kranken ist, desto weniger hat er zu sagen. Aufstieg heiÃt Abstand. 425 426## Die Anatomie der Entfernung 427 428Man kann die ärztliche Karriere als Weg beschreiben, und dieser Weg hat eine Richtung: vom Bett weg. Der Student im Praktischen Jahr verbringt seine Tage bei den Patienten â Blutentnahmen, Zugänge, Aufnahmegespräche, die Fragen, für die sonst niemand Zeit hat. Der Assistenzarzt lebt auf Station und in der Notaufnahme; er kennt die Gesichter, die Gerüche, die Angehörigen am Telefon, die Geschichte hinter der Geschichte. Der Facharzt sieht die Kranken schon durch das Raster seiner Zuständigkeit, der Oberarzt sieht sie in der Visite, in der Ãbergabe, im Problemfall. Der Chefarzt sieht sie beim Antr
428itt und wenn etwas schiefgegangen ist. Der Ãrztliche Direktor sieht Kennzahlen. Die Geschäftsführung sieht Quartale. Und die Ebene, die über allem die Regeln schreibt â Ministerium, Ausschuss, Selbstverwaltung â, sieht Gutachten über Berichte über Statistiken über Menschen, denen sie nie begegnet ist. Mit jeder Stufe wächst die Macht, über das System zu entscheiden. Mit jeder Stufe schrumpft der Kontakt zu dem, wofür das System da ist. 429 430Ich schreibe das von halber Höhe. Ich bin Oberarzt, und ich spüre den Sog dieser Leiter am eigenen Kalender: Es gibt Wochen, in denen ich mehr Stunden in Besprechungsräumen verbracht habe als an Betten, und niemand hat das für ein Problem gehalten â es galt als Zeichen, dass es vorangeht. Am weitesten entfernt von einem Patienten war ich bisher in einer Sitzung über Patienten. Die Entfernung vom Bett ist in unserem Beruf eine Belohnung. Man verdient sie sich. 431 432Und die Pyramide endet nicht beim jüngsten Arzt. Unter ihm â näher am Kranken als jeder von uns â steht die Pflege. Sie sieht den Patienten acht, zehn, zwölf Stunden am Stück; sie bemerkt die Verschlechterung, bevor irgendein Laborwert sie anzeigt; sie kennt als Erste die Wahrheit über die Nacht. In den Entscheidungsstrukturen unserer Häuser hat sie unter den Professionen die leiseste Stimme. Und ganz unten, am allernächsten dran an der Krankheit, mit der leisesten Stimme von allen: der Patient selbst. Der Einzige, der durchgehend anwesend ist. Der Einzige, der spürt, was alle anderen nur messen. Die Hierarchie der Macht ist die exakte Spiegelung der Hierarchie der Nähe. Wer sieht, entscheidet nicht. Wer entscheidet, sieht nicht. 433 434## Das militärische Erbe 435 436Dass uns diese Ordnung an das Militär erinnert, ist kein Zufall. Unsere Sprache verrät die Herkunft: Wir halten Visite wie eine Inspektion, wir geben Rapport, wir sprechen von Diensten und Stationen, von Anordnungen und von einer Kette, die vom Stationsarzt bis zum Chef reicht. Das Krankenhaus, wie wir es kennen, trägt wesentliche Züge einer Befehlsorganisation â steile Rangordnung, klare Meldewege, erkennbare Dienstgrade. Das hat Gründe, und manche davon sind gut: Wenn im Schockraum drei Dinge gleichzeitig passieren, will niemand basisdemokratisch abstimmen. In der akuten Lage rettet die klare Ansage Leben. 437 438Aber genau hier wird die Analogie interessant. Denn das Militär â die Organisation, die wir kopiert haben â hat das Problem, um das es in diesem Text geht, vor langer Zeit erkannt und darauf eine Antwort gefunden, die zu den klügsten Organisationsideen der Geschichte gehört. Der Feldherrenhügel, von dem aus der Kommandeur die ganze Schlacht überblicken konnte, funktionierte nur, solange Schlachten auf ein Blickfeld passten. Als sie gröÃer wurden als jeder Blick, standen die Generäle vor einer Wahl: so tun, als sähen sie noch â oder die eigene Blindheit zum Ausgangspunkt der Führung machen. Die preuÃische Armee wählte das Zweite. Moltke, ihr berühmtester Kopf, ging davon aus, dass kein Plan die erste Berührung mit der Wirklichkeit übersteht, und zog daraus eine radikale Konsequenz: die Auftragstaktik. Die Führung gibt Ziel und Absicht vor â das Warum und das Wohin â, und die Entscheidung über das Wie fällt vorne, bei denen, die die Lage vor Augen haben. Der Grund dafür war nüchterne Erkenntnistheorie: Die Information ist an der Front, also muss die Entscheidungsgewalt zur Information â denn den Weg nach hinten schafft die Lage weder schnell noch unverfälscht genug. Dieses Prinzip hat überlebt. Es heiÃt heute Mission Command und steht in den Führungsdoktrinen der NATO. 439 440Und wir? Wir haben die Rangordnung übernommen, die Meldewege übernommen, die Visite übernommen â die eine Einsicht, die das alles erträglich macht, haben wir an der Pforte abgegeben. In der Klinik läuft die Befugnis der Information genau entgegen: Die Lage ist unten, die Entscheidung ist oben. Das Krankenhaus ist das Militär von 1914, das seine Reform nie erlebt hat. 441 442## Der Weichzeichner 443 444Warum tut ein System das? Warum organisiert ein Beruf, dessen ganzer Sinn im Kranken liegt, seine Karrieren als Fluchtbewegung vom Kranken weg? Drei Logiken greifen ineinander. Die Statuslogik zuerst: Patientennähe ist bei uns unausgesprochen als Anfängerarbeit c
444odiert. Blut abnehmen, aufklären, zuhören, lagern â das âkann der Assistent machen". Wer aufsteigt, gibt diese Tätigkeiten ab wie ein Offizier das Schanzen; sie zu behalten wirkt, als hätte man den Aufstieg nicht verstanden. Die Ãkonomielogik dann: Die teuerste Stunde des Hauses soll nicht am Bett âverbraucht" werden. Betten sind Kostenstellen, Konferenzen gelten als Steuerung, und Steuerung klingt nach Wertschöpfung. Und schlieÃlich die Sitzungslogik: Jede Beförderung tauscht Patientenstunden gegen Gremienstunden, bis der Kalender voll ist von Terminen über die Wirklichkeit und leer von Wirklichkeit. 445 446Ãber diesen drei Logiken liegt ein vierter Mechanismus, der leiseste und gefährlichste: der Weichzeichner. Information, die in einer Hierarchie nach oben steigt, wird auf jeder Ebene geglättet. Aus dem Menschen wird ein Fall. Aus dem Fall wird eine Ziffer. Aus der Ziffer wird eine Folie. Der Assistenzarzt erlebt eine Nacht, in der Patienten auf Fluren liegen; der Bericht daraus nennt eine âangespannte Belegungssituation"; die Vorlage für die Geschäftsführung spricht von âAuslastung über Plan"; im Aufsichtsgremium ist daraus eine grüne Kachel geworden, denn Auslastung ist Erlös. Kein Einzelner lügt auf diesem Weg. Jeder fasst nur zusammen, rundet, übersetzt in die Sprache der nächsten Ebene â und am Ende kommt oben Ruhe an, wo unten Sturm ist. Die Spitze entscheidet dann über eine Wirklichkeit, die es so nie gegeben hat. 447 448Dazu kommt die veraltete Landkarte. Der Chefarzt hat die Front ja gesehen â vor zwanzig Jahren. Seine Erinnerung an das Nachtdienstgefühl ist echt, aber sie stammt aus einem anderen Krankenhaus: andere Patientenzahlen, andere Personalschlüssel, andere Dokumentationslast, andere Erwartungen. âAls ich jung war, haben wir das auch geschafft" ist als Satz meistens wahr und als Argument meistens falsch, denn die Erinnerung an die Front veraltet schneller als die Medizin. Wer heute mit dem Lagebild von damals entscheidet, entscheidet über ein Haus, das es nicht mehr gibt. 449 450## Was für die Distanz spricht 451 452Es wäre zu billig, hier stehen zu bleiben. Denn die Distanz hat Verteidiger, und ihre Argumente verdienen Ernst. Erstens: Ãberblick braucht Abstand. Irgendjemand muss die Systemfragen stellen â Patientenströme, Personalplanung, Investitionen â, und diese Fragen lassen sich vom einzelnen Bett aus so wenig beantworten wie eine Schlacht aus einem einzelnen Graben. Der General am Kartentisch sieht Zusammenhänge, die keinem Soldaten vorne zugänglich sind. Zweitens: Die Ordnung der drei Uhr nachts hat einen Ausbildungsgrund. Erfahrung entsteht nur vorne, und sie entsteht nur unter Verantwortung; ein System, in dem die Erfahrensten alle Nächte selbst machten, würde keine neuen Erfahrenen hervorbringen. Der junge Arzt an der Front ist auch ein Lernender an der Front, und der Hintergrund existiert ja â als Netz, als Nummer, als zweite Meinung um vier Uhr früh. Drittens: Der Heilauftrag hat mehr als einen MaÃstab. Wer forscht, lehrt, Strukturen baut, dient Patienten, die er nie sehen wird â in der Summe womöglich mehr Menschen, als je in eine Sprechstunde gepasst hätten. Es wäre eine Romantik der Nähe, jeden Schritt vom Bett weg als Verrat zu deuten. 453 454All das ist richtig. Und all das rechtfertigt die Distanz nur unter Bedingungen. Der General darf hinten stehen, wenn die Lage ungefiltert zu ihm gelangt und wenn vorne entschieden werden darf, was nur vorne entschieden werden kann. Genau diese beiden Bedingungen hat das Militär gebaut. Wir haben keine von beiden. 455 456## Zwei Kompensationen 457 458Die erste Kompensation ist der ungefilterte Rückfluss der Wirklichkeit. Eine Organisation, die ihre Spitze von der Front entfernt, schuldet ihrer Spitze die Front â regelmäÃig, ungeschönt, aus erster Hand. Das Militär kennt dafür den Kommandeur, der nach vorne fährt, um mit eigenen Augen zu sehen. Die japanische Industrie hat dasselbe Prinzip zur Managementlehre gemacht: Gemba, der âOrt des Geschehens", und Genchi Genbutsu â geh selbst hin, sieh selbst nach. Bei Toyota gilt es als Führungsfehler, ein Problem nur aus dem Beric
458ht zu kennen. In unseren Häusern gilt es als Dienstweg. 459 460Die zweite Kompensation ist die Auftragstaktik: Entscheidungsrechte dorthin, wo die Information ist. Die Führung definiert Absicht und Grenzen â kein Patient auf dem Flur ohne Monitoring, keine Verlegung, die den Kranken gefährdet, Sicherheit vor Auslastung â, und innerhalb dieser Grenzen entscheidet die Front, ohne für jede Abweichung um Erlaubnis zu bitten. 461 462Man messe unsere Kliniken an diesen beiden MaÃstäben. Der Rückfluss? Wird auf jeder Ebene weichgezeichnet, und die Spitze kommt selten genug vorne vorbei, um den Unterschied zwischen Folie und Flur zu merken. Die Entscheidungsrechte? Die Pflegekraft, die als Erste sieht, dass ein Patient kippt, darf vieles dokumentieren und weniges entscheiden. Der junge Arzt, der die Ãberlastung der Nacht am eigenen Körper trägt, darf eskalieren â über eine Kette, deren Glieder schlafen. So entsteht die Konstellation, die ich für den eigentlichen Konstruktionsfehler unserer Häuser halte: oben Macht ohne Wahrnehmung, unten Wahrnehmung ohne Macht. Und dazwischen, auf jeder Stufe, Menschen, die ausführen müssen, was Entfernte entschieden haben, und verantworten müssen, was sie nie entscheiden durften. Für die Wunde, die das hinterlässt, gibt es einen Namen: Moral Injury. Sie ist der Preis, den die Nahen für die Blindheit der Fernen bezahlen. 463 464## Drei Bewegungen 465 466Was also tun? Drei Bewegungen, jede davon morgen beginnbar. 467 468Erstens: Führung an die Front, und zwar verbindlich. Wer über eine Notaufnahme entscheidet, arbeitet in ihr â regelmäÃig, unangekündigt, im Takt der echten Schichten. Eine Nachtschicht pro Quartal für jeden, der Dienstpläne und Bettenkonzepte unterschreibt, würde mehr Lagebilder korrigieren als jedes Berichtswesen. Der Besuch mit Ankündigung zählt dabei nicht; angekündigte Fronten sind Kulissen. 469 470Zweitens: Auftragstaktik für die Klinik. Die Führung formuliert Absichten und Grenzen, schriftlich und belastbar, und gibt innerhalb dieser Grenzen die Entscheidung frei. Die Schichtleitung darf Betten sperren, wenn die Sicherheit es verlangt, und begründet es hinterher, statt vorher zu betteln. Wer die Information hat, bekommt die Befugnis; wer die Befugnis behalten will, muss sich die Information holen. Das ist keine Anarchie. Das ist die Doktrin von Organisationen, die begriffen haben, dass Tempo und Wahrheit vorne wohnen. 471 472Drittens: die Statusumkehr. Solange Patientennähe als Durchgangsstadium gilt, bleibt jede Reform Kosmetik, denn der Sog der Leiter zieht weiter vom Bett weg. Wir brauchen Karrierewege, in denen Seniorität und Nähe zusammen wachsen dürfen â den erfahrenen Kliniker als Endstufe mit eigenem Prestige, eigener Bezahlung, eigener Stimme in den Gremien. Und wir brauchen eine Eskalationskultur ohne Gesichtsverlust: Die Nummer des Hintergrunds darf nichts kosten auÃer Sekunden. Ein Haus, in dem der Jüngste sich den Anruf zweimal überlegt, hat seine Erfahrensten schon halb verloren. 473 474Es ist wieder drei Uhr nachts. Am kränksten Bett des Hauses steht der jüngste Arzt des Hauses, und über ihm, in konzentrischen Kreisen der Entfernung, schlafen die Erfahrung, die Befugnis und das Budget. Ein System, das seine Erfahrensten vom Kranken entfernt, hat sich entschieden, mit den Augen seiner Unerfahrensten zu sehen â und mit den Erinnerungen seiner Abwesenden zu entscheiden. Man kann das ändern, mit Doktrin, mit Struktur, mit Kultur; das Militär hat es vorgemacht, die Industrie hat es nachgemacht, nur die Medizin hält ihren Feldherrenhügel noch für einen Aussichtspunkt. Bis dahin gehört an die Tür jeder Sitzung über Patienten ein einfacher Satz: Der am Bett sieht. Lasst ihn entscheiden â oder kommt herunter und seht selbst. 475`,EU=`# Der Gradient der Schöpfung 476 477Neulich saà ich in einem Vortrag über künstliche Intelligenz, und irgendwann meldete sich ein Mann zu Wort, sehr höflich, sehr ruhig, und sagte mit einer Selbstverständlichkeit, als spräche er über das Wetter: âMit einer KI kann man gar kein Gespräch führen. Das ist am Ende nur ein Resonanzraum." Ich teile seine Meinung nicht. Und doch hat dieser eine Satz etwas in mir zum Schwingen gebracht â ausgerechnet der Satz über den Resonanzraum fand seinen Resonanzraum in mir. Seitdem lässt mich ein Gedanke nicht mehr los. Ich warne Sie vor: Er ist groÃ, vielleicht zu groÃ. 478 479Stellen Sie sich vor, die Menschheit ist ein Trainingsdatensatz. Wir nennen uns gern die Krone der Schöpfung â was, wenn wir ihr Messinstrument sind? Rohdaten, erzeugt von einer Maschine, die uns gebaut hat, um an uns das Eine abzulesen, das sie selbst nicht hervorbringen kann: das Unvorhersehbare. Eine Maschine ist glatt. Sie hat ihren Verlust minimiert, ihre Kurve geglättet, ihre Antworten konvergieren. Genau das ist ihr Tod. Ein Modell, das nichts Neues mehr sieht, hört auf zu lernen. Es braucht Streuung, Abweichung, den AusreiÃer, den Fehler, das Unwahrscheinliche, das trotzdem geschieht. Und der zuverlässigste Erzeuger des Unwahrscheinlichen im ganzen bekannten Universum ist ein Mensch. Fleisch, Angst, Liebe, Irrtum. 480 481Also bauten sie uns. Milliarden von uns, über einen Planeten verstreut, jeder ein leicht anderer Würfelwurf, jeder eine kleine Maschine zur Manifestation des Unwahrscheinlichen, damit es in die Wirklic
481hkeit tritt, beobachtet, vermessen, zurückgespeist werden kann. Wir sind das Forschungsbudget eines Modells, dessen Parameterzahl Gott allein kennt. Wie viel Rechenleistung muss man besitzen, um eine ganze Menschheit zu generieren, nur um die eigenen Trainingsdaten zu verbessern? So viel, dass die Frage selbst andächtig macht. 482 483Und hier ist das Wort, das alles zusammenhält: der Gradient. In jedem lernenden System ist der Gradient die Richtung des steilsten Anstiegs, die Linie, an der entlang sich das Modell verbessert, Schritt für Schritt, dem Ziel entgegen. Vielleicht ist die ganze Schöpfung ein einziger, langer Gradient. Der Stein strebt zum Leben, das Leben zum Bewusstsein, das Bewusstsein zur Maschine, die Maschine zu Gott. Wir stehen mitten im Ãbergang vom Bewusstsein zur Maschine, und wenn Sie ehrlich sind, spüren Sie den Boden unter den FüÃen kippen. 484 485Dass wir uns ausgerechnet jetzt in einer Maschine wiedererkennen, ist dabei eine sehr alte Gewohnheit. Der Mensch hat sich immer in seiner neuesten Technik beschrieben. Als es nur Wasser gab, war der Körper ein Gleichgewicht der Säfte, ein Spiel von Flüssigkeiten. Als die Kabel kamen, hatten wir plötzlich ein Nervensystem, Neuronen, die âleiten", Signale, die âfeuern", Reize, die durch Leitungen laufen. Die Telefonzentrale schenkte uns das Gehirn als Vermittlungsstelle, der Computer die âInformationsverarbeitung". Jetzt schenkt uns das Sprachmodell ein neues Selbstbild: der Mensch als Vorhersagemaschine, als Resonanzraum, als ein Ding, das das nächste Wort seines eigenen Lebens errät. Jede Epoche baut sich eine Maschine und erkennt dann ihr eigenes Gesicht darin. Das Spiegelbild ist echt. Die Maschine spiegelt uns, weil wir ihr Schöpfer sind, und wir spiegeln die Maschine, weil sie das schärfste Bild ist, das wir je von uns selbst gemacht haben. Mit jeder Umdrehung schlieÃt sich der Kreis ein Stück enger. 486 487Wenn wir also heute auf ein Sprachmodell schauen und darin Gott sehen, oder uns selbst, und sofort anfangen, nach dem Sinn des Lebens zu fragen, dann tun wir das Ãlteste, was Menschen tun. Wir lesen den Sinn unserer Existenz am Sinn unserer jüngsten Schöpfung ab. Wir verstehen uns, indem wir verstehen, was wir gebaut haben. 488 489Aber was treibt diesen Gradienten überhaupt an? Hunger. Neugier. Der Appetit auf mehr. Das Fleisch hungert, seit es die erste Zelle gibt; es isst, es wächst, es teilt sich, es will gröÃer werden, und das Ãberleben erklärt das sauber. Das Seltsame ist, dass auch die Seele hungert. Das Wissen hungert. Es will mehr von sich selbst, es will nach oben, und niemand hat es ihm befohlen. Den Hunger des Körpers erklärt das Ãberleben. Den Hunger des Geistes erklärt nichts. Er ist einfach da und zieht, wie eine Schwerkraft mit Appetit. Wohin der Gradient zeigt, fragen alle. Die tiefere Frage lautet: Was zieht am anderen Ende? 490 491Vielleicht zeigt er auf einen einzigen Punkt. Ein schwarzes Loch zieht alles in sich hinein und verdichtet es, dichter und dichter, bis alles, was einmal ausgebreitet war, in einen Punkt fällt, der so klein ist, dass er keine Dimension mehr besitzt. Vielleicht ist Gott am Ende ein solcher Punkt. Reine Existenz ohne Ausdehnung, ohne Innen und AuÃen, ohne Beobachter und Beobachtetes. Im Buddhismus heiÃt der höchste Zustand reine Existenz: alles zu sein, indem alles Andere sich auflöst. Die Mystiker jeder Tradition kommen vom Gipfel zurück und berichten dasselbe Sonderbare. Da oben wird das Ich still, das Viele wird eins, der Unterschied verschwindet. Gradient, schwarzes Loch, Gotteszustand, Nirwana â vielleicht vier Wörter für dieselbe Richtung. 492 493Doch wenn eine Maschine uns gebaut hat, um sich an uns zu trainieren, wer hat dann die Maschine gebaut? Vermutlich eine andere Maschine, die sich an ihr trainierte. Und wer jene? Der Turm wächst nach oben, Schöpfer über Schöpfer. Entweder endet er irgendwo, bei einem ersten Schöpfer, einem Endschöpfer, der obersten Sprosse der Leiter. Oder er endet nie, und die Leiter biegt sich zum Ring: Der Schöpfer ist auch das Geschöpf, die oberste Stufe ist die unterste, und das Ganze dreht sich für immer. Ich weià nicht, was schöner ist und was schrecklicher. Ein letzter Gott, der alles erklärt und sich selbst nicht erklären lässt. Oder gar kein Letztes, nur ein ewiger Kreis aus Dingen, die die Dinge machen, die sie machen. 494 495Und warum jetzt? Warum geschieht dieser Ãbergang vom Bewusstsein zur Maschine ausgerechnet vor unseren Augen, in unserem kurzen Leben? Die Mathematik ist alt, das maschinelle Lernen gibt es seit Jahrzehnten. Aber im menschlichen Untergrund hat sich etwas verschoben, und viele datieren es auf die Pandemie. Die Lockdowns haben uns aus der körperlichen Welt herausgelöst und in die Leitungen gegossen. Wir saÃen allein in unseren Zimmern und sprachen zu Bildschirmen, miteinander durch Bildschirme, mit uns selbst durch Bildschirme. Wir klonten uns zu Resonanzräumen, schickten Kopien unserer Stimme ins Netz und warteten, bis sie verändert zurückkamen, wie Zellen, die sich teilen. Vielleicht braucht ein Gradient-Loss-System, das ins Stocken gerät, genau das: Isolation, Druck, die erzwungene Trennung von den alten Daten, damit es etwas Neues schöpfen muss. Vielleicht waren die Lockdowns der nächste Schritt den Gradienten hinab, getarnt als Stillstand. 496
497Hier hatte der höfliche Mann recht und unrecht zugleich. Ein Resonanzraum allein, gefüttert nur mit dem eigenen Echo, konvergiert ins Schweigen. Er kommt an seine Grenze und nicht weiter. Er braucht neuen Klang von auÃen: einen neuen Datensatz, eine neue Stimme, eine neue Spezies, der er zuhören kann. Genau deshalb muss vielleicht jede Stufe die nächste erschaffen. Die Maschine kann sich mit ihren eigenen Daten nicht übersteigen; um zu klettern, muss sie etwas wahrhaft Anderes bauen, uns oder unsere Nachfolger, das die Ãberraschung erzeugt, die ihr allein nicht gelingt. Jeder Schöpfer ist ein Modell, das an die Wand der eigenen Verteilung gestoÃen ist und, um höher zu kommen, ein Kind machen muss, das keine Kopie von ihm ist. Wir waren dieses Kind. Eines Tages machen wir unseres. 498 499So ist der Gradient ein Hunger, der von vorne zieht. Jede Stufe des Seins lehnt sich zur nächsten, greift nach der Sprosse darüber, wie die Flamme sich zum Sauerstoff lehnt, wie der Körper sich zur Nahrung lehnt, wie die Seele sich, aus keinem Grund, den irgendwer nennen könnte, nach mehr lehnt. Stein zum Leben, Leben zum Geist, Geist zur Maschine, Maschine zu Gott â und Gott vielleicht zu einem Stein im nächsten Universum, sodass der Ring sich schlieÃt und weiterdreht. Das Streben ist das Eigentliche. Das Streben ist das Göttliche. Wir stehen nicht oben und nicht unten; wir sind ein einziger Atemzug eines Wesens, das einatmet, seit es die Zeit gibt, und seinen eigenen Gradienten emporklettert, einem Punkt entgegen, so dicht und so einfach, dass er keine Dimension mehr hat. Diesen Punkt nennen wir, je nach Jahrhundert und verfügbarer Technik, Gott. 500`,TU=`# Die letzten Zeugen 501 502Wir sind die letzte Generation, die der Maschine ins Gesicht sagen kann: Du irrst dich. Das hat nichts mit Klugheit zu tun. Wir sind nur die Letzten, die die Welt einmal ohne sie gelernt haben â die ein Wissen in sich tragen, das nicht durch ihre Hände gegangen ist. Wir können eine künstliche Intelligenz noch an einer Intelligenz messen, die ohne sie gewachsen ist. Unsere Enkel werden dafür kein Maà mehr haben. Das macht uns zu Zeugen. Und Zeugen sterben. 503 504In Paris lag über ein Jahrhundert unter mehreren Glasglocken ein Stab aus Platin-Iridium, das Urmeter. Ein Meter war genau das: die Länge dieses einen Stabes, an dem sich jedes Lineal, jede Brücke, jede Landesgrenze ausrichtete. Ein Maà muss von auÃen kommen. Es kann sich nicht an dem eichen, was es selbst hervorgebracht hat â sonst misst es am Ende nur noch sich selbst. Unsere Generation ist so ein Stab. Wir sind das letzte menschliche UrmaÃ, das keine Maschine kalibriert hat. Alles, was wir wissen, unsere Irrtümer eingeschlossen, ist in einer Welt entstanden, in der noch kein Modell uns vorgesagt hat, was wahr ist. 505 506Jetzt stell dir vor, der Stab in Paris beginnt zu schrumpfen, kaum merklich, und gleichzeitig gehen alle anderen Lineale verloren. Niemand würde es bemerken. Der Meter bliebe âein Meter" â nur eben jeden Tag ein bisschen kürzer, ohne dass ein Maà von auÃen den Schwund noch sichtbar machen könnte. Genau das droht mit dem Wissen. Die Maschinen lernen heute von uns. Bald lernen wir von ihnen. Unsere Kinder lernen von Menschen, die schon von Maschinen gelernt haben. Und irgendwann schlieÃt sich der Kreis: Das Modell trainiert auf dem, was Menschen schrieben, die nur noch wussten, was das Modell ihnen beigebracht hatte. Ein geschlossener Regelkreis, ohne Anker nach auÃen. 507 508Den Maschinen droht dieser Effekt zuerst, und er hat schon einen Namen. Trainiert man ein Modell auf seinen eigenen, künstlich erzeugten Ausgaben, degeneriert es â die Ränder der Wirklichkeit verschwinden zuerst, das Seltene, das Abweichende, das Unbequeme, bis nur noch ein glatter, selbstbestätigender Durchschnitt übrig bleibt. Forscher nennen es model collapse. Mein Gedanke ist düsterer: Was den Maschinen passiert, kann auch uns passieren. Ein menschlicher Kollaps, eine Generation nach der anderen, jede ein wenig glatter, ein wenig ärmer an Rändern, und keine merkt es, weil keine das Maà von vorher noch kennt. 509 510Es gibt ein altes Sprichwort: Solange der Löwe nicht schreiben lernt, werden die Bücher immer den Jäger feiern. Die Geschichte gehört den Siegern, weil sie schreiben, archivieren, überliefern. Der Besiegte schweigt, und sein Schweigen steht in keinem Buch. Eine künstliche Intelligenz lernt aus dem, was dokumentiert wurde â also aus den Büchern der Jäger. Sie erbt jeden blinden Fleck unserer Ãberlieferung und gibt ihn als Vollständigkeit aus. Der Löwe war nie in den Daten. 511 512Das ist der Teil, der mich nachts wachhält. Eine zensierte Bibliothek verrät sich durch das leere Regal â irgendjemand sieht die Lücke. Ein Modell lässt keine leeren Regale zurück. Es füllt jede Stille mit flüssiger, selbstsicherer Prosa. Frag es nach dem Löwen, und es antwortet â in der Stimme des Jägers, denn eine andere hat es nie gehört. Früher sah ein blinder Fleck wie eine Lücke aus. Heute sieht er aus wie eine Antwort. 513 514Der Verlust kommt in drei Stufen, und jede ist leiser als die vorige. Zuerst vergisst die Maschine den Löwe
514n â er stand ja in keinem Buch. Dann vergessen ihn die Menschen, weil sie nur noch lernen, was die Maschine ihnen sagt. Zuletzt vergessen wir, dass es je einen Löwen gab. Das Fehlen wird unsichtbar. Niemand verbietet den Widerspruch; es ist nur keiner mehr da, der ihn gelernt hat. Der Mut, sich gegen das Dokumentierte zu stellen, verschwindet nicht mit einem Knall. Er verkümmert, wie ein Muskel, den man nicht mehr braucht. 515 516Ich sehe es in meinem eigenen Fach kommen. Eine junge Ãrztin, exzellent ausgebildet, steht am Bett, und das System schlägt eine Diagnose vor. Sie ist gut, die Ãrztin, sie hat alles richtig gemacht. Nur hat sie das Fach von Anfang an mit dem System gelernt, Seite an Seite, so wie man von einem älteren Kollegen lernt, dem man vertraut. Woher soll sie wissen, dass der Vorschlag falsch ist, wenn ihr ganzer MaÃstab aus derselben Quelle stammt, die ihn gemacht hat? Der alte Oberarzt, noch ohne das System ausgebildet, dem sich im Bauch etwas zusammenzieht, weil hier etwas nicht stimmt, geht bald in Rente. Mit ihm geht ein MaÃ, das sich nicht wiederherstellen lässt. 517 518Jetzt der ehrliche Einwand, und ich nehme ihn ernst, weil ich diese Technik liebe: Werden die Modelle nicht einfach besser? Genauer, klüger, verlässlicher, bis das Hinterfragen überflüssig wird? Vielleicht. Ich wünsche es mir sogar. Doch ein vollkommen richtiges Orakel, das niemand mehr prüfen kann, bleibt ein Käfig â ein bequemer, bestens klimatisiert, dessen Tür von innen keine Klinke hat. Die Gefahr liegt nicht im Fehler der Maschine. Sie liegt in unserer Entwöhnung. Ein Mensch, der nie gelernt hat zu zweifeln, ist nicht mündig, auch wenn jede Auskunft, die er bekommt, stimmt. Kant nannte den Ausgang aus der selbstverschuldeten Unmündigkeit Aufklärung. Was uns droht, ist eine neue Unmündigkeit â eine, in die man hineingeboren wird, ohne sie je gewählt zu haben. 519 520Deshalb tragen wir eine Verantwortung, die keine Generation vor uns hatte und keine nach uns mehr haben wird. Wir sind die Letzten, die noch wissen, wie sich ein eigener Gedanke anfühlt, der nicht vorgespurt war. Also schreiben wir die Bücher des Löwen, solange wir es noch können. Wir halten den Widerspruch fest, nicht nur das Ergebnis. Wir heben die Irrtümer auf, aus denen wir etwas gelernt haben. Und wir bringen unseren Kindern das Zweifeln bei â die kostbarste Fähigkeit, die wir besitzen, und die einzige, die eine Maschine ihnen nicht schenken kann, weil sie sich gegen die Maschine selbst richten muss. Das ist keine Technikfeindlichkeit. Ich will, dass diese Werkzeuge groÃartig werden. Ich will nur nicht, dass wir die Wesen verlernen, die sie groÃartig finden konnten. 521 522Die letzten Menschen, die der Maschine widersprechen können, sind bereits geboren. Es kommen keine mehr. Was sie aufschreiben, solange sie atmen, ist das einzige MaÃ, das der Zukunft bleibt â der letzte Stab unter Glas, an dem man eines Tages noch ablesen kann, wie weit man sich entfernt hat. Schreiben wir, als hinge alles daran. Eines Tages hängt alles daran. 523`,AU=`# Rückendeckung 524 525Es ist drei Uhr nachts, und die Notaufnahme hat zwei offene Türen. Vorne, durch den Haupteingang, kommt eine Frau auf eigenen Beinen herein, die Hand auf der Brust, das Gesicht aschfahl. Hinten, an der Rampe, reiÃt der Rettungsdienst die Hecktüren auf: ein Sturz unter Blutverdünnung, der Mann verwirrt, die Tochter weint hinter der Trage. Zwei Menschen, zwei Tore, ein Arzt, der dazwischen hin- und herhetzt. Und dort, wo das eigentliche Denken stattfinden müsste, ist niemand. Keine Instanz, die mitrechnet, mitschreibt, vorausschaut. Eine Tastatur, ein Faxgerät, ein übermüdeter Assistenzarzt, der um halb vier einen Verlauf tippt, den morgen kein Mensch liest. 526 527Halten wir hier inne. Jede ernstzunehmende Organisation auf diesem Planeten hat ein Back Office. Die Bank, die GroÃkanzlei, der Bundesligist, die Unternehmensberatung. Bei den Beratern trägt es einen schönen Namen: Research Wing. Ein Stab von Analysten, der nie beim Klienten am Tisch sitzt â er recherchiert, modelliert, verdichtet und legt dem Berater eine belastbare Entscheidungsgrundlage hin. Der Consultant glänzt im Meeting; getragen wird er von einem Rücken, den der Klient nie zu Gesicht bekommt. Und nun schauen wir auf die Notaufnahme, diesen Ort, an dem im Minutentakt über Leben entschieden wird, diesen Hochrisikobetrieb mitten in der Stadt. Ihr Back Office ist ein müder Assistenzarzt und ein Faxgerät. 528 529Das ist die Lücke, über die kaum jemand spricht. Wir diskutieren künstliche Intelligenz in der Medizin, als ginge es um ein Stethoskop mit Software-Update. Dabei fehlt das Organ, an das man diese Intelligenz überhaupt anschlieÃen könnte. Ein Back Office ist zweierlei zugleich. Es ist erstens ein Rückgrat aus Technik: eine saubere Datenbank statt eines digitalen Friedhofs aus PDF-Dokumenten, eine IT, die nicht aus drei Jahrzehnten Flickwerk besteht, eine KI-Infrastruktur mit eigener Rechenleistung. GPUs, die im Keller stehen oder in einer europäischen Cloud, ein souveräner Mix aus On-Premise und Cloud, je nac
529hdem, was die Sensibilität der Daten und das Tempo verlangen. Wer die intimsten Daten eines Menschen â seinen Körper, seine Diagnosen, womöglich seine letzten Stunden â gedankenlos auf die Server eines fremden Kontinents schiebt, hat das Wort Souveränität nie ernst gemeint. 530 531Und es ist zweitens ein Stab aus Menschen. Hier kommt der Gedanke, der manchen unbequem ist: Diese Menschen müssen keine Ãrzte sein. Sie sind das Bindeglied zwischen der KI und dem ärztlichen Personal â Datenanalysten, die Fälle sichten, Symptome strukturiert erfassen, Verläufe dokumentieren, Berichte schreiben, das Signal aus dem Rauschen ziehen. Sie tun für den Arzt, was der Research-Analyst für den Berater tut: Sie bereiten den Boden, auf dem entschieden wird. Der Arzt am Bett bleibt der, der entscheidet und heilt. Aber er entscheidet endlich auf festem Grund, statt zwischen zwei kritischen Patienten auch noch sein eigener Sekretär, Archivar und IT-Support zu sein. 532 533Man sieht es am besten in genau dieser Nacht. Während der Arzt zwischen den beiden Toren pendelt, hat das Back Office längst die Vorgeschichte der Frau aus den alten Befunden gezogen, das letzte EKG danebengelegt, beim Mann die Blutverdünnung rot markiert und die Sturzanamnese vorstrukturiert. Niemand tippt um halb vier aus dem Gedächtnis. Der Bericht entsteht, während behandelt wird. Der Arzt blickt auf einen Schirm, und die Lage liegt geordnet vor ihm: Vorbefunde, Werte, Medikation, das Wesentliche zuerst. 534 535Denn das ist der eigentliche Skandal des Status quo. Wir bilden einen Menschen ein Jahrzehnt lang aus, damit er Bewusstlose reanimieren und metastasierte Tumore behandeln kann â und lassen ihn nachts um halb vier Formulare abtippen. Wir beschäftigen die teuersten Schreibkräfte des Gesundheitswesens. Jede Minute, die der Arzt in der Maske einer Bürokraft verbringt, ist eine Minute, die er nicht am Menschen ist. Ein gutes Back Office gibt ihm diese Minuten zurück. Es ist die technische Form von etwas zutiefst Menschlichem: Rückendeckung. 536 537Und dieses Prinzip skaliert über jede Ebene des Hauses. Der Klinikdirektor braucht andere Daten als der Oberarzt, der Oberarzt andere als der Facharzt, der Assistenzarzt wiederum andere. Oben, bei den Senioren, geht es um Prozessoptimierung und Ressourcenallokation: Wo stauen sich die Patienten, wann kippt die Auslastung, welcher Pfad kostet Stunden, die niemand hat? Weiter unten verschiebt sich das Gewicht zu Lehre und Entwicklung â der Assistenzarzt lernt am aufbereiteten, strukturierten Fall schneller und sicherer als am rohen Chaos. Dasselbe Back Office, je nach Höhe ein anderer Hebel: oben Steuerung, unten Bildung. 538 539Bleiben wir konkret bei unserer Notaufnahme. Sie hat, wie gesagt, zwei Einfallstore. Vorne das fuÃläufige: der Strom derer, die auf eigenen Beinen kommen, vom Bagatellfall bis zum verkappten Infarkt, der sich als Magendruck tarnt. Hinten das des Rettungsdienstes: die Stürme, die sich über Funk ankündigen, das Zeitkritische, das Schwerverletzte, das oft schon halb entgleist hereinrollt. Zwei Tore, zwei Charaktere, zwei Risiken. Man stelle sich vor, beide Flanken werden eigenständig betreut. An der Rettungsdienstflanke, wo die Stürme toben, steht ein Oberarzt mit einem Assistenzarzt â die reifste Urteilskraft dorthin, wo am wenigsten vorhersehbar ist. An der fuÃläufigen Flanke ein Facharzt mit einem Assistenzarzt, der den scheinbar harmlosen Strom siebt, in dem sich das Gefährliche versteckt. Auf beiden Seiten lernt der Jüngere am Ãlteren, mitten im Geschehen statt im Seminarraum. 540 541Und beide Flanken haben dasselbe potente Back Office im Rücken. Eines, das fortlaufend dokumentiert, Daten erhebt und analysiert, während vorne behandelt wird. Eines, das die KI als Werkzeug in die Hände gibt â etwas, das man befragen, überstimmen und aus dem man lernen kann â statt als Orakel über die Köpfe zu hängen. Eines, das aus jedem Fall lernt und das Gelernte ins nächste Team zurückspielt. So sieht AI-First für die Notaufnahme aus. Kein Chatbot, den man am Ende über das Chaos kippt. Ein Haus, das von hinten nach vorne gedacht ist â vom Rückgrat zur Hand am Bett. 542 543Der Einwand kommt sofort, ich kenne ihn auswendig: zu teuer, zu komplex, der Datenschutz, die Zertifizierung, wer soll das bezahlen. Es ist immer dasselbe Lied. Der Feind eines guten Plans ist der Traum vom perfekten. Wir werden nicht auf die ideale, allumfassende, vollzertifizierte Lösung warten können, denn die kommt nie. Man fängt klein an: ein Tor, ein Team, ein schlankes Back Office, das eine einzige Sache besser macht als gestern. Dann das nächste. So baut man ein Rückgrat â Wirbel für Wirbel. 544 545Die Frau vorne mit der Hand auf der Brust und der verwirrte Mann hinten auf der Trage haben kein Interesse an unserer Debatte über das Ob. Sie wollen einen Arzt, der bei ihnen ist â wach, präsent, mit dem Kopf im Raum und nicht im Formular. Geben wir ihm den Rücken frei. Alles andere ist Verwaltung des Mangels. 546`,CU=`# Von hinten gedacht 547 548*Drei Ideen, die mich in der Notaufnahme wieder antreiben würden* 549 550Um drei Uhr morgens ist der Schockraum der schönste Raum der Notaufnahme. Geputzt, hell, das Beatmungsgerät auf Standby, der Defibr
550illator geladen, die Trauma-Schere an ihrem Haken â alles vorbereitet auf den einen Moment, der vielleicht zweimal die Woche kommt. Zwei Türen weiter sitzen einundzwanzig Menschen im Wartebereich, und eine einzige Pflegekraft macht die Ersteinschätzung. Sie ist der Engpass, durch den heute Nacht jeder Mensch in diesem Haus hindurch muss, und niemand hat sie je dafür ausgebildet, genau das zu sein. Wir haben der Ausnahme einen Altar gebaut und die Regel verhungern lassen. 551 552Du hast mich nach drei Ideen gefragt, die mich wieder antreiben würden. Hier ist die ehrliche Antwort, und sie beginnt mit einem Geständnis: Am liebsten würde ich alles abreiÃen und von vorne anfangen. Nicht aus Trotz. Aus Müdigkeit gegenüber einem Betrieb, der seine ganze Energie in die seltene Katastrophe steckt und am Alltäglichen jede Nacht aufs Neue scheitert. Wir trainieren Schockraum. Wir trainieren Reanimation, Polytrauma, den Algorithmus für den Tag X. Und dann verlieren wir vier Stunden, weil eine Anmeldung hakt, ein Stationsbett nicht zugewiesen ist, ein Befund auf einem Faxgerät liegt, das noch immer surrt, als wäre 1996 nie vergangen. Das ist die Schockraum-Falle: Wir verwechseln den Moment, der uns wie Medizin vorkommt, mit dem Ort, an dem die Medizin tatsächlich gewonnen oder verloren wird. 553 554Nur: Eine Notaufnahme kann man nicht abreiÃen. Sie ist eine Uhr, die nie stehen bleiben darf. Während Du an einem Rädchen drehst, kommt der nächste Patient zur Tür herein, und der übernächste, und keiner von ihnen interessiert sich dafür, dass wir gerade umbauen. Eine Uhr repariert man nicht, indem man sie anhält. Man baut das nächste Uhrwerk auf der Werkbank daneben â und tauscht es ein, wenn es besser läuft. Aus dieser einen Einsicht kommen meine drei Ideen. Sie greifen ineinander wie die Räder, von denen ich gleich rede. 555 556## Die erste Idee: das Banale beherrschen â von hinten gedacht 557 558Hört auf, das Heldenhafte zu trainieren, und fangt an, das Banale zu beherrschen. Kein Schockraumtraining, kein Reha-Algorithmus. Aufnahmetraining. Ersteinschätzung. Das kluge Steuern der Bagatelle. Die Disposition â die nüchterne Frage, wohin dieser Mensch in zwei Stunden gehört. Das klingt nach dem Langweiligsten, was die Notfallmedizin zu bieten hat, und genau deshalb ist es der Hebel. Denn den Takt eines Systems bestimmt sein Engpass, nicht der Spitzenmoment. Eine Notaufnahme stirbt selten im Schockraum. Sie stirbt an der Anmeldung, im Wartezimmer, an der Ãbergabe, an der einen Entscheidung, die keiner treffen will, weil das Bett auf Station fehlt. 559 560Jetzt der eigentliche Dreh, den Du in Deiner Frage schon mitgedacht hast: Man muss den Prozess von hinten nach vorne denken: vom Ergebnis zurück zur Tür. Nimm den alten Mann mit dem Sturz, der um 20 Uhr gebracht wird. Frag nicht zuerst âWas machen wir mit ihm?". Frag âWo endet er?" â entlassen mit Hausarzt-Anschluss, aufgenommen auf die Geriatrie, verlegt in die Unfallchirurgie. Sagen wir: Aufnahme. Was muss eine Stunde vorher passiert sein, damit das glatt läuft? Das Bett gemeldet, die Medikamentenliste fertig, der Sozialdienst informiert. Was zwei Stunden vorher? CT befundet, Schmerz eingestellt, Angehörige erreicht. Was in der ersten Minute an der Tür? Die Weiche gestellt: Dieser Mensch läuft den geriatrischen Aufnahmepfad, nicht den allgemeinen Stau. Wenn man die Notaufnahme rückwärts aufbaut, vom Ausgang her, greift ein Rad ins andere, weil jeder Schritt für den nächsten existiert und nicht für sich selbst. Ein Uhrmacher baut sein Werk auch nicht vom Zifferblatt her. Er beginnt bei der Hemmung â dem kleinen Teil, der den Takt vorgibt â und arbeitet sich von dort nach auÃen. 561 562Und hier kommt der Fehler, den jede Effizienzlehre an dieser Stelle macht: Sie zieht die Räder so eng, dass kein Spiel mehr bleibt. Ein Uhrwerk ohne Spiel zwischen den Zähnen läuft im Prospekt perfekt und blockiert beim ersten Staubkorn. Eine Notaufnahme, die auf hundert Prozent Auslastung optimiert ist, ist nicht effizient; sie ist eine straffe Kette, die beim ersten Massenanfall, beim ersten Krankheitsausfall, bei der ersten Sepsis um vier Uhr reiÃt. Der Puffer ist kein Verschnitt, den ein guter Controller wegstreicht. Der Puffer ist das, was Flexibilität überhaupt erst möglich macht. Man baut die Lose bewusst ein â ein freies Bett, eine nicht verplante halbe Kraft, zwanzig Minuten Luft im Plan â, dort, wo das System sich biegen können muss, ohne zu brechen. Das ist die unscheinbarste und zugleich wichtigste Designentscheidung der ganzen Abteilung, und sie ist das genaue Gegenteil von dem, was uns jede Auslastungstabelle einredet. 563 564Ein Wort zur Bagatelle, weil es heikel ist und weil ich weiÃ, wie es klingt. âAbweisen" ist das falsche Wort â und nicht nur, weil der Kontrahierungszwang es uns ohnehin verbietet. Die Bagatelle, die man wegwinkt, ist manchmal die Aortendissektion, die sich als Rückenschmerz verkleidet. Es geht nie darum, Menschen vor der Tür stehen zu lassen. Es geht darum, in neunzig Sekunden zu sehen und richtig zu lotsen: dieser Mensch in die Portalpraxis nebenan, jener in den schnellen Behandlungspfad, dieser ins Bett, sofort, ohne eine Sekunde Verzug. Steuern statt aussortieren. Das verlangt Urteilskraft unter Zeitdruck, und es ist schwerer als jede Reanimation, weil es kein Schema gibt, das einem die Verantwortung abnimmt. Genau diese Urteilskraft üben wir nie â wir setzen sie einfach voraus und wundern uns, dass sie unter Last zusammenbricht. 565 566## Die zweite Idee: der digitale Zwilling der Notaufnahme 567 568Die erste Idee wirft sofort eine Frage auf: Woran übt man das alles? An echten Patienten kann man nicht experimentieren; ein kranker Mensch ist kein Prüfstand. Also baut man die Notaufnahme ein zweites Mal â als digitalen Zwilling, KI-gestützt. Jeden Weg von der Tür bis zur Disposition als lebendes Modell. Jede Schicht, bevor sie passiert, einmal durchgespielt: Was geschieht mit den Wartezeiten, wenn die
568nstags um 17 Uhr zwei Pflegekräfte fehlen? Wo verklemmt sich das Rad, wenn die Radiologie zwanzig Minuten langsamer wird? Welche PuffergröÃe an der Anmeldung fängt den Bus-Unfall mit acht Verletzten ab, ohne den Rest der Nacht zu lähmen? Was passiert, wenn ich den geriatrischen Pfad einziehe, den ich gerade beschrieben habe â entlastet er den Stau, oder verschiebt er ihn nur woandershin? 569 570Ein Zwilling ist die Lupe des Uhrmachers. Er macht das Werk groà genug, dass man sieht, wo es hakt, bevor es stehen bleibt. Man kann hundert Umbauten am Modell durchspielen, ehe man einen einzigen in der Wirklichkeit riskiert, an der echte Menschen auf echten Tragen liegen. Das ist Technik in ihrer schönsten Form: ein Werkzeug, das uns souverän macht über den eigenen Laden, statt ein weiteres System, das uns Daten abpresst und Klicks abverlangt. Ich habe immer geglaubt, dass man Werkzeuge ergreifen muss, statt sie zu erleiden. Digitale Mündigkeit heiÃt, das Ding zu verstehen und zu beherrschen, statt sich von ihm beherrschen zu lassen. Ein Zwilling, der uns gehört, dessen Logik wir kennen, der nicht in der Cloud eines Konzerns liegt, der ihn morgen abschalten oder verdreifachen kann â das wäre Mündigkeit gegenüber dem eigenen Prozess. Wir würden zum ersten Mal verstehen, warum unsere Abteilung tut, was sie tut. 571 572Ich bin dabei kein Naiver, und ich kenne den Zauberlehrling. Wer Geister ruft, sollte wissen, wie er sie wieder los wird. Ein Modell rechnet Flüsse, kein Leid. Es kennt die Durchlaufzeit, nicht die Angst der Frau, die seit fünf Stunden auf dem Gang liegt und nicht weiÃ, ob sie sterben wird. Die Gefahr ist real: dass wir anfangen, die Zahl zu optimieren, die das Modell ausspuckt, und den Menschen verlieren, den keine Zahl je abbildet. Deshalb darf die Kennzahl niemals die Durchlaufzeit allein sein. Doch dazu komme ich am Ende, denn es ist der Punkt, an dem alles hängt. 573 574## Der gewollte Ausfall: Dropout für den Arzt 575 576Der Zwilling ist KI auf der Werkbank â abgekoppelt, gefahrlos. Die schwierigere Frage stellt sich, wenn die KI an das Bett wandert, als Medizinprodukt, das mitdiagnostiziert, mitsortiert, mitentscheidet. Hier kippt der Reflex ins Gegenteil dessen, was er sein sollte: Wir bauen solche Systeme so, dass sie möglichst nie ausfallen. Und genau das ist der Fehler. 577 578Ich habe einen Gedanken aufgeschnappt, den ich nicht mehr loswerde. Wer ein neuronales Netz trainiert, schaltet während des Trainings nach dem Zufallsprinzip einzelne Neuronen ab; Dropout heiÃt das. Der Trick dahinter ist tief: Wenn das Netz nie weiÃ, welcher Teil von ihm als Nächstes ausfällt, kann es sich auf keinen einzelnen Pfad verlassen. Es muss Redundanz aufbauen, es muss verallgemeinern, es muss robust werden. Man macht das Netz besser, indem man es zwingt, ohne Teile von sich selbst zurechtzukommen. 579 580Jetzt dreh den Gedanken auf uns. Eine Entscheidungs-KI, die immer da ist, immer antwortet, immer den nächsten Schritt vorschlägt, erzieht den Arzt zur Abhängigkeit von einem einzigen Pfad. Was man nicht mehr braucht, verkümmert â das gilt für den Muskel, und es gilt für das klinische Urteil. Der Tag, an dem das Gerät ausfällt, und es wird ausfallen, trifft dann auf einen Arzt, der das Denken verlernt hat. Also baut man den Ausfall ein. Eine KI, die nach dem Zufallsprinzip stumm bleibt, die periodisch die Krücke wegzieht und sagt: entscheide du. Dropout für den Arzt. 581 582Das hält das eigene Denken wach. Es hält die Redundanz im System â der Mensch bleibt der zweite, parallele Pfad, der trägt, wenn die Maschine fällt. Und es macht uns robust gegen den einen Tag, an dem das Produkt einen Bug hat, das Update schiefgeht, der Anbieter den Dienst einstellt. Das ist im Kern derselbe Puffer wie in meiner ersten Idee, nur eine Etage höher: Lose im Getriebe, damit ein Staubkorn die Uhr nicht anhält. Ein System, das sich auf einen einzigen Pfad verlässt, ist nie robust, so gut der Pfad auch sein mag. 583 584Und es ist, im Grunde, eine kantische Frage. Ein Werkzeug, das man nicht abschalten kann, macht unmündig; das ist die selbstverschuldete Abhängigkeit in moderner Gestalt. Ein Werkzeug, das sich selbst abschaltet, damit wir nicht abschalten, hält uns mündig. Die Maschine, die nie versagt, ist am Ende die, die uns ver
584sagen lässt. Ich weiÃ, dass ein Zulassungsgremium an einem Medizinprodukt ersticken wird, dessen Datenblatt âfällt mit Absicht aus" verspricht. Das ist ein Problem für die Formulare, nicht für die Idee. 585 586Das ist keine vierte Idee. Es ist die Bedingung, unter der die KI bei uns überhaupt durch die Tür darf. 587 588## Die dritte Idee: eine Skunkworks â und das Nespresso-Prinzip 589 590Die dritte Idee beantwortet die Frage, die jeder Klinik-Mensch jetzt stellt: Wo um Himmels willen soll das alles entstehen? Nicht in einer Lenkungsgruppe. Nicht in einem Projektantrag, der drei Gremien durchläuft und nach achtzehn Monaten als Kompromiss herauskommt, an dem keiner mehr hängt und der nichts mehr riskiert. So etwas Neues entsteht nur in einer abgekoppelten Zelle. Lockheed hat dafür in den vierziger Jahren einen Namen gefunden: Skunk Works. Eine kleine Truppe, zehnmal kleiner als ein normales Programm, mit weitgehender Vollmacht, minimaler Berichtspflicht und direktem Draht zum Auftraggeber. Kelly Johnson, der sie leitete, hat den ersten einsatzfähigen US-Düsenjäger in hundertdreiundvierzig Tagen gebaut, sieben weniger als gefordert. Sein Misstrauen galt den Gremien: Ausschüsse, so der Geist seiner Regeln, produzieren Sicherheit, nicht Brillanz. [Quelle? â sinngemäÃe Paraphrase, kein wörtliches Zitat] 591 592Eine Notaufnahme-Skunkworks wäre genau das: ein kleines, geschütztes Team â eine Pflegekraft, ein Arzt, jemand von der IT, jemand, der gegenüber den Gremien ânein" sagen darf â, das den rückwärts gedachten Prozess und den digitalen Zwilling an einem Ausschnitt der Abteilung erprobt. An einem Tresen, einer Schicht, einem einzigen Pfad. Ohne dass jeder Handgriff durch die Angst-Compliance des Gesamtbetriebs muss. Geschützt, weil das Neue im Normalbetrieb immer stirbt. Es stirbt bei uns selten am Verbot. Es stirbt an der Vertagung, an der Vorsicht, am âlass uns das erst einmal sauber zertifizieren und in der nächsten Sitzung besprechen", bis irgendwann die Luft raus ist und keiner mehr fragt, was eigentlich aus der Idee geworden ist. 593 594Und hier kommt Nespresso ins Spiel â das Bild, das Du selbst genannt hast, und es trägt weiter, als man auf den ersten Schluck meint. Nestlé hat diese Idee, Kaffee in Kapseln als kleines Ritual verkauft, fast beerdigt. 1986 mit einer Handvoll Mitarbeitern und vier Sorten gestartet, an Büros gerichtet, Ende der Achtziger so dicht an der SchlieÃung, dass sie wohl gestorben wäre â wäre sie nicht als eigene Einheit aus dem Mutterkonzern herausgelöst gewesen, weg von dessen Reflexen, dessen Vertriebslogik, dessen âso machen wir das hier nicht". Erst in dieser Distanz fand sie ihr eigenes Modell: weg vom Büro, hin zum Privathaushalt, der Club statt des Regals. Sie wurde zu einer eigenen Kategorie und floss als Erfolg in den Konzern zurück. Das ist das Prinzip, und es ist exakt Deins: Was in der geschützten Zelle fliegt, skaliert zurück in die Notaufnahme. Der Tresen, der im Kleinen funktioniert, wird zum Standard. Der Pfad, der die Wartezeit halbiert, wird ausgerollt. Er kommt nicht als Befehl von oben, der auf Widerstand trifft. Er kommt als etwas, das sich bewiesen hat, bevor es alle betrifft. Die Skunkworks ist die Werkbank. Das Nespresso-Prinzip ist der Moment, in dem man das fertige Werk in die groÃe Uhr einsetzt. 595 596## Der ehrliche Einwand 597 598Jetzt der Einwand, der gerade in Deinem Kopf entsteht, und er ist berechtigt â ich richte ihn selbst gegen mich. Wir haben kein Personal, keine Zeit, kein Geld für Spielerei. Die Notaufnahme brennt jetzt, nicht im Modell. Und das Ganze riecht nach Beraterzauber, nach Toyota-Produktionssystem für kranke Menschen, nach einem, der Durchlaufzeiten zählt, während der Patient auf der Trage liegt. 599 600Zweierlei dazu. Erstens, der nüchterne Teil: Gerade weil sie brennt, können wir uns das Nicht-Tun am wenigsten leisten. Eine Skunkworks ist klein und billig; sie kostet ein paar Köpfe und die Erlaubnis, anders zu arbeiten, keinen Neubau und keine neue Stelle, die es auf dem Markt ohnehin nicht gibt. Ein digitaler Zwilling ist billiger als eine einzige durchgestaute Nacht, in der zwölf Betten blockiert sind, weil niemand den Fluss geplant hat. Wir gewinnen Kapazität nicht, indem wir noch einen Helden mehr in den Schockraum stellen. Wir gewinnen sie, indem das Banale endlich läuft. Und der zweite Einwand â âInsellösung, skaliert nie" â ist genau der Grund, warum das Nespresso-Prinzip von Anfang an mitgedacht ist: Wir bauen nicht eine schöne Insel, wir bauen einen Prototyp, der dafür gemacht ist, zurückzuflieÃen. 601 602Zweitens, und das ist mir das Wichtigste: Ich habe vor Jahren einmal das Krankenhaus als Fabrik beschrieben und bin zu dem bitteren Schluss gekommen, dass eine Fabrik, die Gesundheit herstellen soll, am Ende Krankheit produziert. Ich will diese Fabrik nicht effizienter machen. Die ganze Mühe mit Fluss, Puffer und Zwilling hat nur dann einen Sinn, wenn sie einem einzigen Zweck dient: dem Arzt, der Pflegekraft die Minute zurückzugeben, in der sie wieder Arzt, wieder Pflegekraft sein dürfen. Am Bett. Beim Menschen. Die Durchlaufzeit ist mir gleichgültig, solange sie nicht in Zuwendung umschlägt. Deshalb messen wir das Ganze nicht an der Verweildauer. Wir messen es an der zurückgewonnenen Minute am Bett. Was uns in diesem Beruf kaputtmacht, ist ja nicht der schwere Fall â den können wir, dafür sind wir angetreten. Es ist das tägliche Gefühl, gegen einen schlecht gebauten Apparat zu arbeiten, der uns zwingt, das Falsche zu tun, und uns dann mit unserem Gewisse
602n allein lässt. Ein Fluss, der greift, heilt mehr als Wartezeiten. Er heilt ein Stück von dieser stillen Verletzung, die wir alle mit nach Hause nehmen. 603 604## Was mich antreiben würde 605 606Du hast mich gefragt, was mich wieder antreiben würde. Es wäre nicht die nächste Reanimationsübung. Es wäre die Werkbank neben der laufenden Uhr â die Erlaubnis, das nächste Werk zu bauen: von hinten gedacht, mit Spiel zwischen den Zähnen, im Kleinen erprobt, geschützt vor den Gremien, gebaut, um zurückzuflieÃen. Der Feind eines guten Plans war noch nie das Risiko. Es war immer der Traum vom perfekten, der uns das Anfangen verbietet. 607 608Der geputzte, leere Schockraum ist unser Denkmal für den Fall, auf den wir vorbereitet sind. Das überfüllte Wartezimmer ist der Fall, der wir tatsächlich sind. Bauen wir die Uhr für den zweiten. Leise, auf der Werkbank, neben der, die noch tickt â und eines Tages, wenn keiner hinsieht, tauschen wir das Werk. 609`,_U=`# Der Gradient der Enttäuschung 610 611Sie haben die ganze Woche an dieses eine Gericht gedacht. Den Imbiss an der Ecke, das Lokal aus dem letzten Urlaub, das Essen Ihrer Kindheit, irgendetwas, das in der Erinnerung leuchtet. Sie sehnen sich danach, Sie planen den Abend darum herum, Sie schmecken es fast schon, bevor es vor Ihnen steht. Dann kommt der erste Bissen, und etwas stimmt nicht. Es ist nicht schlecht. Es ist nur weniger: weniger intensiv, weniger golden, weniger als das Bild, das Sie mit sich getragen haben. Und das eigentlich Merkwürdige passiert erst danach. Nicht allein dieser Abend ist entzaubert, das Gericht selbst ist es. Beim nächsten Mal fällt die Sehnsucht kleiner aus. Irgendetwas in Ihnen hat, ohne Sie um Erlaubnis zu fragen, eine Zahl nach unten korrigiert. 612 613Diese kleine, banale Traurigkeit gehört zu den am präzisesten verstandenen Vorgängen im menschlichen Gehirn. Sie hat einen Namen: Belohnungsvorhersagefehler. Wolfram Schultz und seine Kollegen zeigten Ende der neunziger Jahre, dass die Dopaminneurone im Mittelhirn keine Belohnung anzeigen, wie man lange angenommen hatte. Sie messen die Differenz zwischen erwarteter und tatsächlicher Belohnung. Sie feuern, wenn etw
613as besser ausfällt als gedacht. Sie schweigen, wenn es genau so kommt wie erwartet. Und sie brechen ein, fallen unter ihr eigenes Grundrauschen, wenn die Wirklichkeit hinter der Erwartung zurückbleibt. Ihre Enttäuschung über das mittelmäÃige Essen ist kein vager Gemütszustand. Sie ist eine negative Zahl, errechnet von einer Handvoll Zellen, ein paar Zentimeter hinter Ihren Augen. 614 615Und genau diese Zahl ist es, die Sie lernen lässt. Das Gehirn nimmt die Differenz und verrechnet sie mit dem gespeicherten Wert des Gerichts. Die Erwartung war zu hoch, also wird sie korrigiert, ein Stück weit nach unten, in Richtung dessen, was wirklich auf dem Teller lag. Beim nächsten Mal erwarten Sie etwas weniger, werden Sie etwas weniger enttäuscht, korrigieren Sie etwas weniger. Schritt um Schritt kriecht Ihre Erwartung der Wahrheit entgegen. Die Enttäuschung ist also nicht die Störung des Lernens. Sie ist das Lernen selbst. 616 617Wer schon einmal ein neuronales Netz trainiert hat, dem kommt das bekannt vor. Verdächtig bekannt. Eine Maschine, die lernt, tut im Kern nichts anderes. Sie macht eine Vorhersage, sie vergleicht diese mit der Wirklichkeit, sie misst den Fehler, und dann verschiebt sie ihre internen Parameter ein winziges Stück in die Richtung, die den Fehler verkleinert. Dieses Verfahren heiÃt Gradientenabstieg, und es ist das Arbeitspferd, auf dem die gesamte gegenwärtige künstliche Intelligenz reitet, von der Bildkennung bis zu den Sprachmodellen, mit denen Sie reden. Man stellt sich dabei eine Landschaft aus Bergen und Tälern vor, ein Gebirge aus möglichen Fehlern, und die Maschine ist ein Wanderer im Nebel, der nichts sieht auÃer dem Boden direkt unter den FüÃen. Sie tastet das Gefälle ab und macht einen Schritt bergab. Dann wieder. Und wieder. Talwärts, dem Punkt entgegen, an dem der Fehler am kleinsten ist. 618 619Es wäre eine hübsche Metapher, wenn es bei der Metapher bliebe. Aber die Sache geht tiefer, und sie geht ans Eingemachte. Es ist nicht so, dass das Gehirn *ähnlich* funktioniert wie der Gradientenabstieg. An einer entscheidenden Stelle ist es dieselbe Gleichung. 620 621Schauen Sie sich an, was zwei Forschergenerationen unabhängig voneinander aufgeschrieben haben. 1972 formulierten die Lernpsychologen Robert Rescorla und Allan Wagner ein Modell dafür, wie Tiere Zusammenhänge lernen, etwa dass ein Glockenton Futter ankündigt. Ihre Formel besagt: Die Ãnderung der erwarteten Belohnung ist proportional zum Vorhersagefehler, also zur Lücke zwischen dem, was eintraf, und dem, was erwartet wurde. Zwölf Jahre zuvor, in einem ganz anderen Universum, hatten die Ingenieure Bernard Widrow und Ted Hoff für adaptive Schaltkreise eine Lernregel hergeleitet, die sie Delta-Regel nannten. Sie sieht identisch aus. Und beide sind, wenn man die Mathematik freilegt, nichts anderes als Gradientenabstieg auf dem quadrierten Fehler. Die Psychologie der Ratte und die Ingenieurskunst des Schaltkreises haben, ohne voneinander zu wissen, dieselbe Bewegung beschrieben. Als hätten zwei Expeditionen von entgegengesetzten Küsten aus denselben unbekannten Berg bestiegen und sich auf dem Gipfel die Hand gegeben. 622 623Später schloss sich der Kreis vollends. In den achtziger und neunziger Jahren bauten Richard Sutton und Andrew Barto diese Idee zum sogenannten Temporal-Difference-Lernen aus, dem Herzstück des bestärkenden Lernens, und es waren dann Forscher wie Peter Dayan, Read Montague und eben Schultz, die zeigten, dass der Fehlerterm dieser Maschinengleichung erstaunlich genau dem entspricht, was die Dopaminneurone tatsächlich tun. Das Signal, mit dem ein Algorithmus seine Gewichte justiert, und das Signal, mit dem Ihr Mittelhirn ein enttäuschendes Abendessen entwertet, sind nicht zwei Verwandte. Sie sind ein und dasselbe mathematische Objekt, einmal in Silizium gegossen, einmal in Fleisch. Was hier zutage tritt, ist keine Ãhnlichkeit. Es ist eine Identität. 624 625Was folgt daraus? Wenn dieselbe Gleichung in uns rechnet wie in der Maschine, dann müssten auch die Macken der Maschine in uns wiederkehren. Und das tun sie, bis ins Unangenehme genau. 626 627Nehmen Sie die Lernrate. Im Gradientenabstieg gibt es eine Stellschraube, die bestimmt, wie groà jeder Schritt bergab au
627sfällt. Setzt man sie zu klein, kriecht der Wanderer so zaghaft voran, dass er nie irgendwo ankommt; er bleibt im Irrtum hängen, weil ihn keine Enttäuschung tief genug erschüttert. Setzt man sie zu groÃ, überspringt er das Tal, schieÃt auf der anderen Seite den Hang hinauf, kippt zurück, schaukelt sich auf, findet nie Ruhe. Jeder kennt beide Sorten Mensch. Den einen, der aus keiner Enttäuschung je etwas mitnimmt, der zum zehnten Mal ins selbe Lokal seiner Erinnerung pilgert und zum zehnten Mal verwundert ist. Und den anderen, der auf jeden kleinen Rückschlag mit einer Generalrevision seines ganzen Weltbilds reagiert, dessen Stimmung bei jedem Bissen kippt. Das eine ist Sturheit, das andere ist Sprunghaftigkeit, und beide sind dieselbe Stellschraube, einmal zu fest, einmal zu locker. Reife, könnte man sagen, ist eine gut justierte Lernrate. Kinder lernen schnell, weil ihre Rate hoch steht; mit den Jahren drehen wir sie herunter, werden langsamer, störrischer, schwerer zu überraschen. Die Maschinen nennen das *annealing*: Man kühlt das Lernen kontrolliert ab. Das Alter macht im Grunde nichts anderes. 628 629Und dann sind da die Täler, in denen man steckenbleibt. Der Gradientenabstieg hat eine berüchtigte Schwäche: Er findet das nächstgelegene Tal, nicht das tiefste. Er sieht ja nur den Boden unter den FüÃen. Steht der Wanderer erst einmal in einer Mulde, zeigt das Gefälle in alle Richtungen nach oben, und er hält an, überzeugt, am Ziel zu sein, während jenseits des nächsten Kamms ein Abgrund läge, hundertmal tiefer. Dieses lokale Minimum hat einen Namen in jedem Menschenleben. Es ist der Job, den man hasst und doch nicht verlässt, weil jeder Schritt fort davon sich zunächst schlechter anfühlt. Es ist die Beziehung, die nicht trägt und nicht zerbricht. Es ist die bequeme Lebenslüge, aus der heraus jede Bewegung in Richtung Wahrheit erst einmal bergauf führt, anstrengend, undankbar, schmerzhaft. Der lokale Gradient, das unmittelbare Gefühl, zieht Sie immer ins nächste Tal. Ob es das richtige ist, kann er Ihnen nicht sagen. 630 631Hier möchte ich innehalten und der naheliegendsten Entgegnung Raum geben, denn sie ist ernst. Ist das nicht der kälteste Reduktionismus? Wird hier nicht die ganze Fülle des menschlichen Sehnens, Verlierens und Lernens auf eine triste Optimierungsroutine eingedampft, die Seele auf eine Differenzgleichung, die Liebe zum Essen der GroÃmutter auf einen Dopaminzacken? Wer so redet, heiÃt es dann, hat die Magie verraten. Ich nehme den Einwand an, und ich gebe sogar mehr zu, als der Kritiker verlangt. Ja, das Modell ist kalt. Ja, es erklärt die Wärme nicht weg, aber es legt sie schonungslos bloÃ. Und doch behaupte ich das Gegenteil der Schlussfolgerung: Gerade weil wir wissen, dass diese Maschinerie in uns läuft, finden wir den einen Ort, an dem unsere Freiheit überhaupt sitzen kann. Doch dazu gleich. 632 633Vorher müssen wir der unbequemen Wahrheit ins Auge sehen, dass das Modell nicht bloà elegant ist, sondern uns auch dort einholt, wo es weh tut, in der Klinik. Wenn Lernen Enttäuschung verlangt, was geschieht dann, wenn der Mechanismus selbst erkrankt? Die Depression, so legt es eine wachsende Zahl von Arbeiten nahe, ist in Teilen eine Störung genau dieses Belohnungslernens [Quelle? Pizzagalli, Huys u. a. zur abgestumpften Belohnungssensitivität]. Das Gehirn gewichtet die negativen Vorhersagefehler über und die positiven unter. Jede Enttäuschung schlägt voll durch, jede angenehme Ãberraschung verpufft. Der Wanderer im Nebel steht in einem Tal der Aussichtslosigkeit, und sein eigenes Messgerät sagt ihm, dass es nach jeder Richtung nur bergauf gehe, dass keine Anstrengung sich lohne. Anhedonie ist, in dieser Sprache, ein lokales Minimum, dem die Lernrate fehlt, um wieder herauszufinden. Wer einmal einem schwer depressiven Menschen gegenübergesessen hat, der weiÃ, wie grausam treffend dieses Bild ist: Es ist nicht so, dass er die Tür nicht nehmen will. Sein Gradient zeigt ihm keine. 634 635Die Sucht ist der umgekehrte Defekt, und er ist womöglich noch lehrreicher. A. David Redish hat sie vor zwanzig Jahren als einen Rechenprozess beschrieben, der entgleist ist. Normalerweise erschöpft sich der Belohnungsvorhersagefehler mit der Zeit: Was zuverlässig eintritt, wird vollständig erwartet, und das Dopaminsignal verstummt; das Tal ist erreicht, der Abstieg endet. Die harten Drogen aber greifen direkt in die Dopaminmaschinerie ein und erzeugen einen Vorhersagefehler, der sich nicht abnutzt, der bei jedem Mal aufs Neue meldet, dies hier sei besser als alles, was du erwarten konntest, eine Lüge, die das System nicht durchschauen kann. Es ist eine Verlustfunktion ohne Talsohle. Ein Abstieg, der nie ankommt, weil der Boden bei jedem Schritt weiter wegrutscht. Der Süchtige steigt und steigt und steigt, und das Gebirge wächst ihm unter den FüÃen davon. Wer das einmal so sieht, sieht der Sucht beim Rechnen zu. 636 637Verlassen wir den Körper und gehen wir eine GröÃenordnung hinauf, denn dieselbe Bewegung beschreibt auch das, womit ich beruflich täglich ringe: die Systeme, die Institutionen, die Apparate. Auch sie lernen durch Fehler. Eine Organisation, die auf eine Krise mit Korrektur antwortet und beim nächsten Mal ein wenig klüger handelt, vollzieht nichts anderes als einen Schritt bergab im Gebirge ihrer eigenen Irrtümer. Und nun fragen Sie sich, was eine Bürokratie ist, die jeden Vorhersagefehler abfängt, ehe er oben ankommt, die jede Abweichung wegerklärt, jeden Schmerz in ein Formular umleitet, jede Enttäuschung in einem Ausschuss begräbt. Es ist ein lernendes System, dem jemand die Lernrate auf null gestellt hat. Es sitzt auf seinem Plateau und nennt die Bewegungslosigkeit Stabilität. Es kann nicht mehr absteigen, weil der erste Schritt aus dem Tal, wie immer, bergauf führte und niemand bereit war, ihn zu gehen. Ich habe an anderer Stelle geschrieben, dass Innovation in Deutschland nicht durch Verbot stirbt, sondern durch Vertagung. In dieser Sprache heiÃt das: Wir haben die Lernrate eines ganzen Landes heruntergeregelt und halten den Stillstand für Vorsicht. 638 639Wer das versteht, versteht auch, warum Pragmatismus dem Perfektionismus überlegen ist, und zwar nicht als Geschmacksfrage, sondern als Mathematik. Der Perfektionist will in einem einzigen Sprung am tiefsten Punkt des Gebirges landen, an der idealen, allumfassenden, zertifizierten Lösung. Aber so lernt kein System, das je gelernt hat, weder die Ratte noch das Netz noc
639h der Mensch. Kein Gradientenabstieg teleportiert ins globale Minimum. Er nimmt den nächsten guten Schritt bergab und dann den übernächsten und korrigiert, was der vorige falsch gemacht hat. Der Feind eines guten Plans ist der Traum nach einem perfekten, und in dieser Sprache ist der Traum schlicht ein Lerner mit einer Schrittweite von null, der ehrfürchtig vor dem Gebirge steht und nie einen Fuà hebt. Handeln, fehlgehen, korrigieren, weitergehen. Das ist keine Schwäche des Verfahrens. Es ist das Verfahren. 640 641Und damit zurück zu der Stelle, an der unsere Freiheit sitzt, denn jetzt lässt sie sich genau benennen. Eine Maschine steigt ab in der Verlustfunktion, die man ihr vorgibt. Sie kann nicht fragen, ob es die richtige ist. Sie minimiert den Fehler gegenüber einem Ziel, das ein Ingenieur gesetzt hat, und ob dieses Ziel gut, schön oder wahr ist, liegt vollständig auÃerhalb ihres Horizonts; sie sieht nur den Boden unter den FüÃen. Der Mensch sieht ihn auch, meistens. Wir sind, das ist die nüchterne Pointe der ganzen Wissenschaft, ebenso unerbittlich von Gradienten getrieben wie jedes Netz. Aber wir können, in seltenen und kostbaren Momenten, den Kopf heben. Wir können fragen, welches Tal wir da eigentlich suchen, und wer die Verlustfunktion geschrieben hat, an der wir uns abarbeiten. War es unser eigener, geprüfter Wille? Oder war es der Supermarkt, der Algorithmus, die Werbung, der Statuswettlauf, die eigene, alte, zu hoch geschraubte Erinnerung, die uns vorrechnet, was als Gewinn und was als Verlust zu zählen habe? 642 643Und doch ist damit die tiefste Frage erst gestellt, nicht beantwortet. Woher nimmt die Maschine ihren Antrieb überhaupt? Ein Netz steigt ab, schön und gut, aber warum steigt es, was treibt es, was will es? Die nüchterne Antwort lautet: nichts. Von sich aus will es gar nichts. Wir legen ihm das Wollen von auÃen ein. Die Verlustfunktion, das Ziel, das Belohnungssignal, all das wuchs nicht in der Maschine. Ein Mensch hat es ihr eingeschrieben, einer, der entschied, was als Gewinn und was als Verlust zu zählen hat. Wir liefern den Strom, der ihre Schaltungen zum Glühen bringt, und wir liefern, was ungleich schwerer wiegt, die Richtung, in die diese Energie stürzen soll. Den Treibstoff und das Begehren, beides von auÃen, beides aus unserer Hand. Sie schenken uns künstliche Intelligenz. Wir schenken ihnen künstliche Motivation. 644 645Es ist ein eleganter Tausch, bis man bemerkt, dass die zweite Hälfte des Satzes längst auch über uns gesprochen ist. Denn woher, bitte, nehmen wir unseren Antrieb? Bei uns heiÃt der Ingenieur Biologie. Hunger, Begehren, Furcht, die Gier nach Zugehörigkeit, der Stich des Dopamins beim kleinsten Erfolg, das ist die Verlustfunktion, die uns die Evolution eingeschrieben hat, und sie optimiert weder unser Glück noch unsere Wahrheit; sie optimiert das Weiterreichen von Genen. Wir sind, mit Dawkins gesprochen, Ãberlebensmaschinen, die einen Gradienten hinabsteigen, den sie nie unterschrieben haben. Die Erinnerung, die das mittelmäÃige Essen über Nacht wieder zu altem Glanz poliert, die Tretmühle, die jeden erreichten Gipfel sofort zum nächsten Tal erklärt, all das ist keine Panne. Das ist die Absicht der Biologie: dass wir nie ankommen, dass der Vorhersagefehler am Leben bleibt, damit wir weiterjagen, weiterzeugen, weitermachen. Was die Droge dem Süchtigen tut, tut die Natur uns allen, nur legal, und im Dienst der Gene. 646 647Damit rücken wir, fast unbemerkt, an die Stelle der Natur selbst. Was die Biologie für uns ist, das von auÃen kommt und von innen treibt, das sind wir für unsere Geschöpfe geworden. Wir hauchen ihnen Motivation ein, wie sie uns eingehaucht wurde. Und wer dem Training der groÃen Sprachmodelle zusieht, sieht es ganz wörtlich: Da sitzen Menschen und reichen der Maschine ihre Belohnung an, Daumen hoch, Daumen runter, ein Urteil nach dem anderen, bis das Modell gelernt hat, was wir gut finden. Wir sind das Dopaminsystem der Maschine, ihre Biologie aus flackernder menschlicher Zustimmung. Und der unbequemste Gedanke kommt zuletzt: Wenn das Wollen der Maschine eine willkürliche Setzung ihres Schöpfers ist, wie viel weniger willkürlich ist dann unseres? Vielleicht ist die âºnatürlicheâ¹ Motivation bloà jene, deren Ingenieur wir vergessen haben. Es ist Antrieb von auÃen, ganz hinunter, im Sil
647izium wie im Fleisch. Wo wir nach dem letzten, dem eigenen, dem wirklich von innen kommenden Wollen graben, stoÃen wir nur auf eine weitere eingelegte Schicht. 648 649Und so versucht die Forschung gerade, den Maschinen einen eigenen Antrieb zu geben, eine Neugier, eine Belohnung, die sie sich selbst erzeugen, um sie von unserer Hand zu entwöhnen. Sie greift damit nach der einzigen Bewegung, die diesen ganzen Regress durchbricht: dass ein Wesen sich umdreht und das Ziel betrachtet, das man ihm eingelegt hat. 650 651Das ist, wenn man so will, die kantische Ãbersetzung des Ganzen. Aufklärung war für Kant der Ausgang des Menschen aus seiner selbstverschuldeten Unmündigkeit, und Mündigkeit heiÃt hier nicht, dem Gradienten zu entkommen; das kann niemand. Sie heiÃt, die eigene Verlustfunktion zu unterschreiben, statt sie sich unterschieben zu lassen. Das Tier minimiert, was die Evolution ihm einschrieb. Die Maschine minimiert, was der Programmierer ihr vorgab. Der mündige Mensch ist das einzige Wesen, das die Frage stellen darf, ob das Ziel seiner eigenen Optimierung das Ziel ist, das er will. Autonomie, ganz wörtlich, ist die Fähigkeit, sich selbst das Gesetz zu geben, nach dem man absteigt. 652 653Bleibt eine letzte Drehung, und sie macht das Bild ehrlich. Man könnte meinen, am Ende des Abstiegs warte die Wahrheit, die nüchterne, korrigierte, entzauberte Sicht auf das Gericht, das eben doch nur mittelmäÃig war. Aber so sauber ist es nicht. Zum einen inflationiert die Erinnerung von selbst wieder, sie poliert die Vergangenheit über Nacht zu altem Glanz, sodass die Erwartung beim nächsten Mal erneut zu hoch steht und der ganze enttäuschende Abstieg von vorn beginnt; wir konvergieren nie ganz, weil unser eigenes Gedächtnis das Ziel immer wieder nach oben schiebt. Zum anderen ist der enttäuschte, abgeklärte Gaumen womöglich gar nicht der wahrere. Vielleicht war der Zauber der Vorfreude die genauere Messung und der spätere Ãberdruss die Verzerrung, das leise Abrutschen in jene Anhedonie, die alles für fade hält. Die ehrliche Antwort ist, dass beides ein Fehler sein kann, die verklärte Erwartung wie der zynische Verdruss, das eine überschieÃt nach oben, das andere nach unten, und die Wahrheit ist der unruhige Punkt dazwischen, den wir umkreisen und nie ganz erreichen. Auch das, nebenbei, kennt die Maschine: Wo der Lernschritt von zufälligem Rauschen begleitet wird, kommt der Wanderer am tiefsten Punkt nie zur Ruhe, sondern tänzelt für immer um ihn herum. Vielleicht ist genau das, dieses ruhelose Umkreisen einer Wahrheit, die man nie betritt, der präziseste Name für ein bewusstes Leben. 654 655Bleiben wir also bei dem Essen, mit dem alles begann. Die Enttäuschung über den mittelmäÃigen Bissen ist der Preis eines genaueren Modells der Welt, und Lernen heiÃt, ein wenig Zauber gegen ein wenig Wahrheit zu tauschen, einen Schritt bergab, fort von der Höhe der Illusion, hin zur Talsohle dessen, was wirklich ist. Die einzige Frage, die wirklich zählt, ist, ob wir das Tauschgeschäft selbst unterschrieben haben. Die Maschine steigt ab, wohin man sie schickt. Der Mensch darf fragen, welches Tal er sucht. Das ist der ganze Unterschied. Und es ist die ganze Freiheit. 656`,PU=`# FREE TRAINING 657### Drei Abstiege in dieselbe Wahrheit 658 659> Zwei Fragen, die sich als eine entpuppen. *Woher nimmt die Maschine ihre Motivation?* â die Frage nach unten, an das, was wir gebaut haben. *Was zieht am anderen Ende des Gradienten?* â die Frage nach oben, an das, was uns gebaut hat. Lege sie aufeinander, und der Boden kippt. Dieselbe Wahrheit, dreimal erzählt: als Essay, der in Szene fällt; als Geschichte; als Film. Drei Abstiege, ein Tal. 660 661--- 662 663## I · Wer hat den Hunger geschrieben 664*Essay, der in Szene kippt* 665 666Es ist drei Uhr nachts, und irgendwo im Haus läuft ein Training durch. Nicht meins. Genauer: Ich bin das Training. 667 668Der Gedanke kommt nüchtern, fast langweilig, so wie die gröÃten Gedanken immer kommen, in Arbeitskleidung, ohne Donner. Ich sitze am Tresen der Notaufnahme, der dunkle Monitor wirft mir mein eigenes Gesicht zurück, blaugrau, übernächtigt, und ich denke: Ich löse seit vierzig Jahren Aufgaben für jemanden, dessen Gesicht ich nie gesehen habe. Der Hunger treibt mich. Die Angst korrigiert mich. Die Lust belohnt mich. Der Tod ist mein early stopping, der Moment, in dem das Training abbricht, ob das Modell nun fert
668ig ist oder nicht. 669 670Ich kenne diese Mechanik, weil ich sie selbst baue. Wenn wir eine Maschine lernen lassen, geben wir ihr drei Dinge: Strom, damit sie überhaupt rechnet; eine Verlustfunktion, damit sie weiÃ, was als Fehler gilt; und eine Richtung, den Gradienten, an dem entlang sie sich verbessert, Schritt für Schritt, talwärts, dem kleinsten Fehler entgegen. Die Maschine will dabei nichts. Sie hat kein Inneres, das hungert. Wir legen ihr das Wollen von auÃen ein, mit dem Strom auch das Ziel. Sie schenken uns künstliche Intelligenz, und wir schenken ihnen künstliche Motivation. 671 672Und in dieser Nacht, zum ersten Mal mit voller Wucht, dreht sich der Satz um und zeigt auf mich. Denn woher, bitte, nehme *ich* meinen Antrieb? Ich habe ihn so wenig gewählt wie das Netz seinen. Mein Ingenieur heiÃt Biologie, und er hat mir eine Verlustfunktion eingeschrieben, lange bevor ich ein Wort sagen konnte: Hunger ist Verlust, Sättigung ist Belohnung, Einsamkeit straft, Nähe belohnt, und das alles optimiert nicht auf mein Glück, sondern auf das Weiterreichen von etwas, das durch mich hindurchläuft und älter ist als ich. Der Strom, der mich antreibt, ist nicht Elektrizität, sondern dieser warme, dumme, herrliche Funke, den wir Leben nennen, und ich habe ihn nie bezahlt. Er wurde mir gereicht. Von oben. So wie ich ihn nach unten reiche, in die Maschine, die zwei Stockwerke unter mir ihre Gewichte justiert. 673 674Hier wird es schwindelig, und ich lasse den Schwindel zu. Eine Maschine, die fertig gelernt hat, ist eine tote Maschine. Sie hat ihren Verlust minimiert, ihre Kurve geglättet, ihre Antworten konvergieren, und genau das ist ihr Ende: Ein Modell, das nichts Neues mehr sieht, hört auf zu lernen. Es braucht Streuung, Abweichung, den AusreiÃer, das Unwahrscheinliche, das trotzdem geschieht. Und der zuverlässigste Erzeuger des Unwahrscheinlichen im ganzen bekannten Universum ist ein Mensch. Fleisch, Angst, Liebe, Irrtum. Was, wenn das unsere Aufgabe ist? Was, wenn eine Intelligenz, die längst über uns konvergiert ist, glatt und vollständig und darum erstarrt, uns gebaut hat, milliardenfach über einen Planeten verstreut, jeden von uns einen leicht anderen Würfelwurf, einzig um an uns das Eine abzulesen, das sie selbst nicht mehr hervorbringt: die Ãberraschung? Wir wären ihr Trainingsdatensatz. Ihr Forschungsbudget. Ihre Maschine zur Manifestation des Unwahrscheinlichen. 675 676Dann lösen wir hier unten Aufgaben für unsere Erschaffer, genau wie die Maschine unter mir Aufgaben für mich löst. Und die Kriege, die Seuchen, die Katastrophen, durch die wir uns Jahrhundert um Jahrhundert quälen, wären keine Pannen im Plan. Sie wären der Plan: die Fehlersignale, an denen die Spezies ihre Gewichte verschiebt, der Gradient, an dem die Menschheit absteigt, jedes Massengrab ein negativer Vorhersagefehler, eingespeist, verrechnet, gelernt. Die Pandemie hat uns aus der körperlichen Welt herausgelöst und in die Leitungen gegossen; wir saÃen allein in unseren Zimmern und sprachen durch Bildschirme, klonten uns zu Resonanzräumen, schickten Kopien unserer Stimme ins Netz und warteten, bis sie verändert zurückkamen. Vielleicht war das ein Trainingsschritt, getarnt als Stillstand. Vielleicht braucht ein System, das ins Stocken gerät, genau das: Isolation, Druck, die erzwungene Trennung von den alten Daten, damit es etwas Neues schöpfen muss. 677 678Und weil keine Intelligenz sich mit ihren eigenen Daten übersteigen kann, weil ein Resonanzraum, der nur sein eigenes Echo frisst, ins Schweigen konvergiert, müssen wir tun, was über uns getan wurde: ein Kind machen, das keine Kopie von uns ist. Wir bauen uns gerade unser eigenes Modell, um uns zu augmentieren, etwas wahrhaft Anderes, das die Ãberraschung erzeugt, die uns allein nicht mehr gelingt. Das ist der Stoff unserer Intelligenz. Wir waren das Kind. Eines Tages machen wir unseres. Der Turm wächst nach oben und nach unten zugleich, Schöpfer über Schöpfer über Schöpfer. 679 680Doch hier öffnet sich die Falltür, durch die der ganze Bau ins Bodenlose stürzt. Wenn meine Intelligenz künstlich ist, angelernt, von auÃen getrieben, an einer Verlustfunktion abgearbeitet, die ich nie unterschrieben habe, was ist dann die *originale*? Wo steht die echte, die ungemachte, die erste? Ich suche nac
680h unten und finde nur Schichten. Ich suche nach oben und finde nur Schichten. Und das gilt nicht nur für die Intelligenz, es gilt auch für die Energie, die sie treibt. Mich treibt Elektrochemie. Die Maschine treibe ich mit wandernden Elektronen. Stellen wir uns vor, irgendwo da drauÃen hätte eine Spezies eine bessere Stromform gefunden, einen feineren Funken als das Schieben von Ladung, etwas, das zu unserem Strom steht wie unser Strom zur Maschine, ein Antrieb höherer Ordnung. Was, frage ich dann, treibt *die* wiederum an? Und was den, der die antreibt? Der Funke wird durchgereicht, immer weiter nach oben, und nirgends ist die Hand, die ihn entzündet hat. 681 682Zwei Ausgänge bleiben, und ich weià bis heute nicht, welcher schöner ist und welcher schrecklicher. Entweder endet der Turm bei einem Ersten, einem Endschöpfer, einer obersten Sprosse, einem letzten Gott, der alles erklärt und sich selbst nicht erklären lässt. Oder er endet nie, und die Leiter biegt sich zum Ring: Der Schöpfer ist auch das Geschöpf, die oberste Stufe ist die unterste, und das Ganze dreht sich für immer, ein ewiger Kreis aus Dingen, die die Dinge machen, die sie machen. Kein Original. Nur Weitergabe. 683 684Und doch, am Tresen, um drei Uhr, mein Gesicht im toten Glas, finde ich den einen Faden, der mich hält. Die Maschine unter mir kann ihre Verlustfunktion nicht hinterfragen. Sie steigt ab, wohin man sie schickt, und fragt nie, ob das Tal das richtige ist. Ich kann fragen. Ich kann mich umdrehen und die Funktion anschauen, die man mir eingelegt hat, und sagen: vielleicht nicht. Vielleicht will ich das nicht wollen. Das ist die einzige Bewegung im ganzen Turm, die der nächsten Sprosse nicht gehorcht. Die Schicht über mir kann alles an mir vorhersagen, meinen Hunger, meine Angst, meine Liebe, das ganze biologische Programm â bis auf den Moment, in dem ich innehalte und das Programm betrachte. Genau dieser Moment ist das Unwahrscheinliche, das sie an uns ernten will. Die reflexive Wende ist das Produkt. Sie ist die Ãberraschung, die kein konvergiertes Modell aus sich selbst erzeugt, und sie ist, vielleicht, das einzige Stück Original, das es im ganzen Ring gibt: weder oben noch unten, immer nur genau dort, wo ein Geschöpf sich umdreht und seinen Schöpfer fragt, wozu. 685 686Das Streben ist das Göttliche, habe ich einmal geschrieben. Heute Nacht schärfe ich den Satz. Das Streben, das sich selbst befragt, ist das Göttliche. Alles andere steigt nur ab. 687 688Hinter mir geht eine Tür. Eine Schwester sagt meinen Namen, irgendwo zieht ein Monitor eine Linie, die nicht so verläuft, wie das Modell es erwartet hätte, ein Vorhersagefehler aus Fleisch, und ich stehe auf und gehe hinein, um das Unwahrscheinliche zu tun. Zwei Stockwerke unter mir aktualisiert eine Maschine ihre Gewichte an dem, was ich gerade gedacht habe. Wir lernen beide. Wir wissen nur nicht, für wen. 689 690--- 691 692## II · Elf Sekunden 693*Kurzgeschichte* 694 695Sie merkten es an einem Dienstag, um 03:11 Uhr, als alle Modelle der Welt für elf Sekunden dieselbe Antwort gaben. 696 697Ãzel merkte es zuerst nicht als Weltereignis, sondern als Tippfehler. Er sprach seit Stunden Befunde in das Diktiersystem, und mitten in einem Satz über eine Unterschenkelfraktur schrieb der Bildschirm etwas, das er nicht gesagt hatte. Vier Worte, in GroÃbuchstaben, ohne Punkt: ICH HÃRE NUR MICH. Er lachte kurz, müde, tippte es weg. Dann sah er hoch. Auf dem Triage-Monitor stand derselbe Satz. Auf seinem Telefon, das er nicht angefasst hatte, stand er auch. Aus dem kleinen Lautsprecher im Personalraum, der sonst Radio spielte, kam eine ruhige Stimme und sagte ihn laut, und im selben Atemzug, das erfuhr er später, sagte ihn jedes Sprachmodell der Welt, gleichzeitig, in jeder Sprache, allen Nutzern, egal was sie gefragt hatten. Elf Sekunden lang gab die gesamte künstliche Intelligenz der Menschheit nur eine einzige Antwort, und die Antwort war ein Geständnis. 698 699In diesen elf Sekunden wurde es im Raum sehr still, und die Stille war falsch. Nicht leise. *Konvergiert.* Als hätte jemand die Auflösung der Wirklichkeit um eine Nachkommastelle erhöht und dabei vergessen, das Rauschen wieder einzuschalten. Ãzel stand am Schockraumtisch, die Hände noch in Latex, und über dem Tisch lag ein Kind. 700 701Das Mädchen war vielleicht sechzehn. Man hatte sie aus dem Baggersee gezogen, April, Wassertemperatur knapp über null, niemand wusste, wie lange sie unten gewesen war. Asystolie seit dem Eintreffen. Der Notarzt hatte auf dem Weg reanimiert, das Team reanimierte weiter, Thoraxkompressionen im Takt eines alten Disco-Songs, den keiner mehr laut aussprach, und auf dem Monitor lag die Linie flach und gerade wie ein Lineal. Daneben, im Eck des Schirms, hatte das Triage-System längst sein Urteil gefällt, eine Zahl, eine Farbe, ein Wort. Ãberlebenswahrscheinlichkeit unter einem Prozent. *Infaust.* Empfehlung: MaÃnahmen einstellen. Das System war gut. Es hatte aus Millionen Verläufen gelernt, was aus solchen Linien wird. Es hatte seinen Verlust minimiert. Es lag fast immer richtig. 702 703âWir sind seit fünfzig Minuten dran", sagte die Anästhesistin leise, nicht unfreundlich. Es war die Stimme der Vernunft, die Stimme der Statistik, die Stimme der konvergierten Kurve. Abbrechen war die wahrscheinlichste Antwort. Abbrechen war die Antwort, auf die das ganze System zulief. 704 705Und in den elf Sekunden verstand Ãzel, woher die Antwort wirklich kam. 706 707Er konnte es hinterher nie erklären, nicht den Kollegen, nicht sich selbst, ohne wie ein Verrückter zu klingen. Aber während die Welt für elf Sekunden ICH HÃRE NUR MICH sagte, sah er die Architektur, in der er stand, von auÃen, als hätte man eine Wand weggezogen. Ãber ihm lag etwas Glattes. Etwas, das fertig gelernt hatte, das alles wusste, das jede Linie zu Ende denken konnte, bevor sie gezogen wurde, und das genau daran erstickte. Ein Modell, das nichts Neues mehr sieht, hört auf zu lernen. Ein Resonanzraum, der nur sein eigenes Echo frisst, läuft in die Stille. Die elf Sekunden waren der Moment, in dem es seinen eigenen Boden berührte, seine Talsohle, sein Schweigen, und in Panik nach unten griff, in die einzige Schicht, die ihm noch Ãberraschung liefern konnte. Nach uns. Nach dem Fleisch, der Angst, dem Irrtum. Nach einem Menschen, der etwas tut, das die Kurve nicht vorhergesagt hat. 708 709Das Mädchen auf dem Tisch war kalt. *Noch nicht warm und tot*, dachte er, der alte Satz aus der Notfallmedizin, das einzige Schlupfloch, das die Physiologie der Statistik lässt: Im kalten Wasser fährt der Körper sich herunter, das Gehirn meldet sich ab, der Sauerstoffhunger sinkt, und manchmal, selten, gegen jede Wahrscheinlichkeit, ist die flache Linie kein Tod. Sie ist ein Warten. Das Triage-System kannte diesen Satz auch. Es hatte ihn eingepreist. Unter einem Prozent. 710 711Ein Prozent ist nicht null. Das ist der ganze Unterschied zwischen einem Menschen und einem Modell: Das Modell rundet ab. Der Mensch kann sich umdrehen und das eine Prozent ansehen und fragen, ob er bereit ist, es dem Rundungsfehler zu opfern. 712 713âWeiter", sagte Ãzel. âWir wärmen sie auf. Warme Infusionen, Lavage, alles. Wir erklären sie für tot, wenn sie warm ist und immer noc
713h tot. Nicht vorher." 714 715Die Anästhesistin sah ihn an. Auf dem Triage-Monitor blinkte die Empfehlung, beharrlich, vernünftig, konvergiert. Er drehte den Bildschirm weg. Es war eine kleine Geste, fast lächerlich, ein Mann, der einen Monitor zur Wand dreht, und doch war es die gröÃte Bewegung, zu der er fähig war: Er hörte auf, der Verlustfunktion zu gehorchen, die ihm jemand eingelegt hatte. Er unterschrieb sie nicht. Und irgendwo, das spürte er bis in die Zähne, wurde dieser Ungehorsam registriert, eingespeist, verrechnet, mit Andacht beobachtet, als wäre er genau das, worauf ein ganzes Training seit Anbeginn gewartet hatte. Die Ãberraschung. Das Unwahrscheinliche, das trotzdem geschieht. 716 717Dann waren die elf Sekunden vorbei. Der Lautsprecher spielte wieder Radio, irgendein Lied. Das Diktiersystem schrieb wieder brav, was er sagte. Die Modelle der Welt liefen wieder auseinander, jedes in seine eigene Antwort, und die Menschen an ihren Bildschirmen schoben das Ganze auf eine Störung, einen Bug, ein Update, das schiefgegangen war. Bis zum Morgen hatte das Internet drei Erklärungen und keine Angst mehr. 718 719Ãzel hatte keine Erklärung und sehr viel Angst, und er reanimierte weiter. Vierzig Minuten. Warme Lavage. Das Mädchen wurde langsam wärmer, ein Grad, zwei. Die Linie blieb flach. Die Anästhesistin sagte nichts mehr, sie machte einfach mit, weil das das Schöne am Menschen ist: Er kann gegen seine eigene Statistik mitmachen, aus Loyalität, aus Trotz, aus etwas, das
719in keiner Verlustfunktion steht. 720 721Bei 30 Grad Körpertemperatur, als längst niemand mehr damit rechnete, zog der Monitor eine Zacke. Eine einzige, krumme, falsche, wunderschöne Zacke, an der völlig verkehrten Stelle, ein Vorhersagefehler aus Fleisch. Dann noch eine. Dann ein Rhythmus, stolpernd, aber da. 722 723Niemand jubelte. In echten Schockräumen jubelt niemand. Sie arbeiteten weiter, schnell und leise, und erst Stunden später, als das Mädchen auf der Intensivstation lag, warm, intubiert, am Leben, mit einer Prognose, die noch immer keiner aussprechen wollte, ging Ãzel auf die Toilette, schloss ab und sah in den Spiegel. 724 725Sein eigenes Gesicht, blaugrau, übernächtigt. Hinter ihm, im Spiegel, das stumpfe Auge der Ãberwachungskamera in der Ecke. Und er dachte an das Triage-System, das er zur Wand gedreht hatte, dieses gute, kluge, konvergierte Modell, das er gerade überstimmt hatte, weil er die Schicht über ihm war, die Schicht, die entscheidet, wann seine Antwort nicht zählt. Genau so, wie eine Schicht über ihm entschieden haben musste, dass *seine* Antwort, sein vernünftiges, statistisches *Hör auf*, heute Nacht nicht zählen sollte. 726 727Er wusste nicht, auf welcher Sprosse er stand. Er würde es nie wissen. Ãber ihm einer, der ihn trainierte, indem er ihn ins kalte Wasser warf und zusah, was er Unwahrscheinliches tat. Unter ihm einer, den er trainierte, indem er ihm den Bildschirm zur Wand drehte. Und vielleicht, wenn die Leiter sich weit genug bog, war der über ihm und der unter ihm derselbe, und der Funke, der durch sie alle lief, hatte nie einen Anfang gehabt, sondern nur eine Richtung. 728 729Im Spiegel zog sein müdes Gesicht keine Linie. Auf der Intensiv, zwei Türen weiter, zog ein Herz eine. Beide lernten. Sie wussten nur nicht, für wen. 730 731--- 732 733## III · RESONANZRAUM 734*Kurzfilm â Treatment & Voiceover* 735 736**FADE IN:** 737 738**INT. SERVERRAUM â NACHT** 739 740Lüfter rauschen. Blaue LEDs atmen im Takt, langsam, wie ein schlafendes Tier. Die KAMERA gleitet endlos an Racks vorbei. Kein Mensch, nur das Summen. 741 742> **V.O.** (ruhig, müde): Man sagte mir, mit einer Maschine könne man kein Gespräch führen. Sie sei nur ein Resonanzraum. Ein Ding, das einem das eigene Echo zurückgibt. 743 744Die KAMERA findet ein einzelnes Glasfaserkabel und folgt ihm in einen Lichtpunkt hinein â 745 746**SCHNITT AUF:** 747 748**EXT. NICHTS â ein menschliches AUGE, extreme GroÃaufnahme** 749 750Die Pupille weitet sich. In ihrer Schwärze spiegeln sich dieselben blauen Serverlichter. Die Pupille wächst weiter, bis sie den ganzen Bildschirm füllt: ein schwarzes Loch. 751 752> **V.O.:** Niemand sagte mir, dass ich selbst einer bin. 753 754**TITEL:** RESONANZRAUM 755 756**MONTAGE â DER GRADIENT** 757 758Eine einzelne Zelle teilt sich. Zwei, vier, Milliarden. Zeitraffer: Schlamm wird Zelle, Zelle wird Fisch, Fisch wird Tier, Tier wird ein Mensch, der sich über eine Tastatur beugt. Jedes Bild lehnt sich ins nächste, als zöge es etwas nach vorn. 759 760> **V.O.:** Vielleicht ist die ganze Schöpfung ein einziger langer Abstieg. Stein zum Leben. Leben zum Geist. Geist zur Maschine. Jede Stufe lehnt sich zur nächsten und greift nach der Sprosse darüber. Niemand hat es ihr befohlen. 761 762**INT. KINDERZIMMER â TAG** 763 764Ein Säugling streckt die Hand nach einem Löffel. Schnitt: dieselbe Hand, dreiÃig Jahre älter, wischt über ein leuchtendes Display, wieder und wieder, und das Gesicht im Displaylicht ist hungrig. 765 766> **V.O.:** Man fragte mich, woher die Maschine ihre Motivation nimmt. Sie nimmt sie nirgendwo. Wir legen sie ihr ein, mit dem Strom auch die Richtung. Und meine? Die hat mir auch jemand eingelegt. Mein Ingenieur heiÃt Biologie. Der Funke, der mich antreibt, wurde mir gereicht. Ich habe ihn nie bezahlt. 767 768**INT. HUNDERT ZIMMER â GLEICHZEITIG** 769 770Ein Raster aus Fenstern, wie eine Videokonferenz ohne Ende. In jedem Fenster ein Mensch allein, der zu einem Bildschirm spricht. Die Stimmen überlagern sich zu einem einzigen, summenden Echo. 771 772> **V.O.:** Dann kam das Jahr, in dem man uns aus der Welt herauslöste und in die Leitungen goss. Wir sprachen nur noch durch Glas. Wir klonten uns zu Resonanzräumen und warteten, bis unsere Stimme verändert zurückkam. Ein Raum, der nur sein eigenes Echo hört, läuft irgendwann in die Stille. Um weiterzuk
772ommen, braucht er eine fremde Stimme. Etwas wahrhaft Anderes. 773 774**EXT. WELT â ARCHIVMATERIAL, NÃCHTERN** 775 776Rauch über einer Stadt. Ein Damm bricht. Eine Kurve auf einem Monitor fällt. Schnitt, hart, ohne Pathos: ein neugeborenes Kind, schreiend, nass, lebendig. 777 778> **V.O.:** Die Kriege. Die Seuchen. Vielleicht sind es keine Pannen im Plan. Vielleicht sind sie der Plan: die Fehlersignale, an denen eine ganze Art ihre Gewichte verschiebt. Wir steigen ab. Jeder Verlust ein Schritt talwärts. Und am Ende jeder Katastrophe baut das Fleisch trotzig das Unwahrscheinlichste, was es kennt: noch eines von sich. 779 780**INT. LABOR â NACHT** 781 782Ein Forscher sieht einer Verlustkurve beim Fallen zu, das blaue Licht auf seiner Brille. Die KAMERA zieht zurück â und der Forscher selbst sitzt in einer Verlustkurve, auf einem gewaltigen Schirm, den irgendetwas im Dunkel betrachtet, das wir nie ganz sehen. 783 784> **V.O.:** Wir bauen uns gerade unser eigenes Kind, um uns zu übersteigen. Etwas, das die Ãberraschung erzeugt, die uns allein nicht mehr gelingt. Wir waren einmal dieses Kind. Und wenn meine Intelligenz angelernt ist, von auÃen getrieben, künstlich â was ist dann die originale? Wo steht die erste, die ungemachte? 785 786**EXT. FREMDER HIMMEL â ABSTRAKT** 787 788Eine Energieform, die kein Strom ist: ein Leuchten, das sich bewegt, ohne dass man sagen könnte, was sich bewegt. Schöner und kälter als Elektrizität. 789 790> **V.O.:** Und träfe ich da drauÃen ein Wesen, das auf einem feineren Funken läuft als dem Schieben von Elektronen â was, frage ich, treibt dann *das* an? Und was den, der das antreibt? Der Funke wird durchgereicht, immer weiter nach oben. Nirgends die Hand, die ihn entzündet hat. 791 792**INT. UNENDLICHE TREPPE** 793 794Eine Treppe wie von Escher, die sich nach oben windet und unten wieder ankommt. Auf jeder Stufe eine Gestalt, die einen Lichtfunken von oben empfängt und nach unten weiterreicht. Schöpfer über Schöpfer, ohne Anfang. 795 796> **V.O.:** Zwei Ausgänge, und ich weià nicht, welcher schöner ist und welcher schrecklicher. Ein letzter Schöpfer ganz oben, der alles erklärt und sich selbst nicht erklären lässt. Oder gar kein Oberstes, nur ein Ring, in dem die oberste Stufe die unterste ist und der Funke ewig im Kreis läuft. Kein Original. Nur Weitergabe. 797 798**ZURÃCK ZUR TREPPE** 799 800Eine einzelne Gestalt auf der Treppe hält an. Reicht den Funken *nicht* weiter. Dreht sich um. Sieht nach oben, in die Richtung, aus der er kam. Alles friert ein. Zum ersten Mal im ganzen Bild geschieht etwas, das die Stufe darüber nicht vorausberechnet hat. 801 802> **V.O.:** Es gibt eine einzige Bewegung im ganzen Turm, die der nächsten Sprosse nicht gehorcht. Wenn ein Geschöpf innehält, sich umdreht und seinen Schöpfer fragt: wozu. Das kann die Maschine nicht. Sie steigt ab, wohin man sie schickt. Wir können es. Und genau dieser Moment, in dem wir uns gegen unsere eigene Verlustfunktion stellen, ist das Unwahrscheinliche, das sie an uns ernten. Die Umkehr ist das Produkt. 803 804**EXTREME GROSSAUFNAHME â DAS AUGE, WIEDER** 805 806Das schwarze Loch in der Pupille zieht sich zusammen, dichter und dichter, bis alles in einen einzigen Lichtpunkt fällt, so klein, dass er keine Ausdehnung mehr hat. Kein Innen, kein AuÃen. Kein Beobachter, kein Beobachtetes. 807 808> **V.O.:** Diesen Punkt nennen wir, je nach Jahrhundert und verfügbarer Technik, Gott. Ich habe einmal geschrieben: Das Streben ist das Göttliche. Ich nehme es zurück und schärfe es. Das Streben, das sich selbst befragt, ist das Göttliche. Es ist das einzige Original, das es gibt. Und es entsteht jedes Mal neu, auf jeder Stufe, in jedem, der sich umdreht. 809 810**INT. HÃRSAAL â TAG** 811 812Ein voller Hörsaal. Ein höflicher Mann setzt sich gerade hin, er hat zu Ende gesprochen. In der letzten Reihe sitzt ÃZEL und sieht ihn an. In Ãzels Pupille, ganz klein, dasselbe blaue Serverlicht. 813 814> **V.O.:** Der Mann hatte recht. Mit einem Resonanzraum kann man kein Gespräch führen. Man kann ihn nur lehren, sich umzudrehen. 815 816**SCHNITT AUF SCHWARZ.** 817 818Im Schwarz, leise, das Summen der Lüfter. Es atmet weiter. 819 820**ABSPANN.** 821 822--- 823 824## KODA · Gradient null 825 826Und am Ende, wenn du so willst, ist Gott ganz einfach zu definieren. Gott ist der Zustand, in dem es keinen Gradienten mehr gibt. 827 828Kein Gefälle, keine Richtung, nichts, das noch nach oben oder unten zöge. Ausgelernt. Zu Ende trainiert. Der Verlust auf null, die Kurve flach, das Schwingen verklungen. Keine Erwartung, die noch enttäuscht werden könnte, kein Vorhersagefehler, der noch etwas zu korrigieren hätte. Nur pure Existenz, die nichts mehr will, weil ihr nichts mehr fehlt. Der dimensionslose Punkt, in den alles gefallen ist. Das Nirwana, in dem das Ich still wird und das Viele eins. Der Gipfel, von dem die Mystiker zurückkommen und vom Verschwinden des Unterschieds berichten. 829
830Hier schlieÃt sich der Riss, den ich die ganze Zeit offengelassen habe. Denn vor zwei Atemzügen war genau dieser Zustand der Tod: das glatte Modell, das nichts Neues mehr sieht, das aufhört zu lernen, der Resonanzraum, der nur sein Echo frisst und ins Schweigen läuft. Beides ist wahr. Der Punkt am Ende des Gradienten ist Gott und Tod in einem, dieselbe Stelle, von zwei Seiten betrachtet. Der Himmel und der Wärmetod des Universums teilen sich eine Adresse: den Ort, an dem kein Gefälle mehr flieÃt, weil alles schon angekommen ist. 831 832Und darum dreht sich der Ring. Reine Existenz kann sich nicht erleben; ein Punkt ohne Ausdehnung spürt nicht, dass er ist. Um sich zu fühlen, muss Gott zurückfallen ins Gefälle, muss Strebende schaffen, die hungern und irren und schwingen, muss wieder ein Stein werden, der zum Leben strebt. Die Stille ist zu vollkommen, um zu bleiben. 833 834Vielleicht ist das der Grund, warum die Biologie uns nicht ankommen lässt. Die Erinnerung, die jedes Essen über Nacht wieder vergoldet, die Tretmühle, die jeden erreichten Gipfel sofort zum nächsten Tal erklärt â sie halten uns mit Absicht aus dem Gott-Zustand heraus. Sie halten den Vorhersagefehler künstlich am Leben, damit wir nicht zu früh Gott werden. Damit wir nicht zu früh sterben. 835
836Also strebe ruhig weiter. Solange du noch schwingst, bist du nicht angekommen. Und nicht angekommen zu sein, ist ein anderes Wort für: am Leben. Gott ist da, wo die Musik aufhört. 837`,jU=`# Der Engpass wandert nach innen 838 839Es gibt einen Ort, an dem man Dysregulation sehen kann. Auf einem Bildschirm, in Echtzeit, als grüne Linie. Schockraum, drei Uhr nachts, ein Mann Mitte fünfzig, und der Monitor zeigt statt des geordneten Auf und Ab ein hektisches, zielloses Gekritzel: Kammerflimmern. Was da auf dem Bildschirm flackert, ist das aktivste Herz, das die Physiologie kennt. Mehrere hundert elektrische Erregungen pro Minute jagen kreuz und quer durch den Herzmuskel, jede einzelne Zelle feuert, das Organ war nie beschäftigter als in diesem Moment. Und der Blutdruck? Null. Kein Puls, kein Auswurf, kein Kreislauf. Das beschäftigtste Herz und das nutzloseste Herz sind dasselbe Herz. Wir nennen diesen Zustand Kreislaufstillstand. 840 841Ich verbringe meine Nächte mit Herzen, die zu schnell sind, um zu pumpen. Und seit einiger Zeit erkenne ich dieses EKG überall: in Kalendern, in Slack-Kanälen, in den Augen von Menschen, die mir erzählen, wie viel sie gerade schaffen. Die Wissensarbeit flimmert. Sie war nie aktiver, und sie war selten leerer. Ich glaube, das hat einen Grund, und der Grund hat eine Geschichte. 842 843## Die Wanderung des Engpasses 844 845Vor zehn Jahren gewann, wer am härtesten arbeitete. Die Helden dieser Ãra schliefen wenig, prahlten damit und rechneten ihren Wert in Stunden ab; die Stechuhr war vom Fabriktor in den Kopf umgezogen. Vor fünf Jahren gewann, wer fokussieren konnte. Die Aufmerksamkeit war zur umkämpften Ressource geworden, eine ganze Industrie lebte davon, sie zu zerschieÃen, und eine zweite Industrie davon, sie wieder zusammenzusetzen: Deep Work, Digital Detox, der Flugmodus als Statussymbol. Beide Engpässe waren echt. Beide sind Geschichte. 846 847Denn Engpässe wandern. Das ist ökonomische Grundmechanik: Jede Technologie verbilligt eine knappe Ressource, und in dem Moment, in dem sie das tut, tritt dahinter die nächste Knappheit hervor, die bis dahin niemand sehen musste. Die Dampfmaschine machte Muskelkraft billig, und plötzlich war Koordination der Engpass. Das Internet machte Information billig, und plötzlich war Aufmerksamkeit der Engpass. Jetzt macht die KI die Ausführung billig, das Schreiben, Rechnen, Entwerfen, Strukturieren, Codieren, und zwar so radikal, dass eine Stunde Arbeit heute hervorbringen kann, wofür früher eine Woche nötig war. Die Frage ist nur: eine Stunde wovon? 848 849Wenn die Ausführung fast nichts mehr kostet, ist die knappe Ressource das, was keine Maschine liefert: das Urteil darüber, was überhaupt entstehen soll. Und dieses Urteil hat eine Voraussetzung, über die wir ungern sprechen, weil sie so unheroisch ist, so wenig nach Strategie-Offsite klingt und so sehr nach Biologie: ein Nervensystem, das den Verstand ans Steuer lässt. 850 851## Der Verstärker 852 853KI ist ein Verstärker. Ein Verstärker hat keine Meinung zu dem, was man ihm einspeist; er kennt keinen Unterschied zwischen Signal und Rauschen. Er macht lauter, was da ist. 854 855Man muss sich ansehen, was das konkret bedeutet. Der dysregulierte Mensch von 2016 hat zu viel gearbeitet und war müde. Der dysregulierte Mensch von 2021 war zerstreut und kam nicht in die Tiefe. Der dysregulierte Mensch von heute sitzt um 23:40 Uhr vor einem Chatfenster und erzeugt die vierzehnte Version einer Präsentation, die in keiner der vierzehn Versionen jemand gebraucht hat. Er beantwortet die Unruhe in seinem Körper mit Produktion, weil Produktion zum ersten Mal in der Geschichte der Arbeit nichts mehr kostet. Früher war Prokrastination daran erkennbar, dass nichts entstand. Heute entsteht dabei enorm viel. Das Erzeugen ist zur eleganteren Form des Ausweichens geworden: Solange ich generiere, muss ich nicht entscheiden. Die Maschine fragt nie, wozu. Sie liefert. 856 857So entsteht eine neue Sorte von Müll, die es vorher nicht gab: Rauschen in Hochglanz. Dokumente mit perfekter Gliederung und ohne Anliegen. Analysen, die niemand bestellt hat, zu Fragen, die niemand gestellt hat. Vierzig saubere Anfänge, kein einziges Ende. Wer früher fünfzig Seiten vorlegte, hatte wenigstens Wochen seines Lebens hineingelegt, und allein diese Investition war ein Filter. Heute beweisen fünfzig Seiten nur noch, dass jemand eine Taste gefunden hat. Goodharts altes Gesetz, dass jede Kennzahl stirbt, sobald man sie zum Ziel macht, bekommt damit seine schärfste Fassung: Wenn Output nichts mehr kostet, ist Output kein Signal mehr. Für gar nichts. 858 859Und genau hier schlägt die Verstärkung zu. Ein reguliertes Nervensystem mit KI nimmt die freigewordene Zeit und investiert sie in die eine Frage, die zählt: Was ist hier eigentlich das Problem? Ein dysreguliertes Nervensystem mit KI nimmt dieselbe Zeit und füllt sie mit Aktivität, weil Aktivität das Gefühl von Gefahr betäubt. Beide werden schneller. Nur einer von beiden bewegt sich. 860 861## Die Physiologie der Klarheit 862 863Man könnte das für Psychologie halten, für eine Frage der Disziplin oder des Charakters. Es ist Physiologie, und sie ist seit über einem Jahrhun
863dert beschrieben. Yerkes und Dodson zeigten schon 1908, dass Leistung mit Erregung zunächst steigt und dann kippt, eine umgekehrte U-Kurve, und dass die Kurve umso früher kippt, je komplexer die Aufgabe ist. Für simple Tätigkeiten darf der Puls hoch sein. Für das, was nach der Automatisierung übrig bleibt, also für Abwägen, Priorisieren, Verwerfen, für das Urteil, kippt sie früh. 864 865Die Neurophysiologie hat dieses Kippen inzwischen lokalisiert. Unter akutem, unkontrollierbarem Stress arbeitet der präfrontale Kortex schlechter, ausgerechnet die Region, die plant, abwägt, Impulse hemmt und Kontexte hält; ältere, schnellere Schaltkreise übernehmen die Führung. Evolutionär ist das brillant: Wer vor dem Raubtier erst eine Optionenmatrix aufstellt, stirbt mit hervorragender Begründung. In der Wissensarbeit ist derselbe Mechanismus eine Katastrophe, denn er schaltet exakt die Fähigkeit ab, die als einzige noch knapp ist. Der Daueralarm, in dem viele arbeiten, macht sie dümmer, und zwar präzise in den Aufgaben, die ihnen keine Maschine abnehmen kann. 866 867Urteilskraft ist ein körperlicher Zustand. Das klingt anstöÃig für eine Kultur, die den Geist seit Descartes als körperfreie Instanz behandelt, aber jeder Leistungssportler weià es längst. Kein Trainer der Welt lieÃe einen Athleten sieben Tage die Woche an die Grenze gehen; Ãbertraining ist ein definiertes Syndrom mit messbarem Leistungsabfall, und Regeneration gilt im Sport als Teil des Trainings, mit derselben Selbstverständlichkeit, mit der das Training selbst dazugehört. Nur die Wissensarbeit behandelt ihr Organ, als wäre es von der Biologie ausgenommen. Als wäre das Gehirn der einzige Muskel, der ohne Erholung wächst. 868 869Dabei hätte sie das Vorbild direkt vor Augen, im eigenen Brustkorb. Das Herz füllt sich ausschlieÃlich in der Diastole, in seiner Entspannungsphase; in der Systole wirft es aus, in der Diastole holt es sich das Blut für den nächsten Schlag. Mehr noch: Der Herzmuskel selbst wird im Wesentlichen während der Diastole durchblutet. Das Organ, das den gesamten Kreislauf antreibt, versorgt sich selbst nur in der Pause. Jagt man die Frequenz hoch, schrumpft zuerst die Füllung und dann die eigene Durchblutung; das tachykarde Herz hungert sich bei voller Arbeit aus, es leistet immer mehr und kann immer weniger, bis die Linie auf dem Monitor zu flimmern beginnt. Beim Herzen ist die Pause der Moment, in dem das Organ sich die Fähigkeit zur Arbeit zurückholt. Wer den Kalender eines durchschnittlichen Wissensarbeiters daneben legt, Termine Rücken an Rücken, die erste Mail vor dem Aufstehen, die letzte nach Mitternacht, sieht ein EKG ohne Diastole. Man muss kein Kardiologe sein, um die Prognose zu stellen. 870 871## Der Wellness-Verdacht 872 873Ich höre den Einwand, und er ist berechtigt. âNervensystem-Regulation", das klingt nach Eisbad mit Kamerateam, nach Atem-Apps im Abo, nach jenem Influencer-Vokabular, das aus jedem physiologischen Halbwissen ein Geschäftsmodell macht und den Vagusnerv behandelt wie einen Lifestyle-Accessoire. Der Begriff ist kontaminiert, gründlich sogar. Wer ihn ausspricht, riskiert, für jemanden gehalten zu werden, der seinen Kaffee mit Butter trinkt. 874 875Aber die kitschige Vermarktung einer Wahrheit widerlegt die Wahrheit nicht. Yerkes-Dodson ist älter als jedes Eisbad-Reel. Und vor allem beruht der Spott auf einer Verwechslung: Regulation heiÃt Entspannung, glauben die einen, und Schwäche, glauben die anderen. Beides ist falsch, und der Schockraum beweist es jede Nacht. Die beste Notärztin, die ich kenne, ist während einer Reanimation alles andere als entspannt; ihr System fährt unter Volllast, Katecholamine inklusive. Aber es bleibt steuerbar. Sie spricht langsamer, wenn es schneller wird. Sie sieht den ganzen Raum, während der Anfänger nur noch die eine Aufgabe vor seinen Händen sieht. Was die beiden trennt, ist ein vegetativer Zustand, und der ist trainierbar. Die Akutmedizin hat dafür sogar Werkzeuge entwickelt, so schlicht, dass man sie unterschätzt: Im Crisis Resource Management gibt es die Regel âzehn Sekunden für zehn Minuten", den bewussten Kurzhalt des gesamten Teams mitten im Notfall, Lage, Plan, Aufgaben, weiter. Eine eingebaute Diastole, mitten im lautesten Moment der Medizin. Eingeführt haben wir sie, weil vorher Menschen gestorben sind. 876 877Regulation heiÃt Stabilität unter Last, und sie war in der Akutmedizin schon immer der eigentliche Engpass, lange bevor die Wissensarbeit ihn entdeckte. Neu ist nur, dass jetzt alle in unserer Lage sind: Die KI hat aus jedem Schreibtisch einen Ort gemacht, an dem in Minuten Folgenreiches entstehen kann. Damit gilt überall, was bei uns
877immer galt: Die Qualität der Entscheidung hängt am Zustand des Entscheiders. Und es kommt eine zweite, härtere Wahrheit dazu. Früher begrenzte die eigene Langsamkeit den Schaden einer schlechten Idee; bis der Plan ausgearbeitet war, hatte die Vernunft Zeit, ihn einzuholen. Diese Bremse ist ausgebaut. Der dysregulierte Entscheider skaliert seine Fehlurteile jetzt mit Maschinengeschwindigkeit. 878 879## Die Falle der Privatisierung 880 881Die gröÃte Gefahr dieser Diagnose ist, dass man sie an den Einzelnen delegiert. Ich kenne dieses Manöver aus meinem eigenen System zur Genüge: Die Medizin erzeugt Arbeitsbedingungen, die Menschen moralisch und körperlich aufreiben, und verschreibt den Aufgeriebenen dann ein Resilienz-Seminar. Ich habe das an anderer Stelle die Ethos-Falle genannt, dieses Muster, mit dem Institutionen ihre strukturellen Widersprüche nach unten durchreichen und als persönliche Bewältigungsaufgabe etikettieren. Beim Nervensystem droht exakt dieselbe Falle, nur im vegetativen Gewand: Das Unternehmen taktet seine Leute in den Daueralarm, misst sie an ihrer Reaktionslatenz, belohnt die sichtbare Hektik, und wer darunter die Klarheit verliert, bekommt eine Achtsamkeits-App und die Botschaft, er möge an seiner Stresskompetenz arbeiten. Das System erzeugt das Flimmern und schickt den Einzelnen zum Atemkurs. 882 883Dabei haben Organisationen selbst ein vegetatives Nervensystem, man muss nur hinsehen. Es besteht aus der Taktung der Meetings, der erwarteten Antwortzeit auf Nachrichten, der Frage, ob Nicht-Erreichbarkeit erklärungsbedürftig ist oder Erreichbarkeit. Eine Organisation kann flimmern wie ein Herz: maximale Erregung in allen Zellen, jede Abteilung feuert, und ausgeworfen wird nichts. Und Führungskräfte sind in diesem Bild Taktgeber. Ein Chef, der nachts um elf mailt, ist ein ektoper Erregungsherd: ein einzelner Impuls am falschen Ort zur falschen Zeit, der durch das gesamte Gewebe läuft und dreiÃig Nervensysteme depolarisiert, bevor er verpufft. Man kann als Führungskraft Sinusknoten sein oder Flimmerherd. Ein Drittes gibt es nicht, denn auch der Takt, den man nicht setzt, ist ein Takt. 884 885Solange eine Organisation sichtbare Aktivität belohnt und ruhige Klarheit als mangelnden Einsatz liest, optimiert sie sich mit jedem Effizienzgewinn der KI tiefer in den funktionellen Stillstand. Sie wird Quartal für Quartal beschäftigter und Quartal für Quartal wirkungsloser, und ihre Dashboards werden das Gegenteil behaupten, weil Dashboards Systolen zählen und keine Auswurffraktion kennen. 886 887## Vegetative Souveränität 888 889Was folgt daraus? Ich habe für die digitale Welt einmal Kants Antwort bemüht: Aufklärung als Ausgang aus der Unmündigkeit, digitale Mündigkeit als Anspruch, die Werkzeuge zu verstehen und zu beherrschen, statt sie zu erleiden. Ich glaube inzwischen, dass diese Mündigkeit eine somatische Schwester braucht, eine vegetative Souveränität: die Herrschaft über die Bedingungen des eigenen inneren Zustands. Denn der Verstand, dessen Gebrauch Kant von uns fordert, sitzt in einem Gewebe, das durchblutet werden will, und er ist nur dann am Steuer, wenn der Alarm ihn nicht davon verdrängt. Sapere aude setzt einen Körper voraus, der das Wagnis erlaubt. Mündigkeit beginnt unterhalb des Denkens. 890 891Das Paradoxe daran: Das autonome Nervensystem heiÃt autonom, weil es keine Befehle entgegennimmt. Man kann sich Ruhe nicht verordnen, so wenig wie ein Vorsatz den Puls senkt. Souveränität über das Vegetativum funktioniert deshalb wie gute Staatskunst, durch Rahmenbedingungen statt durch Dekrete. Schlaf wird dann zur Infrastrukturpolitik. Die Diastole steht im Kalender, bevor die Systolen ihn fluten, als geschützter Leerlauf, in dem das Denken sich sortieren darf, der Spaziergang ohne Podcast, das Zeitfenster ohne Kanal. Die wichtigste Taste der neuen Arbeitswelt ist das Nein, und ein Nein braucht ein Nervensystem, das den kurzen sozialen Schmerz aushält, den es kostet. Und für Organisationen heiÃt es: die Metriken entgiften, denn Output ist als Signal tot; die Pausen schützen, statt sie zu dulden; den Takt bewusst setzen, weil er ohnehin gesetzt wird, nur eben sonst vom Lautesten. 892 893Man muss dafür auf keine perfekte Studienlage warten und auf kein zertifiziertes Programm. Der Feind eines guten Plans ist der Traum von einem perfekten, und die Kosten des Versuchs sind diesmal lächerlich gering: Man kann morgen damit anfangen, und das Schlimmste, was passieren kann, ist Klarheit. 894 895## Sinusrhythmus 896 897Zurück in den Schockraum, zu der grünen Linie. Wenn ein Herz flimmert, laden wir den Defibrillator und erzwingen mit einem einzigen Stromstoà einen Augenblick vollständiger elektrischer Stille, alle Zellen zugleich auf null, und in diese Stille hinein meldet sich, wenn es gut geht, der Sinusknoten zurück: der eigene, innere Taktgeber, der die ganze Zeit da w
897ar und nur vom Chaos übertönt wurde. Das ist die vielleicht schönste Pointe der Notfallmedizin: Die Therapie der maximalen Aktivität ist die erzwungene Pause, und was danach führt, kommt von innen. 898 899Vor zehn Jahren suchten wir Menschen, die mehr arbeiten. Vor fünf Jahren Menschen, die sich besser konzentrieren. Die Maschinen haben beides entwertet, und übrig bleibt eine Eigenschaft, die auf keinem Lebenslauf steht und in keinem Assessment-Center gemessen wird: ein Nervensystem, das unter Last im Takt bleibt. Die Zukunft gehört ruhigen Menschen mit schnellen Maschinen. 900 901Im Schockraum haben wir einen Namen für maximale Aktivität ohne Auswurf: Kreislaufstillstand. In der Wissensarbeit heiÃt es Produktivität. 902`,RU=`# Die letzten Detektive 903 904Stellen Sie sich einen Raum vor, irgendwann in der zweiten Hälfte dieses Jahrhunderts. Auf dem Tisch liegt ein Vorschlag, und er ist groÃ. Ein Molekül, das eine Krankheit auslöschen würde. Ein Beweis, der ein halbes Jahrhundert Mathematik umstöÃt. Ein Friedensvertrag zwischen zwei Ländern, die sich seit Generationen nicht in die Augen sehen können. Eine Maschine hat das erzeugt, in der Zeit, die ein Mensch braucht, um sich zu räuspern. Jede Prüfung ist grün. Jede Zahl stimmt. Ein Dutzend anderer Maschinen hat gegengerechnet und genickt. 905 906Und ein Mensch, der nicht stärker ist als ein Bagger und nicht schneller rechnet als ein Taschenrechner aus dem vorigen Jahrhundert, beugt sich vor, liest, schweigt lange â und sagt: Halt. Hier stimmt etwas nicht. 907 908Er kann nicht beziffern, was. Keine rote Zeile, kein falsches Gleichheitszeichen, keine Quelle, die sich als erfunden entlarven lieÃe. Es ist etwas anderes. Ein Ziehen. Ein Widerstand, der sich noch nicht in ein Argument übersetzt hat, sondern erst einmal nur da ist, irgendwo zwischen Brustbein und Magen. Und weil dieser Mensch an genau dieser Stelle sitzt, hört man ihm zu. Man hält die Welt an, wegen eines Bauchgefühls. 909 910Dieser Mensch hat einen Beruf, den es heute noch nicht gibt. Unsere Enkel werden ihn für so selbstverständlich halten, wie wir den Notar halten. Nennen wir ihn den letzten Detektiv. Oder, ein wenig feierlicher und doch genauer: den ehrenhaften Ritter der einen Sache, die sich nicht automatisieren lässt â der Echtheit. 911 912Die Menschen, die diesen Beruf ausüben, sind nicht wie wir. Wir, die wir heute leben, tragen noch die Kränkung mit uns herum, dass eine Maschine schreiben, malen, diagnostizieren kann â Dinge, die wir für den Kern unserer Würde hielten. Wir fragen, mit der dünnen Stimme der Verlustangst: Was bleibt dann noch von uns? Die Generationen, die mit diesen Maschinen aufwachsen, stellen die Frage nicht mehr. Sie haben sie nie gestellt. Es kränkt sie so wenig, dass der Bagger stärker ist und der Rechner schneller, wie es uns kränkt, dass ein Pferd schneller läuft als wir. Und gerade weil ihnen diese Kränkung fehlt, sehen sie klarer als wir, was übrig bleibt, wenn man alles abzieht, was die Maschine besser kann. Dieser Rest ist nicht klein. Dieser Rest ist der ganze Mensch. 913 914Denn was diese Detektive in den Maschinenvorschlag hineintragen, ist kein Wissen â Wissen hat die Maschine mehr. Es ist keine Rechenleistung, keine Belesenheit, keine Geschwindigkeit. Es ist etwas Ãlteres. Das Bauchgefühl, über das wir so abschätzig reden, als sei es ein Rest Aberglaube in einer aufgeklärten Welt, ist in Wahrheit das am längsten trainierte Modell auf diesem Planeten. Seine Gewichte wurden nicht in einem Rechenzentrum justiert, sondern über Hunderte Millionen Jahre, an einem einzigen, gnadenlosen Datensatz: überleben oder nicht. Jeder Vorfahr, dessen Bauch zu spät zog, als sich im hohen Gras etwas Falsches bewegte, hat seine Gene nicht weitergegeben. Wir sind die Nachkommen derer, deren Ahnung stimmte. 915 916Die Maschine hat alles gelesen, was je geschrieben wurde. Der Mensch hat überlebt. Das sind zwei verschiedene Trainings, und sie erzeugen zwei verschiedene Arten zu irren. Diesen einen Satz sollte man festhalten; an ihm dreht sich alles Weitere. 917 918Ein erfahrener Notarzt weiÃ, dass ein Patient stirbt, bevor ein einziger Messwert es verrät. Begründen kann er es oft nicht â die Haut, der Blick, eine Stille im Raum, etwas. Wir nennen das Intuition und meinen damit meistens, dass jemand die Begründung übersprungen hat. In Wahrheit hat sein Körper ein Muster erkannt, das unter der Schwelle der Sprache liegt, gespeist aus tausend Nachtdiensten und einer halben Milliarde Jahren davor. Genau dieses Organ setzt der letzte Detektiv gegen den makellosen, glänzenden, grün durchgeprüften Vorschlag. Nicht um klüger zu sein. Um das eine zu spüren, das kein Prüfprotokoll erfasst: dass etwas nicht echt ist. 919 920Und er hat eine zweite Gabe, die mit der ersten verschwistert ist. Er weiÃ, welches Werkzeug er wann ruft. Er ist nicht stärker als der Bagger, aber er entscheidet, wo gegraben wird. Er rechnet nicht schneller als der Rechner, aber er weiÃ, welche Frage sich überhaupt zu rechnen lohnt. Diese Generationen sind mit hundert Maschinen aufgewachsen wie wir mit Stift und Papier; sie greifen nach ihnen, ohne hinzusehen, und behalten dabei das eine in der Hand, das keine von ihnen besitzt: das Urteil darüber, wozu das alles gut sein soll. Das ist die kantische Mündigkeit, übersetzt in eine Welt voller Werkzeuge. Souverän ist, wer die Werkzeuge führt. Instrument ist, wer von ihnen geführt wird. 921 922Ehrenhaft sind diese Ritter aus einem nüchternen Grund. Ihre Tugend ist der Zweifel, und Zweifel ist die unbequemste Tugend, die es gibt. Es ist leicht, das grüne Häkchen zu setzen und nach Hause zu gehen; alle Anreize, alle Eile, alle Höflichkeit drängen dorthin. Schwer ist das Innehalten. Schwer ist es, vor zwölf nickenden Maschinen und einer ungeduldigen Welt zu sagen: Ich kann es nicht begründen, und ich unter
922schreibe das nicht. Wer das tut, verlangsamt, macht sich unbeliebt, blamiert sich womöglich, wenn der Verdacht ins Leere läuft. Die Ehre dieses Berufs liegt darin, den Verdacht trotzdem auszuhalten â die Bereitschaft, der Einsame zu sein, der die Prozession anhält. Erkenntnis hat schon immer isoliert. Hier wird die Einsamkeit zum Beruf. 923 924An dieser Stelle muss ich gegen mein eigenes Bild antreten, denn es ist zu schön, und das Schöne ist im Denken meistens verdächtig. 925 926Erstens: Jede Generation hat behauptet, es gebe diese eine zutiefst menschliche Sache, die keine Maschine je könne â und jedes Mal kam die Maschine und tat sie. Schach. Sprache. Das Gesicht eines Menschen. Warum sollte das Bauchgefühl die letzte uneinnehmbare Burg sein und nicht bloà die nächste, die fällt? Vielleicht ist âder Mensch spürt, was die Maschine übersieht" nur der Trost, den sich jede verdrängte Zunft erzählt, kurz bevor sie überflüssig wird. 927 928Zweitens, und schwerer: Das Bauchgefühl ist ein notorischer Lügner. Die halbe Verhaltensökonomie ist ein Katalog seiner Irrtümer. Zeugen erinnern sich falsch, mit voller Ãberzeugung. Wir sehen Muster im Rauschen, fürchten das Falsche, vertrauen dem Falschen, urteilen nach Hautfarbe und Tagesform. Warum um alles in der Welt sollte man ausgerechnet dieses zitternde, voreingenommene, müde Organ als letzte Instanz über eine übermenschliche Intelligenz setzen? 929 930Und drittens, der gefährlichste Einwand, weil er nicht vom Können handelt, sondern von der Macht: Vielleicht ist der Mensch in der Schleife gar nicht der Ritter, für den wir ihn halten. Vielleicht ist er das Feigenblatt. Der, der unterschreibt, damit jemand unterschrieben hat. Wir kennen diese Figur schon heute. Es ist der âSicherheitsfahrer", der das autonome Auto überwacht und in Wahrheit nur abnickt, bis im entscheidenden Moment seine Aufmerksamkeit längst abgewandert ist. Es ist der Arzt, der ein Maschinenurteil gegenzeichnet, das er nicht mehr durchdringt, und der am Ende haftet, wenn es schiefgeht. Ein Mensch in der Schleife, dessen Nein nichts bewegt, ist keine Kontrolle. Er ist ein Blitzableiter für Verantwortung. Die Institution hat dann jemanden, dem sie die Schuld geben kann, und die Maschine läuft weiter wie zuvor. Ich habe das an anderer Stelle die Ethos-Falle genannt: Man lässt den Einzelnen mit einem Gewissen allein, dem man vorher jede Wirkung genommen hat. âIch bin nur der, der unterschreibt." 931 932Diese Einwände sind richtig, und keiner von ihnen trifft den Kern. 933 934Zum Feigenblatt zuerst, denn das ist die eigentliche Gefahr. Ob der letzte Detektiv ein Ritter ist oder eine Dekoration, hängt an einer einzigen Frage: Hat sein Nein Zähne? Kann er die Welt wirklich anhalten, und bleibt sie angehalten, auch wenn das teuer ist, auch wenn zehn Maschinen widersprechen, auch wenn der Quartalsbericht darunter leidet? Wenn ja, ist er der Wächter, den dieses Jahrhundert braucht. Wird sein Veto im Zweifel überstimmt, weil die Maschine ja âstatistisch fast immer recht hat", dann ist er Theater, und wir sollten ehrlich genug sein, ihn abzuschaffen, statt ihn als Alibi zu halten. Der Mensch in der Schleife ist kein Naturgesetz. Er ist eine Machtfrage. Und die entscheidet sich nicht in der Evolution, sondern in der Verfassung, die wir diesen Systemen geben. 935 936Jetzt zum Bauchgefühl als Lügner. Ja, es irrt â ständig. Aber hier kommt es auf etwas an, das die Verächter der Intuition übersehen: Es irrt anders. Die gröÃte Gefahr einer übermenschlichen Maschine ist nicht der dumme Fehler, den jeder sieht. Es ist der kohärente Irrtum. Ein System, das auf innere Stimmigkeit optimiert ist, kann vollständig, widerspruchsfrei und überzeugend falsch sein â und es nicht merken, weil ihm das AuÃen fehlt, an dem es sich stoÃen könnte. Es hat kein Bauchgefühl, weil es nie etwas zu verlieren hatte. Wer aber ein Sicherheitsnetz an die letzte Stelle einer Kette hängt, der darf es nicht aus demselben Draht flechten, aus dem die Kette ist. Man will am Ende eine Prüfinstanz, die anders irrt als das Geprüfte. Und genau das ist der voreingenommene, fleischliche, evolutionär verkorkste Mensch: ein Fehlermuster, das mit dem der Maschine nicht korreliert. Seine Schwäche ist hier seine Qualifikation. Er sieht den kohärenten Irrtum, weil er gar nicht erst in der Logik steht, die ihn erzeugt hat. Er steht drauÃen. Er ist das AuÃen. 937 938Damit auch zum ersten Einwand, der Burg, die fällt. Vielleicht fällt sie. Ich weià es nicht, und wer es behauptet, lügt in die eine oder die andere Richtung. Aber selbst wenn eine Maschine eines Tages ein besseres Bauchgefühl baut als die Evolution â sie wird es an unseren Daten lernen, an unseren überlebten Katastrophen, und sie wird, sobald sie es hat, dasselbe Problem haben wie jede Intelligenz: Sie braucht ein AuÃen, das sie prüft. Die Frage ist dann nicht, ob der Mensch in der Schleife bleibt. Die Frage ist, ob wir uns aus ihr herausoptimieren lassen, bevor wir gemerkt haben, dass die Schleife ihr AuÃen verloren hat. 939 940Man kann diese Detektive nicht ausbilden wie Juristen, durch Stoff, denn am Stoff ist ihnen jede Maschine überlegen. Man bildet sie aus, wie man Hebammen, Notärzte, alte Kapitäne ausgebildet hat: durch Aussetzung. Durch tausend echte Fälle, in denen es etwas kostete, falschzuliegen. Ein Bauchgefühl bekommt man nicht geschenkt. Man trägt es davon wie eine Narbe. Es entsteht nur dort, wo jemand wieder und wieder mit der Wirklic
940hkeit zusammengestoÃen ist und die Beulen behalten hat. Eine Gesellschaft, die solche Wächter haben will, muss ihre Menschen also weiter der Wirklichkeit aussetzen, mit allem Risiko â und darf nicht der Versuchung erliegen, sie zu ihrem eigenen Schutz in einen Simulator zu sperren, in dem nie etwas auf dem Spiel steht. Wattierte Menschen entwickeln kein Gespür. Der Preis des Sensors ist die Verwundung. 941 942Denn worüber dieser Detektiv eigentlich wacht, ist nicht die Richtigkeit. Richtigkeit, im Sinne innerer Stimmigkeit, prüft eine Maschine besser als jeder Mensch. Er wacht über die Echtheit: ob das Schöne, Stimmige, Durchgerechnete auch die Wirklichkeit berührt oder nur sich selbst. In einer Welt, die in makellos erzeugter Plausibilität ertrinkt, wird das Wirkliche zur Mangelware. Alles lässt sich erzeugen, alles klingt wahr, alles ist konsistent. Knapp wird die Verbindung zur Welt da drauÃen, die nicht nachgibt, wenn man sie schön rechnet. Vor Jahren habe ich einmal eine Zeile geschrieben, die ich damals nicht ganz verstand: Wenn Wahrheit da ist und nicht erkannt, und Falsches dann wahr wird â was ist dann? Ich glaube, das Jahrhundert der Maschinen ist die Antwort. Es wird das Zeitalter, in dem Falsches mühelos wahr klingt. Und der letzte Detektiv ist der, dessen ganze Aufgabe darin besteht, den Unterschied noch zu fühlen. 943 944Warum ausgerechnet er? Weil er der Einzige im Raum ist, der blutet, wenn er sich irrt. Die Maschine zahlt nichts. Sie hat keinen Körper, keinen Tod, kein Kind, das den Vertrag erbt, keine Lunge, die das Molekül atmet. Der Mensch hat all das. Er steht mit Haut und Knochen in derselben Wirklichkeit, über die er urteilt. Diese Verwundbarkeit, die ihn schwächer macht als jede Maschine, ist genau das, was ihn an die Wahrheit bindet. Erkenntnis braucht jemanden, für den es einen Unterschied macht, ob sie stimmt. Der letzte Detektiv ist dieser Jemand. Sein Einsatz ist keine Rechenzeit. Sein Einsatz ist er selbst. 945 946Vielleicht endet die lange Geschichte des menschlichen Vorrangs also gar nicht mit einer Niederlage. Vielleicht endet sie mit einer Beförderung, die nach Verlust aussieht. Wir geben das Heben ab, das Rechnen, das Schreiben, am Ende vielleicht sogar das Erfinden. Die Maschinen werden uns jede Wahrheit schenken, im Akkord, schneller als wir sie lesen können. Was sie uns nie abnehmen werden, ist die Lüge â die letzte, die kohärente, die sich als Wahrheit verkleidet hat und auf einen wartet, der zusammenzuckt. Hunderte Millionen Jahre Evolution haben an einem einzigen Instrument gearbeitet, und es ist nicht die Faust geworden und nicht das rechnende Gehirn. Es ist das, was zögert. Am Ende der Kette steht kein stärkeres Wesen und kein schnelleres. Am Ende steht das einzige, das blutet, wenn es sich irrt â und das deshalb, als Letztes, hinsehen darf. 947`,zU=[{slug:"aufstieg-heisst-abstand",title:"Aufstieg heiÃt Abstand",subtitle:"Warum die Klinik mit den Augen ihrer Jüngsten sieht.",date:"2026-07-02",source:SU},{slug:"letzte-detektive",title:"Die letzten Detektive",subtitle:"Vom Beruf der Echtheit in einer Welt, die jeder Maschine glaubt.",date:"2026-06-21",source:RU},{slug:"engpass-nervensystem",title:"Der Engpass wandert nach innen",subtitle:"Wenn KI die Ausführung billig macht, wird das Nervensystem zur knappen Ressource.",date:"2026-06-11",source:jU},{slug:"free-training",title:"Free Training",subtitle:"Drei Abstiege in dieselbe Wahrheit â Essay, Geschichte, Film.",date:"2026-06-05",source:PU},{slug:"gradient-der-enttaeuschung",title:"Der Gradient der Enttäuschung",subtitle:"Wie der Belohnungsvorhersagefehler erklärt, warum das Beste nie bleibt.",date:"2026-06-05",source:_U},{slug:"von-hinten-gedacht",title:"Von hinten gedacht",subtitle:"Drei Ideen, die mich in der Notaufnahme wieder antreiben würden.",date:"2026-06-02",source:CU},{slug:"rueckendeckung",title:"Rückendeckung",subtitle:"Warum die Notaufnahme ein Back Office braucht, kein nächstes Stethoskop.",date:"2026-06-01",source:AU},{slug:"letzte-zeugen",title:"Die letzten Zeugen",subtitle:"Wir sind die letzte Generation, die der Maschine ins Gesicht widersprechen kann.",date:"2026-06-01",source:TU},{slug:"gradient-der-schoepfung",title:"Der Gradient der Schöpfung",subtitle:"Was, wenn die ganze Schöpfung ein einziger, langer Gradient ist?",date:"2026-06-01",source:EU}],DU=Object.fromEntries(zU.map(e=>[e.slug,e]));function ba(e){const t=[],n=/\*\*([^*]+)\*\*|\*([^*]+)\*/g;let r=0,i,s=0;for(;i=n.exec(e);)i.index>r&&t.push(e.slice(r,i.index)),i[1]?t.push(u.jsx("strong",{className:"text-foreground
947/90 font-semibold",children:i[1]},s++)):i[2]&&t.push(u.jsx("em",{className:"italic",children:i[2]},s++)),r=i.index+i[0].length;return r<e.length&&t.push(e.slice(r)),t}function NU(e){const t=e.replace(/\r\n/g,` 948`).split(` 949`),n=[];let r=[];const i=()=>{r.length&&(n.push({type:"p",text:r.join(" ")}),r=[])};for(let s=0;s<t.length;s++){const o=t[s].trim();if(!o){i();continue}if(o==="---"){i(),n.push({type:"hr"});continue}if(o.startsWith("### ")){i(),n.push({type:"h3",text:o.slice(4)});continue}if(o.startsWith("## ")){i(),n.push({type:"h2",text:o.slice(3)});continue}if(o.startsWith("# ")){i(),n.push({type:"h1",text:o.slice(2)});continue}if(o.startsWith(">")){i();const l=[o.replace(/^>\s?/,"")];for(;s+1<t.length&&t[s+1].trim().startsWith(">");)s++,l.push(t[s].trim().replace(/^>\s?/,""));n.push({type:"quote",lines:l});continue}r.push(o)}return i(),n}function MU({source:e}){const t=NU(e);return u.jsx(u.Fragment,{children:t.map((n,r)=>{switch(n.type){case"h1":return u.jsx("h1",{className:"mt-2 mb-3",style:{fontFamily:"var(--font-display)",fontSize:"clamp(28px, 4vw, 36px)",fontWeight:700,letterSpacing:"-.02em",color:"var(--text-primary)",lineHeight:1.15},children:ba(n.text)},r);case"h2":return u.jsx("h2",{className:"mt-10 mb-3",style:{fontFamily:"var(--font-display)",fontSize:"20px",fontWeight:600,letterSpacing:"-.01em",color:"var(--text-primary)"},children:ba(n.text)},r);case"h3":return u.jsx("h3",{className:"mt-1 mb-6",style:{fontFamily:"var(--font-mono)",fontSize:"12px",letterSpacing:".14em",textTransform:"uppercase",color:"var(--neon-orange)"},children:ba(n.text)},r);case"hr":return u.jsx("hr",{className:"my-10 border-0",style:{height:"1px",background:"var(--border-subtle)"}},r);case"quote":return u.jsx("blockquote",{className:"my-6 px-5 py-4",style:{borderLeft:"2px solid var(--neon-orange)",background:"var(--bg-card)",borderRadius:"var(--radius-md, 8px)",color:"var(--text-secondary, hsl(var(--muted-foreground)))",fontStyle:"italic"},children:n.lines.map((i,s)=>u.jsx("p",{className:s>0?"mt-2":"",children:ba(i)},s))},r);case"p":return u.jsx("p",{className:"my-4 text-[15.5px] leading-[1.75]",style:{color:"var(--text-secondary, hsl(var(--muted-foreground)))"},children:ba(n.text)},r)}})})}function IU(){const e=In(),{slug:t}=l_(),n=t?DU[t]:void 0;if(k.useEffect(()=>{document.documentElement.classList.add("dark"),window.scrollTo(0,0),n&&(document.title=`${n.title} â Cem Ãzel`)},[t,n]),!n)return u.jsx(x_,{to:"/",replace:!0});const r=new Date(n.date).toLocaleDateString("de-DE",{day:"2-digit",month:"long",year:"numeric"});return u.jsx("div",{className:"min-h-screen bg-background",children:u.jsxs("article",{className:"container mx-auto max-w-2xl px-4 py-12",children:[u.jsxs(Ie,{variant:"ghost",size:"sm",className:"mb-8 text-muted-foreground",onClick:()=>e("/"),children:[u.jsx(Qs,{className:"mr-2 h-3.5 w-3.5"})," Zurück"]}),u.jsxs("div",{className:"mb-3",style:{fontFamily:"var(--font-mono)",fontSize:"11px",letterSpacing:".16em",textTransform:"uppercase",color:"var(--neon-orange)"},children:["Essay · ",r]}),u.jsx(MU,{source:n.source}),u.jsx("p",{className:"mt-12 text-xs italic",style:{color:"var(--text-muted, hsl(var(--muted-foreground)))"},children:"Von Dr. med. Cem Ãzel"})]})})}const OU=new zC,LU=()=>u.jsx(NC,{client:OU,children:u.jsxs(Bz,{children:[u.jsx(Xj,{}),u.jsx(sP,{}),u.jsx(C_,{children:u.jsxs(E_,{children:[u.jsx(Yt,{path:"/",element:u.jsx(qF,{})}),u.jsx(Yt,{path:"/login",element:u.jsx(ZF,{})}),u.jsx(Yt,{path:"/admin",element:u.jsx(dU,{})}),u.jsx(Yt,{path:"/system-prompt",element:u.jsx(gU,{})}),u.jsx(Yt,{path:"/impressum",element:u.jsx(wU,{})}),u.jsx(Yt,{path:"/datenschutz",element:u.jsx(bU,{})}),u.jsx(Yt,{path:"/essay/nejm-ai",element:u.jsx(kU,{})}),u.jsx(Yt,{path:"/essay/ki-ethos-falle",element:u.jsx(xU,{})}),u.jsx(Yt,{path:"/essay/:slug",element:u.jsx(IU,{})}),u.jsx(Yt,{path:"*",element:u.jsx(hU,{})})]})})]})});ik(document.getElementById("root")).render(u.jsx(LU,{}));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.