@capagents/forgeqe 2.4.0 → 2.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HOW_TO_USE.md +28 -7
- package/README.md +4 -2
- package/dist/forgeqe.js +1041 -1007
- package/dist/web/assets/ApiTests-B-0nk720.js +2 -0
- package/dist/web/assets/Chat-Be6J6POH.js +3 -0
- package/dist/web/assets/{Data-Qolfhsd7.js → Data-BtcD7_T2.js} +4 -4
- package/dist/web/assets/Features-DHIGL43K.js +1 -0
- package/dist/web/assets/Jobs-C-cEyrrH.js +3 -0
- package/dist/web/assets/Quality-C6hKykoO.js +1 -0
- package/dist/web/assets/Record-B5395d_b.js +1 -0
- package/dist/web/assets/Regression-BS5g4T3v.js +2 -0
- package/dist/web/assets/Reports-CHqfhNR8.js +2 -0
- package/dist/web/assets/Response-P2oku3_B.js +8 -0
- package/dist/web/assets/Runs-DPmd5QPL.js +2 -0
- package/dist/web/assets/chevron-right-Cwpv0kJi.js +1 -0
- package/dist/web/assets/circle-dashed-COka5oNi.js +1 -0
- package/dist/web/assets/external-link-B9T-hxHX.js +1 -0
- package/dist/web/assets/file-chart-column-increasing-Ch7H145u.js +1 -0
- package/dist/web/assets/filters-C5e4Y0To.js +1 -0
- package/dist/web/assets/index-BI_5kNwE.css +2 -0
- package/dist/web/assets/index-KUNDUjo0.js +26 -0
- package/dist/web/assets/{markdown-GKy06efH.js → markdown-DclrGj2e.js} +7 -7
- package/dist/web/assets/rotate-ccw-BizUsxuR.js +1 -0
- package/dist/web/assets/sticky-note-CFIxnO7K.js +1 -0
- package/dist/web/assets/terminal-BnhGgg6d.js +1 -0
- package/dist/web/assets/trash-CtWVl2Xk.js +1 -0
- package/dist/web/assets/trending-up-BnzWZEhg.js +1 -0
- package/dist/web/assets/when-CHnpLdYw.js +1 -0
- package/dist/web/index.html +2 -3
- package/docs/ARCHITECTURE.md +5 -2
- package/docs/user-guide.html +32 -13
- package/evals/prompts/brain/browser-test-intent.yaml +30 -0
- package/forgeqe.example.yaml +4 -3
- package/package.json +1 -1
- package/prompts/brain.md +4 -1
- package/py/forgeqe_engine/flowmatch.py +72 -1
- package/py/forgeqe_engine/logins.py +17 -5
- package/py/forgeqe_engine/loops.py +26 -3
- package/py/forgeqe_engine/memory.py +11 -0
- package/py/forgeqe_engine/service.py +29 -1
- package/dist/web/assets/ApiTests-CSSed9hU.js +0 -2
- package/dist/web/assets/Chat-CFfiv7wI.js +0 -2
- package/dist/web/assets/Features-BM48eq6x.js +0 -1
- package/dist/web/assets/Jobs-BjVNQUaK.js +0 -3
- package/dist/web/assets/Quality-F0sKErYg.js +0 -1
- package/dist/web/assets/Record-CkwV9gN8.js +0 -1
- package/dist/web/assets/Regression-DKaNfFu1.js +0 -2
- package/dist/web/assets/Reports-o_82URX6.js +0 -3
- package/dist/web/assets/Response-YL9AIB8R.js +0 -8
- package/dist/web/assets/Runs-Dp-DzyW1.js +0 -2
- package/dist/web/assets/circle-dashed-DbpKfamm.js +0 -1
- package/dist/web/assets/external-link-pvVHJFAZ.js +0 -1
- package/dist/web/assets/file-chart-column-increasing-b-Yh6rmz.js +0 -1
- package/dist/web/assets/index-Bkx3fVbr.js +0 -21
- package/dist/web/assets/index-DSEYuBEd.css +0 -2
- package/dist/web/assets/rotate-ccw-BL6YOAPy.js +0 -1
- package/dist/web/assets/search-YLg3uzAx.js +0 -1
- package/dist/web/assets/status-CL_clA0J.js +0 -3
- package/dist/web/assets/sticky-note-DIQ2FWMw.js +0 -1
- package/dist/web/assets/terminal-BdTFlGZR.js +0 -1
- package/dist/web/assets/timer-NLZ0XmVl.js +0 -1
- package/dist/web/assets/trash-DIUJbRpw.js +0 -1
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Chat-CFfiv7wI.js","assets/status-CL_clA0J.js","assets/Response-YL9AIB8R.js","assets/markdown-GKy06efH.js","assets/external-link-pvVHJFAZ.js","assets/Reports-o_82URX6.js","assets/circle-dashed-DbpKfamm.js","assets/search-YLg3uzAx.js","assets/timer-NLZ0XmVl.js","assets/Runs-Dp-DzyW1.js","assets/rotate-ccw-BL6YOAPy.js","assets/terminal-BdTFlGZR.js","assets/file-chart-column-increasing-b-Yh6rmz.js","assets/Record-CkwV9gN8.js","assets/sticky-note-DIQ2FWMw.js","assets/trash-DIUJbRpw.js","assets/Regression-DKaNfFu1.js","assets/ApiTests-CSSed9hU.js","assets/Quality-F0sKErYg.js","assets/Data-Qolfhsd7.js","assets/Features-BM48eq6x.js","assets/Jobs-BjVNQUaK.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{$ as e,A as t,B as n,C as r,D as i,E as a,Et as o,F as s,G as c,Gt as l,H as u,I as d,It as f,J as p,Jt as m,K as h,L as g,M as _,Mt as v,N as y,Nt as b,O as x,Ot as S,P as ee,Pt as te,Qt as C,R as w,S as T,St as ne,T as re,Tt as ie,U as ae,V as oe,Vt as E,W as D,X as O,Xt as se,Y as ce,Yt as le,Zt as k,_t as ue,at as A,b as j,bt as de,c as fe,ct as pe,d as me,dt as he,en as ge,et as _e,f as M,ft as ve,gt as ye,h as be,ht as xe,i as Se,it as Ce,j as we,jt as N,k as Te,kt as Ee,l as De,m as Oe,mt as ke,n as Ae,nt as je,o as Me,ot as Ne,p as Pe,pt as Fe,q as Ie,r as Le,rt as Re,s as ze,st as Be,t as Ve,tt as He,u as Ue,v as We,w as Ge,x as P,xt as Ke,y as qe,yt as Je,z as F}from"./status-CL_clA0J.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Ye=C((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,S||(S=!0,ne());else{var t=n(l);t!==null&&ae(x,t.startTime-e)}}}var S=!1,ee=-1,te=5,C=-1;function w(){return g?!0:!(e.unstable_now()-C<te)}function T(){if(g=!1,S){var t=e.unstable_now();C=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(ee),ee=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&w());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&ae(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?ne():S=!1}}}var ne;if(typeof y==`function`)ne=function(){y(T)};else if(typeof MessageChannel<`u`){var re=new MessageChannel,ie=re.port2;re.port1.onmessage=T,ne=function(){ie.postMessage(null)}}else ne=function(){_(T,0)};function ae(t,n){ee=_(function(){t(e.unstable_now())},n)}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(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):te=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(ee),ee=-1):h=!0,ae(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,ne()))),r},e.unstable_shouldYield=w,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),Xe=C(((e,t)=>{t.exports=Ye()})),Ze=C((e=>{var t=k();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;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.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`);function o(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var s=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return o(e,t,null,r)},e.flushSync=function(e){var t=s.T,n=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=c(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)}},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`){if(t){var n=c(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)}},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},e.useFormStatus=function(){return s.H.useHostTransitionStatus()},e.version=`19.2.7`})),Qe=C(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=Ze()})),$e=C((e=>{var t=Xe(),n=k(),r=Qe();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;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.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(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 s(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 c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}var f=Object.assign,p=Symbol.for(`react.element`),m=Symbol.for(`react.transitional.element`),h=Symbol.for(`react.portal`),g=Symbol.for(`react.fragment`),_=Symbol.for(`react.strict_mode`),v=Symbol.for(`react.profiler`),y=Symbol.for(`react.consumer`),b=Symbol.for(`react.context`),x=Symbol.for(`react.forward_ref`),S=Symbol.for(`react.suspense`),ee=Symbol.for(`react.suspense_list`),te=Symbol.for(`react.memo`),C=Symbol.for(`react.lazy`),w=Symbol.for(`react.activity`),T=Symbol.for(`react.memo_cache_sentinel`),ne=Symbol.iterator;function re(e){return typeof e!=`object`||!e?null:(e=ne&&e[ne]||e[`@@iterator`],typeof e==`function`?e:null)}var ie=Symbol.for(`react.client.reference`);function ae(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ie?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case g:return`Fragment`;case v:return`Profiler`;case _:return`StrictMode`;case S:return`Suspense`;case ee:return`SuspenseList`;case w:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case h:return`Portal`;case b:return e.displayName||`Context`;case y:return(e._context.displayName||`Context`)+`.Consumer`;case x:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case te:return t=e.displayName||null,t===null?ae(e.type)||`Memo`:t;case C:t=e._payload,e=e._init;try{return ae(e(t))}catch{}}return null}var oe=Array.isArray,E=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,D=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,O={pending:!1,data:null,method:null,action:null},se=[],ce=-1;function le(e){return{current:e}}function ue(e){0>ce||(e.current=se[ce],se[ce]=null,ce--)}function A(e,t){ce++,se[ce]=e.current,e.current=t}var j=le(null),de=le(null),fe=le(null),pe=le(null);function me(e,t){switch(A(fe,t),A(de,e),A(j,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}ue(j),A(j,e)}function he(){ue(j),ue(de),ue(fe)}function ge(e){e.memoizedState!==null&&A(pe,e);var t=j.current,n=Hd(t,e.type);t!==n&&(A(de,e),A(j,n))}function _e(e){de.current===e&&(ue(j),ue(de)),pe.current===e&&(ue(pe),Qf._currentValue=O)}var M,ve;function ye(e){if(M===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);M=t&&t[1]||``,ve=-1<e.stack.indexOf(`
|
|
3
|
-
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
4
|
-
`+M+e+ve}var be=!1;function xe(e,t){if(!e||be)return``;be=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
|
|
5
|
-
`),l=s.split(`
|
|
6
|
-
`);for(i=r=0;r<c.length&&!c[r].includes(`DetermineComponentFrameRoot`);)r++;for(;i<l.length&&!l[i].includes(`DetermineComponentFrameRoot`);)i++;if(r===c.length||i===l.length)for(r=c.length-1,i=l.length-1;1<=r&&0<=i&&c[r]!==l[i];)i--;for(;1<=r&&0<=i;r--,i--)if(c[r]!==l[i]){if(r!==1||i!==1)do if(r--,i--,0>i||c[r]!==l[i]){var u=`
|
|
7
|
-
`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{be=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?ye(n):``}function Se(e,t){switch(e.tag){case 26:case 27:case 5:return ye(e.type);case 16:return ye(`Lazy`);case 13:return e.child!==t&&t!==null?ye(`Suspense Fallback`):ye(`Suspense`);case 19:return ye(`SuspenseList`);case 0:case 15:return xe(e.type,!1);case 11:return xe(e.type.render,!1);case 1:return xe(e.type,!0);case 31:return ye(`Activity`);default:return``}}function Ce(e){try{var t=``,n=null;do t+=Se(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
|
|
8
|
-
Error generating stack: `+e.message+`
|
|
9
|
-
`+e.stack}}var we=Object.prototype.hasOwnProperty,N=t.unstable_scheduleCallback,Te=t.unstable_cancelCallback,Ee=t.unstable_shouldYield,De=t.unstable_requestPaint,Oe=t.unstable_now,ke=t.unstable_getCurrentPriorityLevel,Ae=t.unstable_ImmediatePriority,je=t.unstable_UserBlockingPriority,Me=t.unstable_NormalPriority,Ne=t.unstable_LowPriority,Pe=t.unstable_IdlePriority,Fe=t.log,Ie=t.unstable_setDisableYieldValue,Le=null,Re=null;function ze(e){if(typeof Fe==`function`&&Ie(e),Re&&typeof Re.setStrictMode==`function`)try{Re.setStrictMode(Le,e)}catch{}}var Be=Math.clz32?Math.clz32:Ue,Ve=Math.log,He=Math.LN2;function Ue(e){return e>>>=0,e===0?32:31-(Ve(e)/He|0)|0}var We=256,Ge=262144,P=4194304;function Ke(e){var t=e&42;if(t!==0)return t;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:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function qe(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Ke(n))):i=Ke(o):i=Ke(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Ke(n))):i=Ke(o)):i=Ke(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function Je(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function F(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32: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:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ye(){var e=P;return P<<=1,!(P&62914560)&&(P=4194304),e}function Ze(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function $e(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function et(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-Be(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&tt(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function tt(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Be(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function nt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Be(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function rt(e,t){var n=t&-t;return n=n&42?1:it(n),(n&(e.suspendedLanes|t))===0?n:0}function it(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;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:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function at(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function ot(){var e=D.p;return e===0?(e=window.event,e===void 0?32:mp(e.type)):e}function st(e,t){var n=D.p;try{return D.p=e,t()}finally{D.p=n}}var ct=Math.random().toString(36).slice(2),lt=`__reactFiber$`+ct,ut=`__reactProps$`+ct,dt=`__reactContainer$`+ct,ft=`__reactEvents$`+ct,pt=`__reactListeners$`+ct,mt=`__reactHandles$`+ct,ht=`__reactResources$`+ct,gt=`__reactMarker$`+ct;function _t(e){delete e[lt],delete e[ut],delete e[ft],delete e[pt],delete e[mt]}function vt(e){var t=e[lt];if(t)return t;for(var n=e.parentNode;n;){if(t=n[dt]||n[lt]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=df(e);e!==null;){if(n=e[lt])return n;e=df(e)}return t}e=n,n=e.parentNode}return null}function yt(e){if(e=e[lt]||e[dt]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function bt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function xt(e){var t=e[ht];return t||=e[ht]={hoistableStyles:new Map,hoistableScripts:new Map},t}function St(e){e[gt]=!0}var Ct=new Set,wt={};function Tt(e,t){Et(e,t),Et(e+`Capture`,t)}function Et(e,t){for(wt[e]=t,e=0;e<t.length;e++)Ct.add(t[e])}var Dt=RegExp(`^[: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]*$`),Ot={},kt={};function At(e){return we.call(kt,e)?!0:we.call(Ot,e)?!1:Dt.test(e)?kt[e]=!0:(Ot[e]=!0,!1)}function jt(e,t,n){if(At(t)){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,``+n)}}}function Mt(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,``+n)}}function Nt(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,``+r)}}function Pt(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function Ft(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function It(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Lt(e){if(!e._valueTracker){var t=Ft(e)?`checked`:`value`;e._valueTracker=It(e,t,``+e[t])}}function Rt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=Ft(e)?e.checked?`true`:`false`:e.value),e=r,e!==n&&(t.setValue(e),!0)}function zt(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}var Bt=/[\n"\\]/g;function Vt(e){return e.replace(Bt,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function Ht(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+Pt(t)):e.value!==``+Pt(t)&&(e.value=``+Pt(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):Wt(e,o,Pt(n)):Wt(e,o,Pt(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+Pt(s):e.removeAttribute(`name`)}function Ut(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){Lt(e);return}n=n==null?``:``+Pt(n),t=t==null?n:``+Pt(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),Lt(e)}function Wt(e,t,n){t===`number`&&zt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function Gt(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=``+Pt(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 Kt(e,t,n){t!=null&&(t=``+Pt(t),t!==e.value&&(e.value=t),n==null)?e.defaultValue!==t&&(e.defaultValue=t):e.defaultValue=n==null?``:``+Pt(n)}function qt(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(i(92));if(oe(r)){if(1<r.length)throw Error(i(93));r=r[0]}n=r}n??=``,t=n}n=Pt(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),Lt(e)}function Jt(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Yt=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function Xt(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||Yt.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function Zt(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(i(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``);for(var a in t)r=t[a],t.hasOwnProperty(a)&&n[a]!==r&&Xt(e,a,r)}else for(var o in t)t.hasOwnProperty(o)&&Xt(e,o,t[o])}function Qt(e){if(e.indexOf(`-`)===-1)return!1;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 $t=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),en=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function tn(e){return en.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function nn(){}var rn=null;function an(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var on=null,sn=null;function cn(e){var t=yt(e);if(t&&(e=t.stateNode)){var n=e[ut]||null;a:switch(e=t.stateNode,t.type){case`input`:if(Ht(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+Vt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=r[ut]||null;if(!a)throw Error(i(90));Ht(r,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&Rt(r)}break a;case`textarea`:Kt(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&Gt(e,!!n.multiple,t,!1)}}}var ln=!1;function un(e,t,n){if(ln)return e(t,n);ln=!0;try{return e(t)}finally{if(ln=!1,(on!==null||sn!==null)&&(bu(),on&&(t=on,e=sn,sn=on=null,cn(t),e)))for(t=0;t<e.length;t++)cn(e[t])}}function dn(e,t){var n=e.stateNode;if(n===null)return null;var r=n[ut]||null;if(r===null)return null;n=r[t];a: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 a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var fn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,pn=!1;if(fn)try{var mn={};Object.defineProperty(mn,"passive",{get:function(){pn=!0}}),window.addEventListener(`test`,mn,mn),window.removeEventListener(`test`,mn,mn)}catch{pn=!1}var hn=null,gn=null,_n=null;function vn(){if(_n)return _n;var e,t=gn,n=t.length,r,i=`value`in hn?hn.value:hn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return _n=i.slice(e,1<r?1-r:void 0)}function yn(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 bn(){return!0}function xn(){return!1}function Sn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?bn:xn,this.isPropagationStopped=xn,this}return f(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=bn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=bn)},persist:function(){},isPersistent:bn}),t}var Cn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},wn=Sn(Cn),Tn=f({},Cn,{view:0,detail:0}),En=Sn(Tn),Dn,On,kn,An=f({},Tn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zn,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==kn&&(kn&&e.type===`mousemove`?(Dn=e.screenX-kn.screenX,On=e.screenY-kn.screenY):On=Dn=0,kn=e),Dn)},movementY:function(e){return`movementY`in e?e.movementY:On}}),jn=Sn(An),Mn=Sn(f({},An,{dataTransfer:0})),Nn=Sn(f({},Tn,{relatedTarget:0})),Pn=Sn(f({},Cn,{animationName:0,elapsedTime:0,pseudoElement:0})),Fn=Sn(f({},Cn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),In=Sn(f({},Cn,{data:0})),Ln={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Rn={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`},I={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function L(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=I[e])?!!t[e]:!1}function zn(){return L}var Bn=Sn(f({},Tn,{key:function(e){if(e.key){var t=Ln[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=yn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Rn[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zn,charCode:function(e){return e.type===`keypress`?yn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?yn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),Vn=Sn(f({},An,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Hn=Sn(f({},Tn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zn})),Un=Sn(f({},Cn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Wn=Sn(f({},An,{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})),Gn=Sn(f({},Cn,{newState:0,oldState:0})),Kn=[9,13,27,32],qn=fn&&`CompositionEvent`in window,Jn=null;fn&&`documentMode`in document&&(Jn=document.documentMode);var Yn=fn&&`TextEvent`in window&&!Jn,Xn=fn&&(!qn||Jn&&8<Jn&&11>=Jn),Zn=` `,Qn=!1;function $n(e,t){switch(e){case`keyup`:return Kn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function er(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var tr=!1;function nr(e,t){switch(e){case`compositionend`:return er(t);case`keypress`:return t.which===32?(Qn=!0,Zn):null;case`textInput`:return e=t.data,e===Zn&&Qn?null:e;default:return null}}function rr(e,t){if(tr)return e===`compositionend`||!qn&&$n(e,t)?(e=vn(),_n=gn=hn=null,tr=!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 Xn&&t.locale!==`ko`?null:t.data;default:return null}}var ir={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 ar(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!ir[e.type]:t===`textarea`}function or(e,t,n,r){on?sn?sn.push(r):sn=[r]:on=r,t=Ed(t,`onChange`),0<t.length&&(n=new wn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var sr=null,cr=null;function lr(e){yd(e,0)}function ur(e){if(Rt(bt(e)))return e}function dr(e,t){if(e===`change`)return t}var fr=!1;if(fn){var pr;if(fn){var mr=`oninput`in document;if(!mr){var hr=document.createElement(`div`);hr.setAttribute(`oninput`,`return;`),mr=typeof hr.oninput==`function`}pr=mr}else pr=!1;fr=pr&&(!document.documentMode||9<document.documentMode)}function gr(){sr&&(sr.detachEvent(`onpropertychange`,_r),cr=sr=null)}function _r(e){if(e.propertyName===`value`&&ur(cr)){var t=[];or(t,cr,e,an(e)),un(lr,t)}}function vr(e,t,n){e===`focusin`?(gr(),sr=t,cr=n,sr.attachEvent(`onpropertychange`,_r)):e===`focusout`&&gr()}function yr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return ur(cr)}function br(e,t){if(e===`click`)return ur(t)}function xr(e,t){if(e===`input`||e===`change`)return ur(t)}function Sr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var Cr=typeof Object.is==`function`?Object.is:Sr;function wr(e,t){if(Cr(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)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(!we.call(t,i)||!Cr(e[i],t[i]))return!1}return!0}function Tr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Er(e,t){var n=Tr(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}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Tr(n)}}function Dr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Dr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Or(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=zt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=zt(e.document)}return t}function kr(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`)}var Ar=fn&&`documentMode`in document&&11>=document.documentMode,jr=null,Mr=null,Nr=null,Pr=!1;function Fr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Pr||jr==null||jr!==zt(r)||(r=jr,`selectionStart`in r&&kr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Nr&&wr(Nr,r)||(Nr=r,r=Ed(Mr,`onSelect`),0<r.length&&(t=new wn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=jr)))}function Ir(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var Lr={animationend:Ir(`Animation`,`AnimationEnd`),animationiteration:Ir(`Animation`,`AnimationIteration`),animationstart:Ir(`Animation`,`AnimationStart`),transitionrun:Ir(`Transition`,`TransitionRun`),transitionstart:Ir(`Transition`,`TransitionStart`),transitioncancel:Ir(`Transition`,`TransitionCancel`),transitionend:Ir(`Transition`,`TransitionEnd`)},Rr={},R={};fn&&(R=document.createElement(`div`).style,`AnimationEvent`in window||(delete Lr.animationend.animation,delete Lr.animationiteration.animation,delete Lr.animationstart.animation),`TransitionEvent`in window||delete Lr.transitionend.transition);function zr(e){if(Rr[e])return Rr[e];if(!Lr[e])return e;var t=Lr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in R)return Rr[e]=t[n];return e}var Br=zr(`animationend`),Vr=zr(`animationiteration`),Hr=zr(`animationstart`),Ur=zr(`transitionrun`),Wr=zr(`transitionstart`),Gr=zr(`transitioncancel`),Kr=zr(`transitionend`),qr=new Map,Jr=`abort auxClick beforeToggle 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(` `);Jr.push(`scrollEnd`);function Yr(e,t){qr.set(e,t),Tt(t,[e])}var Xr=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},Zr=[],Qr=0,$r=0;function ei(){for(var e=Qr,t=$r=Qr=0;t<e;){var n=Zr[t];Zr[t++]=null;var r=Zr[t];Zr[t++]=null;var i=Zr[t];Zr[t++]=null;var a=Zr[t];if(Zr[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&ii(n,i,a)}}function ti(e,t,n,r){Zr[Qr++]=e,Zr[Qr++]=t,Zr[Qr++]=n,Zr[Qr++]=r,$r|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function ni(e,t,n,r){return ti(e,t,n,r),ai(e)}function ri(e,t){return ti(e,null,null,t),ai(e)}function ii(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Be(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function ai(e){if(50<du)throw du=0,fu=null,Error(i(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var oi={};function si(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.refCleanup=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 ci(e,t,n,r){return new si(e,t,n,r)}function li(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ui(e,t){var n=e.alternate;return n===null?(n=ci(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.deletions=null),n.flags=e.flags&65011712,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.refCleanup=e.refCleanup,n}function di(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function fi(e,t,n,r,a,o){var s=0;if(r=e,typeof e==`function`)li(e)&&(s=1);else if(typeof e==`string`)s=Uf(e,n,j.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case w:return e=ci(31,n,t,a),e.elementType=w,e.lanes=o,e;case g:return pi(n.children,a,o,t);case _:s=8,a|=24;break;case v:return e=ci(12,n,t,a|2),e.elementType=v,e.lanes=o,e;case S:return e=ci(13,n,t,a),e.elementType=S,e.lanes=o,e;case ee:return e=ci(19,n,t,a),e.elementType=ee,e.lanes=o,e;default:if(typeof e==`object`&&e)switch(e.$$typeof){case b:s=10;break a;case y:s=9;break a;case x:s=11;break a;case te:s=14;break a;case C:s=16,r=null;break a}s=29,n=Error(i(130,e===null?`null`:typeof e,``)),r=null}return t=ci(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function pi(e,t,n,r){return e=ci(7,e,r,t),e.lanes=n,e}function mi(e,t,n){return e=ci(6,e,null,t),e.lanes=n,e}function hi(e){var t=ci(18,null,null,0);return t.stateNode=e,t}function gi(e,t,n){return t=ci(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var _i=new WeakMap;function vi(e,t){if(typeof e==`object`&&e){var n=_i.get(e);return n===void 0?(t={value:e,source:t,stack:Ce(t)},_i.set(e,t),t):n}return{value:e,source:t,stack:Ce(t)}}var yi=[],bi=0,xi=null,Si=0,Ci=[],wi=0,Ti=null,Ei=1,Di=``;function Oi(e,t){yi[bi++]=Si,yi[bi++]=xi,xi=e,Si=t}function ki(e,t,n){Ci[wi++]=Ei,Ci[wi++]=Di,Ci[wi++]=Ti,Ti=e;var r=Ei;e=Di;var i=32-Be(r)-1;r&=~(1<<i),n+=1;var a=32-Be(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Ei=1<<32-Be(t)+i|n<<i|r,Di=a+e}else Ei=1<<a|n<<i|r,Di=e}function Ai(e){e.return!==null&&(Oi(e,1),ki(e,1,0))}function ji(e){for(;e===xi;)xi=yi[--bi],yi[bi]=null,Si=yi[--bi],yi[bi]=null;for(;e===Ti;)Ti=Ci[--wi],Ci[wi]=null,Di=Ci[--wi],Ci[wi]=null,Ei=Ci[--wi],Ci[wi]=null}function Mi(e,t){Ci[wi++]=Ei,Ci[wi++]=Di,Ci[wi++]=Ti,Ei=t.id,Di=t.overflow,Ti=e}var Ni=null,z=null,B=!1,Pi=null,Fi=!1,Ii=Error(i(519));function Li(e){throw Ui(vi(Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),Ii}function Ri(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[lt]=e,t[ut]=r,n){case`dialog`:Q(`cancel`,t),Q(`close`,t);break;case`iframe`:case`object`:case`embed`:Q(`load`,t);break;case`video`:case`audio`:for(n=0;n<_d.length;n++)Q(_d[n],t);break;case`source`:Q(`error`,t);break;case`img`:case`image`:case`link`:Q(`error`,t),Q(`load`,t);break;case`details`:Q(`toggle`,t);break;case`input`:Q(`invalid`,t),Ut(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:Q(`invalid`,t);break;case`textarea`:Q(`invalid`,t),qt(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||Md(t.textContent,n)?(r.popover!=null&&(Q(`beforetoggle`,t),Q(`toggle`,t)),r.onScroll!=null&&Q(`scroll`,t),r.onScrollEnd!=null&&Q(`scrollend`,t),r.onClick!=null&&(t.onclick=nn),t=!0):t=!1,t||Li(e,!0)}function zi(e){for(Ni=e.return;Ni;)switch(Ni.tag){case 5:case 31:case 13:Fi=!1;return;case 27:case 3:Fi=!0;return;default:Ni=Ni.return}}function Bi(e){if(e!==Ni)return!1;if(!B)return zi(e),B=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=n===`form`||n===`button`||Ud(e.type,e.memoizedProps)),n=!n),n&&z&&Li(e),zi(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));z=uf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));z=uf(e)}else t===27?(t=z,Zd(e.type)?(e=lf,lf=null,z=e):z=t):z=Ni?cf(e.stateNode.nextSibling):null;return!0}function Vi(){z=Ni=null,B=!1}function Hi(){var e=Pi;return e!==null&&(Zl===null?Zl=e:Zl.push.apply(Zl,e),Pi=null),e}function Ui(e){Pi===null?Pi=[e]:Pi.push(e)}var Wi=le(null),Gi=null,Ki=null;function qi(e,t,n){A(Wi,t._currentValue),t._currentValue=n}function Ji(e){e._currentValue=Wi.current,ue(Wi)}function Yi(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function Xi(e,t,n,r){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var o=a.dependencies;if(o!==null){var s=a.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=a;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),Yi(o.return,n,e),r||(s=null);break a}o=c.next}}else if(a.tag===18){if(s=a.return,s===null)throw Error(i(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),Yi(s,n,e),s=null}else s=a.child;if(s!==null)s.return=a;else for(s=a;s!==null;){if(s===e){s=null;break}if(a=s.sibling,a!==null){a.return=s.return,s=a;break}s=s.return}a=s}}function Zi(e,t,n,r){e=null;for(var a=t,o=!1;a!==null;){if(!o){if(a.flags&524288)o=!0;else if(a.flags&262144)break}if(a.tag===10){var s=a.alternate;if(s===null)throw Error(i(387));if(s=s.memoizedProps,s!==null){var c=a.type;Cr(a.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(a===pe.current){if(s=a.alternate,s===null)throw Error(i(387));s.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e===null?e=[Qf]:e.push(Qf))}a=a.return}e!==null&&Xi(t,e,n,r),t.flags|=262144}function Qi(e){for(e=e.firstContext;e!==null;){if(!Cr(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function $i(e){Gi=e,Ki=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function ea(e){return na(Gi,e)}function ta(e,t){return Gi===null&&$i(e),na(e,t)}function na(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},Ki===null){if(e===null)throw Error(i(308));Ki=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Ki=Ki.next=t;return n}var ra=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},ia=t.unstable_scheduleCallback,aa=t.unstable_NormalPriority,oa={$$typeof:b,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function sa(){return{controller:new ra,data:new Map,refCount:0}}function ca(e){e.refCount--,e.refCount===0&&ia(aa,function(){e.controller.abort()})}var la=null,ua=0,da=0,fa=null;function pa(e,t){if(la===null){var n=la=[];ua=0,da=dd(),fa={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return ua++,t.then(ma,ma),t}function ma(){if(--ua===0&&la!==null){fa!==null&&(fa.status=`fulfilled`);var e=la;la=null,da=0,fa=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function ha(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var ga=E.S;E.S=function(e,t){eu=Oe(),typeof t==`object`&&t&&typeof t.then==`function`&&pa(e,t),ga!==null&&ga(e,t)};var _a=le(null);function va(){var e=_a.current;return e===null?K.pooledCache:e}function ya(e,t){t===null?A(_a,_a.current):A(_a,t.pool)}function ba(){var e=va();return e===null?null:{parent:oa._currentValue,pool:e}}var xa=Error(i(460)),Sa=Error(i(474)),Ca=Error(i(542)),wa={then:function(){}};function Ta(e){return e=e.status,e===`fulfilled`||e===`rejected`}function Ea(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(nn,nn),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Aa(e),e;default:if(typeof t.status==`string`)t.then(nn,nn);else{if(e=K,e!==null&&100<e.shellSuspendCounter)throw Error(i(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Aa(e),e}throw Oa=t,xa}}function Da(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(Oa=e,xa):e}}var Oa=null;function ka(){if(Oa===null)throw Error(i(459));var e=Oa;return Oa=null,e}function Aa(e){if(e===xa||e===Ca)throw Error(i(483))}var ja=null,Ma=0;function Na(e){var t=Ma;return Ma+=1,ja===null&&(ja=[]),Ea(ja,e,t)}function Pa(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Fa(e,t){throw t.$$typeof===p?Error(i(525)):(e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function Ia(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function a(e,t){return e=ui(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=mi(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===g?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===C&&Da(i)===t.type)?(t=a(t,n.props),Pa(t,n),t.return=e,t):(t=fi(n.type,n.key,n.props,null,e.mode,r),Pa(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=gi(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=pi(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=mi(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case m:return n=fi(t.type,t.key,t.props,null,e.mode,n),Pa(n,t),n.return=e,n;case h:return t=gi(t,e.mode,n),t.return=e,t;case C:return t=Da(t),f(e,t,n)}if(oe(t)||re(t))return t=pi(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,Na(t),n);if(t.$$typeof===b)return f(e,ta(e,t),n);Fa(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case m:return n.key===i?l(e,t,n,r):null;case h:return n.key===i?u(e,t,n,r):null;case C:return n=Da(n),p(e,t,n,r)}if(oe(n)||re(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,Na(n),r);if(n.$$typeof===b)return p(e,t,ta(e,n),r);Fa(e,n)}return null}function _(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case m:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case h:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case C:return r=Da(r),_(e,t,n,r,i)}if(oe(r)||re(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return _(e,t,n,Na(r),i);if(r.$$typeof===b)return _(e,t,n,ta(t,r),i);Fa(t,r)}return null}function v(i,a,s,c){for(var l=null,u=null,d=a,m=a=0,h=null;d!==null&&m<s.length;m++){d.index>m?(h=d,d=null):h=d.sibling;var g=p(i,d,s[m],c);if(g===null){d===null&&(d=h);break}e&&d&&g.alternate===null&&t(i,d),a=o(g,a,m),u===null?l=g:u.sibling=g,u=g,d=h}if(m===s.length)return n(i,d),B&&Oi(i,m),l;if(d===null){for(;m<s.length;m++)d=f(i,s[m],c),d!==null&&(a=o(d,a,m),u===null?l=d:u.sibling=d,u=d);return B&&Oi(i,m),l}for(d=r(d);m<s.length;m++)h=_(d,i,m,s[m],c),h!==null&&(e&&h.alternate!==null&&d.delete(h.key===null?m:h.key),a=o(h,a,m),u===null?l=h:u.sibling=h,u=h);return e&&d.forEach(function(e){return t(i,e)}),B&&Oi(i,m),l}function y(a,s,c,l){if(c==null)throw Error(i(151));for(var u=null,d=null,m=s,h=s=0,g=null,v=c.next();m!==null&&!v.done;h++,v=c.next()){m.index>h?(g=m,m=null):g=m.sibling;var y=p(a,m,v.value,l);if(y===null){m===null&&(m=g);break}e&&m&&y.alternate===null&&t(a,m),s=o(y,s,h),d===null?u=y:d.sibling=y,d=y,m=g}if(v.done)return n(a,m),B&&Oi(a,h),u;if(m===null){for(;!v.done;h++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,h),d===null?u=v:d.sibling=v,d=v);return B&&Oi(a,h),u}for(m=r(m);!v.done;h++,v=c.next())v=_(m,a,h,v.value,l),v!==null&&(e&&v.alternate!==null&&m.delete(v.key===null?h:v.key),s=o(v,s,h),d===null?u=v:d.sibling=v,d=v);return e&&m.forEach(function(e){return t(a,e)}),B&&Oi(a,h),u}function x(e,r,o,c){if(typeof o==`object`&&o&&o.type===g&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case m:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===g){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===C&&Da(l)===r.type){n(e,r.sibling),c=a(r,o.props),Pa(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===g?(c=pi(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=fi(o.type,o.key,o.props,null,e.mode,c),Pa(c,o),c.return=e,e=c)}return s(e);case h:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=gi(o,e.mode,c),c.return=e,e=c}return s(e);case C:return o=Da(o),x(e,r,o,c)}if(oe(o))return v(e,r,o,c);if(re(o)){if(l=re(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),y(e,r,o,c)}if(typeof o.then==`function`)return x(e,r,Na(o),c);if(o.$$typeof===b)return x(e,r,ta(e,o),c);Fa(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=mi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Ma=0;var i=x(e,t,n,r);return ja=null,i}catch(t){if(t===xa||t===Ca)throw t;var a=ci(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var La=Ia(!0),Ra=Ia(!1),za=!1;function Ba(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Va(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ha(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Ua(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,G&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=ai(e),ii(e,null,n),t}return ti(e,r,t,n),ai(e)}function Wa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,nt(e,n)}}function Ga(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n}else e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ka=!1;function qa(){if(Ka){var e=fa;if(e!==null)throw e}}function Ja(e,t,n,r){Ka=!1;var i=e.updateQueue;za=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var p=s.lane&-536870913,m=p!==s.lane;if(m?(J&p)===p:(r&p)===p){p!==0&&p===da&&(Ka=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;p=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,p);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,p=typeof h==`function`?h.call(_,d,p):h,p==null)break a;d=f({},d,p);break a;case 2:za=!0}}p=s.callback,p!==null&&(e.flags|=64,m&&(e.flags|=8192),m=i.callbacks,m===null?i.callbacks=[p]:m.push(p))}else m={lane:p,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=m,c=d):u=u.next=m,o|=p;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;m=s,s=m.next,m.next=null,i.lastBaseUpdate=m,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Gl|=o,e.lanes=o,e.memoizedState=d}}function Ya(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function Xa(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)Ya(n[e],t)}var Za=le(null),Qa=le(0);function $a(e,t){e=Wl,A(Qa,e),A(Za,t),Wl=e|t.baseLanes}function eo(){A(Qa,Wl),A(Za,Za.current)}function to(){Wl=Qa.current,ue(Za),ue(Qa)}var no=le(null),ro=null;function io(e){var t=e.alternate;A(lo,lo.current&1),A(no,e),ro===null&&(t===null||Za.current!==null||t.memoizedState!==null)&&(ro=e)}function ao(e){A(lo,lo.current),A(no,e),ro===null&&(ro=e)}function oo(e){e.tag===22?(A(lo,lo.current),A(no,e),ro===null&&(ro=e)):so(e)}function so(){A(lo,lo.current),A(no,no.current)}function co(e){ue(no),ro===e&&(ro=null),ue(lo)}var lo=le(0);function uo(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||af(n)||of(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){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 fo=0,V=null,H=null,po=null,mo=!1,ho=!1,go=!1,_o=0,vo=0,yo=null,bo=0;function xo(){throw Error(i(321))}function So(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Cr(e[n],t[n]))return!1;return!0}function Co(e,t,n,r,i,a){return fo=a,V=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,E.H=e===null||e.memoizedState===null?Bs:Vs,go=!1,a=n(r,i),go=!1,ho&&(a=To(t,n,r,i)),wo(e),a}function wo(e){E.H=zs;var t=H!==null&&H.next!==null;if(fo=0,po=H=V=null,mo=!1,vo=0,yo=null,t)throw Error(i(300));e===null||ic||(e=e.dependencies,e!==null&&Qi(e)&&(ic=!0))}function To(e,t,n,r){V=e;var a=0;do{if(ho&&(yo=null),vo=0,ho=!1,25<=a)throw Error(i(301));if(a+=1,po=H=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}E.H=Hs,o=t(n,r)}while(ho);return o}function Eo(){var e=E.H,t=e.useState()[0];return t=typeof t.then==`function`?No(t):t,e=e.useState()[0],(H===null?null:H.memoizedState)!==e&&(V.flags|=1024),t}function Do(){var e=_o!==0;return _o=0,e}function Oo(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function ko(e){if(mo){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}mo=!1}fo=0,po=H=V=null,ho=!1,vo=_o=0,yo=null}function Ao(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return po===null?V.memoizedState=po=e:po=po.next=e,po}function jo(){if(H===null){var e=V.alternate;e=e===null?null:e.memoizedState}else e=H.next;var t=po===null?V.memoizedState:po.next;if(t!==null)po=t,H=e;else{if(e===null)throw V.alternate===null?Error(i(467)):Error(i(310));H=e,e={memoizedState:H.memoizedState,baseState:H.baseState,baseQueue:H.baseQueue,queue:H.queue,next:null},po===null?V.memoizedState=po=e:po=po.next=e}return po}function Mo(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function No(e){var t=vo;return vo+=1,yo===null&&(yo=[]),e=Ea(yo,e,t),t=V,(po===null?t.memoizedState:po.next)===null&&(t=t.alternate,E.H=t===null||t.memoizedState===null?Bs:Vs),e}function Po(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return No(e);if(e.$$typeof===b)return ea(e)}throw Error(i(438,String(e)))}function Fo(e){var t=null,n=V.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=V.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=Mo(),V.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=T;return t.index++,n}function Io(e,t){return typeof t==`function`?t(e):t}function Lo(e){return Ro(jo(),H,e)}function Ro(e,t,n){var r=e.queue;if(r===null)throw Error(i(311));r.lastRenderedReducer=n;var a=e.baseQueue,o=r.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}t.baseQueue=a=o,r.pending=null}if(o=e.baseState,a===null)e.memoizedState=o;else{t=a.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(fo&f)===f:(J&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===da&&(d=!0);else if((fo&p)===p){u=u.next,p===da&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,V.lanes|=p,Gl|=p;f=u.action,go&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,V.lanes|=f,Gl|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!Cr(o,e.memoizedState)&&(ic=!0,d&&(n=fa,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return a===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function zo(e){var t=jo(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);Cr(o,t.memoizedState)||(ic=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function Bo(e,t,n){var r=V,a=jo(),o=B;if(o){if(n===void 0)throw Error(i(407));n=n()}else n=t();var s=!Cr((H||a).memoizedState,n);if(s&&(a.memoizedState=n,ic=!0),a=a.queue,ds(Uo.bind(null,r,a,e),[e]),a.getSnapshot!==t||s||po!==null&&po.memoizedState.tag&1){if(r.flags|=2048,os(9,{destroy:void 0},Ho.bind(null,r,a,n,t),null),K===null)throw Error(i(349));o||fo&127||Vo(r,t,n)}return n}function Vo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=V.updateQueue,t===null?(t=Mo(),V.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Ho(e,t,n,r){t.value=n,t.getSnapshot=r,Wo(t)&&Go(e)}function Uo(e,t,n){return n(function(){Wo(t)&&Go(e)})}function Wo(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Cr(e,n)}catch{return!0}}function Go(e){var t=ri(e,2);t!==null&&hu(t,e,2)}function Ko(e){var t=Ao();if(typeof e==`function`){var n=e;if(e=n(),go){ze(!0);try{n()}finally{ze(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Io,lastRenderedState:e},t}function qo(e,t,n,r){return e.baseState=n,Ro(e,H,typeof r==`function`?r:Io)}function Jo(e,t,n,r,a){if(Is(e))throw Error(i(485));if(e=t.action,e!==null){var o={payload:a,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};E.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,Yo(t,o)):(o.next=n.next,t.pending=n.next=o)}}function Yo(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=E.T,o={};E.T=o;try{var s=n(i,r),c=E.S;c!==null&&c(o,s),Xo(e,t,s)}catch(n){Qo(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),E.T=a}}else try{a=n(i,r),Xo(e,t,a)}catch(n){Qo(e,t,n)}}function Xo(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){Zo(e,t,n)},function(n){return Qo(e,t,n)}):Zo(e,t,n)}function Zo(e,t,n){t.status=`fulfilled`,t.value=n,$o(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,Yo(e,n)))}function Qo(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,$o(t),t=t.next;while(t!==r)}e.action=null}function $o(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function es(e,t){return t}function ts(e,t){if(B){var n=K.formState;if(n!==null){a:{var r=V;if(B){if(z){b:{for(var i=z,a=Fi;i.nodeType!==8;)if(!a||(i=cf(i.nextSibling),i===null)){i=null;break b}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){z=cf(i.nextSibling),r=i.data===`F!`;break a}}Li(r)}r=!1}r&&(t=n[0])}}return n=Ao(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:es,lastRenderedState:t},n.queue=r,n=Ns.bind(null,V,r),r.dispatch=n,r=Ko(!1),a=Fs.bind(null,V,!1,r.queue),r=Ao(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=Jo.bind(null,V,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function ns(e){return rs(jo(),H,e)}function rs(e,t,n){if(t=Ro(e,t,es)[0],e=Lo(Io)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=No(t)}catch(e){throw e===xa?Ca:e}else r=t;t=jo();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(V.flags|=2048,os(9,{destroy:void 0},is.bind(null,i,n),null)),[r,a,e]}function is(e,t){e.action=t}function as(e){var t=jo(),n=H;if(n!==null)return rs(t,n,e);jo(),t=t.memoizedState,n=jo();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function os(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=V.updateQueue,t===null&&(t=Mo(),V.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function ss(){return jo().memoizedState}function cs(e,t,n,r){var i=Ao();V.flags|=e,i.memoizedState=os(1|t,{destroy:void 0},n,r===void 0?null:r)}function ls(e,t,n,r){var i=jo();r=r===void 0?null:r;var a=i.memoizedState.inst;H!==null&&r!==null&&So(r,H.memoizedState.deps)?i.memoizedState=os(t,a,n,r):(V.flags|=e,i.memoizedState=os(1|t,a,n,r))}function us(e,t){cs(8390656,8,e,t)}function ds(e,t){ls(2048,8,e,t)}function fs(e){V.flags|=4;var t=V.updateQueue;if(t===null)t=Mo(),V.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function ps(e){var t=jo().memoizedState;return fs({ref:t,nextImpl:e}),function(){if(G&2)throw Error(i(440));return t.impl.apply(void 0,arguments)}}function ms(e,t){return ls(4,2,e,t)}function hs(e,t){return ls(4,4,e,t)}function gs(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function _s(e,t,n){n=n==null?null:n.concat([e]),ls(4,4,gs.bind(null,t,e),n)}function vs(){}function ys(e,t){var n=jo();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&So(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function bs(e,t){var n=jo();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&So(t,r[1]))return r[0];if(r=e(),go){ze(!0);try{e()}finally{ze(!1)}}return n.memoizedState=[r,t],r}function xs(e,t,n){return n===void 0||fo&1073741824&&!(J&261930)?e.memoizedState=t:(e.memoizedState=n,e=mu(),V.lanes|=e,Gl|=e,n)}function Ss(e,t,n,r){return Cr(n,t)?n:Za.current===null?!(fo&42)||fo&1073741824&&!(J&261930)?(ic=!0,e.memoizedState=n):(e=mu(),V.lanes|=e,Gl|=e,t):(e=xs(e,n,r),Cr(e,t)||(ic=!0),e)}function Cs(e,t,n,r,i){var a=D.p;D.p=a!==0&&8>a?a:8;var o=E.T,s={};E.T=s,Fs(e,!1,t,n);try{var c=i(),l=E.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Ps(e,t,ha(c,r),pu(e)):Ps(e,t,r,pu(e))}catch(n){Ps(e,t,{then:function(){},status:`rejected`,reason:n},pu())}finally{D.p=a,o!==null&&s.types!==null&&(o.types=s.types),E.T=o}}function ws(){}function Ts(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=Es(e).queue;Cs(e,a,t,O,n===null?ws:function(){return Ds(e),n(r)})}function Es(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:O,baseState:O,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Io,lastRenderedState:O},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Io,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Ds(e){var t=Es(e);t.next===null&&(t=e.alternate.memoizedState),Ps(e,t.next.queue,{},pu())}function Os(){return ea(Qf)}function ks(){return jo().memoizedState}function As(){return jo().memoizedState}function js(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=pu();e=Ha(n);var r=Ua(t,e,n);r!==null&&(hu(r,t,n),Wa(r,t,n)),t={cache:sa()},e.payload=t;return}t=t.return}}function Ms(e,t,n){var r=pu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Is(e)?Ls(t,n):(n=ni(e,t,n,r),n!==null&&(hu(n,e,r),Rs(n,t,r)))}function Ns(e,t,n){Ps(e,t,n,pu())}function Ps(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Is(e))Ls(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,Cr(s,o))return ti(e,t,i,0),K===null&&ei(),!1}catch{}if(n=ni(e,t,i,r),n!==null)return hu(n,e,r),Rs(n,t,r),!0}return!1}function Fs(e,t,n,r){if(r={lane:2,revertLane:dd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Is(e)){if(t)throw Error(i(479))}else t=ni(e,n,r,2),t!==null&&hu(t,e,2)}function Is(e){var t=e.alternate;return e===V||t!==null&&t===V}function Ls(e,t){ho=mo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Rs(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,nt(e,n)}}var zs={readContext:ea,use:Po,useCallback:xo,useContext:xo,useEffect:xo,useImperativeHandle:xo,useLayoutEffect:xo,useInsertionEffect:xo,useMemo:xo,useReducer:xo,useRef:xo,useState:xo,useDebugValue:xo,useDeferredValue:xo,useTransition:xo,useSyncExternalStore:xo,useId:xo,useHostTransitionStatus:xo,useFormState:xo,useActionState:xo,useOptimistic:xo,useMemoCache:xo,useCacheRefresh:xo};zs.useEffectEvent=xo;var Bs={readContext:ea,use:Po,useCallback:function(e,t){return Ao().memoizedState=[e,t===void 0?null:t],e},useContext:ea,useEffect:us,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),cs(4194308,4,gs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return cs(4194308,4,e,t)},useInsertionEffect:function(e,t){cs(4,2,e,t)},useMemo:function(e,t){var n=Ao();t=t===void 0?null:t;var r=e();if(go){ze(!0);try{e()}finally{ze(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=Ao();if(n!==void 0){var i=n(t);if(go){ze(!0);try{n(t)}finally{ze(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Ms.bind(null,V,e),[r.memoizedState,e]},useRef:function(e){var t=Ao();return e={current:e},t.memoizedState=e},useState:function(e){e=Ko(e);var t=e.queue,n=Ns.bind(null,V,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:vs,useDeferredValue:function(e,t){return xs(Ao(),e,t)},useTransition:function(){var e=Ko(!1);return e=Cs.bind(null,V,e.queue,!0,!1),Ao().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=V,a=Ao();if(B){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),K===null)throw Error(i(349));J&127||Vo(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,us(Uo.bind(null,r,o,e),[e]),r.flags|=2048,os(9,{destroy:void 0},Ho.bind(null,r,o,n,t),null),n},useId:function(){var e=Ao(),t=K.identifierPrefix;if(B){var n=Di,r=Ei;n=(r&~(1<<32-Be(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=_o++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=bo++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:Os,useFormState:ts,useActionState:ts,useOptimistic:function(e){var t=Ao();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Fs.bind(null,V,!0,n),n.dispatch=t,[e,t]},useMemoCache:Fo,useCacheRefresh:function(){return Ao().memoizedState=js.bind(null,V)},useEffectEvent:function(e){var t=Ao(),n={impl:e};return t.memoizedState=n,function(){if(G&2)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},Vs={readContext:ea,use:Po,useCallback:ys,useContext:ea,useEffect:ds,useImperativeHandle:_s,useInsertionEffect:ms,useLayoutEffect:hs,useMemo:bs,useReducer:Lo,useRef:ss,useState:function(){return Lo(Io)},useDebugValue:vs,useDeferredValue:function(e,t){return Ss(jo(),H.memoizedState,e,t)},useTransition:function(){var e=Lo(Io)[0],t=jo().memoizedState;return[typeof e==`boolean`?e:No(e),t]},useSyncExternalStore:Bo,useId:ks,useHostTransitionStatus:Os,useFormState:ns,useActionState:ns,useOptimistic:function(e,t){return qo(jo(),H,e,t)},useMemoCache:Fo,useCacheRefresh:As};Vs.useEffectEvent=ps;var Hs={readContext:ea,use:Po,useCallback:ys,useContext:ea,useEffect:ds,useImperativeHandle:_s,useInsertionEffect:ms,useLayoutEffect:hs,useMemo:bs,useReducer:zo,useRef:ss,useState:function(){return zo(Io)},useDebugValue:vs,useDeferredValue:function(e,t){var n=jo();return H===null?xs(n,e,t):Ss(n,H.memoizedState,e,t)},useTransition:function(){var e=zo(Io)[0],t=jo().memoizedState;return[typeof e==`boolean`?e:No(e),t]},useSyncExternalStore:Bo,useId:ks,useHostTransitionStatus:Os,useFormState:as,useActionState:as,useOptimistic:function(e,t){var n=jo();return H===null?(n.baseState=e,[e,n.queue.dispatch]):qo(n,H,e,t)},useMemoCache:Fo,useCacheRefresh:As};Hs.useEffectEvent=ps;function Us(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:f({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Ws={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=pu(),i=Ha(r);i.payload=t,n!=null&&(i.callback=n),t=Ua(e,i,r),t!==null&&(hu(t,e,r),Wa(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=pu(),i=Ha(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Ua(e,i,r),t!==null&&(hu(t,e,r),Wa(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=pu(),r=Ha(n);r.tag=2,t!=null&&(r.callback=t),t=Ua(e,r,n),t!==null&&(hu(t,e,n),Wa(t,e,n))}};function Gs(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!wr(n,r)||!wr(i,a):!0}function Ks(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&&Ws.enqueueReplaceState(t,t.state,null)}function qs(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=f({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function Js(e){Xr(e)}function Ys(e){console.error(e)}function Xs(e){Xr(e)}function Zs(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function Qs(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function $s(e,t,n){return n=Ha(n),n.tag=3,n.payload={element:null},n.callback=function(){Zs(e,t)},n}function ec(e){return e=Ha(e),e.tag=3,e}function tc(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){Qs(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Qs(t,n,r),typeof i!=`function`&&(ru===null?ru=new Set([this]):ru.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function nc(e,t,n,r,a){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Zi(t,n,a,!0),n=no.current,n!==null){switch(n.tag){case 31:case 13:return ro===null?Du():n.alternate===null&&X===0&&(X=3),n.flags&=-257,n.flags|=65536,n.lanes=a,r===wa?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Gu(e,r,a)),!1;case 22:return n.flags|=65536,r===wa?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),Gu(e,r,a)),!1}throw Error(i(435,n.tag))}return Gu(e,r,a),Du(),!1}if(B)return t=no.current,t===null?(r!==Ii&&(t=Error(i(423),{cause:r}),Ui(vi(t,n))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,r=vi(r,n),a=$s(e.stateNode,r,a),Ga(e,a),X!==4&&(X=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=a,r!==Ii&&(e=Error(i(422),{cause:r}),Ui(vi(e,n)))),!1;var o=Error(i(520),{cause:r});if(o=vi(o,n),Xl===null?Xl=[o]:Xl.push(o),X!==4&&(X=2),t===null)return!0;r=vi(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=a&-a,n.lanes|=e,e=$s(n.stateNode,r,e),Ga(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(ru===null||!ru.has(o))))return n.flags|=65536,a&=-a,n.lanes|=a,a=ec(a),tc(a,e,n,r),Ga(n,a),!1}n=n.return}while(n!==null);return!1}var rc=Error(i(461)),ic=!1;function ac(e,t,n,r){t.child=e===null?Ra(t,null,n,r):La(t,e.child,n,r)}function oc(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return $i(t),r=Co(e,t,n,o,a,i),s=Do(),e!==null&&!ic?(Oo(e,t,i),Ac(e,t,i)):(B&&s&&Ai(t),t.flags|=1,ac(e,t,r,i),t.child)}function sc(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!li(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,cc(e,t,a,r,i)):(e=fi(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!jc(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?wr:n,n(o,r)&&e.ref===t.ref)return Ac(e,t,i)}return t.flags|=1,e=ui(a,r),e.ref=t.ref,e.return=t,t.child=e}function cc(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(wr(a,r)&&e.ref===t.ref){if(ic=!1,t.pendingProps=r=a,jc(e,i))e.flags&131072&&(ic=!0);else return t.lanes=e.lanes,Ac(e,t,i)}}return gc(e,t,n,r,i)}function lc(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return dc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&ya(t,a===null?null:a.cachePool),a===null?eo():$a(t,a),oo(t);else return r=t.lanes=536870912,dc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&ya(t,null),eo(),so(t)):(ya(t,a.cachePool),$a(t,a),so(t),t.memoizedState=null);return ac(e,t,i,n),t.child}function uc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function dc(e,t,n,r,i){var a=va();return a=a===null?null:{parent:oa._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&ya(t,null),eo(),oo(t),e!==null&&Zi(e,t,r,!0),t.childLanes=i,null}function fc(e,t){return t=Tc({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function pc(e,t,n){return La(t,e.child,null,n),e=fc(t,t.pendingProps),e.flags|=2,co(t),t.memoizedState=null,e}function mc(e,t,n){var r=t.pendingProps,a=!!(t.flags&128);if(t.flags&=-129,e===null){if(B){if(r.mode===`hidden`)return e=fc(t,r),t.lanes=536870912,uc(null,e);if(ao(t),(e=z)?(e=rf(e,Fi),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Ti===null?null:{id:Ei,overflow:Di},retryLane:536870912,hydrationErrors:null},n=hi(e),n.return=t,t.child=n,Ni=t,z=null)):e=null,e===null)throw Li(t);return t.lanes=536870912,null}return fc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(ao(t),a){if(t.flags&256)t.flags&=-257,t=pc(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(i(558))}else if(ic||Zi(e,t,n,!1),a=(n&e.childLanes)!==0,ic||a){if(r=K,r!==null&&(s=rt(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,ri(e,s),hu(r,e,s),rc;Du(),t=pc(e,t,n)}else e=o.treeContext,z=cf(s.nextSibling),Ni=t,B=!0,Pi=null,Fi=!1,e!==null&&Mi(t,e),t=fc(t,r),t.flags|=4096;return t}return e=ui(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function hc(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(i(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function gc(e,t,n,r,i){return $i(t),n=Co(e,t,n,r,void 0,i),r=Do(),e!==null&&!ic?(Oo(e,t,i),Ac(e,t,i)):(B&&r&&Ai(t),t.flags|=1,ac(e,t,n,i),t.child)}function _c(e,t,n,r,i,a){return $i(t),t.updateQueue=null,n=To(t,r,n,i),wo(e),r=Do(),e!==null&&!ic?(Oo(e,t,a),Ac(e,t,a)):(B&&r&&Ai(t),t.flags|=1,ac(e,t,n,a),t.child)}function vc(e,t,n,r,i){if($i(t),t.stateNode===null){var a=oi,o=n.contextType;typeof o==`object`&&o&&(a=ea(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Ws,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Ba(t),o=n.contextType,a.context=typeof o==`object`&&o?ea(o):oi,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(Us(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&Ws.enqueueReplaceState(a,a.state,null),Ja(t,r,a,i),qa(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=qs(n,s);a.props=c;var l=a.context,u=n.contextType;o=oi,typeof u==`object`&&u&&(o=ea(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Ks(t,a,r,o),za=!1;var f=t.memoizedState;a.state=f,Ja(t,r,a,i),qa(),l=t.memoizedState,s||f!==l||za?(typeof d==`function`&&(Us(t,n,d,r),l=t.memoizedState),(c=za||Gs(t,n,c,r,f,l,o))?(u||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=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,Va(e,t),o=t.memoizedProps,u=qs(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=oi,typeof l==`object`&&l&&(c=ea(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Ks(t,a,r,c),za=!1,f=t.memoizedState,a.state=f,Ja(t,r,a,i),qa();var p=t.memoizedState;o!==d||f!==p||za||e!==null&&e.dependencies!==null&&Qi(e.dependencies)?(typeof s==`function`&&(Us(t,n,s,r),p=t.memoizedState),(u=za||Gs(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Qi(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),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=p),a.props=r,a.state=p,a.context=c,r=u):(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 a=r,hc(e,t),r=!!(t.flags&128),a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=La(t,e.child,null,i),t.child=La(t,null,n,i)):ac(e,t,n,i),t.memoizedState=a.state,e=t.child):e=Ac(e,t,i),e}function yc(e,t,n,r){return Vi(),t.flags|=256,ac(e,t,n,r),t.child}var bc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function xc(e){return{baseLanes:e,cachePool:ba()}}function Sc(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=Jl),e}function Cc(e,t,n){var r=t.pendingProps,a=!1,o=!!(t.flags&128),s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:!!(lo.current&2)),s&&(a=!0,t.flags&=-129),s=!!(t.flags&32),t.flags&=-33,e===null){if(B){if(a?io(t):so(t),(e=z)?(e=rf(e,Fi),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Ti===null?null:{id:Ei,overflow:Di},retryLane:536870912,hydrationErrors:null},n=hi(e),n.return=t,t.child=n,Ni=t,z=null)):e=null,e===null)throw Li(t);return of(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,a?(so(t),a=t.mode,c=Tc({mode:`hidden`,children:c},a),r=pi(r,a,n,null),c.return=t,r.return=t,c.sibling=r,t.child=c,r=t.child,r.memoizedState=xc(n),r.childLanes=Sc(e,s,n),t.memoizedState=bc,uc(null,r)):(io(t),wc(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(o)t.flags&256?(io(t),t.flags&=-257,t=Ec(e,t,n)):t.memoizedState===null?(so(t),c=r.fallback,a=t.mode,r=Tc({mode:`visible`,children:r.children},a),c=pi(c,a,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,La(t,e.child,null,n),r=t.child,r.memoizedState=xc(n),r.childLanes=Sc(e,s,n),t.memoizedState=bc,t=uc(null,r)):(so(t),t.child=e.child,t.flags|=128,t=null);else if(io(t),of(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(i(419)),r.stack=``,r.digest=s,Ui({value:r,source:null,stack:null}),t=Ec(e,t,n)}else if(ic||Zi(e,t,n,!1),s=(n&e.childLanes)!==0,ic||s){if(s=K,s!==null&&(r=rt(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,ri(e,r),hu(s,e,r),rc;af(c)||Du(),t=Ec(e,t,n)}else af(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,z=cf(c.nextSibling),Ni=t,B=!0,Pi=null,Fi=!1,e!==null&&Mi(t,e),t=wc(t,r.children),t.flags|=4096);return t}return a?(so(t),c=r.fallback,a=t.mode,l=e.child,u=l.sibling,r=ui(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=pi(c,a,n,null),c.flags|=2):c=ui(u,c),c.return=t,r.return=t,r.sibling=c,t.child=r,uc(null,r),r=t.child,c=e.child.memoizedState,c===null?c=xc(n):(a=c.cachePool,a===null?a=ba():(l=oa._currentValue,a=a.parent===l?a:{parent:l,pool:l}),c={baseLanes:c.baseLanes|n,cachePool:a}),r.memoizedState=c,r.childLanes=Sc(e,s,n),t.memoizedState=bc,uc(e.child,r)):(io(t),n=e.child,e=n.sibling,n=ui(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(s=t.deletions,s===null?(t.deletions=[e],t.flags|=16):s.push(e)),t.child=n,t.memoizedState=null,n)}function wc(e,t){return t=Tc({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function Tc(e,t){return e=ci(22,e,null,t),e.lanes=0,e}function Ec(e,t,n){return La(t,e.child,null,n),e=wc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Dc(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Yi(e.return,t,n)}function Oc(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function kc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=lo.current,s=!!(o&2);if(s?(o=o&1|2,t.flags|=128):o&=1,A(lo,o),ac(e,t,r,n),r=B?Si:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Dc(e,n,t);else if(e.tag===19)Dc(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&uo(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Oc(t,!1,i,n,a,r);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&uo(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Oc(t,!0,n,null,a,r);break;case`together`:Oc(t,!1,null,null,void 0,r);break;default:t.memoizedState=null}return t.child}function Ac(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Gl|=t.lanes,(n&t.childLanes)===0){if(e!==null){if(Zi(e,t,n,!1),(n&t.childLanes)===0)return null}else return null}if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=ui(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=ui(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function jc(e,t){return(e.lanes&t)!==0||(e=e.dependencies,!!(e!==null&&Qi(e)))}function Mc(e,t,n){switch(t.tag){case 3:me(t,t.stateNode.containerInfo),qi(t,oa,e.memoizedState.cache),Vi();break;case 27:case 5:ge(t);break;case 4:me(t,t.stateNode.containerInfo);break;case 10:qi(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,ao(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(io(t),e=Ac(e,t,n),e===null?null:e.sibling):Cc(e,t,n):(io(t),t.flags|=128,null);io(t);break;case 19:var i=!!(e.flags&128);if(r=(n&t.childLanes)!==0,r||=(Zi(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return kc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),A(lo,lo.current),r)break;return null;case 22:return t.lanes=0,lc(e,t,n,t.pendingProps);case 24:qi(t,oa,e.memoizedState.cache)}return Ac(e,t,n)}function Nc(e,t,n){if(e!==null){if(e.memoizedProps!==t.pendingProps)ic=!0;else{if(!jc(e,n)&&!(t.flags&128))return ic=!1,Mc(e,t,n);ic=!!(e.flags&131072)}}else ic=!1,B&&t.flags&1048576&&ki(t,Si,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=Da(t.elementType),t.type=e,typeof e==`function`)li(e)?(r=qs(e,r),t.tag=1,t=vc(null,t,e,r,n)):(t.tag=0,t=gc(null,t,e,r,n));else{if(e!=null){var a=e.$$typeof;if(a===x){t.tag=11,t=oc(null,t,e,r,n);break a}if(a===te){t.tag=14,t=sc(null,t,e,r,n);break a}}throw t=ae(e)||e,Error(i(306,t,``))}}return t;case 0:return gc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,a=qs(r,t.pendingProps),vc(e,t,r,a,n);case 3:a:{if(me(t,t.stateNode.containerInfo),e===null)throw Error(i(387));r=t.pendingProps;var o=t.memoizedState;a=o.element,Va(e,t),Ja(t,r,null,n);var s=t.memoizedState;if(r=s.cache,qi(t,oa,r),r!==o.cache&&Xi(t,[oa],n,!0),qa(),r=s.element,o.isDehydrated){if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=yc(e,t,r,n);break a}if(r!==a){a=vi(Error(i(424)),t),Ui(a),t=yc(e,t,r,n);break a}switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(z=cf(e.firstChild),Ni=t,B=!0,Pi=null,Fi=!0,n=Ra(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(Vi(),r===a){t=Ac(e,t,n);break a}ac(e,t,r,n)}t=t.child}return t;case 26:return hc(e,t),e===null?(n=kf(t.type,null,t.pendingProps,null))?t.memoizedState=n:B||(n=t.type,e=t.pendingProps,r=Bd(fe.current).createElement(n),r[lt]=t,r[ut]=e,Pd(r,n,e),St(r),t.stateNode=r):t.memoizedState=kf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return ge(t),e===null&&B&&(r=t.stateNode=ff(t.type,t.pendingProps,fe.current),Ni=t,Fi=!0,a=z,Zd(t.type)?(lf=a,z=cf(r.firstChild)):z=a),ac(e,t,t.pendingProps.children,n),hc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&B&&((a=r=z)&&(r=tf(r,t.type,t.pendingProps,Fi),r===null?a=!1:(t.stateNode=r,Ni=t,z=cf(r.firstChild),Fi=!1,a=!0)),a||Li(t)),ge(t),a=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Ud(a,o)?r=null:s!==null&&Ud(a,s)&&(t.flags|=32),t.memoizedState!==null&&(a=Co(e,t,Eo,null,null,n),Qf._currentValue=a),hc(e,t),ac(e,t,r,n),t.child;case 6:return e===null&&B&&((e=n=z)&&(n=nf(n,t.pendingProps,Fi),n===null?e=!1:(t.stateNode=n,Ni=t,z=null,e=!0)),e||Li(t)),null;case 13:return Cc(e,t,n);case 4:return me(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=La(t,null,r,n):ac(e,t,r,n),t.child;case 11:return oc(e,t,t.type,t.pendingProps,n);case 7:return ac(e,t,t.pendingProps,n),t.child;case 8:return ac(e,t,t.pendingProps.children,n),t.child;case 12:return ac(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,qi(t,t.type,r.value),ac(e,t,r.children,n),t.child;case 9:return a=t.type._context,r=t.pendingProps.children,$i(t),a=ea(a),r=r(a),t.flags|=1,ac(e,t,r,n),t.child;case 14:return sc(e,t,t.type,t.pendingProps,n);case 15:return cc(e,t,t.type,t.pendingProps,n);case 19:return kc(e,t,n);case 31:return mc(e,t,n);case 22:return lc(e,t,n,t.pendingProps);case 24:return $i(t),r=ea(oa),e===null?(a=va(),a===null&&(a=K,o=sa(),a.pooledCache=o,o.refCount++,o!==null&&(a.pooledCacheLanes|=n),a=o),t.memoizedState={parent:r,cache:a},Ba(t),qi(t,oa,a)):((e.lanes&n)!==0&&(Va(e,t),Ja(t,null,null,n),qa()),a=e.memoizedState,o=t.memoizedState,a.parent===r?(r=o.cache,qi(t,oa,r),r!==a.cache&&Xi(t,[oa],n,!0)):(a={parent:r,cache:r},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),qi(t,oa,r))),ac(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(i(156,t.tag))}function Pc(e){e.flags|=4}function Fc(e,t,n,r,i){if((t=!!(e.mode&32))&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i){if(e.stateNode.complete)e.flags|=8192;else if(wu())e.flags|=8192;else throw Oa=wa,Sa}}else e.flags&=-16777217}function Ic(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!Wf(t)){if(wu())e.flags|=8192;else throw Oa=wa,Sa}}function Lc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Ye(),e.lanes|=t,Yl|=t)}function Rc(e,t){if(!B)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 U(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&65011712,r|=i.flags&65011712,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 zc(e,t,n){var r=t.pendingProps;switch(ji(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return U(t),null;case 1:return U(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),Ji(oa),he(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Bi(t)?Pc(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Hi())),U(t),null;case 26:var a=t.type,o=t.memoizedState;return e===null?(Pc(t),o===null?(U(t),Fc(t,a,null,r,n)):(U(t),Ic(t,o))):o?o===e.memoizedState?(U(t),t.flags&=-16777217):(Pc(t),U(t),Ic(t,o)):(e=e.memoizedProps,e!==r&&Pc(t),U(t),Fc(t,a,e,r,n)),null;case 27:if(_e(t),n=fe.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Pc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return U(t),null}e=j.current,Bi(t)?Ri(t,e):(e=ff(a,r,n),t.stateNode=e,Pc(t))}return U(t),null;case 5:if(_e(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Pc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return U(t),null}if(o=j.current,Bi(t))Ri(t,o);else{var s=Bd(fe.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;default:switch(a){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[lt]=t,o[ut]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Pd(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Pc(t)}}return U(t),Fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Pc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=fe.current,Bi(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=Ni,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[lt]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Md(e.nodeValue,n)),e||Li(t,!0)}else e=Bd(e).createTextNode(r),e[lt]=t,t.stateNode=e}return U(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Bi(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[lt]=t}else Vi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;U(t),e=!1}else n=Hi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(co(t),t):(co(t),null);if(t.flags&128)throw Error(i(558))}return U(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Bi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[lt]=t}else Vi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;U(t),a=!1}else a=Hi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(co(t),t):(co(t),null)}return co(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Lc(t,t.updateQueue),U(t),null);case 4:return he(),e===null&&Sd(t.stateNode.containerInfo),U(t),null;case 10:return Ji(t.type),U(t),null;case 19:if(ue(lo),r=t.memoizedState,r===null)return U(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)Rc(r,!1);else{if(X!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=uo(e),o!==null){for(t.flags|=128,Rc(r,!1),e=o.updateQueue,t.updateQueue=e,Lc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)di(n,e),n=n.sibling;return A(lo,lo.current&1|2),B&&Oi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Oe()>tu&&(t.flags|=128,a=!0,Rc(r,!1),t.lanes=4194304)}}else{if(!a){if(e=uo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Lc(t,e),Rc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!B)return U(t),null}else 2*Oe()-r.renderingStartTime>tu&&n!==536870912&&(t.flags|=128,a=!0,Rc(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(U(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Oe(),e.sibling=null,n=lo.current,A(lo,a?n&1|2:n&1),B&&Oi(t,r.treeForkCount),e);case 22:case 23:return co(t),to(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(U(t),t.subtreeFlags&6&&(t.flags|=8192)):U(t),n=t.updateQueue,n!==null&&Lc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&ue(_a),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Ji(oa),U(t),null;case 25:return null;case 30:return null}throw Error(i(156,t.tag))}function Bc(e,t){switch(ji(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ji(oa),he(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return _e(t),null;case 31:if(t.memoizedState!==null){if(co(t),t.alternate===null)throw Error(i(340));Vi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(co(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));Vi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ue(lo),null;case 4:return he(),null;case 10:return Ji(t.type),null;case 22:case 23:return co(t),to(),e!==null&&ue(_a),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Ji(oa),null;case 25:return null;default:return null}}function Vc(e,t){switch(ji(t),t.tag){case 3:Ji(oa),he();break;case 26:case 27:case 5:_e(t);break;case 4:he();break;case 31:t.memoizedState!==null&&co(t);break;case 13:co(t);break;case 19:ue(lo);break;case 10:Ji(t.type);break;case 22:case 23:co(t),to(),e!==null&&ue(_a);break;case 24:Ji(oa)}}function Hc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Z(t,t.return,e)}}function Uc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Z(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Z(t,t.return,e)}}function Wc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Xa(t,n)}catch(t){Z(e,e.return,t)}}}function Gc(e,t,n){n.props=qs(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Z(e,t,n)}}function Kc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Z(e,t,n)}}function qc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){Z(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Z(e,t,n)}else n.current=null}}function Jc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Z(e,e.return,t)}}function Yc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[ut]=t}catch(t){Z(e,e.return,t)}}function Xc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(e.type)||e.tag===4}function Zc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Xc(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.tag===27&&Zd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Qc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=nn));else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Qc(e,t,n),e=e.sibling;e!==null;)Qc(e,t,n),e=e.sibling}function $c(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&&(r===27&&Zd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for($c(e,t,n),e=e.sibling;e!==null;)$c(e,t,n),e=e.sibling}function el(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Pd(t,r,n),t[lt]=e,t[ut]=n}catch(t){Z(e,e.return,t)}}var tl=!1,nl=!1,rl=!1,il=typeof WeakSet==`function`?WeakSet:Set,al=null;function ol(e,t){if(e=e.containerInfo,Rd=sp,e=Or(e),kr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(zd={focusedElem:e,selectionRange:n},sp=!1,al=t;al!==null;)if(t=al,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,al=e;else for(;al!==null;){switch(t=al,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)a=e[n],a.ref.impl=a.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&o!==null){e=void 0,n=t,a=o.memoizedProps,o=o.memoizedState,r=n.stateNode;try{var h=qs(n.type,a);e=r.getSnapshotBeforeUpdate(h,o),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){Z(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)ef(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:ef(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(i(163))}if(e=t.sibling,e!==null){e.return=t.return,al=e;break}al=t.return}}function sl(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:xl(e,n),r&4&&Hc(5,n);break;case 1:if(xl(e,n),r&4){if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){Z(n,n.return,e)}else{var i=qs(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Z(n,n.return,e)}}}r&64&&Wc(n),r&512&&Kc(n,n.return);break;case 3:if(xl(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{Xa(e,t)}catch(e){Z(n,n.return,e)}}break;case 27:t===null&&r&4&&el(n);case 26:case 5:xl(e,n),t===null&&r&4&&Jc(n),r&512&&Kc(n,n.return);break;case 12:xl(e,n);break;case 31:xl(e,n),r&4&&fl(e,n);break;case 13:xl(e,n),r&4&&pl(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=Ju.bind(null,n),sf(e,n))));break;case 22:if(r=n.memoizedState!==null||tl,!r){t=t!==null&&t.memoizedState!==null||nl,i=tl;var a=nl;tl=r,(nl=t)&&!a?Cl(e,n,!!(n.subtreeFlags&8772)):xl(e,n),tl=i,nl=a}break;case 30:break;default:xl(e,n)}}function cl(e){var t=e.alternate;t!==null&&(e.alternate=null,cl(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&_t(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var W=null,ll=!1;function ul(e,t,n){for(n=n.child;n!==null;)dl(e,t,n),n=n.sibling}function dl(e,t,n){if(Re&&typeof Re.onCommitFiberUnmount==`function`)try{Re.onCommitFiberUnmount(Le,n)}catch{}switch(n.tag){case 26:nl||qc(n,t),ul(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:nl||qc(n,t);var r=W,i=ll;Zd(n.type)&&(W=n.stateNode,ll=!1),ul(e,t,n),pf(n.stateNode),W=r,ll=i;break;case 5:nl||qc(n,t);case 6:if(r=W,i=ll,W=null,ul(e,t,n),W=r,ll=i,W!==null){if(ll)try{(W.nodeType===9?W.body:W.nodeName===`HTML`?W.ownerDocument.body:W).removeChild(n.stateNode)}catch(e){Z(n,t,e)}else try{W.removeChild(n.stateNode)}catch(e){Z(n,t,e)}}break;case 18:W!==null&&(ll?(e=W,Qd(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Np(e)):Qd(W,n.stateNode));break;case 4:r=W,i=ll,W=n.stateNode.containerInfo,ll=!0,ul(e,t,n),W=r,ll=i;break;case 0:case 11:case 14:case 15:Uc(2,n,t),nl||Uc(4,n,t),ul(e,t,n);break;case 1:nl||(qc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&Gc(n,t,r)),ul(e,t,n);break;case 21:ul(e,t,n);break;case 22:nl=(r=nl)||n.memoizedState!==null,ul(e,t,n),nl=r;break;default:ul(e,t,n)}}function fl(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Np(e)}catch(e){Z(t,t.return,e)}}}function pl(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Np(e)}catch(e){Z(t,t.return,e)}}function ml(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new il),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new il),t;default:throw Error(i(435,e.tag))}}function hl(e,t){var n=ml(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=Yu.bind(null,e,t);t.then(r,r)}})}function gl(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r],o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 27:if(Zd(c.type)){W=c.stateNode,ll=!1;break a}break;case 5:W=c.stateNode,ll=!1;break a;case 3:case 4:W=c.stateNode.containerInfo,ll=!0;break a}c=c.return}if(W===null)throw Error(i(160));dl(o,s,a),W=null,ll=!1,o=a.alternate,o!==null&&(o.return=null),a.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)vl(t,e),t=t.sibling}var _l=null;function vl(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:gl(t,e),yl(e),r&4&&(Uc(3,e,e.return),Hc(3,e),Uc(5,e,e.return));break;case 1:gl(t,e),yl(e),r&512&&(nl||n===null||qc(n,n.return)),r&64&&tl&&(e=e.updateQueue,e!==null&&(r=e.callbacks,r!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?r:n.concat(r))));break;case 26:var a=_l;if(gl(t,e),yl(e),r&512&&(nl||n===null||qc(n,n.return)),r&4){var o=n===null?null:n.memoizedState;if(r=e.memoizedState,n===null){if(r===null){if(e.stateNode===null){a:{r=e.type,n=e.memoizedProps,a=a.ownerDocument||a;b:switch(r){case`title`:o=a.getElementsByTagName(`title`)[0],(!o||o[gt]||o[lt]||o.namespaceURI===`http://www.w3.org/2000/svg`||o.hasAttribute(`itemprop`))&&(o=a.createElement(r),a.head.insertBefore(o,a.querySelector(`head > title`))),Pd(o,r,n),o[lt]=e,St(o),r=o;break a;case`link`:var s=Vf(`link`,`href`,a).get(r+(n.href||``));if(s){for(var c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&o.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&o.getAttribute(`title`)===(n.title==null?null:n.title)&&o.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){s.splice(c,1);break b}}o=a.createElement(r),Pd(o,r,n),a.head.appendChild(o);break;case`meta`:if(s=Vf(`meta`,`content`,a).get(r+(n.content||``))){for(c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`content`)===(n.content==null?null:``+n.content)&&o.getAttribute(`name`)===(n.name==null?null:n.name)&&o.getAttribute(`property`)===(n.property==null?null:n.property)&&o.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&o.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){s.splice(c,1);break b}}o=a.createElement(r),Pd(o,r,n),a.head.appendChild(o);break;default:throw Error(i(468,r))}o[lt]=e,St(o),r=o}e.stateNode=r}else Hf(a,e.type,e.stateNode)}else e.stateNode=If(a,r,e.memoizedProps)}else o===r?r===null&&e.stateNode!==null&&Yc(e,e.memoizedProps,n.memoizedProps):(o===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):o.count--,r===null?Hf(a,e.type,e.stateNode):If(a,r,e.memoizedProps))}break;case 27:gl(t,e),yl(e),r&512&&(nl||n===null||qc(n,n.return)),n!==null&&r&4&&Yc(e,e.memoizedProps,n.memoizedProps);break;case 5:if(gl(t,e),yl(e),r&512&&(nl||n===null||qc(n,n.return)),e.flags&32){a=e.stateNode;try{Jt(a,``)}catch(t){Z(e,e.return,t)}}r&4&&e.stateNode!=null&&(a=e.memoizedProps,Yc(e,a,n===null?a:n.memoizedProps)),r&1024&&(rl=!0);break;case 6:if(gl(t,e),yl(e),r&4){if(e.stateNode===null)throw Error(i(162));r=e.memoizedProps,n=e.stateNode;try{n.nodeValue=r}catch(t){Z(e,e.return,t)}}break;case 3:if(Bf=null,a=_l,_l=gf(t.containerInfo),gl(t,e),_l=a,yl(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Np(t.containerInfo)}catch(t){Z(e,e.return,t)}rl&&(rl=!1,bl(e));break;case 4:r=_l,_l=gf(e.stateNode.containerInfo),gl(t,e),yl(e),_l=r;break;case 12:gl(t,e),yl(e);break;case 31:gl(t,e),yl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,hl(e,r)));break;case 13:gl(t,e),yl(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&($l=Oe()),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,hl(e,r)));break;case 22:a=e.memoizedState!==null;var l=n!==null&&n.memoizedState!==null,u=tl,d=nl;if(tl=u||a,nl=d||l,gl(t,e),nl=d,tl=u,yl(e),r&8192)a:for(t=e.stateNode,t._visibility=a?t._visibility&-2:t._visibility|1,a&&(n===null||l||tl||nl||Sl(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){l=n=t;try{if(o=l.stateNode,a)s=o.style,typeof s.setProperty==`function`?s.setProperty(`display`,`none`,`important`):s.display=`none`;else{c=l.stateNode;var f=l.memoizedProps.style,p=f!=null&&f.hasOwnProperty(`display`)?f.display:null;c.style.display=p==null||typeof p==`boolean`?``:(``+p).trim()}}catch(e){Z(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=a?``:l.memoizedProps}catch(e){Z(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;a?$d(m,!0):$d(l.stateNode,!1)}catch(e){Z(l,l.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}r&4&&(r=e.updateQueue,r!==null&&(n=r.retryQueue,n!==null&&(r.retryQueue=null,hl(e,n))));break;case 19:gl(t,e),yl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,hl(e,r)));break;case 30:break;case 21:break;default:gl(t,e),yl(e)}}function yl(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Xc(r)){n=r;break}r=r.return}if(n==null)throw Error(i(160));switch(n.tag){case 27:var a=n.stateNode;$c(e,Zc(e),a);break;case 5:var o=n.stateNode;n.flags&32&&(Jt(o,``),n.flags&=-33),$c(e,Zc(e),o);break;case 3:case 4:var s=n.stateNode.containerInfo;Qc(e,Zc(e),s);break;default:throw Error(i(161))}}catch(t){Z(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function bl(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;bl(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function xl(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)sl(e,t.alternate,t),t=t.sibling}function Sl(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Uc(4,t,t.return),Sl(t);break;case 1:qc(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount==`function`&&Gc(t,t.return,n),Sl(t);break;case 27:pf(t.stateNode);case 26:case 5:qc(t,t.return),Sl(t);break;case 22:t.memoizedState===null&&Sl(t);break;case 30:Sl(t);break;default:Sl(t)}e=e.sibling}}function Cl(e,t,n){for(n&&=!!(t.subtreeFlags&8772),t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags;switch(a.tag){case 0:case 11:case 15:Cl(i,a,n),Hc(4,a);break;case 1:if(Cl(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){Z(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var s=r.stateNode;try{var c=i.shared.hiddenCallbacks;if(c!==null)for(i.shared.hiddenCallbacks=null,i=0;i<c.length;i++)Ya(c[i],s)}catch(e){Z(r,r.return,e)}}n&&o&64&&Wc(a),Kc(a,a.return);break;case 27:el(a);case 26:case 5:Cl(i,a,n),n&&r===null&&o&4&&Jc(a),Kc(a,a.return);break;case 12:Cl(i,a,n);break;case 31:Cl(i,a,n),n&&o&4&&fl(i,a);break;case 13:Cl(i,a,n),n&&o&4&&pl(i,a);break;case 22:a.memoizedState===null&&Cl(i,a,n),Kc(a,a.return);break;case 30:break;default:Cl(i,a,n)}t=t.sibling}}function wl(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&ca(n))}function Tl(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&ca(e))}function El(e,t,n,r){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)Dl(e,t,n,r),t=t.sibling}function Dl(e,t,n,r){var i=t.flags;switch(t.tag){case 0:case 11:case 15:El(e,t,n,r),i&2048&&Hc(9,t);break;case 1:El(e,t,n,r);break;case 3:El(e,t,n,r),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&ca(e)));break;case 12:if(i&2048){El(e,t,n,r),e=t.stateNode;try{var a=t.memoizedProps,o=a.id,s=a.onPostCommit;typeof s==`function`&&s(o,t.alternate===null?`mount`:`update`,e.passiveEffectDuration,-0)}catch(e){Z(t,t.return,e)}}else El(e,t,n,r);break;case 31:El(e,t,n,r);break;case 13:El(e,t,n,r);break;case 23:break;case 22:a=t.stateNode,o=t.alternate,t.memoizedState===null?a._visibility&2?El(e,t,n,r):(a._visibility|=2,Ol(e,t,n,r,!!(t.subtreeFlags&10256)||!1)):a._visibility&2?El(e,t,n,r):kl(e,t),i&2048&&wl(o,t);break;case 24:El(e,t,n,r),i&2048&&Tl(t.alternate,t);break;default:El(e,t,n,r)}}function Ol(e,t,n,r,i){for(i&&=!!(t.subtreeFlags&10256)||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:Ol(a,o,s,c,i),Hc(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,Ol(a,o,s,c,i)):u._visibility&2?Ol(a,o,s,c,i):kl(a,o),i&&l&2048&&wl(o.alternate,o);break;case 24:Ol(a,o,s,c,i),i&&l&2048&&Tl(o.alternate,o);break;default:Ol(a,o,s,c,i)}t=t.sibling}}function kl(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:kl(n,r),i&2048&&wl(r.alternate,r);break;case 24:kl(n,r),i&2048&&Tl(r.alternate,r);break;default:kl(n,r)}t=t.sibling}}var Al=8192;function jl(e,t,n){if(e.subtreeFlags&Al)for(e=e.child;e!==null;)Ml(e,t,n),e=e.sibling}function Ml(e,t,n){switch(e.tag){case 26:jl(e,t,n),e.flags&Al&&e.memoizedState!==null&&Gf(n,_l,e.memoizedState,e.memoizedProps);break;case 5:jl(e,t,n);break;case 3:case 4:var r=_l;_l=gf(e.stateNode.containerInfo),jl(e,t,n),_l=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Al,Al=16777216,jl(e,t,n),Al=r):jl(e,t,n));break;default:jl(e,t,n)}}function Nl(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Pl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];al=r,Ll(r,e)}Nl(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Fl(e),e=e.sibling}function Fl(e){switch(e.tag){case 0:case 11:case 15:Pl(e),e.flags&2048&&Uc(9,e,e.return);break;case 3:Pl(e);break;case 12:Pl(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Il(e)):Pl(e);break;default:Pl(e)}}function Il(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];al=r,Ll(r,e)}Nl(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Uc(8,t,t.return),Il(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,Il(t));break;default:Il(t)}e=e.sibling}}function Ll(e,t){for(;al!==null;){var n=al;switch(n.tag){case 0:case 11:case 15:Uc(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:ca(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,al=r;else a:for(n=e;al!==null;){r=al;var i=r.sibling,a=r.return;if(cl(r),r===n){al=null;break a}if(i!==null){i.return=a,al=i;break a}al=a}}}var Rl={getCacheForType:function(e){var t=ea(oa),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return ea(oa).controller.signal}},zl=typeof WeakMap==`function`?WeakMap:Map,G=0,K=null,q=null,J=0,Y=0,Bl=null,Vl=!1,Hl=!1,Ul=!1,Wl=0,X=0,Gl=0,Kl=0,ql=0,Jl=0,Yl=0,Xl=null,Zl=null,Ql=!1,$l=0,eu=0,tu=1/0,nu=null,ru=null,iu=0,au=null,ou=null,su=0,cu=0,lu=null,uu=null,du=0,fu=null;function pu(){return G&2&&J!==0?J&-J:E.T===null?ot():dd()}function mu(){if(Jl===0){if(!(J&536870912)||B){var e=Ge;Ge<<=1,!(Ge&3932160)&&(Ge=262144),Jl=e}else Jl=536870912}return e=no.current,e!==null&&(e.flags|=32),Jl}function hu(e,t,n){(e===K&&(Y===2||Y===9)||e.cancelPendingCommit!==null)&&(Su(e,0),yu(e,J,Jl,!1)),$e(e,n),G&2&&e===K||(e===K&&(!(G&2)&&(Kl|=n),X===4&&yu(e,J,Jl,!1)),rd(e))}function gu(e,t,n){if(G&6)throw Error(i(327));var r=!n&&!(t&127)&&(t&e.expiredLanes)===0||Je(e,t),a=r?Au(e,t):Ou(e,t,!0),o=r;do{if(a===0){Hl&&!r&&yu(e,t,0,!1);break}if(n=e.current.alternate,o&&!vu(n))a=Ou(e,t,!1),o=!1;else{if(a===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;a=Xl;var l=c.current.memoizedState.isDehydrated;if(l&&(Su(c,s).flags|=256),s=Ou(c,s,!1),s!==2){if(Ul&&!l){c.errorRecoveryDisabledLanes|=o,Kl|=o,a=4;break a}o=Zl,Zl=a,o!==null&&(Zl===null?Zl=o:Zl.push.apply(Zl,o))}a=s}if(o=!1,a!==2)continue}}if(a===1){Su(e,0),yu(e,t,0,!0);break}a:{switch(r=e,o=a,o){case 0:case 1:throw Error(i(345));case 4:if((t&4194048)!==t)break;case 6:yu(r,t,Jl,!Vl);break a;case 2:Zl=null;break;case 3:case 5:break;default:throw Error(i(329))}if((t&62914560)===t&&(a=$l+300-Oe(),10<a)){if(yu(r,t,Jl,!Vl),qe(r,0,!0)!==0)break a;su=t,r.timeoutHandle=Kd(_u.bind(null,r,n,Zl,nu,Ql,t,Jl,Kl,Yl,Vl,o,`Throttled`,-0,0),a);break a}_u(r,n,Zl,nu,Ql,t,Jl,Kl,Yl,Vl,o,null,-0,0)}break}}while(1);rd(e)}function _u(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(e.timeoutHandle=-1,d=t.subtreeFlags,d&8192||(d&16785408)==16785408){d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:nn},Ml(t,a,d);var m=(a&62914560)===a?$l-Oe():(a&4194048)===a?eu-Oe():0;if(m=qf(d,m),m!==null){su=a,e.cancelPendingCommit=m(Lu.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),yu(e,a,o,!l);return}}Lu(e,t,a,n,r,i,o,s,c)}function vu(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!Cr(a(),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 yu(e,t,n,r){t&=~ql,t&=~Kl,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Be(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&tt(e,n,t)}function bu(){return G&6?!0:(id(0,!1),!1)}function xu(){if(q!==null){if(Y===0)var e=q.return;else e=q,Ki=Gi=null,ko(e),ja=null,Ma=0,e=q;for(;e!==null;)Vc(e.alternate,e),e=e.return;q=null}}function Su(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,qd(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),su=0,xu(),K=e,q=n=ui(e.current,null),J=t,Y=0,Bl=null,Vl=!1,Hl=Je(e,t),Ul=!1,Yl=Jl=ql=Kl=Gl=X=0,Zl=Xl=null,Ql=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-Be(r),a=1<<i;t|=e[i],r&=~a}return Wl=t,ei(),n}function Cu(e,t){V=null,E.H=zs,t===xa||t===Ca?(t=ka(),Y=3):t===Sa?(t=ka(),Y=4):Y=t===rc?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,Bl=t,q===null&&(X=1,Zs(e,vi(t,e.current)))}function wu(){var e=no.current;return e===null?!0:(J&4194048)===J?ro===null:(J&62914560)===J||J&536870912?e===ro:!1}function Tu(){var e=E.H;return E.H=zs,e===null?zs:e}function Eu(){var e=E.A;return E.A=Rl,e}function Du(){X=4,Vl||(J&4194048)!==J&&no.current!==null||(Hl=!0),!(Gl&134217727)&&!(Kl&134217727)||K===null||yu(K,J,Jl,!1)}function Ou(e,t,n){var r=G;G|=2;var i=Tu(),a=Eu();(K!==e||J!==t)&&(nu=null,Su(e,t)),t=!1;var o=X;a:do try{if(Y!==0&&q!==null){var s=q,c=Bl;switch(Y){case 8:xu(),o=6;break a;case 3:case 2:case 9:case 6:no.current===null&&(t=!0);var l=Y;if(Y=0,Bl=null,Pu(e,s,c,l),n&&Hl){o=0;break a}break;default:l=Y,Y=0,Bl=null,Pu(e,s,c,l)}}ku(),o=X;break}catch(t){Cu(e,t)}while(1);return t&&e.shellSuspendCounter++,Ki=Gi=null,G=r,E.H=i,E.A=a,q===null&&(K=null,J=0,ei()),o}function ku(){for(;q!==null;)Mu(q)}function Au(e,t){var n=G;G|=2;var r=Tu(),a=Eu();K!==e||J!==t?(nu=null,tu=Oe()+500,Su(e,t)):Hl=Je(e,t);a:do try{if(Y!==0&&q!==null){t=q;var o=Bl;b:switch(Y){case 1:Y=0,Bl=null,Pu(e,t,o,1);break;case 2:case 9:if(Ta(o)){Y=0,Bl=null,Nu(t);break}t=function(){Y!==2&&Y!==9||K!==e||(Y=7),rd(e)},o.then(t,t);break a;case 3:Y=7;break a;case 4:Y=5;break a;case 7:Ta(o)?(Y=0,Bl=null,Nu(t)):(Y=0,Bl=null,Pu(e,t,o,7));break;case 5:var s=null;switch(q.tag){case 26:s=q.memoizedState;case 5:case 27:var c=q;if(s?Wf(s):c.stateNode.complete){Y=0,Bl=null;var l=c.sibling;if(l!==null)q=l;else{var u=c.return;u===null?q=null:(q=u,Fu(u))}break b}}Y=0,Bl=null,Pu(e,t,o,5);break;case 6:Y=0,Bl=null,Pu(e,t,o,6);break;case 8:xu(),X=6;break a;default:throw Error(i(462))}}ju();break}catch(t){Cu(e,t)}while(1);return Ki=Gi=null,E.H=r,E.A=a,G=n,q===null?(K=null,J=0,ei(),X):0}function ju(){for(;q!==null&&!Ee();)Mu(q)}function Mu(e){var t=Nc(e.alternate,e,Wl);e.memoizedProps=e.pendingProps,t===null?Fu(e):q=t}function Nu(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=_c(n,t,t.pendingProps,t.type,void 0,J);break;case 11:t=_c(n,t,t.pendingProps,t.type.render,t.ref,J);break;case 5:ko(t);default:Vc(n,t),t=q=di(t,Wl),t=Nc(n,t,Wl)}e.memoizedProps=e.pendingProps,t===null?Fu(e):q=t}function Pu(e,t,n,r){Ki=Gi=null,ko(t),ja=null,Ma=0;var i=t.return;try{if(nc(e,i,t,n,J)){X=1,Zs(e,vi(n,e.current)),q=null;return}}catch(t){if(i!==null)throw q=i,t;X=1,Zs(e,vi(n,e.current)),q=null;return}t.flags&32768?(B||r===1?e=!0:Hl||J&536870912?e=!1:(Vl=e=!0,(r===2||r===9||r===3||r===6)&&(r=no.current,r!==null&&r.tag===13&&(r.flags|=16384))),Iu(t,e)):Fu(t)}function Fu(e){var t=e;do{if(t.flags&32768){Iu(t,Vl);return}e=t.return;var n=zc(t.alternate,t,Wl);if(n!==null){q=n;return}if(t=t.sibling,t!==null){q=t;return}q=t=e}while(t!==null);X===0&&(X=5)}function Iu(e,t){do{var n=Bc(e.alternate,e);if(n!==null){n.flags&=32767,q=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){q=e;return}q=e=n}while(e!==null);X=6,q=null}function Lu(e,t,n,r,a,o,s,c,l){e.cancelPendingCommit=null;do Hu();while(iu!==0);if(G&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));if(o=t.lanes|t.childLanes,o|=$r,et(e,n,o,s,c,l),e===K&&(q=K=null,J=0),ou=t,au=e,su=n,cu=o,lu=a,uu=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,Xu(Me,function(){return Uu(),null})):(e.callbackNode=null,e.callbackPriority=0),r=!!(t.flags&13878),t.subtreeFlags&13878||r){r=E.T,E.T=null,a=D.p,D.p=2,s=G,G|=4;try{ol(e,t,n)}finally{G=s,D.p=a,E.T=r}}iu=1,Ru(),zu(),Bu()}}function Ru(){if(iu===1){iu=0;var e=au,t=ou,n=!!(t.flags&13878);if(t.subtreeFlags&13878||n){n=E.T,E.T=null;var r=D.p;D.p=2;var i=G;G|=4;try{vl(t,e);var a=zd,o=Or(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&Dr(s.ownerDocument.documentElement,s)){if(c!==null&&kr(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=Er(s,h),v=Er(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}sp=!!Rd,zd=Rd=null}finally{G=i,D.p=r,E.T=n}}e.current=t,iu=2}}function zu(){if(iu===2){iu=0;var e=au,t=ou,n=!!(t.flags&8772);if(t.subtreeFlags&8772||n){n=E.T,E.T=null;var r=D.p;D.p=2;var i=G;G|=4;try{sl(e,t.alternate,t)}finally{G=i,D.p=r,E.T=n}}iu=3}}function Bu(){if(iu===4||iu===3){iu=0,De();var e=au,t=ou,n=su,r=uu;t.subtreeFlags&10256||t.flags&10256?iu=5:(iu=0,ou=au=null,Vu(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(ru=null),at(n),t=t.stateNode,Re&&typeof Re.onCommitFiberRoot==`function`)try{Re.onCommitFiberRoot(Le,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=E.T,i=D.p,D.p=2,E.T=null;try{for(var a=e.onRecoverableError,o=0;o<r.length;o++){var s=r[o];a(s.value,{componentStack:s.stack})}}finally{E.T=t,D.p=i}}su&3&&Hu(),rd(e),i=e.pendingLanes,n&261930&&i&42?e===fu?du++:(du=0,fu=e):du=0,id(0,!1)}}function Vu(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,ca(t)))}function Hu(){return Ru(),zu(),Bu(),Uu()}function Uu(){if(iu!==5)return!1;var e=au,t=cu;cu=0;var n=at(su),r=E.T,a=D.p;try{D.p=32>n?32:n,E.T=null,n=lu,lu=null;var o=au,s=su;if(iu=0,ou=au=null,su=0,G&6)throw Error(i(331));var c=G;if(G|=4,Fl(o.current),Dl(o,o.current,s,n),G=c,id(0,!1),Re&&typeof Re.onPostCommitFiberRoot==`function`)try{Re.onPostCommitFiberRoot(Le,o)}catch{}return!0}finally{D.p=a,E.T=r,Vu(e,t)}}function Wu(e,t,n){t=vi(n,t),t=$s(e.stateNode,t,2),e=Ua(e,t,2),e!==null&&($e(e,2),rd(e))}function Z(e,t,n){if(e.tag===3)Wu(e,e,n);else for(;t!==null;){if(t.tag===3){Wu(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(ru===null||!ru.has(r))){e=vi(n,e),n=ec(2),r=Ua(t,n,2),r!==null&&(tc(n,r,t,e),$e(r,2),rd(r));break}}t=t.return}}function Gu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new zl;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)||(Ul=!0,i.add(n),e=Ku.bind(null,e,t,n),t.then(e,e))}function Ku(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,K===e&&(J&n)===n&&(X===4||X===3&&(J&62914560)===J&&300>Oe()-$l?!(G&2)&&Su(e,0):ql|=n,Yl===J&&(Yl=0)),rd(e)}function qu(e,t){t===0&&(t=Ye()),e=ri(e,t),e!==null&&($e(e,t),rd(e))}function Ju(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qu(e,n)}function Yu(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),qu(e,n)}function Xu(e,t){return N(e,t)}var Zu=null,Qu=null,$u=!1,ed=!1,td=!1,nd=0;function rd(e){e!==Qu&&e.next===null&&(Qu===null?Zu=Qu=e:Qu=Qu.next=e),ed=!0,$u||($u=!0,ud())}function id(e,t){if(!td&&ed){td=!0;do for(var n=!1,r=Zu;r!==null;){if(!t){if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-Be(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,ld(r,a))}else a=J,a=qe(r,r===K?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||Je(r,a)||(n=!0,ld(r,a))}r=r.next}while(n);td=!1}}function ad(){od()}function od(){ed=$u=!1;var e=0;nd!==0&&Gd()&&(e=nd);for(var t=Oe(),n=null,r=Zu;r!==null;){var i=r.next,a=sd(r,t);a===0?(r.next=null,n===null?Zu=i:n.next=i,i===null&&(Qu=n)):(n=r,(e!==0||a&3)&&(ed=!0)),r=i}iu!==0&&iu!==5||id(e,!1),nd!==0&&(nd=0)}function sd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Be(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=F(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=K,n=J,n=qe(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(Y===2||Y===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&Te(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||Je(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&Te(r),at(n)){case 2:case 8:n=je;break;case 32:n=Me;break;case 268435456:n=Pe;break;default:n=Me}return r=cd.bind(null,e),n=N(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&Te(r),e.callbackPriority=2,e.callbackNode=null,2}function cd(e,t){if(iu!==0&&iu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Hu()&&e.callbackNode!==n)return null;var r=J;return r=qe(e,e===K?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(gu(e,r,t),sd(e,Oe()),e.callbackNode!=null&&e.callbackNode===n?cd.bind(null,e):null)}function ld(e,t){if(Hu())return null;gu(e,t,!0)}function ud(){Yd(function(){G&6?N(Ae,ad):od()})}function dd(){if(nd===0){var e=da;e===0&&(e=We,We<<=1,!(We&261888)&&(We=256)),nd=e}return nd}function fd(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:tn(``+e)}function pd(e,t){var n=t.ownerDocument.createElement(`input`);return n.name=t.name,n.value=t.value,e.id&&n.setAttribute(`form`,e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function md(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=fd((i[ut]||null).action),o=r.submitter;o&&(t=(t=o[ut]||null)?fd(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new wn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(nd!==0){var e=o?pd(i,o):new FormData(i);Ts(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?pd(i,o):new FormData(i),Ts(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var hd=0;hd<Jr.length;hd++){var gd=Jr[hd];Yr(gd.toLowerCase(),`on`+(gd[0].toUpperCase()+gd.slice(1)))}Yr(Br,`onAnimationEnd`),Yr(Vr,`onAnimationIteration`),Yr(Hr,`onAnimationStart`),Yr(`dblclick`,`onDoubleClick`),Yr(`focusin`,`onFocus`),Yr(`focusout`,`onBlur`),Yr(Ur,`onTransitionRun`),Yr(Wr,`onTransitionStart`),Yr(Gr,`onTransitionCancel`),Yr(Kr,`onTransitionEnd`),Et(`onMouseEnter`,[`mouseout`,`mouseover`]),Et(`onMouseLeave`,[`mouseout`,`mouseover`]),Et(`onPointerEnter`,[`pointerout`,`pointerover`]),Et(`onPointerLeave`,[`pointerout`,`pointerover`]),Tt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),Tt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),Tt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),Tt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),Tt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),Tt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var _d=`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(` `),vd=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(_d));function yd(e,t){t=!!(t&4);for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Xr(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Xr(e)}i.currentTarget=null,a=c}}}}function Q(e,t){var n=t[ft];n===void 0&&(n=t[ft]=new Set);var r=e+`__bubble`;n.has(r)||(Cd(t,e,2,!1),n.add(r))}function bd(e,t,n){var r=0;t&&(r|=4),Cd(n,e,r,t)}var xd=`_reactListening`+Math.random().toString(36).slice(2);function Sd(e){if(!e[xd]){e[xd]=!0,Ct.forEach(function(t){t!==`selectionchange`&&(vd.has(t)||bd(t,!1,e),bd(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[xd]||(t[xd]=!0,bd(`selectionchange`,!1,t))}}function Cd(e,t,n,r){switch(mp(t)){case 2:var i=cp;break;case 8:i=lp;break;default:i=up}n=i.bind(null,t,n,e),i=void 0,!pn||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function wd(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var c=r.stateNode.containerInfo;if(c===i)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&s.stateNode.containerInfo===i)return;s=s.return}for(;c!==null;){if(s=vt(c),s===null)return;if(l=s.tag,l===5||l===6||l===26||l===27){r=a=s;continue a}c=c.parentNode}}r=r.return}un(function(){var r=a,i=an(n),s=[];a:{var c=qr.get(e);if(c!==void 0){var l=wn,u=e;switch(e){case`keypress`:if(yn(n)===0)break a;case`keydown`:case`keyup`:l=Bn;break;case`focusin`:u=`focus`,l=Nn;break;case`focusout`:u=`blur`,l=Nn;break;case`beforeblur`:case`afterblur`:l=Nn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=jn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=Mn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=Hn;break;case Br:case Vr:case Hr:l=Pn;break;case Kr:l=Un;break;case`scroll`:case`scrollend`:l=En;break;case`wheel`:l=Wn;break;case`copy`:case`cut`:case`paste`:l=Fn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=Vn;break;case`toggle`:case`beforetoggle`:l=Gn}var d=!!(t&4),f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=dn(m,p),g!=null&&d.push(Td(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),s.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(c=e===`mouseover`||e===`pointerover`,l=e===`mouseout`||e===`pointerout`,c&&n!==rn&&(u=n.relatedTarget||n.fromElement)&&(vt(u)||u[dt]))break a;if((l||c)&&(c=i.window===i?i:(c=i.ownerDocument)?c.defaultView||c.parentWindow:window,l?(u=n.relatedTarget||n.toElement,l=r,u=u?vt(u):null,u!==null&&(f=o(u),d=u.tag,u!==f||d!==5&&d!==27&&d!==6)&&(u=null)):(l=null,u=r),l!==u)){if(d=jn,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=Vn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?c:bt(l),h=u==null?c:bt(u),c=new d(g,m+`leave`,l,n,i),c.target=f,c.relatedTarget=h,g=null,vt(i)===r&&(d=new d(p,m+`enter`,u,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,l&&u)b:{for(d=Dd,p=l,m=u,h=0,g=p;g;g=d(g))h++;g=0;for(var _=m;_;_=d(_))g++;for(;0<h-g;)p=d(p),h--;for(;0<g-h;)m=d(m),g--;for(;h--;){if(p===m||m!==null&&p===m.alternate){d=p;break b}p=d(p),m=d(m)}d=null}else d=null;l!==null&&Od(s,c,l,d,!1),u!==null&&f!==null&&Od(s,f,u,d,!0)}}a:{if(c=r?bt(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var v=dr;else if(ar(c)){if(fr)v=xr;else{v=yr;var y=vr}}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&Qt(r.elementType)&&(v=dr):v=br;if(v&&=v(e,r)){or(s,v,n,i);break a}y&&y(e,c,r),e===`focusout`&&r&&c.type===`number`&&r.memoizedProps.value!=null&&Wt(c,`number`,c.value)}switch(y=r?bt(r):window,e){case`focusin`:(ar(y)||y.contentEditable===`true`)&&(jr=y,Mr=r,Nr=null);break;case`focusout`:Nr=Mr=jr=null;break;case`mousedown`:Pr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Pr=!1,Fr(s,n,i);break;case`selectionchange`:if(Ar)break;case`keydown`:case`keyup`:Fr(s,n,i)}var b;if(qn)b:{switch(e){case`compositionstart`:var x=`onCompositionStart`;break b;case`compositionend`:x=`onCompositionEnd`;break b;case`compositionupdate`:x=`onCompositionUpdate`;break b}x=void 0}else tr?$n(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(Xn&&n.locale!==`ko`&&(tr||x!==`onCompositionStart`?x===`onCompositionEnd`&&tr&&(b=vn()):(hn=i,gn=`value`in hn?hn.value:hn.textContent,tr=!0)),y=Ed(r,x),0<y.length&&(x=new In(x,e,null,n,i),s.push({event:x,listeners:y}),b?x.data=b:(b=er(n),b!==null&&(x.data=b)))),(b=Yn?nr(e,n):rr(e,n))&&(x=Ed(r,`onBeforeInput`),0<x.length&&(y=new In(`onBeforeInput`,`beforeinput`,null,n,i),s.push({event:y,listeners:x}),y.data=b)),md(s,e,r,n,i)}yd(s,t)})}function Td(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Ed(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=dn(e,n),i!=null&&r.unshift(Td(e,i,a)),i=dn(e,t),i!=null&&r.push(Td(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Dd(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Od(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=dn(n,a),l!=null&&o.unshift(Td(n,l,c))):i||(l=dn(n,a),l!=null&&o.push(Td(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var kd=/\r\n?/g,Ad=/\u0000|\uFFFD/g;function jd(e){return(typeof e==`string`?e:``+e).replace(kd,`
|
|
10
|
-
`).replace(Ad,``)}function Md(e,t){return t=jd(t),jd(e)===t}function $(e,t,n,r,a,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||Jt(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&Jt(e,``+r);break;case`className`:Mt(e,`class`,r);break;case`tabIndex`:Mt(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:Mt(e,n,r);break;case`style`:Zt(e,r,o);break;case`data`:if(t!==`object`){Mt(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)||r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=tn(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}if(typeof o==`function`&&(n===`formAction`?(t!==`input`&&$(e,t,`name`,a.name,a,null),$(e,t,`formEncType`,a.formEncType,a,null),$(e,t,`formMethod`,a.formMethod,a,null),$(e,t,`formTarget`,a.formTarget,a,null)):($(e,t,`encType`,a.encType,a,null),$(e,t,`method`,a.method,a,null),$(e,t,`target`,a.target,a,null))),r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=tn(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=nn);break;case`onScroll`:r!=null&&Q(`scroll`,e);break;case`onScrollEnd`:r!=null&&Q(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=tn(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:Q(`beforetoggle`,e),Q(`toggle`,e),jt(e,`popover`,r);break;case`xlinkActuate`:Nt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:Nt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:Nt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:Nt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:Nt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:Nt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:Nt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:Nt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:Nt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:jt(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=$t.get(n)||n,jt(e,n,r))}}function Nd(e,t,n,r,a,o){switch(n){case`style`:Zt(e,r,o);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?Jt(e,r):(typeof r==`number`||typeof r==`bigint`)&&Jt(e,``+r);break;case`onScroll`:r!=null&&Q(`scroll`,e);break;case`onScrollEnd`:r!=null&&Q(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=nn);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!wt.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),t=n.slice(2,a?n.length-7:void 0),o=e[ut]||null,o=o==null?null:o[n],typeof o==`function`&&e.removeEventListener(t,o,a),typeof r==`function`)){typeof o!=`function`&&o!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,a);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):jt(e,n,r)}}}function Pd(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:Q(`error`,e),Q(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:$(e,t,o,s,n,null)}}a&&$(e,t,`srcSet`,n.srcSet,n,null),r&&$(e,t,`src`,n.src,n,null);return;case`input`:Q(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:$(e,t,r,d,n,null)}}Ut(e,o,c,l,u,s,a,!1);return;case`select`:for(a in Q(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:$(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&Gt(e,!!r,n,!0):Gt(e,!!r,t,!1);return;case`textarea`:for(s in Q(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:$(e,t,s,c,n,null)}qt(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:$(e,t,l,r,n,null)}return;case`dialog`:Q(`beforetoggle`,e),Q(`toggle`,e),Q(`cancel`,e),Q(`close`,e);break;case`iframe`:case`object`:Q(`load`,e);break;case`video`:case`audio`:for(r=0;r<_d.length;r++)Q(_d[r],e);break;case`image`:Q(`error`,e),Q(`load`,e);break;case`details`:Q(`toggle`,e);break;case`embed`:case`source`:case`link`:Q(`error`,e),Q(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:$(e,t,u,r,n,null)}return;default:if(Qt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Nd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&$(e,t,c,r,n,null))}function Fd(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||$(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:o=m;break;case`name`:a=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&$(e,t,p,m,r,f)}}Ht(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||$(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:p=o;break;case`defaultValue`:c=o;break;case`multiple`:s=o;default:o!==l&&$(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?Gt(e,!!n,n?[]:``,!1):Gt(e,!!n,t,!0)):Gt(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:$(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:p=a;break;case`defaultValue`:m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&$(e,t,s,a,r,o)}Kt(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:$(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:$(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&$(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:$(e,t,u,p,r,m)}return;default:if(Qt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Nd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Nd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&$(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||$(e,t,f,p,r,m)}function Id(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Ld(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Id(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Id(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var Rd=null,zd=null;function Bd(e){return e.nodeType===9?e:e.ownerDocument}function Vd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Hd(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Ud(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Wd=null;function Gd(){var e=window.event;return e&&e.type===`popstate`?e!==Wd&&(Wd=e,!0):(Wd=null,!1)}var Kd=typeof setTimeout==`function`?setTimeout:void 0,qd=typeof clearTimeout==`function`?clearTimeout:void 0,Jd=typeof Promise==`function`?Promise:void 0,Yd=typeof queueMicrotask==`function`?queueMicrotask:Jd===void 0?Kd:function(e){return Jd.resolve(null).then(e).catch(Xd)};function Xd(e){setTimeout(function(){throw e})}function Zd(e){return e===`head`}function Qd(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===`/$`||n===`/&`){if(r===0){e.removeChild(i),Np(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)pf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,pf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[gt]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&pf(e.ownerDocument.body)}n=i}while(n);Np(t)}function $d(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8){if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++}n=r}while(n)}function ef(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:ef(n),_t(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function tf(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r){if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e}else if(!e[gt])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=cf(e.nextSibling),e===null)break}return null}function nf(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=cf(e.nextSibling),e===null))return null;return e}function rf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=cf(e.nextSibling),e===null))return null;return e}function af(e){return e.data===`$?`||e.data===`$~`}function of(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function sf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function cf(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===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var lf=null;function uf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return cf(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function df(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function ff(e,t,n){switch(t=Bd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function pf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);_t(e)}var mf=new Map,hf=new Set;function gf(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var _f=D.d;D.d={f:vf,r:yf,D:Sf,C:Cf,L:wf,m:Tf,X:Df,S:Ef,M:Of};function vf(){var e=_f.f(),t=bu();return e||t}function yf(e){var t=yt(e);t!==null&&t.tag===5&&t.type===`form`?Ds(t):_f.r(e)}var bf=typeof document>`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=Vt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Pd(t,`link`,e),St(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Vt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Vt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Vt(n.imageSizes)+`"]`)):i+=`[href="`+Vt(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=f({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Pd(t,`link`,e),St(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Vt(r)+`"][href="`+Vt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=f({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Pd(r,`link`,e),St(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=xt(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=f({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);St(c),Pd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=xt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=f({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),St(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=xt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=f({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),St(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var a=(a=fe.current)?gf(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=xt(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var o=xt(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(jf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),o||Nf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=xt(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Af(e){return`href="`+Vt(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return f({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Pd(t,`link`,n),St(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Vt(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Vt(n.href)+`"]`);if(r)return t.instance=r,St(r),r;var a=f({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),St(r),Pd(r,`style`,a),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Af(n.href);var o=e.querySelector(jf(a));if(o)return t.state.loading|=4,t.instance=o,St(o),o;r=Mf(n),(a=mf.get(a))&&Rf(r,a),o=(e.ownerDocument||e).createElement(`link`),St(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Pd(o,`link`,r),t.state.loading|=4,Lf(o,n.precedence,e),t.instance=o;case`script`:return o=Pf(n.src),(a=e.querySelector(Ff(o)))?(t.instance=a,St(a),a):(r=n,(a=mf.get(o))&&(r=f({},n),zf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),St(a),Pd(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Rf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function zf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var Bf=null;function Vf(e,t,n){if(Bf===null){var r=new Map,i=Bf=new Map;i.set(n,r)}else i=Bf,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[gt]||a[lt]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Hf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,St(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),St(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&Kf===0&&(Kf=62500*Ld());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=Jf.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var Qf={$$typeof:b,Provider:null,Consumer:null,_currentValue:O,_currentValue2:O,_threadCount:0};function $f(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Ze(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ze(0),this.hiddenUpdates=Ze(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function ep(e,t,n,r,i,a,o,s,c,l,u,d){return e=new $f(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=ci(3,null,null,t),e.current=a,a.stateNode=e,t=sa(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Ba(a),e}function tp(e){return e?(e=oi,e):oi}function np(e,t,n,r,i,a){i=tp(i),r.context===null?r.context=i:r.pendingContext=i,r=Ha(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Ua(e,r,t),n!==null&&(hu(n,e,t),Wa(n,e,t))}function rp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function ip(e,t){rp(e,t),(e=e.alternate)&&rp(e,t)}function ap(e){if(e.tag===13||e.tag===31){var t=ri(e,67108864);t!==null&&hu(t,e,67108864),ip(e,67108864)}}function op(e){if(e.tag===13||e.tag===31){var t=pu();t=it(t);var n=ri(e,t);n!==null&&hu(n,e,t),ip(e,t)}}var sp=!0;function cp(e,t,n,r){var i=E.T;E.T=null;var a=D.p;try{D.p=2,up(e,t,n,r)}finally{D.p=a,E.T=i}}function lp(e,t,n,r){var i=E.T;E.T=null;var a=D.p;try{D.p=8,up(e,t,n,r)}finally{D.p=a,E.T=i}}function up(e,t,n,r){if(sp){var i=dp(r);if(i===null)wd(e,t,r,fp,n),Cp(e,r);else if(Tp(i,e,t,n,r))r.stopPropagation();else if(Cp(e,r),t&4&&-1<Sp.indexOf(e)){for(;i!==null;){var a=yt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=Ke(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Be(o);s.entanglements[1]|=c,o&=~c}rd(a),!(G&6)&&(tu=Oe()+500,id(0,!1))}}break;case 31:case 13:s=ri(a,2),s!==null&&hu(s,a,2),bu(),ip(a,2)}if(a=dp(r),a===null&&wd(e,t,r,fp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else wd(e,t,r,null,n)}}function dp(e){return e=an(e),pp(e)}var fp=null;function pp(e){if(fp=null,e=vt(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(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 fp=e,null}function mp(e){switch(e){case`beforetoggle`: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`toggle`: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 2;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`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(ke()){case Ae:return 2;case je:return 8;case Me:case Ne:return 32;case Pe:return 268435456;default:return 32}default:return 32}}var hp=!1,gp=null,_p=null,vp=null,yp=new Map,bp=new Map,xp=[],Sp=`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`.split(` `);function Cp(e,t){switch(e){case`focusin`:case`focusout`:gp=null;break;case`dragenter`:case`dragleave`:_p=null;break;case`mouseover`:case`mouseout`:vp=null;break;case`pointerover`:case`pointerout`:yp.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:bp.delete(t.pointerId)}}function wp(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=yt(t),t!==null&&ap(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Tp(e,t,n,r,i){switch(t){case`focusin`:return gp=wp(gp,e,t,n,r,i),!0;case`dragenter`:return _p=wp(_p,e,t,n,r,i),!0;case`mouseover`:return vp=wp(vp,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return yp.set(a,wp(yp.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,bp.set(a,wp(bp.get(a)||null,e,t,n,r,i)),!0}return!1}function Ep(e){var t=vt(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,st(e.priority,function(){op(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,st(e.priority,function(){op(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 Dp(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=dp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);rn=r,n.target.dispatchEvent(r),rn=null}else return t=yt(n),t!==null&&ap(t),e.blockedOn=n,!1;t.shift()}return!0}function Op(e,t,n){Dp(e)&&n.delete(t)}function kp(){hp=!1,gp!==null&&Dp(gp)&&(gp=null),_p!==null&&Dp(_p)&&(_p=null),vp!==null&&Dp(vp)&&(vp=null),yp.forEach(Op),bp.forEach(Op)}function Ap(e,n){e.blockedOn===n&&(e.blockedOn=null,hp||(hp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,kp)))}var jp=null;function Mp(e){jp!==e&&(jp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){jp===e&&(jp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(pp(r||n)===null)continue;break}var a=yt(n);a!==null&&(e.splice(t,3),t-=3,Ts(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Np(e){function t(t){return Ap(t,e)}gp!==null&&Ap(gp,e),_p!==null&&Ap(_p,e),vp!==null&&Ap(vp,e),yp.forEach(t),bp.forEach(t);for(var n=0;n<xp.length;n++){var r=xp[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<xp.length&&(n=xp[0],n.blockedOn===null);)Ep(n),n.blockedOn===null&&xp.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[ut]||null;if(typeof a==`function`)o||Mp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[ut]||null)s=o.formAction;else if(pp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Mp(n)}}}function Pp(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function Fp(e){this._internalRoot=e}Ip.prototype.render=Fp.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;np(n,pu(),e,t,null,null)},Ip.prototype.unmount=Fp.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;np(e.current,2,null,e,null,null),bu(),t[dt]=null}};function Ip(e){this._internalRoot=e}Ip.prototype.unstable_scheduleHydration=function(e){if(e){var t=ot();e={blockedOn:null,target:e,priority:t};for(var n=0;n<xp.length&&t!==0&&t<xp[n].priority;n++);xp.splice(n,0,e),n===0&&Ep(e)}};var Lp=n.version;if(Lp!==`19.2.7`)throw Error(i(527,Lp,`19.2.7`));D.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=u(t),e=e===null?null:d(e),e=e===null?null:e.stateNode,e};var Rp={bundleType:0,version:`19.2.7`,rendererPackageName:`react-dom`,currentDispatcherRef:E,reconcilerVersion:`19.2.7`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var zp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!zp.isDisabled&&zp.supportsFiber)try{Le=zp.inject(Rp),Re=zp}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=Js,s=Ys,c=Xs;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=ep(e,1,!1,null,null,n,r,null,o,s,c,Pp),e[dt]=t.current,Sd(e),new Fp(t)}})),et=C(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=$e()})),tt={name:`app-window`,size:24,node:[[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}],[`path`,{d:`M10 4v4`,key:`pp8u80`}],[`path`,{d:`M2 8h20`,key:`d11cs7`}],[`path`,{d:`M6 4v4`,key:`1svtjw`}]]};tt.node;var nt=N(tt),rt={name:`arrow-up`,size:24,node:[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]};rt.node;var it=N(rt),at={name:`bell-ring`,size:24,node:[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M22 8c0-2.3-.8-4.3-2-6`,key:`5bb3ad`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}],[`path`,{d:`M4 2C2.8 3.7 2 5.7 2 8`,key:`tap9e0`}]]};at.node;var ot=N(at),st={name:`blocks`,size:24,node:[[`path`,{d:`M10 22V7a1 1 0 0 0-1-1H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5a1 1 0 0 0-1-1H2`,key:`1ah6g2`}],[`rect`,{x:`14`,y:`2`,width:`8`,height:`8`,rx:`1`,key:`88lufb`}]]};st.node;var ct=N(st),lt={name:`bot`,size:24,node:[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]};lt.node;var ut=N(lt),dt={name:`bug`,size:24,node:[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]};dt.node;var ft=N(dt),pt={name:`chart-column`,size:24,node:[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`M18 17V9`,key:`2bz60n`}],[`path`,{d:`M13 17V5`,key:`1frdt8`}],[`path`,{d:`M8 17v-3`,key:`17ska0`}]],aliases:[`bar-chart-3`]};pt.node;var mt=N(pt),ht={name:`circle-alert`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]],aliases:[`alert-circle`]};ht.node;var gt=N(ht),_t={name:`circle-check`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 9-5.5 5.5L8 12`,key:`xofnsj`}]],aliases:[`check-circle-2`]};_t.node;var vt=N(_t),yt={name:`cloud`,size:24,node:[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]};yt.node;var bt=N(yt),xt={name:`code`,size:24,node:[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]};xt.node;var St=N(xt),Ct={name:`compass`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z`,key:`9ktpf1`}]]};Ct.node;var wt=N(Ct),Tt={name:`container`,size:24,node:[[`path`,{d:`M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z`,key:`1t2lqe`}],[`path`,{d:`M10 21.9V14L2.1 9.1`,key:`o7czzq`}],[`path`,{d:`m10 14 11.9-6.9`,key:`zm5e20`}],[`path`,{d:`M14 19.8v-8.1`,key:`159ecu`}],[`path`,{d:`M18 17.5V9.4`,key:`11uown`}]]};Tt.node;var Et=N(Tt),Dt={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]};Dt.node;var Ot=N(Dt),kt={name:`eraser`,size:24,node:[[`path`,{d:`M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21`,key:`g5wo59`}],[`path`,{d:`m5.082 11.09 8.828 8.828`,key:`1wx5vj`}]]};kt.node;var At=N(kt),jt={name:`file-code-corner`,size:24,node:[[`path`,{d:`M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35`,key:`1wthlu`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`m5 16-3 3 3 3`,key:`331omg`}],[`path`,{d:`m9 22 3-3-3-3`,key:`lsp7cz`}]],aliases:[`file-code-2`]};jt.node;var Mt=N(jt),Nt={name:`flask-conical`,size:24,node:[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]};Nt.node;var Pt=N(Nt),Ft={name:`folder-check`,size:24,node:[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}],[`path`,{d:`m9 13 2 2 4-4`,key:`6343dt`}]]};Ft.node;var It=N(Ft),Lt={name:`folder-plus`,size:24,node:[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]};Lt.node;var Rt=N(Lt),zt={name:`globe`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]};zt.node;var Bt=N(zt),Vt={name:`heart-pulse`,size:24,node:[[`path`,{d:`M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5`,key:`mvr1a0`}],[`path`,{d:`M3.22 13H9.5l.5-1 2 4.5 2-7 1.5 3.5h5.27`,key:`auskq0`}]]};Vt.node;var Ht=N(Vt),Ut={name:`house`,size:24,node:[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]],aliases:[`home`]};Ut.node;var Wt=N(Ut),Gt={name:`info`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]};Gt.node;var Kt=N(Gt),qt={name:`key-round`,size:24,node:[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]};qt.node;var Jt=N(qt),Yt={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]],aliases:[`layers-3`]};Yt.node;var Xt=N(Yt),Zt={name:`list-checks`,size:24,node:[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]};Zt.node;var Qt=N(Zt),$t={name:`lock`,size:24,node:[[`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`}]]};$t.node;var en=N($t),tn={name:`mail`,size:24,node:[[`path`,{d:`m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7`,key:`132q7q`}],[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}]]};tn.node;var nn=N(tn),rn={name:`monitor`,size:24,node:[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]};rn.node;var an=N(rn),on={name:`paperclip`,size:24,node:[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]};on.node;var sn=N(on),cn={name:`plug`,size:24,node:[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]};cn.node;var ln=N(cn),un={name:`plus`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]};un.node;var dn=N(un),fn={name:`refresh-cw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]};fn.node;var pn=N(fn),mn={name:`rocket`,size:24,node:[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]};mn.node;var hn=N(mn),gn={name:`route`,size:24,node:[[`circle`,{cx:`6`,cy:`19`,r:`3`,key:`1kj8tv`}],[`path`,{d:`M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15`,key:`1d8sl`}],[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}]]};gn.node;var _n=N(gn),vn={name:`send`,size:24,node:[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]};vn.node;var yn=N(vn),bn={name:`sliders-horizontal`,size:24,node:[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]};bn.node;var xn=N(bn),Sn={name:`smartphone`,size:24,node:[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]};Sn.node;var Cn=N(Sn),wn={name:`sparkle`,size:24,node:[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}]]};wn.node;var Tn=N(wn),En={name:`square-kanban`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 7v7`,key:`1x2jlm`}],[`path`,{d:`M12 7v4`,key:`xawao1`}],[`path`,{d:`M16 7v9`,key:`1hp2iy`}]],aliases:[`kanban-square`]};En.node;var Dn=N(En),On={name:`square-split-horizontal`,size:24,node:[[`path`,{d:`M12 2v20`,key:`t6zp3m`}],[`path`,{d:`M16 3h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-3`,key:`saxlbk`}],[`path`,{d:`M8 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3`,key:`m1vog4`}]],aliases:[`split-square-horizontal`]};On.node;var kn=N(On),An={name:`ticket`,size:24,node:[[`path`,{d:`M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z`,key:`qn84l0`}],[`path`,{d:`M13 5v2`,key:`dyzc3o`}],[`path`,{d:`M13 17v2`,key:`1ont0d`}],[`path`,{d:`M13 11v2`,key:`1wjjxi`}]]};An.node;var jn=N(An),Mn={name:`undo-2`,size:24,node:[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]};Mn.node;var Nn=N(Mn),Pn={name:`wand-sparkles`,size:24,node:[[`path`,{d:`m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72`,key:`ul74o6`}],[`path`,{d:`m14 7 3 3`,key:`1r5n42`}],[`path`,{d:`M5 6v4`,key:`ilb8ba`}],[`path`,{d:`M19 14v4`,key:`blhpug`}],[`path`,{d:`M10 2v2`,key:`7u0qdc`}],[`path`,{d:`M7 8H3`,key:`zfb6yr`}],[`path`,{d:`M21 16h-4`,key:`1cnmox`}],[`path`,{d:`M11 3H9`,key:`1obp7u`}]],aliases:[`wand-2`]};Pn.node;var Fn=N(Pn),In={name:`workflow`,size:24,node:[[`rect`,{width:`8`,height:`8`,x:`3`,y:`3`,rx:`2`,key:`by2w9f`}],[`path`,{d:`M7 11v4a2 2 0 0 0 2 2h4`,key:`xkn7yn`}],[`rect`,{width:`8`,height:`8`,x:`13`,y:`13`,rx:`2`,key:`1cgmvn`}]]};In.node;var Ln=N(In),Rn=et(),I=ge(k(),1),L=Ie();function zn({open:e,onClose:t,children:n,className:r,label:i}){let a=(0,I.useRef)(null);return(0,I.useEffect)(()=>{if(!e)return;let n=e=>{a.current&&!a.current.parentElement?.contains(e.target)&&t()},r=e=>{e.key===`Escape`&&t()};return document.addEventListener(`mousedown`,n),document.addEventListener(`keydown`,r),()=>{document.removeEventListener(`mousedown`,n),document.removeEventListener(`keydown`,r)}},[e,t]),e?(0,L.jsx)(`div`,{ref:a,role:`menu`,"aria-label":i,className:p(`fade-in absolute bottom-[52px] z-10 min-w-[260px] rounded-[14px] border border-line bg-bg p-1.5 shadow-menu`,r),children:n}):null}function Bn({checked:e,onSelect:t,role:n,children:r}){return(0,L.jsxs)(`button`,{type:`button`,role:n,"aria-checked":e,onClick:t,className:`flex min-h-11 w-full cursor-pointer items-center gap-2.5 rounded-[10px] border-0 bg-transparent px-3 text-left text-sm text-ink hover:bg-surface-strong`,children:[r,(0,L.jsx)(`span`,{"aria-hidden":`true`,className:`w-[18px] text-accent`,children:e?`✓`:``})]})}function Vn({id:e,value:t,onChange:n,onSend:r,onStop:i,busy:a,disabled:o,placeholder:s,label:c,left:l,right:u,top:d,rows:f=2}){let m=t.trim().length>0,h=(0,I.useRef)(null);return(0,I.useLayoutEffect)(()=>{let e=h.current;e&&(e.style.height=`auto`,e.style.height=`${e.scrollHeight}px`)},[t]),(0,L.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),a?i?.():m&&!o&&r()},className:`relative box-border w-full rounded-[22px] border border-line bg-bg py-[18px] pr-3.5 pl-5 shadow-composer has-[textarea:focus-visible]:outline-2 has-[textarea:focus-visible]:outline-offset-2 has-[textarea:focus-visible]:outline-accent`,children:[(0,L.jsx)(`label`,{htmlFor:e,className:`sr-only`,children:c}),d,(0,L.jsx)(`textarea`,{ref:h,id:e,rows:f,value:t,disabled:o,onChange:e=>n(e.target.value),onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&!e.nativeEvent.isComposing&&(e.preventDefault(),!a&&m&&!o&&r())},placeholder:s,className:`box-border max-h-[50vh] w-full resize-none overflow-y-auto border-0 bg-transparent p-0 text-base leading-[1.55] text-ink outline-none placeholder:text-muted focus-visible:outline-none disabled:opacity-60`}),(0,L.jsxs)(`div`,{className:`mt-2.5 -ml-2.5 flex items-center gap-1`,children:[l,(0,L.jsx)(`div`,{className:`flex-auto`}),u,a?(0,L.jsx)(`button`,{type:`submit`,"aria-label":`Stop`,className:`ml-1.5 inline-flex size-11 flex-none cursor-pointer items-center justify-center rounded-full border-0 bg-ink text-white hover:bg-ink-2`,children:(0,L.jsx)(_e,{size:14,fill:`currentColor`,"aria-hidden":`true`})}):(0,L.jsx)(`button`,{type:`submit`,"aria-label":`Send`,disabled:o,className:p(`ml-1.5 inline-flex size-11 flex-none cursor-pointer items-center justify-center rounded-full border-0 transition-colors disabled:cursor-not-allowed`,m&&!o?`bg-accent text-white hover:bg-accent-hover`:`bg-line text-muted`),children:(0,L.jsx)(it,{size:20,strokeWidth:2.2,"aria-hidden":`true`})})]})]})}function Hn(e,t){let[n,r]=(0,I.useState)(null),i=(0,I.useRef)(null),a=(0,I.useRef)(t);a.current=t;let o=()=>{i.current&&clearInterval(i.current),i.current=null};return(0,I.useEffect)(()=>o,[]),{state:n,start:(0,I.useCallback)(async t=>{if(t.trim()){o(),r({original:t,job:null,error:``});try{let n=await l.start(t,e);r({original:t,job:n,error:``}),i.current=setInterval(async()=>{try{let t=await l.job();if(!t||t.target!==e||t.startedAt!==n.startedAt)return;if(t.running)return r(e=>e&&{...e,job:t});o();let i=t.exitCode===0?t.result:void 0;i?.refined&&a.current(i.refined),r(e=>e&&{...e,job:t,result:i})}catch(e){o(),r(t=>t&&{...t,error:e.message})}},700)}catch(e){r({original:t,job:null,error:e.message})}}},[e]),stop:(0,I.useCallback)(async()=>{o(),await l.stop().catch(()=>{}),r(null)},[]),close:(0,I.useCallback)(()=>{o(),r(null)},[]),undo:(0,I.useCallback)(()=>{r(e=>(e&&a.current(e.original),null))},[]),running:!!n&&!n.error&&(!n.job||n.job.running)}}function Un({onClick:e,running:t,disabled:n}){return(0,L.jsxs)(c,{variant:`ghost`,className:`px-2.5 text-[15px]`,disabled:n||t,onClick:e,title:`Make the request precise before sending it: nothing runs`,children:[t?(0,L.jsx)(ae,{state:`thinking`,px:18}):(0,L.jsx)(Fn,{size:18,strokeWidth:1.8,"aria-hidden":`true`}),`Refine`]})}function Wn({state:t,onStop:n,onUndo:r,onClose:i}){let[a,o]=(0,I.useState)(!1),s=t.job,l=t.result,u=!t.error&&(!s||s.running),d=t.error||s?.lines.filter(e=>!/^→ |^args /.test(e)).slice(-3).join(` `)||`Refine gave no result.`;return(0,L.jsxs)(`div`,{"aria-live":`polite`,className:`-mt-1 mb-3 flex flex-col gap-2 border-b border-line-soft pb-3 text-[13px]`,children:[(0,L.jsxs)(`div`,{className:`flex min-h-7 flex-wrap items-center gap-x-2 gap-y-1`,children:[u?(0,L.jsx)(ae,{state:`thinking`,px:18,label:`Refining`}):(0,L.jsx)(Fn,{size:16,"aria-hidden":`true`,className:l?`text-accent`:`text-fail`}),(0,L.jsx)(`span`,{className:p(`font-medium`,u&&`shimmer`),children:(0,L.jsx)(`span`,{children:u?`Refining your request…`:l?`Refined: your request below, made precise`:`Refine did not finish`})}),u&&(0,L.jsx)(`span`,{className:`text-muted`,children:`Checking it against the capabilities, the systems and the project. Nothing runs.`}),l&&(0,L.jsxs)(`span`,{className:`text-muted`,children:[l.grounded.filter(e=>e.checked).length,` of `,l.grounded.length,` facts checked`]}),(0,L.jsx)(`span`,{className:`flex-auto`}),u?(0,L.jsx)(c,{size:`sm`,variant:`ghost`,onClick:n,children:`Stop`}):(0,L.jsxs)(L.Fragment,{children:[l&&(l.assumed.length>0||typeof l.ste==`number`)&&(0,L.jsxs)(`button`,{type:`button`,"aria-expanded":a,onClick:()=>o(!a),className:`inline-flex min-h-7 cursor-pointer items-center gap-1 rounded-full border-0 bg-transparent px-2 font-medium text-muted hover:bg-surface-strong hover:text-ink`,children:[`Details`,(0,L.jsx)(ie,{size:14,"aria-hidden":`true`,className:p(`transition-transform`,a&&`rotate-180`)})]}),l&&(0,L.jsxs)(`button`,{type:`button`,onClick:r,title:`Put your own words back`,className:`inline-flex min-h-7 cursor-pointer items-center gap-1 rounded-full border-0 bg-transparent px-2 font-medium text-muted hover:bg-surface-strong hover:text-ink`,children:[(0,L.jsx)(Nn,{size:14,"aria-hidden":`true`}),`Undo`]}),(0,L.jsx)(`button`,{type:`button`,"aria-label":`Close the note`,onClick:i,className:`inline-flex size-7 flex-none cursor-pointer items-center justify-center rounded-full border-0 bg-transparent text-muted hover:bg-surface-strong hover:text-ink`,children:(0,L.jsx)(O,{size:14,"aria-hidden":`true`})})]})]}),!u&&!l&&(0,L.jsx)(`p`,{className:`m-0 rounded-[10px] bg-fail-soft px-3 py-1.5 text-fail [overflow-wrap:anywhere]`,children:d}),l&&l.missing.length>0&&(0,L.jsxs)(`div`,{className:`flex flex-col gap-0.5 rounded-[10px] bg-warn-soft px-3 py-1.5`,children:[(0,L.jsxs)(`span`,{className:`flex items-center gap-1.5 font-medium text-warn`,children:[(0,L.jsx)(e,{size:14,"aria-hidden":`true`}),`Still missing: add it before you send`]}),(0,L.jsx)(`ul`,{className:`m-0 list-disc pl-5 text-ink-2`,children:l.missing.map(e=>(0,L.jsx)(`li`,{children:e},e))})]}),l&&a&&(0,L.jsxs)(`div`,{className:`flex flex-col gap-1 text-muted [overflow-wrap:anywhere]`,children:[l.assumed.length>0&&(0,L.jsxs)(`p`,{className:`m-0`,children:[`Assumed: `,l.assumed.join(`; `)]}),typeof l.ste==`number`&&(0,L.jsxs)(`p`,{className:`m-0`,children:[Math.round(l.ste*100),`% of its sentences in plain technical English`]})]})]})}function Gn(e){requestAnimationFrame(()=>{let t=document.getElementById(e);t&&(t.focus(),t.setSelectionRange(0,0),t.scrollTop=0)})}var Kn=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 150`,width:`2.06em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{fill:`#34a853`,d:`M255.285 143.47c-.084-.524-.164-1.042-.251-1.56a128.1 128.1 0 0 0-12.794-38.288a128.8 128.8 0 0 0-23.45-31.86a129.2 129.2 0 0 0-22.713-18.005c.049-.08.09-.168.14-.25c2.582-4.461 5.172-8.917 7.755-13.38l7.576-13.068c1.818-3.126 3.632-6.26 5.438-9.386q.643-1.115 1.023-2.297a11.78 11.78 0 0 0-.36-8.188q-.32-.76-.743-1.472a11.7 11.7 0 0 0-4.08-4.064a11.85 11.85 0 0 0-5.005-1.61a12 12 0 0 0-2.218.02q-.912.094-1.814.33a11.74 11.74 0 0 0-7.154 5.467c-1.814 3.127-3.628 6.26-5.438 9.386l-7.576 13.069c-2.583 4.462-5.173 8.918-7.755 13.38c-.282.487-.567.973-.848 1.467q-.586-.237-1.172-.462c-14.24-5.43-29.688-8.4-45.836-8.4c-.442 0-.879 0-1.324.006c-14.357.143-28.152 2.64-41.022 7.12a119 119 0 0 0-4.42 1.642c-.262-.455-.532-.911-.79-1.367c-2.583-4.462-5.173-8.918-7.755-13.38l-7.576-13.07a3915 3915 0 0 1-5.439-9.386A11.74 11.74 0 0 0 48.5.048a11.7 11.7 0 0 0-5.01 1.612a11.7 11.7 0 0 0-4.077 4.063c-.281.474-.532.967-.742 1.473a11.8 11.8 0 0 0-.365 8.188c.259.786.594 1.554 1.023 2.296a3973 3973 0 0 1 5.439 9.386q3.793 6.535 7.58 13.069c2.582 4.462 5.168 8.918 7.75 13.38c.02.038.046.075.065.112A129 129 0 0 0 45.32 64.38a129.7 129.7 0 0 0-22.2 24.015a128 128 0 0 0-9.34 15.24a128.2 128.2 0 0 0-10.843 28.764a131 131 0 0 0-1.951 9.524c-.087.518-.167 1.042-.247 1.56A125 125 0 0 0 0 149.118h256q-.307-2.837-.734-5.636z`}),(0,L.jsx)(`path`,{fill:`#202124`,d:`M194.59 113.712c5.122-3.41 5.867-11.3 1.661-17.62c-4.203-6.323-11.763-8.682-16.883-5.273c-5.122 3.41-5.868 11.3-1.662 17.621c4.203 6.322 11.764 8.682 16.883 5.272m-116.071-5.25c4.206-6.321 3.46-14.21-1.662-17.62c-5.123-3.41-12.68-1.05-16.886 5.27c-4.203 6.323-3.458 14.212 1.662 17.622c5.122 3.41 12.683 1.05 16.886-5.272`})]})),qn=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 315`,width:`0.99em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{d:`M213.803 167.03c.442 47.58 41.74 63.413 42.197 63.615c-.35 1.116-6.599 22.563-21.757 44.716c-13.104 19.153-26.705 38.235-48.13 38.63c-21.05.388-27.82-12.483-51.888-12.483c-24.061 0-31.582 12.088-51.51 12.871c-20.68.783-36.428-20.71-49.64-39.793c-27-39.033-47.633-110.3-19.928-158.406c13.763-23.89 38.36-39.017 65.056-39.405c20.307-.387 39.475 13.662 51.889 13.662c12.406 0 35.699-16.895 60.186-14.414c10.25.427 39.026 4.14 57.503 31.186c-1.49.923-34.335 20.044-33.978 59.822M174.24 50.199c10.98-13.29 18.369-31.79 16.353-50.199c-15.826.636-34.962 10.546-46.314 23.828c-10.173 11.763-19.082 30.589-16.678 48.633c17.64 1.365 35.66-8.964 46.64-22.262`})]})),Jn=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 242`,width:`1.28em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsxs)(`defs`,{children:[(0,L.jsxs)(`linearGradient`,{id:`SVG4V795Kgq`,x1:`58.972%`,x2:`37.191%`,y1:`7.411%`,y2:`103.762%`,children:[(0,L.jsx)(`stop`,{offset:`0%`,stopColor:`#114a8b`}),(0,L.jsx)(`stop`,{offset:`100%`,stopColor:`#0669bc`})]}),(0,L.jsxs)(`linearGradient`,{id:`SVGzpurqcJr`,x1:`59.719%`,x2:`52.691%`,y1:`52.313%`,y2:`54.864%`,children:[(0,L.jsx)(`stop`,{offset:`0%`,stopOpacity:.3}),(0,L.jsx)(`stop`,{offset:`7.1%`,stopOpacity:.2}),(0,L.jsx)(`stop`,{offset:`32.1%`,stopOpacity:.1}),(0,L.jsx)(`stop`,{offset:`62.3%`,stopOpacity:.05}),(0,L.jsx)(`stop`,{offset:`100%`,stopOpacity:0})]}),(0,L.jsxs)(`linearGradient`,{id:`SVGZ5kCkZNr`,x1:`37.279%`,x2:`62.473%`,y1:`4.6%`,y2:`99.979%`,children:[(0,L.jsx)(`stop`,{offset:`0%`,stopColor:`#3ccbf4`}),(0,L.jsx)(`stop`,{offset:`100%`,stopColor:`#2892df`})]})]}),(0,L.jsx)(`path`,{fill:`url(#SVG4V795Kgq)`,d:`M85.343.003h75.753L82.457 233a12.08 12.08 0 0 1-11.442 8.216H12.06A12.06 12.06 0 0 1 .633 225.303L73.898 8.219A12.08 12.08 0 0 1 85.343 0z`}),(0,L.jsx)(`path`,{fill:`#0078d4`,d:`M195.423 156.282H75.297a5.56 5.56 0 0 0-3.796 9.627l77.19 72.047a12.14 12.14 0 0 0 8.28 3.26h68.02z`}),(0,L.jsx)(`path`,{fill:`url(#SVGzpurqcJr)`,d:`M85.343.003a11.98 11.98 0 0 0-11.471 8.376L.723 225.105a12.045 12.045 0 0 0 11.37 16.112h60.475a12.93 12.93 0 0 0 9.921-8.437l14.588-42.991l52.105 48.6a12.33 12.33 0 0 0 7.757 2.828h67.766l-29.721-84.935l-86.643.02L161.37.003z`}),(0,L.jsx)(`path`,{fill:`url(#SVGZ5kCkZNr)`,d:`M182.098 8.207A12.06 12.06 0 0 0 170.67.003H86.245c5.175 0 9.773 3.301 11.428 8.204L170.94 225.3a12.062 12.062 0 0 1-11.428 15.92h84.429a12.062 12.062 0 0 0 11.425-15.92z`})]})),Yn=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`defs`,{children:(0,L.jsxs)(`radialGradient`,{id:`SVGwZwAicDR`,cx:`50.141%`,cy:`50.003%`,r:`50.119%`,fx:`50.141%`,fy:`50.003%`,children:[(0,L.jsx)(`stop`,{offset:`0%`,stopColor:`#797979`}),(0,L.jsx)(`stop`,{offset:`100%`,stopColor:`#4c4c4c`})]})}),(0,L.jsx)(`circle`,{cx:127.949,cy:128.603,r:127.397,fill:`#f5bb60`}),(0,L.jsx)(`circle`,{cx:114.961,cy:115.615,r:114.685,fill:`#e86f32`}),(0,L.jsx)(`circle`,{cx:130.16,cy:100.416,r:99.485,fill:`#e53d42`}),(0,L.jsx)(`circle`,{cx:138.174,cy:108.43,r:91.471,fill:`#bfd141`}),(0,L.jsx)(`circle`,{cx:131.542,cy:115.062,r:84.839,fill:`#6db64c`}),(0,L.jsx)(`circle`,{cx:118.001,cy:101.798,r:71.298,fill:`#afdbe7`}),(0,L.jsx)(`circle`,{cx:129.607,cy:89.915,r:59.691,fill:`#57badf`}),(0,L.jsx)(`circle`,{cx:137.069,cy:97.376,r:52.506,fill:`#02b2d6`}),(0,L.jsx)(`circle`,{cx:129.331,cy:104.837,r:44.768,fill:`url(#SVGwZwAicDR)`}),(0,L.jsx)(`circle`,{cx:129.331,cy:104.837,r:44.768,fill:`#231f20`}),(0,L.jsx)(`path`,{fill:`#fff`,d:`M141.088 98.971c4.439 1.992 10.56-2.016 13.672-8.951s2.036-14.173-2.402-16.164c-4.44-1.992-10.56 2.016-13.672 8.951s-2.037 14.173 2.402 16.164`})]})),Xn=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 246`,width:`1.26em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsxs)(`defs`,{children:[(0,L.jsxs)(`linearGradient`,{id:`SVGvnhR7dox`,x1:`99.14%`,x2:`33.859%`,y1:`112.708%`,y2:`37.755%`,children:[(0,L.jsx)(`stop`,{offset:`18%`,stopColor:`#0052cc`}),(0,L.jsx)(`stop`,{offset:`100%`,stopColor:`#2684ff`})]}),(0,L.jsxs)(`linearGradient`,{id:`SVGgker3cTp`,x1:`.926%`,x2:`66.18%`,y1:`-12.582%`,y2:`62.306%`,children:[(0,L.jsx)(`stop`,{offset:`18%`,stopColor:`#0052cc`}),(0,L.jsx)(`stop`,{offset:`100%`,stopColor:`#2684ff`})]})]}),(0,L.jsx)(`path`,{fill:`url(#SVGvnhR7dox)`,d:`M9.26 187.33c-2.64 4.307-5.607 9.305-8.126 13.287a8.127 8.127 0 0 0 2.722 11.052l52.823 32.507a8.127 8.127 0 0 0 11.256-2.763c2.113-3.536 4.835-8.127 7.801-13.044c20.926-34.538 41.974-30.312 79.925-12.19l52.376 24.908a8.127 8.127 0 0 0 10.93-4.063l25.152-56.886a8.127 8.127 0 0 0-4.063-10.646c-11.052-5.201-33.034-15.562-52.823-25.111c-71.189-34.579-131.691-32.344-177.972 42.949`}),(0,L.jsx)(`path`,{fill:`url(#SVGgker3cTp)`,d:`M246.115 58.232c2.641-4.307 5.607-9.305 8.127-13.287a8.127 8.127 0 0 0-2.723-11.052L198.696 1.386a8.127 8.127 0 0 0-11.58 2.682c-2.113 3.535-4.835 8.127-7.802 13.043c-20.926 34.538-41.974 30.313-79.925 12.19L47.176 4.515a8.127 8.127 0 0 0-10.93 4.063L11.093 65.465a8.127 8.127 0 0 0 4.063 10.645c11.052 5.202 33.035 15.563 52.823 25.112c71.351 34.538 131.854 32.222 178.135-42.99`})]})),Zn=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 208`,width:`1.49em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{d:`M205.28 31.36c14.096 14.88 20.016 35.2 22.512 63.68c6.626 0 12.805 1.47 16.976 7.152l7.792 10.56A17.55 17.55 0 0 1 256 123.2v28.688c-.008 3.704-1.843 7.315-4.832 9.504C215.885 187.222 172.35 208 128 208c-49.066 0-98.19-28.273-123.168-46.608c-2.989-2.189-4.825-5.8-4.832-9.504V123.2c0-3.776 1.2-7.424 3.424-10.464l7.792-10.544c4.173-5.657 10.38-7.152 16.992-7.152c2.496-28.48 8.4-48.8 22.512-63.68C77.331 3.165 112.567.06 127.552 0H128c14.72 0 50.4 2.88 77.28 31.36m-77.264 47.376c-3.04 0-6.544.176-10.272.544c-1.312 4.896-3.248 9.312-6.08 12.128c-11.2 11.2-24.704 12.928-31.936 12.928c-6.802 0-13.927-1.42-19.744-5.088c-5.502 1.808-10.786 4.415-11.136 10.912c-.586 12.28-.637 24.55-.688 36.824c-.026 6.16-.05 12.322-.144 18.488c.024 3.579 2.182 6.903 5.44 8.384C79.936 185.92 104.976 192 128.016 192c23.008 0 48.048-6.08 74.512-18.144c3.258-1.48 5.415-4.805 5.44-8.384c.317-18.418.062-36.912-.816-55.312h.016c-.342-6.534-5.648-9.098-11.168-10.912c-5.82 3.652-12.927 5.088-19.728 5.088c-7.232 0-20.72-1.728-31.936-12.928c-2.832-2.816-4.768-7.232-6.08-12.128a106 106 0 0 0-10.24-.544m-26.941 43.93c5.748 0 10.408 4.66 10.408 10.409v19.183c0 5.749-4.66 10.409-10.408 10.409s-10.408-4.66-10.408-10.409v-19.183c0-5.748 4.66-10.408 10.408-10.408m53.333 0c5.749 0 10.409 4.66 10.409 10.409v19.183c0 5.749-4.66 10.409-10.409 10.409c-5.748 0-10.408-4.66-10.408-10.409v-19.183c0-5.748 4.66-10.408 10.408-10.408M81.44 28.32c-11.2 1.12-20.64 4.8-25.44 9.92c-10.4 11.36-8.16 40.16-2.24 46.24c4.32 4.32 12.48 7.2 21.28 7.2c6.72 0 19.52-1.44 30.08-12.16c4.64-4.48 7.52-15.68 7.2-27.04c-.32-9.12-2.88-16.64-6.72-19.84c-4.16-3.68-13.6-5.28-24.16-4.32m68.96 4.32c-3.84 3.2-6.4 10.72-6.72 19.84c-.32 11.36 2.56 22.56 7.2 27.04c10.56 10.72 23.36 12.16 30.08 12.16c8.8 0 16.96-2.88 21.28-7.2c5.92-6.08 8.16-34.88-2.24-46.24c-4.8-5.12-14.24-8.8-25.44-9.92c-10.56-.96-20 .64-24.16 4.32M128 56c-2.56 0-5.6.16-8.96.48c.32 1.76.48 3.68.64 5.76c0 1.44 0 2.88-.16 4.48c3.2-.32 5.92-.32 8.48-.32s5.28 0 8.48.32c-.16-1.6-.16-3.04-.16-4.48c.16-2.08.32-4 .64-5.76c-3.36-.32-6.4-.48-8.96-.48`})]})),Qn=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 250`,width:`1.24em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{fill:`#161614`,d:`M128.001 0C57.317 0 0 57.307 0 128.001c0 56.554 36.676 104.535 87.535 121.46c6.397 1.185 8.746-2.777 8.746-6.158c0-3.052-.12-13.135-.174-23.83c-35.61 7.742-43.124-15.103-43.124-15.103c-5.823-14.795-14.213-18.73-14.213-18.73c-11.613-7.944.876-7.78.876-7.78c12.853.902 19.621 13.19 19.621 13.19c11.417 19.568 29.945 13.911 37.249 10.64c1.149-8.272 4.466-13.92 8.127-17.116c-28.431-3.236-58.318-14.212-58.318-63.258c0-13.975 5-25.394 13.188-34.358c-1.329-3.224-5.71-16.242 1.24-33.874c0 0 10.749-3.44 35.21 13.121c10.21-2.836 21.16-4.258 32.038-4.307c10.878.049 21.837 1.47 32.066 4.307c24.431-16.56 35.165-13.12 35.165-13.12c6.967 17.63 2.584 30.65 1.255 33.873c8.207 8.964 13.173 20.383 13.173 34.358c0 49.163-29.944 59.988-58.447 63.157c4.591 3.972 8.682 11.762 8.682 23.704c0 17.126-.148 30.91-.148 35.126c0 3.407 2.304 7.398 8.792 6.14C219.37 232.5 256 184.537 256 128.002C256 57.307 198.691 0 128.001 0m-80.06 182.34c-.282.636-1.283.827-2.194.39c-.929-.417-1.45-1.284-1.15-1.922c.276-.655 1.279-.838 2.205-.399c.93.418 1.46 1.293 1.139 1.931m6.296 5.618c-.61.566-1.804.303-2.614-.591c-.837-.892-.994-2.086-.375-2.66c.63-.566 1.787-.301 2.626.591c.838.903 1 2.088.363 2.66m4.32 7.188c-.785.545-2.067.034-2.86-1.104c-.784-1.138-.784-2.503.017-3.05c.795-.547 2.058-.055 2.861 1.075c.782 1.157.782 2.522-.019 3.08m7.304 8.325c-.701.774-2.196.566-3.29-.49c-1.119-1.032-1.43-2.496-.726-3.27c.71-.776 2.213-.558 3.315.49c1.11 1.03 1.45 2.505.701 3.27m9.442 2.81c-.31 1.003-1.75 1.459-3.199 1.033c-1.448-.439-2.395-1.613-2.103-2.626c.301-1.01 1.747-1.484 3.207-1.028c1.446.436 2.396 1.602 2.095 2.622m10.744 1.193c.036 1.055-1.193 1.93-2.715 1.95c-1.53.034-2.769-.82-2.786-1.86c0-1.065 1.202-1.932 2.733-1.958c1.522-.03 2.768.818 2.768 1.868m10.555-.405c.182 1.03-.875 2.088-2.387 2.37c-1.485.271-2.861-.365-3.05-1.386c-.184-1.056.893-2.114 2.376-2.387c1.514-.263 2.868.356 3.061 1.403`})]})),$n=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsxs)(`defs`,{children:[(0,L.jsxs)(`linearGradient`,{id:`SVGSBI7obaC`,x1:`98.031%`,x2:`58.888%`,y1:`.161%`,y2:`40.766%`,children:[(0,L.jsx)(`stop`,{offset:`18%`,stopColor:`#0052cc`}),(0,L.jsx)(`stop`,{offset:`100%`,stopColor:`#2684ff`})]}),(0,L.jsxs)(`linearGradient`,{id:`SVGHifZlbzE`,x1:`100.665%`,x2:`55.402%`,y1:`.455%`,y2:`44.727%`,children:[(0,L.jsx)(`stop`,{offset:`18%`,stopColor:`#0052cc`}),(0,L.jsx)(`stop`,{offset:`100%`,stopColor:`#2684ff`})]})]}),(0,L.jsx)(`path`,{fill:`#2684ff`,d:`M244.658 0H121.707a55.5 55.5 0 0 0 55.502 55.502h22.649V77.37c.02 30.625 24.841 55.447 55.466 55.467V10.666C255.324 4.777 250.55 0 244.658 0`}),(0,L.jsx)(`path`,{fill:`url(#SVGSBI7obaC)`,d:`M183.822 61.262H60.872c.019 30.625 24.84 55.447 55.466 55.467h22.649v21.938c.039 30.625 24.877 55.43 55.502 55.43V71.93c0-5.891-4.776-10.667-10.667-10.667`}),(0,L.jsx)(`path`,{fill:`url(#SVGHifZlbzE)`,d:`M122.951 122.489H0c0 30.653 24.85 55.502 55.502 55.502h22.72v21.867c.02 30.597 24.798 55.408 55.396 55.466V133.156c0-5.891-4.776-10.667-10.667-10.667`})]})),er=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 339`,width:`0.92em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{d:`M189.485 144.651c-3.445.99-6.306 3.4-7.867 6.626l-1.015 2.087l.014 2.918c0 2.721.057 3.06.832 4.977c1.072 2.72 2.143 4.399 4.103 6.316c3.383 3.355 7.19 4.23 12.294 2.89a12.13 12.13 0 0 0 7.288-6.147a10.6 10.6 0 0 0 1.128-7.02c-.902-6.387-4.652-11.026-10.207-12.647a14.94 14.94 0 0 0-6.57 0m-129.746.07c-4.3 1.354-7.515 4.512-9.164 9.01a16.7 16.7 0 0 0-.846 7.33c.803 4.357 4.37 8.319 8.43 9.404c5.104 1.34 8.91.465 12.294-2.89c1.974-1.917 3.031-3.595 4.103-6.316c.775-1.917.832-2.256.832-4.977l.014-2.918l-1.015-2.087a12.6 12.6 0 0 0-7.966-6.654a14.4 14.4 0 0 0-6.682.099m58.987 28.197c-1.847 1.001-3.144 3.525-2.75 5.4c.438 2.016 2.214 4.06 4.977 5.738c1.48.888 1.58 1.015 1.65 1.917c.056.536-.141 2.059-.409 3.426c-.282 1.325-.507 2.735-.507 3.13c.028 1.043.986 2.75 2.016 3.567c.902.733 1.071.761 3.595.832c2.312.07 2.791.014 3.722-.423c2.382-1.156 2.988-3.3 2.114-7.402c-.733-3.426-.592-3.947 1.227-5.005c1.931-1.128 3.962-3.087 4.568-4.427a5.146 5.146 0 0 0-2.467-6.767a5.56 5.56 0 0 0-2.552-.465c-1.777 0-2.919.423-5.005 1.748l-1.198.747l-.748-.45c-3.087-1.834-3.651-2.045-5.512-2.017a5.6 5.6 0 0 0-2.721.451m5.498-30.946c-5.258.508-6.696.705-9.22 1.213c-4.103.846-9.587 2.75-13.408 4.624c-13.252 6.485-22.402 17.285-25.193 29.804c-.564 2.481-.635 3.299-.635 7.472c0 4.145.07 5.033.607 7.388c3.722 16.354 18.779 28.436 38.262 30.635c4.23.465 22.501.465 26.73 0c15.65-1.762 29.1-10.25 35.148-22.148c1.607-3.186 2.382-5.245 3.101-8.487c.55-2.355.62-3.243.62-7.374c0-4.187-.07-5.005-.634-7.486c-4.06-18.187-21.697-32.482-43.31-35.203a97 97 0 0 0-12.054-.438zm9.094 13.21a46.3 46.3 0 0 1 20.301 7.247c3.144 2.087 7.571 6.457 9.46 9.333c2.34 3.539 3.666 7.162 4.272 11.56c.282 2.017.14 3.54-.606 6.796c-1.128 4.864-4.68 9.94-9.474 13.492a44 44 0 0 1-9.714 4.906c-5.386 1.72-8.91 2.03-21.5 1.946c-8.205-.085-9.671-.141-12.026-.592c-8.036-1.509-14.408-4.709-19.033-9.587c-3.721-3.947-5.427-7.543-6.344-13.337c-.423-2.707.353-7.176 1.932-10.94c1.917-4.596 6.88-10.292 11.786-13.577c5.681-3.792 13.168-6.485 20.048-7.218c2.636-.282 8.261-.282 10.898-.028M55.735.103a23.3 23.3 0 0 0-9.63 4.2c-8.092 6.133-14.352 19.188-17.002 35.444c-.987 6.147-1.678 14.662-1.678 21.19c0 7.669.903 17.481 2.186 24.263c.282 1.508.437 2.847.324 2.932q-1.302 1.091-2.637 2.143a75 75 0 0 0-13.379 14.38A77.4 77.4 0 0 0 .667 137.63a93.4 93.4 0 0 0-.325 19.132c1.283 10.996 4.582 20.273 10.25 28.76l1.833 2.75l-.522.902c-3.792 6.372-7.02 15.578-8.53 24.418c-1.184 6.993-1.339 8.868-1.339 18.243c0 9.446.127 11.321 1.24 17.848c1.34 7.825 4.061 16.115 7.092 21.627c1.001 1.805 3.426 5.54 3.722 5.738c.099.043-.197.945-.648 1.988a104.4 104.4 0 0 0-7.726 26.406c-.874 5.88-1.001 7.783-1.001 13.972c0 7.895.437 11.73 2.087 18.031l.24.917h20.836l-.704-1.283c-4.188-7.782-4.582-22.205-.96-36.613c1.65-6.655 3.525-11.547 7.022-18.272l2.086-4.088v-2.496c0-2.326-.042-2.594-.803-4.13a12.9 12.9 0 0 0-2.735-3.525a24.5 24.5 0 0 1-5.428-7.655c-5.978-12.97-7.134-32.23-2.933-48.654c1.749-6.851 4.639-12.942 7.67-16.27a11.1 11.1 0 0 0 3.144-7.485c0-2.75-.987-5.005-3.158-7.36a44.2 44.2 0 0 1-11.519-24.376c-1.973-13.534 1.608-28.267 9.728-39.954c7.938-11.476 19.075-18.836 31.538-20.795c2.806-.465 8.036-.395 10.94.14c3.187.565 5.175.396 7.219-.577c2.523-1.199 3.778-2.679 5.273-6.077c1.31-3.03 2.326-4.694 5.075-8.12c3.299-4.089 6.485-6.894 11.589-10.278c5.822-3.806 12.463-6.584 19.06-7.909c2.397-.493 3.525-.564 8.023-.564s5.61.07 8.022.564a57.4 57.4 0 0 1 26.984 14.056c1.65 1.537 5.61 6.443 6.88 8.487c.479.804 1.339 2.496 1.86 3.764c1.48 3.398 2.75 4.878 5.273 6.063c1.974.958 4.032 1.156 7.092.634c4.836-.818 8.557-.747 13.294.226c16.129 3.242 30.17 16.537 36.388 34.357c5.428 15.621 3.891 31.961-4.173 44.452c-1.367 2.115-2.72 3.807-4.695 5.907c-4.243 4.54-4.243 10.18-.014 14.846c6.95 7.599 11.293 26.307 9.982 42.802c-.874 10.884-3.666 20.626-7.515 26.139a29.6 29.6 0 0 1-3.158 3.637a12.9 12.9 0 0 0-2.735 3.524c-.76 1.537-.803 1.805-.803 4.131v2.51l2.086 4.088c3.497 6.711 5.358 11.603 7.021 18.258c3.567 14.21 3.257 28.337-.832 36.387q-.353.671-.62 1.382c0 .084 4.639.127 10.32.127h10.292l.282-1.043l.507-1.89c.268-1.071.804-4.23 1.241-7.274c.409-3.06.409-14.324 0-17.736c-1.55-12.336-4.159-22.134-8.417-31.383c-.45-1.043-.747-1.945-.648-1.988c.113-.07.803-1.043 1.522-2.143c5.301-8.022 8.558-18.102 10.208-31.41c.437-3.666.437-19.428 0-22.953c-1.17-9.093-2.566-15.254-4.907-21.5a86 86 0 0 0-4.638-9.868l-.536-.903l1.847-2.735c5.668-8.515 8.967-17.792 10.25-28.76a93.4 93.4 0 0 0-.339-19.146a77.7 77.7 0 0 0-13.238-32.976a75 75 0 0 0-13.393-14.38a114 114 0 0 1-2.623-2.143a9.8 9.8 0 0 1 .325-2.932c2.932-15.325 2.833-34.443-.24-49.387c-2.679-13.027-7.543-23.375-13.816-29.352c-4.991-4.766-10.095-6.796-16.213-6.415c-14.042.832-25.377 16.988-29.832 42.436a96 96 0 0 0-1.368 10.235c0 .508-.099.93-.211.93a13.5 13.5 0 0 1-2.101-1.099a68.5 68.5 0 0 0-34.611-9.827c-11.73 0-23.784 3.426-34.626 9.841c-.662.427-1.36.795-2.086 1.1c-.113 0-.212-.423-.212-.93a95 95 0 0 0-1.367-10.222C85.665 19.627 76.36 4.5 63.996.679A29.6 29.6 0 0 0 55.75.101zm4.13 19.765c3.497 2.777 7.374 10.7 9.616 19.569c.422 1.593.845 3.44.972 4.116c.099.663.367 2.143.578 3.285c.945 5.146 1.382 10.715 1.438 17.482l.029 6.697l-1.692 2.467l-1.664 2.51h-3.92c-4.567 0-9.107.577-13.449 1.748l-3.355.846c-.466.098-.536-.043-.804-2.03a119 119 0 0 1 .226-32.751c1.748-11.11 5.822-21.162 9.812-24.122c.945-.705 1.114-.691 2.213.183m138.516-.17c2.397 1.777 5.047 6.486 7.021 12.52c3.948 12.04 5.076 28.592 2.99 44.34c-.269 1.973-.34 2.128-.805 2.03l-3.355-.846a52 52 0 0 0-13.45-1.749h-3.919l-1.678-2.509l-1.677-2.467l.028-6.683c.056-9.432.93-16.777 3.017-24.982c2.213-8.783 6.118-16.707 9.587-19.484c1.1-.874 1.268-.888 2.241-.17`})]})),tr=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 260`,width:`1.19em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{d:`M239.184 106.203a64.72 64.72 0 0 0-5.576-53.103C219.452 28.459 191 15.784 163.213 21.74A65.586 65.586 0 0 0 52.096 45.22a64.72 64.72 0 0 0-43.23 31.36c-14.31 24.602-11.061 55.634 8.033 76.74a64.67 64.67 0 0 0 5.525 53.102c14.174 24.65 42.644 37.324 70.446 31.36a64.72 64.72 0 0 0 48.754 21.744c28.481.025 53.714-18.361 62.414-45.481a64.77 64.77 0 0 0 43.229-31.36c14.137-24.558 10.875-55.423-8.083-76.483m-97.56 136.338a48.4 48.4 0 0 1-31.105-11.255l1.535-.87l51.67-29.825a8.6 8.6 0 0 0 4.247-7.367v-72.85l21.845 12.636c.218.111.37.32.409.563v60.367c-.056 26.818-21.783 48.545-48.601 48.601M37.158 197.93a48.35 48.35 0 0 1-5.781-32.589l1.534.921l51.722 29.826a8.34 8.34 0 0 0 8.441 0l63.181-36.425v25.221a.87.87 0 0 1-.358.665l-52.335 30.184c-23.257 13.398-52.97 5.431-66.404-17.803M23.549 85.38a48.5 48.5 0 0 1 25.58-21.333v61.39a8.29 8.29 0 0 0 4.195 7.316l62.874 36.272l-21.845 12.636a.82.82 0 0 1-.767 0L41.353 151.53c-23.211-13.454-31.171-43.144-17.804-66.405zm179.466 41.695l-63.08-36.63L161.73 77.86a.82.82 0 0 1 .768 0l52.233 30.184a48.6 48.6 0 0 1-7.316 87.635v-61.391a8.54 8.54 0 0 0-4.4-7.213m21.742-32.69l-1.535-.922l-51.619-30.081a8.39 8.39 0 0 0-8.492 0L99.98 99.808V74.587a.72.72 0 0 1 .307-.665l52.233-30.133a48.652 48.652 0 0 1 72.236 50.391zM88.061 139.097l-21.845-12.585a.87.87 0 0 1-.41-.614V65.685a48.652 48.652 0 0 1 79.757-37.346l-1.535.87l-51.67 29.825a8.6 8.6 0 0 0-4.246 7.367zm11.868-25.58L128.067 97.3l28.188 16.218v32.434l-28.086 16.218l-28.188-16.218z`})]})),nr=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 239`,width:`1.3em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsxs)(`defs`,{children:[(0,L.jsxs)(`linearGradient`,{id:`SVGCo9xpmZW`,x1:`17.372%`,x2:`82.628%`,y1:`-6.51%`,y2:`106.51%`,children:[(0,L.jsx)(`stop`,{offset:`0%`,stopColor:`#5a62c3`}),(0,L.jsx)(`stop`,{offset:`50%`,stopColor:`#4d55bd`}),(0,L.jsx)(`stop`,{offset:`100%`,stopColor:`#3940ab`})]}),(0,L.jsx)(`path`,{id:`SVGhJCUgeMn`,d:`M136.93 64.476v12.8a32.7 32.7 0 0 1-5.953-.952a38.7 38.7 0 0 1-26.79-22.742h21.848c6.008.022 10.872 4.887 10.895 10.894`})]}),(0,L.jsx)(`path`,{fill:`#5059c9`,d:`M178.563 89.302h66.125c6.248 0 11.312 5.065 11.312 11.312v60.231c0 22.96-18.613 41.574-41.573 41.574h-.197c-22.96.003-41.576-18.607-41.579-41.568V95.215a5.91 5.91 0 0 1 5.912-5.913`}),(0,L.jsx)(`circle`,{cx:223.256,cy:50.605,r:26.791,fill:`#5059c9`}),(0,L.jsx)(`circle`,{cx:139.907,cy:38.698,r:38.698,fill:`#7b83eb`}),(0,L.jsx)(`path`,{fill:`#7b83eb`,d:`M191.506 89.302H82.355c-6.173.153-11.056 5.276-10.913 11.449v68.697c-.862 37.044 28.445 67.785 65.488 68.692c37.043-.907 66.35-31.648 65.489-68.692v-68.697c.143-6.173-4.74-11.296-10.913-11.449`}),(0,L.jsx)(`path`,{d:`M142.884 89.302v96.268a10.96 10.96 0 0 1-6.787 10.062c-1.3.55-2.697.833-4.108.833H76.68c-.774-1.965-1.488-3.93-2.084-5.953a72.5 72.5 0 0 1-3.155-21.076v-68.703c-.143-6.163 4.732-11.278 10.895-11.43z`,opacity:.1}),(0,L.jsx)(`path`,{d:`M136.93 89.302v102.222c0 1.411-.283 2.808-.833 4.108a10.96 10.96 0 0 1-10.062 6.787H79.48c-1.012-1.965-1.965-3.93-2.798-5.954a59 59 0 0 1-2.084-5.953a72.5 72.5 0 0 1-3.155-21.076v-68.703c-.143-6.163 4.732-11.278 10.895-11.43z`,opacity:.2}),(0,L.jsx)(`path`,{d:`M136.93 89.302v90.315c-.045 5.998-4.896 10.85-10.895 10.895H74.597a72.5 72.5 0 0 1-3.155-21.076v-68.703c-.143-6.163 4.732-11.278 10.895-11.43z`,opacity:.2}),(0,L.jsx)(`path`,{d:`M130.977 89.302v90.315c-.046 5.998-4.897 10.85-10.895 10.895H74.597a72.5 72.5 0 0 1-3.155-21.076v-68.703c-.143-6.163 4.732-11.278 10.895-11.43z`,opacity:.2}),(0,L.jsx)(`path`,{d:`M142.884 58.523v18.753c-1.012.06-1.965.12-2.977.12s-1.965-.06-2.977-.12a32.7 32.7 0 0 1-5.953-.952a38.7 38.7 0 0 1-26.791-22.742a33 33 0 0 1-1.905-5.954h29.708c6.007.023 10.872 4.887 10.895 10.895`,opacity:.1}),(0,L.jsx)(`use`,{href:`#SVGhJCUgeMn`,opacity:.2}),(0,L.jsx)(`use`,{href:`#SVGhJCUgeMn`,opacity:.2}),(0,L.jsx)(`path`,{d:`M130.977 64.476v11.848a38.7 38.7 0 0 1-26.791-22.743h15.896c6.008.023 10.872 4.888 10.895 10.895`,opacity:.2}),(0,L.jsx)(`path`,{fill:`url(#SVGCo9xpmZW)`,d:`M10.913 53.581h109.15c6.028 0 10.914 4.886 10.914 10.913v109.151c0 6.027-4.886 10.913-10.913 10.913H10.913C4.886 184.558 0 179.672 0 173.645V64.495C0 58.466 4.886 53.58 10.913 53.58`}),(0,L.jsx)(`path`,{fill:`#fff`,d:`M94.208 95.125h-21.82v59.416H58.487V95.125H36.769V83.599h57.439z`})]})),rr=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{fill:`#0078d4`,d:`M0 0h121.329v121.329H0zm134.671 0H256v121.329H134.671zM0 134.671h121.329V256H0zm134.671 0H256V256H134.671z`})]})),ir=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 128 128`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`defs`,{children:(0,L.jsxs)(`linearGradient`,{id:`SVG6uMEBcPj`,x1:9,x2:9,y1:16.97,y2:1.03,gradientTransform:`scale(7.11111)`,gradientUnits:`userSpaceOnUse`,children:[(0,L.jsx)(`stop`,{offset:0,stopColor:`#0078d4`}),(0,L.jsx)(`stop`,{offset:.16,stopColor:`#1380da`}),(0,L.jsx)(`stop`,{offset:.53,stopColor:`#3c91e5`}),(0,L.jsx)(`stop`,{offset:.82,stopColor:`#559cec`}),(0,L.jsx)(`stop`,{offset:1,stopColor:`#5ea0ef`})]})}),(0,L.jsx)(`path`,{fill:`url(#SVG6uMEBcPj)`,d:`M120.89 28.445v69.262l-28.445 23.324l-44.09-16.07v15.93L23.395 88.25l72.746 5.688V31.574ZM96.64 31.93L55.82 7.11v16.285L18.348 34.418L7.109 48.852v32.785l16.075 7.11V46.718Zm0 0`})]})),ar=(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 128 128`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{fill:`#1a62b3`,d:`M50.782 42.96h26.436a7.536 7.536 0 0 1 7.553 7.552v26.976a7.536 7.536 0 0 1-7.553 7.552H50.782a7.536 7.536 0 0 1-7.553-7.552V50.512a7.536 7.536 0 0 1 7.553-7.553zm55.803 41.611V34.477A13.566 13.566 0 0 0 92.99 20.88H35.01a13.566 13.566 0 0 0-13.595 13.596v59.046a13.566 13.566 0 0 0 13.595 13.595l92.171.002c-.935 11.716-10.67 20.88-22.623 20.88H23.442A22.61 22.61 0 0 1 .783 105.341V22.66A22.61 22.61 0 0 1 23.443 0h81.115a22.61 22.61 0 0 1 22.659 22.66v61.91z`})]})),or={jira:$n,azure_devops:ir,confluence:Xn,testrail:(0,I.forwardRef)(({title:e,titleId:t,...n},r)=>(0,L.jsxs)(`svg`,{viewBox:`0 0 128 128`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,L.jsx)(`title`,{id:t,children:e}):null,(0,L.jsx)(`path`,{fill:`#50d18d`,d:`m37.701 127.439l-15.398-14.782a1.813 1.813 0 0 1 0-2.666l15.41-14.773a2.005 2.005 0 0 1 2.78 0l15.412 14.783c.778.73.778 1.936 0 2.666L40.494 127.44a2.003 2.003 0 0 1-2.78 0zm24.907-23.89l-15.41-14.783a1.813 1.813 0 0 1 0-2.656l15.41-14.782a2.005 2.005 0 0 1 2.78 0L80.79 86.11c.778.73.778 1.936 0 2.666l-15.4 14.773a2.01 2.01 0 0 1-2.774 0zm24.908-23.892l-15.4-14.783a1.81 1.81 0 0 1 0-2.656L87.52 47.437a2.005 2.005 0 0 1 2.78 0l15.402 14.781a1.81 1.81 0 0 1 0 2.656L90.29 79.657a2.006 2.006 0 0 1-2.779 0h.01zm-49.346.447L22.758 65.333a1.817 1.817 0 0 1 0-2.66l15.412-14.79a2.004 2.004 0 0 1 2.779 0l15.41 14.784a1.81 1.81 0 0 1 0 2.656L40.95 80.116a2.007 2.007 0 0 1-2.78 0zm24.906-23.89L47.664 41.441a1.817 1.817 0 0 1 0-2.668l15.412-14.781a2.004 2.004 0 0 1 2.78 0l15.4 14.781a1.81 1.81 0 0 1 0 2.658l-15.4 14.781a2.006 2.006 0 0 1-2.774 0v-.01v.005zm-24.43-23.41l-15.42-14.828a1.814 1.814 0 0 1 0-2.667L38.647.56a2.004 2.004 0 0 1 2.78 0l15.41 14.782c.78.731.78 1.937 0 2.667l-15.42 14.75a2.004 2.004 0 0 1-2.78 0l.01.032z`})]})),qtest:ar,github:Qn,browserstack:Yn},sr={openai:tr,azure:Jn,github_copilot:Zn,ollama:er},cr={android:Kn,ios:qn,windows:rr},lr=[{label:`Run test cases`,Icon:pe,text:`Run SHOP-12 and SHOP-14 on Chrome and Edge`},{label:`Explore a journey`,Icon:wt,text:`Go to the shop on QA and buy a pair of trail shoes with a saved card`},{label:`Write a test`,Icon:St,text:`Write a Playwright test for the login flow on QA`},{label:`Review requirements`,Icon:ye,text:`Review the payments refund brief and list its gaps`}];function ur(e){let t=e?.config||{},n=F(t.browser),r=F(t.sources),i=[`jira`,`azure_devops`,`testrail`,`xray`,`zephyr`,`qtest`,`github`].find(e=>r[e]),a={jira:`Jira`,azure_devops:`Azure DevOps`,testrail:`TestRail`,xray:`Xray`,zephyr:`Zephyr`,qtest:`qTest`,github:`GitHub`},o=String(n.provider||`local`);return[{id:`browser`,label:`Browser runs`,value:o===`local`?`Chrome on this machine`:o===`testmu`?`TestMu AI`:o===`browserstack`?`BrowserStack`:o,on:!0},{id:`cases`,label:`Test cases`,value:i?a[i]:`Files`,on:!0},{id:`repo`,label:`Write code in repo`,value:F(t.code).repo?String(F(t.code).repo):`This folder`,on:!0},{id:`headed`,label:`Show the browser`,value:n.headless===!1?`On by default`:`Headless by default`,on:n.headless===!1}]}function dr(){let[e,t]=(0,I.useState)(null),[n,r]=(0,I.useState)(``),[i,a]=(0,I.useState)(``),[o,l]=(0,I.useState)(()=>ur(null)),[u,d]=(0,I.useState)(``),[g,_]=(0,I.useState)(``),[v,y]=(0,I.useState)(null),[b,x]=(0,I.useState)(!1);(0,I.useEffect)(()=>{m.state().then(e=>{y(e),e.ready&&te.settings().then(e=>{t(e),l(ur(e))},()=>{})},()=>{})},[]);let S=Object.entries(F(e?.models.models)).map(([e,t])=>({name:e,provider:String(F(t).provider||``),note:String(F(t).description||F(t).provider||``)})),ee=String(F(e?.config.llm).routing||`off`)===`auto`,C=typeof e?.models.default==`string`?e.models.default:S[0]?.name||``,w=u||(ee?`Auto routing`:String(F(e?.config.llm).active||C||`Auto routing`)),T=[...S,{name:`Auto routing`,provider:``,note:`Cheapest model good enough for each step`}],ne=Hn(`home`,e=>{r(e),Gn(`msg`)}),re=async(e=n)=>{if(!e.trim()||b)return;x(!0),_(``);let t=e=>o.find(t=>t.id===e)?.on;try{let{id:n}=await f.start(e.trim(),{profile:S.some(e=>e.name===w)?w:void 0,headed:t(`headed`),code:t(`repo`)});location.hash=s(`chats`,n)}catch(e){_(e.message),x(!1)}};return(0,L.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,L.jsx)(`header`,{className:`flex items-center gap-1 px-5 py-3.5`,children:(0,L.jsx)(Ae,{})}),(0,L.jsx)(`main`,{className:`flex flex-auto flex-col items-center justify-center px-5 pt-6 pb-[120px]`,children:(0,L.jsxs)(`div`,{className:`flex w-full max-w-[780px] flex-col items-center gap-9`,children:[(0,L.jsxs)(`div`,{className:`flex flex-col items-center gap-3.5 text-center`,children:[(0,L.jsx)(ae,{state:`idle`,px:64,label:`ForgeQE is ready`,className:`mb-2`}),(0,L.jsx)(`h1`,{className:`m-0 bg-[linear-gradient(90deg,#3758f9_0%,#8a97fb_100%)] bg-clip-text text-[34px] leading-tight font-medium tracking-[-0.01em] text-accent [-webkit-text-fill-color:transparent]`,children:`What should we test today?`}),(0,L.jsx)(`p`,{className:`m-0 max-w-[46ch] text-[15px] leading-relaxed text-muted`,children:`ForgeQE runs your test cases in a real browser, finds what broke, and writes the automated test for you.`})]}),v&&!v.ready&&(0,L.jsxs)(`div`,{role:`status`,className:`flex w-full flex-wrap items-center gap-x-4 gap-y-3 rounded-[18px] border border-line bg-surface-muted px-5 py-4`,children:[(0,L.jsx)(hn,{size:20,strokeWidth:1.8,"aria-hidden":`true`,className:`flex-none text-accent`}),(0,L.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_280px] flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`font-medium`,children:`Set up ForgeQE first`}),(0,L.jsxs)(`span`,{className:`text-sm text-muted [overflow-wrap:anywhere]`,children:[`Choose your project folder and set ForgeQE up in it. It is not set up in `,v.project,` yet.`]})]}),(0,L.jsx)(`a`,{className:h({variant:`primary`}),href:s(`settings`,`setup`),children:`Set up`})]}),(0,L.jsx)(Vn,{id:`msg`,label:`Message ForgeQE`,value:n,onChange:e=>{r(e),_(``)},onSend:()=>void re(),disabled:b||!!v&&!v.ready||ne.running,placeholder:`Ask ForgeQE to test something…`,top:ne.state&&(0,L.jsx)(Wn,{state:ne.state,onStop:()=>void ne.stop(),onUndo:ne.undo,onClose:ne.close}),left:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(c,{variant:`icon`,size:`icon`,className:`flex-none`,"aria-label":`Attach a file`,onClick:()=>_(`Attachments come with chats in the web app.`),children:(0,L.jsx)(sn,{size:20,strokeWidth:1.8,"aria-hidden":`true`})}),(0,L.jsxs)(`div`,{className:`relative`,children:[(0,L.jsxs)(c,{variant:`ghost`,className:`px-2.5 text-[15px]`,"aria-expanded":i===`tools`,"aria-haspopup":`menu`,onClick:()=>a(i===`tools`?``:`tools`),children:[(0,L.jsx)(xn,{size:18,strokeWidth:1.8,"aria-hidden":`true`}),`Tools`]}),(0,L.jsx)(zn,{open:i===`tools`,onClose:()=>a(``),label:`Tools`,className:`left-0`,children:o.map(e=>(0,L.jsxs)(Bn,{role:`menuitemcheckbox`,checked:e.on,onSelect:()=>l(o.map(t=>t.id===e.id?{...t,on:!t.on}:t)),children:[(0,L.jsx)(`span`,{className:`flex-1`,children:e.label}),(0,L.jsx)(`span`,{className:`text-[13px] text-muted`,children:e.value})]},e.id))})]}),(0,L.jsx)(Un,{running:ne.running,disabled:!n.trim()||b||!!v&&!v.ready,onClick:()=>void ne.start(n)})]}),right:(0,L.jsxs)(`div`,{className:`relative`,children:[(0,L.jsxs)(c,{variant:`ghost`,className:`max-w-[46vw] px-2.5 text-[15px]`,"aria-expanded":i===`model`,"aria-haspopup":`menu`,"aria-label":`Model: ${w}`,onClick:()=>a(i===`model`?``:`model`),children:[(0,L.jsx)(Tn,{size:16,fill:`currentColor`,"aria-hidden":`true`,className:`text-accent`}),(0,L.jsx)(`span`,{className:`truncate`,children:w}),(0,L.jsx)(ie,{size:16,"aria-hidden":`true`})]}),(0,L.jsxs)(zn,{open:i===`model`,onClose:()=>a(``),label:`Model`,className:`right-0`,children:[T.map(e=>(0,L.jsxs)(Bn,{role:`menuitemradio`,checked:w===e.name,onSelect:()=>{d(e.name),a(``)},children:[sr[e.provider]?(0,L.jsx)(D,{logo:sr[e.provider]}):(0,L.jsx)(D,{icon:e.provider?ln:He}),(0,L.jsxs)(`span`,{className:`flex flex-1 flex-col py-1.5`,children:[(0,L.jsx)(`span`,{children:e.name}),e.note&&(0,L.jsx)(`span`,{className:`line-clamp-2 text-xs text-muted`,children:e.note})]})]},e.name)),(0,L.jsx)(`a`,{href:s(`settings`,`models`),role:`menuitem`,className:`flex min-h-11 items-center rounded-[10px] px-3 text-sm no-underline hover:bg-surface-strong`,children:`Manage models`})]})]})}),(0,L.jsx)(`p`,{role:`status`,"aria-live":`polite`,className:p(`-mt-5 m-0 min-h-5 text-center text-sm text-ink-2`,!g&&`invisible`),children:g}),(0,L.jsx)(`div`,{className:`flex flex-wrap justify-center gap-3`,children:lr.map(({label:e,Icon:t,text:n})=>(0,L.jsxs)(`button`,{type:`button`,onClick:()=>{r(n),a(``),_(``),document.getElementById(`msg`)?.focus()},className:`inline-flex min-h-11 cursor-pointer items-center gap-2.5 rounded-full border border-line bg-bg px-[18px] text-sm font-medium text-ink-2 hover:border-accent-line hover:bg-accent-soft hover:text-ink`,children:[(0,L.jsx)(t,{size:18,strokeWidth:1.8,"aria-hidden":`true`}),e]},e))})]})})]})}function fr({icon:e,title:t,intro:n,children:r}){return(0,L.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,L.jsx)(Le,{}),(0,L.jsxs)(`main`,{className:`mx-auto box-border flex w-full max-w-[800px] flex-col px-6 pt-10 pb-12`,children:[(0,L.jsxs)(`div`,{className:`mb-1 flex items-center gap-3`,children:[(0,L.jsx)(D,{icon:e,size:`lg`}),(0,L.jsx)(`h1`,{className:`m-0 text-[26px] font-semibold tracking-[-0.01em]`,children:t})]}),(0,L.jsx)(`p`,{className:`mt-1 mb-6 max-w-[64ch] text-sm leading-relaxed text-muted`,children:n}),r]})]})}function pr({text:e,onRetry:t}){return(0,L.jsxs)(`div`,{role:`alert`,className:`flex flex-col items-start gap-3 rounded-[14px] bg-fail-soft px-4 py-3 text-sm text-fail`,children:[(0,L.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:e}),t&&(0,L.jsx)(c,{onClick:t,children:`Try again`})]})}var mr=e=>e?new Date(e).toLocaleString([],{dateStyle:`medium`,timeStyle:`short`}):``;function hr(){let[e,t]=(0,I.useState)(null),[n,r]=(0,I.useState)(``),[i,a]=(0,I.useState)(null),[o,l]=(0,I.useState)(!1),[u,d]=(0,I.useState)(``),[f,p]=(0,I.useState)(``),m=(0,I.useCallback)(()=>{r(``),E.knowledge().then(t,e=>r(e.message))},[]);(0,I.useEffect)(m,[m]);let h=async e=>{d(``);try{let t=await E.knowledgeFile(e);a({rel:e,text:t.text,was:t.text,isNew:!1})}catch(e){r(e.message)}},g=async()=>{if(i){l(!0),d(``);try{let e=i.rel.trim();await E.saveKnowledgeFile(e,i.text),a(null),p(`Saved ${e}. Agents read it from their next request.`),m()}catch(e){d(e.message)}finally{l(!1)}}},v=e?.files.filter(e=>e.used).length??0;return(0,L.jsxs)(fr,{icon:Ee,title:`Knowledge`,intro:(0,L.jsxs)(L.Fragment,{children:[`What the agents know about your product: its features, business rules and terms, as Markdown files in`,` `,(0,L.jsx)(`span`,{className:`font-mono text-[13px]`,children:e?.dir||`.forgeqe/knowledge`}),`. Each agent reads the parts that match its task. The industry, regulations and folders are in`,` `,(0,L.jsx)(`a`,{href:s(`settings`,`agents`),children:`Settings, Agents`}),`.`]}),children:[n&&(0,L.jsx)(pr,{text:n,onRetry:m}),!e&&!n&&(0,L.jsx)(`p`,{role:`status`,className:`m-0 text-sm text-muted`,children:`Loading…`}),e&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`mb-6 flex flex-wrap gap-3`,children:[(0,L.jsx)(M,{icon:ye,label:`Files`,value:String(e.files.length)}),(0,L.jsx)(M,{icon:ut,label:`Read by agents`,value:String(v),note:v<e.files.length?`The others are templates still to fill in`:void 0}),(0,L.jsx)(M,{icon:Bt,label:`Per browser run`,value:e.maxChars?`${e.maxChars.toLocaleString()}`:`Off`,note:e.maxChars?`characters at most`:void 0})]}),(0,L.jsx)(`div`,{"aria-live":`polite`,children:f&&(0,L.jsx)(`p`,{className:`mt-0 mb-4 rounded-[12px] bg-pass-soft px-3 py-2 text-sm text-pass`,children:f})}),(0,L.jsxs)(`ul`,{"aria-label":`Knowledge files`,className:`m-0 flex list-none flex-col p-0`,children:[e.files.length===0&&(0,L.jsx)(`li`,{className:`border-t border-line-soft py-5 text-sm text-muted`,children:`No knowledge files yet. Add one for each product area: what it does, its rules, its words.`}),e.files.map(e=>(0,L.jsxs)(`li`,{className:`flex min-h-[64px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-3`,children:[(0,L.jsx)(ye,{size:18,strokeWidth:1.8,"aria-hidden":`true`,className:`flex-none text-muted`}),(0,L.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_240px] flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`font-medium [overflow-wrap:anywhere]`,children:e.title}),(0,L.jsx)(`span`,{className:`font-mono text-[12px] text-muted [overflow-wrap:anywhere]`,children:e.rel})]}),(0,L.jsx)(Ve,{tone:e.used?`pass`:`neutral`,children:e.used?e.state===`edited`?`Filled in`:`Read by agents`:`Template`}),(0,L.jsx)(c,{size:`sm`,"aria-label":`Edit ${e.rel}`,onClick:()=>void h(e.rel),children:`Edit`})]},e.rel))]}),(0,L.jsx)(`div`,{className:`pt-4`,children:(0,L.jsx)(c,{onClick:()=>{d(``),a({rel:``,text:`#
|
|
11
|
-
|
|
12
|
-
## Rules
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
`,was:``,isNew:!0})},children:`Add a file`})})]}),(0,L.jsx)(we,{wide:!0,open:!!i,onClose:()=>a(null),title:i?.isNew?`Add a knowledge file`:i?.rel||``,description:`Markdown. Headings split it into parts; an agent gets the parts that match its task. Never put passwords or keys here.`,footer:(0,L.jsxs)(L.Fragment,{children:[u&&(0,L.jsx)(`span`,{role:`alert`,className:`mr-auto self-center text-sm text-fail [overflow-wrap:anywhere]`,children:u}),(0,L.jsx)(c,{onClick:()=>a(null),children:`Cancel`}),(0,L.jsx)(c,{variant:`primary`,disabled:o||!i||!i.rel.trim()||!i.isNew&&i.text===i.was,onClick:()=>void g(),children:o?`Saving…`:`Save`})]}),children:i&&(0,L.jsxs)(`div`,{className:`flex flex-col gap-4 pt-4`,children:[i.isNew&&(0,L.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,L.jsx)(`label`,{htmlFor:`knowledge-name`,className:`font-medium`,children:`File name`}),(0,L.jsx)(_,{id:`knowledge-name`,value:i.rel,spellCheck:!1,placeholder:`products/checkout.md`,className:`font-mono text-[13px]`,onChange:e=>a({...i,rel:e.target.value})}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:`In the knowledge folder; a folder before the name groups files.`})]}),(0,L.jsx)(`label`,{htmlFor:`knowledge-text`,className:`sr-only`,children:`Text`}),(0,L.jsx)(ee,{id:`knowledge-text`,value:i.text,spellCheck:!0,rows:22,onChange:e=>a({...i,text:e.target.value}),className:`min-h-[50vh] font-mono text-[13px] leading-relaxed`})]})})]})}function gr(){let[e,t]=(0,I.useState)(null),[n,r]=(0,I.useState)(``),[i,a]=(0,I.useState)(`flows`),o=(0,I.useCallback)(()=>{r(``),E.memory().then(t,e=>r(e.message))},[]);(0,I.useEffect)(o,[o]);let c=e?.stats.areas.find(e=>e.area===`browser`),l=(c?.replayedSteps??0)+(c?.modelSteps??0);return(0,L.jsxs)(fr,{icon:S,title:`Memory`,intro:(0,L.jsxs)(L.Fragment,{children:[`What ForgeQE remembers from the runs that passed: the steps of each flow, which it replays without asking a model, and the elements of each page with the locators that found them. Kept in`,` `,(0,L.jsx)(`span`,{className:`font-mono text-[13px]`,children:e?.dir||`.forgeqe/memory`}),`; whether it is used is in `,(0,L.jsx)(`a`,{href:s(`settings`,`runs`),children:`Settings, Reports and memory`}),`.`]}),children:[n&&(0,L.jsx)(pr,{text:n,onRetry:o}),!e&&!n&&(0,L.jsx)(`p`,{role:`status`,className:`m-0 text-sm text-muted`,children:`Loading…`}),e&&(0,L.jsxs)(L.Fragment,{children:[!e.enabled&&(0,L.jsxs)(`p`,{className:`mt-0 mb-5 rounded-[12px] bg-warn-soft px-4 py-3 text-sm text-warn`,children:[`Memory is off for this project: runs neither use nor add to it. Turn it on in `,(0,L.jsx)(`a`,{href:s(`settings`,`runs`),children:`Settings, Reports and memory`}),`.`]}),(0,L.jsxs)(`div`,{className:`mb-6 flex flex-wrap gap-3`,children:[(0,L.jsx)(M,{icon:_n,label:`Flows`,value:String(e.flows.length),note:`${e.flows.reduce((e,t)=>e+t.replays,0)} replays`}),(0,L.jsx)(M,{icon:nt,label:`Pages`,value:String(e.pages.length),note:`${e.pages.reduce((e,t)=>e+t.elements,0)} elements`}),(0,L.jsx)(M,{icon:S,label:`Steps from memory`,value:l?`${Math.round((c?.replayedSteps??0)/l*100)}%`:`–`,note:l?`${c?.replayedSteps} of ${l} steps without a model`:`No runs yet`}),(0,L.jsx)(M,{icon:Be,label:`Reruns without the agent`,value:String(e.stats.reruns.tier0)})]}),(0,L.jsx)(Pe,{label:`What memory holds`,current:i,onPick:a,tabs:[{id:`flows`,label:`Flows (${e.flows.length})`},{id:`pages`,label:`Pages (${e.pages.length})`}]}),(0,L.jsxs)(`div`,{role:`tabpanel`,id:`panel-${i}`,"aria-labelledby":`tab-${i}`,children:[i===`flows`&&(e.flows.length?(0,L.jsx)(Oe,{label:`Flows`,head:[`Flow`,`Runs`,`Passed`,`Replayed steps`,`Last run`],children:e.flows.map((e,t)=>(0,L.jsx)(ze,{cells:[(0,L.jsxs)(`span`,{className:`flex flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:e.goal}),(0,L.jsxs)(`span`,{className:`text-[13px] text-muted`,children:[e.host?`${e.host} · `:``,ce(e.steps,`step`)]})]},`g`),e.runs,(0,L.jsxs)(`span`,{className:p(e.failures?`text-warn`:`text-pass`),children:[e.successes,` of `,e.runs]},`p`),`${e.replayedSteps} of ${e.replayedSteps+e.modelSteps}`,(0,L.jsxs)(`span`,{className:`flex flex-col items-end gap-1`,children:[mr(e.lastRun),e.lastStatus&&(0,L.jsx)(Ve,{tone:/pass|success|complete/i.test(e.lastStatus)?`pass`:`fail`,children:e.lastStatus})]},`l`)]},t))}):(0,L.jsx)(vr,{})),i===`pages`&&(e.pages.length?(0,L.jsx)(Oe,{label:`Pages`,head:[`Page`,`Elements`,`Visits`,`Last seen`],children:e.pages.map((e,t)=>(0,L.jsx)(ze,{cells:[(0,L.jsxs)(`span`,{className:`flex flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:e.title||e.path}),(0,L.jsxs)(`span`,{className:`font-mono text-[12px] text-muted [overflow-wrap:anywhere]`,children:[e.host,e.path]})]},`p`),e.elements,e.visits,mr(e.lastSeen)]},t))}):(0,L.jsx)(vr,{}))]}),(0,L.jsx)(_r,{view:e,onCleared:e=>t({...e})})]})]})}function _r({view:e,onCleared:t}){let[n,r]=(0,I.useState)(``),[i,a]=(0,I.useState)(!1),[o,s]=(0,I.useState)(!1),[l,u]=(0,I.useState)(``),d=e.targets.find(e=>`${e.kind}:${e.name}`===n),f=d?d.files:e.files,p=d?`${d.kind===`app`?`the app`:``} ${d.name}`.trim():`everything`,m=async()=>{s(!0);try{let e=await E.clearMemory(d?{name:d.name,kind:d.kind}:void 0);u(`Removed ${ce(e.removed??0,`file`)} of memory${d?` for ${d.name}`:``}.`),r(``),t(e)}catch(e){u(e.message)}finally{s(!1),a(!1)}};return(0,L.jsxs)(`section`,{"aria-labelledby":`clear-h`,className:`mt-8 flex flex-col gap-3 border-t border-line-soft pt-6`,children:[(0,L.jsx)(`h2`,{id:`clear-h`,className:`m-0 text-base font-semibold`,children:`Clear memory`}),(0,L.jsx)(`p`,{className:`m-0 max-w-[64ch] text-sm leading-relaxed text-muted`,children:`When a site or app changed so much that what memory holds misleads runs. The next runs ask the model again and fill it anew; nothing else is touched.`}),e.files===0?(0,L.jsx)(`p`,{className:`m-0 text-sm text-muted`,children:`Memory is empty.`}):(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,L.jsxs)(y,{"aria-label":`What to clear`,value:n,onChange:e=>(r(e.target.value),a(!1),u(``)),className:`w-[300px] max-w-full`,children:[(0,L.jsxs)(`option`,{value:``,children:[`Everything (`,ce(e.files,`file`),`)`]}),e.targets.map(e=>(0,L.jsxs)(`option`,{value:`${e.kind}:${e.name}`,children:[e.kind===`app`?`App`:`Site`,` `,e.name,` (`,ce(e.files,`file`),`)`]},`${e.kind}:${e.name}`))]}),(0,L.jsxs)(c,{disabled:o||f===0,onClick:()=>a(!0),className:`border-fail text-fail hover:bg-fail-soft`,children:[(0,L.jsx)(At,{size:16,"aria-hidden":`true`}),`Clear…`]})]}),i&&(0,L.jsxs)(`div`,{role:`alertdialog`,"aria-label":`Clear memory`,className:`flex flex-col gap-3 rounded-[12px] border border-fail bg-fail-soft p-4`,children:[(0,L.jsxs)(`span`,{className:`font-medium text-ink`,children:[`Remove `,ce(f,`file`),` of memory: `,p,`?`]}),(0,L.jsx)(`span`,{className:`text-sm text-ink-2`,children:`Recorded flows stop replaying and pages are learned again on the next runs. This cannot be undone.`}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,L.jsxs)(c,{disabled:o,onClick:()=>void m(),className:`border-fail bg-fail text-white hover:bg-fail hover:text-white`,children:[`Clear `,p]}),(0,L.jsx)(c,{onClick:()=>a(!1),children:`Keep it`})]})]}),l&&(0,L.jsx)(`p`,{role:`status`,className:`m-0 text-sm text-ink-2`,children:l})]})}function vr(){return(0,L.jsxs)(`div`,{className:`flex flex-col items-start gap-3 py-4`,children:[(0,L.jsx)(`p`,{className:`m-0 max-w-[60ch] text-sm leading-relaxed text-ink-2`,children:`Nothing remembered yet. Each browser run that passes adds its pages and steps, and the next run of the same flow replays them.`}),(0,L.jsx)(`a`,{className:h(),href:s(),children:`Run something`})]})}var yr=[];function br({section:e}){return(0,L.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,L.jsx)(Le,{}),(0,L.jsxs)(`main`,{className:`mx-auto box-border flex w-full max-w-[720px] flex-col gap-3 px-6 py-16`,children:[(0,L.jsx)(`h1`,{className:`m-0 text-[26px] font-semibold tracking-[-0.01em]`,children:e.label}),(0,L.jsxs)(`p`,{className:`m-0 max-w-[60ch] leading-relaxed text-ink-2`,children:[e.what,` are not in the web app yet. In a terminal in your project folder, run`,` `,(0,L.jsx)(`code`,{className:`rounded-md bg-surface-strong px-1.5 py-0.5 font-mono text-[13px]`,children:e.command}),`.`]})]})]})}function xr({checked:e,onSelect:t,label:n}){return(0,L.jsx)(`button`,{type:`button`,role:`radio`,"aria-checked":e,"aria-label":n,onClick:t,className:p(`relative inline-flex size-5 flex-none cursor-pointer items-center justify-center rounded-full border-[1.5px] bg-bg p-0 before:absolute before:-inset-2.5 before:content-['']`,e?`border-accent`:`border-muted`),children:(0,L.jsx)(`span`,{"aria-hidden":`true`,className:p(`size-2.5 rounded-full`,e?`bg-accent`:`bg-transparent`)})})}var Sr=[[`web`,`Web`],[`api`,`API`],[`desktop`,`Windows desktop`],[`mobile`,`Mobile`]],Cr={web:Bt,api:Ce,desktop:an,mobile:Cn};function wr(e){let t=String(e.kind||`web`),n=[{key:`kind`,label:`Kind`,type:`select`,default:`web`,options:Sr.map(([e,t])=>({value:e,label:t}))}];return(t===`web`||t===`api`)&&n.push({key:`url`,label:`Address`,type:`url`,placeholder:t===`api`?`https://qa.api.example.com/v1`:`https://qa.shop.example.com`}),t===`desktop`&&n.push({key:`path`,label:`Program`,type:`path`,placeholder:`C:\\Program Files\\Contoso\\Billing\\Billing.exe`},{key:`args`,label:`Arguments`,help:`Comma separated.`,type:`list`,placeholder:`--server, qa-db01`}),t===`mobile`&&n.push({key:`platform`,label:`Platform`,type:`select`,options:[{value:`android`,label:`Android`},{value:`ios`,label:`iOS`}]},{key:`app_id`,label:`App id`,type:`path`,placeholder:`com.contoso.courier`},{key:`activity`,label:`Activity`,help:`Android: the activity to start.`,type:`path`,placeholder:`.MainActivity`},{key:`app`,label:`Build to install`,help:`An .apk or .ipa, an https address, or bs://…`,type:`path`}),n.push({key:`description`,label:`Description`,help:`The agent picks apps by this, so say what the app is for.`,type:`text`}),t===`web`&&n.push({key:`login`,label:`Sign-in`,help:`A sign-in from Sign-ins.`,type:`text`,placeholder:`shop-qa`}),n}function Tr({value:e,onChange:t}){let r=Object.entries(e);return(0,L.jsxs)(`div`,{className:`flex flex-col gap-2 border-t border-surface-strong py-3`,children:[(0,L.jsx)(`span`,{className:`font-medium`,children:`Variables`}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:`Plain values tests read as FORGEQE_VAR_NAME. No secrets here: list those under Secrets.`}),r.map(([r,i],a)=>(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,L.jsx)(_,{"aria-label":`Variable name`,value:r,spellCheck:!1,onChange:i=>t(n(e,r,i.target.value)),className:`max-w-[200px] flex-[1_1_140px] font-mono text-[13px]`}),(0,L.jsx)(_,{"aria-label":`Value of ${r}`,value:String(i??``),onChange:n=>t({...e,[r]:n.target.value}),className:`flex-[2_1_200px]`}),(0,L.jsx)(c,{size:`sm`,"aria-label":`Remove ${r}`,onClick:()=>{let n={...e};delete n[r],t(n)},children:`Remove`})]},a)),(0,L.jsx)(`div`,{children:(0,L.jsx)(c,{size:`sm`,onClick:()=>t({...e,[g(e,`name`)]:``}),children:`Add a variable`})})]})}function Er({value:e,onChange:t}){let n=Array.isArray(e)?e.map(String):[],[r,i]=(0,I.useState)(``),a=/^[A-Za-z_][A-Za-z0-9_]*$/.test(r.trim());return(0,L.jsxs)(`div`,{className:`flex flex-col gap-2 border-t border-surface-strong py-3`,children:[(0,L.jsx)(`span`,{className:`font-medium`,children:`Secrets`}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:`Passwords and keys this environment's tests and desktop flows read, by name. Their values are kept in your credential store.`}),n.map(e=>(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 border-t border-line-soft pt-2`,children:[(0,L.jsx)(`code`,{className:`w-full font-mono text-[13px] sm:w-[200px]`,children:e}),(0,L.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,L.jsx)(Ge,{name:e,field:e,compact:!0})}),(0,L.jsx)(re,{name:e}),(0,L.jsx)(c,{size:`sm`,"aria-label":`Stop using ${e} here`,onClick:()=>t(n.filter(t=>t!==e)),children:`Remove`})]},e)),(0,L.jsxs)(`form`,{className:`flex flex-wrap items-center gap-2`,onSubmit:e=>{e.preventDefault(),a&&!n.includes(r.trim())&&t([...n,r.trim()]),i(``)},children:[(0,L.jsx)(_,{"aria-label":`Secret's variable name`,value:r,placeholder:`BILLING_PASSWORD_QA`,spellCheck:!1,onChange:e=>i(e.target.value),className:`max-w-[280px] flex-[1_1_200px] font-mono text-[13px]`}),(0,L.jsx)(c,{size:`sm`,type:`submit`,disabled:!a,children:`Add`})]})]})}var Dr=(e,t)=>(t.startsWith(e)?t.slice(e.length).replace(/^[\\/]+/,``):t).replace(/\\/g,`/`);function Or({envs:e,layout:t,files:r,base:i,onSplit:a,splitBlocked:o,config:s}){let[l,d]=(0,I.useState)(``),[f,p]=(0,I.useState)(``),m=t.layout===`dir`?Dr(i,t.dir):``,h=e=>{let t=r.find(t=>t.name===e);return t?Dr(i,t.path):`${m}/${e}.yaml`},v=F(e.value.environments),y=Object.keys(v),b=typeof e.value.default==`string`?e.value.default:y[0]||``,x=(t,n)=>e.set({...e.value,environments:{...v,[t]:n}});return(0,L.jsxs)(L.Fragment,{children:[s&&(0,L.jsx)(`div`,{className:`mb-5`,children:t.layout===`dir`?(0,L.jsx)(qe,{def:{key:`dir`,label:`Environments folder`,help:`One YAML file per environment, named after it. Relative to forgeqe.yaml; read from there after you save.`,type:`path`,placeholder:`./environments`},edit:s,base:[`environments`]}):(0,L.jsx)(qe,{def:{key:`file`,label:`Environments file`,help:`All environments in one YAML file. Relative to forgeqe.yaml; read from there after you save. --env NAME or FORGEQE_ENV picks one for a run.`,type:`path`,default:`./env.yaml`},edit:s,base:[`environments`]})}),t.layout===`file`?(0,L.jsxs)(`div`,{className:`mb-5 flex flex-wrap items-center gap-x-4 gap-y-3 rounded-[14px] bg-surface-muted px-5 py-4`,children:[(0,L.jsxs)(`p`,{className:`m-0 flex-[1_1_300px] text-sm leading-relaxed text-ink-2`,children:[`All environments are in one file, `,(0,L.jsx)(`span`,{className:`font-mono text-[13px]`,children:Dr(i,t.file)}),`. One file per environment is easier to change and review: each goes into`,` `,(0,L.jsx)(`span`,{className:`font-mono text-[13px]`,children:`environments/`}),`, and the old file is left as it is.`,o&&(0,L.jsx)(`span`,{className:`mt-1 block text-muted`,children:o})]}),(0,L.jsx)(c,{onClick:a,disabled:!!o,children:`Split into one file each`})]}):(0,L.jsxs)(`p`,{className:`mt-0 mb-4 text-sm leading-relaxed text-muted`,children:[`Each environment is its own file in `,(0,L.jsxs)(`span`,{className:`font-mono text-[13px]`,children:[m,`/`]}),`. The active one is set in forgeqe.yaml.`]}),(0,L.jsxs)(`div`,{role:`radiogroup`,"aria-label":`Active environment`,children:[y.length===0&&(0,L.jsx)(`p`,{className:`m-0 py-5 text-sm text-muted`,children:`No environments yet. Add one with the apps your tests use.`}),y.map((i,a)=>{let o=F(v[i]),s=F(o.apps),m={value:o,set:e=>x(i,e),vars:e.vars},y=Object.entries(s).filter(([,e])=>(F(e).kind||`web`)===`web`),S=Object.entries(s).filter(([,e])=>F(e).kind===`api`);return(0,L.jsxs)(We,{lead:(0,L.jsx)(xr,{checked:b===i,onSelect:()=>e.set({...e.value,default:i}),label:`Use ${i}`}),title:i,meta:(0,L.jsxs)(L.Fragment,{children:[[o.description,`${Object.keys(s).length} app${Object.keys(s).length===1?``:`s`}`].filter(Boolean).map(String).join(`, `),t.layout===`dir`&&(0,L.jsxs)(`span`,{className:`block font-mono text-[12px]`,children:[h(i),r.some(e=>e.name===i)?``:` (new)`]})]}),state:b===i?(0,L.jsx)(`span`,{className:`text-sm text-pass`,children:`Active`}):void 0,open:l===i,onToggle:()=>d(l===i?``:i),actions:(0,L.jsx)(c,{size:`sm`,"aria-label":`Remove ${i}`,onClick:()=>{let t={...v};delete t[i];let n={...e.value,environments:t};b===i&&delete n.default,e.set(n)},children:`Remove`}),children:[(0,L.jsx)(T,{label:`Name`,help:t.layout===`dir`?`Also its file's name. Pick it with --env NAME or FORGEQE_ENV.`:`Pick it with --env NAME or FORGEQE_ENV.`,htmlFor:`env-${a}`,children:(0,L.jsx)(_,{id:`env-${a}`,defaultValue:i,spellCheck:!1,onBlur:t=>{let r=t.target.value.trim();r&&r!==i&&/^[A-Za-z0-9_-][A-Za-z0-9_.-]*$/.test(r)&&!(r in v)?(e.set({...e.value,...b===i?{default:r}:{},environments:n(v,i,r)}),d(r)):t.target.value=i},className:`max-w-[420px] flex-[1_1_280px] font-mono text-[13px]`})}),(0,L.jsx)(j,{defs:[{key:`description`,label:`Description`,type:`text`}],edit:m,base:[]}),y.length>1&&(0,L.jsx)(qe,{def:{key:`start_app`,label:`Start app`,help:`Where browser runs start when no app or address is given.`,type:`select`,options:y.map(([e])=>({value:e,label:e}))},edit:m,base:[]}),S.length>1&&(0,L.jsx)(qe,{def:{key:`api_app`,label:`API app`,help:`The API that API tests call.`,type:`select`,options:S.map(([e])=>({value:e,label:e}))},edit:m,base:[]}),(0,L.jsx)(P,{children:`Apps`}),Object.entries(s).map(([t,r],a)=>{let l=F(r),u=`${i}/${a}`;return(0,L.jsxs)(We,{lead:(0,L.jsx)(D,{icon:Cr[String(l.kind||`web`)]||Bt,logo:l.kind===`mobile`?cr[String(l.platform)]:l.kind===`desktop`?cr.windows:void 0}),title:t,meta:[Sr.find(([e])=>e===(l.kind||`web`))?.[1],l.url||l.path||l.app_id].filter(Boolean).map(String).join(`, `),open:f===u,onToggle:()=>p(f===u?``:u),actions:(0,L.jsx)(c,{size:`sm`,"aria-label":`Remove ${t}`,onClick:()=>{let e={...s};delete e[t],x(i,{...o,apps:e})},children:`Remove`}),children:[(0,L.jsx)(T,{label:`Name`,htmlFor:`app-${u}`,children:(0,L.jsx)(_,{id:`app-${u}`,defaultValue:t,spellCheck:!1,onBlur:e=>{let r=e.target.value.trim();r&&r!==t&&/^[A-Za-z0-9_.-]+$/.test(r)&&!(r in s)?x(i,{...o,apps:n(s,t,r)}):e.target.value=t},className:`max-w-[420px] flex-[1_1_280px] font-mono text-[13px]`})}),(0,L.jsx)(j,{defs:wr(l),edit:{value:l,set:e=>x(i,{...o,apps:{...s,[t]:e}}),vars:e.vars},base:[]})]},a)}),(0,L.jsx)(`div`,{className:`py-3`,children:(0,L.jsx)(c,{size:`sm`,onClick:()=>{let e=g(s,`app`);x(i,{...o,apps:{...s,[e]:{kind:`web`}}}),p(`${i}/${Object.keys(s).length}`)},children:`Add an app`})}),(0,L.jsx)(Tr,{value:F(o.variables),onChange:e=>x(i,u(o,[`variables`],Object.keys(e).length?e:void 0))}),(0,L.jsx)(Er,{value:o.secrets,onChange:e=>x(i,u(o,[`secrets`],e.length?e:void 0))})]},a)})]}),(0,L.jsx)(`div`,{className:`pt-4`,children:(0,L.jsx)(c,{onClick:()=>{let t=g(v,y.length?`new-environment`:`qa`);e.set({...e.value,...y.length?{}:{default:t},environments:{...v,[t]:{description:``,apps:{}}}}),d(t)},children:`Add an environment`})})]})}var kr=[[`openai`,`OpenAI`],[`azure`,`Azure OpenAI`],[`github_copilot`,`GitHub Copilot seat`],[`ollama`,`Ollama on this machine`],[`openai_compatible`,`OpenAI-compatible endpoint`]],Ar=e=>kr.find(([t])=>t===e)?.[1]||String(e||`No provider`),jr={openai:{provider:`openai`,model:`gpt-4o`,api_key_env:`OPENAI_API_KEY`,temperature:.2},azure:{provider:`azure`,model:`gpt-4o`,deployment:`gpt-4o`,api_key_env:`WP_AZURE_API_KEY`,api_version:`2024-05-01-preview`,temperature:.2,deployment_type:`global`},github_copilot:{provider:`github_copilot`,model:`gpt-4.1`},ollama:{provider:`ollama`,model:`llama3.2`,endpoint:`http://127.0.0.1:11434/v1`,context:32768,temperature:.2},openai_compatible:{provider:`openai_compatible`,model:`gpt-4o`,api_key_env:`WP_API_KEY`,temperature:.2}};function Mr(e){let t=String(e.provider||``),n=e.auth===`entra`,r=[{key:`model`,label:`Model`,type:`text`,placeholder:t===`ollama`?`llama3.2`:`gpt-4o`}];return t===`azure`&&(r.push({key:`endpoint`,label:`Endpoint`,type:`url`,placeholder:`https://YOUR_RESOURCE.openai.azure.com/`},{key:`deployment`,label:`Deployment`,type:`text`,placeholder:`gpt-4o`},{key:`auth`,label:`Sign-in`,help:`Entra ID uses a managed identity, workload identity or az login; no key.`,type:`select`,emptyLabel:`API key`,options:[{value:`entra`,label:`Microsoft Entra ID`}]}),n&&r.push({key:`managed_identity_client_id`,label:`Managed identity client id`,type:`text`})),(t===`ollama`||t===`openai_compatible`)&&r.push({key:`endpoint`,label:`Endpoint`,type:`url`,placeholder:t===`ollama`?`http://127.0.0.1:11434/v1`:`https://your-gateway.example/v1`}),t!==`github_copilot`&&!n&&r.push({key:`api_key_env`,label:`API key`,help:`Kept in your credential store, never in llms.json.`,type:`var`}),r.push({key:`description`,label:`Description`,help:`Shown in the model picker.`,type:`text`}),r}function Nr(e){let t=String(e.provider||``),n=[];return t===`azure`&&n.push({key:`api_version`,label:`API version`,type:`text`,placeholder:`2024-05-01-preview`},{key:`deployment_type`,label:`Deployment type`,help:`For prices.`,type:`select`,options:[`global`,`data_zone`].map(e=>({value:e,label:e}))}),t===`ollama`&&n.push({key:`context`,label:`Context window`,help:`Tokens.`,type:`number`,default:32768}),t!==`github_copilot`&&n.push({key:`temperature`,label:`Temperature`,type:`number`,placeholder:`0.2`}),n}var Pr=/^[A-Za-z0-9_.-]+$/;function Fr({panel:e,setPanel:t,taken:n,onApply:r,vars:i}){let[a,o]=(0,I.useState)(!1),s=e?.profile||{},l=e?.name?Pr.test(e.name)?e.name!==e.from&&n(e.name)?`Another model has this name.`:``:`Use letters, digits and _ . -`:``,u=String(s.provider||``),d=[...e&&!e.name?[[``,`a name`]]:[],[`model`,`a model`],...u===`azure`?[[`endpoint`,`an endpoint`],[`deployment`,`a deployment`]]:[],...u===`openai_compatible`?[[`endpoint`,`an endpoint`]]:[]].filter(([e])=>!e||!String(s[e]??``).trim()),f=!!e&&!l&&!d.length,p={value:s,set:n=>e&&t({...e,profile:n}),vars:i},m=()=>{t(null),o(!1)},h=Nr(s);return(0,L.jsx)(we,{open:!!e,onClose:m,title:e?.mode===`add`?`Add a model`:`Edit ${e?.from}`,description:`Saved to llms.json, and its key to ${x(Te().store)}, as soon as you add it.`,footer:(0,L.jsxs)(L.Fragment,{children:[d.length>0&&(0,L.jsxs)(`span`,{className:`mr-auto self-center text-sm text-muted`,children:[`Needs `,d.map(([,e])=>e).join(` and `)]}),(0,L.jsx)(c,{onClick:m,children:`Cancel`}),(0,L.jsx)(c,{variant:`primary`,disabled:!f,onClick:()=>{r(e),m()},children:e?.mode===`add`?`Add model`:`Done`})]}),children:e&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`fieldset`,{className:`m-0 border-0 p-0 pt-5`,children:[(0,L.jsx)(`legend`,{className:`mb-2 font-medium`,children:`Provider`}),(0,L.jsx)(`div`,{className:`flex flex-col gap-1`,children:kr.map(([n,r])=>(0,L.jsxs)(`label`,{className:`flex min-h-12 cursor-pointer items-center gap-3 rounded-[10px] px-3 hover:bg-surface-muted has-[:checked]:bg-surface-strong`,children:[(0,L.jsx)(`input`,{type:`radio`,name:`provider`,checked:s.provider===n,onChange:()=>t({...e,profile:e.mode===`add`?{...jr[n],...s.description?{description:s.description}:{}}:{...s,provider:n}}),className:`size-4 accent-accent`}),(0,L.jsx)(D,{icon:ln,logo:sr[n]}),r]},n))})]}),(0,L.jsx)(T,{label:`Name`,help:l?(0,L.jsx)(`span`,{className:`text-fail`,children:l}):`How you pick it in chats and with --profile.`,htmlFor:`model-name`,className:`mt-4`,stacked:!0,children:(0,L.jsx)(_,{id:`model-name`,value:e.name,spellCheck:!1,placeholder:`openai-gpt4o`,"aria-invalid":!!l,onChange:n=>t({...e,name:n.target.value.trim()})})}),(0,L.jsx)(j,{defs:Mr(s),edit:p,base:[],stacked:!0}),h.length>0&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`button`,{type:`button`,"aria-expanded":a,onClick:()=>o(!a),className:`mt-2 min-h-10 cursor-pointer border-0 bg-transparent p-0 text-sm font-medium text-accent hover:text-accent-hover`,children:a?`Fewer settings`:`More settings`}),a&&(0,L.jsx)(j,{defs:h,edit:p,base:[],stacked:!0})]})]})})}function Ir({config:e,models:t,vars:i}){let[a,o]=(0,I.useState)(null),s=F(t.value.models),l=Object.keys(s),d=typeof t.value.default==`string`?t.value.default:``,f=String(w(e.value,[`llm`,`active`])??``);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(P,{first:!0,help:`The models are in their own file, so keys and profiles can be shared or kept apart from forgeqe.yaml.`,children:`Models file`}),(0,L.jsx)(qe,{def:{key:`models_file`,label:`Models file`,help:`Where the model profiles are. Relative to forgeqe.yaml.`,type:`path`,default:`./llms.json`},edit:e,base:[`llm`]}),(0,L.jsx)(T,{label:`Profile in use`,help:`Empty: the default below. Tab switches it in the shell; --profile overrides it for one command.`,htmlFor:`llm-active`,yamlKey:e.file?`llm.active`:void 0,children:(0,L.jsxs)(y,{id:`llm-active`,value:f,onChange:t=>e.set(u(e.value,[`llm`,`active`],t.target.value||void 0)),className:`max-w-[260px] flex-[0_1_220px]`,children:[(0,L.jsxs)(`option`,{value:``,children:[`The default (`,d||`none`,`)`]}),l.map(e=>(0,L.jsx)(`option`,{value:e,children:e},e)),f&&!l.includes(f)&&(0,L.jsxs)(`option`,{value:f,children:[f,` (not in the file)`]})]})}),(0,L.jsx)(P,{children:`Default model`}),(0,L.jsxs)(`div`,{role:`radiogroup`,"aria-label":`Default model`,children:[l.length===0&&(0,L.jsx)(`p`,{className:`m-0 border-t border-line-soft py-5 text-sm text-muted`,children:`No models yet. Add one to start.`}),l.map(e=>{let n=F(s[e]),a=typeof n.api_key_env==`string`&&n.auth!==`entra`?n.api_key_env:``;return(0,L.jsxs)(`div`,{className:`flex min-h-[68px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-3`,children:[(0,L.jsx)(xr,{checked:d===e,onSelect:()=>t.set({...t.value,default:e}),label:`Make ${e} the default`}),(0,L.jsx)(D,{icon:ln,logo:sr[String(n.provider)]}),(0,L.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_220px] flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`font-medium`,children:e}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:[Ar(n.provider),n.model].filter(Boolean).map(String).join(`, `)})]}),(0,L.jsxs)(`span`,{className:`flex items-center gap-3`,children:[a&&(0,L.jsx)(r,{name:a,vars:i}),d===e&&(0,L.jsx)(`span`,{className:`text-[13px] text-muted`,children:`Default`})]}),(0,L.jsxs)(`span`,{className:`flex gap-2`,children:[(0,L.jsx)(c,{size:`sm`,"aria-label":`Edit ${e}`,onClick:()=>o({mode:`edit`,from:e,name:e,profile:n}),children:`Edit`}),(0,L.jsx)(c,{size:`sm`,"aria-label":`Remove ${e}`,onClick:()=>{let n={...s};delete n[e];let r=d===e?Object.keys(n)[0]||``:d,i={...t.value,models:n};r?i.default=r:delete i.default,t.set(i)},children:`Remove`})]})]},e)})]}),(0,L.jsx)(`div`,{className:`pt-4`,children:(0,L.jsx)(c,{onClick:()=>o({mode:`add`,from:``,name:``,profile:{...jr.openai}}),children:`Add a model`})}),(0,L.jsx)(Fr,{panel:a,setPanel:o,taken:e=>e in s,onApply:e=>{let r={...e.mode===`edit`&&e.name!==e.from?n(s,e.from,e.name):s,[e.name]:e.profile},i=!d||e.mode===`edit`&&d===e.from?e.name:d;t.set({...t.value,default:i,models:r})},vars:i})]})}var Lr=[[`agent`,`Orchestrator`,`The shell, forgeqe run and forgeqe mcp`],[`browser`,`Browser, desktop and mobile driving`,`Works from screenshots: only models that take images`],[`coding`,`Writing and healing tests`,`Asks for the best model: a weaker one costs more in failed attempts`],[`review`,`Reviews and judging results`,``],[`analysis`,`Root cause of defects`,`Asks for the best model`],[`planning`,`Refining requests and planning tests`,``]];function Rr({config:e,models:n}){let r=Object.keys(F(n.value.models)),i=String(w(e.value,[`llm`,`routing`])??`off`),a=w(e.value,[`llm`,`fallback`])!==!1,o=F(w(e.value,[`llm`,`routes`])),s=t=>e.file?`llm.${t}`:void 0,c=e=>{let t=o[e];return t===void 0||t===`auto`?[]:(Array.isArray(t)?t:[t]).map(String)},l=(t,n)=>{let r=c(t),i=r.includes(n)?r.filter(e=>e!==n):[...r,n];e.set(u(e.value,[`llm`,`routes`,t],i.length?i:void 0))};return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(T,{label:`Routing`,help:`Off: the profile in use does everything. Auto: each area of work gets the cheapest model good enough for it (rated once with a few calls). Shadow: decides and logs which it would use, and changes nothing.`,htmlFor:`llm-routing`,className:`border-t-0 pt-0`,yamlKey:s(`routing`),children:(0,L.jsxs)(y,{id:`llm-routing`,value:i,onChange:t=>e.set(u(e.value,[`llm`,`routing`],t.target.value===`off`?void 0:t.target.value)),className:`max-w-[260px] flex-[0_1_220px]`,children:[(0,L.jsx)(`option`,{value:`off`,children:`Off`}),(0,L.jsx)(`option`,{value:`auto`,children:`Auto`}),(0,L.jsx)(`option`,{value:`shadow`,children:`Shadow (log only)`})]})}),(0,L.jsx)(T,{label:`Fall back to a working model`,help:`When a model has no key or its sign-in is refused, use one that works, Copilot first, and say why. Off: keep the model and show its error.`,yamlKey:s(`fallback`),children:(0,L.jsx)(t,{checked:a,onChange:t=>e.set(u(e.value,[`llm`,`fallback`],t?void 0:!1)),label:`Fall back to a working model`})}),(0,L.jsx)(P,{help:i===`off`?`Used when routing is auto or shadow. None picked: any model in the file that is good enough.`:`None picked: any model in the file that is good enough. One picked pins the area to it.`,children:`Models per area of work`}),r.length===0&&(0,L.jsx)(`p`,{className:`m-0 border-t border-line-soft py-4 text-sm text-muted`,children:`Add models under Models first.`}),r.length>0&&Lr.map(([e,t,n])=>{let i=c(e),a=i.filter(e=>!r.includes(e));return(0,L.jsx)(T,{label:t,help:a.length?(0,L.jsxs)(`span`,{className:`text-fail`,children:[`Not in the models file: `,a.join(`, `)]}):n||void 0,yamlKey:s(`routes.${e}`),children:(0,L.jsxs)(`div`,{role:`group`,"aria-label":`Models for ${t}`,className:`flex max-w-[420px] flex-[1_1_280px] flex-wrap gap-1.5`,children:[r.map(t=>(0,L.jsx)(`button`,{type:`button`,"aria-pressed":i.includes(t),onClick:()=>l(e,t),className:p(`min-h-8 cursor-pointer rounded-full border px-3 text-[13px]`,i.includes(t)?`border-accent bg-accent-soft text-accent`:`border-line bg-bg text-ink-2 hover:bg-surface-muted`),children:t},t)),!i.length&&(0,L.jsx)(`span`,{className:`self-center text-[13px] text-muted`,children:`Any (auto)`})]})},e)})]})}var R=(...e)=>e.map(([e,t])=>({value:e,label:t})),zr=[{title:`Where runs happen`,base:[`browser`],fields:[{key:`provider`,label:`Browser`,help:`Where the browser agent runs. Remote grids need their sign-in under Integrations.`,type:`select`,default:`local`,options:R([`local`,`Chrome on this machine`],[`docker`,`Chrome in Docker`],[`browserstack`,`BrowserStack`],[`testmu`,`TestMu AI (LambdaTest)`])},{key:`start_url`,label:`Start page`,help:`Leave empty to let the agent choose, or to start at the active environment's app.`,type:`url`,placeholder:`https://staging.example.com`},{key:`allowed_hosts`,label:`Allowed sites`,help:`Hosts the agent may open, comma separated. Empty: the environment's apps.`,type:`list`,placeholder:`staging.example.com, auth.example.com`}]},{title:`The browser window`,base:[`browser`],fields:[{key:`headless`,label:`Run without a window`,help:`Off shows the browser while the agent works.`,type:`switch`,default:!0},{key:`window`,label:`Visible window`,type:`select`,default:`maximized`,options:R([`maximized`,`Maximized`],[`viewport`,`The size below`])},{key:`viewport.width`,label:`Page width`,type:`number`,default:1280},{key:`viewport.height`,label:`Page height`,type:`number`,default:800},{key:`overlay`,label:`Show what the agent does`,help:`In a visible browser: a bar with the current step, and your mouse and keyboard locked while it works.`,type:`switch`,default:!0}]},{title:`Limits and checks`,base:[`browser`],fields:[{key:`max_steps`,label:`Steps before a checkpoint`,help:`A run still making progress carries on, up to three times this.`,type:`number`,default:40},{key:`timeout_seconds`,label:`Time limit per run`,help:`In seconds.`,type:`number`,default:600},{key:`vision_detail`,label:`Screenshot detail`,help:`High reads small text better and costs more.`,type:`select`,default:`low`,options:R([`low`,`Low`],[`high`,`High`])},{key:`video`,label:`Record a video`,type:`switch`,default:!0},{key:`judge`,label:`Second check of each result`,help:`Another model call checks each finished run against its goal, and can fail it.`,type:`switch`,default:!1},{key:`rulebook`,label:`Learn rules per site`,help:`One-line rules the agent keeps after it recovers from a failed action.`,type:`switch`,default:!0}]},{title:`Remote browser, set here`,help:`For BrowserStack or TestMu AI set inline in forgeqe.yaml. These win over the grid's own file under Integrations when both are set.`,base:[`browser`,`remote`],fields:[{key:`browser`,label:`Browser`,type:`text`,placeholder:`chrome`},{key:`browser_version`,label:`Browser version`,type:`text`,placeholder:`latest`},{key:`os`,label:`Operating system`,help:`BrowserStack: Windows or OS X.`,type:`text`,placeholder:`Windows`},{key:`os_version`,label:`Its version`,type:`text`,placeholder:`11, or Sequoia`},{key:`platform`,label:`Platform`,help:`TestMu AI; or set the two above and ForgeQE joins them.`,type:`text`,placeholder:`Windows 11`},{key:`username_env`,label:`User name`,type:`var`,placeholder:`BROWSERSTACK_USERNAME`},{key:`access_key_env`,label:`Access key`,type:`var`,placeholder:`BROWSERSTACK_ACCESS_KEY`},{key:`project`,label:`Project`,type:`text`,placeholder:`ForgeQE`},{key:`build`,label:`Build`,type:`text`,placeholder:`nightly`},{key:`name`,label:`Session name`,type:`text`,placeholder:`checkout smoke`},{key:`local`,label:`Through a tunnel`,help:`BrowserStack Local or the LambdaTest tunnel, for sites only your network reaches.`,type:`switch`,default:!1},{key:`extra`,label:`More capabilities`,help:`The provider's own, one per line.`,type:`kv`,placeholder:`browserstack.console = errors`}]}],Br=[{title:`Where tests go`,base:[`code`],fields:[{key:`repo`,label:`Repository`,help:`Where passed runs become tests. Empty: this folder.`,type:`path`,placeholder:`../my-app`},{key:`test_command`,label:`Test command`,help:`Empty: the agent finds it.`,type:`path`,placeholder:`npx playwright test`},{key:`model`,label:`Model`,help:`Empty: the default model.`,type:`text`,placeholder:`anthropic/claude-sonnet-4-5`},{key:`review_profile`,label:`Reviewer's model`,help:`A profile from Models. The reviewer only reads and judges, so a cheaper one is enough.`,type:`text`},{key:`runtime`,label:`Agent runtime`,help:`Empty: the runtime ForgeQE downloads.`,type:`path`,placeholder:`/path/to/agent-runtime`}]},{title:`How hard it tries`,base:[`code`],fields:[{key:`max_attempts`,label:`Attempts`,help:`Test runs before it gives up, and healing attempts.`,type:`number`,default:3},{key:`test_timeout_seconds`,label:`Time limit per test run`,help:`In seconds.`,type:`number`,default:600},{key:`stall_after`,label:`Stop after repeated failures`,help:`When one command has failed this many times.`,type:`number`,default:5},{key:`max_tokens`,label:`Token limit per job`,help:`Cached tokens included. 0 turns the limit off.`,type:`number`,default:15e5}]},{title:`Help it gets`,base:[`code`],fields:[{key:`replay`,label:`Replay the steps first`,help:`Runs the steps as a Playwright script and hands over what worked.`,type:`switch`,default:!0},{key:`live_browser`,label:`Look at the failing page`,help:`Once a step fails, the agent looks at that page in a browser.`,type:`switch`,default:!0},{key:`graph`,label:`Read the repository's code`,help:`Links the run's elements to the page objects that already locate them.`,type:`switch`,default:!0},{key:`header`,label:`Mark generated files`,help:`Files ForgeQE creates start with a “Generated with ForgeQE” line.`,type:`switch`,default:!0},{key:`rulebook`,label:`Learn from its own mistakes`,type:`switch`,default:!0}]}],Vr=[{title:`Reports`,base:[],fields:[{key:`export.out_dir`,label:`Report folder`,help:`One folder per run.`,type:`path`,default:`./.forgeqe/reports`},{key:`export.format`,label:`Test format`,type:`select`,default:`playwright`,options:R([`playwright`,`Playwright`])},{key:`report.screenshots`,label:`Screenshots in reports`,type:`select`,default:`all`,options:R([`all`,`Every step`],[`failures`,`Failures only`],[`off`,`None`])},{key:`report.accessibility`,label:`Check accessibility of each page`,type:`switch`,default:!0},{key:`suite.out_dir`,label:`Suite report folder`,type:`path`,default:`./.forgeqe/reports/suites`}]},{title:`Memory and replays`,base:[],fields:[{key:`memory.enabled`,label:`Remember pages and flows`,type:`switch`,default:!0},{key:`memory.dir`,label:`Memory folder`,type:`path`,default:`./.forgeqe/memory`},{key:`memory.replay`,label:`Replays`,help:`Verify checks each recorded step; trust replays without a model.`,type:`select`,default:`verify`,options:R([`verify`,`Verify`],[`trust`,`Trust`],[`off`,`Off`])},{key:`registry.mode`,label:`Rerun passed runs without the agent`,help:`On: a rerun of a passed run replays as recorded, with no model when its checks hold. Shadow only records what it would have done.`,type:`select`,default:`on`,options:R([`on`,`On`],[`shadow`,`Shadow`],[`off`,`Off`])}]},{title:`Suites`,base:[],fields:[{key:`suite.code`,label:`Write tests for passed cases`,help:`With a repository set under Code.`,type:`switch`,default:!0},{key:`suite.restore_sessions`,label:`Start each case signed in`,help:`Cases start from the saved logins' sessions. Off runs each case as its test starts, signed out.`,type:`switch`,default:!1},{key:`suite.case_check`,label:`Before a run, check the cases`,help:`Warn shows what the check found and runs every case; block leaves out the ones that cannot run as written.`,type:`select`,default:`warn`,options:R([`warn`,`Warn`],[`block`,`Block`],[`off`,`Off`])}]},{title:`Flaky tests`,help:`A test that fails and then passes is flaky; quarantine keeps it running, but its failures stop failing the run and CI.`,base:[`flaky`],fields:[{key:`retries`,label:`Runs again in the same run`,help:`0 to 3.`,type:`number`,default:1},{key:`quarantine`,label:`Quarantine`,type:`select`,default:`suggest`,options:R([`suggest`,`The agent asks first`],[`auto`,`ForgeQE does it`],[`off`,`Off: history only`])},{key:`flaky_after`,label:`Flaky from this score`,type:`number`,default:2}]},{title:`Release readiness`,help:`When a release reads GO, GO WITH RISKS or NO-GO.`,base:[`release`],fields:[{key:`max_critical`,label:`Open critical bugs allowed`,type:`number`,default:0},{key:`max_high`,label:`Open high bugs allowed`,type:`number`,default:0},{key:`min_pass_rate`,label:`Pass rate needed`,help:`Percent of executed test cases.`,type:`number`,default:95},{key:`require_tests`,label:`A story needs a test case`,help:`Without one it is a risk.`,type:`switch`,default:!0}]},{title:`Regression packs in a pipeline`,help:`Where Run in the pipeline sends a pack (forgeqe pack run --on pipeline).`,base:[`packs`,`pipeline`],fields:[{key:`default`,label:`Pipeline`,type:`select`,options:R([`github`,`GitHub Actions`],[`azure_devops`,`Azure Pipelines`])},{key:`github.repo`,label:`GitHub repository`,type:`text`,placeholder:`acme/shop-tests`},{key:`github.workflow`,label:`Workflow file`,type:`text`,default:`forgeqe-pack.yml`},{key:`github.ref`,label:`Branch`,type:`text`,default:`main`},{key:`azure_devops.project`,label:`Azure DevOps project`,type:`text`,placeholder:`Shop`},{key:`azure_devops.pipeline_id`,label:`Pipeline id`,type:`number`,placeholder:`42`},{key:`azure_devops.ref`,label:`Branch`,type:`text`,default:`refs/heads/main`},{key:`timeout_minutes`,label:`Wait for it`,help:`In minutes.`,type:`number`,default:60}]},{title:`Defect analysis`,help:`For a failed case that is a defect: a repro, suspect commits in the product's repository, and a root-cause hypothesis.`,base:[`defects`],fields:[{key:`product_repo`,label:`Product repository`,help:`The application's code: suspect commits, and what the analysis reads.`,type:`path`,placeholder:`../shop`},{key:`reproduce`,label:`Run a new defect's case once more`,help:`To see whether it repeats.`,type:`switch`,default:!0},{key:`analyze`,label:`Write a root-cause hypothesis`,help:`One model session per new defect or regression.`,type:`switch`,default:!0},{key:`max_analyses`,label:`Analyses per suite`,type:`number`,default:3}]}],Hr=[{title:`Accessibility`,base:[`quality`],fields:[{key:`accessibility.standard`,label:`Standard`,type:`select`,default:`wcag21aa`,options:R([`wcag2a`,`WCAG 2.0 A`],[`wcag21aa`,`WCAG 2.1 AA`],[`wcag22aa`,`WCAG 2.2 AA`],[`wcag21aaa`,`WCAG 2.1 AAA`],[`section508`,`Section 508`],[`en301549`,`EN 301 549`],[`best-practice`,`Best practice`])},{key:`budgets.accessibility.critical`,label:`Critical issues allowed`,help:`Empty: reported, never failed on.`,type:`number`},{key:`budgets.accessibility.serious`,label:`Serious issues allowed`,type:`number`},{key:`budgets.accessibility.ignore`,label:`Rules to ignore`,type:`list`,placeholder:`region`}]},{title:`Performance and visual changes`,base:[`quality`],fields:[{key:`budgets.performance`,label:`Performance budget`,help:`web-vitals uses Google's thresholds. Per-page budgets are edited under Files.`,type:`select`,options:R([`web-vitals`,`Core Web Vitals`])},{key:`budgets.visual`,label:`Visual change allowed`,help:`Percent of a page's pixels.`,type:`number`},{key:`visual.full_page`,label:`Compare whole pages`,type:`switch`,default:!1},{key:`visual.mask`,label:`Hide before comparing`,help:`CSS selectors, comma separated.`,type:`list`,placeholder:`.clock, #ad-slot`}]},{title:`API tests`,base:[`api`],fields:[{key:`capture`,label:`Record the app's API calls`,help:`In every browser run, with secrets redacted.`,type:`switch`,default:!0},{key:`base_url`,label:`API address`,type:`url`,placeholder:`https://staging.shop.example`},{key:`third_party`,label:`Keep calls to other sites`,type:`switch`,default:!1},{key:`timeout_seconds`,label:`Time limit per call`,help:`In seconds.`,type:`number`,default:30},{key:`headers`,label:`Headers on every call`,help:"Values are ${NAME} references to environment variables, never the values.",type:`kv`,placeholder:"Authorization = Bearer ${API_TOKEN}"}]}],Ur=[{title:`The product`,help:`Agents design and judge tests as an expert in this industry, and add the obligations of each regulation a feature touches.`,base:[`domain`],fields:[{key:`industry`,label:`Industry`,type:`text`,placeholder:`retail banking`},{key:`regulations`,label:`Regulations`,type:`list`,placeholder:`DORA, PSD2, GDPR`},{key:`notes`,label:`Notes`,type:`textarea`,placeholder:`Payments to UK and EU accounts; customers are consumers and small businesses.`}]},{title:`Instructions and knowledge`,base:[],fields:[{key:`prompts.step_instruction`,label:`Extra instruction for the browser agent`,type:`textarea`},{key:`prompts.dir`,label:`Shared prompts folder`,help:`Wins over .forgeqe/prompts.`,type:`path`,placeholder:`../shared-prompts`},{key:`knowledge.dir`,label:`Product knowledge folder`,type:`path`,default:`.forgeqe/knowledge`},{key:`knowledge.browser_max_chars`,label:`Knowledge per browser run`,help:`Characters. 0: none.`,type:`number`,default:1500},{key:`rag.url`,label:`Requirements search service`,help:`Checking a test case adds the passages it finds. POST {query, top_k}.`,type:`url`,placeholder:`http://localhost:8080/search`},{key:`rag.command`,label:`Or a local search command`,help:`Gets the query on stdin, prints passages. Comma separated.`,type:`list`,placeholder:`python, rag/search.py`},{key:`rag.token_env`,label:`Search service token`,type:`var`,placeholder:`RAG_TOKEN`},{key:`rag.top_k`,label:`Passages per search`,type:`number`,default:5},{key:`rag.timeout_seconds`,label:`Search time limit`,help:`In seconds.`,type:`number`,default:20},{key:`guardrails.dir`,label:`Guardrails folder`,type:`path`,default:`.forgeqe/guardrails`},{key:`prompts.guiderails`,label:`Guardrails kept in forgeqe.yaml`,help:`The older way: one rule per line. Prefer Guardrails.`,type:`textarea`}]},{title:`Capabilities`,help:`The agent gets the tools a request is about. Pin some on, or turn some off for this project (forgeqe features lists them).`,base:[`agent`,`capabilities`],fields:[{key:`always`,label:`Always given`,type:`list`,placeholder:`regression-packs`},{key:`off`,label:`Never given`,type:`list`,placeholder:`desktop-apps`}]}],Wr=[{id:`jira`,icon:jn,name:`Jira`,note:`Test cases, results and bugs`,base:[`sources`,`jira`],vars:[`email_env`,`token_env`],fields:[{key:`url`,label:`Site`,type:`url`,placeholder:`https://acme.atlassian.net`},{key:`email_env`,label:`Email variable`,help:`Cloud only.`,type:`var`,default:`JIRA_EMAIL`},{key:`token_env`,label:`Token variable`,type:`var`,default:`JIRA_API_TOKEN`},{key:`mcp`,label:`MCP server`,type:`select`,default:`mcp-atlassian`,options:R([`mcp-atlassian`,`mcp-atlassian (Cloud and Server)`],[`rovo`,`Rovo (Atlassian's, Cloud)`],[`false`,`None`])}]},{id:`azure_devops`,icon:Ln,name:`Azure DevOps`,note:`Test plans, work items and wiki`,base:[`sources`,`azure_devops`],vars:[`token_env`],fields:[{key:`org_url`,label:`Organization`,type:`url`,placeholder:`https://dev.azure.com/acme`},{key:`project`,label:`Project`,help:`Empty: every project.`,type:`text`,placeholder:`Shop`},{key:`token_env`,label:`Token variable`,help:`A PAT with Test Management and Work Items, read and write.`,type:`var`,default:`ADO_PAT`},{key:`mcp`,label:`Use Microsoft's MCP server`,type:`switch`,default:!0},{key:`mcp_domains`,label:`MCP tool groups`,type:`list`,placeholder:`core, work, work-items, pipelines`}]},{id:`xray`,icon:Pt,name:`Xray`,note:`Test cases in Jira, through Xray Cloud`,base:[`sources`,`xray`],vars:[`client_id_env`,`client_secret_env`],fields:[{key:`url`,label:`Address`,type:`url`,default:`https://xray.cloud.getxray.app`},{key:`client_id_env`,label:`Client id variable`,type:`var`,default:`XRAY_CLIENT_ID`},{key:`client_secret_env`,label:`Client secret variable`,type:`var`,default:`XRAY_CLIENT_SECRET`}]},{id:`confluence`,icon:Ee,name:`Confluence`,note:`Requirements pages`,base:[`sources`,`confluence`],vars:[`email_env`,`token_env`],fields:[{key:`url`,label:`Site`,help:`Empty: the Jira site, same account.`,type:`url`,placeholder:`https://acme.atlassian.net/wiki`},{key:`email_env`,label:`Email variable`,type:`var`,default:`CONFLUENCE_EMAIL`},{key:`token_env`,label:`Token variable`,type:`var`,default:`CONFLUENCE_TOKEN`},{key:`space`,label:`Space`,help:`Search this space only.`,type:`text`,placeholder:`QA`}]},{id:`testrail`,icon:Qt,name:`TestRail`,note:`Test cases and results`,base:[`sources`,`testrail`],vars:[`email_env`,`token_env`],fields:[{key:`url`,label:`Site`,type:`url`,placeholder:`https://acme.testrail.io`},{key:`email_env`,label:`Email variable`,type:`var`,default:`TESTRAIL_EMAIL`},{key:`token_env`,label:`API key variable`,type:`var`,default:`TESTRAIL_API_KEY`},{key:`project_id`,label:`Project id`,type:`number`}]},{id:`zephyr`,icon:Ke,name:`Zephyr Scale`,note:`Test cases and results`,base:[`sources`,`zephyr`],vars:[`token_env`],fields:[{key:`token_env`,label:`Token variable`,type:`var`,default:`ZEPHYR_API_TOKEN`},{key:`project_key`,label:`Project key`,type:`text`,placeholder:`SHOP`}]},{id:`qtest`,icon:Dn,name:`qTest`,note:`Test cases and results`,base:[`sources`,`qtest`],vars:[`token_env`],fields:[{key:`url`,label:`Site`,type:`url`,placeholder:`https://acme.qtestnet.com`},{key:`token_env`,label:`Token variable`,type:`var`,default:`QTEST_TOKEN`},{key:`project_id`,label:`Project id`,type:`number`},{key:`statuses`,label:`Status names`,help:`Your qTest's automation status for each result, one per line.`,type:`kv`,placeholder:`passed = PASS
|
|
16
|
-
failed = FAIL
|
|
17
|
-
error = BLOCKED`}]},{id:`github`,icon:Fe,name:`GitHub`,note:`Issues as test cases, bugs, pull requests`,base:[`sources`,`github`],vars:[`token_env`],fields:[{key:`repo`,label:`Repository`,type:`text`,placeholder:`acme/shop`},{key:`token_env`,label:`Token variable`,help:`Without it, the GitHub CLI's sign-in.`,type:`var`,default:`GITHUB_TOKEN`},{key:`toolsets`,label:`MCP tool groups`,type:`list`,placeholder:`repos, issues, pull_requests, actions`}]}],Gr={title:`Bugs`,help:`A bug for each defect a run finds; a comment on the open bug while it still fails.`,base:[`sources`,`bugs`],fields:[{key:`system`,label:`Where bugs go`,type:`select`,options:R([`jira`,`Jira`],[`azure_devops`,`Azure DevOps`],[`github`,`GitHub`])},{key:`project`,label:`Project`,help:`Jira project key, or GitHub owner/repo.`,type:`text`,placeholder:`SHOP`},{key:`type`,label:`Issue type`,type:`text`,default:`Bug`},{key:`labels`,label:`Labels`,help:`Jira labels, or Azure DevOps tags.`,type:`list`,placeholder:`forgeqe`},{key:`area_path`,label:`Area path`,help:`Azure DevOps.`,type:`text`,placeholder:`Shop\\Web`},{key:`group_by`,label:`One bug per`,type:`select`,default:`defect`,options:R([`defect`,`Defect (cases failing the same way share one)`],[`case`,`Case`])},{key:`on_error`,label:`Also for cases that could not run`,type:`switch`,default:!1}]},Kr=[[`suite_failed`,`A suite failed`],[`suite_passed`,`A suite passed`],[`release`,`Release verdict`],[`eval_failed`,`An eval failed`],[`job_failed`,`A schedule failed`],[`job_recovered`,`A schedule recovered`],[`job_done`,`A schedule finished`],[`job_investigated`,`A failure was investigated`]],qr=[{title:`Project report`,help:`forgeqe bi builds a static site from ForgeQE's data and the datasets below, with no server (Reports, Build project report).`,base:[`bi`],fields:[{key:`title`,label:`Title`,type:`text`,default:`ForgeQE BI`},{key:`evidence_dir`,label:`Evidence project`,type:`path`,default:`./evidence`},{key:`data_dir`,label:`Data folder`,type:`path`,default:`./evidence/sources/forgeqe`},{key:`build_dir`,label:`Built site`,type:`path`,default:`./.forgeqe/reports/bi`},{key:`collect`,label:`Teammates' exports`,help:`Files or folders of forgeqe bi export, comma separated.`,type:`list`,placeholder:`//share/qa-reports`}]}],Jr=[{key:`kind`,label:`From`,type:`select`,options:R([`ado_wiql`,`Azure DevOps (WIQL)`],[`jira_jql`,`Jira (JQL)`])},{key:`title`,label:`Title`,type:`text`,placeholder:`Current sprint stories`},{key:`project`,label:`Azure DevOps project`,type:`text`,placeholder:`Shop`},{key:`wiql`,label:`WIQL`,type:`textarea`,placeholder:`SELECT [System.Id] FROM WorkItems WHERE ...`},{key:`jql`,label:`JQL`,type:`textarea`,placeholder:`project = SHOP AND issuetype = Bug`}],Yr=[{title:`Running in parallel`,help:`More at once finishes sooner, and uses more of this machine (or of your grid's sessions) and more model calls at the same time.`,base:[],fields:[{key:`suite.parallel`,label:`Browsers at once in a suite`,help:`Test cases of one suite run side by side. Coding jobs always go one at a time.`,type:`number`,default:1},{key:`jobs.parallel`,label:`Scheduled runs at once`,help:`Over all jobs of the jobs service.`,type:`number`,default:2},{key:`monitor.parallel`,label:`Monitor checks at once`,help:`In each monitor round.`,type:`number`,default:1}]}],Xr=`Kept in your credential store; the file has only the variable's name.`,Zr=[{title:`Driver`,help:`Appium runs workflows step by step and explores goals; Maestro replays them and runs your team's own flows. The apps themselves are in Environments (kind: mobile).`,base:[`mobile`],fields:[{key:`driver`,label:`Replays run on`,type:`select`,default:`appium`,options:R([`appium`,`Appium`],[`maestro`,`Maestro`])},{key:`heal`,label:`Heal a replay that breaks`,help:`A step that no longer finds its element is found again from the screen.`,type:`switch`,default:!0},{key:`secrets`,label:`Secrets a flow may read`,help:`The only environment variables {{secret:…}} may read, comma separated.`,type:`list`,placeholder:`COURIER_PASSWORD`}]},{title:`Appium`,base:[`mobile`,`appium`],fields:[{key:`url`,label:`Appium server`,help:`Yours, or a device cloud's hub. No user or key in it.`,type:`url`,default:`http://127.0.0.1:4723`},{key:`capabilities`,label:`Capabilities`,help:`Added to every session, one per line.`,type:`kv`,placeholder:`appium:deviceName = Pixel 8
|
|
18
|
-
appium:udid = emulator-5554`},{key:`username_env`,label:`Device cloud user`,help:Xr,type:`var`,placeholder:`BROWSERSTACK_USERNAME`},{key:`access_key_env`,label:`Device cloud key`,help:Xr,type:`var`,placeholder:`BROWSERSTACK_ACCESS_KEY`}]},{title:`Maestro`,base:[`mobile`,`maestro`],fields:[{key:`command`,label:`Maestro program`,help:`With its arguments, comma separated.`,type:`list`,placeholder:`maestro`},{key:`device`,label:`Device`,help:`From adb devices or xcrun simctl list. Empty: the one connected.`,type:`text`,placeholder:`emulator-5554`},{key:`testmu.devices`,label:`TestMu AI devices`,help:`Run flows on TestMu AI's devices instead, comma separated.`,type:`list`,placeholder:`Pixel 6-14`},{key:`testmu.region`,label:`TestMu AI region`,type:`text`,placeholder:`us`},{key:`testmu.real_device`,label:`Real devices`,help:`Off: emulators and simulators.`,type:`switch`,default:!0},{key:`testmu.cli`,label:`hyperexecute program`,type:`path`,placeholder:`hyperexecute`},{key:`testmu.username_env`,label:`TestMu AI user`,help:Xr,type:`var`,default:`LT_USERNAME`},{key:`testmu.access_key_env`,label:`TestMu AI key`,help:Xr,type:`var`,default:`LT_ACCESS_KEY`}]}],Qr=[{title:`Windows desktop apps`,help:`The apps themselves are in Environments (kind: desktop).`,base:[`desktop`],fields:[{key:`heal`,label:`Heal a replay that breaks`,help:`The model re-finds a control that moved.`,type:`switch`,default:!0},{key:`screenshots`,label:`Screenshot each replayed step`,type:`switch`,default:!0},{key:`secrets`,label:`Secrets a workflow may read`,help:`The only environment variables {{secret:…}} may read, comma separated.`,type:`list`,placeholder:`BILLING_PASSWORD`}]}],$r=[{title:`Runtime`,help:`ForgeQE starts only what is declared here, with ports on 127.0.0.1 and read-only mounts inside the project. Images take an exact version or a digest, never latest.`,base:[`containers`],fields:[{key:`runtime`,label:`Runtime`,type:`select`,emptyLabel:`Docker, else Podman`,options:R([`docker`,`Docker`],[`podman`,`Podman`])},{key:`compose`,label:`Compose files`,help:`Services from a compose file too, checked by the same rules.`,type:`list`,placeholder:`docker-compose.yml`},{key:`mock.image`,label:`Mocks' image`,type:`text`,placeholder:`wiremock/wiremock:3.9.1`}]},{title:`Tests in a container`,help:`run_tests runs the repository's tests in this image, its services started first and reachable by name.`,base:[`containers`,`tests`],fields:[{key:`image`,label:`Image`,type:`text`,placeholder:`mcr.microsoft.com/playwright:v1.48.2-jammy`},{key:`services`,label:`Services first`,type:`list`,placeholder:`db`},{key:`env`,label:`Environment`,type:`kv`,placeholder:`CI = true`},{key:`secrets`,label:`Secrets`,help:`Environment variable names.`,type:`list`,placeholder:`TEST_DB_PASSWORD`}]},{title:`The coding agents' workspace`,help:`Their shell commands, builds and test runs happen in this image, with the repository mounted; the agents and their keys stay on this machine.`,base:[`containers`,`workspace`],fields:[{key:`image`,label:`Image`,type:`text`,placeholder:`node:20.18.0`},{key:`services`,label:`Services first`,type:`list`,placeholder:`db`},{key:`env`,label:`Environment`,type:`kv`},{key:`secrets`,label:`Secrets`,type:`list`}]},{title:`Browser in a container`,help:`Used when Browser is set to Chrome in Docker.`,base:[`containers`,`browser`],fields:[{key:`image`,label:`Image`,type:`text`,placeholder:`the image ForgeQE ships`},{key:`headless`,label:`Without a window`,type:`switch`,default:!0}]}],ei=[{key:`image`,label:`Image`,help:`An exact version or a digest.`,type:`text`,placeholder:`postgres:16.4`},{key:`description`,label:`What it is`,type:`text`,placeholder:`Orders database`},{key:`ports`,label:`Ports`,help:`5432, or 15432:5432 (this machine:container). On 127.0.0.1 only.`,type:`list`,placeholder:`5432`},{key:`env`,label:`Environment`,type:`kv`,placeholder:`POSTGRES_DB = shop`},{key:`secrets`,label:`Secrets`,help:`Environment variable names (.env works).`,type:`list`,placeholder:`POSTGRES_PASSWORD`},{key:`volumes`,label:`Mounts`,help:`Read-only, inside the project: ./host:/container.`,type:`list`,placeholder:`./db/init:/docker-entrypoint-initdb.d`},{key:`command`,label:`Command`,help:`Its arguments, comma separated.`,type:`list`},{key:`depends_on`,label:`Starts after`,type:`list`,placeholder:`db`},{key:`ready.tcp`,label:`Ready when this port answers`,type:`number`,placeholder:`5432`},{key:`ready.http`,label:`Or when this path answers`,type:`text`,placeholder:`/health`},{key:`ready.port`,label:`On port`,type:`number`,placeholder:`8080`},{key:`timeout`,label:`Wait for it`,help:`In seconds.`,type:`number`,placeholder:`60`}],ti=[{key:`description`,label:`What it holds`,type:`text`,placeholder:`Orders written by the checkout app`},{key:`url_env`,label:`Connection string`,help:`A whole URI, JDBC or ADO.NET string. Or give the parts below.`,type:`var`,placeholder:`ORDERS_DB_URL`},{key:`engine`,label:`Engine`,type:`select`,options:R([`postgres`,`PostgreSQL`],[`mysql`,`MySQL`],[`mariadb`,`MariaDB`],[`mssql`,`SQL Server`],[`oracle`,`Oracle`],[`snowflake`,`Snowflake`],[`redshift`,`Redshift`],[`cockroachdb`,`CockroachDB`],[`sqlite`,`SQLite`],[`duckdb`,`DuckDB`],[`mongodb`,`MongoDB`],[`kafka`,`Kafka`])},{key:`host`,label:`Host`,type:`text`,placeholder:`localhost`},{key:`port`,label:`Port`,type:`number`,placeholder:`5432`},{key:`database`,label:`Database`,type:`text`,placeholder:`test`},{key:`schema`,label:`Schema`,type:`text`},{key:`path`,label:`File`,help:`SQLite or DuckDB.`,type:`path`,placeholder:`./data/test.db`},{key:`user`,label:`User`,type:`text`,placeholder:`qa`},{key:`auth`,label:`Signs in with`,type:`select`,default:`password`,options:R([`password`,`A password`],[`azure`,`Microsoft Entra`],[`aws_iam`,`AWS IAM`],[`none`,`Nothing`])},{key:`password_env`,label:`Password`,type:`var`,placeholder:`FIXTURES_DB_PASSWORD`},{key:`region`,label:`AWS region`,type:`text`,placeholder:`eu-west-1`},{key:`ssl`,label:`TLS`,type:`select`,emptyLabel:`The driver's default`,options:R([`verify`,`Verify the certificate`],[`require`,`Require`],[`disable`,`Off`])},{key:`ssl_ca`,label:`CA certificate`,type:`path`,placeholder:`./certs/ca.pem`},{key:`writable`,label:`Writable`,help:`Allows confirmed INSERT, and UPDATE or DELETE with a WHERE clause. Each one is asked first.`,type:`switch`,default:!1},{key:`timeout_seconds`,label:`Query time limit`,help:`In seconds.`,type:`number`,placeholder:`30`},{key:`options`,label:`Driver options`,type:`kv`}];function ni({groups:e,edit:t,continued:n}){return(0,L.jsx)(L.Fragment,{children:e.map((e,r)=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(P,{help:e.help,first:r===0&&!n,children:e.title}),(0,L.jsx)(j,{defs:e.fields,edit:t,base:e.base})]},e.title))})}function ri(e,t,n,r){return t.map(t=>{let r=e[t]??n.find(e=>e.key===t)?.default;return typeof r==`string`?r:``}).filter(e=>e&&!r(e))}function ii(e,t,r,i){let a=F(w(e.value,t));return!i||i===r||!/^[A-Za-z0-9_.-]+$/.test(i)||i in a?!1:(e.set(u(e.value,t,n(a,r,i))),!0)}var ai=[{key:`url`,label:`Sign-in page`,type:`url`,placeholder:`https://staging.shop.example/login`},{key:`domains`,label:`Or sites`,help:`Comma separated; * matches a subdomain.`,type:`list`,placeholder:`https://staging.shop.example, https://*.shop.example`},{key:`username_env`,label:`User name variable`,type:`var`,placeholder:`SHOP_USER`},{key:`password_env`,label:`Password variable`,type:`var`,placeholder:`SHOP_PASSWORD`},{key:`totp_env`,label:`Authenticator secret variable`,help:`Optional: a base32 secret for two-factor codes.`,type:`var`,placeholder:`SHOP_TOTP_SECRET`},{key:`save_session`,label:`Keep the session`,help:`The next run starts signed in (.forgeqe/sessions). Off signs in every run.`,type:`switch`,default:!0}];function oi({edit:e}){let[t,n]=(0,I.useState)(``),r=Te(),a=F(e.value.logins);return(0,L.jsxs)(L.Fragment,{children:[Object.keys(a).length===0&&(0,L.jsx)(`p`,{className:`m-0 py-5 text-sm text-muted`,children:`No sign-ins yet. Add one for each app the agent signs in to.`}),Object.entries(a).map(([a,o],s)=>{let l=F(o),d=ri(l,[`username_env`,`password_env`],ai,e=>i(r,e)),f=l.username_env||l.password_env;return(0,L.jsxs)(We,{lead:(0,L.jsx)(D,{icon:Jt}),title:a,meta:String(l.url||(Array.isArray(l.domains)?l.domains.join(`, `):``)||`No site yet`),state:f?d.length?(0,L.jsx)(`span`,{className:`text-sm text-warn`,title:d.join(`, `),children:d.length===1?`Needs ${d[0]}`:`Needs ${d.length} variables`}):(0,L.jsx)(`span`,{className:`text-sm text-pass`,children:`Ready`}):(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:`Not set up`}),open:t===a,onToggle:()=>n(t===a?``:a),actions:(0,L.jsx)(c,{size:`sm`,"aria-label":`Remove ${a}`,onClick:()=>e.set(u(e.value,[`logins`,a],void 0)),children:`Remove`}),children:[(0,L.jsx)(T,{label:`Name`,help:(0,L.jsxs)(L.Fragment,{children:[`Sign in by hand (SSO, captcha) with `,(0,L.jsxs)(`code`,{className:`font-mono text-[13px]`,children:[`forgeqe login `,a]}),`.`]}),htmlFor:`login-${s}`,children:(0,L.jsx)(_,{id:`login-${s}`,defaultValue:a,spellCheck:!1,onBlur:t=>{ii(e,[`logins`],a,t.target.value.trim())?n(t.target.value.trim()):t.target.value=a},className:`max-w-[420px] flex-[1_1_280px] font-mono text-[13px]`})}),(0,L.jsx)(j,{defs:ai,edit:e,base:[`logins`,a]})]},s)}),(0,L.jsx)(`div`,{className:`pt-4`,children:(0,L.jsx)(c,{onClick:()=>{let t=g(a,`shop`);e.set(u(e.value,[`logins`,t],{username_env:`${t.toUpperCase().replace(/[^A-Z0-9]/g,`_`)}_USER`,password_env:`${t.toUpperCase().replace(/[^A-Z0-9]/g,`_`)}_PASSWORD`})),n(t)},children:`Add a sign-in`})})]})}function si({rules:e,others:t,onChange:n}){let[r,i]=(0,I.useState)(``),[a,o]=(0,I.useState)(``),s=r.trim().length>0;return(0,L.jsxs)(L.Fragment,{children:[e.length===0&&t.length===0&&(0,L.jsx)(`p`,{className:`m-0 py-5 text-sm text-muted`,children:`No rules yet. Add the first one below.`}),e.map((t,r)=>(0,L.jsxs)(`div`,{className:`flex min-h-14 flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-2.5`,children:[(0,L.jsx)(`span`,{className:`flex-[1_1_300px] leading-normal`,children:t}),(0,L.jsx)(c,{size:`sm`,"aria-label":`Remove rule: ${t}`,onClick:()=>n(e.filter((e,t)=>t!==r)),children:`Remove`})]},r)),t.map(e=>(0,L.jsxs)(`div`,{className:`flex min-h-14 flex-wrap items-center gap-x-4 gap-y-1 border-t border-line-soft py-2.5`,children:[(0,L.jsx)(`span`,{className:`flex-[1_1_300px] leading-normal`,children:e.text}),(0,L.jsx)(`span`,{className:`font-mono text-[13px] text-muted`,children:e.source})]},e.text)),(0,L.jsxs)(`form`,{onSubmit:a=>{a.preventDefault();let s=r.replace(/^\s*[-*+]\s+/,``).trim();if(s){if(s.length>300)return o(`A rule is at most 300 characters: make it shorter.`);if([...e,...t.map(e=>e.text)].some(e=>e.toLowerCase()===s.toLowerCase()))return o(`That rule is already in force.`);o(``),n([...e,s]),i(``)}},className:`mt-4 flex items-center gap-2 rounded-full border border-line py-1.5 pr-1.5 pl-5 has-[input:focus-visible]:outline-2 has-[input:focus-visible]:outline-offset-2 has-[input:focus-visible]:outline-accent`,children:[(0,L.jsx)(`label`,{htmlFor:`rule`,className:`sr-only`,children:`New rule`}),(0,L.jsx)(`input`,{id:`rule`,value:r,maxLength:300,onChange:e=>{i(e.target.value),o(``)},placeholder:`Add a rule every agent must follow`,className:`min-h-10 min-w-0 flex-auto border-0 bg-transparent text-[15px] outline-none focus-visible:outline-none`}),(0,L.jsx)(`button`,{type:`submit`,disabled:!s,className:p(`inline-flex min-h-10 cursor-pointer items-center rounded-full border-0 px-4 text-sm font-medium disabled:cursor-not-allowed`,s?`bg-accent text-white hover:bg-accent-hover`:`bg-surface-strong text-muted`),children:`Add`})]}),a&&(0,L.jsx)(`p`,{role:`alert`,className:`mt-2 mb-0 text-sm text-fail`,children:a})]})}function ci(e){let t=e=>e.split(/[\\/]/).pop()||e,n=e.paths.environments;return[{id:`config`,label:t(e.paths.config),file:`config`,path:e.paths.config,text:e.raw.config},{id:`models`,label:t(e.paths.models),file:`models`,path:e.paths.models,text:e.raw.models},...e.raw.environments.map(e=>({id:`env:${e.name}`,label:t(e.path),file:`environments`,env:n.layout===`dir`?e.name:void 0,path:e.path,text:e.text}))]}function li({snap:e,dirty:t,onSave:n}){let r=ci(e),[i,a]=(0,I.useState)(`config`),[o,s]=(0,I.useState)({}),[l,u]=(0,I.useState)(!1),d=r.find(e=>e.id===i)||r[0],f=o[d.id]??d.text,m=f!==d.text,h=e=>`file-tab-${e.id.replace(/[^A-Za-z0-9_-]/g,`_`)}`;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`div`,{role:`tablist`,"aria-label":`Files`,className:`mb-4 flex flex-wrap gap-x-4 border-b border-line-soft`,children:r.map(e=>(0,L.jsx)(`button`,{id:h(e),type:`button`,role:`tab`,"aria-selected":d.id===e.id,"aria-controls":`file-panel`,tabIndex:d.id===e.id?0:-1,onClick:()=>a(e.id),onKeyDown:t=>{let n=r.indexOf(e),i=t.key===`ArrowRight`?r[(n+1)%r.length]:t.key===`ArrowLeft`?r[(n-1+r.length)%r.length]:void 0;i&&(a(i.id),document.getElementById(h(i))?.focus())},className:p(`-mb-px min-h-10 cursor-pointer border-0 border-b-2 bg-transparent px-0.5 font-mono text-[13px]`,d.id===e.id?`border-ink text-ink`:`border-transparent text-muted hover:text-ink`),children:e.label},e.id))}),(0,L.jsxs)(`div`,{id:`file-panel`,role:`tabpanel`,"aria-labelledby":h(d),className:`flex flex-col gap-3`,children:[(0,L.jsx)(`p`,{className:`m-0 font-mono text-[13px] break-all text-muted`,children:d.path}),e.errors[d.file]&&(0,L.jsxs)(`p`,{role:`alert`,className:`m-0 rounded-[10px] bg-fail-soft px-3 py-2 text-sm text-fail`,children:[`Does not parse: `,e.errors[d.file]]}),(0,L.jsx)(`label`,{htmlFor:`file-text`,className:`sr-only`,children:d.label}),(0,L.jsx)(ee,{id:`file-text`,spellCheck:!1,rows:24,value:f,onChange:e=>s({...o,[d.id]:e.target.value}),className:`font-mono text-[13px] leading-[1.6] whitespace-pre`}),(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,L.jsx)(c,{variant:`primary`,disabled:!m||l||t[d.file],onClick:async()=>{u(!0);try{if(await n(d.file,f,d.env)){let e={...o};delete e[d.id],s(e)}}finally{u(!1)}},children:l?`Saving…`:`Save file`}),m&&(0,L.jsx)(c,{onClick:()=>{let e={...o};delete e[d.id],s(e)},disabled:l,children:`Discard`}),t[d.file]&&(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:`Save or discard the form's changes to this file first.`})]})]})]})}var ui=/^[A-Za-z0-9][A-Za-z0-9_-]{0,62}$/;function di({edit:e,base:t,defs:n,noun:r,meta:i,start:a={},placeholder:o}){let s=F(w(e.value,t)),[l,d]=(0,I.useState)(null),[f,p]=(0,I.useState)(``),m=f&&!ui.test(f)?`Letters, digits, - and _.`:f in s?`There is a ${r} named ${f}.`:``,h=()=>{f&&!m&&(e.set(u(e.value,[...t,f],{...a})),d(f),p(``))};return(0,L.jsxs)(L.Fragment,{children:[Object.keys(s).length===0&&(0,L.jsx)(`p`,{className:`m-0 border-t border-line-soft py-4 text-sm text-muted`,children:`None yet.`}),Object.entries(s).map(([r,a])=>(0,L.jsx)(We,{title:r,meta:i(F(a))||void 0,open:l===r,onToggle:()=>d(l===r?null:r),actions:(0,L.jsx)(c,{size:`sm`,"aria-label":`Remove ${r}`,onClick:()=>e.set(u(e.value,[...t,r],void 0)),children:`Remove`}),children:(0,L.jsx)(j,{defs:n,edit:e,base:[...t,r]})},r)),(0,L.jsxs)(`div`,{className:`flex flex-wrap items-start gap-2 border-t border-line-soft pt-4`,children:[(0,L.jsxs)(`div`,{className:`flex flex-[0_1_260px] flex-col gap-1`,children:[(0,L.jsx)(_,{"aria-label":`New ${r}'s name`,value:f,spellCheck:!1,placeholder:`Name, such as ${o}`,"aria-invalid":!!m,onChange:e=>p(e.target.value.trim()),onKeyDown:e=>e.key===`Enter`&&h()}),m&&(0,L.jsx)(`span`,{className:`text-[13px] text-fail`,children:m})]}),(0,L.jsxs)(c,{disabled:!f||!!m,onClick:h,children:[`Add a `,r]})]})]})}var fi=[`Test cases and bugs`,`Browser grids`,`Notifications`,`Other tools`],pi=[...Wr.map(e=>({id:e.id,kind:`source`,group:fi[0],name:e.name,note:e.note,icon:e.icon,logo:or[e.id]})),{id:`browserstack`,kind:`grid`,group:fi[1],name:`BrowserStack`,note:`Remote browsers and devices`,icon:bt,logo:or.browserstack},{id:`testmu`,kind:`grid`,group:fi[1],name:`TestMu AI`,note:`Remote browsers (LambdaTest)`,icon:bt},{id:`teams`,kind:`teams`,group:fi[2],name:`Microsoft Teams`,note:`A channel's webhook, for suites, releases and schedules`,icon:nn,logo:nr,many:!0},{id:`email`,kind:`email`,group:fi[2],name:`Email`,note:`The same alerts by email`,icon:nn,many:!0},{id:`mcp`,kind:`mcp`,group:fi[3],name:`MCP server`,note:`Any other system with an MCP server, as tools for ForgeQE's agent`,icon:ct,many:!0}],mi={browserstack:[{key:`username_env`,label:`User name variable`,type:`var`,default:`BROWSERSTACK_USERNAME`},{key:`access_key_env`,label:`Access key variable`,type:`var`,default:`BROWSERSTACK_ACCESS_KEY`},{key:`browser`,label:`Browser`,help:`ForgeQE drives the browser over CDP: Chrome or Edge.`,type:`select`,default:`chrome`,options:[{value:`chrome`,label:`Chrome`},{value:`edge`,label:`Edge`}]},{key:`browser_version`,label:`Browser version`,type:`text`,default:`latest`},{key:`os`,label:`Operating system`,type:`select`,default:`Windows`,options:[{value:`Windows`,label:`Windows`},{value:`OS X`,label:`macOS`}]},{key:`os_version`,label:`Its version`,type:`text`,placeholder:`11, or Sequoia`},{key:`project`,label:`Project`,type:`text`,placeholder:`ForgeQE`},{key:`build`,label:`Build`,type:`text`,placeholder:`nightly`},{key:`local`,label:`Through BrowserStack Local`,help:`For sites only your network reaches.`,type:`switch`,default:!1}],testmu:[{key:`username_env`,label:`User name variable`,type:`var`,default:`LT_USERNAME`},{key:`access_key_env`,label:`Access key variable`,type:`var`,default:`LT_ACCESS_KEY`},{key:`browser`,label:`Browser`,help:`TestMu AI's CDP endpoint serves Chrome.`,type:`select`,default:`Chrome`,options:[{value:`Chrome`,label:`Chrome`}]},{key:`browser_version`,label:`Browser version`,type:`text`,default:`latest`},{key:`platform`,label:`Platform`,type:`text`,default:`Windows 11`,placeholder:`Windows 11, or macOS Sequoia`},{key:`project`,label:`Project`,type:`text`,placeholder:`ForgeQE`},{key:`build`,label:`Build`,type:`text`,placeholder:`nightly`},{key:`local`,label:`Through the LambdaTest tunnel`,help:`For sites only your network reaches.`,type:`switch`,default:!1}]},hi={browserstack:{provider:`browserstack`,remote:{browser:`chrome`,browser_version:`latest`,os:`Windows`,os_version:`11`,username_env:`BROWSERSTACK_USERNAME`,access_key_env:`BROWSERSTACK_ACCESS_KEY`,project:`ForgeQE`,local:!1}},testmu:{provider:`testmu`,remote:{browser:`Chrome`,browser_version:`latest`,platform:`Windows 11`,username_env:`LT_USERNAME`,access_key_env:`LT_ACCESS_KEY`,project:`ForgeQE`,local:!1}}},gi=[{key:`host`,label:`Mail server`,type:`text`,placeholder:`smtp.office365.com`},{key:`port`,label:`Port`,help:`587 is STARTTLS; 465 is TLS from the start.`,type:`number`,default:587},{key:`username_env`,label:`User name variable`,type:`var`,placeholder:`SMTP_USERNAME`},{key:`password_env`,label:`Password variable`,type:`var`,placeholder:`SMTP_PASSWORD`},{key:`from`,label:`From`,help:`Empty: the user name.`,type:`text`,placeholder:`ForgeQE <qa-bot@example.com>`},{key:`to`,label:`To`,help:`Comma separated.`,type:`list`,placeholder:`qa-team@example.com`}],_i=/^[A-Za-z0-9_-][A-Za-z0-9_.-]*$/;function vi({entry:e,title:t,meta:n,state:r,onEdit:i,onRemove:a}){return(0,L.jsxs)(`div`,{className:`flex min-h-[68px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-3`,children:[(0,L.jsx)(D,{icon:e.icon,logo:e.logo}),(0,L.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_220px] flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`font-medium`,children:t}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:n}),r]}),(0,L.jsxs)(`span`,{className:`flex gap-2`,children:[(0,L.jsx)(c,{size:`sm`,"aria-label":`Edit ${t}`,onClick:i,children:`Edit`}),(0,L.jsx)(c,{size:`sm`,"aria-label":`Disconnect ${t}`,onClick:a,children:`Disconnect`})]})]})}var yi=e=>e.length?(0,L.jsx)(`span`,{className:`text-[13px] text-warn`,children:e.length===1?`Needs its key or password: Edit to add it`:`Needs ${e.length} values: Edit to add them`}):(0,L.jsx)(`span`,{className:`text-[13px] text-pass`,children:`Connected`}),bi={integrations:[fi[0],fi[1]],notifications:[fi[2]],mcp:[fi[3]]};function xi({edit:e,grids:t,setGrids:n,gridPaths:r,view:a=`integrations`}){let[o,s]=(0,I.useState)(null),l=Te(),d=e=>i(l,e),f=e.value,p=e.vars,m=F(w(f,[`notify`,`channels`])),h=F(f.mcp),g=String(w(f,[`browser`,`provider`])??`local`),_=e=>pi.find(t=>t.id===e),v=e=>{let t=Wr.find(t=>t.id===e),n=w(f,t.base);return n!==void 0&&n!==!1},y=e=>e.kind===`source`?v(e.id):e.kind===`grid`&&!!t[e.id],b=Object.fromEntries(fi.map(e=>[e,[]]));for(let t of Wr){if(!v(t.id))continue;let n=F(w(f,t.base));b[fi[0]].push((0,L.jsx)(vi,{entry:_(t.id),title:t.name,meta:String(n.url||n.org_url||n.repo||t.note),state:yi(ri(n,t.vars,t.fields,d)),onEdit:()=>s({step:`form`,entry:_(t.id),mode:`edit`,name:t.id,from:t.id,value:n}),onRemove:()=>e.set(u(f,t.base,void 0))},t.id))}for(let e of[`browserstack`,`testmu`]){let n=t[e];if(!n)continue;let r=F(n.remote),i=_(e),a=[(e=>typeof e==`string`&&e?e[0].toUpperCase()+e.slice(1):e)(r.browser),r.os?`${r.os} ${r.os_version||``}`.trim():r.platform].filter(Boolean).join(`, `);b[fi[1]].push((0,L.jsx)(vi,{entry:i,title:i.name,meta:`${a}${g===e?`, used for browser runs`:``}`,state:yi(ri(r,[`username_env`,`access_key_env`],mi[e],d)),onEdit:()=>s({step:`form`,entry:i,mode:`edit`,name:e,from:e,value:n,useGrid:g===e}),onRemove:()=>x(e)},e))}for(let[t,n]of Object.entries(m)){let r=F(n),i=_(r.teams?`teams`:`email`),a=Array.isArray(r.on)?r.on.length:0,o=[...r.teams?ri(F(r.teams),[`webhook_env`],[],d):[],...r.email?ri(F(r.email),[`username_env`,`password_env`],[],d):[]];b[fi[2]].push((0,L.jsx)(vi,{entry:i,title:t,meta:`${[r.teams&&`Teams`,r.email&&`Email`].filter(Boolean).join(` and `)||`No way to reach it yet`}, ${a} event${a===1?``:`s`}`,state:yi(o),onEdit:()=>s({step:`form`,entry:i,mode:`edit`,name:t,from:t,value:r}),onRemove:()=>e.set(u(f,[`notify`,`channels`,t],void 0))},`ch-${t}`))}for(let[t,n]of Object.entries(h)){let r=F(n);b[fi[3]].push((0,L.jsx)(vi,{entry:{..._(`mcp`),icon:Ce},title:t,meta:String(r.url||r.command||`MCP server`),onEdit:()=>s({step:`form`,entry:_(`mcp`),mode:`edit`,name:t,from:t,value:r}),onRemove:()=>e.set(u(f,[`mcp`,t],void 0))},`mcp-${t}`))}function x(r){let i=u(f,[`browser`,`providers`,r],void 0);g===r&&(i=u(i,[`browser`,`provider`],`local`)),e.set(i),n({...t,[r]:null})}function S(e){if(e.kind===`source`){let t=Wr.find(t=>t.id===e.id);s({step:`form`,entry:e,mode:`add`,name:e.id,from:e.id,value:Object.fromEntries(t.fields.filter(e=>e.type===`var`&&e.default).map(e=>[e.key,e.default]))})}else e.kind===`grid`?s({step:`form`,entry:e,mode:`add`,name:e.id,from:e.id,value:hi[e.id],useGrid:g===`local`}):e.kind===`teams`?s({step:`form`,entry:e,mode:`add`,name:``,from:``,value:{teams:{webhook_env:`TEAMS_WEBHOOK_URL`},on:[`suite_failed`,`job_failed`]}}):e.kind===`email`?s({step:`form`,entry:e,mode:`add`,name:``,from:``,value:{email:{port:587},on:[`suite_failed`,`job_failed`]}}):s({step:`form`,entry:e,mode:`add`,name:``,from:``,value:{url:``}})}function ee(i){let a=i.entry.kind;if(a===`source`)e.set(u(f,Wr.find(e=>e.id===i.entry.id).base,i.value));else if(a===`grid`){let a=i.entry.id,o=u(f,[`browser`,`providers`,a],r[a]);i.useGrid?o=u(o,[`browser`,`provider`],a):g===a&&(o=u(o,[`browser`,`provider`],`local`)),e.set(o),n({...t,[a]:i.value})}else{let t=a===`mcp`?[`mcp`]:[`notify`,`channels`],n=f;i.mode===`edit`&&i.from!==i.name&&(n=u(n,[...t,i.from],void 0)),e.set(u(n,[...t,i.name],i.value))}s(null)}let te=bi[a],C=te.filter(e=>b[e].length),T=a===`mcp`?`Add an MCP server`:a===`notifications`?`Add a channel`:`Add an integration`,ne=a===`mcp`?`No other MCP servers. The test case systems' own MCP servers are set with each system under Integrations.`:a===`notifications`?`No channels yet: add a Teams channel or an email list, and pick the events it gets.`:`Nothing connected yet.`;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,L.jsx)(`p`,{className:`m-0 max-w-[60ch] text-sm text-muted`,children:C.length?a===`mcp`?`Their tools show to ForgeQE's agent as <name>_<tool>. Secrets are {env:NAME} references, never values.`:a===`notifications`?`Each channel gets the events it picks.`:`Connected to ForgeQE.`:ne}),(0,L.jsxs)(c,{onClick:()=>a===`mcp`?S(_(`mcp`)):s({step:`catalog`}),children:[(0,L.jsx)(dn,{size:18,"aria-hidden":`true`}),T]})]}),C.map(e=>(0,L.jsxs)(`div`,{children:[te.length>1&&(0,L.jsx)(P,{children:e}),b[e]]},e)),a===`notifications`&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(P,{children:`Links in alerts`}),(0,L.jsx)(qe,{def:{key:`notify.report_url`,label:`Where reports are published`,help:`Teams and email alerts link each report there.`,type:`url`,placeholder:`https://reports.example.com/forgeqe`},edit:e,base:[]})]}),a===`integrations`&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(P,{children:`Results and bugs`}),(0,L.jsx)(qe,{def:{key:`sources.write_back`,label:`Post results back`,help:`To the system each test case came from.`,type:`switch`,default:!0},edit:e,base:[]}),(0,L.jsx)(P,{help:Gr.help,children:(0,L.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,L.jsx)(ft,{size:18,"aria-hidden":`true`}),Gr.title]})}),(0,L.jsx)(j,{defs:Gr.fields,edit:e,base:Gr.base})]}),(0,L.jsx)(Si,{panel:o,setPanel:s,isOn:y,onPick:S,onApply:ee,vars:p,taken:(e,t)=>t in(e===`mcp`?h:m),groups:te})]})}function Si({panel:e,setPanel:t,isOn:n,onPick:r,onApply:i,vars:a,taken:o,groups:s}){let l=Te(),[u,d]=(0,I.useState)({busy:!1}),f=e?.step===`form`?`${e.entry.id}/${e.from}`:e?.step||``;(0,I.useEffect)(()=>d({busy:!1}),[f]);let m=()=>{t(null),d({busy:!1})};if(e?.step===`form`){let n=e,r=n.entry.kind,s=e=>t({...n,value:e}),f=r===`teams`||r===`email`||r===`mcp`,h=f&&n.name?_i.test(n.name)?n.name!==n.from&&o(r,n.name)?`Another one has this name.`:``:`Use letters, digits and _ . -`:``,g=r===`mcp`&&F(n.value).command===void 0,v=(!f||n.name&&!h)&&(r!==`mcp`||String(F(n.value)[g?`url`:`command`]||``).trim()),y=n.mode===`add`?`Connect ${n.entry.name}`:`Edit ${f?n.name:n.entry.name}`,b=!(r===`mcp`&&!g);return(0,L.jsxs)(we,{open:!0,onClose:m,title:y,description:`Saved as soon as you connect it. Keys and passwords you type are kept in ${x(l.store)}, never in the settings files.`,footer:(0,L.jsxs)(L.Fragment,{children:[n.mode===`add`&&(0,L.jsx)(c,{onClick:()=>t({step:`catalog`}),children:`Back`}),b&&(0,L.jsx)(c,{onClick:async()=>{d({busy:!0});let e=Object.fromEntries(Object.entries(l.pending).filter(e=>typeof e[1]==`string`));try{let t=await te.test(r,n.entry.id,n.value,e);d({busy:!1,ok:t.ok,message:t.message})}catch(e){d({busy:!1,ok:!1,message:e.message})}},disabled:u.busy,className:`mr-auto`,children:u.busy?`Testing…`:r===`teams`||r===`email`?`Send a test message`:`Test connection`}),!b&&(0,L.jsx)(`span`,{className:`mr-auto`}),(0,L.jsx)(c,{onClick:m,children:`Cancel`}),(0,L.jsx)(c,{variant:`primary`,disabled:!v,onClick:()=>i(n),children:n.mode===`add`?`Connect`:`Done`})]}),children:[(0,L.jsxs)(`div`,{className:`flex items-center gap-3 pt-5 pb-2`,children:[(0,L.jsx)(D,{icon:n.entry.icon,logo:n.entry.logo,size:`lg`}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:n.entry.note})]}),(0,L.jsx)(`div`,{"aria-live":`polite`,children:u.message&&(0,L.jsxs)(`p`,{role:u.ok?`status`:`alert`,className:p(`mt-2 mb-1 flex items-start gap-2 rounded-[12px] px-3 py-2 text-sm`,u.ok?`bg-pass-soft text-pass`:`bg-fail-soft text-fail`),children:[u.ok?(0,L.jsx)(vt,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}):(0,L.jsx)(ne,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}),(0,L.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:u.message})]})}),f&&(0,L.jsx)(T,{label:`Name`,help:h?(0,L.jsx)(`span`,{className:`text-fail`,children:h}):r===`mcp`?`Its tools show as <name>_<tool> to ForgeQE's agent.`:`A short name for the channel, such as qa or release.`,htmlFor:`int-name`,stacked:!0,children:(0,L.jsx)(_,{id:`int-name`,value:n.name,spellCheck:!1,"aria-invalid":!!h,placeholder:r===`mcp`?`xray`:`qa`,onChange:e=>t({...n,name:e.target.value.trim()})})}),r===`source`&&(0,L.jsx)(j,{defs:Wr.find(e=>e.id===n.entry.id).fields,edit:{value:n.value,set:s,vars:a},base:[],stacked:!0}),r===`grid`&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(j,{defs:mi[n.entry.id],edit:{value:n.value,set:s,vars:a},base:[`remote`],stacked:!0}),(0,L.jsxs)(`label`,{className:`mt-2 flex min-h-11 cursor-pointer items-center gap-3 text-sm`,children:[(0,L.jsx)(`input`,{type:`checkbox`,checked:!!n.useGrid,onChange:e=>t({...n,useGrid:e.target.checked}),className:`size-4 accent-accent`}),`Run browser tests here by default`]})]}),(r===`teams`||r===`email`)&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Ci,{value:n.value,set:s}),r===`teams`||F(n.value).teams?(0,L.jsx)(qe,{def:{key:`teams.webhook_env`,label:`Webhook variable`,help:`The address of a Teams Workflows webhook (post to a channel when a webhook request is received). It is a secret, so it is kept in your credential store.`,type:`var`,placeholder:`TEAMS_WEBHOOK_URL`},edit:{value:n.value,set:s,vars:a},base:[],stacked:!0}):null,r===`email`||F(n.value).email?(0,L.jsx)(j,{defs:gi,edit:{value:n.value,set:s,vars:a},base:[`email`],stacked:!0}):null]}),r===`mcp`&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`fieldset`,{className:`m-0 border-0 p-0 py-3`,children:[(0,L.jsx)(`legend`,{className:`mb-2 font-medium`,children:`Where it runs`}),[[!0,`A server at an address`],[!1,`A command on this machine`]].map(([e,t])=>(0,L.jsxs)(`label`,{className:`flex min-h-10 cursor-pointer items-center gap-3 text-sm`,children:[(0,L.jsx)(`input`,{type:`radio`,name:`mcp-kind`,checked:g===e,onChange:()=>s(e?{url:``}:{command:``}),className:`size-4 accent-accent`}),t]},String(e)))]}),g?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(qe,{def:{key:`url`,label:`Address`,type:`url`,placeholder:`https://api.githubcopilot.com/mcp/`},edit:{value:n.value,set:s,vars:a},base:[],stacked:!0}),(0,L.jsx)(wi,{value:n.value,set:s,vars:a})]}):(0,L.jsx)(qe,{def:{key:`command`,label:`Command`,help:`Started by ForgeQE's agent runtime. Name secrets as {env:NAME}, never their values.`,type:`path`,placeholder:`npx -y @triparc/xray-mcp`},edit:{value:n.value,set:s,vars:a},base:[],stacked:!0})]})]})}return(0,L.jsx)(we,{open:e?.step===`catalog`,onClose:m,title:`Add an integration`,description:`Pick a service to connect.`,footer:(0,L.jsx)(c,{onClick:m,children:`Close`}),children:s.map(e=>(0,L.jsxs)(`div`,{className:`pt-4`,children:[(0,L.jsx)(`h3`,{className:`m-0 mb-1 text-sm font-medium text-muted`,children:e}),pi.filter(t=>t.group===e).map(e=>{let t=!e.many&&n(e);return(0,L.jsxs)(`button`,{type:`button`,disabled:t,onClick:()=>r(e),className:p(`flex min-h-14 w-full items-center gap-3 rounded-[12px] border-0 bg-transparent px-2 py-2 text-left text-ink`,t?`cursor-default`:`cursor-pointer hover:bg-surface-muted`),children:[(0,L.jsx)(D,{icon:e.icon,logo:e.logo}),(0,L.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:e.note})]}),(0,L.jsx)(`span`,{className:p(`text-[13px]`,t?`text-pass`:`text-accent`),children:t?`Connected`:e.many?`Add`:`Connect`})]},e.id)})]},e))})}function Ci({value:e,set:t}){let n=Array.isArray(e.on)?e.on.map(String):[];return(0,L.jsxs)(`fieldset`,{className:`m-0 border-0 p-0 py-3`,children:[(0,L.jsx)(`legend`,{className:`mb-2 font-medium`,children:`Tell it when`}),(0,L.jsx)(`div`,{className:`grid grid-cols-1 gap-x-4 sm:grid-cols-2`,children:Kr.map(([r,i])=>(0,L.jsxs)(`label`,{className:`flex min-h-10 cursor-pointer items-center gap-2 text-sm`,children:[(0,L.jsx)(`input`,{type:`checkbox`,checked:n.includes(r),onChange:i=>t({...e,on:i.target.checked?[...n,r]:n.filter(e=>e!==r)}),className:`size-4 accent-accent`}),i]},r))})]})}function wi({value:e,set:t,vars:n}){let r=String(F(e.headers).Authorization||``),i=/\{env:([A-Za-z_][A-Za-z0-9_]*)\}/.exec(r)?.[1]||``;return(0,L.jsx)(qe,{def:{key:`token`,label:`Token`,help:`Sent as a bearer token. Leave it empty for none.`,type:`var`,placeholder:`MCP_TOKEN`},edit:{value:{token:i},set:n=>{let r=String(n.token||``),i={...F(e.headers)};r?i.Authorization=`Bearer {env:${r}}`:delete i.Authorization,t(Object.keys(i).length?{...e,headers:i}:(({headers:e,...t})=>t)(e))},vars:n},base:[],stacked:!0})}var Ti=[{key:`checks`,label:`Checks`,help:`Test case sources, comma separated: files or folders, jira:…, ado:…, testrail:…`,type:`list`,placeholder:`checks/smoke.yaml, jira:SHOP-12`},{key:`every`,label:`How often`,help:`30s, 15m, 1h or 1h30m; at least 10s.`,type:`text`,default:`15m`},{key:`replay`,label:`Checking a recorded run`,help:`Verify: one model call per check confirms the result. Trust: none.`,type:`select`,default:`verify`,options:[{value:`verify`,label:`Verify`},{value:`trust`,label:`Trust`}]},{key:`parallel`,label:`Checks at once`,type:`number`,default:1},{key:`write_back`,label:`Post each round's results`,help:`To the system each check came from.`,type:`switch`,default:!1}],Ei=[{key:`fail_after`,label:`Failing rounds before the first alert`,help:`2 or more rides out a flaky run.`,type:`number`,default:1},{key:`remind_every`,label:`Remind while it keeps failing`,help:`Every 2h, for example. Empty: never.`,type:`text`,placeholder:`2h`},{key:`report_url`,label:`Where rounds are published`,help:`Alerts link each round's report there.`,type:`url`,placeholder:`https://reports.example.com/monitor`},{key:`keep`,label:`Rounds kept`,help:`Older round folders are deleted.`,type:`number`,default:100},{key:`out_dir`,label:`Round folder`,help:`Rounds and state.json: which checks are failing, and since when.`,type:`path`,default:`./.forgeqe/reports/monitor`}];function Di({kind:e,settings:t}){let n=Te(),[r,i]=(0,I.useState)({busy:!1});return(0,L.jsxs)(`div`,{className:`flex flex-col gap-2 py-2`,children:[(0,L.jsx)(c,{size:`sm`,className:`self-start`,disabled:r.busy,onClick:async()=>{i({busy:!0});let r=Object.fromEntries(Object.entries(n.pending).filter(e=>typeof e[1]==`string`));try{let n=await te.test(e,e,t,r);i({busy:!1,ok:n.ok,message:n.message})}catch(e){i({busy:!1,ok:!1,message:e.message})}},children:r.busy?`Sending…`:`Send a test message`}),(0,L.jsx)(`div`,{"aria-live":`polite`,children:r.message&&(0,L.jsxs)(`p`,{role:r.ok?`status`:`alert`,className:p(`m-0 flex items-start gap-2 rounded-[12px] px-3 py-2 text-sm`,r.ok?`bg-pass-soft text-pass`:`bg-fail-soft text-fail`),children:[r.ok?(0,L.jsx)(vt,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}):(0,L.jsx)(ne,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}),(0,L.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:r.message})]})})]})}function Oi({edit:e}){let n=F(w(e.value,[`monitor`,`alerts`])),r=(t,n)=>e.set(u(e.value,[`monitor`,`alerts`,t],n));return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`p`,{className:`mt-0 mb-2 text-sm text-muted`,children:[`Start it with `,(0,L.jsx)(`code`,{className:`rounded-md bg-surface-strong px-1.5 py-0.5 font-mono text-[13px]`,children:`forgeqe monitor`}),`, or as a schedule.`]}),(0,L.jsx)(P,{first:!0,children:`What runs`}),(0,L.jsx)(j,{defs:Ti,edit:e,base:[`monitor`]}),(0,L.jsx)(P,{children:`When to alert`}),(0,L.jsx)(j,{defs:Ei,edit:e,base:[`monitor`]}),(0,L.jsx)(P,{help:`The monitor's own alerts: when a check starts failing, keeps failing, or recovers.`,children:`Alerts`}),(0,L.jsx)(T,{label:`Microsoft Teams`,help:`A channel's Workflows webhook.`,children:(0,L.jsx)(t,{checked:!!n.teams,onChange:e=>r(`teams`,e?{webhook_env:`TEAMS_MONITOR_WEBHOOK_URL`}:void 0),label:`Alert in Microsoft Teams`})}),!!n.teams&&(0,L.jsxs)(`div`,{className:`rounded-[14px] bg-surface-muted px-4 pb-2`,children:[(0,L.jsx)(qe,{def:{key:`teams.webhook_env`,label:`Webhook address`,help:`Kept in your credential store.`,type:`var`,placeholder:`TEAMS_MONITOR_WEBHOOK_URL`},edit:e,base:[`monitor`,`alerts`],stacked:!0}),(0,L.jsx)(Di,{kind:`teams`,settings:{teams:F(n.teams)}})]}),(0,L.jsx)(T,{label:`Email`,help:`The same alerts by email.`,children:(0,L.jsx)(t,{checked:!!n.email,onChange:e=>r(`email`,e?{port:587}:void 0),label:`Alert by email`})}),!!n.email&&(0,L.jsxs)(`div`,{className:`rounded-[14px] bg-surface-muted px-4 pb-2`,children:[(0,L.jsx)(j,{defs:gi,edit:e,base:[`monitor`,`alerts`,`email`],stacked:!0}),(0,L.jsx)(Di,{kind:`email`,settings:{email:F(n.email)}})]})]})}var ki=[`llm.models_file`,`llm.active`,`llm.routing`,`llm.fallback`,`llm.routes.*`,`environments.file`,`environments.dir`,`environments.default`,`logins.*.url`,`logins.*.domains`,`logins.*.username_env`,`logins.*.password_env`,`logins.*.totp_env`,`logins.*.save_session`,`browser.providers.browserstack`,`browser.providers.testmu`,`notify.report_url`,`notify.channels.*.teams`,`notify.channels.*.email`,`notify.channels.*.on`,`mcp.*.url`,`mcp.*.headers`,`mcp.*.command`,`mcp.*.env`,...[`checks`,`every`,`replay`,`parallel`,`write_back`,`fail_after`,`remind_every`,`report_url`,`keep`,`out_dir`,`alerts.teams.webhook_env`,`alerts.email.host`,`alerts.email.port`,`alerts.email.username_env`,`alerts.email.password_env`,`alerts.email.from`,`alerts.email.to`].map(e=>`monitor.${e}`),...[`enabled`,`external`,`dirs`,`browser_max_chars`,`disable`].map(e=>`skills.${e}`),...[`run`,`day`,`month`,`currency`].map(e=>`budget.${e}`),`export.format`];[...(e=>e.flatMap(e=>e.fields.map(t=>[...e.base,t.key].join(`.`))))([...zr,...Br,...Vr,...Yr,...Hr,...Ur,...Zr,...Qr,...$r,...qr,Gr]),...Wr.flatMap(e=>e.fields.map(t=>[...e.base,t.key].join(`.`))),...ei.map(e=>`containers.services.*.${e.key}`),...ti.map(e=>`databases.*.${e.key}`),...Jr.map(e=>`bi.datasets.*.${e.key}`),...ki];var Ai=(e,t)=>t.flatMap(t=>t.fields.map(n=>({section:e,label:n.label,key:[...t.base,n.key].join(`.`)}))),ji=(e,t,n)=>n.map(n=>({section:e,label:n.label,key:`${t}.*.${n.key}`})),Mi=[...Ai(`browser`,zr),...Ai(`tests`,Br),...Ai(`runs`,[...Vr,...qr]),...ji(`runs`,`bi.datasets`,Jr),...Ai(`parallel`,Yr),...Ai(`quality`,Hr),...Ai(`agents`,Ur),...Ai(`mobile`,[...Zr,...Qr]),...Ai(`containers`,$r),...ji(`containers`,`containers.services`,ei),...ji(`databases`,`databases`,ti),...Ai(`integrations`,[Gr]),...Wr.flatMap(e=>e.fields.map(t=>({section:`integrations`,label:`${e.name}: ${t.label}`,key:[...e.base,t.key].join(`.`)}))),{section:`integrations`,label:`Post results back`,key:`sources.write_back`},{section:`integrations`,label:`Remote browser grids`,key:`browser.providers`},{section:`models`,label:`Models file`,key:`llm.models_file`},{section:`models`,label:`Profile in use`,key:`llm.active`},{section:`routing`,label:`Routing`,key:`llm.routing`},{section:`routing`,label:`Fall back to a working model`,key:`llm.fallback`},{section:`routing`,label:`Models per area of work`,key:`llm.routes`},{section:`environments`,label:`Environments file`,key:`environments.file`},{section:`environments`,label:`Environments folder`,key:`environments.dir`},{section:`environments`,label:`Active environment`,key:`environments.default`},{section:`signins`,label:`Sign-ins`,key:`logins`},{section:`notifications`,label:`Teams and email channels`,key:`notify.channels`},{section:`notifications`,label:`Where reports are published`,key:`notify.report_url`},{section:`mcp`,label:`MCP servers`,key:`mcp`},{section:`monitor`,label:`Monitor checks, schedule and alerts`,key:`monitor`},{section:`monitor`,label:`Monitor alerts by Teams or email`,key:`monitor.alerts`},{section:`skills`,label:`Skills`,key:`skills`},{section:`tokenomics`,label:`Spending budgets`,key:`budget`},{section:`about`,label:`Version and updates`,key:`forgeqe update`},{section:`about`,label:`Guides: user guide, how to use, architecture`,key:`forgeqe docs`},{section:`notifications`,label:`Send a test notification`,key:`forgeqe notify test`},{section:`agents`,label:`Check the agent's domain knowledge`,key:`forgeqe eval domain`},{section:`generated`,label:`Generated code still in the repository`,key:`forgeqe generated`}],Ni=`font-mono text-[13px] [overflow-wrap:anywhere]`;function z({ok:e,children:t}){return(0,L.jsxs)(`p`,{role:e?`status`:`alert`,className:p(`m-0 flex items-start gap-2 rounded-[12px] px-3 py-2 text-sm leading-relaxed`,e?`bg-pass-soft text-pass`:`bg-fail-soft text-fail`),children:[e?(0,L.jsx)(vt,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}):(0,L.jsx)(gt,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}),(0,L.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:t})]})}function B({open:e,start:t,onClose:n,onPick:r}){let[i,a]=(0,I.useState)(null),[o,s]=(0,I.useState)(``),[l,u]=(0,I.useState)(``),[d,f]=(0,I.useState)(null),[p,h]=(0,I.useState)(!1),g=(0,I.useCallback)(async e=>{u(``);try{let t=await m.folders(e);a(t),s(t.path)}catch(e){u(e.message)}},[]);(0,I.useEffect)(()=>{e?g(t||void 0):(f(null),u(``))},[e,t,g]);let v=async()=>{if(i&&d!==null){u(``);try{let e=await m.newFolder(i.path,d);a(e),s(e.path),f(null)}catch(e){u(e.message)}}};return(0,L.jsxs)(we,{open:e,onClose:n,wide:!0,title:`Choose the project folder`,description:`The folder of the app or test repository ForgeQE works on. Its settings, reports and logs are kept in it.`,footer:(0,L.jsxs)(L.Fragment,{children:[i?.project&&(0,L.jsx)(`span`,{className:`mr-auto self-center text-sm text-pass`,children:`ForgeQE is set up here`}),(0,L.jsx)(c,{onClick:n,children:`Cancel`}),(0,L.jsx)(c,{variant:`primary`,disabled:!i||p,onClick:async()=>{h(!0);try{await r(i.path)}catch(e){u(e.message)}finally{h(!1)}},children:`Use this folder`})]}),children:[(0,L.jsxs)(`form`,{className:`flex gap-2 pt-5`,onSubmit:e=>{e.preventDefault(),g(o.trim())},children:[(0,L.jsx)(`label`,{htmlFor:`folder-path`,className:`sr-only`,children:`Folder path`}),(0,L.jsx)(_,{id:`folder-path`,value:o,spellCheck:!1,onChange:e=>s(e.target.value),className:`font-mono text-[13px]`,placeholder:`/Users/you/shop`}),(0,L.jsx)(c,{type:`submit`,children:`Go`})]}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2 pt-3`,children:[(0,L.jsxs)(c,{size:`sm`,disabled:!i?.parent,onClick:()=>i?.parent&&void g(i.parent),children:[(0,L.jsx)(it,{size:16,"aria-hidden":`true`}),`Up`]}),(0,L.jsxs)(c,{size:`sm`,onClick:()=>void g(i?.home),children:[(0,L.jsx)(Wt,{size:16,"aria-hidden":`true`}),`Home`]}),(0,L.jsxs)(c,{size:`sm`,disabled:!i,onClick:()=>f(``),children:[(0,L.jsx)(Rt,{size:16,"aria-hidden":`true`}),`New folder`]})]}),d!==null&&(0,L.jsxs)(`form`,{className:`flex flex-wrap gap-2 pt-3`,onSubmit:e=>{e.preventDefault(),v()},children:[(0,L.jsx)(`label`,{htmlFor:`new-folder`,className:`sr-only`,children:`New folder's name`}),(0,L.jsx)(_,{id:`new-folder`,autoFocus:!0,value:d,placeholder:`my-shop-tests`,onChange:e=>f(e.target.value),className:`flex-[1_1_200px]`}),(0,L.jsx)(c,{type:`submit`,variant:`primary`,disabled:!d.trim(),children:`Make it`}),(0,L.jsx)(c,{onClick:()=>f(null),children:`Cancel`})]}),(0,L.jsx)(`div`,{"aria-live":`polite`,className:`pt-3`,children:l&&(0,L.jsx)(z,{ok:!1,children:l})}),i&&(0,L.jsxs)(`ul`,{"aria-label":`Folders in ${i.path}`,className:`m-0 mt-2 flex list-none flex-col p-0`,children:[i.folders.length===0&&(0,L.jsx)(`li`,{className:`border-t border-line-soft py-4 text-sm text-muted`,children:`No folders in here.`}),i.folders.map(e=>(0,L.jsx)(`li`,{className:`border-t border-line-soft`,children:(0,L.jsxs)(`button`,{type:`button`,onClick:()=>void g(e.path),className:`flex min-h-12 w-full cursor-pointer items-center gap-3 border-0 bg-transparent px-2 text-left text-ink hover:bg-surface-muted`,children:[e.project?(0,L.jsx)(It,{size:18,"aria-hidden":`true`,className:`flex-none text-pass`}):(0,L.jsx)(xe,{size:18,"aria-hidden":`true`,className:`flex-none text-muted`}),(0,L.jsx)(`span`,{className:`min-w-0 flex-1 [overflow-wrap:anywhere]`,children:e.name}),e.project&&(0,L.jsx)(Ve,{tone:`pass`,children:`ForgeQE`})]})},e.path))]})]})}function Pi({state:e,onState:t}){let[n,r]=(0,I.useState)(!1),[i,a]=(0,I.useState)({busy:!1}),[o,l]=(0,I.useState)(null),[u,d]=(0,I.useState)(``),[f,g]=(0,I.useState)(!1),_=(0,I.useCallback)(()=>{d(``),m.machine().then(l,e=>d(e.message))},[]);(0,I.useEffect)(_,[_,e.project,e.ready]);let v=!!o?.job?.running;(0,I.useEffect)(()=>{if(!v)return;let e=setInterval(_,1500);return()=>clearInterval(e)},[v,_]);let y=async e=>{let n=await m.open(e);a({busy:!1}),t(n),r(!1)},b=o?.job,x=o?.checks.filter(e=>!/^(Models?\b|Copilot sign-in)/.test(e.name))||[],S=x.filter(e=>!e.ok&&/forgeqe setup/.test(e.fix||``));return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(P,{first:!0,help:`The folder of the app or test repository you test. ForgeQE keeps its settings, reports and logs there.`,children:`1. Project folder`}),(0,L.jsxs)(`div`,{className:`flex min-h-[68px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-3`,children:[(0,L.jsx)(D,{icon:e.ready?It:xe}),(0,L.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_260px] flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:p(`font-medium`,Ni),children:e.project}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:e.ready?`ForgeQE is set up here (${e.config}).`:`ForgeQE is not set up in this folder yet.`})]}),(0,L.jsx)(c,{onClick:()=>r(!0),children:e.ready?`Open another folder`:`Choose a folder`})]}),e.recent.length>0&&(0,L.jsx)(`ul`,{"aria-label":`Recent projects`,className:`m-0 flex list-none flex-col p-0`,children:e.recent.map(e=>(0,L.jsxs)(`li`,{className:`flex min-h-[56px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-2 pl-[52px]`,children:[(0,L.jsx)(`span`,{className:p(`min-w-0 flex-[1_1_260px] text-ink-2`,Ni),children:e}),(0,L.jsx)(c,{size:`sm`,"aria-label":`Open ${e}`,onClick:()=>void y(e).catch(e=>d(e.message)),children:`Open`})]},e))}),(0,L.jsx)(P,{help:`forgeqe.yaml, llms.json, env.yaml and a .forgeqe folder with prompts, skills and guardrails to change. Files already there are kept.`,children:`2. ForgeQE in this folder`}),(0,L.jsx)(T,{label:e.ready?`Set up`:`Not set up yet`,help:e.ready?`${e.config} is in this folder, so every section of Settings is open.`:`Until it is, the other sections of Settings stay locked: there is nothing for them to change.`,children:e.ready?(0,L.jsx)(Ve,{tone:`pass`,children:`Done`}):(0,L.jsx)(c,{variant:`primary`,disabled:i.busy,onClick:async()=>{a({busy:!0});try{let e=await m.init();a({busy:!1,result:e}),t(e.setup)}catch(e){a({busy:!1,error:e.message})}},children:i.busy?`Setting up…`:`Set up this folder`})}),(0,L.jsxs)(`div`,{"aria-live":`polite`,className:`flex flex-col gap-2`,children:[i.error&&(0,L.jsx)(z,{ok:!1,children:i.error}),i.result&&(0,L.jsxs)(z,{ok:!i.result.failed.length,children:[i.result.created.length?`Made ${i.result.created.join(`, `)}.`:`Nothing new was needed.`,i.result.failed.length>0&&` Could not write: ${i.result.failed.join(`; `)}.`]})]}),(0,L.jsx)(P,{help:`What ForgeQE runs with: its browser engine and the agent runtime. Installing them needs no admin rights${o?`. ForgeQE ${o.version}`:``}.`,children:`3. This computer`}),u&&(0,L.jsx)(z,{ok:!1,children:u}),!o&&!u&&(0,L.jsx)(`p`,{role:`status`,className:`m-0 border-t border-line-soft py-5 text-sm text-muted`,children:`Checking this computer…`}),o&&(0,L.jsx)(`ul`,{"aria-label":`What this computer has`,className:`m-0 flex list-none flex-col p-0`,children:x.map(e=>(0,L.jsxs)(`li`,{className:`flex min-h-[56px] items-start gap-3 border-t border-line-soft py-3`,children:[e.ok?(0,L.jsx)(vt,{size:18,"aria-label":`Ready`,className:`mt-0.5 flex-none text-pass`}):(0,L.jsx)(gt,{size:18,"aria-label":`Missing`,className:`mt-0.5 flex-none text-warn`}),(0,L.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,L.jsxs)(`span`,{className:`text-sm text-muted [overflow-wrap:anywhere]`,children:[e.detail,!e.ok&&e.fix&&(0,L.jsxs)(L.Fragment,{children:[`. `,/forgeqe setup/.test(e.fix)?`Install what's missing, below, sets it up.`:e.fix]})]})]})]},e.name))}),o&&(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 border-t border-line-soft py-4`,children:[(0,L.jsx)(c,{variant:S.length?`primary`:`outline`,disabled:v||f,onClick:async()=>{g(!0);try{await m.run(),_()}catch(e){d(e.message)}finally{g(!1)}},children:v?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ae,{state:`handing`,px:16}),`Installing…`]}):S.length?`Install what's missing`:`Check and repair`}),(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:`Runs forgeqe setup. The first time it downloads a few hundred MB and takes a few minutes.`})]}),b&&(0,L.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[!b.running&&(0,L.jsx)(z,{ok:!!b.ok,children:b.ok?`forgeqe setup finished.`:`forgeqe setup stopped with a problem. The last lines below say what.`}),(0,L.jsx)(`pre`,{"aria-label":`forgeqe setup output`,"aria-live":`polite`,className:`m-0 max-h-[280px] overflow-auto rounded-[12px] bg-surface-muted px-4 py-3 font-mono text-[12px] leading-relaxed whitespace-pre-wrap text-ink-2 [overflow-wrap:anywhere]`,children:b.lines.length?b.lines.join(`
|
|
19
|
-
`):`Starting…`})]}),(0,L.jsx)(P,{help:`At least one model with its key or sign-in, for the agents to think with.`,children:`4. A model`}),(0,L.jsx)(T,{label:o?.model.ready?`Ready`:`Not yet`,help:o?.model.detail||``,children:e.ready?(0,L.jsx)(`a`,{className:h({variant:o?.model.ready?`outline`:`primary`}),href:s(`settings`,`models`),children:o?.model.ready?`Models`:`Add a model`}):(0,L.jsx)(`span`,{className:`text-sm text-muted`,children:`After step 2`})}),(0,L.jsx)(B,{open:n,start:e.project,onClose:()=>r(!1),onPick:y})]})}var Fi={"notify-test":[`Sending a test card`,`Sent a test card`,`working`],"update-check":[`Looking for a new version`,`Looked for a new version`,`searching`],update:[`Updating ForgeQE`,`Updated ForgeQE`,`working`],"eval-domain":[`Checking the agent's domain knowledge`,`Checked the agent's domain knowledge`,`thinking`]};function Ii(){let[e,t]=(0,I.useState)(null),[n,r]=(0,I.useState)(``),i=(0,I.useCallback)(()=>b.view().then(t,e=>r(e.message)),[]);(0,I.useEffect)(()=>void i(),[i]);let a=!!e?.job?.running;return(0,I.useEffect)(()=>{if(!a)return;let e=setInterval(i,1e3);return()=>clearInterval(e)},[a,i]),{view:e,error:n,run:async(e,t={})=>{r(``);try{await b.run(e,t),i()}catch(e){r(e.message)}},running:a,load:i}}function Li({job:e,kinds:t,onStop:n}){let r=(0,I.useRef)(null);if((0,I.useEffect)(()=>{r.current&&(r.current.scrollTop=r.current.scrollHeight)},[e?.lines.length]),!e||!t.includes(e.kind))return null;let[i,a,o]=Fi[e.kind];return(0,L.jsxs)(`div`,{className:`mt-3 flex flex-col gap-2 rounded-[12px] border border-line-soft p-3`,children:[(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,L.jsx)(`span`,{className:`flex-1 text-sm font-medium`,children:e.running?i:a}),(0,L.jsx)(Ve,{tone:e.running?`running`:e.exitCode===0?`pass`:`fail`,orb:o,children:e.running?`Working`:e.exitCode===0?`Done`:`Did not finish`}),e.running&&(0,L.jsxs)(c,{size:`sm`,onClick:n,className:`border-fail text-fail hover:bg-fail-soft`,children:[(0,L.jsx)(_e,{size:12,fill:`currentColor`,"aria-hidden":`true`}),`Stop`]})]}),(0,L.jsx)(`pre`,{ref:r,className:`m-0 max-h-[260px] overflow-auto rounded-[10px] bg-surface-muted p-3 font-mono text-[12px] leading-relaxed whitespace-pre-wrap text-ink-2`,children:e.lines.join(`
|
|
20
|
-
`)||`Starting…`})]})}function Ri({text:e,note:t,yes:n,onYes:r,onNo:i}){return(0,L.jsxs)(`div`,{role:`alertdialog`,"aria-label":e,className:`mt-3 flex flex-col gap-2 rounded-[12px] border border-warn bg-warn-soft p-3`,children:[(0,L.jsx)(`span`,{className:`text-sm font-medium`,children:e}),(0,L.jsx)(`span`,{className:`text-[13px] text-ink-2`,children:t}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,L.jsx)(c,{variant:`primary`,onClick:r,children:n}),(0,L.jsx)(c,{onClick:i,children:`Not now`})]})]})}function zi(){let{view:e,error:t,run:n,running:r}=Ii(),[i,a]=(0,I.useState)(!1),o=e?.job,s=o?.kind===`update-check`&&!o.running?o.lines.join(`
|
|
21
|
-
`):``,l=/installs (\d[\w.-]*)/.exec(s)?.[1];return(0,L.jsxs)(L.Fragment,{children:[t&&(0,L.jsx)(`p`,{className:`m-0 mb-3 rounded-[12px] bg-fail-soft px-3 py-2 text-sm text-fail`,children:t}),(0,L.jsx)(T,{label:`Version`,help:l?`${l} is out.`:s&&/latest/.test(s)?`This is the latest.`:`forgeqe update installs a new one for every forgeqe on this computer (bun, npm, pip).`,className:`border-t-0 pt-0`,children:(0,L.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,L.jsx)(`span`,{className:`font-mono text-[15px]`,children:e?.version??`…`}),(0,L.jsxs)(c,{disabled:r,onClick:()=>void n(`update-check`),children:[(0,L.jsx)(pn,{size:16,"aria-hidden":`true`}),`Check for updates`]}),(0,L.jsxs)(c,{variant:l?`primary`:`outline`,disabled:r,onClick:()=>a(!0),children:[(0,L.jsx)(Ot,{size:16,"aria-hidden":`true`}),`Update`,l?` to ${l}`:``]})]})}),i&&(0,L.jsx)(Ri,{text:`Update ForgeQE${l?` to ${l}`:` to the latest version`} on this computer?`,note:`It replaces every forgeqe on PATH. Restart forgeqe web when it is done; on Windows the update starts once ForgeQE exits.`,yes:`Update`,onYes:()=>{a(!1),n(`update`,{confirmed:!0})},onNo:()=>a(!1)}),(0,L.jsx)(Li,{job:o,kinds:[`update-check`,`update`],onStop:()=>void b.stop()}),(0,L.jsx)(P,{children:`Guides`}),[[`User guide`,`Every feature, with examples, in one page.`,e?.help.guide],[`How to use`,`The full reference: settings, commands and how each feature works.`,e?.help.howTo],[`Architecture`,`How ForgeQE is built: its agents, the engine and where data goes.`,e?.help.architecture]].map(([e,t,n])=>(0,L.jsx)(T,{label:e,help:t,children:(0,L.jsxs)(`a`,{href:n||`#`,target:`_blank`,rel:`noreferrer noopener`,className:`inline-flex min-h-10 items-center gap-2 rounded-full border border-line px-4 text-sm font-medium text-ink no-underline hover:bg-surface-muted hover:text-ink`,children:[(0,L.jsx)(Ee,{size:16,"aria-hidden":`true`}),`Open`]})},e))]})}function Bi(){let{view:e,error:t,run:n,running:r}=Ii(),[i,a]=(0,I.useState)(``);return e?.channels.length?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(P,{help:`A card says it is a test and which events each channel gets; nothing else is sent.`,children:`Send a test`}),(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,L.jsxs)(y,{"aria-label":`Channel`,value:i,onChange:e=>a(e.target.value),className:`w-[220px]`,children:[(0,L.jsx)(`option`,{value:``,children:`Every channel`}),e.channels.map(e=>(0,L.jsx)(`option`,{children:e},e))]}),(0,L.jsxs)(c,{disabled:r,onClick:()=>void n(`notify-test`,i?{channel:i}:{}),children:[(0,L.jsx)(yn,{size:16,"aria-hidden":`true`}),`Send a test`]})]}),t&&(0,L.jsx)(`p`,{className:`m-0 mt-2 text-sm text-fail`,children:t}),(0,L.jsx)(Li,{job:e.job,kinds:[`notify-test`],onStop:()=>void b.stop()})]}):null}function Vi(){let{view:e,error:t,run:n,running:r}=Ii(),[i,a]=(0,I.useState)(``),[o,s]=(0,I.useState)(!1);return e?.evalCases.length?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(P,{help:`Runs stories from ForgeQE's evaluation cases (banking, insurance, lending, privacy) with the domain declared and without, and scores how many domain and regulation expectations the agent's test design meets. It makes model calls for each case.`,children:`Check the agent's domain knowledge`}),(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,L.jsxs)(y,{"aria-label":`Cases`,value:i,onChange:e=>a(e.target.value),className:`w-[320px] max-w-full`,children:[(0,L.jsxs)(`option`,{value:``,children:[`All `,e.evalCases.length,` cases`]}),e.evalCases.map(e=>(0,L.jsx)(`option`,{value:e.id,children:e.title},e.id))]}),(0,L.jsxs)(c,{disabled:r,onClick:()=>s(!0),children:[(0,L.jsx)(Pt,{size:16,"aria-hidden":`true`}),`Run the check`]})]}),o&&(0,L.jsx)(Ri,{text:`Run ${i?`one case`:`all ${e.evalCases.length} cases`} of the domain check?`,note:`Each case is a model session with the domain and one without, plus a judge; it takes a few minutes and costs tokens.`,yes:`Run it`,onYes:()=>{s(!1),n(`eval-domain`,{confirmed:!0,...i?{only:[i]}:{}})},onNo:()=>s(!1)}),t&&(0,L.jsx)(`p`,{className:`m-0 mt-2 text-sm text-fail`,children:t}),(0,L.jsx)(Li,{job:e.job,kinds:[`eval-domain`],onStop:()=>void b.stop()})]}):null}function Hi(){let[e,t]=(0,I.useState)(null),[n,r]=(0,I.useState)(``);if((0,I.useEffect)(()=>{b.generated().then(t,e=>r(e.message))},[]),n)return(0,L.jsx)(`p`,{className:`m-0 rounded-[12px] bg-fail-soft px-3 py-2 text-sm text-fail`,children:n});if(!e)return(0,L.jsx)(`p`,{className:`m-0 text-sm text-muted`,children:`Loading…`});let i=(e,t)=>t?`${Math.round(e/t*100)}%`:`–`;return e.runs?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`p`,{className:`mt-0 mb-4 text-sm text-muted`,children:[`In `,(0,L.jsx)(`span`,{className:`font-mono text-[13px]`,children:e.repo}),`, from .forgeqe/generated.jsonl: every line ForgeQE added, checked against the files as they are now.`]}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-3`,children:[(0,L.jsx)(M,{label:`Lines written`,value:e.written.toLocaleString(),note:`${ce(e.files,`file`)}: ${e.created} created, ${e.edited} edited`}),(0,L.jsx)(M,{label:`Still in the code`,value:i(e.present,e.written),note:`${e.present.toLocaleString()} lines`}),(0,L.jsx)(M,{label:`Share of those files`,value:i(e.present,e.totalLines),note:`of ${e.totalLines.toLocaleString()} lines`}),(0,L.jsx)(M,{label:`Files it created`,value:String(e.headers.unchanged),note:`as written; ${e.headers.changed} changed, ${e.headers.removed} gone`})]}),(0,L.jsx)(P,{children:`By run, newest first`}),(0,L.jsx)(Oe,{label:`Runs that wrote code`,head:[`Run`,`Files`,`Lines still there`],children:e.byRun.map(e=>(0,L.jsx)(ze,{cells:[(0,L.jsxs)(`span`,{className:`flex flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{className:`font-mono text-[12px]`,children:e.fq}),(0,L.jsxs)(`span`,{className:`text-[13px] text-muted [overflow-wrap:anywhere]`,children:[e.run,e.test?` · ${e.test}`:``]})]},`r`),e.files,`${e.present} of ${e.written}`]},e.fq))}),e.missing.length>0&&(0,L.jsxs)(`p`,{className:`m-0 mt-3 text-[13px] text-muted [overflow-wrap:anywhere]`,children:[`Not found now: `,e.missing.slice(0,10).join(`, `)]})]}):(0,L.jsxs)(`p`,{className:`m-0 flex items-center gap-2 text-sm text-muted`,children:[(0,L.jsx)(Mt,{size:16,"aria-hidden":`true`}),`ForgeQE has not written code in `,(0,L.jsx)(`span`,{className:`font-mono text-[13px]`,children:e.repo}),` yet.`]})}var Ui=[{id:`setup`,group:`Start`,icon:hn,label:`Set up`,file:``,intro:`The project folder ForgeQE works on, ForgeQE in it, and what this computer needs to run it.`},{id:`environments`,group:`General`,icon:Xt,label:`Environments`,file:``,intro:`Where tests run and the apps in each place. The active one is used unless a request names another.`},{id:`browser`,group:`General`,icon:Bt,label:`Browser`,file:`forgeqe.yaml`,intro:`How the browser agent runs: where, how it looks, and how long it may take.`},{id:`signins`,group:`General`,icon:Jt,label:`Sign-ins`,file:`forgeqe.yaml`,intro:`Logins for the apps you test. Passwords are kept in your credential store, and the model only ever sees a placeholder.`},{id:`integrations`,group:`General`,icon:ln,label:`Integrations`,file:`forgeqe.yaml`,intro:`Test case systems and bugs (sources:), and remote browser grids (browser.providers).`},{id:`notifications`,group:`General`,icon:ot,label:`Notifications`,file:`forgeqe.yaml`,intro:`Teams channels and email lists, and the events each one gets (notify:). Monitor alerts are set under Monitor.`},{id:`mcp`,group:`General`,icon:Ce,label:`MCP servers`,file:`forgeqe.yaml`,intro:`More MCP servers whose tools ForgeQE's agent gets (mcp:). Each test case system's own server is set with it under Integrations.`},{id:`models`,group:`AI`,icon:He,label:`Models`,file:`llms.json and forgeqe.yaml`,intro:`Which model the agents use, and where the models file is (llm:). API keys you type are kept in your credential store, never in the settings files.`},{id:`routing`,group:`AI`,icon:_n,label:`Routing`,file:`forgeqe.yaml`,intro:`Which model each area of work gets (llm.routing, llm.routes), and falling back to one that works.`},{id:`skills`,group:`AI`,icon:ve,label:`Skills`,file:`forgeqe.yaml`,intro:`What the agents know how to do: your test conventions, frameworks and apps, as folders with a SKILL.md.`},{id:`prompts`,group:`AI`,icon:he,label:`Prompts`,file:``,intro:`The instructions each agent starts from. Edit one to change how that agent works in this project; reset it to go back to ForgeQE's.`},{id:`guardrails`,group:`AI`,icon:je,label:`Guardrails`,file:`guardrails.md`,intro:`Rules every agent follows, in every chat and schedule.`},{id:`agents`,group:`AI`,icon:ut,label:`Agents`,file:`forgeqe.yaml`,intro:`What the agents know about your product and its rules, where their knowledge and guardrails are, and the tools they get.`},{id:`tests`,group:`Testing`,icon:St,label:`Code`,file:`forgeqe.yaml`,intro:`Writing tests (code:): where passed runs become tests, how hard the coding agent tries, its time limits, and the help it gets.`},{id:`runs`,group:`Testing`,icon:mt,label:`Reports and memory`,file:`forgeqe.yaml`,intro:`Where reports are exported (export:, report:), page memory and replays (memory:, registry:), suites, flaky tests, release readiness, defect analysis, and the project report (bi:).`},{id:`parallel`,group:`Testing`,icon:kn,label:`Parallel execution`,file:`forgeqe.yaml`,intro:`How many browsers, scheduled runs and monitor checks go at once.`},{id:`monitor`,group:`Testing`,icon:Ht,label:`Monitor`,file:`forgeqe.yaml`,intro:`Checks that run on a schedule, and the alerts when one starts failing, keeps failing, or recovers.`},{id:`mobile`,group:`Testing`,icon:Cn,label:`Mobile and desktop`,file:`forgeqe.yaml`,intro:`How Android and iOS apps run (mobile:): Appium or Maestro, devices and device clouds; and how Windows desktop apps replay (desktop:). The apps themselves are in Environments.`},{id:`containers`,group:`Testing`,icon:Et,label:`Containers`,file:`forgeqe.yaml`,intro:`Services for test runs in Docker or Podman (containers:): databases, queues, the API under test, mocks, and the images tests and agents run in.`},{id:`databases`,group:`Testing`,icon:Je,label:`Databases`,file:`forgeqe.yaml`,intro:`Databases the agent may read, and write to after you confirm (databases:), for questions, test data and data flows. An environment can add its own.`},{id:`quality`,group:`Testing`,icon:ke,label:`Quality`,file:`forgeqe.yaml`,intro:`Accessibility, performance, visual and API checks on every page a run visits.`},{id:`registry`,group:`Activity`,icon:Be,label:`Registry`,file:`forgeqe.yaml`,intro:`The plans ForgeQE recorded from passed runs, which it replays without a model, and what each request cost.`},{id:`logs`,group:`Activity`,icon:A,label:`Logs`,file:``,intro:`A log of each chat, run and suite on this machine, for finding out what happened.`},{id:`audit`,group:`Activity`,icon:Ne,label:`Audit`,file:``,intro:`What ForgeQE did and what went wrong: sessions, tool and model calls, runs and errors, and who changed which setting.`},{id:`tokenomics`,group:`Activity`,icon:de,label:`Tokenomics`,file:`forgeqe.yaml`,intro:`Where the tokens and money went, from this project's reports, and the budgets that warn before they run out.`},{id:`generated`,group:`Activity`,icon:Mt,label:`Generated code`,file:``,intro:`How much of the code ForgeQE wrote in the repository is still there, by run (forgeqe generated).`},{id:`files`,group:`Advanced`,icon:ue,label:`Files`,file:``,intro:`Each file as text, for the settings the form does not cover: mobile, containers, databases, BI and defect analysis.`},{id:`about`,group:`Advanced`,icon:Kt,label:`About ForgeQE`,file:``,intro:`The version of ForgeQE on this computer, updating it, and its guides.`}],Wi=[`guardrails`,`skills`,`prompts`],Gi=Ui.filter(e=>!Wi.includes(e.id)),Ki=[...new Set(Gi.map(e=>e.group))],qi={config:`forgeqe.yaml`,models:`llms.json`,environments:`the environment files`,guardrails:`guardrails.md`,grids:`the browser grid files`,secrets:`keys and passwords`};function Ji(e,t){let n=e.paths.base.replace(/[\\/]+$/,``);return t.startsWith(`${n}/`)||t.startsWith(`${n}\\`)?`./${t.slice(n.length+1).replace(/\\/g,`/`)}`:t}function Yi(e){return{config:e.config,models:e.models,environments:e.environments,guardrails:e.guardrails.filter(e=>e.editable).map(e=>e.text),grids:{browserstack:e.grids.browserstack.linked?e.grids.browserstack.value:null,testmu:e.grids.testmu.linked?e.grids.testmu.value:null},secrets:{}}}function Xi({section:e,only:t}){let n=t??e,[r,i]=(0,I.useState)(null),[l,u]=(0,I.useState)(null),[d,f]=(0,I.useState)(``),[h,g]=(0,I.useState)(``),[_,b]=(0,I.useState)(``),[x,S]=(0,I.useState)(!1),[ee,C]=(0,I.useState)(!1),[w,T]=(0,I.useState)(null),ne=(0,I.useCallback)(()=>{f(``),te.settings().then(e=>{i(e),u(Yi(e))},e=>f(e.message))},[]),re=(0,I.useCallback)(()=>{f(``),m.state().then(e=>{T(e),e.ready&&ne()},e=>f(e.message))},[ne]);(0,I.useEffect)(re,[re]);let ie=e=>{e.project===w?.project&&e.ready||(i(null),u(null)),T(e),e.ready&&ne()},E=!!w?.ready;(0,I.useEffect)(()=>{w&&!E&&n!==`setup`?location.replace(s(`settings`,`setup`)):!t&&n&&Wi.includes(n)&&location.replace(s(n))},[w,E,n]);let O=(w&&!E?Ui[0]:Ui.find(e=>e.id===n))||Ui.find(e=>e.id===`models`);(0,I.useEffect)(()=>{b(``),g(``),C(!1)},[O.id]);let se=r?Yi(r):null,ce=e=>!!l&&!!se&&!oe(l[e],se[e]),le=Object.keys(qi).filter(ce);(0,I.useEffect)(()=>{if(!le.length)return;let e=e=>e.preventDefault();return window.addEventListener(`beforeunload`,e),()=>window.removeEventListener(`beforeunload`,e)},[le.length]);let k=e=>({value:l[e],set:t=>{b(``),u(n=>({...n,[e]:t}))},vars:r.variables,...e===`config`?{file:`forgeqe.yaml`}:{}}),ue=(0,I.useRef)(l);ue.current=l;let A=(0,I.useRef)(r);A.current=r;let[j,de]=(0,I.useState)(``),pe=(0,I.useCallback)(async()=>{let e=ue.current,t=A.current;if(!e||!t)return;let n=Yi(t),r=Object.keys(qi).filter(t=>!oe(e[t],n[t]));if(!r.length)return;S(!0),g(``),C(!1);let a=t,o=(t,n)=>u(r=>{if(!r)return r;let i=Yi(t),a={...r};for(let t of Object.keys(qi))if(t===`secrets`){if(!n)continue;a.secrets=Object.fromEntries(Object.entries(r.secrets).filter(([t,n])=>e.secrets[t]!==n))}else(n?oe(r[t],e[t]):oe(r[t],i[t]))&&(a[t]=i[t]);return a});try{for(let i of r)if(i===`secrets`)a=await te.saveSecrets(e.secrets);else if(i===`grids`)for(let[r,i]of Object.entries(e.grids))i&&!oe(i,n.grids[r])&&(a=await te.saveGrid(r,i,t.versions[`grid:${r}`]));else a=i===`guardrails`?await te.saveGuardrails(e.guardrails,t.versions.guardrails):await te.save(i,e[i],t.versions[i]);i(a),o(a,!0),de(``),b(`Saved`)}catch(n){g(n.message),C(n instanceof v&&n.status===409),de(JSON.stringify(e)),a!==t&&(i(a),o(a,!1))}finally{S(!1)}},[]);(0,I.useEffect)(()=>{if(!_)return;let e=setTimeout(()=>b(``),4e3);return()=>clearTimeout(e)},[_]);let he=l?JSON.stringify(l):``;(0,I.useEffect)(()=>{if(!le.length||x||ee||j&&j===he)return;let e=le.every(e=>e===`secrets`),t=setTimeout(pe,e?2e3:1e3);return()=>clearTimeout(t)},[he,x,ee,j]);let ge=async()=>{g(``);try{let e=await te.splitEnvironments();i(e),u(Yi(e)),b(`Each environment is now its own file in environments/. The old file is left as it is; ForgeQE no longer reads it.`)}catch(e){g(e.message)}},_e=async(e,t,n)=>{g(``);try{let a=await te.saveText(e,t,n,r?.versions[e]);return i(a),u(Yi(a)),b(`Saved ${qi[e]}.`),!0}catch(e){return g(e.message),!1}},M=null;if(O.id===`setup`)M=w&&(0,L.jsx)(Pi,{state:w,onState:ie});else if(r&&l){let e=(O.id===`models`||O.id===`routing`?[`models`,`config`]:O.id===`environments`?[`environments`,`config`]:[`files`,`guardrails`,`prompts`,`logs`,`audit`,`generated`,`about`].includes(O.id)?[]:[`config`]).find(e=>r.errors[e]);switch(O.id){case`models`:M=(0,L.jsx)(Ir,{config:k(`config`),models:k(`models`),vars:r.variables});break;case`environments`:M=(0,L.jsx)(Or,{envs:k(`environments`),layout:r.paths.environments,files:r.raw.environments,base:r.paths.base,onSplit:ge,config:k(`config`),splitBlocked:ce(`environments`)||ce(`config`)?`Save or discard your changes to the environments and forgeqe.yaml first.`:``});break;case`browser`:M=(0,L.jsx)(ni,{groups:zr,edit:k(`config`)});break;case`routing`:M=(0,L.jsx)(Rr,{config:k(`config`),models:k(`models`)});break;case`generated`:M=(0,L.jsx)(Hi,{});break;case`about`:M=(0,L.jsx)(zi,{});break;case`notifications`:case`mcp`:M=(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(xi,{view:O.id,edit:k(`config`),grids:l.grids,setGrids:e=>u(t=>({...t,grids:e})),gridPaths:{browserstack:Ji(r,r.grids.browserstack.file),testmu:Ji(r,r.grids.testmu.file)}}),O.id===`notifications`&&(0,L.jsx)(Bi,{})]});break;case`parallel`:M=(0,L.jsx)(ni,{groups:Yr,edit:k(`config`)});break;case`mobile`:M=(0,L.jsx)(ni,{groups:[...Zr,...Qr],edit:k(`config`)});break;case`containers`:M=(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ni,{groups:$r.slice(0,1),edit:k(`config`)}),(0,L.jsx)(P,{help:`Each one ForgeQE may start, stop and read: a database, a queue, the API under test.`,children:`Services`}),(0,L.jsx)(di,{edit:k(`config`),base:[`containers`,`services`],defs:ei,noun:`service`,placeholder:`db`,meta:e=>[e.image,Array.isArray(e.ports)?`ports ${e.ports.join(`, `)}`:``].filter(Boolean).map(String).join(`, `)}),(0,L.jsx)(ni,{groups:$r.slice(1),edit:k(`config`),continued:!0})]});break;case`databases`:M=(0,L.jsx)(di,{edit:k(`config`),base:[`databases`],defs:ti,noun:`database`,placeholder:`orders`,meta:e=>[e.description,e.engine,e.url_env?`from ${e.url_env}`:e.host,e.writable?`writable`:`read only`].filter(Boolean).map(String).join(`, `)});break;case`signins`:M=(0,L.jsx)(oi,{edit:k(`config`)});break;case`integrations`:M=(0,L.jsx)(xi,{edit:k(`config`),grids:l.grids,setGrids:e=>{b(``),u(t=>({...t,grids:e}))},gridPaths:{browserstack:Ji(r,r.grids.browserstack.file),testmu:Ji(r,r.grids.testmu.file)}});break;case`tests`:M=(0,L.jsx)(ni,{groups:Br,edit:k(`config`)});break;case`runs`:M=(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ni,{groups:Vr,edit:k(`config`)}),(0,L.jsx)(ni,{groups:qr,edit:k(`config`),continued:!0}),(0,L.jsx)(P,{help:`Each one a table of the project report: forgeqe.<name>.`,children:`Report datasets`}),(0,L.jsx)(di,{edit:k(`config`),base:[`bi`,`datasets`],defs:Jr,noun:`dataset`,placeholder:`open_bugs`,meta:e=>[e.title,e.kind===`jira_jql`?`Jira`:e.kind===`ado_wiql`?`Azure DevOps`:``].filter(Boolean).map(String).join(`, `)})]});break;case`quality`:M=(0,L.jsx)(ni,{groups:Hr,edit:k(`config`)});break;case`agents`:M=(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ni,{groups:Ur,edit:k(`config`)}),(0,L.jsx)(Vi,{})]});break;case`guardrails`:M=(0,L.jsx)(si,{rules:l.guardrails,others:r.guardrails.filter(e=>!e.editable),onChange:e=>u({...l,guardrails:e})});break;case`monitor`:M=(0,L.jsx)(Oi,{edit:k(`config`)});break;case`skills`:M=(0,L.jsx)(me,{edit:k(`config`)});break;case`prompts`:M=(0,L.jsx)(De,{onChanged:b});break;case`registry`:M=(0,L.jsx)(Ue,{edit:k(`config`)});break;case`logs`:M=(0,L.jsx)(fe,{});break;case`audit`:M=(0,L.jsx)(Me,{});break;case`tokenomics`:M=(0,L.jsx)(be,{edit:k(`config`)});break;case`files`:M=(0,L.jsx)(li,{snap:r,dirty:{config:ce(`config`),models:ce(`models`),environments:ce(`environments`)},onSave:_e})}e&&(M=(0,L.jsxs)(`p`,{role:`alert`,className:`m-0 rounded-[12px] bg-fail-soft px-4 py-3 text-sm leading-relaxed text-fail`,children:[e===`environments`?`An environment file`:qi[e],` does not parse, so the form cannot show it: `,r.errors[e],`. Fix it under `,(0,L.jsx)(`a`,{href:s(`settings`,`files`),children:`Files`}),`.`]}))}let ve=h?(0,L.jsxs)(`div`,{role:`alert`,className:`flex w-full flex-wrap items-center gap-3 rounded-[14px] border border-fail-soft bg-fail-soft px-4 py-3 text-sm leading-relaxed text-fail shadow-composer`,children:[(0,L.jsx)(`span`,{className:`flex-[1_1_260px] [overflow-wrap:anywhere]`,children:h}),ee?(0,L.jsx)(c,{onClick:()=>{C(!1),g(``),de(``),re()},children:`Reload, and lose my unsaved changes`}):(0,L.jsxs)(`span`,{className:`flex gap-2`,children:[le.length>0&&(0,L.jsx)(c,{onClick:()=>{u(se),g(``),de(``)},children:`Undo my change`}),(0,L.jsx)(c,{onClick:()=>{g(``),de(``),pe()},children:`Try again`})]})]}):null,ye={pending:l?.secrets||{},set:(e,t)=>{b(``),u(n=>{let r={...n.secrets};return t===void 0?delete r[e]:r[e]=t,{...n,secrets:r}})},saved:new Set(r?.saved||[]),vars:r?.variables||{},store:r?.store||`the credential store`};return(0,L.jsx)(a.Provider,{value:ye,children:(0,L.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,L.jsx)(Le,{}),(0,L.jsxs)(`main`,{className:p(`mx-auto box-border flex w-full flex-auto flex-col items-stretch gap-x-10 gap-y-6 px-6 pt-10 pb-12 sm:flex-row sm:items-start`,t?`max-w-[800px]`:`max-w-[1080px]`),children:[(0,L.jsxs)(`div`,{className:p(`w-full flex-col gap-1 sm:sticky sm:top-6 sm:max-h-[calc(100vh-48px)] sm:w-[220px] sm:flex-none sm:overflow-y-auto sm:pb-4`,t?`hidden`:`flex`),children:[(0,L.jsxs)(`div`,{className:`mb-4 ml-3 flex items-center gap-3`,children:[(0,L.jsx)(D,{icon:Re,size:`lg`}),(0,L.jsx)(`h1`,{className:`m-0 text-[26px] font-semibold tracking-[-0.01em]`,children:`Settings`})]}),(0,L.jsx)(Zi,{ready:E}),(0,L.jsx)(`label`,{htmlFor:`section-pick`,className:`sr-only`,children:`Section`}),(0,L.jsx)(y,{id:`section-pick`,value:O.id,onChange:e=>location.hash=s(`settings`,e.target.value),className:`sm:hidden`,children:Ki.map(e=>(0,L.jsx)(`optgroup`,{label:e,children:Gi.filter(t=>t.group===e).map(e=>(0,L.jsx)(`option`,{value:e.id,disabled:!E&&e.id!==`setup`,children:e.label},e.id))},e))}),(0,L.jsx)(`nav`,{"aria-label":`Settings sections`,className:`hidden flex-col gap-5 sm:flex`,children:Ki.map(e=>(0,L.jsxs)(`div`,{role:`group`,"aria-labelledby":`group-${e}`,className:`flex flex-col gap-0.5`,children:[(0,L.jsx)(`span`,{id:`group-${e}`,className:`px-3 pb-1 text-[13px] font-medium text-muted`,children:e}),Gi.filter(t=>t.group===e).map(e=>w&&!E&&e.id!==`setup`?(0,L.jsxs)(`span`,{"aria-disabled":`true`,title:`Set up ForgeQE in a project folder first`,className:`flex min-h-10 cursor-not-allowed items-center gap-3 rounded-[10px] px-3 text-sm font-medium text-muted opacity-60`,children:[(0,L.jsx)(e.icon,{size:18,strokeWidth:1.8,"aria-hidden":`true`,className:`flex-none`}),(0,L.jsx)(`span`,{className:`flex-1`,children:e.label}),(0,L.jsx)(en,{size:14,"aria-label":`Locked`,className:`flex-none`})]},e.id):(0,L.jsxs)(`a`,{href:s(`settings`,e.id),"aria-current":O.id===e.id?`page`:void 0,className:p(`flex min-h-10 items-center gap-3 rounded-[10px] px-3 text-sm font-medium no-underline`,O.id===e.id?`bg-surface-strong text-ink hover:text-ink`:`text-muted hover:bg-surface-muted hover:text-ink`),children:[(0,L.jsx)(e.icon,{size:18,strokeWidth:1.8,"aria-hidden":`true`,className:`flex-none`}),e.label]},e.id))]},e))})]}),(0,L.jsxs)(`section`,{"aria-labelledby":`sec-h`,className:`flex min-w-0 flex-1 flex-col`,children:[(0,L.jsxs)(`div`,{className:`mb-1 flex items-center gap-3`,children:[(0,L.jsx)(D,{icon:O.icon,size:`lg`}),t?(0,L.jsx)(`h1`,{id:`sec-h`,className:`m-0 text-[26px] font-semibold tracking-[-0.01em]`,children:O.label}):(0,L.jsx)(`h2`,{id:`sec-h`,className:`m-0 text-lg font-semibold`,children:O.label})]}),(0,L.jsxs)(`p`,{className:`mt-0 mb-5 max-w-[60ch] text-sm leading-relaxed text-muted`,children:[O.intro,O.file&&r&&(0,L.jsxs)(L.Fragment,{children:[` `,`Saved in `,(0,L.jsx)(`span`,{className:`font-mono text-[13px]`,children:O.file}),`.`]})]}),d&&(0,L.jsxs)(`div`,{role:`alert`,className:`flex flex-col items-start gap-4 rounded-[18px] border border-line p-6`,children:[(0,L.jsx)(`p`,{className:`m-0 max-w-[60ch] leading-relaxed text-ink-2`,children:d}),(0,L.jsx)(c,{onClick:re,children:`Try again`})]}),w&&!E&&(0,L.jsxs)(`p`,{className:`mt-0 mb-5 flex items-start gap-2 rounded-[12px] bg-surface-muted px-4 py-3 text-sm leading-relaxed text-ink-2`,children:[(0,L.jsx)(en,{size:16,"aria-hidden":`true`,className:`mt-0.5 flex-none`}),`The other sections open once ForgeQE is set up in a project folder: choose the folder, then Set up this folder.`]}),!d&&(!w||O.id!==`setup`&&!r)&&(0,L.jsx)(`p`,{role:`status`,className:`m-0 text-sm text-muted`,children:`Loading settings…`}),M,(0,L.jsxs)(`div`,{className:`sticky bottom-4 z-10 mt-8 flex flex-col items-end gap-2`,children:[ve,(0,L.jsx)(`div`,{"aria-live":`polite`,className:`contents`,children:!h&&(le.length>0||x||_)&&(0,L.jsx)(`span`,{className:p(`inline-flex min-h-9 items-center gap-2 rounded-full border border-line bg-bg px-4 text-[13px] shadow-composer`,le.length||x?`text-ink-2`:`text-pass`),children:le.length||x?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ae,{state:`working`,px:16}),`Saving…`]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(o,{size:14,"aria-hidden":`true`}),_]})})})]})]})]})]})})}function Zi({ready:e}){let[t,n]=(0,I.useState)(``),r=t.toLowerCase().split(/\s+/).filter(Boolean),i=e=>Ui.find(t=>t.id===e)?.label||e,a=r.length?Mi.filter(e=>r.every(t=>`${e.label} ${e.key} ${i(e.section)}`.toLowerCase().includes(t))).slice(0,12):[];return(0,L.jsxs)(`div`,{className:`mb-4 flex flex-col gap-1 px-1`,children:[(0,L.jsx)(`label`,{htmlFor:`find-setting`,className:`sr-only`,children:`Find a setting`}),(0,L.jsx)(_,{id:`find-setting`,type:`search`,value:t,disabled:!e,placeholder:`Find a setting`,title:`By its name or its forgeqe.yaml key: max attempts, memory.dir`,onChange:e=>n(e.target.value)}),r.length>0&&(0,L.jsxs)(`ul`,{"aria-label":`Settings found`,className:`m-0 flex list-none flex-col p-0`,children:[a.length===0&&(0,L.jsx)(`li`,{className:`px-2 py-2 text-[13px] text-muted`,children:`Nothing called that. Every key can also be edited as text under Files.`}),a.map(e=>(0,L.jsx)(`li`,{children:(0,L.jsxs)(`a`,{href:s(`settings`,e.section),onClick:()=>n(``),className:`flex flex-col rounded-[10px] px-2 py-1.5 text-ink no-underline hover:bg-surface-muted hover:text-ink`,children:[(0,L.jsx)(`span`,{className:`text-sm`,children:e.label}),(0,L.jsxs)(`span`,{className:`text-[12px] text-muted`,children:[i(e.section),` · `,(0,L.jsx)(`code`,{className:`font-mono text-[11.5px]`,children:e.key})]})]})},`${e.section}:${e.key}`))]})]})}var Qi=`modulepreload`,$i=function(e){return`/`+e},ea={},ta=function(e){return e.pathname.endsWith(`.css`)},na=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},ra=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e,i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}r=o(t.map(t=>{t=$i(t,n);let r=s(t),i=ta(r);return na(ea,r.href,()=>{if(e===void 0){e={all:new Set,styles:new Set};let t=document.getElementsByTagName(`link`);for(let n=t.length-1;n>=0;n--){let r=t[n];e.all.add(r.href),r.rel===`stylesheet`&&e.styles.add(r.href)}}if((i?e.styles:e.all).has(r.href))return;let t=document.createElement(`link`);if(t.rel=i?`stylesheet`:Qi,i||(t.as=`script`),t.crossOrigin=``,t.href=r.href,a&&t.setAttribute(`nonce`,a),document.head.appendChild(t),i)return new Promise((e,n)=>{t.addEventListener(`load`,e),t.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${r}`)))})})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},ia=(0,I.lazy)(()=>ra(()=>import(`./Chat-CFfiv7wI.js`).then(e=>({default:e.Chat})),__vite__mapDeps([0,1,2,3,4]))),aa=(0,I.lazy)(()=>ra(()=>import(`./Chat-CFfiv7wI.js`).then(e=>({default:e.Chats})),__vite__mapDeps([0,1,2,3,4]))),oa=(0,I.lazy)(()=>ra(()=>import(`./Reports-o_82URX6.js`).then(e=>({default:e.Reports})),__vite__mapDeps([5,1,6,3,4,7,8]))),sa=(0,I.lazy)(()=>ra(()=>import(`./Runs-Dp-DzyW1.js`).then(e=>({default:e.Runs})),__vite__mapDeps([9,1,10,11,3,4,12,2,7,8]))),ca=(0,I.lazy)(()=>ra(()=>import(`./Record-CkwV9gN8.js`).then(e=>({default:e.Record})),__vite__mapDeps([13,1,10,3,4,12,14,15]))),la=(0,I.lazy)(()=>ra(()=>import(`./Regression-DKaNfFu1.js`).then(e=>({default:e.Regression})),__vite__mapDeps([16,1,4,14]))),ua=(0,I.lazy)(()=>ra(()=>import(`./ApiTests-CSSed9hU.js`).then(e=>({default:e.ApiTests})),__vite__mapDeps([17,1,3,4,12]))),da=(0,I.lazy)(()=>ra(()=>import(`./Quality-F0sKErYg.js`).then(e=>({default:e.Quality})),__vite__mapDeps([18,1,3,4]))),fa=(0,I.lazy)(()=>ra(()=>import(`./Data-Qolfhsd7.js`).then(e=>({default:e.Data})),__vite__mapDeps([19,1,3,4,12,7,15]))),pa=(0,I.lazy)(()=>ra(()=>import(`./Features-BM48eq6x.js`).then(e=>({default:e.Features})),__vite__mapDeps([20,1,6,3,4,7]))),ma=(0,I.lazy)(()=>ra(()=>import(`./Jobs-BjVNQUaK.js`).then(e=>({default:e.Jobs})),__vite__mapDeps([21,1,11,3,4,15])));function ha(){let[e=``,t,...n]=d();return(0,L.jsx)(Se,{current:e,chat:e===`chats`?t:void 0,children:(0,L.jsx)(ga,{page:e,sub:e===`data`&&t?[t,...n].join(`/`):t})})}function ga({page:e,sub:t}){if(e===`settings`)return(0,L.jsx)(Xi,{section:t});if(e===`chats`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:t?(0,L.jsx)(ia,{id:t}):(0,L.jsx)(aa,{})});if(e===`reports`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(oa,{sub:t})});if(e===`jobs`||e===`schedules`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(ma,{sub:e===`jobs`?t:void 0})});if(e===`regression`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(la,{sub:t})});if(e===`api-tests`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(ua,{sub:t})});if(e===`quality`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(da,{sub:t})});if(e===`data`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(fa,{sub:t})});if(e===`features`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(pa,{})});if(e===`record`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(ca,{})});if(e===`runs`)return(0,L.jsx)(I.Suspense,{fallback:(0,L.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,L.jsx)(sa,{sub:t})});if(e===`knowledge`)return(0,L.jsx)(hr,{});if(e===`memory`)return(0,L.jsx)(gr,{});if(Wi.includes(e))return(0,L.jsx)(Xi,{only:e},e);let n=yr.find(t=>t.id===e);return n?(0,L.jsx)(br,{section:n}):(0,L.jsx)(dr,{})}le(),se(),(0,Rn.createRoot)(document.getElementById(`root`)).render((0,L.jsx)(I.StrictMode,{children:(0,L.jsx)(ha,{})}));export{ut as C,gt as S,it as T,Ht as _,Vn as a,Ot as b,Nn as c,yn as d,_n as f,Kt as g,Qt as h,Hn as i,jn as l,an as m,Wn as n,Ln as o,dn as p,Gn as r,Fn as s,Un as t,Tn as u,Bt as v,ot as w,vt as x,Pt as y};
|