skillhelper 0.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/LICENSE +21 -0
- package/README.md +105 -0
- package/bin/lib/atomic-write.mjs +72 -0
- package/bin/lib/paths.mjs +65 -0
- package/bin/lib/port.mjs +23 -0
- package/bin/skillhelper.mjs +720 -0
- package/build/build-site.mjs +35 -0
- package/build/build-web.mjs +29 -0
- package/build/pack-smoke.mjs +195 -0
- package/build/prepare-publish.mjs +3 -0
- package/build/verify.mjs +157 -0
- package/config/sources.example.yaml +126 -0
- package/docs/Frontend-Spec.md +1207 -0
- package/docs/scan_skills_rules.md +432 -0
- package/package.json +95 -0
- package/packages/scanner/package.json +15 -0
- package/packages/scanner/src/adapters/claude-agents.mjs +134 -0
- package/packages/scanner/src/adapters/claude-plugin.mjs +260 -0
- package/packages/scanner/src/adapters/codex-plugin.mjs +330 -0
- package/packages/scanner/src/adapters/directory-skill.mjs +239 -0
- package/packages/scanner/src/adapters/file-docs.mjs +158 -0
- package/packages/scanner/src/adapters/hermes-plugin.mjs +149 -0
- package/packages/scanner/src/adapters/markdown-skill.mjs +229 -0
- package/packages/scanner/src/adapters/mcp-config.mjs +190 -0
- package/packages/scanner/src/adapters/scan-tier.mjs +99 -0
- package/packages/scanner/src/adapters/skill-adapter.mjs +345 -0
- package/packages/scanner/src/adapters/tier1-editor-skills.mjs +278 -0
- package/packages/scanner/src/adapters/tier2-user-skills.mjs +218 -0
- package/packages/scanner/src/adapters/tier3-other-skills.mjs +225 -0
- package/packages/scanner/src/config/editor-tiers.mjs +191 -0
- package/packages/scanner/src/core/atomic-write.mjs +11 -0
- package/packages/scanner/src/core/descriptor.mjs +143 -0
- package/packages/scanner/src/core/path-hash.mjs +89 -0
- package/packages/scanner/src/core/registry.mjs +128 -0
- package/packages/scanner/src/hash/path-hash.mjs +8 -0
- package/packages/scanner/src/icon/brand-map.mjs +268 -0
- package/packages/scanner/src/icon/icon-extractor.mjs +466 -0
- package/packages/scanner/src/index.mjs +450 -0
- package/packages/scanner/src/types.d.ts +144 -0
- package/packages/scanner/src/utils.mjs +194 -0
- package/packages/server/package.json +15 -0
- package/packages/server/src/index.mjs +1071 -0
- package/packages/server/src/labels.mjs +64 -0
- package/packages/server/src/langdetect.mjs +34 -0
- package/packages/server/src/llm-client.mjs +42 -0
- package/packages/server/src/translate-cache.mjs +132 -0
- package/packages/server/src/translator.mjs +53 -0
- package/packages/web/README.md +36 -0
- package/packages/web/dist/assets/index-CGt04vt0.js +304 -0
- package/packages/web/dist/assets/index-CLSDoa3H.css +1 -0
- package/packages/web/dist/brand-icon.png +0 -0
- package/packages/web/dist/brand-logo.png +0 -0
- package/packages/web/dist/favicon-16x16.png +0 -0
- package/packages/web/dist/favicon-192x192.png +0 -0
- package/packages/web/dist/favicon-32x32.png +0 -0
- package/packages/web/dist/favicon-512x512.png +0 -0
- package/packages/web/dist/favicon-source.svg +5 -0
- package/packages/web/dist/favicon.ico +0 -0
- package/packages/web/dist/favicon.svg +5 -0
- package/packages/web/dist/icons/hermes-128.png +0 -0
- package/packages/web/dist/icons/hermes-192.png +0 -0
- package/packages/web/dist/icons/hermes-256.png +0 -0
- package/packages/web/dist/icons/hermes-32.png +0 -0
- package/packages/web/dist/icons/hermes-512.png +0 -0
- package/packages/web/dist/icons/hermes-64.png +0 -0
- package/packages/web/dist/icons/hermes.png +0 -0
- package/packages/web/dist/index.html +37 -0
- package/packages/web/dist/robots.txt +3 -0
- package/packages/web/dist/site.webmanifest +24 -0
- package/packages/web/public/brand-icon.png +0 -0
- package/packages/web/public/brand-logo.png +0 -0
- package/packages/web/public/favicon-16x16.png +0 -0
- package/packages/web/public/favicon-192x192.png +0 -0
- package/packages/web/public/favicon-32x32.png +0 -0
- package/packages/web/public/favicon-512x512.png +0 -0
- package/packages/web/public/favicon-source.svg +5 -0
- package/packages/web/public/favicon.ico +0 -0
- package/packages/web/public/favicon.svg +5 -0
- package/packages/web/public/icons/hermes-128.png +0 -0
- package/packages/web/public/icons/hermes-192.png +0 -0
- package/packages/web/public/icons/hermes-256.png +0 -0
- package/packages/web/public/icons/hermes-32.png +0 -0
- package/packages/web/public/icons/hermes-512.png +0 -0
- package/packages/web/public/icons/hermes-64.png +0 -0
- package/packages/web/public/icons/hermes.png +0 -0
- package/packages/web/public/robots.txt +3 -0
- package/packages/web/public/site.webmanifest +24 -0
- package/scripts/install-and-sync.sh +209 -0
- package/scripts/sync-skills.sh +605 -0
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))a(i);new MutationObserver(i=>{for(const l of i)if(l.type==="childList")for(const h of l.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&a(h)}).observe(document,{childList:!0,subtree:!0});function u(i){const l={};return i.integrity&&(l.integrity=i.integrity),i.referrerPolicy&&(l.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?l.credentials="include":i.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function a(i){if(i.ep)return;i.ep=!0;const l=u(i);fetch(i.href,l)}})();var Ya={exports:{}},us={},Xa={exports:{}},he={};/**
|
|
2
|
+
* @license React
|
|
3
|
+
* react.production.min.js
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/var Yd;function Kp(){if(Yd)return he;Yd=1;var t=Symbol.for("react.element"),r=Symbol.for("react.portal"),u=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),l=Symbol.for("react.provider"),h=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),x=Symbol.for("react.memo"),b=Symbol.for("react.lazy"),y=Symbol.iterator;function w(S){return S===null||typeof S!="object"?null:(S=y&&S[y]||S["@@iterator"],typeof S=="function"?S:null)}var C={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,F={};function A(S,P,de){this.props=S,this.context=P,this.refs=F,this.updater=de||C}A.prototype.isReactComponent={},A.prototype.setState=function(S,P){if(typeof S!="object"&&typeof S!="function"&&S!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,S,P,"setState")},A.prototype.forceUpdate=function(S){this.updater.enqueueForceUpdate(this,S,"forceUpdate")};function q(){}q.prototype=A.prototype;function I(S,P,de){this.props=S,this.context=P,this.refs=F,this.updater=de||C}var T=I.prototype=new q;T.constructor=I,k(T,A.prototype),T.isPureReactComponent=!0;var R=Array.isArray,j=Object.prototype.hasOwnProperty,U={current:null},Y={key:!0,ref:!0,__self:!0,__source:!0};function ne(S,P,de){var pe,xe={},be=null,Ce=null;if(P!=null)for(pe in P.ref!==void 0&&(Ce=P.ref),P.key!==void 0&&(be=""+P.key),P)j.call(P,pe)&&!Y.hasOwnProperty(pe)&&(xe[pe]=P[pe]);var we=arguments.length-2;if(we===1)xe.children=de;else if(1<we){for(var je=Array(we),it=0;it<we;it++)je[it]=arguments[it+2];xe.children=je}if(S&&S.defaultProps)for(pe in we=S.defaultProps,we)xe[pe]===void 0&&(xe[pe]=we[pe]);return{$$typeof:t,type:S,key:be,ref:Ce,props:xe,_owner:U.current}}function ee(S,P){return{$$typeof:t,type:S.type,key:P,ref:S.ref,props:S.props,_owner:S._owner}}function L(S){return typeof S=="object"&&S!==null&&S.$$typeof===t}function ue(S){var P={"=":"=0",":":"=2"};return"$"+S.replace(/[=:]/g,function(de){return P[de]})}var K=/\/+/g;function ve(S,P){return typeof S=="object"&&S!==null&&S.key!=null?ue(""+S.key):P.toString(36)}function fe(S,P,de,pe,xe){var be=typeof S;(be==="undefined"||be==="boolean")&&(S=null);var Ce=!1;if(S===null)Ce=!0;else switch(be){case"string":case"number":Ce=!0;break;case"object":switch(S.$$typeof){case t:case r:Ce=!0}}if(Ce)return Ce=S,xe=xe(Ce),S=pe===""?"."+ve(Ce,0):pe,R(xe)?(de="",S!=null&&(de=S.replace(K,"$&/")+"/"),fe(xe,P,de,"",function(it){return it})):xe!=null&&(L(xe)&&(xe=ee(xe,de+(!xe.key||Ce&&Ce.key===xe.key?"":(""+xe.key).replace(K,"$&/")+"/")+S)),P.push(xe)),1;if(Ce=0,pe=pe===""?".":pe+":",R(S))for(var we=0;we<S.length;we++){be=S[we];var je=pe+ve(be,we);Ce+=fe(be,P,de,je,xe)}else if(je=w(S),typeof je=="function")for(S=je.call(S),we=0;!(be=S.next()).done;)be=be.value,je=pe+ve(be,we++),Ce+=fe(be,P,de,je,xe);else if(be==="object")throw P=String(S),Error("Objects are not valid as a React child (found: "+(P==="[object Object]"?"object with keys {"+Object.keys(S).join(", ")+"}":P)+"). If you meant to render a collection of children, use an array instead.");return Ce}function ie(S,P,de){if(S==null)return S;var pe=[],xe=0;return fe(S,pe,"","",function(be){return P.call(de,be,xe++)}),pe}function _e(S){if(S._status===-1){var P=S._result;P=P(),P.then(function(de){(S._status===0||S._status===-1)&&(S._status=1,S._result=de)},function(de){(S._status===0||S._status===-1)&&(S._status=2,S._result=de)}),S._status===-1&&(S._status=0,S._result=P)}if(S._status===1)return S._result.default;throw S._result}var le={current:null},$={transition:null},Q={ReactCurrentDispatcher:le,ReactCurrentBatchConfig:$,ReactCurrentOwner:U};function V(){throw Error("act(...) is not supported in production builds of React.")}return he.Children={map:ie,forEach:function(S,P,de){ie(S,function(){P.apply(this,arguments)},de)},count:function(S){var P=0;return ie(S,function(){P++}),P},toArray:function(S){return ie(S,function(P){return P})||[]},only:function(S){if(!L(S))throw Error("React.Children.only expected to receive a single React element child.");return S}},he.Component=A,he.Fragment=u,he.Profiler=i,he.PureComponent=I,he.StrictMode=a,he.Suspense=m,he.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Q,he.act=V,he.cloneElement=function(S,P,de){if(S==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+S+".");var pe=k({},S.props),xe=S.key,be=S.ref,Ce=S._owner;if(P!=null){if(P.ref!==void 0&&(be=P.ref,Ce=U.current),P.key!==void 0&&(xe=""+P.key),S.type&&S.type.defaultProps)var we=S.type.defaultProps;for(je in P)j.call(P,je)&&!Y.hasOwnProperty(je)&&(pe[je]=P[je]===void 0&&we!==void 0?we[je]:P[je])}var je=arguments.length-2;if(je===1)pe.children=de;else if(1<je){we=Array(je);for(var it=0;it<je;it++)we[it]=arguments[it+2];pe.children=we}return{$$typeof:t,type:S.type,key:xe,ref:be,props:pe,_owner:Ce}},he.createContext=function(S){return S={$$typeof:h,_currentValue:S,_currentValue2:S,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},S.Provider={$$typeof:l,_context:S},S.Consumer=S},he.createElement=ne,he.createFactory=function(S){var P=ne.bind(null,S);return P.type=S,P},he.createRef=function(){return{current:null}},he.forwardRef=function(S){return{$$typeof:f,render:S}},he.isValidElement=L,he.lazy=function(S){return{$$typeof:b,_payload:{_status:-1,_result:S},_init:_e}},he.memo=function(S,P){return{$$typeof:x,type:S,compare:P===void 0?null:P}},he.startTransition=function(S){var P=$.transition;$.transition={};try{S()}finally{$.transition=P}},he.unstable_act=V,he.useCallback=function(S,P){return le.current.useCallback(S,P)},he.useContext=function(S){return le.current.useContext(S)},he.useDebugValue=function(){},he.useDeferredValue=function(S){return le.current.useDeferredValue(S)},he.useEffect=function(S,P){return le.current.useEffect(S,P)},he.useId=function(){return le.current.useId()},he.useImperativeHandle=function(S,P,de){return le.current.useImperativeHandle(S,P,de)},he.useInsertionEffect=function(S,P){return le.current.useInsertionEffect(S,P)},he.useLayoutEffect=function(S,P){return le.current.useLayoutEffect(S,P)},he.useMemo=function(S,P){return le.current.useMemo(S,P)},he.useReducer=function(S,P,de){return le.current.useReducer(S,P,de)},he.useRef=function(S){return le.current.useRef(S)},he.useState=function(S){return le.current.useState(S)},he.useSyncExternalStore=function(S,P,de){return le.current.useSyncExternalStore(S,P,de)},he.useTransition=function(){return le.current.useTransition()},he.version="18.3.1",he}var Xd;function Ti(){return Xd||(Xd=1,Xa.exports=Kp()),Xa.exports}/**
|
|
10
|
+
* @license React
|
|
11
|
+
* react-jsx-runtime.production.min.js
|
|
12
|
+
*
|
|
13
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the MIT license found in the
|
|
16
|
+
* LICENSE file in the root directory of this source tree.
|
|
17
|
+
*/var Jd;function Qp(){if(Jd)return us;Jd=1;var t=Ti(),r=Symbol.for("react.element"),u=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,i=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function h(f,m,x){var b,y={},w=null,C=null;x!==void 0&&(w=""+x),m.key!==void 0&&(w=""+m.key),m.ref!==void 0&&(C=m.ref);for(b in m)a.call(m,b)&&!l.hasOwnProperty(b)&&(y[b]=m[b]);if(f&&f.defaultProps)for(b in m=f.defaultProps,m)y[b]===void 0&&(y[b]=m[b]);return{$$typeof:r,type:f,key:w,ref:C,props:y,_owner:i.current}}return us.Fragment=u,us.jsx=h,us.jsxs=h,us}var e0;function Zp(){return e0||(e0=1,Ya.exports=Qp()),Ya.exports}var p=Zp(),G=Ti(),Tu={},Ja={exports:{}},ot={},ei={exports:{}},ti={};/**
|
|
18
|
+
* @license React
|
|
19
|
+
* scheduler.production.min.js
|
|
20
|
+
*
|
|
21
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
22
|
+
*
|
|
23
|
+
* This source code is licensed under the MIT license found in the
|
|
24
|
+
* LICENSE file in the root directory of this source tree.
|
|
25
|
+
*/var t0;function Yp(){return t0||(t0=1,(function(t){function r($,Q){var V=$.length;$.push(Q);e:for(;0<V;){var S=V-1>>>1,P=$[S];if(0<i(P,Q))$[S]=Q,$[V]=P,V=S;else break e}}function u($){return $.length===0?null:$[0]}function a($){if($.length===0)return null;var Q=$[0],V=$.pop();if(V!==Q){$[0]=V;e:for(var S=0,P=$.length,de=P>>>1;S<de;){var pe=2*(S+1)-1,xe=$[pe],be=pe+1,Ce=$[be];if(0>i(xe,V))be<P&&0>i(Ce,xe)?($[S]=Ce,$[be]=V,S=be):($[S]=xe,$[pe]=V,S=pe);else if(be<P&&0>i(Ce,V))$[S]=Ce,$[be]=V,S=be;else break e}}return Q}function i($,Q){var V=$.sortIndex-Q.sortIndex;return V!==0?V:$.id-Q.id}if(typeof performance=="object"&&typeof performance.now=="function"){var l=performance;t.unstable_now=function(){return l.now()}}else{var h=Date,f=h.now();t.unstable_now=function(){return h.now()-f}}var m=[],x=[],b=1,y=null,w=3,C=!1,k=!1,F=!1,A=typeof setTimeout=="function"?setTimeout:null,q=typeof clearTimeout=="function"?clearTimeout:null,I=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function T($){for(var Q=u(x);Q!==null;){if(Q.callback===null)a(x);else if(Q.startTime<=$)a(x),Q.sortIndex=Q.expirationTime,r(m,Q);else break;Q=u(x)}}function R($){if(F=!1,T($),!k)if(u(m)!==null)k=!0,_e(j);else{var Q=u(x);Q!==null&&le(R,Q.startTime-$)}}function j($,Q){k=!1,F&&(F=!1,q(ne),ne=-1),C=!0;var V=w;try{for(T(Q),y=u(m);y!==null&&(!(y.expirationTime>Q)||$&&!ue());){var S=y.callback;if(typeof S=="function"){y.callback=null,w=y.priorityLevel;var P=S(y.expirationTime<=Q);Q=t.unstable_now(),typeof P=="function"?y.callback=P:y===u(m)&&a(m),T(Q)}else a(m);y=u(m)}if(y!==null)var de=!0;else{var pe=u(x);pe!==null&&le(R,pe.startTime-Q),de=!1}return de}finally{y=null,w=V,C=!1}}var U=!1,Y=null,ne=-1,ee=5,L=-1;function ue(){return!(t.unstable_now()-L<ee)}function K(){if(Y!==null){var $=t.unstable_now();L=$;var Q=!0;try{Q=Y(!0,$)}finally{Q?ve():(U=!1,Y=null)}}else U=!1}var ve;if(typeof I=="function")ve=function(){I(K)};else if(typeof MessageChannel<"u"){var fe=new MessageChannel,ie=fe.port2;fe.port1.onmessage=K,ve=function(){ie.postMessage(null)}}else ve=function(){A(K,0)};function _e($){Y=$,U||(U=!0,ve())}function le($,Q){ne=A(function(){$(t.unstable_now())},Q)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function($){$.callback=null},t.unstable_continueExecution=function(){k||C||(k=!0,_e(j))},t.unstable_forceFrameRate=function($){0>$||125<$?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ee=0<$?Math.floor(1e3/$):5},t.unstable_getCurrentPriorityLevel=function(){return w},t.unstable_getFirstCallbackNode=function(){return u(m)},t.unstable_next=function($){switch(w){case 1:case 2:case 3:var Q=3;break;default:Q=w}var V=w;w=Q;try{return $()}finally{w=V}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function($,Q){switch($){case 1:case 2:case 3:case 4:case 5:break;default:$=3}var V=w;w=$;try{return Q()}finally{w=V}},t.unstable_scheduleCallback=function($,Q,V){var S=t.unstable_now();switch(typeof V=="object"&&V!==null?(V=V.delay,V=typeof V=="number"&&0<V?S+V:S):V=S,$){case 1:var P=-1;break;case 2:P=250;break;case 5:P=1073741823;break;case 4:P=1e4;break;default:P=5e3}return P=V+P,$={id:b++,callback:Q,priorityLevel:$,startTime:V,expirationTime:P,sortIndex:-1},V>S?($.sortIndex=V,r(x,$),u(m)===null&&$===u(x)&&(F?(q(ne),ne=-1):F=!0,le(R,V-S))):($.sortIndex=P,r(m,$),k||C||(k=!0,_e(j))),$},t.unstable_shouldYield=ue,t.unstable_wrapCallback=function($){var Q=w;return function(){var V=w;w=Q;try{return $.apply(this,arguments)}finally{w=V}}}})(ti)),ti}var n0;function Xp(){return n0||(n0=1,ei.exports=Yp()),ei.exports}/**
|
|
26
|
+
* @license React
|
|
27
|
+
* react-dom.production.min.js
|
|
28
|
+
*
|
|
29
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
30
|
+
*
|
|
31
|
+
* This source code is licensed under the MIT license found in the
|
|
32
|
+
* LICENSE file in the root directory of this source tree.
|
|
33
|
+
*/var r0;function Jp(){if(r0)return ot;r0=1;var t=Ti(),r=Xp();function u(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,s=1;s<arguments.length;s++)n+="&args[]="+encodeURIComponent(arguments[s]);return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var a=new Set,i={};function l(e,n){h(e,n),h(e+"Capture",n)}function h(e,n){for(i[e]=n,e=0;e<n.length;e++)a.add(n[e])}var f=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),m=Object.prototype.hasOwnProperty,x=/^[: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]*$/,b={},y={};function w(e){return m.call(y,e)?!0:m.call(b,e)?!1:x.test(e)?y[e]=!0:(b[e]=!0,!1)}function C(e,n,s,o){if(s!==null&&s.type===0)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return o?!1:s!==null?!s.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function k(e,n,s,o){if(n===null||typeof n>"u"||C(e,n,s,o))return!0;if(o)return!1;if(s!==null)switch(s.type){case 3:return!n;case 4:return n===!1;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}function F(e,n,s,o,c,d,g){this.acceptsBooleans=n===2||n===3||n===4,this.attributeName=o,this.attributeNamespace=c,this.mustUseProperty=s,this.propertyName=e,this.type=n,this.sanitizeURL=d,this.removeEmptyString=g}var A={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){A[e]=new F(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var n=e[0];A[n]=new F(n,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){A[e]=new F(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){A[e]=new F(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){A[e]=new F(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){A[e]=new F(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){A[e]=new F(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){A[e]=new F(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){A[e]=new F(e,5,!1,e.toLowerCase(),null,!1,!1)});var q=/[\-:]([a-z])/g;function I(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var n=e.replace(q,I);A[n]=new F(n,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var n=e.replace(q,I);A[n]=new F(n,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var n=e.replace(q,I);A[n]=new F(n,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){A[e]=new F(e,1,!1,e.toLowerCase(),null,!1,!1)}),A.xlinkHref=new F("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){A[e]=new F(e,1,!1,e.toLowerCase(),null,!0,!0)});function T(e,n,s,o){var c=A.hasOwnProperty(n)?A[n]:null;(c!==null?c.type!==0:o||!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")&&(k(n,s,c,o)&&(s=null),o||c===null?w(n)&&(s===null?e.removeAttribute(n):e.setAttribute(n,""+s)):c.mustUseProperty?e[c.propertyName]=s===null?c.type===3?!1:"":s:(n=c.attributeName,o=c.attributeNamespace,s===null?e.removeAttribute(n):(c=c.type,s=c===3||c===4&&s===!0?"":""+s,o?e.setAttributeNS(o,n,s):e.setAttribute(n,s))))}var R=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,j=Symbol.for("react.element"),U=Symbol.for("react.portal"),Y=Symbol.for("react.fragment"),ne=Symbol.for("react.strict_mode"),ee=Symbol.for("react.profiler"),L=Symbol.for("react.provider"),ue=Symbol.for("react.context"),K=Symbol.for("react.forward_ref"),ve=Symbol.for("react.suspense"),fe=Symbol.for("react.suspense_list"),ie=Symbol.for("react.memo"),_e=Symbol.for("react.lazy"),le=Symbol.for("react.offscreen"),$=Symbol.iterator;function Q(e){return e===null||typeof e!="object"?null:(e=$&&e[$]||e["@@iterator"],typeof e=="function"?e:null)}var V=Object.assign,S;function P(e){if(S===void 0)try{throw Error()}catch(s){var n=s.stack.trim().match(/\n( *(at )?)/);S=n&&n[1]||""}return`
|
|
34
|
+
`+S+e}var de=!1;function pe(e,n){if(!e||de)return"";de=!0;var s=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(n)if(n=function(){throw Error()},Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(n,[])}catch(N){var o=N}Reflect.construct(e,[],n)}else{try{n.call()}catch(N){o=N}e.call(n.prototype)}else{try{throw Error()}catch(N){o=N}e()}}catch(N){if(N&&o&&typeof N.stack=="string"){for(var c=N.stack.split(`
|
|
35
|
+
`),d=o.stack.split(`
|
|
36
|
+
`),g=c.length-1,v=d.length-1;1<=g&&0<=v&&c[g]!==d[v];)v--;for(;1<=g&&0<=v;g--,v--)if(c[g]!==d[v]){if(g!==1||v!==1)do if(g--,v--,0>v||c[g]!==d[v]){var _=`
|
|
37
|
+
`+c[g].replace(" at new "," at ");return e.displayName&&_.includes("<anonymous>")&&(_=_.replace("<anonymous>",e.displayName)),_}while(1<=g&&0<=v);break}}}finally{de=!1,Error.prepareStackTrace=s}return(e=e?e.displayName||e.name:"")?P(e):""}function xe(e){switch(e.tag){case 5:return P(e.type);case 16:return P("Lazy");case 13:return P("Suspense");case 19:return P("SuspenseList");case 0:case 2:case 15:return e=pe(e.type,!1),e;case 11:return e=pe(e.type.render,!1),e;case 1:return e=pe(e.type,!0),e;default:return""}}function be(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Y:return"Fragment";case U:return"Portal";case ee:return"Profiler";case ne:return"StrictMode";case ve:return"Suspense";case fe:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case ue:return(e.displayName||"Context")+".Consumer";case L:return(e._context.displayName||"Context")+".Provider";case K:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ie:return n=e.displayName||null,n!==null?n:be(e.type)||"Memo";case _e:n=e._payload,e=e._init;try{return be(e(n))}catch{}}return null}function Ce(e){var n=e.type;switch(e.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=n.render,e=e.displayName||e.name||"",n.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return be(n);case 8:return n===ne?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n}return null}function we(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function je(e){var n=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function it(e){var n=je(e)?"checked":"value",s=Object.getOwnPropertyDescriptor(e.constructor.prototype,n),o=""+e[n];if(!e.hasOwnProperty(n)&&typeof s<"u"&&typeof s.get=="function"&&typeof s.set=="function"){var c=s.get,d=s.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return c.call(this)},set:function(g){o=""+g,d.call(this,g)}}),Object.defineProperty(e,n,{enumerable:s.enumerable}),{getValue:function(){return o},setValue:function(g){o=""+g},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}function _s(e){e._valueTracker||(e._valueTracker=it(e))}function rl(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var s=n.getValue(),o="";return e&&(o=je(e)?e.checked?"true":"false":e.value),e=o,e!==s?(n.setValue(e),!0):!1}function Cs(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function ro(e,n){var s=n.checked;return V({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:s??e._wrapperState.initialChecked})}function sl(e,n){var s=n.defaultValue==null?"":n.defaultValue,o=n.checked!=null?n.checked:n.defaultChecked;s=we(n.value!=null?n.value:s),e._wrapperState={initialChecked:o,initialValue:s,controlled:n.type==="checkbox"||n.type==="radio"?n.checked!=null:n.value!=null}}function ul(e,n){n=n.checked,n!=null&&T(e,"checked",n,!1)}function so(e,n){ul(e,n);var s=we(n.value),o=n.type;if(s!=null)o==="number"?(s===0&&e.value===""||e.value!=s)&&(e.value=""+s):e.value!==""+s&&(e.value=""+s);else if(o==="submit"||o==="reset"){e.removeAttribute("value");return}n.hasOwnProperty("value")?uo(e,n.type,s):n.hasOwnProperty("defaultValue")&&uo(e,n.type,we(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(e.defaultChecked=!!n.defaultChecked)}function ol(e,n,s){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var o=n.type;if(!(o!=="submit"&&o!=="reset"||n.value!==void 0&&n.value!==null))return;n=""+e._wrapperState.initialValue,s||n===e.value||(e.value=n),e.defaultValue=n}s=e.name,s!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,s!==""&&(e.name=s)}function uo(e,n,s){(n!=="number"||Cs(e.ownerDocument)!==e)&&(s==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+s&&(e.defaultValue=""+s))}var vr=Array.isArray;function Bn(e,n,s,o){if(e=e.options,n){n={};for(var c=0;c<s.length;c++)n["$"+s[c]]=!0;for(s=0;s<e.length;s++)c=n.hasOwnProperty("$"+e[s].value),e[s].selected!==c&&(e[s].selected=c),c&&o&&(e[s].defaultSelected=!0)}else{for(s=""+we(s),n=null,c=0;c<e.length;c++){if(e[c].value===s){e[c].selected=!0,o&&(e[c].defaultSelected=!0);return}n!==null||e[c].disabled||(n=e[c])}n!==null&&(n.selected=!0)}}function oo(e,n){if(n.dangerouslySetInnerHTML!=null)throw Error(u(91));return V({},n,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function al(e,n){var s=n.value;if(s==null){if(s=n.children,n=n.defaultValue,s!=null){if(n!=null)throw Error(u(92));if(vr(s)){if(1<s.length)throw Error(u(93));s=s[0]}n=s}n==null&&(n=""),s=n}e._wrapperState={initialValue:we(s)}}function il(e,n){var s=we(n.value),o=we(n.defaultValue);s!=null&&(s=""+s,s!==e.value&&(e.value=s),n.defaultValue==null&&e.defaultValue!==s&&(e.defaultValue=s)),o!=null&&(e.defaultValue=""+o)}function ll(e){var n=e.textContent;n===e._wrapperState.initialValue&&n!==""&&n!==null&&(e.value=n)}function cl(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function ao(e,n){return e==null||e==="http://www.w3.org/1999/xhtml"?cl(n):e==="http://www.w3.org/2000/svg"&&n==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Es,dl=(function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(n,s,o,c){MSApp.execUnsafeLocalFunction(function(){return e(n,s,o,c)})}:e})(function(e,n){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=n;else{for(Es=Es||document.createElement("div"),Es.innerHTML="<svg>"+n.valueOf().toString()+"</svg>",n=Es.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;n.firstChild;)e.appendChild(n.firstChild)}});function wr(e,n){if(n){var s=e.firstChild;if(s&&s===e.lastChild&&s.nodeType===3){s.nodeValue=n;return}}e.textContent=n}var kr={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Xf=["Webkit","ms","Moz","O"];Object.keys(kr).forEach(function(e){Xf.forEach(function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1),kr[n]=kr[e]})});function fl(e,n,s){return n==null||typeof n=="boolean"||n===""?"":s||typeof n!="number"||n===0||kr.hasOwnProperty(e)&&kr[e]?(""+n).trim():n+"px"}function hl(e,n){e=e.style;for(var s in n)if(n.hasOwnProperty(s)){var o=s.indexOf("--")===0,c=fl(s,n[s],o);s==="float"&&(s="cssFloat"),o?e.setProperty(s,c):e[s]=c}}var Jf=V({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function io(e,n){if(n){if(Jf[e]&&(n.children!=null||n.dangerouslySetInnerHTML!=null))throw Error(u(137,e));if(n.dangerouslySetInnerHTML!=null){if(n.children!=null)throw Error(u(60));if(typeof n.dangerouslySetInnerHTML!="object"||!("__html"in n.dangerouslySetInnerHTML))throw Error(u(61))}if(n.style!=null&&typeof n.style!="object")throw Error(u(62))}}function lo(e,n){if(e.indexOf("-")===-1)return typeof n.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var co=null;function fo(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ho=null,Un=null,$n=null;function pl(e){if(e=qr(e)){if(typeof ho!="function")throw Error(u(280));var n=e.stateNode;n&&(n=Ks(n),ho(e.stateNode,e.type,n))}}function ml(e){Un?$n?$n.push(e):$n=[e]:Un=e}function gl(){if(Un){var e=Un,n=$n;if($n=Un=null,pl(e),n)for(e=0;e<n.length;e++)pl(n[e])}}function xl(e,n){return e(n)}function bl(){}var po=!1;function yl(e,n,s){if(po)return e(n,s);po=!0;try{return xl(e,n,s)}finally{po=!1,(Un!==null||$n!==null)&&(bl(),gl())}}function _r(e,n){var s=e.stateNode;if(s===null)return null;var o=Ks(s);if(o===null)return null;s=o[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(o=!o.disabled)||(e=e.type,o=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!o;break e;default:e=!1}if(e)return null;if(s&&typeof s!="function")throw Error(u(231,n,typeof s));return s}var mo=!1;if(f)try{var Cr={};Object.defineProperty(Cr,"passive",{get:function(){mo=!0}}),window.addEventListener("test",Cr,Cr),window.removeEventListener("test",Cr,Cr)}catch{mo=!1}function eh(e,n,s,o,c,d,g,v,_){var N=Array.prototype.slice.call(arguments,3);try{n.apply(s,N)}catch(O){this.onError(O)}}var Er=!1,Ss=null,zs=!1,go=null,th={onError:function(e){Er=!0,Ss=e}};function nh(e,n,s,o,c,d,g,v,_){Er=!1,Ss=null,eh.apply(th,arguments)}function rh(e,n,s,o,c,d,g,v,_){if(nh.apply(this,arguments),Er){if(Er){var N=Ss;Er=!1,Ss=null}else throw Error(u(198));zs||(zs=!0,go=N)}}function Sn(e){var n=e,s=e;if(e.alternate)for(;n.return;)n=n.return;else{e=n;do n=e,(n.flags&4098)!==0&&(s=n.return),e=n.return;while(e)}return n.tag===3?s:null}function vl(e){if(e.tag===13){var n=e.memoizedState;if(n===null&&(e=e.alternate,e!==null&&(n=e.memoizedState)),n!==null)return n.dehydrated}return null}function wl(e){if(Sn(e)!==e)throw Error(u(188))}function sh(e){var n=e.alternate;if(!n){if(n=Sn(e),n===null)throw Error(u(188));return n!==e?null:e}for(var s=e,o=n;;){var c=s.return;if(c===null)break;var d=c.alternate;if(d===null){if(o=c.return,o!==null){s=o;continue}break}if(c.child===d.child){for(d=c.child;d;){if(d===s)return wl(c),e;if(d===o)return wl(c),n;d=d.sibling}throw Error(u(188))}if(s.return!==o.return)s=c,o=d;else{for(var g=!1,v=c.child;v;){if(v===s){g=!0,s=c,o=d;break}if(v===o){g=!0,o=c,s=d;break}v=v.sibling}if(!g){for(v=d.child;v;){if(v===s){g=!0,s=d,o=c;break}if(v===o){g=!0,o=d,s=c;break}v=v.sibling}if(!g)throw Error(u(189))}}if(s.alternate!==o)throw Error(u(190))}if(s.tag!==3)throw Error(u(188));return s.stateNode.current===s?e:n}function kl(e){return e=sh(e),e!==null?_l(e):null}function _l(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var n=_l(e);if(n!==null)return n;e=e.sibling}return null}var Cl=r.unstable_scheduleCallback,El=r.unstable_cancelCallback,uh=r.unstable_shouldYield,oh=r.unstable_requestPaint,Oe=r.unstable_now,ah=r.unstable_getCurrentPriorityLevel,xo=r.unstable_ImmediatePriority,Sl=r.unstable_UserBlockingPriority,As=r.unstable_NormalPriority,ih=r.unstable_LowPriority,zl=r.unstable_IdlePriority,Ds=null,jt=null;function lh(e){if(jt&&typeof jt.onCommitFiberRoot=="function")try{jt.onCommitFiberRoot(Ds,e,void 0,(e.current.flags&128)===128)}catch{}}var _t=Math.clz32?Math.clz32:fh,ch=Math.log,dh=Math.LN2;function fh(e){return e>>>=0,e===0?32:31-(ch(e)/dh|0)|0}var Ns=64,js=4194304;function Sr(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Fs(e,n){var s=e.pendingLanes;if(s===0)return 0;var o=0,c=e.suspendedLanes,d=e.pingedLanes,g=s&268435455;if(g!==0){var v=g&~c;v!==0?o=Sr(v):(d&=g,d!==0&&(o=Sr(d)))}else g=s&~c,g!==0?o=Sr(g):d!==0&&(o=Sr(d));if(o===0)return 0;if(n!==0&&n!==o&&(n&c)===0&&(c=o&-o,d=n&-n,c>=d||c===16&&(d&4194240)!==0))return n;if((o&4)!==0&&(o|=s&16),n=e.entangledLanes,n!==0)for(e=e.entanglements,n&=o;0<n;)s=31-_t(n),c=1<<s,o|=e[s],n&=~c;return o}function hh(e,n){switch(e){case 1:case 2:case 4:return n+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function ph(e,n){for(var s=e.suspendedLanes,o=e.pingedLanes,c=e.expirationTimes,d=e.pendingLanes;0<d;){var g=31-_t(d),v=1<<g,_=c[g];_===-1?((v&s)===0||(v&o)!==0)&&(c[g]=hh(v,n)):_<=n&&(e.expiredLanes|=v),d&=~v}}function bo(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Al(){var e=Ns;return Ns<<=1,(Ns&4194240)===0&&(Ns=64),e}function yo(e){for(var n=[],s=0;31>s;s++)n.push(e);return n}function zr(e,n,s){e.pendingLanes|=n,n!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,n=31-_t(n),e[n]=s}function mh(e,n){var s=e.pendingLanes&~n;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=n,e.mutableReadLanes&=n,e.entangledLanes&=n,n=e.entanglements;var o=e.eventTimes;for(e=e.expirationTimes;0<s;){var c=31-_t(s),d=1<<c;n[c]=0,o[c]=-1,e[c]=-1,s&=~d}}function vo(e,n){var s=e.entangledLanes|=n;for(e=e.entanglements;s;){var o=31-_t(s),c=1<<o;c&n|e[o]&n&&(e[o]|=n),s&=~c}}var ke=0;function Dl(e){return e&=-e,1<e?4<e?(e&268435455)!==0?16:536870912:4:1}var Nl,wo,jl,Fl,Tl,ko=!1,Ts=[],Yt=null,Xt=null,Jt=null,Ar=new Map,Dr=new Map,en=[],gh="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Pl(e,n){switch(e){case"focusin":case"focusout":Yt=null;break;case"dragenter":case"dragleave":Xt=null;break;case"mouseover":case"mouseout":Jt=null;break;case"pointerover":case"pointerout":Ar.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":Dr.delete(n.pointerId)}}function Nr(e,n,s,o,c,d){return e===null||e.nativeEvent!==d?(e={blockedOn:n,domEventName:s,eventSystemFlags:o,nativeEvent:d,targetContainers:[c]},n!==null&&(n=qr(n),n!==null&&wo(n)),e):(e.eventSystemFlags|=o,n=e.targetContainers,c!==null&&n.indexOf(c)===-1&&n.push(c),e)}function xh(e,n,s,o,c){switch(n){case"focusin":return Yt=Nr(Yt,e,n,s,o,c),!0;case"dragenter":return Xt=Nr(Xt,e,n,s,o,c),!0;case"mouseover":return Jt=Nr(Jt,e,n,s,o,c),!0;case"pointerover":var d=c.pointerId;return Ar.set(d,Nr(Ar.get(d)||null,e,n,s,o,c)),!0;case"gotpointercapture":return d=c.pointerId,Dr.set(d,Nr(Dr.get(d)||null,e,n,s,o,c)),!0}return!1}function Ml(e){var n=zn(e.target);if(n!==null){var s=Sn(n);if(s!==null){if(n=s.tag,n===13){if(n=vl(s),n!==null){e.blockedOn=n,Tl(e.priority,function(){jl(s)});return}}else if(n===3&&s.stateNode.current.memoizedState.isDehydrated){e.blockedOn=s.tag===3?s.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ps(e){if(e.blockedOn!==null)return!1;for(var n=e.targetContainers;0<n.length;){var s=Co(e.domEventName,e.eventSystemFlags,n[0],e.nativeEvent);if(s===null){s=e.nativeEvent;var o=new s.constructor(s.type,s);co=o,s.target.dispatchEvent(o),co=null}else return n=qr(s),n!==null&&wo(n),e.blockedOn=s,!1;n.shift()}return!0}function Ol(e,n,s){Ps(e)&&s.delete(n)}function bh(){ko=!1,Yt!==null&&Ps(Yt)&&(Yt=null),Xt!==null&&Ps(Xt)&&(Xt=null),Jt!==null&&Ps(Jt)&&(Jt=null),Ar.forEach(Ol),Dr.forEach(Ol)}function jr(e,n){e.blockedOn===n&&(e.blockedOn=null,ko||(ko=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,bh)))}function Fr(e){function n(c){return jr(c,e)}if(0<Ts.length){jr(Ts[0],e);for(var s=1;s<Ts.length;s++){var o=Ts[s];o.blockedOn===e&&(o.blockedOn=null)}}for(Yt!==null&&jr(Yt,e),Xt!==null&&jr(Xt,e),Jt!==null&&jr(Jt,e),Ar.forEach(n),Dr.forEach(n),s=0;s<en.length;s++)o=en[s],o.blockedOn===e&&(o.blockedOn=null);for(;0<en.length&&(s=en[0],s.blockedOn===null);)Ml(s),s.blockedOn===null&&en.shift()}var Hn=R.ReactCurrentBatchConfig,Ms=!0;function yh(e,n,s,o){var c=ke,d=Hn.transition;Hn.transition=null;try{ke=1,_o(e,n,s,o)}finally{ke=c,Hn.transition=d}}function vh(e,n,s,o){var c=ke,d=Hn.transition;Hn.transition=null;try{ke=4,_o(e,n,s,o)}finally{ke=c,Hn.transition=d}}function _o(e,n,s,o){if(Ms){var c=Co(e,n,s,o);if(c===null)Uo(e,n,o,Os,s),Pl(e,o);else if(xh(c,e,n,s,o))o.stopPropagation();else if(Pl(e,o),n&4&&-1<gh.indexOf(e)){for(;c!==null;){var d=qr(c);if(d!==null&&Nl(d),d=Co(e,n,s,o),d===null&&Uo(e,n,o,Os,s),d===c)break;c=d}c!==null&&o.stopPropagation()}else Uo(e,n,o,null,s)}}var Os=null;function Co(e,n,s,o){if(Os=null,e=fo(o),e=zn(e),e!==null)if(n=Sn(e),n===null)e=null;else if(s=n.tag,s===13){if(e=vl(n),e!==null)return e;e=null}else if(s===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;e=null}else n!==e&&(e=null);return Os=e,null}function Il(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(ah()){case xo:return 1;case Sl:return 4;case As:case ih:return 16;case zl:return 536870912;default:return 16}default:return 16}}var tn=null,Eo=null,Is=null;function Rl(){if(Is)return Is;var e,n=Eo,s=n.length,o,c="value"in tn?tn.value:tn.textContent,d=c.length;for(e=0;e<s&&n[e]===c[e];e++);var g=s-e;for(o=1;o<=g&&n[s-o]===c[d-o];o++);return Is=c.slice(e,1<o?1-o:void 0)}function Rs(e){var n=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&n===13&&(e=13)):e=n,e===10&&(e=13),32<=e||e===13?e:0}function Ls(){return!0}function Ll(){return!1}function lt(e){function n(s,o,c,d,g){this._reactName=s,this._targetInst=c,this.type=o,this.nativeEvent=d,this.target=g,this.currentTarget=null;for(var v in e)e.hasOwnProperty(v)&&(s=e[v],this[v]=s?s(d):d[v]);return this.isDefaultPrevented=(d.defaultPrevented!=null?d.defaultPrevented:d.returnValue===!1)?Ls:Ll,this.isPropagationStopped=Ll,this}return V(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var s=this.nativeEvent;s&&(s.preventDefault?s.preventDefault():typeof s.returnValue!="unknown"&&(s.returnValue=!1),this.isDefaultPrevented=Ls)},stopPropagation:function(){var s=this.nativeEvent;s&&(s.stopPropagation?s.stopPropagation():typeof s.cancelBubble!="unknown"&&(s.cancelBubble=!0),this.isPropagationStopped=Ls)},persist:function(){},isPersistent:Ls}),n}var qn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},So=lt(qn),Tr=V({},qn,{view:0,detail:0}),wh=lt(Tr),zo,Ao,Pr,Bs=V({},Tr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:No,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!==Pr&&(Pr&&e.type==="mousemove"?(zo=e.screenX-Pr.screenX,Ao=e.screenY-Pr.screenY):Ao=zo=0,Pr=e),zo)},movementY:function(e){return"movementY"in e?e.movementY:Ao}}),Bl=lt(Bs),kh=V({},Bs,{dataTransfer:0}),_h=lt(kh),Ch=V({},Tr,{relatedTarget:0}),Do=lt(Ch),Eh=V({},qn,{animationName:0,elapsedTime:0,pseudoElement:0}),Sh=lt(Eh),zh=V({},qn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Ah=lt(zh),Dh=V({},qn,{data:0}),Ul=lt(Dh),Nh={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},jh={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"},Fh={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Th(e){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(e):(e=Fh[e])?!!n[e]:!1}function No(){return Th}var Ph=V({},Tr,{key:function(e){if(e.key){var n=Nh[e.key]||e.key;if(n!=="Unidentified")return n}return e.type==="keypress"?(e=Rs(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?jh[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:No,charCode:function(e){return e.type==="keypress"?Rs(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Rs(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Mh=lt(Ph),Oh=V({},Bs,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),$l=lt(Oh),Ih=V({},Tr,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:No}),Rh=lt(Ih),Lh=V({},qn,{propertyName:0,elapsedTime:0,pseudoElement:0}),Bh=lt(Lh),Uh=V({},Bs,{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}),$h=lt(Uh),Hh=[9,13,27,32],jo=f&&"CompositionEvent"in window,Mr=null;f&&"documentMode"in document&&(Mr=document.documentMode);var qh=f&&"TextEvent"in window&&!Mr,Hl=f&&(!jo||Mr&&8<Mr&&11>=Mr),ql=" ",Vl=!1;function Wl(e,n){switch(e){case"keyup":return Hh.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Gl(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Vn=!1;function Vh(e,n){switch(e){case"compositionend":return Gl(n);case"keypress":return n.which!==32?null:(Vl=!0,ql);case"textInput":return e=n.data,e===ql&&Vl?null:e;default:return null}}function Wh(e,n){if(Vn)return e==="compositionend"||!jo&&Wl(e,n)?(e=Rl(),Is=Eo=tn=null,Vn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return Hl&&n.locale!=="ko"?null:n.data;default:return null}}var Gh={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 Kl(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n==="input"?!!Gh[e.type]:n==="textarea"}function Ql(e,n,s,o){ml(o),n=Vs(n,"onChange"),0<n.length&&(s=new So("onChange","change",null,s,o),e.push({event:s,listeners:n}))}var Or=null,Ir=null;function Kh(e){hc(e,0)}function Us(e){var n=Zn(e);if(rl(n))return e}function Qh(e,n){if(e==="change")return n}var Zl=!1;if(f){var Fo;if(f){var To="oninput"in document;if(!To){var Yl=document.createElement("div");Yl.setAttribute("oninput","return;"),To=typeof Yl.oninput=="function"}Fo=To}else Fo=!1;Zl=Fo&&(!document.documentMode||9<document.documentMode)}function Xl(){Or&&(Or.detachEvent("onpropertychange",Jl),Ir=Or=null)}function Jl(e){if(e.propertyName==="value"&&Us(Ir)){var n=[];Ql(n,Ir,e,fo(e)),yl(Kh,n)}}function Zh(e,n,s){e==="focusin"?(Xl(),Or=n,Ir=s,Or.attachEvent("onpropertychange",Jl)):e==="focusout"&&Xl()}function Yh(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Us(Ir)}function Xh(e,n){if(e==="click")return Us(n)}function Jh(e,n){if(e==="input"||e==="change")return Us(n)}function ep(e,n){return e===n&&(e!==0||1/e===1/n)||e!==e&&n!==n}var Ct=typeof Object.is=="function"?Object.is:ep;function Rr(e,n){if(Ct(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;var s=Object.keys(e),o=Object.keys(n);if(s.length!==o.length)return!1;for(o=0;o<s.length;o++){var c=s[o];if(!m.call(n,c)||!Ct(e[c],n[c]))return!1}return!0}function ec(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function tc(e,n){var s=ec(e);e=0;for(var o;s;){if(s.nodeType===3){if(o=e+s.textContent.length,e<=n&&o>=n)return{node:s,offset:n-e};e=o}e:{for(;s;){if(s.nextSibling){s=s.nextSibling;break e}s=s.parentNode}s=void 0}s=ec(s)}}function nc(e,n){return e&&n?e===n?!0:e&&e.nodeType===3?!1:n&&n.nodeType===3?nc(e,n.parentNode):"contains"in e?e.contains(n):e.compareDocumentPosition?!!(e.compareDocumentPosition(n)&16):!1:!1}function rc(){for(var e=window,n=Cs();n instanceof e.HTMLIFrameElement;){try{var s=typeof n.contentWindow.location.href=="string"}catch{s=!1}if(s)e=n.contentWindow;else break;n=Cs(e.document)}return n}function Po(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n&&(n==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||n==="textarea"||e.contentEditable==="true")}function tp(e){var n=rc(),s=e.focusedElem,o=e.selectionRange;if(n!==s&&s&&s.ownerDocument&&nc(s.ownerDocument.documentElement,s)){if(o!==null&&Po(s)){if(n=o.start,e=o.end,e===void 0&&(e=n),"selectionStart"in s)s.selectionStart=n,s.selectionEnd=Math.min(e,s.value.length);else if(e=(n=s.ownerDocument||document)&&n.defaultView||window,e.getSelection){e=e.getSelection();var c=s.textContent.length,d=Math.min(o.start,c);o=o.end===void 0?d:Math.min(o.end,c),!e.extend&&d>o&&(c=o,o=d,d=c),c=tc(s,d);var g=tc(s,o);c&&g&&(e.rangeCount!==1||e.anchorNode!==c.node||e.anchorOffset!==c.offset||e.focusNode!==g.node||e.focusOffset!==g.offset)&&(n=n.createRange(),n.setStart(c.node,c.offset),e.removeAllRanges(),d>o?(e.addRange(n),e.extend(g.node,g.offset)):(n.setEnd(g.node,g.offset),e.addRange(n)))}}for(n=[],e=s;e=e.parentNode;)e.nodeType===1&&n.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof s.focus=="function"&&s.focus(),s=0;s<n.length;s++)e=n[s],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var np=f&&"documentMode"in document&&11>=document.documentMode,Wn=null,Mo=null,Lr=null,Oo=!1;function sc(e,n,s){var o=s.window===s?s.document:s.nodeType===9?s:s.ownerDocument;Oo||Wn==null||Wn!==Cs(o)||(o=Wn,"selectionStart"in o&&Po(o)?o={start:o.selectionStart,end:o.selectionEnd}:(o=(o.ownerDocument&&o.ownerDocument.defaultView||window).getSelection(),o={anchorNode:o.anchorNode,anchorOffset:o.anchorOffset,focusNode:o.focusNode,focusOffset:o.focusOffset}),Lr&&Rr(Lr,o)||(Lr=o,o=Vs(Mo,"onSelect"),0<o.length&&(n=new So("onSelect","select",null,n,s),e.push({event:n,listeners:o}),n.target=Wn)))}function $s(e,n){var s={};return s[e.toLowerCase()]=n.toLowerCase(),s["Webkit"+e]="webkit"+n,s["Moz"+e]="moz"+n,s}var Gn={animationend:$s("Animation","AnimationEnd"),animationiteration:$s("Animation","AnimationIteration"),animationstart:$s("Animation","AnimationStart"),transitionend:$s("Transition","TransitionEnd")},Io={},uc={};f&&(uc=document.createElement("div").style,"AnimationEvent"in window||(delete Gn.animationend.animation,delete Gn.animationiteration.animation,delete Gn.animationstart.animation),"TransitionEvent"in window||delete Gn.transitionend.transition);function Hs(e){if(Io[e])return Io[e];if(!Gn[e])return e;var n=Gn[e],s;for(s in n)if(n.hasOwnProperty(s)&&s in uc)return Io[e]=n[s];return e}var oc=Hs("animationend"),ac=Hs("animationiteration"),ic=Hs("animationstart"),lc=Hs("transitionend"),cc=new Map,dc="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function nn(e,n){cc.set(e,n),l(n,[e])}for(var Ro=0;Ro<dc.length;Ro++){var Lo=dc[Ro],rp=Lo.toLowerCase(),sp=Lo[0].toUpperCase()+Lo.slice(1);nn(rp,"on"+sp)}nn(oc,"onAnimationEnd"),nn(ac,"onAnimationIteration"),nn(ic,"onAnimationStart"),nn("dblclick","onDoubleClick"),nn("focusin","onFocus"),nn("focusout","onBlur"),nn(lc,"onTransitionEnd"),h("onMouseEnter",["mouseout","mouseover"]),h("onMouseLeave",["mouseout","mouseover"]),h("onPointerEnter",["pointerout","pointerover"]),h("onPointerLeave",["pointerout","pointerover"]),l("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),l("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),l("onBeforeInput",["compositionend","keypress","textInput","paste"]),l("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),l("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),l("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Br="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(" "),up=new Set("cancel close invalid load scroll toggle".split(" ").concat(Br));function fc(e,n,s){var o=e.type||"unknown-event";e.currentTarget=s,rh(o,n,void 0,e),e.currentTarget=null}function hc(e,n){n=(n&4)!==0;for(var s=0;s<e.length;s++){var o=e[s],c=o.event;o=o.listeners;e:{var d=void 0;if(n)for(var g=o.length-1;0<=g;g--){var v=o[g],_=v.instance,N=v.currentTarget;if(v=v.listener,_!==d&&c.isPropagationStopped())break e;fc(c,v,N),d=_}else for(g=0;g<o.length;g++){if(v=o[g],_=v.instance,N=v.currentTarget,v=v.listener,_!==d&&c.isPropagationStopped())break e;fc(c,v,N),d=_}}}if(zs)throw e=go,zs=!1,go=null,e}function Ae(e,n){var s=n[Go];s===void 0&&(s=n[Go]=new Set);var o=e+"__bubble";s.has(o)||(pc(n,e,2,!1),s.add(o))}function Bo(e,n,s){var o=0;n&&(o|=4),pc(s,e,o,n)}var qs="_reactListening"+Math.random().toString(36).slice(2);function Ur(e){if(!e[qs]){e[qs]=!0,a.forEach(function(s){s!=="selectionchange"&&(up.has(s)||Bo(s,!1,e),Bo(s,!0,e))});var n=e.nodeType===9?e:e.ownerDocument;n===null||n[qs]||(n[qs]=!0,Bo("selectionchange",!1,n))}}function pc(e,n,s,o){switch(Il(n)){case 1:var c=yh;break;case 4:c=vh;break;default:c=_o}s=c.bind(null,n,s,e),c=void 0,!mo||n!=="touchstart"&&n!=="touchmove"&&n!=="wheel"||(c=!0),o?c!==void 0?e.addEventListener(n,s,{capture:!0,passive:c}):e.addEventListener(n,s,!0):c!==void 0?e.addEventListener(n,s,{passive:c}):e.addEventListener(n,s,!1)}function Uo(e,n,s,o,c){var d=o;if((n&1)===0&&(n&2)===0&&o!==null)e:for(;;){if(o===null)return;var g=o.tag;if(g===3||g===4){var v=o.stateNode.containerInfo;if(v===c||v.nodeType===8&&v.parentNode===c)break;if(g===4)for(g=o.return;g!==null;){var _=g.tag;if((_===3||_===4)&&(_=g.stateNode.containerInfo,_===c||_.nodeType===8&&_.parentNode===c))return;g=g.return}for(;v!==null;){if(g=zn(v),g===null)return;if(_=g.tag,_===5||_===6){o=d=g;continue e}v=v.parentNode}}o=o.return}yl(function(){var N=d,O=fo(s),B=[];e:{var M=cc.get(e);if(M!==void 0){var W=So,X=e;switch(e){case"keypress":if(Rs(s)===0)break e;case"keydown":case"keyup":W=Mh;break;case"focusin":X="focus",W=Do;break;case"focusout":X="blur",W=Do;break;case"beforeblur":case"afterblur":W=Do;break;case"click":if(s.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":W=Bl;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":W=_h;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":W=Rh;break;case oc:case ac:case ic:W=Sh;break;case lc:W=Bh;break;case"scroll":W=wh;break;case"wheel":W=$h;break;case"copy":case"cut":case"paste":W=Ah;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":W=$l}var J=(n&4)!==0,Ie=!J&&e==="scroll",z=J?M!==null?M+"Capture":null:M;J=[];for(var E=N,D;E!==null;){D=E;var H=D.stateNode;if(D.tag===5&&H!==null&&(D=H,z!==null&&(H=_r(E,z),H!=null&&J.push($r(E,H,D)))),Ie)break;E=E.return}0<J.length&&(M=new W(M,X,null,s,O),B.push({event:M,listeners:J}))}}if((n&7)===0){e:{if(M=e==="mouseover"||e==="pointerover",W=e==="mouseout"||e==="pointerout",M&&s!==co&&(X=s.relatedTarget||s.fromElement)&&(zn(X)||X[Ut]))break e;if((W||M)&&(M=O.window===O?O:(M=O.ownerDocument)?M.defaultView||M.parentWindow:window,W?(X=s.relatedTarget||s.toElement,W=N,X=X?zn(X):null,X!==null&&(Ie=Sn(X),X!==Ie||X.tag!==5&&X.tag!==6)&&(X=null)):(W=null,X=N),W!==X)){if(J=Bl,H="onMouseLeave",z="onMouseEnter",E="mouse",(e==="pointerout"||e==="pointerover")&&(J=$l,H="onPointerLeave",z="onPointerEnter",E="pointer"),Ie=W==null?M:Zn(W),D=X==null?M:Zn(X),M=new J(H,E+"leave",W,s,O),M.target=Ie,M.relatedTarget=D,H=null,zn(O)===N&&(J=new J(z,E+"enter",X,s,O),J.target=D,J.relatedTarget=Ie,H=J),Ie=H,W&&X)t:{for(J=W,z=X,E=0,D=J;D;D=Kn(D))E++;for(D=0,H=z;H;H=Kn(H))D++;for(;0<E-D;)J=Kn(J),E--;for(;0<D-E;)z=Kn(z),D--;for(;E--;){if(J===z||z!==null&&J===z.alternate)break t;J=Kn(J),z=Kn(z)}J=null}else J=null;W!==null&&mc(B,M,W,J,!1),X!==null&&Ie!==null&&mc(B,Ie,X,J,!0)}}e:{if(M=N?Zn(N):window,W=M.nodeName&&M.nodeName.toLowerCase(),W==="select"||W==="input"&&M.type==="file")var te=Qh;else if(Kl(M))if(Zl)te=Jh;else{te=Yh;var re=Zh}else(W=M.nodeName)&&W.toLowerCase()==="input"&&(M.type==="checkbox"||M.type==="radio")&&(te=Xh);if(te&&(te=te(e,N))){Ql(B,te,s,O);break e}re&&re(e,M,N),e==="focusout"&&(re=M._wrapperState)&&re.controlled&&M.type==="number"&&uo(M,"number",M.value)}switch(re=N?Zn(N):window,e){case"focusin":(Kl(re)||re.contentEditable==="true")&&(Wn=re,Mo=N,Lr=null);break;case"focusout":Lr=Mo=Wn=null;break;case"mousedown":Oo=!0;break;case"contextmenu":case"mouseup":case"dragend":Oo=!1,sc(B,s,O);break;case"selectionchange":if(np)break;case"keydown":case"keyup":sc(B,s,O)}var se;if(jo)e:{switch(e){case"compositionstart":var ae="onCompositionStart";break e;case"compositionend":ae="onCompositionEnd";break e;case"compositionupdate":ae="onCompositionUpdate";break e}ae=void 0}else Vn?Wl(e,s)&&(ae="onCompositionEnd"):e==="keydown"&&s.keyCode===229&&(ae="onCompositionStart");ae&&(Hl&&s.locale!=="ko"&&(Vn||ae!=="onCompositionStart"?ae==="onCompositionEnd"&&Vn&&(se=Rl()):(tn=O,Eo="value"in tn?tn.value:tn.textContent,Vn=!0)),re=Vs(N,ae),0<re.length&&(ae=new Ul(ae,e,null,s,O),B.push({event:ae,listeners:re}),se?ae.data=se:(se=Gl(s),se!==null&&(ae.data=se)))),(se=qh?Vh(e,s):Wh(e,s))&&(N=Vs(N,"onBeforeInput"),0<N.length&&(O=new Ul("onBeforeInput","beforeinput",null,s,O),B.push({event:O,listeners:N}),O.data=se))}hc(B,n)})}function $r(e,n,s){return{instance:e,listener:n,currentTarget:s}}function Vs(e,n){for(var s=n+"Capture",o=[];e!==null;){var c=e,d=c.stateNode;c.tag===5&&d!==null&&(c=d,d=_r(e,s),d!=null&&o.unshift($r(e,d,c)),d=_r(e,n),d!=null&&o.push($r(e,d,c))),e=e.return}return o}function Kn(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function mc(e,n,s,o,c){for(var d=n._reactName,g=[];s!==null&&s!==o;){var v=s,_=v.alternate,N=v.stateNode;if(_!==null&&_===o)break;v.tag===5&&N!==null&&(v=N,c?(_=_r(s,d),_!=null&&g.unshift($r(s,_,v))):c||(_=_r(s,d),_!=null&&g.push($r(s,_,v)))),s=s.return}g.length!==0&&e.push({event:n,listeners:g})}var op=/\r\n?/g,ap=/\u0000|\uFFFD/g;function gc(e){return(typeof e=="string"?e:""+e).replace(op,`
|
|
38
|
+
`).replace(ap,"")}function Ws(e,n,s){if(n=gc(n),gc(e)!==n&&s)throw Error(u(425))}function Gs(){}var $o=null,Ho=null;function qo(e,n){return e==="textarea"||e==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var Vo=typeof setTimeout=="function"?setTimeout:void 0,ip=typeof clearTimeout=="function"?clearTimeout:void 0,xc=typeof Promise=="function"?Promise:void 0,lp=typeof queueMicrotask=="function"?queueMicrotask:typeof xc<"u"?function(e){return xc.resolve(null).then(e).catch(cp)}:Vo;function cp(e){setTimeout(function(){throw e})}function Wo(e,n){var s=n,o=0;do{var c=s.nextSibling;if(e.removeChild(s),c&&c.nodeType===8)if(s=c.data,s==="/$"){if(o===0){e.removeChild(c),Fr(n);return}o--}else s!=="$"&&s!=="$?"&&s!=="$!"||o++;s=c}while(s);Fr(n)}function rn(e){for(;e!=null;e=e.nextSibling){var n=e.nodeType;if(n===1||n===3)break;if(n===8){if(n=e.data,n==="$"||n==="$!"||n==="$?")break;if(n==="/$")return null}}return e}function bc(e){e=e.previousSibling;for(var n=0;e;){if(e.nodeType===8){var s=e.data;if(s==="$"||s==="$!"||s==="$?"){if(n===0)return e;n--}else s==="/$"&&n++}e=e.previousSibling}return null}var Qn=Math.random().toString(36).slice(2),Ft="__reactFiber$"+Qn,Hr="__reactProps$"+Qn,Ut="__reactContainer$"+Qn,Go="__reactEvents$"+Qn,dp="__reactListeners$"+Qn,fp="__reactHandles$"+Qn;function zn(e){var n=e[Ft];if(n)return n;for(var s=e.parentNode;s;){if(n=s[Ut]||s[Ft]){if(s=n.alternate,n.child!==null||s!==null&&s.child!==null)for(e=bc(e);e!==null;){if(s=e[Ft])return s;e=bc(e)}return n}e=s,s=e.parentNode}return null}function qr(e){return e=e[Ft]||e[Ut],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Zn(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(u(33))}function Ks(e){return e[Hr]||null}var Ko=[],Yn=-1;function sn(e){return{current:e}}function De(e){0>Yn||(e.current=Ko[Yn],Ko[Yn]=null,Yn--)}function Ee(e,n){Yn++,Ko[Yn]=e.current,e.current=n}var un={},Ke=sn(un),tt=sn(!1),An=un;function Xn(e,n){var s=e.type.contextTypes;if(!s)return un;var o=e.stateNode;if(o&&o.__reactInternalMemoizedUnmaskedChildContext===n)return o.__reactInternalMemoizedMaskedChildContext;var c={},d;for(d in s)c[d]=n[d];return o&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=n,e.__reactInternalMemoizedMaskedChildContext=c),c}function nt(e){return e=e.childContextTypes,e!=null}function Qs(){De(tt),De(Ke)}function yc(e,n,s){if(Ke.current!==un)throw Error(u(168));Ee(Ke,n),Ee(tt,s)}function vc(e,n,s){var o=e.stateNode;if(n=n.childContextTypes,typeof o.getChildContext!="function")return s;o=o.getChildContext();for(var c in o)if(!(c in n))throw Error(u(108,Ce(e)||"Unknown",c));return V({},s,o)}function Zs(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||un,An=Ke.current,Ee(Ke,e),Ee(tt,tt.current),!0}function wc(e,n,s){var o=e.stateNode;if(!o)throw Error(u(169));s?(e=vc(e,n,An),o.__reactInternalMemoizedMergedChildContext=e,De(tt),De(Ke),Ee(Ke,e)):De(tt),Ee(tt,s)}var $t=null,Ys=!1,Qo=!1;function kc(e){$t===null?$t=[e]:$t.push(e)}function hp(e){Ys=!0,kc(e)}function on(){if(!Qo&&$t!==null){Qo=!0;var e=0,n=ke;try{var s=$t;for(ke=1;e<s.length;e++){var o=s[e];do o=o(!0);while(o!==null)}$t=null,Ys=!1}catch(c){throw $t!==null&&($t=$t.slice(e+1)),Cl(xo,on),c}finally{ke=n,Qo=!1}}return null}var Jn=[],er=0,Xs=null,Js=0,mt=[],gt=0,Dn=null,Ht=1,qt="";function Nn(e,n){Jn[er++]=Js,Jn[er++]=Xs,Xs=e,Js=n}function _c(e,n,s){mt[gt++]=Ht,mt[gt++]=qt,mt[gt++]=Dn,Dn=e;var o=Ht;e=qt;var c=32-_t(o)-1;o&=~(1<<c),s+=1;var d=32-_t(n)+c;if(30<d){var g=c-c%5;d=(o&(1<<g)-1).toString(32),o>>=g,c-=g,Ht=1<<32-_t(n)+c|s<<c|o,qt=d+e}else Ht=1<<d|s<<c|o,qt=e}function Zo(e){e.return!==null&&(Nn(e,1),_c(e,1,0))}function Yo(e){for(;e===Xs;)Xs=Jn[--er],Jn[er]=null,Js=Jn[--er],Jn[er]=null;for(;e===Dn;)Dn=mt[--gt],mt[gt]=null,qt=mt[--gt],mt[gt]=null,Ht=mt[--gt],mt[gt]=null}var ct=null,dt=null,Fe=!1,Et=null;function Cc(e,n){var s=vt(5,null,null,0);s.elementType="DELETED",s.stateNode=n,s.return=e,n=e.deletions,n===null?(e.deletions=[s],e.flags|=16):n.push(s)}function Ec(e,n){switch(e.tag){case 5:var s=e.type;return n=n.nodeType!==1||s.toLowerCase()!==n.nodeName.toLowerCase()?null:n,n!==null?(e.stateNode=n,ct=e,dt=rn(n.firstChild),!0):!1;case 6:return n=e.pendingProps===""||n.nodeType!==3?null:n,n!==null?(e.stateNode=n,ct=e,dt=null,!0):!1;case 13:return n=n.nodeType!==8?null:n,n!==null?(s=Dn!==null?{id:Ht,overflow:qt}:null,e.memoizedState={dehydrated:n,treeContext:s,retryLane:1073741824},s=vt(18,null,null,0),s.stateNode=n,s.return=e,e.child=s,ct=e,dt=null,!0):!1;default:return!1}}function Xo(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Jo(e){if(Fe){var n=dt;if(n){var s=n;if(!Ec(e,n)){if(Xo(e))throw Error(u(418));n=rn(s.nextSibling);var o=ct;n&&Ec(e,n)?Cc(o,s):(e.flags=e.flags&-4097|2,Fe=!1,ct=e)}}else{if(Xo(e))throw Error(u(418));e.flags=e.flags&-4097|2,Fe=!1,ct=e}}}function Sc(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;ct=e}function eu(e){if(e!==ct)return!1;if(!Fe)return Sc(e),Fe=!0,!1;var n;if((n=e.tag!==3)&&!(n=e.tag!==5)&&(n=e.type,n=n!=="head"&&n!=="body"&&!qo(e.type,e.memoizedProps)),n&&(n=dt)){if(Xo(e))throw zc(),Error(u(418));for(;n;)Cc(e,n),n=rn(n.nextSibling)}if(Sc(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(u(317));e:{for(e=e.nextSibling,n=0;e;){if(e.nodeType===8){var s=e.data;if(s==="/$"){if(n===0){dt=rn(e.nextSibling);break e}n--}else s!=="$"&&s!=="$!"&&s!=="$?"||n++}e=e.nextSibling}dt=null}}else dt=ct?rn(e.stateNode.nextSibling):null;return!0}function zc(){for(var e=dt;e;)e=rn(e.nextSibling)}function tr(){dt=ct=null,Fe=!1}function ea(e){Et===null?Et=[e]:Et.push(e)}var pp=R.ReactCurrentBatchConfig;function Vr(e,n,s){if(e=s.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(s._owner){if(s=s._owner,s){if(s.tag!==1)throw Error(u(309));var o=s.stateNode}if(!o)throw Error(u(147,e));var c=o,d=""+e;return n!==null&&n.ref!==null&&typeof n.ref=="function"&&n.ref._stringRef===d?n.ref:(n=function(g){var v=c.refs;g===null?delete v[d]:v[d]=g},n._stringRef=d,n)}if(typeof e!="string")throw Error(u(284));if(!s._owner)throw Error(u(290,e))}return e}function tu(e,n){throw e=Object.prototype.toString.call(n),Error(u(31,e==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":e))}function Ac(e){var n=e._init;return n(e._payload)}function Dc(e){function n(z,E){if(e){var D=z.deletions;D===null?(z.deletions=[E],z.flags|=16):D.push(E)}}function s(z,E){if(!e)return null;for(;E!==null;)n(z,E),E=E.sibling;return null}function o(z,E){for(z=new Map;E!==null;)E.key!==null?z.set(E.key,E):z.set(E.index,E),E=E.sibling;return z}function c(z,E){return z=mn(z,E),z.index=0,z.sibling=null,z}function d(z,E,D){return z.index=D,e?(D=z.alternate,D!==null?(D=D.index,D<E?(z.flags|=2,E):D):(z.flags|=2,E)):(z.flags|=1048576,E)}function g(z){return e&&z.alternate===null&&(z.flags|=2),z}function v(z,E,D,H){return E===null||E.tag!==6?(E=Va(D,z.mode,H),E.return=z,E):(E=c(E,D),E.return=z,E)}function _(z,E,D,H){var te=D.type;return te===Y?O(z,E,D.props.children,H,D.key):E!==null&&(E.elementType===te||typeof te=="object"&&te!==null&&te.$$typeof===_e&&Ac(te)===E.type)?(H=c(E,D.props),H.ref=Vr(z,E,D),H.return=z,H):(H=Eu(D.type,D.key,D.props,null,z.mode,H),H.ref=Vr(z,E,D),H.return=z,H)}function N(z,E,D,H){return E===null||E.tag!==4||E.stateNode.containerInfo!==D.containerInfo||E.stateNode.implementation!==D.implementation?(E=Wa(D,z.mode,H),E.return=z,E):(E=c(E,D.children||[]),E.return=z,E)}function O(z,E,D,H,te){return E===null||E.tag!==7?(E=Rn(D,z.mode,H,te),E.return=z,E):(E=c(E,D),E.return=z,E)}function B(z,E,D){if(typeof E=="string"&&E!==""||typeof E=="number")return E=Va(""+E,z.mode,D),E.return=z,E;if(typeof E=="object"&&E!==null){switch(E.$$typeof){case j:return D=Eu(E.type,E.key,E.props,null,z.mode,D),D.ref=Vr(z,null,E),D.return=z,D;case U:return E=Wa(E,z.mode,D),E.return=z,E;case _e:var H=E._init;return B(z,H(E._payload),D)}if(vr(E)||Q(E))return E=Rn(E,z.mode,D,null),E.return=z,E;tu(z,E)}return null}function M(z,E,D,H){var te=E!==null?E.key:null;if(typeof D=="string"&&D!==""||typeof D=="number")return te!==null?null:v(z,E,""+D,H);if(typeof D=="object"&&D!==null){switch(D.$$typeof){case j:return D.key===te?_(z,E,D,H):null;case U:return D.key===te?N(z,E,D,H):null;case _e:return te=D._init,M(z,E,te(D._payload),H)}if(vr(D)||Q(D))return te!==null?null:O(z,E,D,H,null);tu(z,D)}return null}function W(z,E,D,H,te){if(typeof H=="string"&&H!==""||typeof H=="number")return z=z.get(D)||null,v(E,z,""+H,te);if(typeof H=="object"&&H!==null){switch(H.$$typeof){case j:return z=z.get(H.key===null?D:H.key)||null,_(E,z,H,te);case U:return z=z.get(H.key===null?D:H.key)||null,N(E,z,H,te);case _e:var re=H._init;return W(z,E,D,re(H._payload),te)}if(vr(H)||Q(H))return z=z.get(D)||null,O(E,z,H,te,null);tu(E,H)}return null}function X(z,E,D,H){for(var te=null,re=null,se=E,ae=E=0,He=null;se!==null&&ae<D.length;ae++){se.index>ae?(He=se,se=null):He=se.sibling;var ye=M(z,se,D[ae],H);if(ye===null){se===null&&(se=He);break}e&&se&&ye.alternate===null&&n(z,se),E=d(ye,E,ae),re===null?te=ye:re.sibling=ye,re=ye,se=He}if(ae===D.length)return s(z,se),Fe&&Nn(z,ae),te;if(se===null){for(;ae<D.length;ae++)se=B(z,D[ae],H),se!==null&&(E=d(se,E,ae),re===null?te=se:re.sibling=se,re=se);return Fe&&Nn(z,ae),te}for(se=o(z,se);ae<D.length;ae++)He=W(se,z,ae,D[ae],H),He!==null&&(e&&He.alternate!==null&&se.delete(He.key===null?ae:He.key),E=d(He,E,ae),re===null?te=He:re.sibling=He,re=He);return e&&se.forEach(function(gn){return n(z,gn)}),Fe&&Nn(z,ae),te}function J(z,E,D,H){var te=Q(D);if(typeof te!="function")throw Error(u(150));if(D=te.call(D),D==null)throw Error(u(151));for(var re=te=null,se=E,ae=E=0,He=null,ye=D.next();se!==null&&!ye.done;ae++,ye=D.next()){se.index>ae?(He=se,se=null):He=se.sibling;var gn=M(z,se,ye.value,H);if(gn===null){se===null&&(se=He);break}e&&se&&gn.alternate===null&&n(z,se),E=d(gn,E,ae),re===null?te=gn:re.sibling=gn,re=gn,se=He}if(ye.done)return s(z,se),Fe&&Nn(z,ae),te;if(se===null){for(;!ye.done;ae++,ye=D.next())ye=B(z,ye.value,H),ye!==null&&(E=d(ye,E,ae),re===null?te=ye:re.sibling=ye,re=ye);return Fe&&Nn(z,ae),te}for(se=o(z,se);!ye.done;ae++,ye=D.next())ye=W(se,z,ae,ye.value,H),ye!==null&&(e&&ye.alternate!==null&&se.delete(ye.key===null?ae:ye.key),E=d(ye,E,ae),re===null?te=ye:re.sibling=ye,re=ye);return e&&se.forEach(function(Gp){return n(z,Gp)}),Fe&&Nn(z,ae),te}function Ie(z,E,D,H){if(typeof D=="object"&&D!==null&&D.type===Y&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case j:e:{for(var te=D.key,re=E;re!==null;){if(re.key===te){if(te=D.type,te===Y){if(re.tag===7){s(z,re.sibling),E=c(re,D.props.children),E.return=z,z=E;break e}}else if(re.elementType===te||typeof te=="object"&&te!==null&&te.$$typeof===_e&&Ac(te)===re.type){s(z,re.sibling),E=c(re,D.props),E.ref=Vr(z,re,D),E.return=z,z=E;break e}s(z,re);break}else n(z,re);re=re.sibling}D.type===Y?(E=Rn(D.props.children,z.mode,H,D.key),E.return=z,z=E):(H=Eu(D.type,D.key,D.props,null,z.mode,H),H.ref=Vr(z,E,D),H.return=z,z=H)}return g(z);case U:e:{for(re=D.key;E!==null;){if(E.key===re)if(E.tag===4&&E.stateNode.containerInfo===D.containerInfo&&E.stateNode.implementation===D.implementation){s(z,E.sibling),E=c(E,D.children||[]),E.return=z,z=E;break e}else{s(z,E);break}else n(z,E);E=E.sibling}E=Wa(D,z.mode,H),E.return=z,z=E}return g(z);case _e:return re=D._init,Ie(z,E,re(D._payload),H)}if(vr(D))return X(z,E,D,H);if(Q(D))return J(z,E,D,H);tu(z,D)}return typeof D=="string"&&D!==""||typeof D=="number"?(D=""+D,E!==null&&E.tag===6?(s(z,E.sibling),E=c(E,D),E.return=z,z=E):(s(z,E),E=Va(D,z.mode,H),E.return=z,z=E),g(z)):s(z,E)}return Ie}var nr=Dc(!0),Nc=Dc(!1),nu=sn(null),ru=null,rr=null,ta=null;function na(){ta=rr=ru=null}function ra(e){var n=nu.current;De(nu),e._currentValue=n}function sa(e,n,s){for(;e!==null;){var o=e.alternate;if((e.childLanes&n)!==n?(e.childLanes|=n,o!==null&&(o.childLanes|=n)):o!==null&&(o.childLanes&n)!==n&&(o.childLanes|=n),e===s)break;e=e.return}}function sr(e,n){ru=e,ta=rr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&n)!==0&&(rt=!0),e.firstContext=null)}function xt(e){var n=e._currentValue;if(ta!==e)if(e={context:e,memoizedValue:n,next:null},rr===null){if(ru===null)throw Error(u(308));rr=e,ru.dependencies={lanes:0,firstContext:e}}else rr=rr.next=e;return n}var jn=null;function ua(e){jn===null?jn=[e]:jn.push(e)}function jc(e,n,s,o){var c=n.interleaved;return c===null?(s.next=s,ua(n)):(s.next=c.next,c.next=s),n.interleaved=s,Vt(e,o)}function Vt(e,n){e.lanes|=n;var s=e.alternate;for(s!==null&&(s.lanes|=n),s=e,e=e.return;e!==null;)e.childLanes|=n,s=e.alternate,s!==null&&(s.childLanes|=n),s=e,e=e.return;return s.tag===3?s.stateNode:null}var an=!1;function oa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Fc(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Wt(e,n){return{eventTime:e,lane:n,tag:0,payload:null,callback:null,next:null}}function ln(e,n,s){var o=e.updateQueue;if(o===null)return null;if(o=o.shared,(ge&2)!==0){var c=o.pending;return c===null?n.next=n:(n.next=c.next,c.next=n),o.pending=n,Vt(e,s)}return c=o.interleaved,c===null?(n.next=n,ua(o)):(n.next=c.next,c.next=n),o.interleaved=n,Vt(e,s)}function su(e,n,s){if(n=n.updateQueue,n!==null&&(n=n.shared,(s&4194240)!==0)){var o=n.lanes;o&=e.pendingLanes,s|=o,n.lanes=s,vo(e,s)}}function Tc(e,n){var s=e.updateQueue,o=e.alternate;if(o!==null&&(o=o.updateQueue,s===o)){var c=null,d=null;if(s=s.firstBaseUpdate,s!==null){do{var g={eventTime:s.eventTime,lane:s.lane,tag:s.tag,payload:s.payload,callback:s.callback,next:null};d===null?c=d=g:d=d.next=g,s=s.next}while(s!==null);d===null?c=d=n:d=d.next=n}else c=d=n;s={baseState:o.baseState,firstBaseUpdate:c,lastBaseUpdate:d,shared:o.shared,effects:o.effects},e.updateQueue=s;return}e=s.lastBaseUpdate,e===null?s.firstBaseUpdate=n:e.next=n,s.lastBaseUpdate=n}function uu(e,n,s,o){var c=e.updateQueue;an=!1;var d=c.firstBaseUpdate,g=c.lastBaseUpdate,v=c.shared.pending;if(v!==null){c.shared.pending=null;var _=v,N=_.next;_.next=null,g===null?d=N:g.next=N,g=_;var O=e.alternate;O!==null&&(O=O.updateQueue,v=O.lastBaseUpdate,v!==g&&(v===null?O.firstBaseUpdate=N:v.next=N,O.lastBaseUpdate=_))}if(d!==null){var B=c.baseState;g=0,O=N=_=null,v=d;do{var M=v.lane,W=v.eventTime;if((o&M)===M){O!==null&&(O=O.next={eventTime:W,lane:0,tag:v.tag,payload:v.payload,callback:v.callback,next:null});e:{var X=e,J=v;switch(M=n,W=s,J.tag){case 1:if(X=J.payload,typeof X=="function"){B=X.call(W,B,M);break e}B=X;break e;case 3:X.flags=X.flags&-65537|128;case 0:if(X=J.payload,M=typeof X=="function"?X.call(W,B,M):X,M==null)break e;B=V({},B,M);break e;case 2:an=!0}}v.callback!==null&&v.lane!==0&&(e.flags|=64,M=c.effects,M===null?c.effects=[v]:M.push(v))}else W={eventTime:W,lane:M,tag:v.tag,payload:v.payload,callback:v.callback,next:null},O===null?(N=O=W,_=B):O=O.next=W,g|=M;if(v=v.next,v===null){if(v=c.shared.pending,v===null)break;M=v,v=M.next,M.next=null,c.lastBaseUpdate=M,c.shared.pending=null}}while(!0);if(O===null&&(_=B),c.baseState=_,c.firstBaseUpdate=N,c.lastBaseUpdate=O,n=c.shared.interleaved,n!==null){c=n;do g|=c.lane,c=c.next;while(c!==n)}else d===null&&(c.shared.lanes=0);Pn|=g,e.lanes=g,e.memoizedState=B}}function Pc(e,n,s){if(e=n.effects,n.effects=null,e!==null)for(n=0;n<e.length;n++){var o=e[n],c=o.callback;if(c!==null){if(o.callback=null,o=s,typeof c!="function")throw Error(u(191,c));c.call(o)}}}var Wr={},Tt=sn(Wr),Gr=sn(Wr),Kr=sn(Wr);function Fn(e){if(e===Wr)throw Error(u(174));return e}function aa(e,n){switch(Ee(Kr,n),Ee(Gr,e),Ee(Tt,Wr),e=n.nodeType,e){case 9:case 11:n=(n=n.documentElement)?n.namespaceURI:ao(null,"");break;default:e=e===8?n.parentNode:n,n=e.namespaceURI||null,e=e.tagName,n=ao(n,e)}De(Tt),Ee(Tt,n)}function ur(){De(Tt),De(Gr),De(Kr)}function Mc(e){Fn(Kr.current);var n=Fn(Tt.current),s=ao(n,e.type);n!==s&&(Ee(Gr,e),Ee(Tt,s))}function ia(e){Gr.current===e&&(De(Tt),De(Gr))}var Te=sn(0);function ou(e){for(var n=e;n!==null;){if(n.tag===13){var s=n.memoizedState;if(s!==null&&(s=s.dehydrated,s===null||s.data==="$?"||s.data==="$!"))return n}else if(n.tag===19&&n.memoizedProps.revealOrder!==void 0){if((n.flags&128)!==0)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var la=[];function ca(){for(var e=0;e<la.length;e++)la[e]._workInProgressVersionPrimary=null;la.length=0}var au=R.ReactCurrentDispatcher,da=R.ReactCurrentBatchConfig,Tn=0,Pe=null,Le=null,Ue=null,iu=!1,Qr=!1,Zr=0,mp=0;function Qe(){throw Error(u(321))}function fa(e,n){if(n===null)return!1;for(var s=0;s<n.length&&s<e.length;s++)if(!Ct(e[s],n[s]))return!1;return!0}function ha(e,n,s,o,c,d){if(Tn=d,Pe=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,au.current=e===null||e.memoizedState===null?yp:vp,e=s(o,c),Qr){d=0;do{if(Qr=!1,Zr=0,25<=d)throw Error(u(301));d+=1,Ue=Le=null,n.updateQueue=null,au.current=wp,e=s(o,c)}while(Qr)}if(au.current=du,n=Le!==null&&Le.next!==null,Tn=0,Ue=Le=Pe=null,iu=!1,n)throw Error(u(300));return e}function pa(){var e=Zr!==0;return Zr=0,e}function Pt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Ue===null?Pe.memoizedState=Ue=e:Ue=Ue.next=e,Ue}function bt(){if(Le===null){var e=Pe.alternate;e=e!==null?e.memoizedState:null}else e=Le.next;var n=Ue===null?Pe.memoizedState:Ue.next;if(n!==null)Ue=n,Le=e;else{if(e===null)throw Error(u(310));Le=e,e={memoizedState:Le.memoizedState,baseState:Le.baseState,baseQueue:Le.baseQueue,queue:Le.queue,next:null},Ue===null?Pe.memoizedState=Ue=e:Ue=Ue.next=e}return Ue}function Yr(e,n){return typeof n=="function"?n(e):n}function ma(e){var n=bt(),s=n.queue;if(s===null)throw Error(u(311));s.lastRenderedReducer=e;var o=Le,c=o.baseQueue,d=s.pending;if(d!==null){if(c!==null){var g=c.next;c.next=d.next,d.next=g}o.baseQueue=c=d,s.pending=null}if(c!==null){d=c.next,o=o.baseState;var v=g=null,_=null,N=d;do{var O=N.lane;if((Tn&O)===O)_!==null&&(_=_.next={lane:0,action:N.action,hasEagerState:N.hasEagerState,eagerState:N.eagerState,next:null}),o=N.hasEagerState?N.eagerState:e(o,N.action);else{var B={lane:O,action:N.action,hasEagerState:N.hasEagerState,eagerState:N.eagerState,next:null};_===null?(v=_=B,g=o):_=_.next=B,Pe.lanes|=O,Pn|=O}N=N.next}while(N!==null&&N!==d);_===null?g=o:_.next=v,Ct(o,n.memoizedState)||(rt=!0),n.memoizedState=o,n.baseState=g,n.baseQueue=_,s.lastRenderedState=o}if(e=s.interleaved,e!==null){c=e;do d=c.lane,Pe.lanes|=d,Pn|=d,c=c.next;while(c!==e)}else c===null&&(s.lanes=0);return[n.memoizedState,s.dispatch]}function ga(e){var n=bt(),s=n.queue;if(s===null)throw Error(u(311));s.lastRenderedReducer=e;var o=s.dispatch,c=s.pending,d=n.memoizedState;if(c!==null){s.pending=null;var g=c=c.next;do d=e(d,g.action),g=g.next;while(g!==c);Ct(d,n.memoizedState)||(rt=!0),n.memoizedState=d,n.baseQueue===null&&(n.baseState=d),s.lastRenderedState=d}return[d,o]}function Oc(){}function Ic(e,n){var s=Pe,o=bt(),c=n(),d=!Ct(o.memoizedState,c);if(d&&(o.memoizedState=c,rt=!0),o=o.queue,xa(Bc.bind(null,s,o,e),[e]),o.getSnapshot!==n||d||Ue!==null&&Ue.memoizedState.tag&1){if(s.flags|=2048,Xr(9,Lc.bind(null,s,o,c,n),void 0,null),$e===null)throw Error(u(349));(Tn&30)!==0||Rc(s,n,c)}return c}function Rc(e,n,s){e.flags|=16384,e={getSnapshot:n,value:s},n=Pe.updateQueue,n===null?(n={lastEffect:null,stores:null},Pe.updateQueue=n,n.stores=[e]):(s=n.stores,s===null?n.stores=[e]:s.push(e))}function Lc(e,n,s,o){n.value=s,n.getSnapshot=o,Uc(n)&&$c(e)}function Bc(e,n,s){return s(function(){Uc(n)&&$c(e)})}function Uc(e){var n=e.getSnapshot;e=e.value;try{var s=n();return!Ct(e,s)}catch{return!0}}function $c(e){var n=Vt(e,1);n!==null&&Dt(n,e,1,-1)}function Hc(e){var n=Pt();return typeof e=="function"&&(e=e()),n.memoizedState=n.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Yr,lastRenderedState:e},n.queue=e,e=e.dispatch=bp.bind(null,Pe,e),[n.memoizedState,e]}function Xr(e,n,s,o){return e={tag:e,create:n,destroy:s,deps:o,next:null},n=Pe.updateQueue,n===null?(n={lastEffect:null,stores:null},Pe.updateQueue=n,n.lastEffect=e.next=e):(s=n.lastEffect,s===null?n.lastEffect=e.next=e:(o=s.next,s.next=e,e.next=o,n.lastEffect=e)),e}function qc(){return bt().memoizedState}function lu(e,n,s,o){var c=Pt();Pe.flags|=e,c.memoizedState=Xr(1|n,s,void 0,o===void 0?null:o)}function cu(e,n,s,o){var c=bt();o=o===void 0?null:o;var d=void 0;if(Le!==null){var g=Le.memoizedState;if(d=g.destroy,o!==null&&fa(o,g.deps)){c.memoizedState=Xr(n,s,d,o);return}}Pe.flags|=e,c.memoizedState=Xr(1|n,s,d,o)}function Vc(e,n){return lu(8390656,8,e,n)}function xa(e,n){return cu(2048,8,e,n)}function Wc(e,n){return cu(4,2,e,n)}function Gc(e,n){return cu(4,4,e,n)}function Kc(e,n){if(typeof n=="function")return e=e(),n(e),function(){n(null)};if(n!=null)return e=e(),n.current=e,function(){n.current=null}}function Qc(e,n,s){return s=s!=null?s.concat([e]):null,cu(4,4,Kc.bind(null,n,e),s)}function ba(){}function Zc(e,n){var s=bt();n=n===void 0?null:n;var o=s.memoizedState;return o!==null&&n!==null&&fa(n,o[1])?o[0]:(s.memoizedState=[e,n],e)}function Yc(e,n){var s=bt();n=n===void 0?null:n;var o=s.memoizedState;return o!==null&&n!==null&&fa(n,o[1])?o[0]:(e=e(),s.memoizedState=[e,n],e)}function Xc(e,n,s){return(Tn&21)===0?(e.baseState&&(e.baseState=!1,rt=!0),e.memoizedState=s):(Ct(s,n)||(s=Al(),Pe.lanes|=s,Pn|=s,e.baseState=!0),n)}function gp(e,n){var s=ke;ke=s!==0&&4>s?s:4,e(!0);var o=da.transition;da.transition={};try{e(!1),n()}finally{ke=s,da.transition=o}}function Jc(){return bt().memoizedState}function xp(e,n,s){var o=hn(e);if(s={lane:o,action:s,hasEagerState:!1,eagerState:null,next:null},ed(e))td(n,s);else if(s=jc(e,n,s,o),s!==null){var c=Je();Dt(s,e,o,c),nd(s,n,o)}}function bp(e,n,s){var o=hn(e),c={lane:o,action:s,hasEagerState:!1,eagerState:null,next:null};if(ed(e))td(n,c);else{var d=e.alternate;if(e.lanes===0&&(d===null||d.lanes===0)&&(d=n.lastRenderedReducer,d!==null))try{var g=n.lastRenderedState,v=d(g,s);if(c.hasEagerState=!0,c.eagerState=v,Ct(v,g)){var _=n.interleaved;_===null?(c.next=c,ua(n)):(c.next=_.next,_.next=c),n.interleaved=c;return}}catch{}finally{}s=jc(e,n,c,o),s!==null&&(c=Je(),Dt(s,e,o,c),nd(s,n,o))}}function ed(e){var n=e.alternate;return e===Pe||n!==null&&n===Pe}function td(e,n){Qr=iu=!0;var s=e.pending;s===null?n.next=n:(n.next=s.next,s.next=n),e.pending=n}function nd(e,n,s){if((s&4194240)!==0){var o=n.lanes;o&=e.pendingLanes,s|=o,n.lanes=s,vo(e,s)}}var du={readContext:xt,useCallback:Qe,useContext:Qe,useEffect:Qe,useImperativeHandle:Qe,useInsertionEffect:Qe,useLayoutEffect:Qe,useMemo:Qe,useReducer:Qe,useRef:Qe,useState:Qe,useDebugValue:Qe,useDeferredValue:Qe,useTransition:Qe,useMutableSource:Qe,useSyncExternalStore:Qe,useId:Qe,unstable_isNewReconciler:!1},yp={readContext:xt,useCallback:function(e,n){return Pt().memoizedState=[e,n===void 0?null:n],e},useContext:xt,useEffect:Vc,useImperativeHandle:function(e,n,s){return s=s!=null?s.concat([e]):null,lu(4194308,4,Kc.bind(null,n,e),s)},useLayoutEffect:function(e,n){return lu(4194308,4,e,n)},useInsertionEffect:function(e,n){return lu(4,2,e,n)},useMemo:function(e,n){var s=Pt();return n=n===void 0?null:n,e=e(),s.memoizedState=[e,n],e},useReducer:function(e,n,s){var o=Pt();return n=s!==void 0?s(n):n,o.memoizedState=o.baseState=n,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:n},o.queue=e,e=e.dispatch=xp.bind(null,Pe,e),[o.memoizedState,e]},useRef:function(e){var n=Pt();return e={current:e},n.memoizedState=e},useState:Hc,useDebugValue:ba,useDeferredValue:function(e){return Pt().memoizedState=e},useTransition:function(){var e=Hc(!1),n=e[0];return e=gp.bind(null,e[1]),Pt().memoizedState=e,[n,e]},useMutableSource:function(){},useSyncExternalStore:function(e,n,s){var o=Pe,c=Pt();if(Fe){if(s===void 0)throw Error(u(407));s=s()}else{if(s=n(),$e===null)throw Error(u(349));(Tn&30)!==0||Rc(o,n,s)}c.memoizedState=s;var d={value:s,getSnapshot:n};return c.queue=d,Vc(Bc.bind(null,o,d,e),[e]),o.flags|=2048,Xr(9,Lc.bind(null,o,d,s,n),void 0,null),s},useId:function(){var e=Pt(),n=$e.identifierPrefix;if(Fe){var s=qt,o=Ht;s=(o&~(1<<32-_t(o)-1)).toString(32)+s,n=":"+n+"R"+s,s=Zr++,0<s&&(n+="H"+s.toString(32)),n+=":"}else s=mp++,n=":"+n+"r"+s.toString(32)+":";return e.memoizedState=n},unstable_isNewReconciler:!1},vp={readContext:xt,useCallback:Zc,useContext:xt,useEffect:xa,useImperativeHandle:Qc,useInsertionEffect:Wc,useLayoutEffect:Gc,useMemo:Yc,useReducer:ma,useRef:qc,useState:function(){return ma(Yr)},useDebugValue:ba,useDeferredValue:function(e){var n=bt();return Xc(n,Le.memoizedState,e)},useTransition:function(){var e=ma(Yr)[0],n=bt().memoizedState;return[e,n]},useMutableSource:Oc,useSyncExternalStore:Ic,useId:Jc,unstable_isNewReconciler:!1},wp={readContext:xt,useCallback:Zc,useContext:xt,useEffect:xa,useImperativeHandle:Qc,useInsertionEffect:Wc,useLayoutEffect:Gc,useMemo:Yc,useReducer:ga,useRef:qc,useState:function(){return ga(Yr)},useDebugValue:ba,useDeferredValue:function(e){var n=bt();return Le===null?n.memoizedState=e:Xc(n,Le.memoizedState,e)},useTransition:function(){var e=ga(Yr)[0],n=bt().memoizedState;return[e,n]},useMutableSource:Oc,useSyncExternalStore:Ic,useId:Jc,unstable_isNewReconciler:!1};function St(e,n){if(e&&e.defaultProps){n=V({},n),e=e.defaultProps;for(var s in e)n[s]===void 0&&(n[s]=e[s]);return n}return n}function ya(e,n,s,o){n=e.memoizedState,s=s(o,n),s=s==null?n:V({},n,s),e.memoizedState=s,e.lanes===0&&(e.updateQueue.baseState=s)}var fu={isMounted:function(e){return(e=e._reactInternals)?Sn(e)===e:!1},enqueueSetState:function(e,n,s){e=e._reactInternals;var o=Je(),c=hn(e),d=Wt(o,c);d.payload=n,s!=null&&(d.callback=s),n=ln(e,d,c),n!==null&&(Dt(n,e,c,o),su(n,e,c))},enqueueReplaceState:function(e,n,s){e=e._reactInternals;var o=Je(),c=hn(e),d=Wt(o,c);d.tag=1,d.payload=n,s!=null&&(d.callback=s),n=ln(e,d,c),n!==null&&(Dt(n,e,c,o),su(n,e,c))},enqueueForceUpdate:function(e,n){e=e._reactInternals;var s=Je(),o=hn(e),c=Wt(s,o);c.tag=2,n!=null&&(c.callback=n),n=ln(e,c,o),n!==null&&(Dt(n,e,o,s),su(n,e,o))}};function rd(e,n,s,o,c,d,g){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(o,d,g):n.prototype&&n.prototype.isPureReactComponent?!Rr(s,o)||!Rr(c,d):!0}function sd(e,n,s){var o=!1,c=un,d=n.contextType;return typeof d=="object"&&d!==null?d=xt(d):(c=nt(n)?An:Ke.current,o=n.contextTypes,d=(o=o!=null)?Xn(e,c):un),n=new n(s,d),e.memoizedState=n.state!==null&&n.state!==void 0?n.state:null,n.updater=fu,e.stateNode=n,n._reactInternals=e,o&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=c,e.__reactInternalMemoizedMaskedChildContext=d),n}function ud(e,n,s,o){e=n.state,typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(s,o),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(s,o),n.state!==e&&fu.enqueueReplaceState(n,n.state,null)}function va(e,n,s,o){var c=e.stateNode;c.props=s,c.state=e.memoizedState,c.refs={},oa(e);var d=n.contextType;typeof d=="object"&&d!==null?c.context=xt(d):(d=nt(n)?An:Ke.current,c.context=Xn(e,d)),c.state=e.memoizedState,d=n.getDerivedStateFromProps,typeof d=="function"&&(ya(e,n,d,s),c.state=e.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof c.getSnapshotBeforeUpdate=="function"||typeof c.UNSAFE_componentWillMount!="function"&&typeof c.componentWillMount!="function"||(n=c.state,typeof c.componentWillMount=="function"&&c.componentWillMount(),typeof c.UNSAFE_componentWillMount=="function"&&c.UNSAFE_componentWillMount(),n!==c.state&&fu.enqueueReplaceState(c,c.state,null),uu(e,s,c,o),c.state=e.memoizedState),typeof c.componentDidMount=="function"&&(e.flags|=4194308)}function or(e,n){try{var s="",o=n;do s+=xe(o),o=o.return;while(o);var c=s}catch(d){c=`
|
|
39
|
+
Error generating stack: `+d.message+`
|
|
40
|
+
`+d.stack}return{value:e,source:n,stack:c,digest:null}}function wa(e,n,s){return{value:e,source:null,stack:s??null,digest:n??null}}function ka(e,n){try{console.error(n.value)}catch(s){setTimeout(function(){throw s})}}var kp=typeof WeakMap=="function"?WeakMap:Map;function od(e,n,s){s=Wt(-1,s),s.tag=3,s.payload={element:null};var o=n.value;return s.callback=function(){yu||(yu=!0,Ia=o),ka(e,n)},s}function ad(e,n,s){s=Wt(-1,s),s.tag=3;var o=e.type.getDerivedStateFromError;if(typeof o=="function"){var c=n.value;s.payload=function(){return o(c)},s.callback=function(){ka(e,n)}}var d=e.stateNode;return d!==null&&typeof d.componentDidCatch=="function"&&(s.callback=function(){ka(e,n),typeof o!="function"&&(dn===null?dn=new Set([this]):dn.add(this));var g=n.stack;this.componentDidCatch(n.value,{componentStack:g!==null?g:""})}),s}function id(e,n,s){var o=e.pingCache;if(o===null){o=e.pingCache=new kp;var c=new Set;o.set(n,c)}else c=o.get(n),c===void 0&&(c=new Set,o.set(n,c));c.has(s)||(c.add(s),e=Op.bind(null,e,n,s),n.then(e,e))}function ld(e){do{var n;if((n=e.tag===13)&&(n=e.memoizedState,n=n!==null?n.dehydrated!==null:!0),n)return e;e=e.return}while(e!==null);return null}function cd(e,n,s,o,c){return(e.mode&1)===0?(e===n?e.flags|=65536:(e.flags|=128,s.flags|=131072,s.flags&=-52805,s.tag===1&&(s.alternate===null?s.tag=17:(n=Wt(-1,1),n.tag=2,ln(s,n,1))),s.lanes|=1),e):(e.flags|=65536,e.lanes=c,e)}var _p=R.ReactCurrentOwner,rt=!1;function Xe(e,n,s,o){n.child=e===null?Nc(n,null,s,o):nr(n,e.child,s,o)}function dd(e,n,s,o,c){s=s.render;var d=n.ref;return sr(n,c),o=ha(e,n,s,o,d,c),s=pa(),e!==null&&!rt?(n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~c,Gt(e,n,c)):(Fe&&s&&Zo(n),n.flags|=1,Xe(e,n,o,c),n.child)}function fd(e,n,s,o,c){if(e===null){var d=s.type;return typeof d=="function"&&!qa(d)&&d.defaultProps===void 0&&s.compare===null&&s.defaultProps===void 0?(n.tag=15,n.type=d,hd(e,n,d,o,c)):(e=Eu(s.type,null,o,n,n.mode,c),e.ref=n.ref,e.return=n,n.child=e)}if(d=e.child,(e.lanes&c)===0){var g=d.memoizedProps;if(s=s.compare,s=s!==null?s:Rr,s(g,o)&&e.ref===n.ref)return Gt(e,n,c)}return n.flags|=1,e=mn(d,o),e.ref=n.ref,e.return=n,n.child=e}function hd(e,n,s,o,c){if(e!==null){var d=e.memoizedProps;if(Rr(d,o)&&e.ref===n.ref)if(rt=!1,n.pendingProps=o=d,(e.lanes&c)!==0)(e.flags&131072)!==0&&(rt=!0);else return n.lanes=e.lanes,Gt(e,n,c)}return _a(e,n,s,o,c)}function pd(e,n,s){var o=n.pendingProps,c=o.children,d=e!==null?e.memoizedState:null;if(o.mode==="hidden")if((n.mode&1)===0)n.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ee(ir,ft),ft|=s;else{if((s&1073741824)===0)return e=d!==null?d.baseLanes|s:s,n.lanes=n.childLanes=1073741824,n.memoizedState={baseLanes:e,cachePool:null,transitions:null},n.updateQueue=null,Ee(ir,ft),ft|=e,null;n.memoizedState={baseLanes:0,cachePool:null,transitions:null},o=d!==null?d.baseLanes:s,Ee(ir,ft),ft|=o}else d!==null?(o=d.baseLanes|s,n.memoizedState=null):o=s,Ee(ir,ft),ft|=o;return Xe(e,n,c,s),n.child}function md(e,n){var s=n.ref;(e===null&&s!==null||e!==null&&e.ref!==s)&&(n.flags|=512,n.flags|=2097152)}function _a(e,n,s,o,c){var d=nt(s)?An:Ke.current;return d=Xn(n,d),sr(n,c),s=ha(e,n,s,o,d,c),o=pa(),e!==null&&!rt?(n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~c,Gt(e,n,c)):(Fe&&o&&Zo(n),n.flags|=1,Xe(e,n,s,c),n.child)}function gd(e,n,s,o,c){if(nt(s)){var d=!0;Zs(n)}else d=!1;if(sr(n,c),n.stateNode===null)pu(e,n),sd(n,s,o),va(n,s,o,c),o=!0;else if(e===null){var g=n.stateNode,v=n.memoizedProps;g.props=v;var _=g.context,N=s.contextType;typeof N=="object"&&N!==null?N=xt(N):(N=nt(s)?An:Ke.current,N=Xn(n,N));var O=s.getDerivedStateFromProps,B=typeof O=="function"||typeof g.getSnapshotBeforeUpdate=="function";B||typeof g.UNSAFE_componentWillReceiveProps!="function"&&typeof g.componentWillReceiveProps!="function"||(v!==o||_!==N)&&ud(n,g,o,N),an=!1;var M=n.memoizedState;g.state=M,uu(n,o,g,c),_=n.memoizedState,v!==o||M!==_||tt.current||an?(typeof O=="function"&&(ya(n,s,O,o),_=n.memoizedState),(v=an||rd(n,s,v,o,M,_,N))?(B||typeof g.UNSAFE_componentWillMount!="function"&&typeof g.componentWillMount!="function"||(typeof g.componentWillMount=="function"&&g.componentWillMount(),typeof g.UNSAFE_componentWillMount=="function"&&g.UNSAFE_componentWillMount()),typeof g.componentDidMount=="function"&&(n.flags|=4194308)):(typeof g.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=o,n.memoizedState=_),g.props=o,g.state=_,g.context=N,o=v):(typeof g.componentDidMount=="function"&&(n.flags|=4194308),o=!1)}else{g=n.stateNode,Fc(e,n),v=n.memoizedProps,N=n.type===n.elementType?v:St(n.type,v),g.props=N,B=n.pendingProps,M=g.context,_=s.contextType,typeof _=="object"&&_!==null?_=xt(_):(_=nt(s)?An:Ke.current,_=Xn(n,_));var W=s.getDerivedStateFromProps;(O=typeof W=="function"||typeof g.getSnapshotBeforeUpdate=="function")||typeof g.UNSAFE_componentWillReceiveProps!="function"&&typeof g.componentWillReceiveProps!="function"||(v!==B||M!==_)&&ud(n,g,o,_),an=!1,M=n.memoizedState,g.state=M,uu(n,o,g,c);var X=n.memoizedState;v!==B||M!==X||tt.current||an?(typeof W=="function"&&(ya(n,s,W,o),X=n.memoizedState),(N=an||rd(n,s,N,o,M,X,_)||!1)?(O||typeof g.UNSAFE_componentWillUpdate!="function"&&typeof g.componentWillUpdate!="function"||(typeof g.componentWillUpdate=="function"&&g.componentWillUpdate(o,X,_),typeof g.UNSAFE_componentWillUpdate=="function"&&g.UNSAFE_componentWillUpdate(o,X,_)),typeof g.componentDidUpdate=="function"&&(n.flags|=4),typeof g.getSnapshotBeforeUpdate=="function"&&(n.flags|=1024)):(typeof g.componentDidUpdate!="function"||v===e.memoizedProps&&M===e.memoizedState||(n.flags|=4),typeof g.getSnapshotBeforeUpdate!="function"||v===e.memoizedProps&&M===e.memoizedState||(n.flags|=1024),n.memoizedProps=o,n.memoizedState=X),g.props=o,g.state=X,g.context=_,o=N):(typeof g.componentDidUpdate!="function"||v===e.memoizedProps&&M===e.memoizedState||(n.flags|=4),typeof g.getSnapshotBeforeUpdate!="function"||v===e.memoizedProps&&M===e.memoizedState||(n.flags|=1024),o=!1)}return Ca(e,n,s,o,d,c)}function Ca(e,n,s,o,c,d){md(e,n);var g=(n.flags&128)!==0;if(!o&&!g)return c&&wc(n,s,!1),Gt(e,n,d);o=n.stateNode,_p.current=n;var v=g&&typeof s.getDerivedStateFromError!="function"?null:o.render();return n.flags|=1,e!==null&&g?(n.child=nr(n,e.child,null,d),n.child=nr(n,null,v,d)):Xe(e,n,v,d),n.memoizedState=o.state,c&&wc(n,s,!0),n.child}function xd(e){var n=e.stateNode;n.pendingContext?yc(e,n.pendingContext,n.pendingContext!==n.context):n.context&&yc(e,n.context,!1),aa(e,n.containerInfo)}function bd(e,n,s,o,c){return tr(),ea(c),n.flags|=256,Xe(e,n,s,o),n.child}var Ea={dehydrated:null,treeContext:null,retryLane:0};function Sa(e){return{baseLanes:e,cachePool:null,transitions:null}}function yd(e,n,s){var o=n.pendingProps,c=Te.current,d=!1,g=(n.flags&128)!==0,v;if((v=g)||(v=e!==null&&e.memoizedState===null?!1:(c&2)!==0),v?(d=!0,n.flags&=-129):(e===null||e.memoizedState!==null)&&(c|=1),Ee(Te,c&1),e===null)return Jo(n),e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?((n.mode&1)===0?n.lanes=1:e.data==="$!"?n.lanes=8:n.lanes=1073741824,null):(g=o.children,e=o.fallback,d?(o=n.mode,d=n.child,g={mode:"hidden",children:g},(o&1)===0&&d!==null?(d.childLanes=0,d.pendingProps=g):d=Su(g,o,0,null),e=Rn(e,o,s,null),d.return=n,e.return=n,d.sibling=e,n.child=d,n.child.memoizedState=Sa(s),n.memoizedState=Ea,e):za(n,g));if(c=e.memoizedState,c!==null&&(v=c.dehydrated,v!==null))return Cp(e,n,g,o,v,c,s);if(d){d=o.fallback,g=n.mode,c=e.child,v=c.sibling;var _={mode:"hidden",children:o.children};return(g&1)===0&&n.child!==c?(o=n.child,o.childLanes=0,o.pendingProps=_,n.deletions=null):(o=mn(c,_),o.subtreeFlags=c.subtreeFlags&14680064),v!==null?d=mn(v,d):(d=Rn(d,g,s,null),d.flags|=2),d.return=n,o.return=n,o.sibling=d,n.child=o,o=d,d=n.child,g=e.child.memoizedState,g=g===null?Sa(s):{baseLanes:g.baseLanes|s,cachePool:null,transitions:g.transitions},d.memoizedState=g,d.childLanes=e.childLanes&~s,n.memoizedState=Ea,o}return d=e.child,e=d.sibling,o=mn(d,{mode:"visible",children:o.children}),(n.mode&1)===0&&(o.lanes=s),o.return=n,o.sibling=null,e!==null&&(s=n.deletions,s===null?(n.deletions=[e],n.flags|=16):s.push(e)),n.child=o,n.memoizedState=null,o}function za(e,n){return n=Su({mode:"visible",children:n},e.mode,0,null),n.return=e,e.child=n}function hu(e,n,s,o){return o!==null&&ea(o),nr(n,e.child,null,s),e=za(n,n.pendingProps.children),e.flags|=2,n.memoizedState=null,e}function Cp(e,n,s,o,c,d,g){if(s)return n.flags&256?(n.flags&=-257,o=wa(Error(u(422))),hu(e,n,g,o)):n.memoizedState!==null?(n.child=e.child,n.flags|=128,null):(d=o.fallback,c=n.mode,o=Su({mode:"visible",children:o.children},c,0,null),d=Rn(d,c,g,null),d.flags|=2,o.return=n,d.return=n,o.sibling=d,n.child=o,(n.mode&1)!==0&&nr(n,e.child,null,g),n.child.memoizedState=Sa(g),n.memoizedState=Ea,d);if((n.mode&1)===0)return hu(e,n,g,null);if(c.data==="$!"){if(o=c.nextSibling&&c.nextSibling.dataset,o)var v=o.dgst;return o=v,d=Error(u(419)),o=wa(d,o,void 0),hu(e,n,g,o)}if(v=(g&e.childLanes)!==0,rt||v){if(o=$e,o!==null){switch(g&-g){case 4:c=2;break;case 16:c=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:c=32;break;case 536870912:c=268435456;break;default:c=0}c=(c&(o.suspendedLanes|g))!==0?0:c,c!==0&&c!==d.retryLane&&(d.retryLane=c,Vt(e,c),Dt(o,e,c,-1))}return Ha(),o=wa(Error(u(421))),hu(e,n,g,o)}return c.data==="$?"?(n.flags|=128,n.child=e.child,n=Ip.bind(null,e),c._reactRetry=n,null):(e=d.treeContext,dt=rn(c.nextSibling),ct=n,Fe=!0,Et=null,e!==null&&(mt[gt++]=Ht,mt[gt++]=qt,mt[gt++]=Dn,Ht=e.id,qt=e.overflow,Dn=n),n=za(n,o.children),n.flags|=4096,n)}function vd(e,n,s){e.lanes|=n;var o=e.alternate;o!==null&&(o.lanes|=n),sa(e.return,n,s)}function Aa(e,n,s,o,c){var d=e.memoizedState;d===null?e.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:o,tail:s,tailMode:c}:(d.isBackwards=n,d.rendering=null,d.renderingStartTime=0,d.last=o,d.tail=s,d.tailMode=c)}function wd(e,n,s){var o=n.pendingProps,c=o.revealOrder,d=o.tail;if(Xe(e,n,o.children,s),o=Te.current,(o&2)!==0)o=o&1|2,n.flags|=128;else{if(e!==null&&(e.flags&128)!==0)e:for(e=n.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&vd(e,s,n);else if(e.tag===19)vd(e,s,n);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===n)break e;for(;e.sibling===null;){if(e.return===null||e.return===n)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}o&=1}if(Ee(Te,o),(n.mode&1)===0)n.memoizedState=null;else switch(c){case"forwards":for(s=n.child,c=null;s!==null;)e=s.alternate,e!==null&&ou(e)===null&&(c=s),s=s.sibling;s=c,s===null?(c=n.child,n.child=null):(c=s.sibling,s.sibling=null),Aa(n,!1,c,s,d);break;case"backwards":for(s=null,c=n.child,n.child=null;c!==null;){if(e=c.alternate,e!==null&&ou(e)===null){n.child=c;break}e=c.sibling,c.sibling=s,s=c,c=e}Aa(n,!0,s,null,d);break;case"together":Aa(n,!1,null,null,void 0);break;default:n.memoizedState=null}return n.child}function pu(e,n){(n.mode&1)===0&&e!==null&&(e.alternate=null,n.alternate=null,n.flags|=2)}function Gt(e,n,s){if(e!==null&&(n.dependencies=e.dependencies),Pn|=n.lanes,(s&n.childLanes)===0)return null;if(e!==null&&n.child!==e.child)throw Error(u(153));if(n.child!==null){for(e=n.child,s=mn(e,e.pendingProps),n.child=s,s.return=n;e.sibling!==null;)e=e.sibling,s=s.sibling=mn(e,e.pendingProps),s.return=n;s.sibling=null}return n.child}function Ep(e,n,s){switch(n.tag){case 3:xd(n),tr();break;case 5:Mc(n);break;case 1:nt(n.type)&&Zs(n);break;case 4:aa(n,n.stateNode.containerInfo);break;case 10:var o=n.type._context,c=n.memoizedProps.value;Ee(nu,o._currentValue),o._currentValue=c;break;case 13:if(o=n.memoizedState,o!==null)return o.dehydrated!==null?(Ee(Te,Te.current&1),n.flags|=128,null):(s&n.child.childLanes)!==0?yd(e,n,s):(Ee(Te,Te.current&1),e=Gt(e,n,s),e!==null?e.sibling:null);Ee(Te,Te.current&1);break;case 19:if(o=(s&n.childLanes)!==0,(e.flags&128)!==0){if(o)return wd(e,n,s);n.flags|=128}if(c=n.memoizedState,c!==null&&(c.rendering=null,c.tail=null,c.lastEffect=null),Ee(Te,Te.current),o)break;return null;case 22:case 23:return n.lanes=0,pd(e,n,s)}return Gt(e,n,s)}var kd,Da,_d,Cd;kd=function(e,n){for(var s=n.child;s!==null;){if(s.tag===5||s.tag===6)e.appendChild(s.stateNode);else if(s.tag!==4&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===n)break;for(;s.sibling===null;){if(s.return===null||s.return===n)return;s=s.return}s.sibling.return=s.return,s=s.sibling}},Da=function(){},_d=function(e,n,s,o){var c=e.memoizedProps;if(c!==o){e=n.stateNode,Fn(Tt.current);var d=null;switch(s){case"input":c=ro(e,c),o=ro(e,o),d=[];break;case"select":c=V({},c,{value:void 0}),o=V({},o,{value:void 0}),d=[];break;case"textarea":c=oo(e,c),o=oo(e,o),d=[];break;default:typeof c.onClick!="function"&&typeof o.onClick=="function"&&(e.onclick=Gs)}io(s,o);var g;s=null;for(N in c)if(!o.hasOwnProperty(N)&&c.hasOwnProperty(N)&&c[N]!=null)if(N==="style"){var v=c[N];for(g in v)v.hasOwnProperty(g)&&(s||(s={}),s[g]="")}else N!=="dangerouslySetInnerHTML"&&N!=="children"&&N!=="suppressContentEditableWarning"&&N!=="suppressHydrationWarning"&&N!=="autoFocus"&&(i.hasOwnProperty(N)?d||(d=[]):(d=d||[]).push(N,null));for(N in o){var _=o[N];if(v=c!=null?c[N]:void 0,o.hasOwnProperty(N)&&_!==v&&(_!=null||v!=null))if(N==="style")if(v){for(g in v)!v.hasOwnProperty(g)||_&&_.hasOwnProperty(g)||(s||(s={}),s[g]="");for(g in _)_.hasOwnProperty(g)&&v[g]!==_[g]&&(s||(s={}),s[g]=_[g])}else s||(d||(d=[]),d.push(N,s)),s=_;else N==="dangerouslySetInnerHTML"?(_=_?_.__html:void 0,v=v?v.__html:void 0,_!=null&&v!==_&&(d=d||[]).push(N,_)):N==="children"?typeof _!="string"&&typeof _!="number"||(d=d||[]).push(N,""+_):N!=="suppressContentEditableWarning"&&N!=="suppressHydrationWarning"&&(i.hasOwnProperty(N)?(_!=null&&N==="onScroll"&&Ae("scroll",e),d||v===_||(d=[])):(d=d||[]).push(N,_))}s&&(d=d||[]).push("style",s);var N=d;(n.updateQueue=N)&&(n.flags|=4)}},Cd=function(e,n,s,o){s!==o&&(n.flags|=4)};function Jr(e,n){if(!Fe)switch(e.tailMode){case"hidden":n=e.tail;for(var s=null;n!==null;)n.alternate!==null&&(s=n),n=n.sibling;s===null?e.tail=null:s.sibling=null;break;case"collapsed":s=e.tail;for(var o=null;s!==null;)s.alternate!==null&&(o=s),s=s.sibling;o===null?n||e.tail===null?e.tail=null:e.tail.sibling=null:o.sibling=null}}function Ze(e){var n=e.alternate!==null&&e.alternate.child===e.child,s=0,o=0;if(n)for(var c=e.child;c!==null;)s|=c.lanes|c.childLanes,o|=c.subtreeFlags&14680064,o|=c.flags&14680064,c.return=e,c=c.sibling;else for(c=e.child;c!==null;)s|=c.lanes|c.childLanes,o|=c.subtreeFlags,o|=c.flags,c.return=e,c=c.sibling;return e.subtreeFlags|=o,e.childLanes=s,n}function Sp(e,n,s){var o=n.pendingProps;switch(Yo(n),n.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ze(n),null;case 1:return nt(n.type)&&Qs(),Ze(n),null;case 3:return o=n.stateNode,ur(),De(tt),De(Ke),ca(),o.pendingContext&&(o.context=o.pendingContext,o.pendingContext=null),(e===null||e.child===null)&&(eu(n)?n.flags|=4:e===null||e.memoizedState.isDehydrated&&(n.flags&256)===0||(n.flags|=1024,Et!==null&&(Ba(Et),Et=null))),Da(e,n),Ze(n),null;case 5:ia(n);var c=Fn(Kr.current);if(s=n.type,e!==null&&n.stateNode!=null)_d(e,n,s,o,c),e.ref!==n.ref&&(n.flags|=512,n.flags|=2097152);else{if(!o){if(n.stateNode===null)throw Error(u(166));return Ze(n),null}if(e=Fn(Tt.current),eu(n)){o=n.stateNode,s=n.type;var d=n.memoizedProps;switch(o[Ft]=n,o[Hr]=d,e=(n.mode&1)!==0,s){case"dialog":Ae("cancel",o),Ae("close",o);break;case"iframe":case"object":case"embed":Ae("load",o);break;case"video":case"audio":for(c=0;c<Br.length;c++)Ae(Br[c],o);break;case"source":Ae("error",o);break;case"img":case"image":case"link":Ae("error",o),Ae("load",o);break;case"details":Ae("toggle",o);break;case"input":sl(o,d),Ae("invalid",o);break;case"select":o._wrapperState={wasMultiple:!!d.multiple},Ae("invalid",o);break;case"textarea":al(o,d),Ae("invalid",o)}io(s,d),c=null;for(var g in d)if(d.hasOwnProperty(g)){var v=d[g];g==="children"?typeof v=="string"?o.textContent!==v&&(d.suppressHydrationWarning!==!0&&Ws(o.textContent,v,e),c=["children",v]):typeof v=="number"&&o.textContent!==""+v&&(d.suppressHydrationWarning!==!0&&Ws(o.textContent,v,e),c=["children",""+v]):i.hasOwnProperty(g)&&v!=null&&g==="onScroll"&&Ae("scroll",o)}switch(s){case"input":_s(o),ol(o,d,!0);break;case"textarea":_s(o),ll(o);break;case"select":case"option":break;default:typeof d.onClick=="function"&&(o.onclick=Gs)}o=c,n.updateQueue=o,o!==null&&(n.flags|=4)}else{g=c.nodeType===9?c:c.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=cl(s)),e==="http://www.w3.org/1999/xhtml"?s==="script"?(e=g.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof o.is=="string"?e=g.createElement(s,{is:o.is}):(e=g.createElement(s),s==="select"&&(g=e,o.multiple?g.multiple=!0:o.size&&(g.size=o.size))):e=g.createElementNS(e,s),e[Ft]=n,e[Hr]=o,kd(e,n,!1,!1),n.stateNode=e;e:{switch(g=lo(s,o),s){case"dialog":Ae("cancel",e),Ae("close",e),c=o;break;case"iframe":case"object":case"embed":Ae("load",e),c=o;break;case"video":case"audio":for(c=0;c<Br.length;c++)Ae(Br[c],e);c=o;break;case"source":Ae("error",e),c=o;break;case"img":case"image":case"link":Ae("error",e),Ae("load",e),c=o;break;case"details":Ae("toggle",e),c=o;break;case"input":sl(e,o),c=ro(e,o),Ae("invalid",e);break;case"option":c=o;break;case"select":e._wrapperState={wasMultiple:!!o.multiple},c=V({},o,{value:void 0}),Ae("invalid",e);break;case"textarea":al(e,o),c=oo(e,o),Ae("invalid",e);break;default:c=o}io(s,c),v=c;for(d in v)if(v.hasOwnProperty(d)){var _=v[d];d==="style"?hl(e,_):d==="dangerouslySetInnerHTML"?(_=_?_.__html:void 0,_!=null&&dl(e,_)):d==="children"?typeof _=="string"?(s!=="textarea"||_!=="")&&wr(e,_):typeof _=="number"&&wr(e,""+_):d!=="suppressContentEditableWarning"&&d!=="suppressHydrationWarning"&&d!=="autoFocus"&&(i.hasOwnProperty(d)?_!=null&&d==="onScroll"&&Ae("scroll",e):_!=null&&T(e,d,_,g))}switch(s){case"input":_s(e),ol(e,o,!1);break;case"textarea":_s(e),ll(e);break;case"option":o.value!=null&&e.setAttribute("value",""+we(o.value));break;case"select":e.multiple=!!o.multiple,d=o.value,d!=null?Bn(e,!!o.multiple,d,!1):o.defaultValue!=null&&Bn(e,!!o.multiple,o.defaultValue,!0);break;default:typeof c.onClick=="function"&&(e.onclick=Gs)}switch(s){case"button":case"input":case"select":case"textarea":o=!!o.autoFocus;break e;case"img":o=!0;break e;default:o=!1}}o&&(n.flags|=4)}n.ref!==null&&(n.flags|=512,n.flags|=2097152)}return Ze(n),null;case 6:if(e&&n.stateNode!=null)Cd(e,n,e.memoizedProps,o);else{if(typeof o!="string"&&n.stateNode===null)throw Error(u(166));if(s=Fn(Kr.current),Fn(Tt.current),eu(n)){if(o=n.stateNode,s=n.memoizedProps,o[Ft]=n,(d=o.nodeValue!==s)&&(e=ct,e!==null))switch(e.tag){case 3:Ws(o.nodeValue,s,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Ws(o.nodeValue,s,(e.mode&1)!==0)}d&&(n.flags|=4)}else o=(s.nodeType===9?s:s.ownerDocument).createTextNode(o),o[Ft]=n,n.stateNode=o}return Ze(n),null;case 13:if(De(Te),o=n.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(Fe&&dt!==null&&(n.mode&1)!==0&&(n.flags&128)===0)zc(),tr(),n.flags|=98560,d=!1;else if(d=eu(n),o!==null&&o.dehydrated!==null){if(e===null){if(!d)throw Error(u(318));if(d=n.memoizedState,d=d!==null?d.dehydrated:null,!d)throw Error(u(317));d[Ft]=n}else tr(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;Ze(n),d=!1}else Et!==null&&(Ba(Et),Et=null),d=!0;if(!d)return n.flags&65536?n:null}return(n.flags&128)!==0?(n.lanes=s,n):(o=o!==null,o!==(e!==null&&e.memoizedState!==null)&&o&&(n.child.flags|=8192,(n.mode&1)!==0&&(e===null||(Te.current&1)!==0?Be===0&&(Be=3):Ha())),n.updateQueue!==null&&(n.flags|=4),Ze(n),null);case 4:return ur(),Da(e,n),e===null&&Ur(n.stateNode.containerInfo),Ze(n),null;case 10:return ra(n.type._context),Ze(n),null;case 17:return nt(n.type)&&Qs(),Ze(n),null;case 19:if(De(Te),d=n.memoizedState,d===null)return Ze(n),null;if(o=(n.flags&128)!==0,g=d.rendering,g===null)if(o)Jr(d,!1);else{if(Be!==0||e!==null&&(e.flags&128)!==0)for(e=n.child;e!==null;){if(g=ou(e),g!==null){for(n.flags|=128,Jr(d,!1),o=g.updateQueue,o!==null&&(n.updateQueue=o,n.flags|=4),n.subtreeFlags=0,o=s,s=n.child;s!==null;)d=s,e=o,d.flags&=14680066,g=d.alternate,g===null?(d.childLanes=0,d.lanes=e,d.child=null,d.subtreeFlags=0,d.memoizedProps=null,d.memoizedState=null,d.updateQueue=null,d.dependencies=null,d.stateNode=null):(d.childLanes=g.childLanes,d.lanes=g.lanes,d.child=g.child,d.subtreeFlags=0,d.deletions=null,d.memoizedProps=g.memoizedProps,d.memoizedState=g.memoizedState,d.updateQueue=g.updateQueue,d.type=g.type,e=g.dependencies,d.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),s=s.sibling;return Ee(Te,Te.current&1|2),n.child}e=e.sibling}d.tail!==null&&Oe()>lr&&(n.flags|=128,o=!0,Jr(d,!1),n.lanes=4194304)}else{if(!o)if(e=ou(g),e!==null){if(n.flags|=128,o=!0,s=e.updateQueue,s!==null&&(n.updateQueue=s,n.flags|=4),Jr(d,!0),d.tail===null&&d.tailMode==="hidden"&&!g.alternate&&!Fe)return Ze(n),null}else 2*Oe()-d.renderingStartTime>lr&&s!==1073741824&&(n.flags|=128,o=!0,Jr(d,!1),n.lanes=4194304);d.isBackwards?(g.sibling=n.child,n.child=g):(s=d.last,s!==null?s.sibling=g:n.child=g,d.last=g)}return d.tail!==null?(n=d.tail,d.rendering=n,d.tail=n.sibling,d.renderingStartTime=Oe(),n.sibling=null,s=Te.current,Ee(Te,o?s&1|2:s&1),n):(Ze(n),null);case 22:case 23:return $a(),o=n.memoizedState!==null,e!==null&&e.memoizedState!==null!==o&&(n.flags|=8192),o&&(n.mode&1)!==0?(ft&1073741824)!==0&&(Ze(n),n.subtreeFlags&6&&(n.flags|=8192)):Ze(n),null;case 24:return null;case 25:return null}throw Error(u(156,n.tag))}function zp(e,n){switch(Yo(n),n.tag){case 1:return nt(n.type)&&Qs(),e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 3:return ur(),De(tt),De(Ke),ca(),e=n.flags,(e&65536)!==0&&(e&128)===0?(n.flags=e&-65537|128,n):null;case 5:return ia(n),null;case 13:if(De(Te),e=n.memoizedState,e!==null&&e.dehydrated!==null){if(n.alternate===null)throw Error(u(340));tr()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 19:return De(Te),null;case 4:return ur(),null;case 10:return ra(n.type._context),null;case 22:case 23:return $a(),null;case 24:return null;default:return null}}var mu=!1,Ye=!1,Ap=typeof WeakSet=="function"?WeakSet:Set,Z=null;function ar(e,n){var s=e.ref;if(s!==null)if(typeof s=="function")try{s(null)}catch(o){Me(e,n,o)}else s.current=null}function Na(e,n,s){try{s()}catch(o){Me(e,n,o)}}var Ed=!1;function Dp(e,n){if($o=Ms,e=rc(),Po(e)){if("selectionStart"in e)var s={start:e.selectionStart,end:e.selectionEnd};else e:{s=(s=e.ownerDocument)&&s.defaultView||window;var o=s.getSelection&&s.getSelection();if(o&&o.rangeCount!==0){s=o.anchorNode;var c=o.anchorOffset,d=o.focusNode;o=o.focusOffset;try{s.nodeType,d.nodeType}catch{s=null;break e}var g=0,v=-1,_=-1,N=0,O=0,B=e,M=null;t:for(;;){for(var W;B!==s||c!==0&&B.nodeType!==3||(v=g+c),B!==d||o!==0&&B.nodeType!==3||(_=g+o),B.nodeType===3&&(g+=B.nodeValue.length),(W=B.firstChild)!==null;)M=B,B=W;for(;;){if(B===e)break t;if(M===s&&++N===c&&(v=g),M===d&&++O===o&&(_=g),(W=B.nextSibling)!==null)break;B=M,M=B.parentNode}B=W}s=v===-1||_===-1?null:{start:v,end:_}}else s=null}s=s||{start:0,end:0}}else s=null;for(Ho={focusedElem:e,selectionRange:s},Ms=!1,Z=n;Z!==null;)if(n=Z,e=n.child,(n.subtreeFlags&1028)!==0&&e!==null)e.return=n,Z=e;else for(;Z!==null;){n=Z;try{var X=n.alternate;if((n.flags&1024)!==0)switch(n.tag){case 0:case 11:case 15:break;case 1:if(X!==null){var J=X.memoizedProps,Ie=X.memoizedState,z=n.stateNode,E=z.getSnapshotBeforeUpdate(n.elementType===n.type?J:St(n.type,J),Ie);z.__reactInternalSnapshotBeforeUpdate=E}break;case 3:var D=n.stateNode.containerInfo;D.nodeType===1?D.textContent="":D.nodeType===9&&D.documentElement&&D.removeChild(D.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(u(163))}}catch(H){Me(n,n.return,H)}if(e=n.sibling,e!==null){e.return=n.return,Z=e;break}Z=n.return}return X=Ed,Ed=!1,X}function es(e,n,s){var o=n.updateQueue;if(o=o!==null?o.lastEffect:null,o!==null){var c=o=o.next;do{if((c.tag&e)===e){var d=c.destroy;c.destroy=void 0,d!==void 0&&Na(n,s,d)}c=c.next}while(c!==o)}}function gu(e,n){if(n=n.updateQueue,n=n!==null?n.lastEffect:null,n!==null){var s=n=n.next;do{if((s.tag&e)===e){var o=s.create;s.destroy=o()}s=s.next}while(s!==n)}}function ja(e){var n=e.ref;if(n!==null){var s=e.stateNode;switch(e.tag){case 5:e=s;break;default:e=s}typeof n=="function"?n(e):n.current=e}}function Sd(e){var n=e.alternate;n!==null&&(e.alternate=null,Sd(n)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(n=e.stateNode,n!==null&&(delete n[Ft],delete n[Hr],delete n[Go],delete n[dp],delete n[fp])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function zd(e){return e.tag===5||e.tag===3||e.tag===4}function Ad(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||zd(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Fa(e,n,s){var o=e.tag;if(o===5||o===6)e=e.stateNode,n?s.nodeType===8?s.parentNode.insertBefore(e,n):s.insertBefore(e,n):(s.nodeType===8?(n=s.parentNode,n.insertBefore(e,s)):(n=s,n.appendChild(e)),s=s._reactRootContainer,s!=null||n.onclick!==null||(n.onclick=Gs));else if(o!==4&&(e=e.child,e!==null))for(Fa(e,n,s),e=e.sibling;e!==null;)Fa(e,n,s),e=e.sibling}function Ta(e,n,s){var o=e.tag;if(o===5||o===6)e=e.stateNode,n?s.insertBefore(e,n):s.appendChild(e);else if(o!==4&&(e=e.child,e!==null))for(Ta(e,n,s),e=e.sibling;e!==null;)Ta(e,n,s),e=e.sibling}var We=null,zt=!1;function cn(e,n,s){for(s=s.child;s!==null;)Dd(e,n,s),s=s.sibling}function Dd(e,n,s){if(jt&&typeof jt.onCommitFiberUnmount=="function")try{jt.onCommitFiberUnmount(Ds,s)}catch{}switch(s.tag){case 5:Ye||ar(s,n);case 6:var o=We,c=zt;We=null,cn(e,n,s),We=o,zt=c,We!==null&&(zt?(e=We,s=s.stateNode,e.nodeType===8?e.parentNode.removeChild(s):e.removeChild(s)):We.removeChild(s.stateNode));break;case 18:We!==null&&(zt?(e=We,s=s.stateNode,e.nodeType===8?Wo(e.parentNode,s):e.nodeType===1&&Wo(e,s),Fr(e)):Wo(We,s.stateNode));break;case 4:o=We,c=zt,We=s.stateNode.containerInfo,zt=!0,cn(e,n,s),We=o,zt=c;break;case 0:case 11:case 14:case 15:if(!Ye&&(o=s.updateQueue,o!==null&&(o=o.lastEffect,o!==null))){c=o=o.next;do{var d=c,g=d.destroy;d=d.tag,g!==void 0&&((d&2)!==0||(d&4)!==0)&&Na(s,n,g),c=c.next}while(c!==o)}cn(e,n,s);break;case 1:if(!Ye&&(ar(s,n),o=s.stateNode,typeof o.componentWillUnmount=="function"))try{o.props=s.memoizedProps,o.state=s.memoizedState,o.componentWillUnmount()}catch(v){Me(s,n,v)}cn(e,n,s);break;case 21:cn(e,n,s);break;case 22:s.mode&1?(Ye=(o=Ye)||s.memoizedState!==null,cn(e,n,s),Ye=o):cn(e,n,s);break;default:cn(e,n,s)}}function Nd(e){var n=e.updateQueue;if(n!==null){e.updateQueue=null;var s=e.stateNode;s===null&&(s=e.stateNode=new Ap),n.forEach(function(o){var c=Rp.bind(null,e,o);s.has(o)||(s.add(o),o.then(c,c))})}}function At(e,n){var s=n.deletions;if(s!==null)for(var o=0;o<s.length;o++){var c=s[o];try{var d=e,g=n,v=g;e:for(;v!==null;){switch(v.tag){case 5:We=v.stateNode,zt=!1;break e;case 3:We=v.stateNode.containerInfo,zt=!0;break e;case 4:We=v.stateNode.containerInfo,zt=!0;break e}v=v.return}if(We===null)throw Error(u(160));Dd(d,g,c),We=null,zt=!1;var _=c.alternate;_!==null&&(_.return=null),c.return=null}catch(N){Me(c,n,N)}}if(n.subtreeFlags&12854)for(n=n.child;n!==null;)jd(n,e),n=n.sibling}function jd(e,n){var s=e.alternate,o=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(At(n,e),Mt(e),o&4){try{es(3,e,e.return),gu(3,e)}catch(J){Me(e,e.return,J)}try{es(5,e,e.return)}catch(J){Me(e,e.return,J)}}break;case 1:At(n,e),Mt(e),o&512&&s!==null&&ar(s,s.return);break;case 5:if(At(n,e),Mt(e),o&512&&s!==null&&ar(s,s.return),e.flags&32){var c=e.stateNode;try{wr(c,"")}catch(J){Me(e,e.return,J)}}if(o&4&&(c=e.stateNode,c!=null)){var d=e.memoizedProps,g=s!==null?s.memoizedProps:d,v=e.type,_=e.updateQueue;if(e.updateQueue=null,_!==null)try{v==="input"&&d.type==="radio"&&d.name!=null&&ul(c,d),lo(v,g);var N=lo(v,d);for(g=0;g<_.length;g+=2){var O=_[g],B=_[g+1];O==="style"?hl(c,B):O==="dangerouslySetInnerHTML"?dl(c,B):O==="children"?wr(c,B):T(c,O,B,N)}switch(v){case"input":so(c,d);break;case"textarea":il(c,d);break;case"select":var M=c._wrapperState.wasMultiple;c._wrapperState.wasMultiple=!!d.multiple;var W=d.value;W!=null?Bn(c,!!d.multiple,W,!1):M!==!!d.multiple&&(d.defaultValue!=null?Bn(c,!!d.multiple,d.defaultValue,!0):Bn(c,!!d.multiple,d.multiple?[]:"",!1))}c[Hr]=d}catch(J){Me(e,e.return,J)}}break;case 6:if(At(n,e),Mt(e),o&4){if(e.stateNode===null)throw Error(u(162));c=e.stateNode,d=e.memoizedProps;try{c.nodeValue=d}catch(J){Me(e,e.return,J)}}break;case 3:if(At(n,e),Mt(e),o&4&&s!==null&&s.memoizedState.isDehydrated)try{Fr(n.containerInfo)}catch(J){Me(e,e.return,J)}break;case 4:At(n,e),Mt(e);break;case 13:At(n,e),Mt(e),c=e.child,c.flags&8192&&(d=c.memoizedState!==null,c.stateNode.isHidden=d,!d||c.alternate!==null&&c.alternate.memoizedState!==null||(Oa=Oe())),o&4&&Nd(e);break;case 22:if(O=s!==null&&s.memoizedState!==null,e.mode&1?(Ye=(N=Ye)||O,At(n,e),Ye=N):At(n,e),Mt(e),o&8192){if(N=e.memoizedState!==null,(e.stateNode.isHidden=N)&&!O&&(e.mode&1)!==0)for(Z=e,O=e.child;O!==null;){for(B=Z=O;Z!==null;){switch(M=Z,W=M.child,M.tag){case 0:case 11:case 14:case 15:es(4,M,M.return);break;case 1:ar(M,M.return);var X=M.stateNode;if(typeof X.componentWillUnmount=="function"){o=M,s=M.return;try{n=o,X.props=n.memoizedProps,X.state=n.memoizedState,X.componentWillUnmount()}catch(J){Me(o,s,J)}}break;case 5:ar(M,M.return);break;case 22:if(M.memoizedState!==null){Pd(B);continue}}W!==null?(W.return=M,Z=W):Pd(B)}O=O.sibling}e:for(O=null,B=e;;){if(B.tag===5){if(O===null){O=B;try{c=B.stateNode,N?(d=c.style,typeof d.setProperty=="function"?d.setProperty("display","none","important"):d.display="none"):(v=B.stateNode,_=B.memoizedProps.style,g=_!=null&&_.hasOwnProperty("display")?_.display:null,v.style.display=fl("display",g))}catch(J){Me(e,e.return,J)}}}else if(B.tag===6){if(O===null)try{B.stateNode.nodeValue=N?"":B.memoizedProps}catch(J){Me(e,e.return,J)}}else if((B.tag!==22&&B.tag!==23||B.memoizedState===null||B===e)&&B.child!==null){B.child.return=B,B=B.child;continue}if(B===e)break e;for(;B.sibling===null;){if(B.return===null||B.return===e)break e;O===B&&(O=null),B=B.return}O===B&&(O=null),B.sibling.return=B.return,B=B.sibling}}break;case 19:At(n,e),Mt(e),o&4&&Nd(e);break;case 21:break;default:At(n,e),Mt(e)}}function Mt(e){var n=e.flags;if(n&2){try{e:{for(var s=e.return;s!==null;){if(zd(s)){var o=s;break e}s=s.return}throw Error(u(160))}switch(o.tag){case 5:var c=o.stateNode;o.flags&32&&(wr(c,""),o.flags&=-33);var d=Ad(e);Ta(e,d,c);break;case 3:case 4:var g=o.stateNode.containerInfo,v=Ad(e);Fa(e,v,g);break;default:throw Error(u(161))}}catch(_){Me(e,e.return,_)}e.flags&=-3}n&4096&&(e.flags&=-4097)}function Np(e,n,s){Z=e,Fd(e)}function Fd(e,n,s){for(var o=(e.mode&1)!==0;Z!==null;){var c=Z,d=c.child;if(c.tag===22&&o){var g=c.memoizedState!==null||mu;if(!g){var v=c.alternate,_=v!==null&&v.memoizedState!==null||Ye;v=mu;var N=Ye;if(mu=g,(Ye=_)&&!N)for(Z=c;Z!==null;)g=Z,_=g.child,g.tag===22&&g.memoizedState!==null?Md(c):_!==null?(_.return=g,Z=_):Md(c);for(;d!==null;)Z=d,Fd(d),d=d.sibling;Z=c,mu=v,Ye=N}Td(e)}else(c.subtreeFlags&8772)!==0&&d!==null?(d.return=c,Z=d):Td(e)}}function Td(e){for(;Z!==null;){var n=Z;if((n.flags&8772)!==0){var s=n.alternate;try{if((n.flags&8772)!==0)switch(n.tag){case 0:case 11:case 15:Ye||gu(5,n);break;case 1:var o=n.stateNode;if(n.flags&4&&!Ye)if(s===null)o.componentDidMount();else{var c=n.elementType===n.type?s.memoizedProps:St(n.type,s.memoizedProps);o.componentDidUpdate(c,s.memoizedState,o.__reactInternalSnapshotBeforeUpdate)}var d=n.updateQueue;d!==null&&Pc(n,d,o);break;case 3:var g=n.updateQueue;if(g!==null){if(s=null,n.child!==null)switch(n.child.tag){case 5:s=n.child.stateNode;break;case 1:s=n.child.stateNode}Pc(n,g,s)}break;case 5:var v=n.stateNode;if(s===null&&n.flags&4){s=v;var _=n.memoizedProps;switch(n.type){case"button":case"input":case"select":case"textarea":_.autoFocus&&s.focus();break;case"img":_.src&&(s.src=_.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(n.memoizedState===null){var N=n.alternate;if(N!==null){var O=N.memoizedState;if(O!==null){var B=O.dehydrated;B!==null&&Fr(B)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(u(163))}Ye||n.flags&512&&ja(n)}catch(M){Me(n,n.return,M)}}if(n===e){Z=null;break}if(s=n.sibling,s!==null){s.return=n.return,Z=s;break}Z=n.return}}function Pd(e){for(;Z!==null;){var n=Z;if(n===e){Z=null;break}var s=n.sibling;if(s!==null){s.return=n.return,Z=s;break}Z=n.return}}function Md(e){for(;Z!==null;){var n=Z;try{switch(n.tag){case 0:case 11:case 15:var s=n.return;try{gu(4,n)}catch(_){Me(n,s,_)}break;case 1:var o=n.stateNode;if(typeof o.componentDidMount=="function"){var c=n.return;try{o.componentDidMount()}catch(_){Me(n,c,_)}}var d=n.return;try{ja(n)}catch(_){Me(n,d,_)}break;case 5:var g=n.return;try{ja(n)}catch(_){Me(n,g,_)}}}catch(_){Me(n,n.return,_)}if(n===e){Z=null;break}var v=n.sibling;if(v!==null){v.return=n.return,Z=v;break}Z=n.return}}var jp=Math.ceil,xu=R.ReactCurrentDispatcher,Pa=R.ReactCurrentOwner,yt=R.ReactCurrentBatchConfig,ge=0,$e=null,Re=null,Ge=0,ft=0,ir=sn(0),Be=0,ts=null,Pn=0,bu=0,Ma=0,ns=null,st=null,Oa=0,lr=1/0,Kt=null,yu=!1,Ia=null,dn=null,vu=!1,fn=null,wu=0,rs=0,Ra=null,ku=-1,_u=0;function Je(){return(ge&6)!==0?Oe():ku!==-1?ku:ku=Oe()}function hn(e){return(e.mode&1)===0?1:(ge&2)!==0&&Ge!==0?Ge&-Ge:pp.transition!==null?(_u===0&&(_u=Al()),_u):(e=ke,e!==0||(e=window.event,e=e===void 0?16:Il(e.type)),e)}function Dt(e,n,s,o){if(50<rs)throw rs=0,Ra=null,Error(u(185));zr(e,s,o),((ge&2)===0||e!==$e)&&(e===$e&&((ge&2)===0&&(bu|=s),Be===4&&pn(e,Ge)),ut(e,o),s===1&&ge===0&&(n.mode&1)===0&&(lr=Oe()+500,Ys&&on()))}function ut(e,n){var s=e.callbackNode;ph(e,n);var o=Fs(e,e===$e?Ge:0);if(o===0)s!==null&&El(s),e.callbackNode=null,e.callbackPriority=0;else if(n=o&-o,e.callbackPriority!==n){if(s!=null&&El(s),n===1)e.tag===0?hp(Id.bind(null,e)):kc(Id.bind(null,e)),lp(function(){(ge&6)===0&&on()}),s=null;else{switch(Dl(o)){case 1:s=xo;break;case 4:s=Sl;break;case 16:s=As;break;case 536870912:s=zl;break;default:s=As}s=Vd(s,Od.bind(null,e))}e.callbackPriority=n,e.callbackNode=s}}function Od(e,n){if(ku=-1,_u=0,(ge&6)!==0)throw Error(u(327));var s=e.callbackNode;if(cr()&&e.callbackNode!==s)return null;var o=Fs(e,e===$e?Ge:0);if(o===0)return null;if((o&30)!==0||(o&e.expiredLanes)!==0||n)n=Cu(e,o);else{n=o;var c=ge;ge|=2;var d=Ld();($e!==e||Ge!==n)&&(Kt=null,lr=Oe()+500,On(e,n));do try{Pp();break}catch(v){Rd(e,v)}while(!0);na(),xu.current=d,ge=c,Re!==null?n=0:($e=null,Ge=0,n=Be)}if(n!==0){if(n===2&&(c=bo(e),c!==0&&(o=c,n=La(e,c))),n===1)throw s=ts,On(e,0),pn(e,o),ut(e,Oe()),s;if(n===6)pn(e,o);else{if(c=e.current.alternate,(o&30)===0&&!Fp(c)&&(n=Cu(e,o),n===2&&(d=bo(e),d!==0&&(o=d,n=La(e,d))),n===1))throw s=ts,On(e,0),pn(e,o),ut(e,Oe()),s;switch(e.finishedWork=c,e.finishedLanes=o,n){case 0:case 1:throw Error(u(345));case 2:In(e,st,Kt);break;case 3:if(pn(e,o),(o&130023424)===o&&(n=Oa+500-Oe(),10<n)){if(Fs(e,0)!==0)break;if(c=e.suspendedLanes,(c&o)!==o){Je(),e.pingedLanes|=e.suspendedLanes&c;break}e.timeoutHandle=Vo(In.bind(null,e,st,Kt),n);break}In(e,st,Kt);break;case 4:if(pn(e,o),(o&4194240)===o)break;for(n=e.eventTimes,c=-1;0<o;){var g=31-_t(o);d=1<<g,g=n[g],g>c&&(c=g),o&=~d}if(o=c,o=Oe()-o,o=(120>o?120:480>o?480:1080>o?1080:1920>o?1920:3e3>o?3e3:4320>o?4320:1960*jp(o/1960))-o,10<o){e.timeoutHandle=Vo(In.bind(null,e,st,Kt),o);break}In(e,st,Kt);break;case 5:In(e,st,Kt);break;default:throw Error(u(329))}}}return ut(e,Oe()),e.callbackNode===s?Od.bind(null,e):null}function La(e,n){var s=ns;return e.current.memoizedState.isDehydrated&&(On(e,n).flags|=256),e=Cu(e,n),e!==2&&(n=st,st=s,n!==null&&Ba(n)),e}function Ba(e){st===null?st=e:st.push.apply(st,e)}function Fp(e){for(var n=e;;){if(n.flags&16384){var s=n.updateQueue;if(s!==null&&(s=s.stores,s!==null))for(var o=0;o<s.length;o++){var c=s[o],d=c.getSnapshot;c=c.value;try{if(!Ct(d(),c))return!1}catch{return!1}}}if(s=n.child,n.subtreeFlags&16384&&s!==null)s.return=n,n=s;else{if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function pn(e,n){for(n&=~Ma,n&=~bu,e.suspendedLanes|=n,e.pingedLanes&=~n,e=e.expirationTimes;0<n;){var s=31-_t(n),o=1<<s;e[s]=-1,n&=~o}}function Id(e){if((ge&6)!==0)throw Error(u(327));cr();var n=Fs(e,0);if((n&1)===0)return ut(e,Oe()),null;var s=Cu(e,n);if(e.tag!==0&&s===2){var o=bo(e);o!==0&&(n=o,s=La(e,o))}if(s===1)throw s=ts,On(e,0),pn(e,n),ut(e,Oe()),s;if(s===6)throw Error(u(345));return e.finishedWork=e.current.alternate,e.finishedLanes=n,In(e,st,Kt),ut(e,Oe()),null}function Ua(e,n){var s=ge;ge|=1;try{return e(n)}finally{ge=s,ge===0&&(lr=Oe()+500,Ys&&on())}}function Mn(e){fn!==null&&fn.tag===0&&(ge&6)===0&&cr();var n=ge;ge|=1;var s=yt.transition,o=ke;try{if(yt.transition=null,ke=1,e)return e()}finally{ke=o,yt.transition=s,ge=n,(ge&6)===0&&on()}}function $a(){ft=ir.current,De(ir)}function On(e,n){e.finishedWork=null,e.finishedLanes=0;var s=e.timeoutHandle;if(s!==-1&&(e.timeoutHandle=-1,ip(s)),Re!==null)for(s=Re.return;s!==null;){var o=s;switch(Yo(o),o.tag){case 1:o=o.type.childContextTypes,o!=null&&Qs();break;case 3:ur(),De(tt),De(Ke),ca();break;case 5:ia(o);break;case 4:ur();break;case 13:De(Te);break;case 19:De(Te);break;case 10:ra(o.type._context);break;case 22:case 23:$a()}s=s.return}if($e=e,Re=e=mn(e.current,null),Ge=ft=n,Be=0,ts=null,Ma=bu=Pn=0,st=ns=null,jn!==null){for(n=0;n<jn.length;n++)if(s=jn[n],o=s.interleaved,o!==null){s.interleaved=null;var c=o.next,d=s.pending;if(d!==null){var g=d.next;d.next=c,o.next=g}s.pending=o}jn=null}return e}function Rd(e,n){do{var s=Re;try{if(na(),au.current=du,iu){for(var o=Pe.memoizedState;o!==null;){var c=o.queue;c!==null&&(c.pending=null),o=o.next}iu=!1}if(Tn=0,Ue=Le=Pe=null,Qr=!1,Zr=0,Pa.current=null,s===null||s.return===null){Be=1,ts=n,Re=null;break}e:{var d=e,g=s.return,v=s,_=n;if(n=Ge,v.flags|=32768,_!==null&&typeof _=="object"&&typeof _.then=="function"){var N=_,O=v,B=O.tag;if((O.mode&1)===0&&(B===0||B===11||B===15)){var M=O.alternate;M?(O.updateQueue=M.updateQueue,O.memoizedState=M.memoizedState,O.lanes=M.lanes):(O.updateQueue=null,O.memoizedState=null)}var W=ld(g);if(W!==null){W.flags&=-257,cd(W,g,v,d,n),W.mode&1&&id(d,N,n),n=W,_=N;var X=n.updateQueue;if(X===null){var J=new Set;J.add(_),n.updateQueue=J}else X.add(_);break e}else{if((n&1)===0){id(d,N,n),Ha();break e}_=Error(u(426))}}else if(Fe&&v.mode&1){var Ie=ld(g);if(Ie!==null){(Ie.flags&65536)===0&&(Ie.flags|=256),cd(Ie,g,v,d,n),ea(or(_,v));break e}}d=_=or(_,v),Be!==4&&(Be=2),ns===null?ns=[d]:ns.push(d),d=g;do{switch(d.tag){case 3:d.flags|=65536,n&=-n,d.lanes|=n;var z=od(d,_,n);Tc(d,z);break e;case 1:v=_;var E=d.type,D=d.stateNode;if((d.flags&128)===0&&(typeof E.getDerivedStateFromError=="function"||D!==null&&typeof D.componentDidCatch=="function"&&(dn===null||!dn.has(D)))){d.flags|=65536,n&=-n,d.lanes|=n;var H=ad(d,v,n);Tc(d,H);break e}}d=d.return}while(d!==null)}Ud(s)}catch(te){n=te,Re===s&&s!==null&&(Re=s=s.return);continue}break}while(!0)}function Ld(){var e=xu.current;return xu.current=du,e===null?du:e}function Ha(){(Be===0||Be===3||Be===2)&&(Be=4),$e===null||(Pn&268435455)===0&&(bu&268435455)===0||pn($e,Ge)}function Cu(e,n){var s=ge;ge|=2;var o=Ld();($e!==e||Ge!==n)&&(Kt=null,On(e,n));do try{Tp();break}catch(c){Rd(e,c)}while(!0);if(na(),ge=s,xu.current=o,Re!==null)throw Error(u(261));return $e=null,Ge=0,Be}function Tp(){for(;Re!==null;)Bd(Re)}function Pp(){for(;Re!==null&&!uh();)Bd(Re)}function Bd(e){var n=qd(e.alternate,e,ft);e.memoizedProps=e.pendingProps,n===null?Ud(e):Re=n,Pa.current=null}function Ud(e){var n=e;do{var s=n.alternate;if(e=n.return,(n.flags&32768)===0){if(s=Sp(s,n,ft),s!==null){Re=s;return}}else{if(s=zp(s,n),s!==null){s.flags&=32767,Re=s;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Be=6,Re=null;return}}if(n=n.sibling,n!==null){Re=n;return}Re=n=e}while(n!==null);Be===0&&(Be=5)}function In(e,n,s){var o=ke,c=yt.transition;try{yt.transition=null,ke=1,Mp(e,n,s,o)}finally{yt.transition=c,ke=o}return null}function Mp(e,n,s,o){do cr();while(fn!==null);if((ge&6)!==0)throw Error(u(327));s=e.finishedWork;var c=e.finishedLanes;if(s===null)return null;if(e.finishedWork=null,e.finishedLanes=0,s===e.current)throw Error(u(177));e.callbackNode=null,e.callbackPriority=0;var d=s.lanes|s.childLanes;if(mh(e,d),e===$e&&(Re=$e=null,Ge=0),(s.subtreeFlags&2064)===0&&(s.flags&2064)===0||vu||(vu=!0,Vd(As,function(){return cr(),null})),d=(s.flags&15990)!==0,(s.subtreeFlags&15990)!==0||d){d=yt.transition,yt.transition=null;var g=ke;ke=1;var v=ge;ge|=4,Pa.current=null,Dp(e,s),jd(s,e),tp(Ho),Ms=!!$o,Ho=$o=null,e.current=s,Np(s),oh(),ge=v,ke=g,yt.transition=d}else e.current=s;if(vu&&(vu=!1,fn=e,wu=c),d=e.pendingLanes,d===0&&(dn=null),lh(s.stateNode),ut(e,Oe()),n!==null)for(o=e.onRecoverableError,s=0;s<n.length;s++)c=n[s],o(c.value,{componentStack:c.stack,digest:c.digest});if(yu)throw yu=!1,e=Ia,Ia=null,e;return(wu&1)!==0&&e.tag!==0&&cr(),d=e.pendingLanes,(d&1)!==0?e===Ra?rs++:(rs=0,Ra=e):rs=0,on(),null}function cr(){if(fn!==null){var e=Dl(wu),n=yt.transition,s=ke;try{if(yt.transition=null,ke=16>e?16:e,fn===null)var o=!1;else{if(e=fn,fn=null,wu=0,(ge&6)!==0)throw Error(u(331));var c=ge;for(ge|=4,Z=e.current;Z!==null;){var d=Z,g=d.child;if((Z.flags&16)!==0){var v=d.deletions;if(v!==null){for(var _=0;_<v.length;_++){var N=v[_];for(Z=N;Z!==null;){var O=Z;switch(O.tag){case 0:case 11:case 15:es(8,O,d)}var B=O.child;if(B!==null)B.return=O,Z=B;else for(;Z!==null;){O=Z;var M=O.sibling,W=O.return;if(Sd(O),O===N){Z=null;break}if(M!==null){M.return=W,Z=M;break}Z=W}}}var X=d.alternate;if(X!==null){var J=X.child;if(J!==null){X.child=null;do{var Ie=J.sibling;J.sibling=null,J=Ie}while(J!==null)}}Z=d}}if((d.subtreeFlags&2064)!==0&&g!==null)g.return=d,Z=g;else e:for(;Z!==null;){if(d=Z,(d.flags&2048)!==0)switch(d.tag){case 0:case 11:case 15:es(9,d,d.return)}var z=d.sibling;if(z!==null){z.return=d.return,Z=z;break e}Z=d.return}}var E=e.current;for(Z=E;Z!==null;){g=Z;var D=g.child;if((g.subtreeFlags&2064)!==0&&D!==null)D.return=g,Z=D;else e:for(g=E;Z!==null;){if(v=Z,(v.flags&2048)!==0)try{switch(v.tag){case 0:case 11:case 15:gu(9,v)}}catch(te){Me(v,v.return,te)}if(v===g){Z=null;break e}var H=v.sibling;if(H!==null){H.return=v.return,Z=H;break e}Z=v.return}}if(ge=c,on(),jt&&typeof jt.onPostCommitFiberRoot=="function")try{jt.onPostCommitFiberRoot(Ds,e)}catch{}o=!0}return o}finally{ke=s,yt.transition=n}}return!1}function $d(e,n,s){n=or(s,n),n=od(e,n,1),e=ln(e,n,1),n=Je(),e!==null&&(zr(e,1,n),ut(e,n))}function Me(e,n,s){if(e.tag===3)$d(e,e,s);else for(;n!==null;){if(n.tag===3){$d(n,e,s);break}else if(n.tag===1){var o=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof o.componentDidCatch=="function"&&(dn===null||!dn.has(o))){e=or(s,e),e=ad(n,e,1),n=ln(n,e,1),e=Je(),n!==null&&(zr(n,1,e),ut(n,e));break}}n=n.return}}function Op(e,n,s){var o=e.pingCache;o!==null&&o.delete(n),n=Je(),e.pingedLanes|=e.suspendedLanes&s,$e===e&&(Ge&s)===s&&(Be===4||Be===3&&(Ge&130023424)===Ge&&500>Oe()-Oa?On(e,0):Ma|=s),ut(e,n)}function Hd(e,n){n===0&&((e.mode&1)===0?n=1:(n=js,js<<=1,(js&130023424)===0&&(js=4194304)));var s=Je();e=Vt(e,n),e!==null&&(zr(e,n,s),ut(e,s))}function Ip(e){var n=e.memoizedState,s=0;n!==null&&(s=n.retryLane),Hd(e,s)}function Rp(e,n){var s=0;switch(e.tag){case 13:var o=e.stateNode,c=e.memoizedState;c!==null&&(s=c.retryLane);break;case 19:o=e.stateNode;break;default:throw Error(u(314))}o!==null&&o.delete(n),Hd(e,s)}var qd;qd=function(e,n,s){if(e!==null)if(e.memoizedProps!==n.pendingProps||tt.current)rt=!0;else{if((e.lanes&s)===0&&(n.flags&128)===0)return rt=!1,Ep(e,n,s);rt=(e.flags&131072)!==0}else rt=!1,Fe&&(n.flags&1048576)!==0&&_c(n,Js,n.index);switch(n.lanes=0,n.tag){case 2:var o=n.type;pu(e,n),e=n.pendingProps;var c=Xn(n,Ke.current);sr(n,s),c=ha(null,n,o,e,c,s);var d=pa();return n.flags|=1,typeof c=="object"&&c!==null&&typeof c.render=="function"&&c.$$typeof===void 0?(n.tag=1,n.memoizedState=null,n.updateQueue=null,nt(o)?(d=!0,Zs(n)):d=!1,n.memoizedState=c.state!==null&&c.state!==void 0?c.state:null,oa(n),c.updater=fu,n.stateNode=c,c._reactInternals=n,va(n,o,e,s),n=Ca(null,n,o,!0,d,s)):(n.tag=0,Fe&&d&&Zo(n),Xe(null,n,c,s),n=n.child),n;case 16:o=n.elementType;e:{switch(pu(e,n),e=n.pendingProps,c=o._init,o=c(o._payload),n.type=o,c=n.tag=Bp(o),e=St(o,e),c){case 0:n=_a(null,n,o,e,s);break e;case 1:n=gd(null,n,o,e,s);break e;case 11:n=dd(null,n,o,e,s);break e;case 14:n=fd(null,n,o,St(o.type,e),s);break e}throw Error(u(306,o,""))}return n;case 0:return o=n.type,c=n.pendingProps,c=n.elementType===o?c:St(o,c),_a(e,n,o,c,s);case 1:return o=n.type,c=n.pendingProps,c=n.elementType===o?c:St(o,c),gd(e,n,o,c,s);case 3:e:{if(xd(n),e===null)throw Error(u(387));o=n.pendingProps,d=n.memoizedState,c=d.element,Fc(e,n),uu(n,o,null,s);var g=n.memoizedState;if(o=g.element,d.isDehydrated)if(d={element:o,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},n.updateQueue.baseState=d,n.memoizedState=d,n.flags&256){c=or(Error(u(423)),n),n=bd(e,n,o,s,c);break e}else if(o!==c){c=or(Error(u(424)),n),n=bd(e,n,o,s,c);break e}else for(dt=rn(n.stateNode.containerInfo.firstChild),ct=n,Fe=!0,Et=null,s=Nc(n,null,o,s),n.child=s;s;)s.flags=s.flags&-3|4096,s=s.sibling;else{if(tr(),o===c){n=Gt(e,n,s);break e}Xe(e,n,o,s)}n=n.child}return n;case 5:return Mc(n),e===null&&Jo(n),o=n.type,c=n.pendingProps,d=e!==null?e.memoizedProps:null,g=c.children,qo(o,c)?g=null:d!==null&&qo(o,d)&&(n.flags|=32),md(e,n),Xe(e,n,g,s),n.child;case 6:return e===null&&Jo(n),null;case 13:return yd(e,n,s);case 4:return aa(n,n.stateNode.containerInfo),o=n.pendingProps,e===null?n.child=nr(n,null,o,s):Xe(e,n,o,s),n.child;case 11:return o=n.type,c=n.pendingProps,c=n.elementType===o?c:St(o,c),dd(e,n,o,c,s);case 7:return Xe(e,n,n.pendingProps,s),n.child;case 8:return Xe(e,n,n.pendingProps.children,s),n.child;case 12:return Xe(e,n,n.pendingProps.children,s),n.child;case 10:e:{if(o=n.type._context,c=n.pendingProps,d=n.memoizedProps,g=c.value,Ee(nu,o._currentValue),o._currentValue=g,d!==null)if(Ct(d.value,g)){if(d.children===c.children&&!tt.current){n=Gt(e,n,s);break e}}else for(d=n.child,d!==null&&(d.return=n);d!==null;){var v=d.dependencies;if(v!==null){g=d.child;for(var _=v.firstContext;_!==null;){if(_.context===o){if(d.tag===1){_=Wt(-1,s&-s),_.tag=2;var N=d.updateQueue;if(N!==null){N=N.shared;var O=N.pending;O===null?_.next=_:(_.next=O.next,O.next=_),N.pending=_}}d.lanes|=s,_=d.alternate,_!==null&&(_.lanes|=s),sa(d.return,s,n),v.lanes|=s;break}_=_.next}}else if(d.tag===10)g=d.type===n.type?null:d.child;else if(d.tag===18){if(g=d.return,g===null)throw Error(u(341));g.lanes|=s,v=g.alternate,v!==null&&(v.lanes|=s),sa(g,s,n),g=d.sibling}else g=d.child;if(g!==null)g.return=d;else for(g=d;g!==null;){if(g===n){g=null;break}if(d=g.sibling,d!==null){d.return=g.return,g=d;break}g=g.return}d=g}Xe(e,n,c.children,s),n=n.child}return n;case 9:return c=n.type,o=n.pendingProps.children,sr(n,s),c=xt(c),o=o(c),n.flags|=1,Xe(e,n,o,s),n.child;case 14:return o=n.type,c=St(o,n.pendingProps),c=St(o.type,c),fd(e,n,o,c,s);case 15:return hd(e,n,n.type,n.pendingProps,s);case 17:return o=n.type,c=n.pendingProps,c=n.elementType===o?c:St(o,c),pu(e,n),n.tag=1,nt(o)?(e=!0,Zs(n)):e=!1,sr(n,s),sd(n,o,c),va(n,o,c,s),Ca(null,n,o,!0,e,s);case 19:return wd(e,n,s);case 22:return pd(e,n,s)}throw Error(u(156,n.tag))};function Vd(e,n){return Cl(e,n)}function Lp(e,n,s,o){this.tag=e,this.key=s,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=o,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function vt(e,n,s,o){return new Lp(e,n,s,o)}function qa(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Bp(e){if(typeof e=="function")return qa(e)?1:0;if(e!=null){if(e=e.$$typeof,e===K)return 11;if(e===ie)return 14}return 2}function mn(e,n){var s=e.alternate;return s===null?(s=vt(e.tag,n,e.key,e.mode),s.elementType=e.elementType,s.type=e.type,s.stateNode=e.stateNode,s.alternate=e,e.alternate=s):(s.pendingProps=n,s.type=e.type,s.flags=0,s.subtreeFlags=0,s.deletions=null),s.flags=e.flags&14680064,s.childLanes=e.childLanes,s.lanes=e.lanes,s.child=e.child,s.memoizedProps=e.memoizedProps,s.memoizedState=e.memoizedState,s.updateQueue=e.updateQueue,n=e.dependencies,s.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},s.sibling=e.sibling,s.index=e.index,s.ref=e.ref,s}function Eu(e,n,s,o,c,d){var g=2;if(o=e,typeof e=="function")qa(e)&&(g=1);else if(typeof e=="string")g=5;else e:switch(e){case Y:return Rn(s.children,c,d,n);case ne:g=8,c|=8;break;case ee:return e=vt(12,s,n,c|2),e.elementType=ee,e.lanes=d,e;case ve:return e=vt(13,s,n,c),e.elementType=ve,e.lanes=d,e;case fe:return e=vt(19,s,n,c),e.elementType=fe,e.lanes=d,e;case le:return Su(s,c,d,n);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case L:g=10;break e;case ue:g=9;break e;case K:g=11;break e;case ie:g=14;break e;case _e:g=16,o=null;break e}throw Error(u(130,e==null?e:typeof e,""))}return n=vt(g,s,n,c),n.elementType=e,n.type=o,n.lanes=d,n}function Rn(e,n,s,o){return e=vt(7,e,o,n),e.lanes=s,e}function Su(e,n,s,o){return e=vt(22,e,o,n),e.elementType=le,e.lanes=s,e.stateNode={isHidden:!1},e}function Va(e,n,s){return e=vt(6,e,null,n),e.lanes=s,e}function Wa(e,n,s){return n=vt(4,e.children!==null?e.children:[],e.key,n),n.lanes=s,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}function Up(e,n,s,o,c){this.tag=n,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=yo(0),this.expirationTimes=yo(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=yo(0),this.identifierPrefix=o,this.onRecoverableError=c,this.mutableSourceEagerHydrationData=null}function Ga(e,n,s,o,c,d,g,v,_){return e=new Up(e,n,s,v,_),n===1?(n=1,d===!0&&(n|=8)):n=0,d=vt(3,null,null,n),e.current=d,d.stateNode=e,d.memoizedState={element:o,isDehydrated:s,cache:null,transitions:null,pendingSuspenseBoundaries:null},oa(d),e}function $p(e,n,s){var o=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:U,key:o==null?null:""+o,children:e,containerInfo:n,implementation:s}}function Wd(e){if(!e)return un;e=e._reactInternals;e:{if(Sn(e)!==e||e.tag!==1)throw Error(u(170));var n=e;do{switch(n.tag){case 3:n=n.stateNode.context;break e;case 1:if(nt(n.type)){n=n.stateNode.__reactInternalMemoizedMergedChildContext;break e}}n=n.return}while(n!==null);throw Error(u(171))}if(e.tag===1){var s=e.type;if(nt(s))return vc(e,s,n)}return n}function Gd(e,n,s,o,c,d,g,v,_){return e=Ga(s,o,!0,e,c,d,g,v,_),e.context=Wd(null),s=e.current,o=Je(),c=hn(s),d=Wt(o,c),d.callback=n??null,ln(s,d,c),e.current.lanes=c,zr(e,c,o),ut(e,o),e}function zu(e,n,s,o){var c=n.current,d=Je(),g=hn(c);return s=Wd(s),n.context===null?n.context=s:n.pendingContext=s,n=Wt(d,g),n.payload={element:e},o=o===void 0?null:o,o!==null&&(n.callback=o),e=ln(c,n,g),e!==null&&(Dt(e,c,g,d),su(e,c,g)),g}function Au(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Kd(e,n){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var s=e.retryLane;e.retryLane=s!==0&&s<n?s:n}}function Ka(e,n){Kd(e,n),(e=e.alternate)&&Kd(e,n)}function Hp(){return null}var Qd=typeof reportError=="function"?reportError:function(e){console.error(e)};function Qa(e){this._internalRoot=e}Du.prototype.render=Qa.prototype.render=function(e){var n=this._internalRoot;if(n===null)throw Error(u(409));zu(e,n,null,null)},Du.prototype.unmount=Qa.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var n=e.containerInfo;Mn(function(){zu(null,e,null,null)}),n[Ut]=null}};function Du(e){this._internalRoot=e}Du.prototype.unstable_scheduleHydration=function(e){if(e){var n=Fl();e={blockedOn:null,target:e,priority:n};for(var s=0;s<en.length&&n!==0&&n<en[s].priority;s++);en.splice(s,0,e),s===0&&Ml(e)}};function Za(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Nu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Zd(){}function qp(e,n,s,o,c){if(c){if(typeof o=="function"){var d=o;o=function(){var N=Au(g);d.call(N)}}var g=Gd(n,o,e,0,null,!1,!1,"",Zd);return e._reactRootContainer=g,e[Ut]=g.current,Ur(e.nodeType===8?e.parentNode:e),Mn(),g}for(;c=e.lastChild;)e.removeChild(c);if(typeof o=="function"){var v=o;o=function(){var N=Au(_);v.call(N)}}var _=Ga(e,0,!1,null,null,!1,!1,"",Zd);return e._reactRootContainer=_,e[Ut]=_.current,Ur(e.nodeType===8?e.parentNode:e),Mn(function(){zu(n,_,s,o)}),_}function ju(e,n,s,o,c){var d=s._reactRootContainer;if(d){var g=d;if(typeof c=="function"){var v=c;c=function(){var _=Au(g);v.call(_)}}zu(n,g,e,c)}else g=qp(s,n,e,c,o);return Au(g)}Nl=function(e){switch(e.tag){case 3:var n=e.stateNode;if(n.current.memoizedState.isDehydrated){var s=Sr(n.pendingLanes);s!==0&&(vo(n,s|1),ut(n,Oe()),(ge&6)===0&&(lr=Oe()+500,on()))}break;case 13:Mn(function(){var o=Vt(e,1);if(o!==null){var c=Je();Dt(o,e,1,c)}}),Ka(e,1)}},wo=function(e){if(e.tag===13){var n=Vt(e,134217728);if(n!==null){var s=Je();Dt(n,e,134217728,s)}Ka(e,134217728)}},jl=function(e){if(e.tag===13){var n=hn(e),s=Vt(e,n);if(s!==null){var o=Je();Dt(s,e,n,o)}Ka(e,n)}},Fl=function(){return ke},Tl=function(e,n){var s=ke;try{return ke=e,n()}finally{ke=s}},ho=function(e,n,s){switch(n){case"input":if(so(e,s),n=s.name,s.type==="radio"&&n!=null){for(s=e;s.parentNode;)s=s.parentNode;for(s=s.querySelectorAll("input[name="+JSON.stringify(""+n)+'][type="radio"]'),n=0;n<s.length;n++){var o=s[n];if(o!==e&&o.form===e.form){var c=Ks(o);if(!c)throw Error(u(90));rl(o),so(o,c)}}}break;case"textarea":il(e,s);break;case"select":n=s.value,n!=null&&Bn(e,!!s.multiple,n,!1)}},xl=Ua,bl=Mn;var Vp={usingClientEntryPoint:!1,Events:[qr,Zn,Ks,ml,gl,Ua]},ss={findFiberByHostInstance:zn,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Wp={bundleType:ss.bundleType,version:ss.version,rendererPackageName:ss.rendererPackageName,rendererConfig:ss.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:R.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=kl(e),e===null?null:e.stateNode},findFiberByHostInstance:ss.findFiberByHostInstance||Hp,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Fu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Fu.isDisabled&&Fu.supportsFiber)try{Ds=Fu.inject(Wp),jt=Fu}catch{}}return ot.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Vp,ot.createPortal=function(e,n){var s=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Za(n))throw Error(u(200));return $p(e,n,null,s)},ot.createRoot=function(e,n){if(!Za(e))throw Error(u(299));var s=!1,o="",c=Qd;return n!=null&&(n.unstable_strictMode===!0&&(s=!0),n.identifierPrefix!==void 0&&(o=n.identifierPrefix),n.onRecoverableError!==void 0&&(c=n.onRecoverableError)),n=Ga(e,1,!1,null,null,s,!1,o,c),e[Ut]=n.current,Ur(e.nodeType===8?e.parentNode:e),new Qa(n)},ot.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var n=e._reactInternals;if(n===void 0)throw typeof e.render=="function"?Error(u(188)):(e=Object.keys(e).join(","),Error(u(268,e)));return e=kl(n),e=e===null?null:e.stateNode,e},ot.flushSync=function(e){return Mn(e)},ot.hydrate=function(e,n,s){if(!Nu(n))throw Error(u(200));return ju(null,e,n,!0,s)},ot.hydrateRoot=function(e,n,s){if(!Za(e))throw Error(u(405));var o=s!=null&&s.hydratedSources||null,c=!1,d="",g=Qd;if(s!=null&&(s.unstable_strictMode===!0&&(c=!0),s.identifierPrefix!==void 0&&(d=s.identifierPrefix),s.onRecoverableError!==void 0&&(g=s.onRecoverableError)),n=Gd(n,null,e,1,s??null,c,!1,d,g),e[Ut]=n.current,Ur(e),o)for(e=0;e<o.length;e++)s=o[e],c=s._getVersion,c=c(s._source),n.mutableSourceEagerHydrationData==null?n.mutableSourceEagerHydrationData=[s,c]:n.mutableSourceEagerHydrationData.push(s,c);return new Du(n)},ot.render=function(e,n,s){if(!Nu(n))throw Error(u(200));return ju(null,e,n,!1,s)},ot.unmountComponentAtNode=function(e){if(!Nu(e))throw Error(u(40));return e._reactRootContainer?(Mn(function(){ju(null,null,e,!1,function(){e._reactRootContainer=null,e[Ut]=null})}),!0):!1},ot.unstable_batchedUpdates=Ua,ot.unstable_renderSubtreeIntoContainer=function(e,n,s,o){if(!Nu(s))throw Error(u(200));if(e==null||e._reactInternals===void 0)throw Error(u(38));return ju(e,n,s,!1,o)},ot.version="18.3.1-next-f1338f8080-20240426",ot}var s0;function em(){if(s0)return Ja.exports;s0=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(r){console.error(r)}}return t(),Ja.exports=Jp(),Ja.exports}var u0;function tm(){if(u0)return Tu;u0=1;var t=em();return Tu.createRoot=t.createRoot,Tu.hydrateRoot=t.hydrateRoot,Tu}var nm=tm();/**
|
|
41
|
+
* @license lucide-react v0.460.0 - ISC
|
|
42
|
+
*
|
|
43
|
+
* This source code is licensed under the ISC license.
|
|
44
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
45
|
+
*/const rm=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),K0=(...t)=>t.filter((r,u,a)=>!!r&&r.trim()!==""&&a.indexOf(r)===u).join(" ").trim();/**
|
|
46
|
+
* @license lucide-react v0.460.0 - ISC
|
|
47
|
+
*
|
|
48
|
+
* This source code is licensed under the ISC license.
|
|
49
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
50
|
+
*/var sm={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
|
|
51
|
+
* @license lucide-react v0.460.0 - ISC
|
|
52
|
+
*
|
|
53
|
+
* This source code is licensed under the ISC license.
|
|
54
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
55
|
+
*/const um=G.forwardRef(({color:t="currentColor",size:r=24,strokeWidth:u=2,absoluteStrokeWidth:a,className:i="",children:l,iconNode:h,...f},m)=>G.createElement("svg",{ref:m,...sm,width:r,height:r,stroke:t,strokeWidth:a?Number(u)*24/Number(r):u,className:K0("lucide",i),...f},[...h.map(([x,b])=>G.createElement(x,b)),...Array.isArray(l)?l:[l]]));/**
|
|
56
|
+
* @license lucide-react v0.460.0 - ISC
|
|
57
|
+
*
|
|
58
|
+
* This source code is licensed under the ISC license.
|
|
59
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
60
|
+
*/const me=(t,r)=>{const u=G.forwardRef(({className:a,...i},l)=>G.createElement(um,{ref:l,iconNode:r,className:K0(`lucide-${rm(t)}`,a),...i}));return u.displayName=`${t}`,u};/**
|
|
61
|
+
* @license lucide-react v0.460.0 - ISC
|
|
62
|
+
*
|
|
63
|
+
* This source code is licensed under the ISC license.
|
|
64
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
65
|
+
*/const om=me("ArrowRight",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/**
|
|
66
|
+
* @license lucide-react v0.460.0 - ISC
|
|
67
|
+
*
|
|
68
|
+
* This source code is licensed under the ISC license.
|
|
69
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
70
|
+
*/const xi=me("BookOpen",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);/**
|
|
71
|
+
* @license lucide-react v0.460.0 - ISC
|
|
72
|
+
*
|
|
73
|
+
* This source code is licensed under the ISC license.
|
|
74
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
75
|
+
*/const am=me("Bot",[["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"}]]);/**
|
|
76
|
+
* @license lucide-react v0.460.0 - ISC
|
|
77
|
+
*
|
|
78
|
+
* This source code is licensed under the ISC license.
|
|
79
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
80
|
+
*/const bi=me("Boxes",[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",key:"lc1i9w"}],["path",{d:"m7 16.5-4.74-2.85",key:"1o9zyk"}],["path",{d:"m7 16.5 5-3",key:"va8pkn"}],["path",{d:"M7 16.5v5.17",key:"jnp8gn"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z",key:"8zsnat"}],["path",{d:"m17 16.5-5-3",key:"8arw3v"}],["path",{d:"m17 16.5 4.74-2.85",key:"8rfmw"}],["path",{d:"M17 16.5v5.17",key:"k6z78m"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z",key:"1xygjf"}],["path",{d:"M12 8 7.26 5.15",key:"1vbdud"}],["path",{d:"m12 8 4.74-2.85",key:"3rx089"}],["path",{d:"M12 13.5V8",key:"1io7kd"}]]);/**
|
|
81
|
+
* @license lucide-react v0.460.0 - ISC
|
|
82
|
+
*
|
|
83
|
+
* This source code is licensed under the ISC license.
|
|
84
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
85
|
+
*/const Q0=me("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
|
|
86
|
+
* @license lucide-react v0.460.0 - ISC
|
|
87
|
+
*
|
|
88
|
+
* This source code is licensed under the ISC license.
|
|
89
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
90
|
+
*/const Pi=me("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/**
|
|
91
|
+
* @license lucide-react v0.460.0 - ISC
|
|
92
|
+
*
|
|
93
|
+
* This source code is licensed under the ISC license.
|
|
94
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
95
|
+
*/const im=me("CircleAlert",[["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"}]]);/**
|
|
96
|
+
* @license lucide-react v0.460.0 - ISC
|
|
97
|
+
*
|
|
98
|
+
* This source code is licensed under the ISC license.
|
|
99
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
100
|
+
*/const Z0=me("CircleCheck",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/**
|
|
101
|
+
* @license lucide-react v0.460.0 - ISC
|
|
102
|
+
*
|
|
103
|
+
* This source code is licensed under the ISC license.
|
|
104
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
105
|
+
*/const lm=me("Clipboard",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}]]);/**
|
|
106
|
+
* @license lucide-react v0.460.0 - ISC
|
|
107
|
+
*
|
|
108
|
+
* This source code is licensed under the ISC license.
|
|
109
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
110
|
+
*/const cm=me("Clock3",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16.5 12",key:"1aq6pp"}]]);/**
|
|
111
|
+
* @license lucide-react v0.460.0 - ISC
|
|
112
|
+
*
|
|
113
|
+
* This source code is licensed under the ISC license.
|
|
114
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
115
|
+
*/const Y0=me("CodeXml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);/**
|
|
116
|
+
* @license lucide-react v0.460.0 - ISC
|
|
117
|
+
*
|
|
118
|
+
* This source code is licensed under the ISC license.
|
|
119
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
120
|
+
*/const dm=me("Command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]);/**
|
|
121
|
+
* @license lucide-react v0.460.0 - ISC
|
|
122
|
+
*
|
|
123
|
+
* This source code is licensed under the ISC license.
|
|
124
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
125
|
+
*/const fm=me("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/**
|
|
126
|
+
* @license lucide-react v0.460.0 - ISC
|
|
127
|
+
*
|
|
128
|
+
* This source code is licensed under the ISC license.
|
|
129
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
130
|
+
*/const hm=me("Cpu",[["rect",{width:"16",height:"16",x:"4",y:"4",rx:"2",key:"14l7u7"}],["rect",{width:"6",height:"6",x:"9",y:"9",rx:"1",key:"5aljv4"}],["path",{d:"M15 2v2",key:"13l42r"}],["path",{d:"M15 20v2",key:"15mkzm"}],["path",{d:"M2 15h2",key:"1gxd5l"}],["path",{d:"M2 9h2",key:"1bbxkp"}],["path",{d:"M20 15h2",key:"19e6y8"}],["path",{d:"M20 9h2",key:"19tzq7"}],["path",{d:"M9 2v2",key:"165o2o"}],["path",{d:"M9 20v2",key:"i2bqo8"}]]);/**
|
|
131
|
+
* @license lucide-react v0.460.0 - ISC
|
|
132
|
+
*
|
|
133
|
+
* This source code is licensed under the ISC license.
|
|
134
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
135
|
+
*/const pm=me("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);/**
|
|
136
|
+
* @license lucide-react v0.460.0 - ISC
|
|
137
|
+
*
|
|
138
|
+
* This source code is licensed under the ISC license.
|
|
139
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
140
|
+
*/const X0=me("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);/**
|
|
141
|
+
* @license lucide-react v0.460.0 - ISC
|
|
142
|
+
*
|
|
143
|
+
* This source code is licensed under the ISC license.
|
|
144
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
145
|
+
*/const mm=me("FolderOpen",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]);/**
|
|
146
|
+
* @license lucide-react v0.460.0 - ISC
|
|
147
|
+
*
|
|
148
|
+
* This source code is licensed under the ISC license.
|
|
149
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
150
|
+
*/const gm=me("Ghost",[["path",{d:"M9 10h.01",key:"qbtxuw"}],["path",{d:"M15 10h.01",key:"1qmjsl"}],["path",{d:"M12 2a8 8 0 0 0-8 8v12l3-3 2.5 2.5L12 19l2.5 2.5L17 19l3 3V10a8 8 0 0 0-8-8z",key:"uwwb07"}]]);/**
|
|
151
|
+
* @license lucide-react v0.460.0 - ISC
|
|
152
|
+
*
|
|
153
|
+
* This source code is licensed under the ISC license.
|
|
154
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
155
|
+
*/const xm=me("Image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);/**
|
|
156
|
+
* @license lucide-react v0.460.0 - ISC
|
|
157
|
+
*
|
|
158
|
+
* This source code is licensed under the ISC license.
|
|
159
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
160
|
+
*/const bm=me("Info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/**
|
|
161
|
+
* @license lucide-react v0.460.0 - ISC
|
|
162
|
+
*
|
|
163
|
+
* This source code is licensed under the ISC license.
|
|
164
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
165
|
+
*/const J0=me("Layers",[["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:"8b97xw"}],["path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65",key:"dd6zsq"}],["path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65",key:"ep9fru"}]]);/**
|
|
166
|
+
* @license lucide-react v0.460.0 - ISC
|
|
167
|
+
*
|
|
168
|
+
* This source code is licensed under the ISC license.
|
|
169
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
170
|
+
*/const ym=me("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);/**
|
|
171
|
+
* @license lucide-react v0.460.0 - ISC
|
|
172
|
+
*
|
|
173
|
+
* This source code is licensed under the ISC license.
|
|
174
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
175
|
+
*/const vm=me("LoaderCircle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);/**
|
|
176
|
+
* @license lucide-react v0.460.0 - ISC
|
|
177
|
+
*
|
|
178
|
+
* This source code is licensed under the ISC license.
|
|
179
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
180
|
+
*/const wm=me("MessageSquare",[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]]);/**
|
|
181
|
+
* @license lucide-react v0.460.0 - ISC
|
|
182
|
+
*
|
|
183
|
+
* This source code is licensed under the ISC license.
|
|
184
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
185
|
+
*/const km=me("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);/**
|
|
186
|
+
* @license lucide-react v0.460.0 - ISC
|
|
187
|
+
*
|
|
188
|
+
* This source code is licensed under the ISC license.
|
|
189
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
190
|
+
*/const _m=me("RefreshCw",[["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"}]]);/**
|
|
191
|
+
* @license lucide-react v0.460.0 - ISC
|
|
192
|
+
*
|
|
193
|
+
* This source code is licensed under the ISC license.
|
|
194
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
195
|
+
*/const xs=me("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/**
|
|
196
|
+
* @license lucide-react v0.460.0 - ISC
|
|
197
|
+
*
|
|
198
|
+
* This source code is licensed under the ISC license.
|
|
199
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
200
|
+
*/const Cm=me("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
|
|
201
|
+
* @license lucide-react v0.460.0 - ISC
|
|
202
|
+
*
|
|
203
|
+
* This source code is licensed under the ISC license.
|
|
204
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
205
|
+
*/const o0=me("SlidersHorizontal",[["line",{x1:"21",x2:"14",y1:"4",y2:"4",key:"obuewd"}],["line",{x1:"10",x2:"3",y1:"4",y2:"4",key:"1q6298"}],["line",{x1:"21",x2:"12",y1:"12",y2:"12",key:"1iu8h1"}],["line",{x1:"8",x2:"3",y1:"12",y2:"12",key:"ntss68"}],["line",{x1:"21",x2:"16",y1:"20",y2:"20",key:"14d8ph"}],["line",{x1:"12",x2:"3",y1:"20",y2:"20",key:"m0wm8r"}],["line",{x1:"14",x2:"14",y1:"2",y2:"6",key:"14e1ph"}],["line",{x1:"8",x2:"8",y1:"10",y2:"14",key:"1i6ji0"}],["line",{x1:"16",x2:"16",y1:"18",y2:"22",key:"1lctlv"}]]);/**
|
|
206
|
+
* @license lucide-react v0.460.0 - ISC
|
|
207
|
+
*
|
|
208
|
+
* This source code is licensed under the ISC license.
|
|
209
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
210
|
+
*/const dr=me("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);/**
|
|
211
|
+
* @license lucide-react v0.460.0 - ISC
|
|
212
|
+
*
|
|
213
|
+
* This source code is licensed under the ISC license.
|
|
214
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
215
|
+
*/const yi=me("SquareTerminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]]);/**
|
|
216
|
+
* @license lucide-react v0.460.0 - ISC
|
|
217
|
+
*
|
|
218
|
+
* This source code is licensed under the ISC license.
|
|
219
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
220
|
+
*/const Em=me("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);/**
|
|
221
|
+
* @license lucide-react v0.460.0 - ISC
|
|
222
|
+
*
|
|
223
|
+
* This source code is licensed under the ISC license.
|
|
224
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
225
|
+
*/const Sm=me("Terminal",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]);/**
|
|
226
|
+
* @license lucide-react v0.460.0 - ISC
|
|
227
|
+
*
|
|
228
|
+
* This source code is licensed under the ISC license.
|
|
229
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
230
|
+
*/const zm=me("Type",[["polyline",{points:"4 7 4 4 20 4 20 7",key:"1nosan"}],["line",{x1:"9",x2:"15",y1:"20",y2:"20",key:"swin9y"}],["line",{x1:"12",x2:"12",y1:"4",y2:"20",key:"1tx1rr"}]]);/**
|
|
231
|
+
* @license lucide-react v0.460.0 - ISC
|
|
232
|
+
*
|
|
233
|
+
* This source code is licensed under the ISC license.
|
|
234
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
235
|
+
*/const Am=me("Wind",[["path",{d:"M12.8 19.6A2 2 0 1 0 14 16H2",key:"148xed"}],["path",{d:"M17.5 8a2.5 2.5 0 1 1 2 4H2",key:"1u4tom"}],["path",{d:"M9.8 4.4A2 2 0 1 1 11 8H2",key:"75valh"}]]);/**
|
|
236
|
+
* @license lucide-react v0.460.0 - ISC
|
|
237
|
+
*
|
|
238
|
+
* This source code is licensed under the ISC license.
|
|
239
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
240
|
+
*/const Dm=me("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);function ef(t){var r,u,a="";if(typeof t=="string"||typeof t=="number")a+=t;else if(typeof t=="object")if(Array.isArray(t)){var i=t.length;for(r=0;r<i;r++)t[r]&&(u=ef(t[r]))&&(a&&(a+=" "),a+=u)}else for(u in t)t[u]&&(a&&(a+=" "),a+=u);return a}function tf(){for(var t,r,u=0,a="",i=arguments.length;u<i;u++)(t=arguments[u])&&(r=ef(t))&&(a&&(a+=" "),a+=r);return a}const Mi="-",Nm=t=>{const r=Fm(t),{conflictingClassGroups:u,conflictingClassGroupModifiers:a}=t;return{getClassGroupId:h=>{const f=h.split(Mi);return f[0]===""&&f.length!==1&&f.shift(),nf(f,r)||jm(h)},getConflictingClassGroupIds:(h,f)=>{const m=u[h]||[];return f&&a[h]?[...m,...a[h]]:m}}},nf=(t,r)=>{var h;if(t.length===0)return r.classGroupId;const u=t[0],a=r.nextPart.get(u),i=a?nf(t.slice(1),a):void 0;if(i)return i;if(r.validators.length===0)return;const l=t.join(Mi);return(h=r.validators.find(({validator:f})=>f(l)))==null?void 0:h.classGroupId},a0=/^\[(.+)\]$/,jm=t=>{if(a0.test(t)){const r=a0.exec(t)[1],u=r==null?void 0:r.substring(0,r.indexOf(":"));if(u)return"arbitrary.."+u}},Fm=t=>{const{theme:r,prefix:u}=t,a={nextPart:new Map,validators:[]};return Pm(Object.entries(t.classGroups),u).forEach(([l,h])=>{vi(h,a,l,r)}),a},vi=(t,r,u,a)=>{t.forEach(i=>{if(typeof i=="string"){const l=i===""?r:i0(r,i);l.classGroupId=u;return}if(typeof i=="function"){if(Tm(i)){vi(i(a),r,u,a);return}r.validators.push({validator:i,classGroupId:u});return}Object.entries(i).forEach(([l,h])=>{vi(h,i0(r,l),u,a)})})},i0=(t,r)=>{let u=t;return r.split(Mi).forEach(a=>{u.nextPart.has(a)||u.nextPart.set(a,{nextPart:new Map,validators:[]}),u=u.nextPart.get(a)}),u},Tm=t=>t.isThemeGetter,Pm=(t,r)=>r?t.map(([u,a])=>{const i=a.map(l=>typeof l=="string"?r+l:typeof l=="object"?Object.fromEntries(Object.entries(l).map(([h,f])=>[r+h,f])):l);return[u,i]}):t,Mm=t=>{if(t<1)return{get:()=>{},set:()=>{}};let r=0,u=new Map,a=new Map;const i=(l,h)=>{u.set(l,h),r++,r>t&&(r=0,a=u,u=new Map)};return{get(l){let h=u.get(l);if(h!==void 0)return h;if((h=a.get(l))!==void 0)return i(l,h),h},set(l,h){u.has(l)?u.set(l,h):i(l,h)}}},rf="!",Om=t=>{const{separator:r,experimentalParseClassName:u}=t,a=r.length===1,i=r[0],l=r.length,h=f=>{const m=[];let x=0,b=0,y;for(let A=0;A<f.length;A++){let q=f[A];if(x===0){if(q===i&&(a||f.slice(A,A+l)===r)){m.push(f.slice(b,A)),b=A+l;continue}if(q==="/"){y=A;continue}}q==="["?x++:q==="]"&&x--}const w=m.length===0?f:f.substring(b),C=w.startsWith(rf),k=C?w.substring(1):w,F=y&&y>b?y-b:void 0;return{modifiers:m,hasImportantModifier:C,baseClassName:k,maybePostfixModifierPosition:F}};return u?f=>u({className:f,parseClassName:h}):h},Im=t=>{if(t.length<=1)return t;const r=[];let u=[];return t.forEach(a=>{a[0]==="["?(r.push(...u.sort(),a),u=[]):u.push(a)}),r.push(...u.sort()),r},Rm=t=>({cache:Mm(t.cacheSize),parseClassName:Om(t),...Nm(t)}),Lm=/\s+/,Bm=(t,r)=>{const{parseClassName:u,getClassGroupId:a,getConflictingClassGroupIds:i}=r,l=[],h=t.trim().split(Lm);let f="";for(let m=h.length-1;m>=0;m-=1){const x=h[m],{modifiers:b,hasImportantModifier:y,baseClassName:w,maybePostfixModifierPosition:C}=u(x);let k=!!C,F=a(k?w.substring(0,C):w);if(!F){if(!k){f=x+(f.length>0?" "+f:f);continue}if(F=a(w),!F){f=x+(f.length>0?" "+f:f);continue}k=!1}const A=Im(b).join(":"),q=y?A+rf:A,I=q+F;if(l.includes(I))continue;l.push(I);const T=i(F,k);for(let R=0;R<T.length;++R){const j=T[R];l.push(q+j)}f=x+(f.length>0?" "+f:f)}return f};function Um(){let t=0,r,u,a="";for(;t<arguments.length;)(r=arguments[t++])&&(u=sf(r))&&(a&&(a+=" "),a+=u);return a}const sf=t=>{if(typeof t=="string")return t;let r,u="";for(let a=0;a<t.length;a++)t[a]&&(r=sf(t[a]))&&(u&&(u+=" "),u+=r);return u};function $m(t,...r){let u,a,i,l=h;function h(m){const x=r.reduce((b,y)=>y(b),t());return u=Rm(x),a=u.cache.get,i=u.cache.set,l=f,f(m)}function f(m){const x=a(m);if(x)return x;const b=Bm(m,u);return i(m,b),b}return function(){return l(Um.apply(null,arguments))}}const Ne=t=>{const r=u=>u[t]||[];return r.isThemeGetter=!0,r},uf=/^\[(?:([a-z-]+):)?(.+)\]$/i,Hm=/^\d+\/\d+$/,qm=new Set(["px","full","screen"]),Vm=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Wm=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Gm=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Km=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Qm=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Qt=t=>fr(t)||qm.has(t)||Hm.test(t),xn=t=>br(t,"length",r1),fr=t=>!!t&&!Number.isNaN(Number(t)),ni=t=>br(t,"number",fr),os=t=>!!t&&Number.isInteger(Number(t)),Zm=t=>t.endsWith("%")&&fr(t.slice(0,-1)),ce=t=>uf.test(t),bn=t=>Vm.test(t),Ym=new Set(["length","size","percentage"]),Xm=t=>br(t,Ym,of),Jm=t=>br(t,"position",of),e1=new Set(["image","url"]),t1=t=>br(t,e1,u1),n1=t=>br(t,"",s1),as=()=>!0,br=(t,r,u)=>{const a=uf.exec(t);return a?a[1]?typeof r=="string"?a[1]===r:r.has(a[1]):u(a[2]):!1},r1=t=>Wm.test(t)&&!Gm.test(t),of=()=>!1,s1=t=>Km.test(t),u1=t=>Qm.test(t),o1=()=>{const t=Ne("colors"),r=Ne("spacing"),u=Ne("blur"),a=Ne("brightness"),i=Ne("borderColor"),l=Ne("borderRadius"),h=Ne("borderSpacing"),f=Ne("borderWidth"),m=Ne("contrast"),x=Ne("grayscale"),b=Ne("hueRotate"),y=Ne("invert"),w=Ne("gap"),C=Ne("gradientColorStops"),k=Ne("gradientColorStopPositions"),F=Ne("inset"),A=Ne("margin"),q=Ne("opacity"),I=Ne("padding"),T=Ne("saturate"),R=Ne("scale"),j=Ne("sepia"),U=Ne("skew"),Y=Ne("space"),ne=Ne("translate"),ee=()=>["auto","contain","none"],L=()=>["auto","hidden","clip","visible","scroll"],ue=()=>["auto",ce,r],K=()=>[ce,r],ve=()=>["",Qt,xn],fe=()=>["auto",fr,ce],ie=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],_e=()=>["solid","dashed","dotted","double","none"],le=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],$=()=>["start","end","center","between","around","evenly","stretch"],Q=()=>["","0",ce],V=()=>["auto","avoid","all","avoid-page","page","left","right","column"],S=()=>[fr,ce];return{cacheSize:500,separator:":",theme:{colors:[as],spacing:[Qt,xn],blur:["none","",bn,ce],brightness:S(),borderColor:[t],borderRadius:["none","","full",bn,ce],borderSpacing:K(),borderWidth:ve(),contrast:S(),grayscale:Q(),hueRotate:S(),invert:Q(),gap:K(),gradientColorStops:[t],gradientColorStopPositions:[Zm,xn],inset:ue(),margin:ue(),opacity:S(),padding:K(),saturate:S(),scale:S(),sepia:Q(),skew:S(),space:K(),translate:K()},classGroups:{aspect:[{aspect:["auto","square","video",ce]}],container:["container"],columns:[{columns:[bn]}],"break-after":[{"break-after":V()}],"break-before":[{"break-before":V()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...ie(),ce]}],overflow:[{overflow:L()}],"overflow-x":[{"overflow-x":L()}],"overflow-y":[{"overflow-y":L()}],overscroll:[{overscroll:ee()}],"overscroll-x":[{"overscroll-x":ee()}],"overscroll-y":[{"overscroll-y":ee()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[F]}],"inset-x":[{"inset-x":[F]}],"inset-y":[{"inset-y":[F]}],start:[{start:[F]}],end:[{end:[F]}],top:[{top:[F]}],right:[{right:[F]}],bottom:[{bottom:[F]}],left:[{left:[F]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",os,ce]}],basis:[{basis:ue()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",ce]}],grow:[{grow:Q()}],shrink:[{shrink:Q()}],order:[{order:["first","last","none",os,ce]}],"grid-cols":[{"grid-cols":[as]}],"col-start-end":[{col:["auto",{span:["full",os,ce]},ce]}],"col-start":[{"col-start":fe()}],"col-end":[{"col-end":fe()}],"grid-rows":[{"grid-rows":[as]}],"row-start-end":[{row:["auto",{span:[os,ce]},ce]}],"row-start":[{"row-start":fe()}],"row-end":[{"row-end":fe()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",ce]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",ce]}],gap:[{gap:[w]}],"gap-x":[{"gap-x":[w]}],"gap-y":[{"gap-y":[w]}],"justify-content":[{justify:["normal",...$()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...$(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...$(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[I]}],px:[{px:[I]}],py:[{py:[I]}],ps:[{ps:[I]}],pe:[{pe:[I]}],pt:[{pt:[I]}],pr:[{pr:[I]}],pb:[{pb:[I]}],pl:[{pl:[I]}],m:[{m:[A]}],mx:[{mx:[A]}],my:[{my:[A]}],ms:[{ms:[A]}],me:[{me:[A]}],mt:[{mt:[A]}],mr:[{mr:[A]}],mb:[{mb:[A]}],ml:[{ml:[A]}],"space-x":[{"space-x":[Y]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[Y]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",ce,r]}],"min-w":[{"min-w":[ce,r,"min","max","fit"]}],"max-w":[{"max-w":[ce,r,"none","full","min","max","fit","prose",{screen:[bn]},bn]}],h:[{h:[ce,r,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[ce,r,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[ce,r,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[ce,r,"auto","min","max","fit"]}],"font-size":[{text:["base",bn,xn]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",ni]}],"font-family":[{font:[as]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",ce]}],"line-clamp":[{"line-clamp":["none",fr,ni]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",Qt,ce]}],"list-image":[{"list-image":["none",ce]}],"list-style-type":[{list:["none","disc","decimal",ce]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[t]}],"placeholder-opacity":[{"placeholder-opacity":[q]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[t]}],"text-opacity":[{"text-opacity":[q]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[..._e(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",Qt,xn]}],"underline-offset":[{"underline-offset":["auto",Qt,ce]}],"text-decoration-color":[{decoration:[t]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:K()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ce]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",ce]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[q]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...ie(),Jm]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",Xm]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},t1]}],"bg-color":[{bg:[t]}],"gradient-from-pos":[{from:[k]}],"gradient-via-pos":[{via:[k]}],"gradient-to-pos":[{to:[k]}],"gradient-from":[{from:[C]}],"gradient-via":[{via:[C]}],"gradient-to":[{to:[C]}],rounded:[{rounded:[l]}],"rounded-s":[{"rounded-s":[l]}],"rounded-e":[{"rounded-e":[l]}],"rounded-t":[{"rounded-t":[l]}],"rounded-r":[{"rounded-r":[l]}],"rounded-b":[{"rounded-b":[l]}],"rounded-l":[{"rounded-l":[l]}],"rounded-ss":[{"rounded-ss":[l]}],"rounded-se":[{"rounded-se":[l]}],"rounded-ee":[{"rounded-ee":[l]}],"rounded-es":[{"rounded-es":[l]}],"rounded-tl":[{"rounded-tl":[l]}],"rounded-tr":[{"rounded-tr":[l]}],"rounded-br":[{"rounded-br":[l]}],"rounded-bl":[{"rounded-bl":[l]}],"border-w":[{border:[f]}],"border-w-x":[{"border-x":[f]}],"border-w-y":[{"border-y":[f]}],"border-w-s":[{"border-s":[f]}],"border-w-e":[{"border-e":[f]}],"border-w-t":[{"border-t":[f]}],"border-w-r":[{"border-r":[f]}],"border-w-b":[{"border-b":[f]}],"border-w-l":[{"border-l":[f]}],"border-opacity":[{"border-opacity":[q]}],"border-style":[{border:[..._e(),"hidden"]}],"divide-x":[{"divide-x":[f]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[f]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[q]}],"divide-style":[{divide:_e()}],"border-color":[{border:[i]}],"border-color-x":[{"border-x":[i]}],"border-color-y":[{"border-y":[i]}],"border-color-s":[{"border-s":[i]}],"border-color-e":[{"border-e":[i]}],"border-color-t":[{"border-t":[i]}],"border-color-r":[{"border-r":[i]}],"border-color-b":[{"border-b":[i]}],"border-color-l":[{"border-l":[i]}],"divide-color":[{divide:[i]}],"outline-style":[{outline:["",..._e()]}],"outline-offset":[{"outline-offset":[Qt,ce]}],"outline-w":[{outline:[Qt,xn]}],"outline-color":[{outline:[t]}],"ring-w":[{ring:ve()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[t]}],"ring-opacity":[{"ring-opacity":[q]}],"ring-offset-w":[{"ring-offset":[Qt,xn]}],"ring-offset-color":[{"ring-offset":[t]}],shadow:[{shadow:["","inner","none",bn,n1]}],"shadow-color":[{shadow:[as]}],opacity:[{opacity:[q]}],"mix-blend":[{"mix-blend":[...le(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":le()}],filter:[{filter:["","none"]}],blur:[{blur:[u]}],brightness:[{brightness:[a]}],contrast:[{contrast:[m]}],"drop-shadow":[{"drop-shadow":["","none",bn,ce]}],grayscale:[{grayscale:[x]}],"hue-rotate":[{"hue-rotate":[b]}],invert:[{invert:[y]}],saturate:[{saturate:[T]}],sepia:[{sepia:[j]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[u]}],"backdrop-brightness":[{"backdrop-brightness":[a]}],"backdrop-contrast":[{"backdrop-contrast":[m]}],"backdrop-grayscale":[{"backdrop-grayscale":[x]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[b]}],"backdrop-invert":[{"backdrop-invert":[y]}],"backdrop-opacity":[{"backdrop-opacity":[q]}],"backdrop-saturate":[{"backdrop-saturate":[T]}],"backdrop-sepia":[{"backdrop-sepia":[j]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[h]}],"border-spacing-x":[{"border-spacing-x":[h]}],"border-spacing-y":[{"border-spacing-y":[h]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",ce]}],duration:[{duration:S()}],ease:[{ease:["linear","in","out","in-out",ce]}],delay:[{delay:S()}],animate:[{animate:["none","spin","ping","pulse","bounce",ce]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[R]}],"scale-x":[{"scale-x":[R]}],"scale-y":[{"scale-y":[R]}],rotate:[{rotate:[os,ce]}],"translate-x":[{"translate-x":[ne]}],"translate-y":[{"translate-y":[ne]}],"skew-x":[{"skew-x":[U]}],"skew-y":[{"skew-y":[U]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",ce]}],accent:[{accent:["auto",t]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",ce]}],"caret-color":[{caret:[t]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":K()}],"scroll-mx":[{"scroll-mx":K()}],"scroll-my":[{"scroll-my":K()}],"scroll-ms":[{"scroll-ms":K()}],"scroll-me":[{"scroll-me":K()}],"scroll-mt":[{"scroll-mt":K()}],"scroll-mr":[{"scroll-mr":K()}],"scroll-mb":[{"scroll-mb":K()}],"scroll-ml":[{"scroll-ml":K()}],"scroll-p":[{"scroll-p":K()}],"scroll-px":[{"scroll-px":K()}],"scroll-py":[{"scroll-py":K()}],"scroll-ps":[{"scroll-ps":K()}],"scroll-pe":[{"scroll-pe":K()}],"scroll-pt":[{"scroll-pt":K()}],"scroll-pr":[{"scroll-pr":K()}],"scroll-pb":[{"scroll-pb":K()}],"scroll-pl":[{"scroll-pl":K()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",ce]}],fill:[{fill:[t,"none"]}],"stroke-w":[{stroke:[Qt,xn,ni]}],stroke:[{stroke:[t,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},a1=$m(o1);function Se(...t){return a1(tf(t))}const i1=[{test:/^my-skills$/i,color:"#10B981",icon:bi},{test:/^other-skills$/i,color:"#8B5CF6",icon:dr},{test:/claude|anthropic/i,color:"#D97757",icon:dr,iconBrand:"claude"},{test:/codex|openai/i,color:"#10A37F",icon:hm,iconBrand:"codex"},{test:/hermes/i,color:"#4A5FC7",icon:am,iconBrand:"hermes"},{test:/cursor/i,color:"#1F2937",icon:Y0,iconBrand:"cursor"},{test:/windsurf/i,color:"#10B6C4",icon:Am,iconBrand:"windsurf"},{test:/kiro/i,color:"#8B5CF6",icon:gm},{test:/copilot|github/i,color:"#24292F",icon:Sm,iconBrand:"github"},{test:/gemini/i,color:"#4285F4",icon:dr,iconBrand:"google"},{test:/mcp/i,color:"#2563EB",icon:bi}],l1={color:"#6B7280",icon:bi},$u=["my-skills","Claude Code"],c1={"my-skills":"自定义技能","other-skills":"其它技能"};function ls(t){return!t||t==="(none)"||t.toLowerCase()==="none"}function kn(t){return t.editor||t.source||"(none)"}function Ot(t){return ls(t)?"未分类":c1[t.toLowerCase()]??t}function d1(t){const r=Ot(t);for(const u of i1)if(u.test.test(t))return{label:r,color:u.color,icon:u.icon,iconBrand:u.iconBrand};return{label:r,...l1}}const f1=JSON.parse(`[{"brand":"claude","summary_zh":"Claude Code 命令行入口,默认启动交互会话,也支持一次性打印、恢复会话、配置工具权限、MCP、插件和后台代理。","groups":[{"name_zh":"上下文与提示词","source":"inferred","flags":[{"name":"--add-dir","args":"<directories...>","desc_zh":"额外允许 Claude 访问的目录。","raw":"Additional directories to allow tool access to"},{"name":"--append-system-prompt","args":"<prompt>","desc_zh":"在默认 system prompt 后追加内容。","raw":"Append a system prompt to the default system prompt"},{"name":"--system-prompt","args":"<prompt>","desc_zh":"为当前会话指定 system prompt。","raw":"System prompt to use for the session"},{"name":"--file","args":"<specs...>","desc_zh":"启动时下载指定 file_id 资源到相对路径。","raw":"File resources to download at startup. Format: file_id:relative_path"},{"name":"--json-schema","args":"<schema>","desc_zh":"为结构化输出提供 JSON Schema 校验。","raw":"JSON Schema for structured output validation"},{"name":"--exclude-dynamic-system-prompt-sections","desc_zh":"把机器相关的动态 system prompt 段落移到首条用户消息中,以提升跨机器 prompt-cache 命中。","raw":"Move per-machine sections from the system prompt into the first user message"}]},{"name_zh":"代理、工具与权限","source":"inferred","flags":[{"name":"--agent","args":"<agent>","desc_zh":"指定当前会话使用的 agent,覆盖配置中的 agent 设置。","raw":"Agent for the current session. Overrides the 'agent' setting."},{"name":"--agents","args":"<json>","desc_zh":"用 JSON 定义自定义 agents。","raw":"JSON object defining custom agents"},{"name":"--allowedTools, --allowed-tools","args":"<tools...>","desc_zh":"允许指定工具名或工具模式。","raw":"Comma or space-separated list of tool names to allow"},{"name":"--disallowedTools, --disallowed-tools","args":"<tools...>","desc_zh":"禁止指定工具名或工具模式。","raw":"Comma or space-separated list of tool names to deny"},{"name":"--tools","args":"<tools...>","desc_zh":"指定内置工具集合,支持禁用全部、使用默认或列出工具名。","raw":"Specify the list of available tools from the built-in set"},{"name":"--permission-mode","args":"<mode>","desc_zh":"设置本次会话的权限模式。","raw":"Permission mode to use for the session"},{"name":"--dangerously-skip-permissions","desc_zh":"绕过所有权限检查,仅建议在无网络沙箱中使用。","raw":"Bypass all permission checks. Recommended only for sandboxes with no internet access."},{"name":"--allow-dangerously-skip-permissions","desc_zh":"允许把跳过权限检查作为选项启用,但默认不启用。","raw":"Enable bypassing all permission checks as an option, without it being enabled by default."}]},{"name_zh":"会话管理","source":"inferred","flags":[{"name":"-c, --continue","desc_zh":"继续当前目录最近一次对话。","raw":"Continue the most recent conversation in the current directory"},{"name":"-r, --resume","args":"[value]","desc_zh":"按 session ID 恢复对话,或打开带搜索的交互选择器。","raw":"Resume a conversation by session ID, or open interactive picker with optional search term"},{"name":"--fork-session","desc_zh":"恢复会话时创建新的 session ID,而不是复用原会话。","raw":"When resuming, create a new session ID instead of reusing the original"},{"name":"--from-pr","args":"[value]","desc_zh":"恢复与 PR 关联的会话,支持 PR 编号、URL 或搜索选择器。","raw":"Resume a session linked to a PR by PR number/URL, or open interactive picker"},{"name":"--session-id","args":"<uuid>","desc_zh":"显式指定本次对话使用的 UUID session ID。","raw":"Use a specific session ID for the conversation"},{"name":"--no-session-persistence","desc_zh":"禁用会话持久化,之后不能恢复。","raw":"Disable session persistence - sessions will not be saved to disk and cannot be resumed"},{"name":"-n, --name","args":"<name>","desc_zh":"设置会话显示名称,用于恢复选择器和终端标题。","raw":"Set a display name for this session"}]},{"name_zh":"模型、输出与非交互模式","source":"inferred","flags":[{"name":"-p, --print","desc_zh":"打印结果后退出,适合管道和脚本。","raw":"Print response and exit"},{"name":"--input-format","args":"<format>","desc_zh":"设置 print 模式输入格式:text 或 stream-json。","raw":"Input format (only works with --print): text or stream-json"},{"name":"--output-format","args":"<format>","desc_zh":"设置 print 模式输出格式:text、json 或 stream-json。","raw":"Output format (only works with --print): text, json, or stream-json"},{"name":"--include-hook-events","desc_zh":"在 stream-json 输出中包含全部 hook 生命周期事件。","raw":"Include all hook lifecycle events in the output stream"},{"name":"--include-partial-messages","desc_zh":"在 print + stream-json 模式中输出增量消息块。","raw":"Include partial message chunks as they arrive"},{"name":"--replay-user-messages","desc_zh":"stream-json 输入输出模式下,把 stdin 用户消息重新发到 stdout 作为确认。","raw":"Re-emit user messages from stdin back on stdout for acknowledgment"},{"name":"--model","args":"<model>","desc_zh":"指定本次会话使用的模型别名或完整模型名。","raw":"Model for the current session"},{"name":"--fallback-model","args":"<model>","desc_zh":"主模型过载或不可用时,按列表自动尝试备用模型。","raw":"Enable automatic fallback to specified model(s)"},{"name":"--effort","args":"<level>","desc_zh":"设置本次会话推理努力等级。","raw":"Effort level for the current session"},{"name":"--max-budget-usd","args":"<amount>","desc_zh":"为 print 模式设置 API 调用美元预算上限。","raw":"Maximum dollar amount to spend on API calls"},{"name":"--prompt-suggestions","args":"[value]","desc_zh":"启用下一步提示建议消息。","raw":"Enable prompt suggestions"}]},{"name_zh":"集成、插件与运行环境","source":"inferred","flags":[{"name":"--mcp-config","args":"<configs...>","desc_zh":"从 JSON 文件或字符串加载 MCP server 配置。","raw":"Load MCP servers from JSON files or strings"},{"name":"--strict-mcp-config","desc_zh":"只使用 --mcp-config 中的 MCP servers,忽略其他 MCP 配置。","raw":"Only use MCP servers from --mcp-config"},{"name":"--plugin-dir","args":"<path>","desc_zh":"为本次会话临时加载目录或 zip 插件,可重复。","raw":"Load a plugin from a directory or .zip for this session only"},{"name":"--plugin-url","args":"<url>","desc_zh":"为本次会话从 URL 拉取插件 zip,可重复。","raw":"Fetch a plugin .zip from a URL for this session only"},{"name":"--settings","args":"<file-or-json>","desc_zh":"加载额外 settings JSON 文件或 JSON 字符串。","raw":"Path to a settings JSON file or a JSON string to load additional settings from"},{"name":"--setting-sources","args":"<sources>","desc_zh":"指定加载哪些设置来源,如 user、project、local。","raw":"Comma-separated list of setting sources to load"},{"name":"--betas","args":"<betas...>","desc_zh":"为 API key 用户加入 beta headers。","raw":"Beta headers to include in API requests"},{"name":"--ide","desc_zh":"若只有一个有效 IDE,启动时自动连接。","raw":"Automatically connect to IDE on startup if exactly one valid IDE is available"},{"name":"--chrome","desc_zh":"启用 Claude in Chrome 集成。","raw":"Enable Claude in Chrome integration"},{"name":"--no-chrome","desc_zh":"禁用 Claude in Chrome 集成。","raw":"Disable Claude in Chrome integration"},{"name":"--tmux","desc_zh":"创建 worktree 时同时创建 tmux 会话。","raw":"Create a tmux session for the worktree"},{"name":"-w, --worktree","args":"[name]","desc_zh":"为本次会话创建新的 git worktree。","raw":"Create a new git worktree for this session"},{"name":"--bg, --background","desc_zh":"作为后台 agent 启动并立即返回。","raw":"Start the session as a background agent and return immediately"}]},{"name_zh":"诊断与安全模式","source":"inferred","flags":[{"name":"-d, --debug","args":"[filter]","desc_zh":"启用 debug 模式,可按分类过滤。","raw":"Enable debug mode with optional category filtering"},{"name":"--debug-file","args":"<path>","desc_zh":"把 debug 日志写到指定文件,并隐式启用 debug。","raw":"Write debug logs to a specific file path"},{"name":"--verbose","desc_zh":"覆盖配置中的 verbose 模式。","raw":"Override verbose mode setting from config"},{"name":"--safe-mode","desc_zh":"禁用自定义配置、技能、插件、hooks、MCP servers 等,用于排查问题。","raw":"Start with all customizations disabled"},{"name":"--bare","desc_zh":"最小模式,跳过 hooks、LSP、插件同步、keychain、CLAUDE.md 自动发现等。","raw":"Minimal mode: skip hooks, LSP, plugin sync, attribution, auto-memory, background prefetches, keychain reads, and CLAUDE.md auto-discovery"},{"name":"--ax-screen-reader","desc_zh":"渲染适合屏幕阅读器的扁平文本输出。","raw":"Render screen-reader friendly output"},{"name":"--brief","desc_zh":"启用 SendUserMessage 工具用于 agent 到用户通信。","raw":"Enable SendUserMessage tool for agent-to-user communication"},{"name":"--disable-slash-commands","desc_zh":"禁用全部 skills。","raw":"Disable all skills"},{"name":"-h, --help","desc_zh":"显示命令帮助。","raw":"Display help for command"},{"name":"-v, --version","desc_zh":"输出版本号。","raw":"Output the version number"}]}],"subcommands":[{"name":"agents","desc_zh":"管理后台 agents。","helpStatus":"ready"},{"name":"auth","desc_zh":"管理认证。","helpStatus":"missing"},{"name":"auto-mode","desc_zh":"检查 auto mode 分类器配置。","helpStatus":"missing"},{"name":"doctor","desc_zh":"检查 Claude Code 自动更新器和工作区健康状态。","helpStatus":"ready"},{"name":"gateway","desc_zh":"运行企业认证和 telemetry gateway。","helpStatus":"missing"},{"name":"install","desc_zh":"安装 Claude Code native build。","helpStatus":"missing"},{"name":"mcp","desc_zh":"配置和管理 MCP servers。","helpStatus":"ready"},{"name":"plugin|plugins","desc_zh":"管理 Claude Code 插件。","helpStatus":"ready"},{"name":"project","desc_zh":"管理 Claude Code 项目状态。","helpStatus":"missing"},{"name":"setup-token","desc_zh":"设置长期认证 token。","helpStatus":"missing"},{"name":"ultrareview","desc_zh":"运行云端多 agent 代码审查并打印结果。","helpStatus":"missing"},{"name":"update|upgrade","desc_zh":"检查并安装更新。","helpStatus":"missing"}],"iconBrand":"claude","raw":"~/Project/SkillsHelper (main ✗) claude -h\\nUsage: claude [options] [command] [prompt]\\n\\nClaude Code - starts an interactive session by default, use -p/--print for non-interactive output\\n\\nArguments:\\n prompt Your prompt\\n\\nOptions:\\n --add-dir <directories...> Additional directories to allow tool access to\\n --agent <agent> Agent for the current session. Overrides the 'agent' setting.\\n --agents <json> JSON object defining custom agents (e.g. '{\\"reviewer\\": {\\"description\\": \\"Reviews code\\", \\"prompt\\": \\"You are a code reviewer\\"}}')\\n --allow-dangerously-skip-permissions Enable bypassing all permission checks as an option, without it being enabled by default. Recommended only for sandboxes with no internet access.\\n --allowedTools, --allowed-tools <tools...>\\n Comma or space-separated list of tool names to allow (e.g. \\"Bash(git *) Edit\\")\\n --append-system-prompt <prompt> Append a system prompt to the default system prompt\\n --ax-screen-reader Render screen-reader friendly output (flat text, no decorative borders or animations).\\n --bg, --background Start the session as a background agent and return immediately (manage with \`claude agents\`)\\n --bare Minimal mode: skip hooks, LSP, plugin sync, attribution, auto-memory, background prefetches, keychain reads, and CLAUDE.md auto-discovery. Sets\\n CLAUDE_CODE_SIMPLE=1. Anthropic auth is strictly ANTHROPIC_API_KEY or apiKeyHelper via --settings (OAuth and keychain are never read). 3P providers\\n (Bedrock/Vertex/Foundry) use their own credentials. Skills still resolve via /skill-name. Explicitly provide context via: --system-prompt[-file],\\n --append-system-prompt[-file], --add-dir (CLAUDE.md dirs), --mcp-config, --settings, --agents, --plugin-dir.\\n --betas <betas...> Beta headers to include in API requests (API key users only)\\n --brief Enable SendUserMessage tool for agent-to-user communication\\n --chrome Enable Claude in Chrome integration\\n -c, --continue Continue the most recent conversation in the current directory\\n --dangerously-skip-permissions Bypass all permission checks. Recommended only for sandboxes with no internet access.\\n -d, --debug [filter] Enable debug mode with optional category filtering (e.g., \\"api,hooks\\" or \\"!1p,!file\\")\\n --debug-file <path> Write debug logs to a specific file path (implicitly enables debug mode)\\n --disable-slash-commands Disable all skills\\n --disallowedTools, --disallowed-tools <tools...>\\n Comma or space-separated list of tool names to deny (e.g. \\"Bash(git *) Edit\\")\\n --effort <level> Effort level for the current session (low, medium, high, xhigh, max)\\n --exclude-dynamic-system-prompt-sections\\n Move per-machine sections (cwd, env info, memory paths, git status) from the system prompt into the first user message. Improves cross-user prompt-cache reuse. Only applies with the default system\\n prompt (ignored with --system-prompt). (default: false)\\n --fallback-model <model> Enable automatic fallback to specified model(s) when the default model is overloaded or not available. Accepts a comma-separated list to try each in order.\\n Re-tries the primary at the start of each user turn. (only works with --print)\\n --file <specs...> File resources to download at startup. Format: file_id:relative_path (e.g., --file file_abc:doc.txt file_def:img.png)\\n --fork-session When resuming, create a new session ID instead of reusing the original (use with --resume or --continue)\\n --from-pr [value] Resume a session linked to a PR by PR number/URL, or open interactive picker with optional search term\\n -h, --help Display help for command\\n --ide Automatically connect to IDE on startup if exactly one valid IDE is available\\n --include-hook-events Include all hook lifecycle events in the output stream (only works with --output-format=stream-json)\\n --include-partial-messages Include partial message chunks as they arrive (only works with --print and --output-format=stream-json)\\n --input-format <format> Input format (only works with --print): \\"text\\" (default), or \\"stream-json\\" (realtime streaming input) (choices: \\"text\\", \\"stream-json\\")\\n --json-schema <schema> JSON Schema for structured output validation. Example: {\\"type\\":\\"object\\",\\"properties\\":{\\"name\\":{\\"type\\":\\"string\\"}},\\"required\\":[\\"name\\"]}\\n --max-budget-usd <amount> Maximum dollar amount to spend on API calls (only works with --print)\\n --mcp-config <configs...> Load MCP servers from JSON files or strings (space-separated)\\n --model <model> Model for the current session. Provide an alias for the latest model (e.g. 'fable', 'opus', or 'sonnet') or a model's full name (e.g. 'claude-fable-5').\\n -n, --name <name> Set a display name for this session (shown in the prompt box, /resume picker, and terminal title)\\n --no-chrome Disable Claude in Chrome integration\\n --no-session-persistence Disable session persistence - sessions will not be saved to disk and cannot be resumed (only works with --print)\\n --output-format <format> Output format (only works with --print): \\"text\\" (default), \\"json\\" (single result), or \\"stream-json\\" (realtime streaming) (choices: \\"text\\", \\"json\\", \\"stream-json\\")\\n --permission-mode <mode> Permission mode to use for the session (choices: \\"acceptEdits\\", \\"auto\\", \\"bypassPermissions\\", \\"default\\", \\"dontAsk\\", \\"plan\\")\\n --plugin-dir <path> Load a plugin from a directory or .zip for this session only (repeatable: --plugin-dir A --plugin-dir B.zip) (default: [])\\n --plugin-url <url> Fetch a plugin .zip from a URL for this session only (repeatable: --plugin-url A --plugin-url B) (default: [])\\n -p, --print Print response and exit (useful for pipes). Note: The workspace trust dialog is skipped when Claude is run in non-interactive mode (via -p, or when stdout is not a\\n TTY, e.g. piped or redirected output). Only use this in directories you trust. Settings files that fail validation are silently ignored in this mode (no error\\n dialog is shown).\\n --prompt-suggestions [value] Enable prompt suggestions. In print/SDK mode, emits a prompt_suggestion message after each turn with a predicted next user prompt (choices: \\"true\\", \\"false\\", \\"1\\",\\n \\"0\\", \\"yes\\", \\"no\\", \\"on\\", \\"off\\", preset: \\"true\\")\\n --remote-control [name] Start an interactive session with Remote Control enabled (optionally named)\\n --remote-control-session-name-prefix <prefix>\\n Prefix for auto-generated Remote Control session names (default: hostname)\\n --replay-user-messages Re-emit user messages from stdin back on stdout for acknowledgment (only works with --input-format=stream-json and --output-format=stream-json)\\n -r, --resume [value] Resume a conversation by session ID, or open interactive picker with optional search term\\n --safe-mode Start with all customizations (CLAUDE.md, skills, plugins, hooks, MCP servers, custom commands and agents, output styles, workflows, custom themes, keybindings,\\n and more) disabled — useful for troubleshooting a broken configuration. Admin-managed (policy) settings still apply. Auth, model selection, built-in tools, and\\n permissions work normally. Sets CLAUDE_CODE_SAFE_MODE=1.\\n --session-id <uuid> Use a specific session ID for the conversation (must be a valid UUID)\\n --setting-sources <sources> Comma-separated list of setting sources to load (user, project, local).\\n --settings <file-or-json> Path to a settings JSON file or a JSON string to load additional settings from\\n --strict-mcp-config Only use MCP servers from --mcp-config, ignoring all other MCP configurations\\n --system-prompt <prompt> System prompt to use for the session\\n --tmux Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.\\n --tools <tools...> Specify the list of available tools from the built-in set. Use \\"\\" to disable all tools, \\"default\\" to use all tools, or specify tool names (e.g. \\"Bash,Edit,Read\\").\\n --verbose Override verbose mode setting from config\\n -v, --version Output the version number\\n -w, --worktree [name] Create a new git worktree for this session (optionally specify a name)\\n\\nCommands:\\n agents [options] Manage background agents\\n auth Manage authentication\\n auto-mode Inspect auto mode classifier configuration\\n doctor Check the health of your Claude Code auto-updater. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only\\n use this command in directories you trust.\\n gateway [options] Run the enterprise auth/telemetry gateway\\n install [options] [target] Install Claude Code native build. Use [target] to specify version (stable, latest, or specific version)\\n mcp Configure and manage MCP servers\\n plugin|plugins Manage Claude Code plugins\\n project Manage Claude Code project state\\n setup-token Set up a long-lived authentication token (requires Claude subscription)\\n ultrareview [options] [target] Run a cloud-hosted multi-agent code review of the current branch (or a PR number / base branch) and print the findings\\n update|upgrade Check for updates and install if available","capturedAt":"2026-07-05","sourcePath":"source/claude.cmd"},{"brand":"code","version":"1.126.0","summary_zh":"Visual Studio Code 命令行入口,用于打开文件和工作区、管理扩展、配置 MCP、诊断运行状态,并提供 chat、tunnel 等子命令。","groups":[{"name_zh":"文件与窗口","source":"explicit","flags":[{"name":"-d, --diff","args":"<file> <file>","desc_zh":"比较两个文件差异。","raw":"Compare two files with each other."},{"name":"-m, --merge","args":"<path1> <path2> <base> <result>","desc_zh":"执行三方合并,并把合并结果写到指定文件。","raw":"Perform a three-way merge"},{"name":"-a, --add","args":"<folder>","desc_zh":"把文件夹加入上一个活跃窗口。","raw":"Add folder(s) to the last active window."},{"name":"--remove","args":"<folder>","desc_zh":"从上一个活跃窗口移除文件夹。","raw":"Remove folder(s) from the last active window."},{"name":"-g, --goto","args":"<file:line[:character]>","desc_zh":"打开文件并跳到指定行和字符位置。","raw":"Open a file at the path on the specified line and character position."},{"name":"-n, --new-window","desc_zh":"强制打开新窗口。","raw":"Force to open a new window."},{"name":"-r, --reuse-window","desc_zh":"强制在已有窗口打开文件或文件夹。","raw":"Force to open a file or folder in an already opened window."},{"name":"--agents","desc_zh":"打开 agents 窗口。","raw":"Opens the agents window."},{"name":"-w, --wait","desc_zh":"等待文件关闭后再返回。","raw":"Wait for the files to be closed before returning."},{"name":"--locale","args":"<locale>","desc_zh":"指定界面 locale。","raw":"The locale to use"},{"name":"--user-data-dir","args":"<dir>","desc_zh":"指定用户数据目录,可用于打开多个隔离实例。","raw":"Specifies the directory that user data is kept in."},{"name":"--profile","args":"<profileName>","desc_zh":"用指定 profile 打开文件夹或工作区,不存在时创建空 profile。","raw":"Opens the provided folder or workspace with the given profile"},{"name":"-h, --help","desc_zh":"打印帮助。","raw":"Print usage."}]},{"name_zh":"扩展管理","source":"explicit","flags":[{"name":"--extensions-dir","args":"<dir>","desc_zh":"设置扩展根目录。","raw":"Set the root path for extensions."},{"name":"--list-extensions","desc_zh":"列出已安装扩展。","raw":"List the installed extensions."},{"name":"--show-versions","desc_zh":"配合 --list-extensions 显示扩展版本。","raw":"Show versions of installed extensions"},{"name":"--category","args":"<category>","desc_zh":"配合 --list-extensions 按分类过滤扩展。","raw":"Filters installed extensions by provided category"},{"name":"--install-extension","args":"<ext-id | path>","desc_zh":"安装或更新扩展,参数可为扩展 ID 或 VSIX 路径。","raw":"Installs or updates an extension."},{"name":"--pre-release","desc_zh":"配合 --install-extension 安装预发布版本。","raw":"Installs the pre-release version of the extension"},{"name":"--uninstall-extension","args":"<ext-id>","desc_zh":"卸载扩展。","raw":"Uninstalls an extension."},{"name":"--update-extensions","desc_zh":"更新已安装扩展。","raw":"Update the installed extensions."},{"name":"--enable-proposed-api","args":"<ext-id>","desc_zh":"为指定扩展启用 proposed API 功能。","raw":"Enables proposed API features for extensions."}]},{"name_zh":"Model Context Protocol","source":"explicit","flags":[{"name":"--add-mcp","args":"<json>","desc_zh":"把 MCP server 定义加入用户 profile。","raw":"Adds a Model Context Protocol server definition to the user profile."}]},{"name_zh":"排障与诊断","source":"explicit","flags":[{"name":"-v, --version","desc_zh":"打印版本。","raw":"Print version."},{"name":"--verbose","desc_zh":"打印详细输出,并隐含 --wait。","raw":"Print verbose output (implies --wait)."},{"name":"--log","args":"<level>","desc_zh":"设置日志级别,也可为指定扩展设置日志级别。","raw":"Log level to use."},{"name":"-s, --status","desc_zh":"打印进程使用和诊断信息。","raw":"Print process usage and diagnostics information."},{"name":"--prof-startup","desc_zh":"启动期间运行 CPU profiler。","raw":"Run CPU profiler during startup."},{"name":"--disable-extensions","desc_zh":"禁用全部已安装扩展,仅对打开新窗口生效且不持久化。","raw":"Disable all installed extensions."},{"name":"--disable-extension","args":"<ext-id>","desc_zh":"禁用指定扩展,仅对打开新窗口生效且不持久化。","raw":"Disable the provided extension."},{"name":"--sync","args":"<on | off>","desc_zh":"开启或关闭同步。","raw":"Turn sync on or off."},{"name":"--inspect-extensions","args":"<port>","desc_zh":"允许调试和分析扩展,连接 URI 可在开发者工具查看。","raw":"Allow debugging and profiling of extensions."},{"name":"--inspect-brk-extensions","args":"<port>","desc_zh":"允许调试扩展并在扩展宿主启动时暂停。","raw":"Allow debugging and profiling of extensions with the extension host being paused after start."},{"name":"--disable-lcd-text","desc_zh":"禁用 LCD 字体渲染。","raw":"Disable LCD font rendering."},{"name":"--disable-gpu","desc_zh":"禁用 GPU 硬件加速。","raw":"Disable GPU hardware acceleration."},{"name":"--disable-chromium-sandbox","desc_zh":"禁用 Chromium sandbox,仅用于 sudo 或受限环境。","raw":"Disable Chromium sandbox."},{"name":"--locate-shell-integration-path","args":"<shell>","desc_zh":"打印指定 shell 的终端集成脚本路径。","raw":"Print the path to a terminal shell integration script."},{"name":"--telemetry","desc_zh":"显示 VS Code 收集的 telemetry 事件。","raw":"Shows all telemetry events which VS code collects."},{"name":"--transient","desc_zh":"使用临时数据和扩展目录运行,类似首次启动。","raw":"Run with temporary data and extension directories."}]}],"subcommands":[{"name":"chat","desc_zh":"在当前工作目录传入 prompt 并运行 chat 会话。","helpStatus":"ready"},{"name":"serve-web","desc_zh":"启动一个在浏览器中显示编辑器 UI 的服务。","helpStatus":"ready"},{"name":"agent","desc_zh":"启动并交互 AI agent hosts。","helpStatus":"ready"},{"name":"tunnel","desc_zh":"通过安全 tunnel 让当前机器可被 vscode.dev 或其他机器访问。","helpStatus":"missing"}],"iconBrand":"vscode","raw":"~/Project/SkillsHelper (main ✗) code -h\\nVisual Studio Code 1.126.0\\n\\nUsage: code [options] [paths...]\\n\\nTo read from stdin, append '-' (e.g. 'ps aux | grep code | code -')\\n\\nOptions\\n -d --diff <file> <file> Compare two files with each other.\\n -m --merge <path1> <path2> <base> <result> Perform a three-way merge by providing paths for two modified versions of a file, the common origin of both modified versions and the output file to save\\n merge results.\\n -a --add <folder> Add folder(s) to the last active window.\\n --remove <folder> Remove folder(s) from the last active window.\\n -g --goto <file:line[:character]> Open a file at the path on the specified line and character position.\\n -n --new-window Force to open a new window.\\n -r --reuse-window Force to open a file or folder in an already opened window.\\n --agents Opens the agents window.\\n -w --wait Wait for the files to be closed before returning.\\n --locale <locale> The locale to use (e.g. en-US or zh-TW).\\n --user-data-dir <dir> Specifies the directory that user data is kept in. Can be used to open multiple distinct instances of Code.\\n --profile <profileName> Opens the provided folder or workspace with the given profile and associates the profile with the workspace. If the profile does not exist, a new empty one\\n is created.\\n -h --help Print usage.\\n\\nExtensions Management\\n --extensions-dir <dir> Set the root path for extensions.\\n --list-extensions List the installed extensions.\\n --show-versions Show versions of installed extensions, when using --list-extensions.\\n --category <category> Filters installed extensions by provided category, when using --list-extensions.\\n --install-extension <ext-id | path> Installs or updates an extension. The argument is either an extension id or a path to a VSIX. The identifier of an extension is '\${publisher}.\${name}'. Use\\n '--force' argument to update to latest version. To install a specific version provide '@\${version}'. For example: 'vscode.csharp@1.2.3'.\\n --pre-release Installs the pre-release version of the extension, when using --install-extension\\n --uninstall-extension <ext-id> Uninstalls an extension.\\n --update-extensions Update the installed extensions.\\n --enable-proposed-api <ext-id> Enables proposed API features for extensions. Can receive one or more extension IDs to enable individually.\\n\\nModel Context Protocol\\n --add-mcp <json> Adds a Model Context Protocol server definition to the user profile. Accepts JSON input in the form '{\\"name\\":\\"server-name\\",\\"command\\":...}'\\n\\nTroubleshooting\\n -v --version Print version.\\n --verbose Print verbose output (implies --wait).\\n --log <level> Log level to use. Default is 'info'. Allowed values are 'critical', 'error', 'warn', 'info', 'debug', 'trace', 'off'. You can also configure the log level of an\\n extension by passing extension id and log level in the following format: '\${publisher}.\${name}:\${logLevel}'. For example: 'vscode.csharp:trace'. Can receive one\\n or more such entries.\\n -s --status Print process usage and diagnostics information.\\n --prof-startup Run CPU profiler during startup.\\n --disable-extensions Disable all installed extensions. This option is not persisted and is effective only when the command opens a new window.\\n --disable-extension <ext-id> Disable the provided extension. This option is not persisted and is effective only when the command opens a new window.\\n --sync <on | off> Turn sync on or off.\\n --inspect-extensions <port> Allow debugging and profiling of extensions. Check the developer tools for the connection URI.\\n --inspect-brk-extensions <port> Allow debugging and profiling of extensions with the extension host being paused after start. Check the developer tools for the connection URI.\\n --disable-lcd-text Disable LCD font rendering.\\n --disable-gpu Disable GPU hardware acceleration.\\n --disable-chromium-sandbox Use this option only when there is requirement to launch the application as sudo user on Linux or when running as an elevated user in an applocker environment\\n on Windows.\\n --locate-shell-integration-path <shell> Print the path to a terminal shell integration script. Allowed values are 'bash', 'pwsh', 'zsh' or 'fish'.\\n --telemetry Shows all telemetry events which VS code collects.\\n --transient Run with temporary data and extension directories, as if launched for the first time.\\n\\nSubcommands\\n chat Pass in a prompt to run in a chat session in the current working directory.\\n serve-web Run a server that displays the editor UI in browsers.\\n agent Start and interact with AI agent hosts.\\n tunnel Make the current machine accessible from vscode.dev or other machines through a secure tunnel.","capturedAt":"2026-07-05","sourcePath":"source/code.cmd"},{"brand":"codex","summary_zh":"Codex CLI 命令行入口,支持交互式代理、非交互执行、代码审查、MCP、插件、桌面 app、云任务、沙箱和调试工具。","groups":[{"name_zh":"配置与特性开关","source":"explicit","flags":[{"name":"-c, --config","args":"<key=value>","desc_zh":"覆盖从 ~/.codex/config.toml 加载的配置值,支持 dotted path。","raw":"Override a configuration value that would otherwise be loaded from ~/.codex/config.toml."},{"name":"--enable","args":"<FEATURE>","desc_zh":"启用 feature,可重复。","raw":"Enable a feature (repeatable)."},{"name":"--disable","args":"<FEATURE>","desc_zh":"禁用 feature,可重复。","raw":"Disable a feature (repeatable)."},{"name":"--strict-config","desc_zh":"当 config.toml 包含当前版本无法识别的字段时报错。","raw":"Error out when config.toml contains fields that are not recognized"},{"name":"-p, --profile","args":"<CONFIG_PROFILE_V2>","desc_zh":"把 $CODEX_HOME 下指定 profile 配置叠加到基础用户配置上。","raw":"Layer $CODEX_HOME/<name>.config.toml on top of the base user config"}]},{"name_zh":"模型与输入","source":"explicit","flags":[{"name":"-i, --image","args":"<FILE>...","desc_zh":"给初始 prompt 附加图片。","raw":"Optional image(s) to attach to the initial prompt"},{"name":"-m, --model","args":"<MODEL>","desc_zh":"指定 agent 使用的模型。","raw":"Model the agent should use"},{"name":"--oss","desc_zh":"使用开源 provider。","raw":"Use open-source provider"},{"name":"--local-provider","args":"<OSS_PROVIDER>","desc_zh":"指定本地开源 provider,如 lmstudio 或 ollama。","raw":"Specify which local provider to use"}]},{"name_zh":"运行环境与权限","source":"explicit","flags":[{"name":"-s, --sandbox","args":"<SANDBOX_MODE>","desc_zh":"选择执行模型生成命令时使用的 sandbox 策略。","raw":"Select the sandbox policy to use when executing model-generated shell commands"},{"name":"--dangerously-bypass-approvals-and-sandbox","desc_zh":"跳过所有确认并无 sandbox 执行命令,极其危险,仅用于外部已沙箱化的环境。","raw":"Skip all confirmation prompts and execute commands without sandboxing."},{"name":"--dangerously-bypass-hook-trust","desc_zh":"运行已启用 hooks 时不要求持久化 trust,适合已审查 hook 来源的自动化。","raw":"Run enabled hooks without requiring persisted hook trust"},{"name":"-C, --cd","args":"<DIR>","desc_zh":"指定 agent 使用的工作根目录。","raw":"Tell the agent to use the specified directory as its working root"},{"name":"--add-dir","args":"<DIR>","desc_zh":"添加除主工作区外也可写的目录。","raw":"Additional directories that should be writable alongside the primary workspace"},{"name":"-a, --ask-for-approval","args":"<APPROVAL_POLICY>","desc_zh":"配置模型何时需要人工批准执行命令。","raw":"Configure when the model requires human approval before executing a command"},{"name":"--search","desc_zh":"启用实时 web search 工具。","raw":"Enable live web search."},{"name":"--no-alt-screen","desc_zh":"禁用 alternate screen 模式。","raw":"Disable alternate screen mode"},{"name":"-h, --help","desc_zh":"打印帮助。","raw":"Print help"},{"name":"-V, --version","desc_zh":"打印版本。","raw":"Print version"}]},{"name_zh":"远程连接","source":"explicit","flags":[{"name":"--remote","args":"<ADDR>","desc_zh":"把 TUI 连接到远程 app server endpoint。","raw":"Connect the TUI to a remote app server endpoint"},{"name":"--remote-auth-token-env","args":"<ENV_VAR>","desc_zh":"指定保存远程 app server websocket bearer token 的环境变量名。","raw":"Name of the environment variable containing the bearer token"}]}],"subcommands":[{"name":"exec","desc_zh":"非交互式运行 Codex。","helpStatus":"ready"},{"name":"review","desc_zh":"非交互式运行代码审查。","helpStatus":"ready"},{"name":"login","desc_zh":"管理登录。","helpStatus":"ready"},{"name":"logout","desc_zh":"移除已保存的认证凭据。","helpStatus":"missing"},{"name":"mcp","desc_zh":"管理外部 MCP servers。","helpStatus":"ready"},{"name":"plugin","desc_zh":"管理 Codex 插件。","helpStatus":"ready"},{"name":"mcp-server","desc_zh":"以 stdio MCP server 方式启动 Codex。","helpStatus":"missing"},{"name":"app-server","desc_zh":"实验性 app server 或相关工具。","helpStatus":"missing"},{"name":"remote-control","desc_zh":"管理启用 remote control 的 app-server daemon。","helpStatus":"missing"},{"name":"app","desc_zh":"启动 Codex desktop app。","helpStatus":"missing"},{"name":"completion","desc_zh":"生成 shell completion 脚本。","helpStatus":"missing"},{"name":"update","desc_zh":"更新 Codex 到最新版。","helpStatus":"missing"},{"name":"doctor","desc_zh":"诊断本地 Codex 安装、配置、认证和运行时健康。","helpStatus":"missing"},{"name":"sandbox","desc_zh":"在 Codex 提供的 sandbox 中运行命令。","helpStatus":"missing"},{"name":"debug","desc_zh":"调试工具。","helpStatus":"missing"},{"name":"apply","desc_zh":"把 Codex agent 最新 diff 用 git apply 应用到本地工作区。","helpStatus":"missing"},{"name":"resume","desc_zh":"恢复之前的交互会话。","helpStatus":"missing"},{"name":"archive","desc_zh":"按 id 或名称归档已保存会话。","helpStatus":"missing"},{"name":"delete","desc_zh":"按 id 或名称永久删除已保存会话。","helpStatus":"missing"},{"name":"unarchive","desc_zh":"取消归档已保存会话。","helpStatus":"missing"},{"name":"fork","desc_zh":"从之前的交互会话派生新会话。","helpStatus":"missing"},{"name":"cloud","desc_zh":"实验性浏览 Codex Cloud 任务并把变更应用到本地。","helpStatus":"missing"},{"name":"exec-server","desc_zh":"实验性运行独立 exec-server 服务。","helpStatus":"missing"},{"name":"features","desc_zh":"检查 feature flags。","helpStatus":"missing"},{"name":"help","desc_zh":"打印本消息或指定子命令帮助。","helpStatus":"missing"}],"iconBrand":"codex","raw":"~/Project/SkillsHelper (main ✗) codex -h\\nCodex CLI\\n\\nUsage: codex [OPTIONS] [PROMPT]\\n codex [OPTIONS] <COMMAND> [ARGS]\\n\\nCommands:\\n exec Run Codex non-interactively [aliases: e]\\n review Run a code review non-interactively\\n login Manage login\\n logout Remove stored authentication credentials\\n mcp Manage external MCP servers for Codex\\n plugin Manage Codex plugins\\n mcp-server Start Codex as an MCP server (stdio)\\n app-server [experimental] Run the app server or related tooling\\n remote-control [experimental] Manage the app-server daemon with remote control enabled\\n app Launch the Codex desktop app (opens the app installer if missing)\\n completion Generate shell completion scripts\\n update Update Codex to the latest version\\n doctor Diagnose local Codex installation, config, auth, and runtime health\\n sandbox Run commands within a Codex-provided sandbox\\n debug Debugging tools\\n apply Apply the latest diff produced by Codex agent as a \`git apply\` to your local working tree [aliases: a]\\n resume Resume a previous interactive session (picker by default; use --last to continue the most recent)\\n archive Archive a saved session by id or session name\\n delete Permanently delete a saved session by id or session name\\n unarchive Unarchive a saved session by id or session name\\n fork Fork a previous interactive session (picker by default; use --last to fork the most recent)\\n cloud [EXPERIMENTAL] Browse tasks from Codex Cloud and apply changes locally\\n exec-server [EXPERIMENTAL] Run the standalone exec-server service\\n features Inspect feature flags\\n help Print this message or the help of the given subcommand(s)\\n\\nArguments:\\n [PROMPT] Optional user prompt to start the session\\n\\nOptions:\\n -c, --config <key=value> Override a configuration value that would otherwise be loaded from \`~/.codex/config.toml\`. Use a dotted path (\`foo.bar.baz\`) to override nested values.\\n The \`value\` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal\\n --enable <FEATURE> Enable a feature (repeatable). Equivalent to \`-c features.<name>=true\`\\n --disable <FEATURE> Disable a feature (repeatable). Equivalent to \`-c features.<name>=false\`\\n --remote <ADDR> Connect the TUI to a remote app server endpoint\\n --remote-auth-token-env <ENV_VAR> Name of the environment variable containing the bearer token to send to a remote app server websocket\\n --strict-config Error out when config.toml contains fields that are not recognized by this version of Codex\\n -i, --image <FILE>... Optional image(s) to attach to the initial prompt\\n -m, --model <MODEL> Model the agent should use\\n --oss Use open-source provider\\n --local-provider <OSS_PROVIDER> Specify which local provider to use (lmstudio or ollama). If not specified with --oss, will use config default or show selection\\n -p, --profile <CONFIG_PROFILE_V2> Layer $CODEX_HOME/<name>.config.toml on top of the base user config\\n -s, --sandbox <SANDBOX_MODE> Select the sandbox policy to use when executing model-generated shell commands [possible values: read-only, workspace-write, danger-full-access]\\n --dangerously-bypass-approvals-and-sandbox Skip all confirmation prompts and execute commands without sandboxing. EXTREMELY DANGEROUS. Intended solely for running in environments that are\\n externally sandboxed\\n --dangerously-bypass-hook-trust Run enabled hooks without requiring persisted hook trust for this invocation. DANGEROUS. Intended only for automation that already vets hook sources\\n -C, --cd <DIR> Tell the agent to use the specified directory as its working root\\n --add-dir <DIR> Additional directories that should be writable alongside the primary workspace\\n -a, --ask-for-approval <APPROVAL_POLICY> Configure when the model requires human approval before executing a command [possible values: untrusted, on-failure, on-request, never]\\n --search Enable live web search. When enabled, the native Responses \`web_search\` tool is available to the model (no per‑call approval)\\n --no-alt-screen Disable alternate screen mode\\n -h, --help Print help (see more with '--help')\\n -V, --version Print version","capturedAt":"2026-07-05","sourcePath":"source/codex.cmd"},{"brand":"gstack","summary_zh":"gstack skill pack 安装器,用于全局或项目级安装、升级、诊断、列出和启停技能。","groups":[{"name_zh":"安装与项目配置","source":"explicit","flags":[{"name":"--host","args":"<id>","desc_zh":"注册到指定 host,可重复或用逗号分隔,支持 claude、codex、factory、opencode、kiro。","raw":"Register with host (repeatable, comma-separated)."},{"name":"--prefix","desc_zh":"使用 gstack-* 技能名称。","raw":"Use gstack-* skill names"},{"name":"--no-prefix","desc_zh":"使用扁平技能名称,这是默认行为。","raw":"Use flat skill names (default)"},{"name":"--no-claude-md","desc_zh":"不向 CLAUDE.md 写入 gstack section。","raw":"Don't write gstack section to CLAUDE.md"},{"name":"--yes, -y","desc_zh":"跳过确认提示。","raw":"Skip confirmation prompts"},{"name":"--reinstall","desc_zh":"安装前移除已有安装。","raw":"Remove existing install before installing"},{"name":"--quiet, -q","desc_zh":"抑制非必要输出。","raw":"Suppress non-essential output"},{"name":"--tier","args":"<t>","desc_zh":"仅 init 使用,设置 required 或 optional,默认 required。","raw":"init only: required or optional"},{"name":"--no-commit","desc_zh":"仅 init 使用,暂存变更但不提交。","raw":"init only: stage but don't commit changes"},{"name":"--project","desc_zh":"仅 uninstall 使用,从当前项目移除而非全局移除。","raw":"uninstall only: remove from current project, not global"},{"name":"--keep-claude-md","desc_zh":"仅 uninstall 使用,保留 CLAUDE.md 中的 section。","raw":"uninstall only: leave CLAUDE.md section in place"}]}],"subcommands":[{"name":"install","desc_zh":"全局安装 gstack。","helpStatus":"missing"},{"name":"init","desc_zh":"把 gstack 添加到当前项目。","helpStatus":"missing"},{"name":"uninstall","desc_zh":"移除 gstack,可用 --project 只移除当前仓库。","helpStatus":"missing"},{"name":"upgrade","desc_zh":"拉取最新版并重建。","helpStatus":"missing"},{"name":"doctor","desc_zh":"诊断安装问题。","helpStatus":"ready"},{"name":"status","desc_zh":"显示安装版本、hosts 和设置。","helpStatus":"ready"},{"name":"list","desc_zh":"列出可用 skills。","helpStatus":"ready"},{"name":"enable","desc_zh":"在当前项目启用指定 skill。","helpStatus":"ready"},{"name":"disable","desc_zh":"在当前项目禁用指定 skill。","helpStatus":"missing"}],"iconBrand":"gstack","raw":"~/Project/SkillsHelper (main ✗) gstack -h\\ngstack — installer for Garry Tan's gstack skill pack\\n\\nUsage:\\n npx @garrytan/gstack interactive wizard\\n npx @garrytan/gstack <command> [opts]\\n\\nCommands:\\n install Install gstack globally (~/.claude/skills/gstack)\\n init Add gstack to the current project (team mode)\\n uninstall Remove gstack (global; add --project for just this repo)\\n upgrade Pull latest gstack and rebuild\\n doctor Diagnose install issues\\n status Show install version, hosts, and settings\\n list List available skills\\n enable <name> Enable a skill in the current project\\n disable <name> Disable a skill in the current project\\n\\nCommon options:\\n --host <id> Register with host (repeatable, comma-separated).\\n Valid: claude, codex, factory, opencode, kiro\\n --prefix Use gstack-* skill names\\n --no-prefix Use flat skill names (default)\\n --no-claude-md Don't write gstack section to CLAUDE.md\\n --yes, -y Skip confirmation prompts\\n --reinstall Remove existing install before installing\\n --quiet, -q Suppress non-essential output\\n --tier <t> init only: \\"required\\" or \\"optional\\" (default: required)\\n --no-commit init only: stage but don't commit changes\\n --project uninstall only: remove from current project, not global\\n --keep-claude-md uninstall only: leave CLAUDE.md section in place\\n\\nExamples:\\n npx @garrytan/gstack install --host claude,codex\\n npx @garrytan/gstack init --tier optional\\n npx @garrytan/gstack uninstall --project --yes\\n npx @garrytan/gstack doctor","capturedAt":"2026-07-05","sourcePath":"source/gstack.cmd"},{"brand":"hermes","summary_zh":"Hermes Agent 命令行入口,提供交互/一次性 AI 助手、模型与 provider 配置、集成、技能、插件、MCP、会话、仪表盘和诊断工具。","groups":[{"name_zh":"会话与模型","source":"explicit","flags":[{"name":"-h, --help","desc_zh":"显示帮助并退出。","raw":"show this help message and exit"},{"name":"--version, -V","desc_zh":"显示版本并退出。","raw":"Show version and exit"},{"name":"-z, --oneshot","args":"PROMPT","desc_zh":"一次性发送 prompt,只把最终响应文本输出到 stdout,适合脚本和管道。","raw":"One-shot mode: send a single prompt and print ONLY the final response text to stdout."},{"name":"-m, --model","args":"MODEL","desc_zh":"为本次调用覆盖模型。","raw":"Model override for this invocation"},{"name":"--provider","args":"PROVIDER","desc_zh":"为本次调用覆盖 provider。","raw":"Provider override for this invocation"},{"name":"-t, --toolsets","args":"TOOLSETS","desc_zh":"为本次调用启用逗号分隔的 toolsets。","raw":"Comma-separated toolsets to enable for this invocation."},{"name":"--resume, -r","args":"SESSION","desc_zh":"按 ID 或标题恢复之前的 session。","raw":"Resume a previous session by ID or title"},{"name":"--continue, -c","args":"[SESSION_NAME]","desc_zh":"按名称恢复 session;未给名称时恢复最近一次。","raw":"Resume a session by name, or the most recent if no name given"}]},{"name_zh":"运行环境与安全","source":"explicit","flags":[{"name":"--worktree, -w","desc_zh":"在隔离 git worktree 中运行,适合并行 agents。","raw":"Run in an isolated git worktree"},{"name":"--accept-hooks","desc_zh":"在无 TTY 或 CI 中自动批准未见过的 shell hooks。","raw":"Auto-approve any unseen shell hooks declared in config.yaml without a TTY prompt."},{"name":"--skills, -s","args":"SKILLS","desc_zh":"预加载一个或多个 skills,支持重复 flag 或逗号分隔。","raw":"Preload one or more skills for the session"},{"name":"--yolo","desc_zh":"绕过危险命令批准提示,需谨慎使用。","raw":"Bypass all dangerous command approval prompts"},{"name":"--pass-session-id","desc_zh":"把 session ID 放入 agent 的 system prompt。","raw":"Include the session ID in the agent's system prompt"},{"name":"--ignore-user-config","desc_zh":"忽略 ~/.hermes/config.yaml,回退到内置默认值。","raw":"Ignore ~/.hermes/config.yaml and fall back to built-in defaults"},{"name":"--ignore-rules","desc_zh":"跳过 AGENTS.md、SOUL.md、.cursorrules、memory 和预加载 skills 的自动注入。","raw":"Skip auto-injection of AGENTS.md, SOUL.md, .cursorrules, memory, and preloaded skills"},{"name":"--tui","desc_zh":"启动现代 TUI,而不是经典 REPL。","raw":"Launch the modern TUI instead of the classic REPL"},{"name":"--cli","desc_zh":"强制使用经典 prompt_toolkit REPL。","raw":"Force the classic prompt_toolkit REPL"},{"name":"--dev","desc_zh":"配合 --tui 使用 TypeScript 源码运行,跳过 dist build。","raw":"With --tui: run TypeScript sources via tsx"}]}],"subcommands":[{"name":"chat","desc_zh":"与 agent 进行交互式聊天。","helpStatus":"missing"},{"name":"model","desc_zh":"选择默认模型和 provider。","helpStatus":"missing"},{"name":"fallback","desc_zh":"管理主模型失败时尝试的 fallback providers。","helpStatus":"missing"},{"name":"secrets","desc_zh":"管理外部 secret 来源。","helpStatus":"missing"},{"name":"migrate","desc_zh":"迁移退役模型或废弃设置的配置。","helpStatus":"missing"},{"name":"gateway","desc_zh":"管理 messaging gateway。","helpStatus":"missing"},{"name":"proxy","desc_zh":"运行到 OAuth providers 的本地 OpenAI-compatible proxy。","helpStatus":"missing"},{"name":"lsp","desc_zh":"管理 Language Server Protocol。","helpStatus":"missing"},{"name":"setup","desc_zh":"运行交互式设置向导。","helpStatus":"missing"},{"name":"postinstall","desc_zh":"为 pip 安装补齐 node、browser、ripgrep、ffmpeg 等非 Python 依赖。","helpStatus":"missing"},{"name":"whatsapp","desc_zh":"设置 WhatsApp 集成。","helpStatus":"missing"},{"name":"slack","desc_zh":"Slack 集成助手。","helpStatus":"missing"},{"name":"send","desc_zh":"向已配置平台发送消息。","helpStatus":"missing"},{"name":"login","desc_zh":"登录 inference provider。","helpStatus":"missing"},{"name":"logout","desc_zh":"清除 inference provider 认证。","helpStatus":"missing"},{"name":"auth","desc_zh":"管理 pooled provider credentials。","helpStatus":"missing"},{"name":"status","desc_zh":"显示所有组件状态。","helpStatus":"missing"},{"name":"cron","desc_zh":"管理 cron jobs。","helpStatus":"missing"},{"name":"webhook","desc_zh":"管理动态 webhook subscriptions。","helpStatus":"missing"},{"name":"portal","desc_zh":"设置 Nous Portal。","helpStatus":"missing"},{"name":"kanban","desc_zh":"多 profile 协作看板。","helpStatus":"missing"},{"name":"hooks","desc_zh":"检查和管理 shell-script hooks。","helpStatus":"missing"},{"name":"doctor","desc_zh":"检查配置和依赖。","helpStatus":"ready"},{"name":"security","desc_zh":"对 venv、plugins 和 MCP servers 做供应链审计。","helpStatus":"ready"},{"name":"dump","desc_zh":"导出设置摘要用于支持或调试。","helpStatus":"missing"},{"name":"debug","desc_zh":"上传日志和系统信息等调试工具。","helpStatus":"missing"},{"name":"backup","desc_zh":"把 Hermes home 目录备份为 zip。","helpStatus":"missing"},{"name":"checkpoints","desc_zh":"检查、修剪或清空 checkpoints。","helpStatus":"missing"},{"name":"import","desc_zh":"从 zip 恢复 Hermes backup。","helpStatus":"missing"},{"name":"config","desc_zh":"查看和编辑配置。","helpStatus":"missing"},{"name":"pairing","desc_zh":"管理用户授权 DM pairing codes。","helpStatus":"missing"},{"name":"skills","desc_zh":"搜索、安装、配置和管理 skills。","helpStatus":"ready"},{"name":"bundles","desc_zh":"创建、列出和管理 skill bundles。","helpStatus":"missing"},{"name":"plugins","desc_zh":"管理插件安装、更新、移除和列表。","helpStatus":"ready"},{"name":"curator","desc_zh":"管理后台 skill maintenance curator。","helpStatus":"missing"},{"name":"memory","desc_zh":"配置外部 memory provider。","helpStatus":"missing"},{"name":"tools","desc_zh":"配置各平台启用哪些 tools。","helpStatus":"missing"},{"name":"computer-use","desc_zh":"管理 macOS Computer Use 后端。","helpStatus":"missing"},{"name":"mcp","desc_zh":"管理 MCP servers 并把 Hermes 作为 MCP server 运行。","helpStatus":"ready"},{"name":"sessions","desc_zh":"管理会话历史。","helpStatus":"missing"},{"name":"insights","desc_zh":"显示使用洞察和分析。","helpStatus":"missing"},{"name":"claw","desc_zh":"OpenClaw 迁移工具。","helpStatus":"missing"},{"name":"version","desc_zh":"显示版本信息。","helpStatus":"missing"},{"name":"update","desc_zh":"更新 Hermes Agent。","helpStatus":"missing"},{"name":"uninstall","desc_zh":"卸载 Hermes Agent。","helpStatus":"missing"},{"name":"acp","desc_zh":"作为 ACP server 运行 Hermes Agent。","helpStatus":"missing"},{"name":"profile","desc_zh":"管理多个隔离 Hermes profiles。","helpStatus":"missing"},{"name":"completion","desc_zh":"打印 shell completion 脚本。","helpStatus":"missing"},{"name":"dashboard","desc_zh":"启动 web UI dashboard。","helpStatus":"missing"},{"name":"desktop","desc_zh":"构建并启动原生桌面 app。","helpStatus":"missing"},{"name":"logs","desc_zh":"查看和过滤 Hermes 日志文件。","helpStatus":"missing"},{"name":"prompt-size","desc_zh":"显示 system prompt 和 tool schemas 的字节拆分。","helpStatus":"missing"}],"iconBrand":"hermes","raw":"~/Project/SkillsHelper (main ✗) hermes -h\\nusage: hermes [-h] [--version] [-z PROMPT] [-m MODEL] [--provider PROVIDER] [-t TOOLSETS] [--resume SESSION] [--continue [SESSION_NAME]] [--worktree] [--accept-hooks] [--skills SKILLS] [--yolo]\\n [--pass-session-id] [--ignore-user-config] [--ignore-rules] [--tui] [--cli] [--dev]\\n {chat,model,fallback,secrets,migrate,gateway,proxy,lsp,setup,postinstall,whatsapp,slack,send,login,logout,auth,status,cron,webhook,portal,kanban,hooks,doctor,security,dump,debug,backup,checkpoints,import,config,pairing,skills,bundles,plugins,curator,memory,tools,computer-use,mcp,sessions,insights,claw,version,update,uninstall,acp,profile,completion,dashboard,desktop,gui,logs,prompt-size}\\n ...\\n\\nHermes Agent - AI assistant with tool-calling capabilities\\n\\npositional arguments:\\n {chat,model,fallback,secrets,migrate,gateway,proxy,lsp,setup,postinstall,whatsapp,slack,send,login,logout,auth,status,cron,webhook,portal,kanban,hooks,doctor,security,dump,debug,backup,checkpoints,import,config,pairing,skills,bundles,plugins,curator,memory,tools,computer-use,mcp,sessions,insights,claw,version,update,uninstall,acp,profile,completion,dashboard,desktop,gui,logs,prompt-size}\\n Command to run\\n chat Interactive chat with the agent\\n model Select default model and provider\\n fallback Manage fallback providers (tried when the primary model fails)\\n secrets Manage external secret sources (Bitwarden Secrets Manager)\\n migrate Migrate configuration for retired models or deprecated settings\\n gateway Messaging gateway management\\n proxy Local OpenAI-compatible proxy to OAuth providers\\n lsp Language Server Protocol management\\n setup Interactive setup wizard\\n postinstall Bootstrap non-Python deps for pip installs (node, browser, ripgrep, ffmpeg)\\n whatsapp Set up WhatsApp integration\\n slack Slack integration helpers (manifest generation, etc.)\\n send Send a message to a configured platform (scripts, cron jobs, CI).\\n login Authenticate with an inference provider\\n logout Clear authentication for an inference provider\\n auth Manage pooled provider credentials\\n status Show status of all components\\n cron Cron job management\\n webhook Manage dynamic webhook subscriptions\\n portal Set up Nous Portal (login, model pick, Tool Gateway); see also \`portal info\`\\n kanban Multi-profile collaboration board (tasks, links, comments)\\n hooks Inspect and manage shell-script hooks\\n doctor Check configuration and dependencies\\n security Supply-chain audit (OSV.dev) for venv, plugins, and MCP servers\\n dump Dump setup summary for support/debugging\\n debug Debug tools — upload logs and system info for support\\n backup Back up Hermes home directory to a zip file\\n checkpoints Inspect / prune / clear ~/.hermes/checkpoints/\\n import Restore a Hermes backup from a zip file\\n config View and edit configuration\\n pairing Manage DM pairing codes for user authorization\\n skills Search, install, configure, and manage skills\\n bundles Create, list, and manage skill bundles (aliases for multiple skills)\\n plugins Manage plugins — install, update, remove, list\\n curator Background skill maintenance (curator) — status, run, pause, pin\\n memory Configure external memory provider\\n tools Configure which tools are enabled per platform\\n computer-use Manage the Computer Use (cua-driver) backend (macOS)\\n mcp Manage MCP servers and run Hermes as an MCP server\\n sessions Manage session history (list, rename, export, prune, delete)\\n insights Show usage insights and analytics\\n claw OpenClaw migration tools\\n version Show version information\\n update Update Hermes Agent to the latest version\\n uninstall Uninstall Hermes Agent\\n acp Run Hermes Agent as an ACP (Agent Client Protocol) server\\n profile Manage profiles — multiple isolated Hermes instances\\n completion Print shell completion script (bash, zsh, or fish)\\n dashboard Start the web UI dashboard\\n desktop (gui) Build and launch the native desktop app\\n logs View and filter Hermes log files\\n prompt-size Show a byte breakdown of the system prompt + tool schemas\\n\\noptions:\\n -h, --help show this help message and exit\\n --version, -V Show version and exit\\n -z PROMPT, --oneshot PROMPT\\n One-shot mode: send a single prompt and print ONLY the final response text to stdout. No banner, no spinner, no tool previews, no session_id line. Tools, memory, rules, and\\n AGENTS.md in the CWD are loaded as normal; approvals are auto-bypassed. Intended for scripts / pipes.\\n -m MODEL, --model MODEL\\n Model override for this invocation (e.g. anthropic/claude-sonnet-4.6). Applies to -z/--oneshot and --tui. Also settable via HERMES_INFERENCE_MODEL env var.\\n --provider PROVIDER Provider override for this invocation (e.g. openrouter, anthropic). Applies to -z/--oneshot and --tui. The persistent provider lives in config.yaml under model.provider — use\\n \`hermes setup\` or edit the file to change it.\\n -t TOOLSETS, --toolsets TOOLSETS\\n Comma-separated toolsets to enable for this invocation. Applies to -z/--oneshot and --tui.\\n --resume SESSION, -r SESSION\\n Resume a previous session by ID or title\\n --continue [SESSION_NAME], -c [SESSION_NAME]\\n Resume a session by name, or the most recent if no name given\\n --worktree, -w Run in an isolated git worktree (for parallel agents)\\n --accept-hooks Auto-approve any unseen shell hooks declared in config.yaml without a TTY prompt. Equivalent to HERMES_ACCEPT_HOOKS=1 or hooks_auto_accept: true in config.yaml. Use on CI /\\n headless runs that can't prompt.\\n --skills SKILLS, -s SKILLS\\n Preload one or more skills for the session (repeat flag or comma-separate)\\n --yolo Bypass all dangerous command approval prompts (use at your own risk)\\n --pass-session-id Include the session ID in the agent's system prompt\\n --ignore-user-config Ignore ~/.hermes/config.yaml and fall back to built-in defaults (credentials in .env are still loaded)\\n --ignore-rules Skip auto-injection of AGENTS.md, SOUL.md, .cursorrules, memory, and preloaded skills\\n --tui Launch the modern TUI instead of the classic REPL\\n --cli Force the classic prompt_toolkit REPL (overrides display.interface=tui)\\n --dev With --tui: run TypeScript sources via tsx (skip dist build)\\n\\nExamples:\\n hermes Start interactive chat\\n hermes chat -q \\"Hello\\" Single query mode\\n hermes --tui Launch the modern TUI (or set display.interface: tui)\\n hermes --cli Force the classic REPL (overrides display.interface: tui)\\n hermes -c Resume the most recent session\\n hermes -c \\"my project\\" Resume a session by name (latest in lineage)\\n hermes --resume <session_id> Resume a specific session by ID\\n hermes setup Run setup wizard\\n hermes logout Clear stored authentication\\n hermes auth add <provider> Add a pooled credential\\n hermes auth list List pooled credentials\\n hermes auth remove <p> <t> Remove pooled credential by index, id, or label\\n hermes auth reset <provider> Clear exhaustion status for a provider\\n hermes model Select default model\\n hermes fallback [list] Show fallback provider chain\\n hermes fallback add Add a fallback provider (same picker as \`hermes model\`)\\n hermes fallback remove Remove a fallback provider from the chain\\n hermes config View configuration\\n hermes config edit Edit config in $EDITOR\\n hermes config set model gpt-4 Set a config value\\n hermes gateway Run messaging gateway\\n hermes -s hermes-agent-dev,github-auth\\n hermes -w Start in isolated git worktree\\n hermes gateway install Install gateway background service\\n hermes sessions list List past sessions\\n hermes sessions browse Interactive session picker\\n hermes sessions rename ID T Rename/title a session\\n hermes logs View agent.log (last 50 lines)\\n hermes logs -f Follow agent.log in real time\\n hermes logs errors View errors.log\\n hermes logs --since 1h Lines from the last hour\\n hermes debug share Upload debug report for support\\n hermes update Update to latest version\\n hermes dashboard Start web UI dashboard (port 9119)\\n hermes dashboard --stop Stop running dashboard processes\\n hermes dashboard --status List running dashboard processes\\n\\nFor more help on a command:\\n hermes <command> --help","capturedAt":"2026-07-05","sourcePath":"source/hermes.cmd"}]`),cs=Object.freeze(f1);function bs(t){return t.groups.reduce((r,u)=>r+u.flags.length,0)}function ys(t){var r;return((r=t.subcommands)==null?void 0:r.length)??0}const Ku=Object.freeze(cs.map(t=>({brand:t.brand,iconBrand:t.iconBrand,version:t.version,summary_zh:t.summary_zh,flagCount:bs(t),subcommandCount:ys(t)}))),l0=Ku.reduce((t,r)=>t+r.flagCount,0),c0=Ku.reduce((t,r)=>t+r.subcommandCount,0);function h1(t=cs){return t.reduce((r,u)=>r+bs(u),0)}function p1(t=cs){return t.reduce((r,u)=>r+ys(u),0)}function m1(t,r){return`/api/icons/${encodeURIComponent(t)}?size=${r}`}function Oi({brand:t,src:r,size:u=20,className:a,imgClassName:i,fallbackClassName:l,label:h}){const[f,m]=G.useState(!1),[x,b]=G.useState(!1),y=G.useMemo(()=>r||(t?m1(t,u):null),[t,u,r]);G.useEffect(()=>{m(!1),b(!1)},[y]);const w={height:u,width:u},C=Math.max(12,u-2);return y&&!f?p.jsxs("span",{className:Se("relative grid shrink-0 place-items-center overflow-hidden rounded-md bg-muted",a),style:w,children:[!x&&p.jsx("span",{className:"absolute inset-0 animate-pulse bg-muted-foreground/10","data-testid":"official-brand-icon-skeleton"}),p.jsx("img",{src:y,alt:h??"","aria-hidden":h?void 0:!0,width:C,height:C,loading:"lazy",onLoad:()=>b(!0),onError:()=>m(!0),className:Se("shrink-0 rounded-[4px] object-contain transition-opacity",x?"opacity-100":"opacity-0",i),style:{height:C,width:C}})]}):p.jsx("span",{className:Se("grid shrink-0 place-items-center rounded-md bg-muted text-muted-foreground",a,l),style:w,"aria-label":h,"data-testid":"official-brand-icon-fallback",children:p.jsx(xm,{size:Math.max(12,Math.round(u*.55)),"aria-hidden":"true"})})}function Qu({brand:t,iconBrand:r,size:u=36}){return p.jsx(Oi,{brand:r??t,size:u,label:t})}function g1({module:t,view:r,editorFilter:u,selectedCommandBrand:a,stats:i,onHome:l,onSettings:h,onCommandBrand:f,onEditor:m}){var I;const x=(i==null?void 0:i.byEditor)??{},b=new Set($u),y=Object.entries(x).filter(([T,R])=>!ls(T)&&!b.has(T)&&R>0).sort((T,R)=>R[1]-T[1]),w=$u.map(T=>[T,x[T]??0]),C=((I=Object.entries(x).find(([T])=>ls(T)))==null?void 0:I[1])??0,k=(i==null?void 0:i.total)??0,F=Ku,A=(T,R=!1)=>Se("flex items-center justify-between gap-2 rounded-md px-3 py-2 text-body-sm transition-colors",T?"bg-primary-soft text-primary":R?"text-muted-foreground/70 hover:bg-muted hover:text-foreground":"text-muted-foreground hover:bg-muted hover:text-foreground"),q="mt-4 px-3 text-[11px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/70";return p.jsxs("aside",{className:"sidebar",children:[p.jsx("p",{className:q,children:"工作区"}),p.jsx("button",{onClick:l,className:A(t==="home"&&r==="home"),children:p.jsxs("span",{className:"flex items-center gap-2",children:[p.jsx(ym,{size:16}),"首页"]})}),p.jsxs("button",{onClick:()=>m(null),className:A(t==="skills"&&r==="skills"&&u===null),children:[p.jsxs("span",{className:"flex items-center gap-2",children:[p.jsx(xi,{size:16}),"技能库"]}),p.jsx("span",{className:"text-caption opacity-70",children:k||""})]}),p.jsxs("button",{onClick:()=>f(null),className:A(t==="commands"&&r==="cli"&&a===null),children:[p.jsxs("span",{className:"flex items-center gap-2",children:[p.jsx(yi,{size:16}),"命令手册"]}),p.jsx("span",{className:"text-caption opacity-70",children:F.length})]}),t==="skills"&&r==="skills"&&p.jsxs(p.Fragment,{children:[p.jsx("p",{className:q,children:"来源"}),[...y,...w].map(([T,R])=>{const j=d1(T),U=u===T;return p.jsxs("button",{onClick:()=>m(T),className:A(U,!0),children:[p.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[p.jsx(Oi,{brand:j.iconBrand,size:20,label:j.label,className:"rounded",fallbackClassName:"text-muted-foreground"}),p.jsx("span",{className:"truncate",children:j.label})]}),p.jsx("span",{className:"text-caption opacity-70",children:R})]},T)}),C>0&&p.jsxs("button",{onClick:()=>m("(none)"),className:A(u==="(none)",!0),children:[p.jsxs("span",{className:"flex items-center gap-2 text-muted-foreground",children:[p.jsx(J0,{size:16}),"未分类"]}),p.jsx("span",{className:"text-caption opacity-70",children:C})]})]}),t==="commands"&&r==="cli"&&p.jsxs(p.Fragment,{children:[p.jsx("p",{className:q,children:"命令品牌"}),F.map(T=>{const R=a===T.brand;return p.jsxs("button",{onClick:()=>f(T.brand),className:A(R,!0),children:[p.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[p.jsx(Qu,{brand:T.brand,iconBrand:T.iconBrand,size:20}),p.jsx("span",{className:"truncate font-mono",children:T.brand})]}),p.jsxs("span",{className:"text-caption opacity-70","aria-label":`${T.flagCount} 个 flag,${T.subcommandCount} 个子命令`,children:[T.flagCount,"/",T.subcommandCount]})]},T.brand)})]}),p.jsx("button",{onClick:h,className:Se(A(r==="settings"),"mt-auto"),children:p.jsxs("span",{className:"flex items-center gap-2",children:[p.jsx(Cm,{size:16}),"设置"]})})]})}const d0=t=>typeof t=="boolean"?`${t}`:t===0?"0":t,f0=tf,x1=(t,r)=>u=>{var a;if((r==null?void 0:r.variants)==null)return f0(t,u==null?void 0:u.class,u==null?void 0:u.className);const{variants:i,defaultVariants:l}=r,h=Object.keys(i).map(x=>{const b=u==null?void 0:u[x],y=l==null?void 0:l[x];if(b===null)return null;const w=d0(b)||d0(y);return i[x][w]}),f=u&&Object.entries(u).reduce((x,b)=>{let[y,w]=b;return w===void 0||(x[y]=w),x},{}),m=r==null||(a=r.compoundVariants)===null||a===void 0?void 0:a.reduce((x,b)=>{let{class:y,className:w,...C}=b;return Object.entries(C).every(k=>{let[F,A]=k;return Array.isArray(A)?A.includes({...l,...f}[F]):{...l,...f}[F]===A})?[...x,y,w]:x},[]);return f0(t,h,m,u==null?void 0:u.class,u==null?void 0:u.className)},b1=x1("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-body-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-border bg-transparent hover:bg-muted hover:text-foreground",ghost:"hover:bg-muted hover:text-foreground"},size:{default:"h-9 px-4 py-2",sm:"h-8 px-3",lg:"h-10 px-6",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),wi=G.forwardRef(({className:t,variant:r,size:u,...a},i)=>p.jsx("button",{ref:i,className:Se(b1({variant:r,size:u}),t),...a}));wi.displayName="Button";const y1="skillhelper-theme";function v1(){return typeof document<"u"&&document.documentElement.classList.contains("dark")?"dark":"light"}function af(){const[t,r]=G.useState(v1);G.useEffect(()=>{document.documentElement.classList.toggle("dark",t==="dark");try{localStorage.setItem(y1,t)}catch{}},[t]);const u=G.useCallback(()=>{r(a=>a==="dark"?"light":"dark")},[]);return{theme:t,toggle:u}}const w1=[{key:"home",label:"首页"},{key:"skills",label:"技能库"},{key:"commands",label:"命令手册"},{key:"editor",label:"编辑器",soon:!0}],k1="/brand-icon.png";function _1({status:t,skillCount:r}){const u=t==="loading"||t==="syncing",a=t==="loading"?"加载中":t==="syncing"?"扫描中":t==="error"?"需检查":"已同步";return p.jsxs("span",{className:Se("hidden items-center gap-1.5 rounded-full border px-2.5 py-1 text-caption md:inline-flex",t==="error"?"border-destructive/30 bg-destructive/10 text-destructive":t==="ready"?"border-emerald-500/25 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"border-amber-500/25 bg-amber-500/10 text-amber-700 dark:text-amber-300"),"aria-label":`扫描状态:${a}`,children:[t==="error"?p.jsx(im,{size:14}):u?p.jsx(vm,{size:14,className:"animate-spin"}):p.jsx(Z0,{size:14}),p.jsx("span",{children:a}),p.jsx("span",{className:"font-mono text-[11px] opacity-75",children:r})]})}function C1({module:t,onModule:r,onReload:u,reloading:a,searchValue:i,onSearch:l,scanStatus:h,skillCount:f}){const{theme:m,toggle:x}=af();return p.jsxs("header",{className:"topbar",children:[p.jsxs("button",{type:"button",onClick:()=>r("home"),className:"flex shrink-0 items-center gap-2 rounded-md px-2 py-1 transition-colors hover:bg-muted","aria-label":"返回 呼哈哈-技能助手首页",children:[p.jsx("img",{src:k1,alt:"",className:"h-9 w-9 shrink-0 rounded-md object-cover","aria-hidden":"true"}),p.jsxs("span",{className:"hidden w-[8.25rem] flex-col text-left sm:flex xl:w-[9rem]",children:[p.jsx("span",{className:"whitespace-nowrap text-body-sm font-bold text-foreground",children:"呼哈哈-技能助手"}),p.jsx("span",{className:"hidden whitespace-nowrap text-[11px] leading-none text-muted-foreground xl:block",children:"本地技能工作台"})]})]}),p.jsx("nav",{className:"hidden shrink-0 items-center gap-1 lg:flex","aria-label":"主模块",children:w1.map(b=>{const y=t===b.key;return p.jsxs("button",{type:"button",onClick:()=>r(b.key),className:Se("whitespace-nowrap rounded-md px-3 py-1.5 text-body-sm transition-colors",y?"bg-primary-soft text-primary":"text-muted-foreground hover:bg-muted hover:text-foreground"),children:[b.label,b.soon&&p.jsx("span",{className:"ml-1 text-caption opacity-70",children:"即将推出"})]},b.key)})}),p.jsxs("div",{className:"relative ml-auto hidden min-w-[12rem] flex-1 md:block xl:max-w-xl",children:[p.jsx(xs,{size:16,className:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground"}),p.jsx("input",{type:"search",value:i,onChange:b=>l(b.target.value),placeholder:"搜索技能、命令、来源…",className:"h-9 w-full rounded-md border border-input bg-background pl-9 pr-3 text-body-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50"})]}),p.jsx(_1,{status:h,skillCount:f}),p.jsxs("div",{className:"flex items-center gap-1",children:[p.jsx(wi,{variant:"ghost",size:"icon",onClick:u,"aria-label":"重新扫描",children:p.jsx(_m,{size:18,className:a?"animate-spin":void 0})}),p.jsx(wi,{variant:"ghost",size:"icon",onClick:x,"aria-label":m==="dark"?"切换到亮色":"切换到暗色",children:m==="dark"?p.jsx(Em,{size:18}):p.jsx(km,{size:18})})]})]})}function Cn(t){return Array.isArray?Array.isArray(t):cf(t)==="[object Array]"}function E1(t){if(typeof t=="string")return t;if(typeof t=="bigint")return t.toString();const r=t+"";return r=="0"&&1/t==-1/0?"-0":r}function ki(t){return t==null?"":E1(t)}function et(t){return typeof t=="string"}function Bu(t){return typeof t=="number"}function S1(t){return t===!0||t===!1||z1(t)&&cf(t)=="[object Boolean]"}function lf(t){return typeof t=="object"}function z1(t){return lf(t)&&t!==null}function ht(t){return t!=null}function Pu(t){return!t.trim().length}function cf(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}const A1="Incorrect 'index' type",_i="Invalid doc index: must be a non-negative integer within the bounds of the docs array",D1=t=>`Invalid value for key ${t}`,N1=t=>`Pattern length exceeds max of ${t}.`,j1=t=>`Missing ${t} property in key`,F1=t=>`Property 'weight' in key '${t}' must be a positive integer`,T1="Fuse.match does not support useTokenSearch: token search requires corpus-level statistics (df, fieldCount) that a one-off string comparison does not have. Use new Fuse(...).search(...) instead.",h0=Object.prototype.hasOwnProperty;var P1=class{constructor(t){this._keys=[],this._keyMap={};let r=0;t.forEach(u=>{const a=df(u);this._keys.push(a),this._keyMap[a.id]=a,r+=a.weight}),this._keys.forEach(u=>{u.weight/=r})}get(t){return this._keyMap[t]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}};function df(t){let r=null,u=null,a=null,i=1,l=null;if(et(t)||Cn(t))a=t,r=p0(t),u=Uu(t);else{if(!h0.call(t,"name"))throw new Error(j1("name"));const h=t.name;if(a=h,h0.call(t,"weight")&&t.weight!==void 0&&(i=t.weight,i<=0))throw new Error(F1(Uu(h)));r=p0(h),u=Uu(h),l=t.getFn??null}return{path:r,id:u,weight:i,src:a,getFn:l}}function p0(t){return Cn(t)?t:t.split(".")}function Uu(t){return Cn(t)?t.join("."):t}function M1(t,r){const u=[];let a=!1;const i=(l,h,f,m)=>{if(ht(l))if(!h[f])u.push(m!==void 0?{v:l,i:m}:l);else{const x=l[h[f]];if(!ht(x))return;if(f===h.length-1&&(et(x)||Bu(x)||S1(x)||typeof x=="bigint"))u.push(m!==void 0?{v:ki(x),i:m}:ki(x));else if(Cn(x)){a=!0;for(let b=0,y=x.length;b<y;b+=1)i(x[b],h,f+1,b)}else h.length&&i(x,h,f+1,m)}};return i(t,et(r)?r.split("."):r,0),a?u:u[0]}const O1={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},I1={isCaseSensitive:!1,ignoreDiacritics:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(t,r)=>t.score===r.score?t.idx<r.idx?-1:1:t.score<r.score?-1:1},R1={location:0,threshold:.6,distance:100},L1={useExtendedSearch:!1,useTokenSearch:!1,tokenize:void 0,tokenMatch:"any",getFn:M1,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},oe=Object.freeze({...I1,...O1,...R1,...L1});function B1(t=1,r=3){const u=new Map,a=Math.pow(10,r);return{get(i){let l=1,h=!1;for(let m=0;m<i.length;m++)i.charCodeAt(m)===32?h||(l++,h=!0):h=!1;if(u.has(l))return u.get(l);const f=Math.round(a/Math.pow(l,.5*t))/a;return u.set(l,f),f},clear(){u.clear()}}}var Ii=class{constructor({getFn:t=oe.getFn,fieldNormWeight:r=oe.fieldNormWeight}={}){this.norm=B1(r,3),this.getFn=t,this.isCreated=!1,this.docs=[],this.keys=[],this._keysMap={},this.setIndexRecords()}setSources(t=[]){this.docs=t}setIndexRecords(t=[]){this.records=t}setKeys(t=[]){this.keys=t,this._keysMap={},t.forEach((r,u)=>{this._keysMap[r.id]=u})}create(){if(this.isCreated||!this.docs.length)return;this.isCreated=!0;const t=this.docs.length;this.records=new Array(t);let r=0;if(et(this.docs[0]))for(let u=0;u<t;u++){const a=this._createStringRecord(this.docs[u],u);a&&(this.records[r++]=a)}else for(let u=0;u<t;u++)this.records[r++]=this._createObjectRecord(this.docs[u],u);this.records.length=r,this.norm.clear()}add(t,r){if(!Number.isInteger(r)||r<0)throw new Error(_i);if(et(t)){const a=this._createStringRecord(t,r);return a&&this.records.push(a),a}const u=this._createObjectRecord(t,r);return this.records.push(u),u}removeAt(t){if(!Number.isInteger(t)||t<0)throw new Error(_i);for(let r=0,u=this.records.length;r<u;r+=1)if(this.records[r].i===t){this.records.splice(r,1);break}for(let r=0,u=this.records.length;r<u;r+=1)this.records[r].i>t&&(this.records[r].i-=1)}removeAll(t){const r=new Set;for(const a of t)Number.isInteger(a)&&a>=0&&r.add(a);if(r.size===0)return;this.records=this.records.filter(a=>!r.has(a.i));const u=Array.from(r).sort((a,i)=>a-i);for(const a of this.records){let i=0,l=u.length;for(;i<l;){const h=i+l>>>1;u[h]<a.i?i=h+1:l=h}a.i-=i}}getValueForItemAtKeyId(t,r){return t[this._keysMap[r]]}size(){return this.records.length}_createStringRecord(t,r){return!ht(t)||Pu(t)?null:{v:t,i:r,n:this.norm.get(t)}}_createObjectRecord(t,r){const u={i:r,$:{}};for(let a=0,i=this.keys.length;a<i;a++){const l=this.keys[a],h=l.getFn?l.getFn(t):this.getFn(t,l.path);if(ht(h)){if(Cn(h)){const f=[];for(let m=0,x=h.length;m<x;m+=1){const b=h[m];if(ht(b)){if(et(b)){if(!Pu(b)){const y={v:b,i:m,n:this.norm.get(b)};f.push(y)}}else if(ht(b.v)){const y=et(b.v)?b.v:ki(b.v);if(!Pu(y)){const w={v:y,i:b.i,n:this.norm.get(y)};f.push(w)}}}}u.$[a]=f}else if(et(h)&&!Pu(h)){const f={v:h,n:this.norm.get(h)};u.$[a]=f}}}return u}toJSON(){return{keys:this.keys.map(({getFn:t,...r})=>r),records:this.records}}};function ff(t,r,{getFn:u=oe.getFn,fieldNormWeight:a=oe.fieldNormWeight}={}){const i=new Ii({getFn:u,fieldNormWeight:a});return i.setKeys(t.map(df)),i.setSources(r),i.create(),i}function U1(t,{getFn:r=oe.getFn,fieldNormWeight:u=oe.fieldNormWeight}={}){const{keys:a,records:i}=t,l=new Ii({getFn:r,fieldNormWeight:u});return l.setKeys(a),l.setIndexRecords(i),l}function $1(t=[],r=oe.minMatchCharLength){const u=[];let a=-1,i=-1,l=0;for(let h=t.length;l<h;l+=1){const f=t[l];f&&a===-1?a=l:!f&&a!==-1&&(i=l-1,i-a+1>=r&&u.push([a,i]),a=-1)}return t[l-1]&&l-a>=r&&u.push([a,l-1]),u}function H1(t,r,u,{location:a=oe.location,distance:i=oe.distance,threshold:l=oe.threshold,findAllMatches:h=oe.findAllMatches,minMatchCharLength:f=oe.minMatchCharLength,includeMatches:m=oe.includeMatches,ignoreLocation:x=oe.ignoreLocation}={}){if(r.length>32)throw new Error(N1(32));const b=r.length,y=t.length,w=Math.max(0,Math.min(a,y));let C=l,k=w;const F=(ee,L)=>{const ue=ee/b;if(x)return ue;const K=Math.abs(w-L);return i?ue+K/i:K?1:ue},A=f>1||m,q=A?Array(y):[];let I;for(;(I=t.indexOf(r,k))>-1;){const ee=F(0,I);if(C=Math.min(ee,C),k=I+b,A){let L=0;for(;L<b;)q[I+L]=1,L+=1}}k=-1;let T=[],R=1,j=0,U=b+y;const Y=1<<b-1;for(let ee=0;ee<b;ee+=1){let L=0,ue=U;for(;L<ue;)F(ee,w+ue)<=C?L=ue:U=ue,ue=Math.floor((U-L)/2+L);U=ue;let K=Math.max(1,w-ue+1);const ve=h?y:Math.min(w+ue,y)+b,fe=Array(ve+2);fe[ve+1]=(1<<ee)-1;for(let ie=ve;ie>=K;ie-=1){const _e=ie-1,le=u[t[_e]];if(fe[ie]=(fe[ie+1]<<1|1)&le,ee&&(fe[ie]|=(T[ie+1]|T[ie])<<1|1|T[ie+1]),fe[ie]&Y&&(R=F(ee,_e),R<=C)){if(C=R,k=_e,j=ee,k<=w)break;K=Math.max(1,2*w-k)}}if(F(ee+1,w)>C)break;T=fe}if(A&&k>=0){const ee=Math.min(y-1,k+b-1+j);for(let L=k;L<=ee;L+=1)u[t[L]]&&(q[L]=1)}const ne={isMatch:k>=0,score:Math.max(.001,R)};if(A){const ee=$1(q,f);ee.length?m&&(ne.indices=ee):ne.isMatch=!1}return ne}function q1(t){const r={};for(let u=0,a=t.length;u<a;u+=1){const i=t.charAt(u);r[i]=(r[i]||0)|1<<a-u-1}return r}function Ri(t){if(t.length<=1)return t;t.sort((u,a)=>u[0]-a[0]||u[1]-a[1]);const r=[t[0]];for(let u=1,a=t.length;u<a;u+=1){const i=r[r.length-1],l=t[u];l[0]<=i[1]+1?i[1]=Math.max(i[1],l[1]):r.push(l)}return r}const hf={ł:"l",Ł:"L",đ:"d",Đ:"D",ø:"o",Ø:"O",ħ:"h",Ħ:"H",ŧ:"t",Ŧ:"T",ı:"i",ß:"ss"},V1=new RegExp("["+Object.keys(hf).join("")+"]","g"),ds=typeof String.prototype.normalize=="function"?t=>t.normalize("NFD").replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,"").replace(V1,r=>hf[r]):t=>t;var Li=class{constructor(t,{location:r=oe.location,threshold:u=oe.threshold,distance:a=oe.distance,includeMatches:i=oe.includeMatches,findAllMatches:l=oe.findAllMatches,minMatchCharLength:h=oe.minMatchCharLength,isCaseSensitive:f=oe.isCaseSensitive,ignoreDiacritics:m=oe.ignoreDiacritics,ignoreLocation:x=oe.ignoreLocation}={}){if(this.options={location:r,threshold:u,distance:a,includeMatches:i,findAllMatches:l,minMatchCharLength:h,isCaseSensitive:f,ignoreDiacritics:m,ignoreLocation:x},t=f?t:t.toLowerCase(),t=m?ds(t):t,this.pattern=t,this.chunks=[],!this.pattern.length)return;const b=(w,C)=>{this.chunks.push({pattern:w,alphabet:q1(w),startIndex:C})},y=this.pattern.length;if(y>32){let w=0;const C=y%32,k=y-C;for(;w<k;)b(this.pattern.substr(w,32),w),w+=32;if(C){const F=y-32;b(this.pattern.substr(F),F)}}else b(this.pattern,0)}searchIn(t){const{isCaseSensitive:r,ignoreDiacritics:u,includeMatches:a}=this.options;if(t=r?t:t.toLowerCase(),t=u?ds(t):t,this.pattern===t){const k={isMatch:!0,score:0};return a&&(k.indices=[[0,t.length-1]]),k}const{location:i,distance:l,threshold:h,findAllMatches:f,minMatchCharLength:m,ignoreLocation:x}=this.options,b=[];let y=0,w=!1;this.chunks.forEach(({pattern:k,alphabet:F,startIndex:A})=>{const{isMatch:q,score:I,indices:T}=H1(t,k,F,{location:i+A,distance:l,threshold:h,findAllMatches:f,minMatchCharLength:m,includeMatches:a,ignoreLocation:x});q&&(w=!0),y+=I,q&&T&&b.push(...T)});const C={isMatch:w,score:w?y/this.chunks.length:1};return w&&a&&(C.indices=Ri(b)),C}};const W1=new Set(["fuzzy","include"]);function G1(t){return t.startsWith("inverse")}const Ci=[{type:"exact",multiRegex:/^="(.*)"$/,singleRegex:/^=(.*)$/,create:t=>({type:"exact",search(r){const u=r===t;return{isMatch:u,score:u?0:1,indices:[0,t.length-1]}}})},{type:"include",multiRegex:/^'"(.*)"$/,singleRegex:/^'(.*)$/,create:t=>({type:"include",search(r){let u=0,a;const i=[],l=t.length;for(;(a=r.indexOf(t,u))>-1;)u=a+l,i.push([a,u-1]);const h=!!i.length;return{isMatch:h,score:h?0:1,indices:i}}})},{type:"prefix-exact",multiRegex:/^\^"(.*)"$/,singleRegex:/^\^(.*)$/,create:t=>({type:"prefix-exact",search(r){const u=r.startsWith(t);return{isMatch:u,score:u?0:1,indices:[0,t.length-1]}}})},{type:"inverse-prefix-exact",multiRegex:/^!\^"(.*)"$/,singleRegex:/^!\^(.*)$/,create:t=>({type:"inverse-prefix-exact",search(r){const u=!r.startsWith(t);return{isMatch:u,score:u?0:1,indices:[0,r.length-1]}}})},{type:"inverse-suffix-exact",multiRegex:/^!"(.*)"\$$/,singleRegex:/^!(.*)\$$/,create:t=>({type:"inverse-suffix-exact",search(r){const u=!r.endsWith(t);return{isMatch:u,score:u?0:1,indices:[0,r.length-1]}}})},{type:"suffix-exact",multiRegex:/^"(.*)"\$$/,singleRegex:/^(.*)\$$/,create:t=>({type:"suffix-exact",search(r){const u=r.endsWith(t);return{isMatch:u,score:u?0:1,indices:[r.length-t.length,r.length-1]}}})},{type:"inverse-exact",multiRegex:/^!"(.*)"$/,singleRegex:/^!(.*)$/,create:t=>({type:"inverse-exact",search(r){const u=r.indexOf(t)===-1;return{isMatch:u,score:u?0:1,indices:[0,r.length-1]}}})},{type:"fuzzy",multiRegex:/^"(.*)"$/,singleRegex:/^(.*)$/,create:(t,r={})=>{const u=new Li(t,{location:r.location??oe.location,threshold:r.threshold??oe.threshold,distance:r.distance??oe.distance,includeMatches:r.includeMatches??oe.includeMatches,findAllMatches:r.findAllMatches??oe.findAllMatches,minMatchCharLength:r.minMatchCharLength??oe.minMatchCharLength,isCaseSensitive:r.isCaseSensitive??oe.isCaseSensitive,ignoreDiacritics:r.ignoreDiacritics??oe.ignoreDiacritics,ignoreLocation:r.ignoreLocation??oe.ignoreLocation});return{type:"fuzzy",search(a){return u.searchIn(a)}}}}],m0=Ci.length,K1="\0",Q1="|";function Z1(t){const r=[],u=t.length;let a=0;for(;a<u;){for(;a<u&&t[a]===" ";)a++;if(a>=u)break;let i=a;for(;i<u&&t[i]!==" "&&t[i]!=='"';)i++;if(i<u&&t[i]==='"'){for(i++;i<u;){if(t[i]==='"'){const l=i+1;if(l>=u||t[l]===" "){i++;break}if(t[l]==="$"&&(l+1>=u||t[l+1]===" ")){i+=2;break}}i++}r.push(t.substring(a,i)),a=i}else{for(;i<u&&t[i]!==" ";)i++;r.push(t.substring(a,i)),a=i}}return r}function g0(t,r){const u=t.match(r);return u?u[1]:null}function Y1(t,r={}){return t.replace(/\\\|/g,K1).split(Q1).map(u=>{const a=Z1(u.replace(/\u0000/g,"|").trim()).filter(l=>l&&!!l.trim()),i=[];for(let l=0,h=a.length;l<h;l+=1){const f=a[l];let m=!1,x=-1;for(;!m&&++x<m0;){const b=Ci[x],y=g0(f,b.multiRegex);y&&(i.push(b.create(y,r)),m=!0)}if(!m)for(x=-1;++x<m0;){const b=Ci[x],y=g0(f,b.singleRegex);if(y){i.push(b.create(y,r));break}}}return i})}var X1=class{constructor(t,{isCaseSensitive:r=oe.isCaseSensitive,ignoreDiacritics:u=oe.ignoreDiacritics,includeMatches:a=oe.includeMatches,minMatchCharLength:i=oe.minMatchCharLength,ignoreLocation:l=oe.ignoreLocation,findAllMatches:h=oe.findAllMatches,location:f=oe.location,threshold:m=oe.threshold,distance:x=oe.distance}={}){this.query=null,this.options={isCaseSensitive:r,ignoreDiacritics:u,includeMatches:a,minMatchCharLength:i,findAllMatches:h,ignoreLocation:l,location:f,threshold:m,distance:x},t=r?t:t.toLowerCase(),t=u?ds(t):t,this.pattern=t,this.query=Y1(this.pattern,this.options)}static condition(t,r){return r.useExtendedSearch}searchIn(t){const r=this.query;if(!r)return{isMatch:!1,score:1};const{includeMatches:u,isCaseSensitive:a,ignoreDiacritics:i}=this.options;t=a?t:t.toLowerCase(),t=i?ds(t):t;let l=0;const h=[];let f=0,m=!1;for(let x=0,b=r.length;x<b;x+=1){const y=r[x];h.length=0,l=0,m=!1;for(let w=0,C=y.length;w<C;w+=1){const k=y[w],{isMatch:F,indices:A,score:q}=k.search(t);if(F)l+=1,f+=q,G1(k.type)&&(m=!0),u&&(W1.has(k.type)?h.push(...A):h.push(A));else{f=0,l=0,h.length=0,m=!1;break}}if(l){const w={isMatch:!0,score:f/l};return m&&(w.hasInverse=!0),u&&(w.indices=Ri(h)),w}}return{isMatch:!1,score:1}}};const Ei=[];function Bi(...t){Ei.push(...t)}function Hu(t,r){for(let u=0,a=Ei.length;u<a;u+=1){const i=Ei[u];if(i.condition(t,r))return new i(t,r)}return new Li(t,r)}const qu={AND:"$and",OR:"$or"},Si={PATH:"$path",PATTERN:"$val"},zi=t=>!!(t[qu.AND]||t[qu.OR]),J1=t=>!!t[Si.PATH],eg=t=>!Cn(t)&&lf(t)&&!zi(t),x0=t=>({[qu.AND]:Object.keys(t).map(r=>({[r]:t[r]}))});function pf(t,r,{auto:u=!0}={}){const a=i=>{if(et(i)){const m={keyId:null,pattern:i};return u&&(m.searcher=Hu(i,r)),m}const l=Object.keys(i),h=J1(i);if(!h&&l.length>1&&!zi(i))return a(x0(i));if(eg(i)){const m=h?i[Si.PATH]:l[0],x=h?i[Si.PATTERN]:i[m];if(!et(x))throw new Error(D1(m));const b={keyId:Uu(m),pattern:x};return u&&(b.searcher=Hu(x,r)),b}const f={children:[],operator:l[0]};return l.forEach(m=>{const x=i[m];Cn(x)&&x.forEach(b=>{f.children.push(a(b))})}),f};return zi(t)||(t=x0(t)),a(t)}function Ai(t,{ignoreFieldNorm:r=oe.ignoreFieldNorm}){let u=1;return t.forEach(({key:a,norm:i,score:l})=>{const h=a?a.weight:null;u*=Math.pow(l===0&&h?Number.EPSILON:l,(h||1)*(r?1:i))}),u}function tg(t,{ignoreFieldNorm:r=oe.ignoreFieldNorm}){t.forEach(u=>{u.score=Ai(u.matches,{ignoreFieldNorm:r})})}var ng=class{constructor(t){this.limit=t,this.heap=[]}get size(){return this.heap.length}shouldInsert(t){return this.size<this.limit||t<this.heap[0].score}insert(t){this.size<this.limit?(this.heap.push(t),this._bubbleUp(this.size-1)):t.score<this.heap[0].score&&(this.heap[0]=t,this._sinkDown(0))}extractSorted(t){return this.heap.sort(t)}_bubbleUp(t){const r=this.heap;for(;t>0;){const u=t-1>>1;if(r[t].score<=r[u].score)break;const a=r[t];r[t]=r[u],r[u]=a,t=u}}_sinkDown(t){const r=this.heap,u=r.length;let a=t;do{t=a;const i=2*t+1,l=2*t+2;if(i<u&&r[i].score>r[a].score&&(a=i),l<u&&r[l].score>r[a].score&&(a=l),a!==t){const h=r[t];r[t]=r[a],r[a]=h}}while(a!==t)}};function rg(t){const r=[];return t.matches.forEach(u=>{if(!ht(u.indices)||!u.indices.length)return;const a={indices:u.indices,value:u.value};u.key&&(a.key=u.key.id),u.idx>-1&&(a.refIndex=u.idx),r.push(a)}),r}function sg(t,r,{includeMatches:u=oe.includeMatches,includeScore:a=oe.includeScore}={}){return t.map(i=>{const{idx:l}=i,h={item:r[l],refIndex:l};return u&&(h.matches=rg(i)),a&&(h.score=i.score),h})}const ug=/[\p{L}\p{M}\p{N}_]+/gu,b0=new WeakSet;function og(t){b0.has(t)||(b0.add(t),console.warn(`[Fuse] tokenize regex ${t} lacks the global flag; only the first match per text will be returned. Add the 'g' flag.`))}function ag(t){if(typeof t=="function"){let r=!1;return u=>{const a=t(u);if(!r&&(r=!0,!Array.isArray(a)||a.some(i=>typeof i!="string")))throw new Error(`[Fuse] tokenize function must return string[]; received ${Array.isArray(a)?"array containing non-strings":typeof a}.`);return a}}return t instanceof RegExp?(t.global||og(t),r=>r.match(t)||[]):r=>r.match(ug)||[]}function Di({isCaseSensitive:t=!1,ignoreDiacritics:r=!1,tokenize:u}={}){const a=ag(u);return{tokenize(i){return t||(i=i.toLowerCase()),r&&(i=ds(i)),a(i)}}}var ig=class{static condition(t,r){return r.useTokenSearch}constructor(t,r){this.options=r,this.analyzer=Di({isCaseSensitive:r.isCaseSensitive,ignoreDiacritics:r.ignoreDiacritics,tokenize:r.tokenize});const u=this.analyzer.tokenize(t),{df:a,fieldCount:i}=r._invertedIndex;this.termSearchers=[],this.idfWeights=[];for(const l of u){this.termSearchers.push(new Li(l,{location:r.location,threshold:r.threshold,distance:r.distance,includeMatches:r.includeMatches,findAllMatches:r.findAllMatches,minMatchCharLength:r.minMatchCharLength,isCaseSensitive:r.isCaseSensitive,ignoreDiacritics:r.ignoreDiacritics,ignoreLocation:!0}));const h=a.get(l)||0,f=Math.log(1+(i-h+.5)/(h+.5));this.idfWeights.push(f)}this.combineAll=r.tokenMatch==="all",this.numTerms=this.termSearchers.length,this.useMask=this.numTerms<=31}searchIn(t){if(!this.termSearchers.length)return{isMatch:!1,score:1};const r=[];let u=0,a=0,i=0,l=0;const h=this.combineAll&&!this.useMask?new Set:null;for(let x=0;x<this.termSearchers.length;x++){const b=this.termSearchers[x].searchIn(t),y=this.idfWeights[x];a+=y,b.isMatch&&(i++,u+=y*(1-b.score),b.indices&&r.push(...b.indices),this.combineAll&&(this.useMask?l|=1<<x:h.add(x)))}if(i===0)return{isMatch:!1,score:1};const f=a>0?1-u/a:0,m={isMatch:!0,score:Math.max(.001,f)};return this.options.includeMatches&&r.length&&(m.indices=Ri(r)),this.combineAll&&(this.useMask?m.matchedMask=l:m.matchedTerms=h,m.termCount=this.numTerms),m}};function ri(t,r,u,a){const i=a.tokenize(r);if(!i.length)return;t.fieldCount++,t.docFieldCount.set(u,(t.docFieldCount.get(u)||0)+1);const l=new Set(i);let h=t.docTermFieldHits.get(u);h||(h=new Map,t.docTermFieldHits.set(u,h));for(const f of l)h.set(f,(h.get(f)||0)+1),t.df.set(f,(t.df.get(f)||0)+1)}function mf(t,r,u,a){const{i,v:l,$:h}=r;if(l!==void 0){ri(t,l,i,a);return}if(h)for(let f=0;f<u;f++){const m=h[f];if(m)if(Array.isArray(m))for(const x of m)ri(t,x.v,i,a);else ri(t,m.v,i,a)}}function lg(t,r,u){const a={fieldCount:0,df:new Map,docFieldCount:new Map,docTermFieldHits:new Map};for(const i of t)mf(a,i,r,u);return a}function cg(t,r,u,a){mf(t,r,u,a)}function dg(t,r){const u=t.docFieldCount.get(r);if(u===void 0)return;t.fieldCount-=u,t.docFieldCount.delete(r);const a=t.docTermFieldHits.get(r);if(a){for(const[i,l]of a){const h=(t.df.get(i)||0)-l;h<=0?t.df.delete(i):t.df.set(i,h)}t.docTermFieldHits.delete(r)}}function y0(t,r){if(r.length===0)return;const u=Array.from(new Set(r)).sort((f,m)=>f-m);for(const f of u)dg(t,f);const a=f=>{let m=0,x=u.length;for(;m<x;){const b=m+x>>>1;u[b]<f?m=b+1:x=b}return f-m},i=u[0],l=new Map;for(const[f,m]of t.docFieldCount)l.set(f>i?a(f):f,m);t.docFieldCount=l;const h=new Map;for(const[f,m]of t.docTermFieldHits)h.set(f>i?a(f):f,m);t.docTermFieldHits=h}var En=class{constructor(t,r,u){this.options={...oe,...r},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new P1(this.options.keys),this._docs=t,this._myIndex=null,this._invertedIndex=null,this.setCollection(t,u),this._lastQuery=null,this._lastSearcher=null}_getSearcher(t){if(this._lastQuery===t)return this._lastSearcher;const r=Hu(t,this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options);return this._lastQuery=t,this._lastSearcher=r,r}setCollection(t,r){if(this._docs=t,r&&!(r instanceof Ii))throw new Error(A1);if(this._myIndex=r||ff(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){const u=Di({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=lg(this._myIndex.records,this._myIndex.keys.length,u)}this._invalidateSearcherCache()}add(t){if(!ht(t))return;this._docs.push(t);const r=this._myIndex.add(t,this._docs.length-1);if(this._invertedIndex&&r){const u=Di({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});cg(this._invertedIndex,r,this._myIndex.keys.length,u)}this._invalidateSearcherCache()}remove(t=()=>!1){const r=[],u=[];for(let a=0,i=this._docs.length;a<i;a+=1)t(this._docs[a],a)&&(r.push(this._docs[a]),u.push(a));if(u.length){this._invertedIndex&&y0(this._invertedIndex,u);const a=new Set(u);this._docs=this._docs.filter((i,l)=>!a.has(l)),this._myIndex.removeAll(u),this._invalidateSearcherCache()}return r}removeAt(t){if(!Number.isInteger(t)||t<0||t>=this._docs.length)throw new Error(_i);this._invertedIndex&&y0(this._invertedIndex,[t]);const r=this._docs.splice(t,1)[0];return this._myIndex.removeAt(t),this._invalidateSearcherCache(),r}_invalidateSearcherCache(){this._lastQuery=null,this._lastSearcher=null}getIndex(){return this._myIndex}search(t,r){const{limit:u=-1}=r||{},{includeMatches:a,includeScore:i,shouldSort:l,sortFn:h,ignoreFieldNorm:f}=this.options;if(et(t)&&!t.trim()){let b=this._docs.map((y,w)=>({item:y,refIndex:w}));return Bu(u)&&u>-1&&(b=b.slice(0,u)),b}const m=Bu(u)&&u>0&&et(t);let x;if(m){const b=new ng(u);et(this._docs[0])?this._searchStringList(t,{heap:b,ignoreFieldNorm:f}):this._searchObjectList(t,{heap:b,ignoreFieldNorm:f}),x=b.extractSorted(h)}else x=et(t)?et(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t),tg(x,{ignoreFieldNorm:f}),l&&x.sort(h),Bu(u)&&u>-1&&(x=x.slice(0,u));return sg(x,this._docs,{includeMatches:a,includeScore:i})}_searchStringList(t,{heap:r,ignoreFieldNorm:u}={}){const a=this._getSearcher(t),i=this.options.useTokenSearch&&this.options.tokenMatch==="all",{records:l}=this._myIndex,h=r?null:[];return l.forEach(({v:f,i:m,n:x})=>{if(!ht(f))return;const b=a.searchIn(f);if(b.isMatch){const y={score:b.score,value:f,norm:x,indices:b.indices};i&&(y.matchedMask=b.matchedMask,y.matchedTerms=b.matchedTerms,y.termCount=b.termCount);const w=[y];if(!i||this._coversAllTokens(w)){const C={item:f,idx:m,matches:w};r?(C.score=Ai(C.matches,{ignoreFieldNorm:u}),r.shouldInsert(C.score)&&r.insert(C)):h.push(C)}}}),h}_searchLogical(t){const r=pf(t,this.options),u=(h,f,m)=>{if(!("children"in h)){const{keyId:w,searcher:C}=h;let k;return w===null?(k=[],this._myIndex.keys.forEach((F,A)=>{k.push(...this._findMatches({key:F,value:f[A],searcher:C}))})):k=this._findMatches({key:this._keyStore.get(w),value:this._myIndex.getValueForItemAtKeyId(f,w),searcher:C}),k&&k.length?[{idx:m,item:f,matches:k}]:[]}const{children:x,operator:b}=h,y=[];for(let w=0,C=x.length;w<C;w+=1){const k=x[w],F=u(k,f,m);if(F.length)y.push(...F);else if(b===qu.AND)return[]}return y},a=this._myIndex.records,i=new Map,l=[];return a.forEach(({$:h,i:f})=>{if(ht(h)){const m=u(r,h,f);m.length&&(i.has(f)||(i.set(f,{idx:f,item:h,matches:[]}),l.push(i.get(f))),m.forEach(({matches:x})=>{i.get(f).matches.push(...x)}))}}),l}_searchObjectList(t,{heap:r,ignoreFieldNorm:u}={}){const a=this._getSearcher(t),i=this.options.useTokenSearch&&this.options.tokenMatch==="all",{keys:l,records:h}=this._myIndex,f=r?null:[];return h.forEach(({$:m,i:x})=>{if(!ht(m))return;const b=[];let y=!1,w=!1;if(l.forEach((C,k)=>{const F=this._findMatches({key:C,value:m[k],searcher:a});F.length?(b.push(...F),F[0].hasInverse&&(w=!0)):y=!0}),!(w&&y)&&b.length&&(!i||this._coversAllTokens(b))){const C={idx:x,item:m,matches:b};r?(C.score=Ai(C.matches,{ignoreFieldNorm:u}),r.shouldInsert(C.score)&&r.insert(C)):f.push(C)}}),f}_findMatches({key:t,value:r,searcher:u}){if(!ht(r))return[];const a=[];if(Cn(r))r.forEach(({v:i,i:l,n:h})=>{if(!ht(i))return;const f=u.searchIn(i);if(f.isMatch){const m={score:f.score,key:t,value:i,idx:l,norm:h,indices:f.indices,hasInverse:f.hasInverse};f.termCount!==void 0&&(m.matchedMask=f.matchedMask,m.matchedTerms=f.matchedTerms,m.termCount=f.termCount),a.push(m)}});else{const{v:i,n:l}=r,h=u.searchIn(i);if(h.isMatch){const f={score:h.score,key:t,value:i,norm:l,indices:h.indices,hasInverse:h.hasInverse};h.termCount!==void 0&&(f.matchedMask=h.matchedMask,f.matchedTerms=h.matchedTerms,f.termCount=h.termCount),a.push(f)}}return a}_coversAllTokens(t){const r=t.length?t[0].termCount:void 0;if(r===void 0)return!0;if(r<=31){let a=0;for(let i=0;i<t.length;i++)a|=t[i].matchedMask||0;return a===2**r-1}const u=new Set;for(let a=0;a<t.length;a++){const i=t[a].matchedTerms;if(i)for(const l of i)u.add(l)}return u.size===r}};En.version="7.4.2";En.createIndex=ff;En.parseIndex=U1;En.config=oe;En.match=function(t,r,u){if(u&&u.useTokenSearch)throw new Error(T1);return Hu(t,{...oe,...u}).searchIn(r)};En.parseQuery=pf;Bi(X1);Bi(ig);En.use=function(...t){t.forEach(r=>Bi(r))};var fg=En;function wt({label:t,icon:r,className:u,onAction:a}){const[i,l]=G.useState("idle"),[h,f]=G.useState(!1);async function m(){f(!0);try{const x=await a();l(x.ok?"ok":"err")}catch{l("err")}finally{f(!1),setTimeout(()=>l("idle"),1400)}}return p.jsxs("button",{type:"button",onClick:m,disabled:h,className:Se("inline-flex items-center justify-center gap-1.5 rounded-md border px-2.5 py-1 text-caption transition-colors disabled:opacity-60",i==="ok"?"border-primary bg-primary-soft text-primary":i==="err"?"border-destructive text-destructive":"border-border bg-card text-muted-foreground hover:bg-muted hover:text-foreground",u),children:[i==="ok"?"✓ ":i==="err"?"✗ ":"",i==="idle"&&r,t]})}const hg="skillhelper-translate-cache",pr="raw",pg=1;let Mu=null;function gf(){return Mu||(Mu=new Promise(t=>{try{if(typeof indexedDB>"u")return t(null);const r=indexedDB.open(hg,pg);r.onupgradeneeded=()=>{r.result.objectStoreNames.contains(pr)||r.result.createObjectStore(pr)},r.onsuccess=()=>t(r.result),r.onerror=()=>t(null)}catch{t(null)}}),Mu)}async function mg(t){try{const r=await gf();return r?await new Promise(u=>{const i=r.transaction(pr,"readonly").objectStore(pr).get(t);i.onsuccess=()=>u(i.result),i.onerror=()=>u(void 0)}):void 0}catch{return}}async function gg(t,r){try{const u=await gf();if(!u)return;await new Promise(a=>{const i=u.transaction(pr,"readwrite");i.objectStore(pr).put(r,t),i.oncomplete=()=>a(void 0),i.onerror=()=>a(void 0)})}catch{}}const Zu="/api";async function Ui(t){const r=await fetch(`${Zu}${t}`);if(!r.ok)throw new Error(`GET ${t} 失败: ${r.status}`);return r.json()}async function xg(t,r){const u=await fetch(`${Zu}${t}`,{method:"POST",headers:{"Content-Type":"application/json"},body:void 0});if(!u.ok)throw new Error(`POST ${t} 失败: ${u.status}`);return u.json()}async function $i(t,r){return(await fetch(`${Zu}${t}`,{method:"POST",headers:{"Content-Type":"application/json"},body:r?JSON.stringify(r):void 0})).json()}function Ni(){return Ui("/skills")}function Hi(t){return Ui(`/skills/${encodeURIComponent(t)}`)}function v0(){return Ui("/stats")}function bg(){return xg("/reload")}function vn(t,r="path"){return $i("/copy",{id:t,what:r})}function Vu(t,r="default"){return $i("/open",{id:t,with:r})}const si=new Map;async function yg(t,r){var y,w,C,k;const u=si.get(t);if(u)return(y=r==null?void 0:r.onProgress)==null||y.call(r,{done:u.segments.length,total:u.segments.length}),u;const a=await mg(t);if(a)return si.set(t,a),(w=r==null?void 0:r.onProgress)==null||w.call(r,{done:a.segments.length,total:a.segments.length}),a;if(typeof navigator<"u"&&navigator.onLine===!1)throw new Error("offline");const i=await fetch(`${Zu}/translate-raw`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:t}),signal:r==null?void 0:r.signal});if(!i.ok)throw new Error(`translate-raw 失败: ${i.status}`);if(!i.body)throw new Error("translate-raw 无响应体");const l=i.body.getReader(),h=new TextDecoder;let f="",m=[],x=0;for(;;){const{done:F,value:A}=await l.read();if(F)break;f+=h.decode(A,{stream:!0});const q=f.split(`
|
|
241
|
+
`);f=q.pop()||"";for(const I of q){if(!I.trim())continue;let T;try{T=JSON.parse(I)}catch{continue}if(T.type==="start")x=T.total,(C=r==null?void 0:r.onProgress)==null||C.call(r,{done:0,total:x});else if(T.type==="segment")m[T.index]=T.segment,(k=r==null?void 0:r.onProgress)==null||k.call(r,{done:T.done,total:T.total});else if(T.type==="done")m=T.segments;else if(T.type==="error")throw new Error(T.error)}}const b={ok:!0,segments:m};return si.set(t,b),gg(t,b),b}function w0(t,r="zh-CN"){return $i("/translate",{text:t,targetLang:r})}const k0={};function vg(t){let r=k0[t];if(r)return r;r=k0[t]=[];for(let u=0;u<128;u++){const a=String.fromCharCode(u);r.push(a)}for(let u=0;u<t.length;u++){const a=t.charCodeAt(u);r[a]="%"+("0"+a.toString(16).toUpperCase()).slice(-2)}return r}function mr(t,r){typeof r!="string"&&(r=mr.defaultChars);const u=vg(r);return t.replace(/(%[a-f0-9]{2})+/gi,function(a){let i="";for(let l=0,h=a.length;l<h;l+=3){const f=parseInt(a.slice(l+1,l+3),16);if(f<128){i+=u[f];continue}if((f&224)===192&&l+3<h){const m=parseInt(a.slice(l+4,l+6),16);if((m&192)===128){const x=f<<6&1984|m&63;x<128?i+="��":i+=String.fromCharCode(x),l+=3;continue}}if((f&240)===224&&l+6<h){const m=parseInt(a.slice(l+4,l+6),16),x=parseInt(a.slice(l+7,l+9),16);if((m&192)===128&&(x&192)===128){const b=f<<12&61440|m<<6&4032|x&63;b<2048||b>=55296&&b<=57343?i+="���":i+=String.fromCharCode(b),l+=6;continue}}if((f&248)===240&&l+9<h){const m=parseInt(a.slice(l+4,l+6),16),x=parseInt(a.slice(l+7,l+9),16),b=parseInt(a.slice(l+10,l+12),16);if((m&192)===128&&(x&192)===128&&(b&192)===128){let y=f<<18&1835008|m<<12&258048|x<<6&4032|b&63;y<65536||y>1114111?i+="����":(y-=65536,i+=String.fromCharCode(55296+(y>>10),56320+(y&1023))),l+=9;continue}}i+="�"}return i})}mr.defaultChars=";/?:@&=+$,#";mr.componentChars="";const _0={};function wg(t){let r=_0[t];if(r)return r;r=_0[t]=[];for(let u=0;u<128;u++){const a=String.fromCharCode(u);/^[0-9a-z]$/i.test(a)?r.push(a):r.push("%"+("0"+u.toString(16).toUpperCase()).slice(-2))}for(let u=0;u<t.length;u++)r[t.charCodeAt(u)]=t[u];return r}function vs(t,r,u){typeof r!="string"&&(u=r,r=vs.defaultChars),typeof u>"u"&&(u=!0);const a=wg(r);let i="";for(let l=0,h=t.length;l<h;l++){const f=t.charCodeAt(l);if(u&&f===37&&l+2<h&&/^[0-9a-f]{2}$/i.test(t.slice(l+1,l+3))){i+=t.slice(l,l+3),l+=2;continue}if(f<128){i+=a[f];continue}if(f>=55296&&f<=57343){if(f>=55296&&f<=56319&&l+1<h){const m=t.charCodeAt(l+1);if(m>=56320&&m<=57343){i+=encodeURIComponent(t[l]+t[l+1]),l++;continue}}i+="%EF%BF%BD";continue}i+=encodeURIComponent(t[l])}return i}vs.defaultChars=";/?:@&=+$,-_.!~*'()#";vs.componentChars="-_.!~*'()";function qi(t){let r="";return r+=t.protocol||"",r+=t.slashes?"//":"",r+=t.auth?t.auth+"@":"",t.hostname&&t.hostname.indexOf(":")!==-1?r+="["+t.hostname+"]":r+=t.hostname||"",r+=t.port?":"+t.port:"",r+=t.pathname||"",r+=t.search||"",r+=t.hash||"",r}function Wu(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}const kg=/^([a-z0-9.+-]+:)/i,_g=/:[0-9]*$/,Cg=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,Eg=["<",">",'"',"`"," ","\r",`
|
|
242
|
+
`," "],Sg=["{","}","|","\\","^","`"].concat(Eg),zg=["'"].concat(Sg),C0=["%","/","?",";","#"].concat(zg),E0=["/","?","#"],Ag=255,S0=/^[+a-z0-9A-Z_-]{0,63}$/,Dg=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,z0={javascript:!0,"javascript:":!0},A0={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function Vi(t,r){if(t&&t instanceof Wu)return t;const u=new Wu;return u.parse(t,r),u}Wu.prototype.parse=function(t,r){let u,a,i,l=t;if(l=l.trim(),!r&&t.split("#").length===1){const x=Cg.exec(l);if(x)return this.pathname=x[1],x[2]&&(this.search=x[2]),this}let h=kg.exec(l);if(h&&(h=h[0],u=h.toLowerCase(),this.protocol=h,l=l.substr(h.length)),(r||h||l.match(/^\/\/[^@\/]+@[^@\/]+/))&&(i=l.substr(0,2)==="//",i&&!(h&&z0[h])&&(l=l.substr(2),this.slashes=!0)),!z0[h]&&(i||h&&!A0[h])){let x=-1;for(let k=0;k<E0.length;k++)a=l.indexOf(E0[k]),a!==-1&&(x===-1||a<x)&&(x=a);let b,y;x===-1?y=l.lastIndexOf("@"):y=l.lastIndexOf("@",x),y!==-1&&(b=l.slice(0,y),l=l.slice(y+1),this.auth=b),x=-1;for(let k=0;k<C0.length;k++)a=l.indexOf(C0[k]),a!==-1&&(x===-1||a<x)&&(x=a);x===-1&&(x=l.length),l[x-1]===":"&&x--;const w=l.slice(0,x);l=l.slice(x),this.parseHost(w),this.hostname=this.hostname||"";const C=this.hostname[0]==="["&&this.hostname[this.hostname.length-1]==="]";if(!C){const k=this.hostname.split(/\./);for(let F=0,A=k.length;F<A;F++){const q=k[F];if(q&&!q.match(S0)){let I="";for(let T=0,R=q.length;T<R;T++)q.charCodeAt(T)>127?I+="x":I+=q[T];if(!I.match(S0)){const T=k.slice(0,F),R=k.slice(F+1),j=q.match(Dg);j&&(T.push(j[1]),R.unshift(j[2])),R.length&&(l=R.join(".")+l),this.hostname=T.join(".");break}}}}this.hostname.length>Ag&&(this.hostname=""),C&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}const f=l.indexOf("#");f!==-1&&(this.hash=l.substr(f),l=l.slice(0,f));const m=l.indexOf("?");return m!==-1&&(this.search=l.substr(m),l=l.slice(0,m)),l&&(this.pathname=l),A0[u]&&this.hostname&&!this.pathname&&(this.pathname=""),this};Wu.prototype.parseHost=function(t){let r=_g.exec(t);r&&(r=r[0],r!==":"&&(this.port=r.substr(1)),t=t.substr(0,t.length-r.length)),t&&(this.hostname=t)};const Ng=Object.freeze(Object.defineProperty({__proto__:null,decode:mr,encode:vs,format:qi,parse:Vi},Symbol.toStringTag,{value:"Module"})),xf=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,bf=/[\0-\x1F\x7F-\x9F]/,jg=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/,Wi=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/,yf=/[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/,vf=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,Fg=Object.freeze(Object.defineProperty({__proto__:null,Any:xf,Cc:bf,Cf:jg,P:Wi,S:yf,Z:vf},Symbol.toStringTag,{value:"Module"})),Tg=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏઑඡ༉༦ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲϏϢϸontourIntegraìȹoɴ\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲy;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱còJTabcdfgorstרׯؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ߂ߐĀiyޱrc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣসে্ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४ĀnrࢃgleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpwਖਛgȀLRlr৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼અઋp;椅y;䐜Ādl੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑඞcy;䐊cute;䅃ƀaeyહાron;䅇dil;䅅;䐝ƀgswે૰ativeƀMTV૨ediumSpace;怋hiĀcn૦ëeryThiîtedĀGLଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷreak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪௫ఄ಄ದൡඅ櫬Āoungruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater;EFGLSTஶஷ扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨setĀ;Eೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂෛ෧ขภยา฿ไlig;䅒cute耻Ó䃓Āiyීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲcr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬืde耻Õ䃕es;樷ml耻Ö䃖erĀBP๋Āar๐๓r;怾acĀek๚;揞et;掴arenthesis;揜ҀacfhilorsງຊຏຒດຝະrtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ檻cedesȀ;EST່້扺qual;檯lantEqual;扼ilde;找me;怳Ādpuct;戏ortionĀ;aȥl;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL憒ar;懥eftArrow;懄eiling;按oǵ\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄቕቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHcቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗ĀeiቻDzኀ\0ኇefore;戴a;䎘ĀcnኘkSpace;쀀 Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtèa;䎖r;愨pf;愤cr;쀀𝒵ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒;Eaeiopᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;eᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;eᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰᝃᝈ០៦ᠹᡐᜍ᥈ᥰot;櫭ĀcrᛶkȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;tbrk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯᝳ;䎲;愶een;扬r;쀀𝔟gcostuvwឍឝឳេ៕៛ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀakoᠦᠵĀcn៲ᠣkƀlst֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ;敛;敘;攘;攔;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģbar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;elƀ;bhᥨᥩᥫ䁜;槅sub;柈ŬᥴlĀ;e怢t»pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭒\0᯽\0ᰌƀcprᦲute;䄇̀;abcdsᦿᧀᧄ᧕᧙戩nd;橄rcup;橉Āau᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r;Ecefms᩠ᩢᩫ᪤᪪旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ\0\0aĀ;t䀬;䁀ƀ;fl戁îᅠeĀmxent»eóɍǧ\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯delprvw᭠᭬᭷ᮂᮬᯔarrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;pᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰻᰿ᱝᱩᱵᲞᲬᲷᴍᵻᶑᶫᶻ᷆᷍ròar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂᳖᳜᳠mƀ;oș᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄĀDoḆᴴoôĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»ṺƀaeiἒἚls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧\0耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₥₰₴⃰℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽ƀ;qsؾٌlanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqrⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0proør;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼ròòΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonóquigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roøurĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨íistĀ;sடr;쀀𝔫ȀEest⩦⩹⩼ƀ;qs⩭ƀ;qs⩴lanôií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast⭕⭚⭟lleìl;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖchimpqu⮽⯍⯙⬄⯤⯯Ȁ;cerല⯆ഷ⯉uå;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭ååഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñĀ;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;cⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācrir;榿;쀀𝔬ͯ\0\0\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕⶥⶨrò᪀Āirⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔǒr;榷rp;榹;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ\0\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ脀¶;l䂶leìЃɩ\0\0m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳ᤈ⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t⾴ïrel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⋢⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔ABHabcdefhilmnoprstuxけさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstwガクシスゼゾダッデナp;極Ā;fゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ìâヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘rrowĀ;tㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowóarpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓ròaòՑ;怏oustĀ;a㈞掱che»mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì耻䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;qኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫwar;椪lig耻ß䃟㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rëƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproøim»ኬsðኞĀas㚺㚮ðrn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈadempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xôheadĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roðtré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜtré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map(t=>t.charCodeAt(0))),Pg=new Uint16Array("Ȁaglq \x1Bɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map(t=>t.charCodeAt(0)));var ui;const Mg=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),Og=(ui=String.fromCodePoint)!==null&&ui!==void 0?ui:function(t){let r="";return t>65535&&(t-=65536,r+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),r+=String.fromCharCode(t),r};function Ig(t){var r;return t>=55296&&t<=57343||t>1114111?65533:(r=Mg.get(t))!==null&&r!==void 0?r:t}var Ve;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Ve||(Ve={}));const Rg=32;var wn;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(wn||(wn={}));function ji(t){return t>=Ve.ZERO&&t<=Ve.NINE}function Lg(t){return t>=Ve.UPPER_A&&t<=Ve.UPPER_F||t>=Ve.LOWER_A&&t<=Ve.LOWER_F}function Bg(t){return t>=Ve.UPPER_A&&t<=Ve.UPPER_Z||t>=Ve.LOWER_A&&t<=Ve.LOWER_Z||ji(t)}function Ug(t){return t===Ve.EQUALS||Bg(t)}var qe;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(qe||(qe={}));var Zt;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(Zt||(Zt={}));class $g{constructor(r,u,a){this.decodeTree=r,this.emitCodePoint=u,this.errors=a,this.state=qe.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Zt.Strict}startEntity(r){this.decodeMode=r,this.state=qe.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(r,u){switch(this.state){case qe.EntityStart:return r.charCodeAt(u)===Ve.NUM?(this.state=qe.NumericStart,this.consumed+=1,this.stateNumericStart(r,u+1)):(this.state=qe.NamedEntity,this.stateNamedEntity(r,u));case qe.NumericStart:return this.stateNumericStart(r,u);case qe.NumericDecimal:return this.stateNumericDecimal(r,u);case qe.NumericHex:return this.stateNumericHex(r,u);case qe.NamedEntity:return this.stateNamedEntity(r,u)}}stateNumericStart(r,u){return u>=r.length?-1:(r.charCodeAt(u)|Rg)===Ve.LOWER_X?(this.state=qe.NumericHex,this.consumed+=1,this.stateNumericHex(r,u+1)):(this.state=qe.NumericDecimal,this.stateNumericDecimal(r,u))}addToNumericResult(r,u,a,i){if(u!==a){const l=a-u;this.result=this.result*Math.pow(i,l)+parseInt(r.substr(u,l),i),this.consumed+=l}}stateNumericHex(r,u){const a=u;for(;u<r.length;){const i=r.charCodeAt(u);if(ji(i)||Lg(i))u+=1;else return this.addToNumericResult(r,a,u,16),this.emitNumericEntity(i,3)}return this.addToNumericResult(r,a,u,16),-1}stateNumericDecimal(r,u){const a=u;for(;u<r.length;){const i=r.charCodeAt(u);if(ji(i))u+=1;else return this.addToNumericResult(r,a,u,10),this.emitNumericEntity(i,2)}return this.addToNumericResult(r,a,u,10),-1}emitNumericEntity(r,u){var a;if(this.consumed<=u)return(a=this.errors)===null||a===void 0||a.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(r===Ve.SEMI)this.consumed+=1;else if(this.decodeMode===Zt.Strict)return 0;return this.emitCodePoint(Ig(this.result),this.consumed),this.errors&&(r!==Ve.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(r,u){const{decodeTree:a}=this;let i=a[this.treeIndex],l=(i&wn.VALUE_LENGTH)>>14;for(;u<r.length;u++,this.excess++){const h=r.charCodeAt(u);if(this.treeIndex=Hg(a,i,this.treeIndex+Math.max(1,l),h),this.treeIndex<0)return this.result===0||this.decodeMode===Zt.Attribute&&(l===0||Ug(h))?0:this.emitNotTerminatedNamedEntity();if(i=a[this.treeIndex],l=(i&wn.VALUE_LENGTH)>>14,l!==0){if(h===Ve.SEMI)return this.emitNamedEntityData(this.treeIndex,l,this.consumed+this.excess);this.decodeMode!==Zt.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var r;const{result:u,decodeTree:a}=this,i=(a[u]&wn.VALUE_LENGTH)>>14;return this.emitNamedEntityData(u,i,this.consumed),(r=this.errors)===null||r===void 0||r.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(r,u,a){const{decodeTree:i}=this;return this.emitCodePoint(u===1?i[r]&~wn.VALUE_LENGTH:i[r+1],a),u===3&&this.emitCodePoint(i[r+2],a),a}end(){var r;switch(this.state){case qe.NamedEntity:return this.result!==0&&(this.decodeMode!==Zt.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case qe.NumericDecimal:return this.emitNumericEntity(0,2);case qe.NumericHex:return this.emitNumericEntity(0,3);case qe.NumericStart:return(r=this.errors)===null||r===void 0||r.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case qe.EntityStart:return 0}}}function wf(t){let r="";const u=new $g(t,a=>r+=Og(a));return function(i,l){let h=0,f=0;for(;(f=i.indexOf("&",f))>=0;){r+=i.slice(h,f),u.startEntity(l);const x=u.write(i,f+1);if(x<0){h=f+u.end();break}h=f+x,f=x===0?h+1:h}const m=r+i.slice(h);return r="",m}}function Hg(t,r,u,a){const i=(r&wn.BRANCH_LENGTH)>>7,l=r&wn.JUMP_TABLE;if(i===0)return l!==0&&a===l?u:-1;if(l){const m=a-l;return m<0||m>=i?-1:t[u+m]-1}let h=u,f=h+i-1;for(;h<=f;){const m=h+f>>>1,x=t[m];if(x<a)h=m+1;else if(x>a)f=m-1;else return t[m+i]}return-1}const kf=wf(Tg);wf(Pg);function qg(t,r=Zt.Legacy){return kf(t,r)}function Vg(t){return kf(t,Zt.Strict)}function Wg(t){return Object.prototype.toString.call(t)}function Gi(t){return Wg(t)==="[object String]"}const Gg=Object.prototype.hasOwnProperty;function Kg(t,r){return Gg.call(t,r)}function Yu(t){return Array.prototype.slice.call(arguments,1).forEach(function(u){if(u){if(typeof u!="object")throw new TypeError(u+"must be object");Object.keys(u).forEach(function(a){t[a]=u[a]})}}),t}function _f(t,r,u){return[].concat(t.slice(0,r),u,t.slice(r+1))}function Ki(t){return!(t>=55296&&t<=57343||t>=64976&&t<=65007||(t&65535)===65535||(t&65535)===65534||t>=0&&t<=8||t===11||t>=14&&t<=31||t>=127&&t<=159||t>1114111)}function fs(t){if(t>65535){t-=65536;const r=55296+(t>>10),u=56320+(t&1023);return String.fromCharCode(r,u)}return String.fromCharCode(t)}const Cf=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,Qg=/&([a-z#][a-z0-9]{1,31});/gi,Zg=new RegExp(Cf.source+"|"+Qg.source,"gi"),Yg=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function Xg(t,r){if(r.charCodeAt(0)===35&&Yg.test(r)){const a=r[1].toLowerCase()==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10);return Ki(a)?fs(a):t}const u=qg(t);return u!==t?u:t}function Jg(t){return t.indexOf("\\")<0?t:t.replace(Cf,"$1")}function gr(t){return t.indexOf("\\")<0&&t.indexOf("&")<0?t:t.replace(Zg,function(r,u,a){return u||Xg(r,a)})}const e2=/[&<>"]/,t2=/[&<>"]/g,n2={"&":"&","<":"<",">":">",'"':"""};function r2(t){return n2[t]}function _n(t){return e2.test(t)?t.replace(t2,r2):t}const s2=/[.?*+^$[\]\\(){}|-]/g;function u2(t){return t.replace(s2,"\\$&")}function ze(t){switch(t){case 9:case 32:return!0}return!1}function hs(t){if(t>=8192&&t<=8202)return!0;switch(t){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1}function Ef(t){return Wi.test(t)||yf.test(t)}function ps(t){return Ef(fs(t))}function ms(t){switch(t){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}}function Xu(t){return t=t.trim().replace(/\s+/g," "),"ẞ".toLowerCase()==="Ṿ"&&(t=t.replace(/ẞ/g,"ß")),t.toLowerCase().toUpperCase()}function D0(t){return t===32||t===9||t===10||t===13}function Ju(t){let r=0;for(;r<t.length&&D0(t.charCodeAt(r));r++);let u=t.length-1;for(;u>=r&&D0(t.charCodeAt(u));u--);return t.slice(r,u+1)}const o2={mdurl:Ng,ucmicro:Fg},a2=Object.freeze(Object.defineProperty({__proto__:null,arrayReplaceAt:_f,asciiTrim:Ju,assign:Yu,escapeHtml:_n,escapeRE:u2,fromCodePoint:fs,has:Kg,isMdAsciiPunct:ms,isPunctChar:Ef,isPunctCharCode:ps,isSpace:ze,isString:Gi,isValidEntityCode:Ki,isWhiteSpace:hs,lib:o2,normalizeReference:Xu,unescapeAll:gr,unescapeMd:Jg},Symbol.toStringTag,{value:"Module"}));function i2(t,r,u){let a,i,l,h;const f=t.posMax,m=t.pos;for(t.pos=r+1,a=1;t.pos<f;){if(l=t.src.charCodeAt(t.pos),l===93&&(a--,a===0)){i=!0;break}if(h=t.pos,t.md.inline.skipToken(t),l===91){if(h===t.pos-1)a++;else if(u)return t.pos=m,-1}}let x=-1;return i&&(x=t.pos),t.pos=m,x}function l2(t,r,u){let a,i=r;const l={ok:!1,pos:0,str:""};if(t.charCodeAt(i)===60){for(i++;i<u;){if(a=t.charCodeAt(i),a===10||a===60)return l;if(a===62)return l.pos=i+1,l.str=gr(t.slice(r+1,i)),l.ok=!0,l;if(a===92&&i+1<u){i+=2;continue}i++}return l}let h=0;for(;i<u&&(a=t.charCodeAt(i),!(a===32||a<32||a===127));){if(a===92&&i+1<u){if(t.charCodeAt(i+1)===32)break;i+=2;continue}if(a===40&&(h++,h>32))return l;if(a===41){if(h===0)break;h--}i++}return r===i||h!==0||(l.str=gr(t.slice(r,i)),l.pos=i,l.ok=!0),l}function c2(t,r,u,a){let i,l=r;const h={ok:!1,can_continue:!1,pos:0,str:"",marker:0};if(a)h.str=a.str,h.marker=a.marker;else{if(l>=u)return h;let f=t.charCodeAt(l);if(f!==34&&f!==39&&f!==40)return h;r++,l++,f===40&&(f=41),h.marker=f}for(;l<u;){if(i=t.charCodeAt(l),i===h.marker)return h.pos=l+1,h.str+=gr(t.slice(r,l)),h.ok=!0,h;if(i===40&&h.marker===41)return h;i===92&&l+1<u&&l++,l++}return h.can_continue=!0,h.str+=gr(t.slice(r,l)),h}const d2=Object.freeze(Object.defineProperty({__proto__:null,parseLinkDestination:l2,parseLinkLabel:i2,parseLinkTitle:c2},Symbol.toStringTag,{value:"Module"})),Lt={};Lt.code_inline=function(t,r,u,a,i){const l=t[r];return"<code"+i.renderAttrs(l)+">"+_n(l.content)+"</code>"};Lt.code_block=function(t,r,u,a,i){const l=t[r];return"<pre"+i.renderAttrs(l)+"><code>"+_n(t[r].content)+`</code></pre>
|
|
243
|
+
`};Lt.fence=function(t,r,u,a,i){const l=t[r],h=l.info?gr(l.info).trim():"";let f="",m="";if(h){const b=h.split(/(\s+)/g);f=b[0],m=b.slice(2).join("")}let x;if(u.highlight?x=u.highlight(l.content,f,m)||_n(l.content):x=_n(l.content),x.indexOf("<pre")===0)return x+`
|
|
244
|
+
`;if(h){const b=l.attrIndex("class"),y=l.attrs?l.attrs.slice():[];b<0?y.push(["class",u.langPrefix+f]):(y[b]=y[b].slice(),y[b][1]+=" "+u.langPrefix+f);const w={attrs:y};return`<pre><code${i.renderAttrs(w)}>${x}</code></pre>
|
|
245
|
+
`}return`<pre><code${i.renderAttrs(l)}>${x}</code></pre>
|
|
246
|
+
`};Lt.image=function(t,r,u,a,i){const l=t[r];return l.attrs[l.attrIndex("alt")][1]=i.renderInlineAsText(l.children,u,a),i.renderToken(t,r,u)};Lt.hardbreak=function(t,r,u){return u.xhtmlOut?`<br />
|
|
247
|
+
`:`<br>
|
|
248
|
+
`};Lt.softbreak=function(t,r,u){return u.breaks?u.xhtmlOut?`<br />
|
|
249
|
+
`:`<br>
|
|
250
|
+
`:`
|
|
251
|
+
`};Lt.text=function(t,r){return _n(t[r].content)};Lt.html_block=function(t,r){return t[r].content};Lt.html_inline=function(t,r){return t[r].content};function yr(){this.rules=Yu({},Lt)}yr.prototype.renderAttrs=function(r){let u,a,i;if(!r.attrs)return"";for(i="",u=0,a=r.attrs.length;u<a;u++)i+=" "+_n(r.attrs[u][0])+'="'+_n(r.attrs[u][1])+'"';return i};yr.prototype.renderToken=function(r,u,a){const i=r[u];let l="";if(i.hidden)return"";i.block&&i.nesting!==-1&&u&&r[u-1].hidden&&(l+=`
|
|
252
|
+
`),l+=(i.nesting===-1?"</":"<")+i.tag,l+=this.renderAttrs(i),i.nesting===0&&a.xhtmlOut&&(l+=" /");let h=!1;if(i.block&&(h=!0,i.nesting===1&&u+1<r.length)){const f=r[u+1];(f.type==="inline"||f.hidden||f.nesting===-1&&f.tag===i.tag)&&(h=!1)}return l+=h?`>
|
|
253
|
+
`:">",l};yr.prototype.renderInline=function(t,r,u){let a="";const i=this.rules;for(let l=0,h=t.length;l<h;l++){const f=t[l].type;typeof i[f]<"u"?a+=i[f](t,l,r,u,this):a+=this.renderToken(t,l,r)}return a};yr.prototype.renderInlineAsText=function(t,r,u){let a="";for(let i=0,l=t.length;i<l;i++)switch(t[i].type){case"text":a+=t[i].content;break;case"image":a+=this.renderInlineAsText(t[i].children,r,u);break;case"html_inline":case"html_block":a+=t[i].content;break;case"softbreak":case"hardbreak":a+=`
|
|
254
|
+
`;break}return a};yr.prototype.render=function(t,r,u){let a="";const i=this.rules;for(let l=0,h=t.length;l<h;l++){const f=t[l].type;f==="inline"?a+=this.renderInline(t[l].children,r,u):typeof i[f]<"u"?a+=i[f](t,l,r,u,this):a+=this.renderToken(t,l,r,u)}return a};function at(){this.__rules__=[],this.__cache__=null}at.prototype.__find__=function(t){for(let r=0;r<this.__rules__.length;r++)if(this.__rules__[r].name===t)return r;return-1};at.prototype.__compile__=function(){const t=this,r=[""];t.__rules__.forEach(function(u){u.enabled&&u.alt.forEach(function(a){r.indexOf(a)<0&&r.push(a)})}),t.__cache__={},r.forEach(function(u){t.__cache__[u]=[],t.__rules__.forEach(function(a){a.enabled&&(u&&a.alt.indexOf(u)<0||t.__cache__[u].push(a.fn))})})};at.prototype.at=function(t,r,u){const a=this.__find__(t),i=u||{};if(a===-1)throw new Error("Parser rule not found: "+t);this.__rules__[a].fn=r,this.__rules__[a].alt=i.alt||[],this.__cache__=null};at.prototype.before=function(t,r,u,a){const i=this.__find__(t),l=a||{};if(i===-1)throw new Error("Parser rule not found: "+t);this.__rules__.splice(i,0,{name:r,enabled:!0,fn:u,alt:l.alt||[]}),this.__cache__=null};at.prototype.after=function(t,r,u,a){const i=this.__find__(t),l=a||{};if(i===-1)throw new Error("Parser rule not found: "+t);this.__rules__.splice(i+1,0,{name:r,enabled:!0,fn:u,alt:l.alt||[]}),this.__cache__=null};at.prototype.push=function(t,r,u){const a=u||{};this.__rules__.push({name:t,enabled:!0,fn:r,alt:a.alt||[]}),this.__cache__=null};at.prototype.enable=function(t,r){Array.isArray(t)||(t=[t]);const u=[];return t.forEach(function(a){const i=this.__find__(a);if(i<0){if(r)return;throw new Error("Rules manager: invalid rule name "+a)}this.__rules__[i].enabled=!0,u.push(a)},this),this.__cache__=null,u};at.prototype.enableOnly=function(t,r){Array.isArray(t)||(t=[t]),this.__rules__.forEach(function(u){u.enabled=!1}),this.enable(t,r)};at.prototype.disable=function(t,r){Array.isArray(t)||(t=[t]);const u=[];return t.forEach(function(a){const i=this.__find__(a);if(i<0){if(r)return;throw new Error("Rules manager: invalid rule name "+a)}this.__rules__[i].enabled=!1,u.push(a)},this),this.__cache__=null,u};at.prototype.getRules=function(t){return this.__cache__===null&&this.__compile__(),this.__cache__[t]||[]};function Nt(t,r,u){this.type=t,this.tag=r,this.attrs=null,this.map=null,this.nesting=u,this.level=0,this.children=null,this.content="",this.markup="",this.info="",this.meta=null,this.block=!1,this.hidden=!1}Nt.prototype.attrIndex=function(r){if(!this.attrs)return-1;const u=this.attrs;for(let a=0,i=u.length;a<i;a++)if(u[a][0]===r)return a;return-1};Nt.prototype.attrPush=function(r){this.attrs?this.attrs.push(r):this.attrs=[r]};Nt.prototype.attrSet=function(r,u){const a=this.attrIndex(r),i=[r,u];a<0?this.attrPush(i):this.attrs[a]=i};Nt.prototype.attrGet=function(r){const u=this.attrIndex(r);let a=null;return u>=0&&(a=this.attrs[u][1]),a};Nt.prototype.attrJoin=function(r,u){const a=this.attrIndex(r);a<0?this.attrPush([r,u]):this.attrs[a][1]=this.attrs[a][1]+" "+u};function Sf(t,r,u){this.src=t,this.env=u,this.tokens=[],this.inlineMode=!1,this.md=r}Sf.prototype.Token=Nt;const f2=/\r\n?|\n/g,h2=/\0/g;function p2(t){let r;r=t.src.replace(f2,`
|
|
255
|
+
`),r=r.replace(h2,"�"),t.src=r}function m2(t){let r;t.inlineMode?(r=new t.Token("inline","",0),r.content=t.src,r.map=[0,1],r.children=[],t.tokens.push(r)):t.md.block.parse(t.src,t.md,t.env,t.tokens)}function g2(t){const r=t.tokens;for(let u=0,a=r.length;u<a;u++){const i=r[u];i.type==="inline"&&t.md.inline.parse(i.content,t.md,t.env,i.children)}}function x2(t){return/^<a[>\s]/i.test(t)}function b2(t){return/^<\/a\s*>/i.test(t)}function y2(t){const r=t.tokens;if(t.md.options.linkify)for(let u=0,a=r.length;u<a;u++){if(r[u].type!=="inline"||!t.md.linkify.pretest(r[u].content))continue;let i=r[u].children,l=0;for(let h=i.length-1;h>=0;h--){const f=i[h];if(f.type==="link_close"){for(h--;i[h].level!==f.level&&i[h].type!=="link_open";)h--;continue}if(f.type==="html_inline"&&(x2(f.content)&&l>0&&l--,b2(f.content)&&l++),!(l>0)&&f.type==="text"&&t.md.linkify.test(f.content)){const m=f.content;let x=t.md.linkify.match(m);const b=[];let y=f.level,w=0;x.length>0&&x[0].index===0&&h>0&&i[h-1].type==="text_special"&&(x=x.slice(1));for(let C=0;C<x.length;C++){const k=x[C].url,F=t.md.normalizeLink(k);if(!t.md.validateLink(F))continue;let A=x[C].text;x[C].schema?x[C].schema==="mailto:"&&!/^mailto:/i.test(A)?A=t.md.normalizeLinkText("mailto:"+A).replace(/^mailto:/,""):A=t.md.normalizeLinkText(A):A=t.md.normalizeLinkText("http://"+A).replace(/^http:\/\//,"");const q=x[C].index;if(q>w){const j=new t.Token("text","",0);j.content=m.slice(w,q),j.level=y,b.push(j)}const I=new t.Token("link_open","a",1);I.attrs=[["href",F]],I.level=y++,I.markup="linkify",I.info="auto",b.push(I);const T=new t.Token("text","",0);T.content=A,T.level=y,b.push(T);const R=new t.Token("link_close","a",-1);R.level=--y,R.markup="linkify",R.info="auto",b.push(R),w=x[C].lastIndex}if(w<m.length){const C=new t.Token("text","",0);C.content=m.slice(w),C.level=y,b.push(C)}r[u].children=i=_f(i,h,b)}}}}const zf=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,v2=/\((c|tm|r)\)/i,w2=/\((c|tm|r)\)/ig,k2={c:"©",r:"®",tm:"™"};function _2(t,r){return k2[r.toLowerCase()]}function C2(t){let r=0;for(let u=t.length-1;u>=0;u--){const a=t[u];a.type==="text"&&!r&&(a.content=a.content.replace(w2,_2)),a.type==="link_open"&&a.info==="auto"&&r--,a.type==="link_close"&&a.info==="auto"&&r++}}function E2(t){let r=0;for(let u=t.length-1;u>=0;u--){const a=t[u];a.type==="text"&&!r&&zf.test(a.content)&&(a.content=a.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---(?=[^-]|$)/mg,"$1—").replace(/(^|\s)--(?=\s|$)/mg,"$1–").replace(/(^|[^-\s])--(?=[^-\s]|$)/mg,"$1–")),a.type==="link_open"&&a.info==="auto"&&r--,a.type==="link_close"&&a.info==="auto"&&r++}}function S2(t){let r;if(t.md.options.typographer)for(r=t.tokens.length-1;r>=0;r--)t.tokens[r].type==="inline"&&(v2.test(t.tokens[r].content)&&C2(t.tokens[r].children),zf.test(t.tokens[r].content)&&E2(t.tokens[r].children))}const z2=/['"]/,N0=/['"]/g,j0="’";function Ou(t,r,u,a){t[r]||(t[r]=[]),t[r].push({pos:u,ch:a})}function A2(t,r){let u="",a=0;r.sort((i,l)=>i.pos-l.pos);for(let i=0;i<r.length;i++){const l=r[i];u+=t.slice(a,l.pos)+l.ch,a=l.pos+1}return u+t.slice(a)}function D2(t,r){let u;const a=[],i={};for(let l=0;l<t.length;l++){const h=t[l],f=t[l].level;for(u=a.length-1;u>=0&&!(a[u].level<=f);u--);if(a.length=u+1,h.type!=="text")continue;const m=h.content;let x=0;const b=m.length;e:for(;x<b;){N0.lastIndex=x;const y=N0.exec(m);if(!y)break;let w=!0,C=!0;x=y.index+1;const k=y[0]==="'";let F=32;if(y.index-1>=0)F=m.charCodeAt(y.index-1);else for(u=l-1;u>=0&&!(t[u].type==="softbreak"||t[u].type==="hardbreak");u--)if(t[u].content){F=t[u].content.charCodeAt(t[u].content.length-1);break}let A=32;if(x<b)A=m.charCodeAt(x);else for(u=l+1;u<t.length&&!(t[u].type==="softbreak"||t[u].type==="hardbreak");u++)if(t[u].content){A=t[u].content.charCodeAt(0);break}const q=ms(F)||ps(F),I=ms(A)||ps(A),T=hs(F),R=hs(A);if(R?w=!1:I&&(T||q||(w=!1)),T?C=!1:q&&(R||I||(C=!1)),A===34&&y[0]==='"'&&F>=48&&F<=57&&(C=w=!1),w&&C&&(w=q,C=I),!w&&!C){k&&Ou(i,l,y.index,j0);continue}if(C)for(u=a.length-1;u>=0;u--){let j=a[u];if(a[u].level<f)break;if(j.single===k&&a[u].level===f){j=a[u];let U,Y;k?(U=r.md.options.quotes[2],Y=r.md.options.quotes[3]):(U=r.md.options.quotes[0],Y=r.md.options.quotes[1]),Ou(i,l,y.index,Y),Ou(i,j.token,j.pos,U),a.length=u;continue e}}w?a.push({token:l,pos:y.index,single:k,level:f}):C&&k&&Ou(i,l,y.index,j0)}}Object.keys(i).forEach(function(l){t[l].content=A2(t[l].content,i[l])})}function N2(t){if(t.md.options.typographer)for(let r=t.tokens.length-1;r>=0;r--)t.tokens[r].type!=="inline"||!z2.test(t.tokens[r].content)||D2(t.tokens[r].children,t)}function j2(t){let r,u;const a=t.tokens,i=a.length;for(let l=0;l<i;l++){if(a[l].type!=="inline")continue;const h=a[l].children,f=h.length;for(r=0;r<f;r++)h[r].type==="text_special"&&(h[r].type="text");for(r=u=0;r<f;r++)h[r].type==="text"&&r+1<f&&h[r+1].type==="text"?h[r+1].content=h[r].content+h[r+1].content:(r!==u&&(h[u]=h[r]),u++);r!==u&&(h.length=u)}}const oi=[["normalize",p2],["block",m2],["inline",g2],["linkify",y2],["replacements",S2],["smartquotes",N2],["text_join",j2]];function Qi(){this.ruler=new at;for(let t=0;t<oi.length;t++)this.ruler.push(oi[t][0],oi[t][1])}Qi.prototype.process=function(t){const r=this.ruler.getRules("");for(let u=0,a=r.length;u<a;u++)r[u](t)};Qi.prototype.State=Sf;function Bt(t,r,u,a){this.src=t,this.md=r,this.env=u,this.tokens=a,this.bMarks=[],this.eMarks=[],this.tShift=[],this.sCount=[],this.bsCount=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.ddIndent=-1,this.listIndent=-1,this.parentType="root",this.level=0;const i=this.src;for(let l=0,h=0,f=0,m=0,x=i.length,b=!1;h<x;h++){const y=i.charCodeAt(h);if(!b)if(ze(y)){f++,y===9?m+=4-m%4:m++;continue}else b=!0;(y===10||h===x-1)&&(y!==10&&h++,this.bMarks.push(l),this.eMarks.push(h),this.tShift.push(f),this.sCount.push(m),this.bsCount.push(0),b=!1,f=0,m=0,l=h+1)}this.bMarks.push(i.length),this.eMarks.push(i.length),this.tShift.push(0),this.sCount.push(0),this.bsCount.push(0),this.lineMax=this.bMarks.length-1}Bt.prototype.push=function(t,r,u){const a=new Nt(t,r,u);return a.block=!0,u<0&&this.level--,a.level=this.level,u>0&&this.level++,this.tokens.push(a),a};Bt.prototype.isEmpty=function(r){return this.bMarks[r]+this.tShift[r]>=this.eMarks[r]};Bt.prototype.skipEmptyLines=function(r){for(let u=this.lineMax;r<u&&!(this.bMarks[r]+this.tShift[r]<this.eMarks[r]);r++);return r};Bt.prototype.skipSpaces=function(r){for(let u=this.src.length;r<u;r++){const a=this.src.charCodeAt(r);if(!ze(a))break}return r};Bt.prototype.skipSpacesBack=function(r,u){if(r<=u)return r;for(;r>u;)if(!ze(this.src.charCodeAt(--r)))return r+1;return r};Bt.prototype.skipChars=function(r,u){for(let a=this.src.length;r<a&&this.src.charCodeAt(r)===u;r++);return r};Bt.prototype.skipCharsBack=function(r,u,a){if(r<=a)return r;for(;r>a;)if(u!==this.src.charCodeAt(--r))return r+1;return r};Bt.prototype.getLines=function(r,u,a,i){if(r>=u)return"";const l=new Array(u-r);for(let h=0,f=r;f<u;f++,h++){let m=0;const x=this.bMarks[f];let b=x,y;for(f+1<u||i?y=this.eMarks[f]+1:y=this.eMarks[f];b<y&&m<a;){const w=this.src.charCodeAt(b);if(ze(w))w===9?m+=4-(m+this.bsCount[f])%4:m++;else if(b-x<this.tShift[f])m++;else break;b++}m>a?l[h]=new Array(m-a+1).join(" ")+this.src.slice(b,y):l[h]=this.src.slice(b,y)}return l.join("")};Bt.prototype.Token=Nt;const F2=65536;function ai(t,r){const u=t.bMarks[r]+t.tShift[r],a=t.eMarks[r];return t.src.slice(u,a)}function F0(t){const r=[],u=t.length;let a=0,i=t.charCodeAt(a),l=!1,h=0,f="";for(;a<u;)i===124&&(l?(f+=t.substring(h,a-1),h=a):(r.push(f+t.substring(h,a)),f="",h=a+1)),l=i===92,a++,i=t.charCodeAt(a);return r.push(f+t.substring(h)),r}function T2(t,r,u,a){if(r+2>u)return!1;let i=r+1;if(t.sCount[i]<t.blkIndent||t.sCount[i]-t.blkIndent>=4)return!1;let l=t.bMarks[i]+t.tShift[i];if(l>=t.eMarks[i])return!1;const h=t.src.charCodeAt(l++);if(h!==124&&h!==45&&h!==58||l>=t.eMarks[i])return!1;const f=t.src.charCodeAt(l++);if(f!==124&&f!==45&&f!==58&&!ze(f)||h===45&&ze(f))return!1;for(;l<t.eMarks[i];){const R=t.src.charCodeAt(l);if(R!==124&&R!==45&&R!==58&&!ze(R))return!1;l++}let m=ai(t,r+1),x=m.split("|");const b=[];for(let R=0;R<x.length;R++){const j=x[R].trim();if(!j){if(R===0||R===x.length-1)continue;return!1}if(!/^:?-+:?$/.test(j))return!1;j.charCodeAt(j.length-1)===58?b.push(j.charCodeAt(0)===58?"center":"right"):j.charCodeAt(0)===58?b.push("left"):b.push("")}if(m=ai(t,r).trim(),m.indexOf("|")===-1||t.sCount[r]-t.blkIndent>=4)return!1;x=F0(m),x.length&&x[0]===""&&x.shift(),x.length&&x[x.length-1]===""&&x.pop();const y=x.length;if(y===0||y!==b.length)return!1;if(a)return!0;const w=t.parentType;t.parentType="table";const C=t.md.block.ruler.getRules("blockquote"),k=t.push("table_open","table",1),F=[r,0];k.map=F;const A=t.push("thead_open","thead",1);A.map=[r,r+1];const q=t.push("tr_open","tr",1);q.map=[r,r+1];for(let R=0;R<x.length;R++){const j=t.push("th_open","th",1);b[R]&&(j.attrs=[["style","text-align:"+b[R]]]);const U=t.push("inline","",0);U.content=x[R].trim(),U.children=[],t.push("th_close","th",-1)}t.push("tr_close","tr",-1),t.push("thead_close","thead",-1);let I,T=0;for(i=r+2;i<u&&!(t.sCount[i]<t.blkIndent);i++){let R=!1;for(let U=0,Y=C.length;U<Y;U++)if(C[U](t,i,u,!0)){R=!0;break}if(R||(m=ai(t,i).trim(),!m)||t.sCount[i]-t.blkIndent>=4||(x=F0(m),x.length&&x[0]===""&&x.shift(),x.length&&x[x.length-1]===""&&x.pop(),T+=y-x.length,T>F2))break;if(i===r+2){const U=t.push("tbody_open","tbody",1);U.map=I=[r+2,0]}const j=t.push("tr_open","tr",1);j.map=[i,i+1];for(let U=0;U<y;U++){const Y=t.push("td_open","td",1);b[U]&&(Y.attrs=[["style","text-align:"+b[U]]]);const ne=t.push("inline","",0);ne.content=x[U]?x[U].trim():"",ne.children=[],t.push("td_close","td",-1)}t.push("tr_close","tr",-1)}return I&&(t.push("tbody_close","tbody",-1),I[1]=i),t.push("table_close","table",-1),F[1]=i,t.parentType=w,t.line=i,!0}function P2(t,r,u){if(t.sCount[r]-t.blkIndent<4)return!1;let a=r+1,i=a;for(;a<u;){if(t.isEmpty(a)){a++;continue}if(t.sCount[a]-t.blkIndent>=4){a++,i=a;continue}break}t.line=i;const l=t.push("code_block","code",0);return l.content=t.getLines(r,i,4+t.blkIndent,!1)+`
|
|
256
|
+
`,l.map=[r,t.line],!0}function M2(t,r,u,a){let i=t.bMarks[r]+t.tShift[r],l=t.eMarks[r];if(t.sCount[r]-t.blkIndent>=4||i+3>l)return!1;const h=t.src.charCodeAt(i);if(h!==126&&h!==96)return!1;let f=i;i=t.skipChars(i,h);let m=i-f;if(m<3)return!1;const x=t.src.slice(f,i),b=t.src.slice(i,l);if(h===96&&b.indexOf(String.fromCharCode(h))>=0)return!1;if(a)return!0;let y=r,w=!1;for(;y++,!(y>=u||(i=f=t.bMarks[y]+t.tShift[y],l=t.eMarks[y],i<l&&t.sCount[y]<t.blkIndent));)if(t.src.charCodeAt(i)===h&&!(t.sCount[y]-t.blkIndent>=4)&&(i=t.skipChars(i,h),!(i-f<m)&&(i=t.skipSpaces(i),!(i<l)))){w=!0;break}m=t.sCount[r],t.line=y+(w?1:0);const C=t.push("fence","code",0);return C.info=b,C.content=t.getLines(r+1,y,m,!0),C.markup=x,C.map=[r,t.line],!0}function O2(t,r,u,a){let i=t.bMarks[r]+t.tShift[r],l=t.eMarks[r];const h=t.lineMax;if(t.sCount[r]-t.blkIndent>=4||t.src.charCodeAt(i)!==62)return!1;if(a)return!0;const f=[],m=[],x=[],b=[],y=t.md.block.ruler.getRules("blockquote"),w=t.parentType;t.parentType="blockquote";let C=!1,k;for(k=r;k<u;k++){const T=t.sCount[k]<t.blkIndent;if(i=t.bMarks[k]+t.tShift[k],l=t.eMarks[k],i>=l)break;if(t.src.charCodeAt(i++)===62&&!T){let j=t.sCount[k]+1,U,Y;t.src.charCodeAt(i)===32?(i++,j++,Y=!1,U=!0):t.src.charCodeAt(i)===9?(U=!0,(t.bsCount[k]+j)%4===3?(i++,j++,Y=!1):Y=!0):U=!1;let ne=j;for(f.push(t.bMarks[k]),t.bMarks[k]=i;i<l;){const ee=t.src.charCodeAt(i);if(ze(ee))ee===9?ne+=4-(ne+t.bsCount[k]+(Y?1:0))%4:ne++;else break;i++}C=i>=l,m.push(t.bsCount[k]),t.bsCount[k]=t.sCount[k]+1+(U?1:0),x.push(t.sCount[k]),t.sCount[k]=ne-j,b.push(t.tShift[k]),t.tShift[k]=i-t.bMarks[k];continue}if(C)break;let R=!1;for(let j=0,U=y.length;j<U;j++)if(y[j](t,k,u,!0)){R=!0;break}if(R){t.lineMax=k,t.blkIndent!==0&&(f.push(t.bMarks[k]),m.push(t.bsCount[k]),b.push(t.tShift[k]),x.push(t.sCount[k]),t.sCount[k]-=t.blkIndent);break}f.push(t.bMarks[k]),m.push(t.bsCount[k]),b.push(t.tShift[k]),x.push(t.sCount[k]),t.sCount[k]=-1}const F=t.blkIndent;t.blkIndent=0;const A=t.push("blockquote_open","blockquote",1);A.markup=">";const q=[r,0];A.map=q,t.md.block.tokenize(t,r,k);const I=t.push("blockquote_close","blockquote",-1);I.markup=">",t.lineMax=h,t.parentType=w,q[1]=t.line;for(let T=0;T<b.length;T++)t.bMarks[T+r]=f[T],t.tShift[T+r]=b[T],t.sCount[T+r]=x[T],t.bsCount[T+r]=m[T];return t.blkIndent=F,!0}function I2(t,r,u,a){const i=t.eMarks[r];if(t.sCount[r]-t.blkIndent>=4)return!1;let l=t.bMarks[r]+t.tShift[r];const h=t.src.charCodeAt(l++);if(h!==42&&h!==45&&h!==95)return!1;let f=1;for(;l<i;){const x=t.src.charCodeAt(l++);if(x!==h&&!ze(x))return!1;x===h&&f++}if(f<3)return!1;if(a)return!0;t.line=r+1;const m=t.push("hr","hr",0);return m.map=[r,t.line],m.markup=Array(f+1).join(String.fromCharCode(h)),!0}function T0(t,r){const u=t.eMarks[r];let a=t.bMarks[r]+t.tShift[r];const i=t.src.charCodeAt(a++);if(i!==42&&i!==45&&i!==43)return-1;if(a<u){const l=t.src.charCodeAt(a);if(!ze(l))return-1}return a}function P0(t,r){const u=t.bMarks[r]+t.tShift[r],a=t.eMarks[r];let i=u;if(i+1>=a)return-1;let l=t.src.charCodeAt(i++);if(l<48||l>57)return-1;for(;;){if(i>=a)return-1;if(l=t.src.charCodeAt(i++),l>=48&&l<=57){if(i-u>=10)return-1;continue}if(l===41||l===46)break;return-1}return i<a&&(l=t.src.charCodeAt(i),!ze(l))?-1:i}function R2(t,r){const u=t.level+2;for(let a=r+2,i=t.tokens.length-2;a<i;a++)t.tokens[a].level===u&&t.tokens[a].type==="paragraph_open"&&(t.tokens[a+2].hidden=!0,t.tokens[a].hidden=!0,a+=2)}function L2(t,r,u,a){let i,l,h,f,m=r,x=!0;if(t.sCount[m]-t.blkIndent>=4||t.listIndent>=0&&t.sCount[m]-t.listIndent>=4&&t.sCount[m]<t.blkIndent)return!1;let b=!1;a&&t.parentType==="paragraph"&&t.sCount[m]>=t.blkIndent&&(b=!0);let y,w,C;if((C=P0(t,m))>=0){if(y=!0,h=t.bMarks[m]+t.tShift[m],w=Number(t.src.slice(h,C-1)),b&&w!==1)return!1}else if((C=T0(t,m))>=0)y=!1;else return!1;if(b&&t.skipSpaces(C)>=t.eMarks[m])return!1;if(a)return!0;const k=t.src.charCodeAt(C-1),F=t.tokens.length;y?(f=t.push("ordered_list_open","ol",1),w!==1&&(f.attrs=[["start",w]])):f=t.push("bullet_list_open","ul",1);const A=[m,0];f.map=A,f.markup=String.fromCharCode(k);let q=!1;const I=t.md.block.ruler.getRules("list"),T=t.parentType;for(t.parentType="list";m<u;){l=C,i=t.eMarks[m];const R=t.sCount[m]+C-(t.bMarks[m]+t.tShift[m]);let j=R;for(;l<i;){const ie=t.src.charCodeAt(l);if(ie===9)j+=4-(j+t.bsCount[m])%4;else if(ie===32)j++;else break;l++}const U=l;let Y;U>=i?Y=1:Y=j-R,Y>4&&(Y=1);const ne=R+Y;f=t.push("list_item_open","li",1),f.markup=String.fromCharCode(k);const ee=[m,0];f.map=ee,y&&(f.info=t.src.slice(h,C-1));const L=t.tight,ue=t.tShift[m],K=t.sCount[m],ve=t.listIndent;if(t.listIndent=t.blkIndent,t.blkIndent=ne,t.tight=!0,t.tShift[m]=U-t.bMarks[m],t.sCount[m]=j,U>=i&&t.isEmpty(m+1)?t.line=Math.min(t.line+2,u):t.md.block.tokenize(t,m,u,!0),(!t.tight||q)&&(x=!1),q=t.line-m>1&&t.isEmpty(t.line-1),t.blkIndent=t.listIndent,t.listIndent=ve,t.tShift[m]=ue,t.sCount[m]=K,t.tight=L,f=t.push("list_item_close","li",-1),f.markup=String.fromCharCode(k),m=t.line,ee[1]=m,m>=u||t.sCount[m]<t.blkIndent||t.sCount[m]-t.blkIndent>=4)break;let fe=!1;for(let ie=0,_e=I.length;ie<_e;ie++)if(I[ie](t,m,u,!0)){fe=!0;break}if(fe)break;if(y){if(C=P0(t,m),C<0)break;h=t.bMarks[m]+t.tShift[m]}else if(C=T0(t,m),C<0)break;if(k!==t.src.charCodeAt(C-1))break}return y?f=t.push("ordered_list_close","ol",-1):f=t.push("bullet_list_close","ul",-1),f.markup=String.fromCharCode(k),A[1]=m,t.line=m,t.parentType=T,x&&R2(t,F),!0}function B2(t,r,u,a){let i=t.bMarks[r]+t.tShift[r],l=t.eMarks[r],h=r+1;if(t.sCount[r]-t.blkIndent>=4||t.src.charCodeAt(i)!==91)return!1;function f(I){const T=t.lineMax;if(I>=T||t.isEmpty(I))return null;let R=!1;if(t.sCount[I]-t.blkIndent>3&&(R=!0),t.sCount[I]<0&&(R=!0),!R){const Y=t.md.block.ruler.getRules("reference"),ne=t.parentType;t.parentType="reference";let ee=!1;for(let L=0,ue=Y.length;L<ue;L++)if(Y[L](t,I,T,!0)){ee=!0;break}if(t.parentType=ne,ee)return null}const j=t.bMarks[I]+t.tShift[I],U=t.eMarks[I];return t.src.slice(j,U+1)}let m=t.src.slice(i,l+1);l=m.length;let x=-1;for(i=1;i<l;i++){const I=m.charCodeAt(i);if(I===91)return!1;if(I===93){x=i;break}else if(I===10){const T=f(h);T!==null&&(m+=T,l=m.length,h++)}else if(I===92&&(i++,i<l&&m.charCodeAt(i)===10)){const T=f(h);T!==null&&(m+=T,l=m.length,h++)}}if(x<0||m.charCodeAt(x+1)!==58)return!1;for(i=x+2;i<l;i++){const I=m.charCodeAt(i);if(I===10){const T=f(h);T!==null&&(m+=T,l=m.length,h++)}else if(!ze(I))break}const b=t.md.helpers.parseLinkDestination(m,i,l);if(!b.ok)return!1;const y=t.md.normalizeLink(b.str);if(!t.md.validateLink(y))return!1;i=b.pos;const w=i,C=h,k=i;for(;i<l;i++){const I=m.charCodeAt(i);if(I===10){const T=f(h);T!==null&&(m+=T,l=m.length,h++)}else if(!ze(I))break}let F=t.md.helpers.parseLinkTitle(m,i,l);for(;F.can_continue;){const I=f(h);if(I===null)break;m+=I,i=l,l=m.length,h++,F=t.md.helpers.parseLinkTitle(m,i,l,F)}let A;for(i<l&&k!==i&&F.ok?(A=F.str,i=F.pos):(A="",i=w,h=C);i<l;){const I=m.charCodeAt(i);if(!ze(I))break;i++}if(i<l&&m.charCodeAt(i)!==10&&A)for(A="",i=w,h=C;i<l;){const I=m.charCodeAt(i);if(!ze(I))break;i++}if(i<l&&m.charCodeAt(i)!==10)return!1;const q=Xu(m.slice(1,x));return q?(a||(typeof t.env.references>"u"&&(t.env.references={}),typeof t.env.references[q]>"u"&&(t.env.references[q]={title:A,href:y}),t.line=h),!0):!1}const U2=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],$2="[a-zA-Z_:][a-zA-Z0-9:._-]*",H2="[^\"'=<>`\\x00-\\x20]+",q2="'[^']*'",V2='"[^"]*"',W2="(?:"+H2+"|"+q2+"|"+V2+")",G2="(?:\\s+"+$2+"(?:\\s*=\\s*"+W2+")?)",Af="<[A-Za-z][A-Za-z0-9\\-]*"+G2+"*\\s*\\/?>",Df="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",K2="<!---?>|<!--(?:[^-]|-[^-]|--[^>])*-->",Q2="<[?][\\s\\S]*?[?]>",Z2="<![A-Za-z][^>]*>",Y2="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",X2=new RegExp("^(?:"+Af+"|"+Df+"|"+K2+"|"+Q2+"|"+Z2+"|"+Y2+")"),J2=new RegExp("^(?:"+Af+"|"+Df+")"),Ln=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,!0],[/^<!--/,/-->/,!0],[/^<\?/,/\?>/,!0],[/^<![A-Z]/,/>/,!0],[/^<!\[CDATA\[/,/\]\]>/,!0],[new RegExp("^</?("+U2.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,!0],[new RegExp(J2.source+"\\s*$"),/^$/,!1]];function ex(t,r,u,a){let i=t.bMarks[r]+t.tShift[r],l=t.eMarks[r];if(t.sCount[r]-t.blkIndent>=4||!t.md.options.html||t.src.charCodeAt(i)!==60)return!1;let h=t.src.slice(i,l),f=0;for(;f<Ln.length&&!Ln[f][0].test(h);f++);if(f===Ln.length)return!1;if(a)return Ln[f][2];let m=r+1;const x=Ln[f][1].test("");if(!Ln[f][1].test(h)){for(;m<u&&!(t.sCount[m]<t.blkIndent&&(x||!t.isEmpty(m)));m++)if(i=t.bMarks[m]+t.tShift[m],l=t.eMarks[m],h=t.src.slice(i,l),Ln[f][1].test(h)){h.length!==0&&m++;break}}t.line=m;const b=t.push("html_block","",0);return b.map=[r,m],b.content=t.getLines(r,m,t.blkIndent,!0),!0}function tx(t,r,u,a){let i=t.bMarks[r]+t.tShift[r],l=t.eMarks[r];if(t.sCount[r]-t.blkIndent>=4)return!1;let h=t.src.charCodeAt(i);if(h!==35||i>=l)return!1;let f=1;for(h=t.src.charCodeAt(++i);h===35&&i<l&&f<=6;)f++,h=t.src.charCodeAt(++i);if(f>6||i<l&&!ze(h))return!1;if(a)return!0;l=t.skipSpacesBack(l,i);const m=t.skipCharsBack(l,35,i);m>i&&ze(t.src.charCodeAt(m-1))&&(l=m),t.line=r+1;const x=t.push("heading_open","h"+String(f),1);x.markup="########".slice(0,f),x.map=[r,t.line];const b=t.push("inline","",0);b.content=Ju(t.src.slice(i,l)),b.map=[r,t.line],b.children=[];const y=t.push("heading_close","h"+String(f),-1);return y.markup="########".slice(0,f),!0}function nx(t,r,u){const a=t.md.block.ruler.getRules("paragraph");if(t.sCount[r]-t.blkIndent>=4)return!1;const i=t.parentType;t.parentType="paragraph";let l=0,h,f=r+1;for(;f<u&&!t.isEmpty(f);f++){if(t.sCount[f]-t.blkIndent>3)continue;if(t.sCount[f]>=t.blkIndent){let C=t.bMarks[f]+t.tShift[f];const k=t.eMarks[f];if(C<k&&(h=t.src.charCodeAt(C),(h===45||h===61)&&(C=t.skipChars(C,h),C=t.skipSpaces(C),C>=k))){l=h===61?1:2;break}}if(t.sCount[f]<0)continue;let w=!1;for(let C=0,k=a.length;C<k;C++)if(a[C](t,f,u,!0)){w=!0;break}if(w)break}if(!l)return t.parentType=i,!1;const m=Ju(t.getLines(r,f,t.blkIndent,!1));t.line=f+1;const x=t.push("heading_open","h"+String(l),1);x.markup=String.fromCharCode(h),x.map=[r,t.line];const b=t.push("inline","",0);b.content=m,b.map=[r,t.line-1],b.children=[];const y=t.push("heading_close","h"+String(l),-1);return y.markup=String.fromCharCode(h),t.parentType=i,!0}function rx(t,r,u){const a=t.md.block.ruler.getRules("paragraph"),i=t.parentType;let l=r+1;for(t.parentType="paragraph";l<u&&!t.isEmpty(l);l++){if(t.sCount[l]-t.blkIndent>3||t.sCount[l]<0)continue;let x=!1;for(let b=0,y=a.length;b<y;b++)if(a[b](t,l,u,!0)){x=!0;break}if(x)break}const h=Ju(t.getLines(r,l,t.blkIndent,!1));t.line=l;const f=t.push("paragraph_open","p",1);f.map=[r,t.line];const m=t.push("inline","",0);return m.content=h,m.map=[r,t.line],m.children=[],t.push("paragraph_close","p",-1),t.parentType=i,!0}const Iu=[["table",T2,["paragraph","reference"]],["code",P2],["fence",M2,["paragraph","reference","blockquote","list"]],["blockquote",O2,["paragraph","reference","blockquote","list"]],["hr",I2,["paragraph","reference","blockquote","list"]],["list",L2,["paragraph","reference","blockquote"]],["reference",B2],["html_block",ex,["paragraph","reference","blockquote"]],["heading",tx,["paragraph","reference","blockquote"]],["lheading",nx],["paragraph",rx]];function eo(){this.ruler=new at;for(let t=0;t<Iu.length;t++)this.ruler.push(Iu[t][0],Iu[t][1],{alt:(Iu[t][2]||[]).slice()})}eo.prototype.tokenize=function(t,r,u){const a=this.ruler.getRules(""),i=a.length,l=t.md.options.maxNesting;let h=r,f=!1;for(;h<u&&(t.line=h=t.skipEmptyLines(h),!(h>=u||t.sCount[h]<t.blkIndent));){if(t.level>=l){t.line=u;break}const m=t.line;let x=!1;for(let b=0;b<i;b++)if(x=a[b](t,h,u,!1),x){if(m>=t.line)throw new Error("block rule didn't increment state.line");break}if(!x)throw new Error("none of the block rules matched");t.tight=!f,t.isEmpty(t.line-1)&&(f=!0),h=t.line,h<u&&t.isEmpty(h)&&(f=!0,h++,t.line=h)}};eo.prototype.parse=function(t,r,u,a){if(!t)return;const i=new this.State(t,r,u,a);this.tokenize(i,i.line,i.lineMax)};eo.prototype.State=Bt;function ws(t,r,u,a){this.src=t,this.env=u,this.md=r,this.tokens=a,this.tokens_meta=Array(a.length),this.pos=0,this.posMax=this.src.length,this.level=0,this.pending="",this.pendingLevel=0,this.cache={},this.delimiters=[],this._prev_delimiters=[],this.backticks={},this.backticksScanned=!1,this.linkLevel=0}ws.prototype.pushPending=function(){const t=new Nt("text","",0);return t.content=this.pending,t.level=this.pendingLevel,this.tokens.push(t),this.pending="",t};ws.prototype.push=function(t,r,u){this.pending&&this.pushPending();const a=new Nt(t,r,u);let i=null;return u<0&&(this.level--,this.delimiters=this._prev_delimiters.pop()),a.level=this.level,u>0&&(this.level++,this._prev_delimiters.push(this.delimiters),this.delimiters=[],i={delimiters:this.delimiters}),this.pendingLevel=this.level,this.tokens.push(a),this.tokens_meta.push(i),a};ws.prototype.scanDelims=function(t,r){const u=this.posMax,a=this.src.charCodeAt(t);let i;if(t===0)i=32;else if(t===1)i=this.src.charCodeAt(0),(i&63488)===55296&&(i=65533);else if(i=this.src.charCodeAt(t-1),(i&64512)===56320){const A=this.src.charCodeAt(t-2);i=(A&64512)===55296?65536+(A-55296<<10)+(i-56320):65533}else(i&64512)===55296&&(i=65533);let l=t;for(;l<u&&this.src.charCodeAt(l)===a;)l++;const h=l-t;let f=l<u?this.src.charCodeAt(l):32;if((f&64512)===55296){const A=this.src.charCodeAt(l+1);f=(A&64512)===56320?65536+(f-55296<<10)+(A-56320):65533}else(f&64512)===56320&&(f=65533);const m=ms(i)||ps(i),x=ms(f)||ps(f),b=hs(i),y=hs(f),w=!y&&(!x||b||m),C=!b&&(!m||y||x);return{can_open:w&&(r||!C||m),can_close:C&&(r||!w||x),length:h}};ws.prototype.Token=Nt;function sx(t){switch(t){case 10:case 33:case 35:case 36:case 37:case 38:case 42:case 43:case 45:case 58:case 60:case 61:case 62:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 125:case 126:return!0;default:return!1}}function ux(t,r){let u=t.pos;for(;u<t.posMax&&!sx(t.src.charCodeAt(u));)u++;return u===t.pos?!1:(r||(t.pending+=t.src.slice(t.pos,u)),t.pos=u,!0)}const ox=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function ax(t,r){if(!t.md.options.linkify||t.linkLevel>0)return!1;const u=t.pos,a=t.posMax;if(u+3>a||t.src.charCodeAt(u)!==58||t.src.charCodeAt(u+1)!==47||t.src.charCodeAt(u+2)!==47)return!1;const i=t.pending.match(ox);if(!i)return!1;const l=i[1],h=t.md.linkify.matchAtStart(t.src.slice(u-l.length));if(!h)return!1;let f=h.url;if(f.length<=l.length)return!1;let m=f.length;for(;m>0&&f.charCodeAt(m-1)===42;)m--;m!==f.length&&(f=f.slice(0,m));const x=t.md.normalizeLink(f);if(!t.md.validateLink(x))return!1;if(!r){t.pending=t.pending.slice(0,-l.length);const b=t.push("link_open","a",1);b.attrs=[["href",x]],b.markup="linkify",b.info="auto";const y=t.push("text","",0);y.content=t.md.normalizeLinkText(f);const w=t.push("link_close","a",-1);w.markup="linkify",w.info="auto"}return t.pos+=f.length-l.length,!0}function ix(t,r){let u=t.pos;if(t.src.charCodeAt(u)!==10)return!1;const a=t.pending.length-1,i=t.posMax;if(!r)if(a>=0&&t.pending.charCodeAt(a)===32)if(a>=1&&t.pending.charCodeAt(a-1)===32){let l=a-1;for(;l>=1&&t.pending.charCodeAt(l-1)===32;)l--;t.pending=t.pending.slice(0,l),t.push("hardbreak","br",0)}else t.pending=t.pending.slice(0,-1),t.push("softbreak","br",0);else t.push("softbreak","br",0);for(u++;u<i&&ze(t.src.charCodeAt(u));)u++;return t.pos=u,!0}const Zi=[];for(let t=0;t<256;t++)Zi.push(0);"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach(function(t){Zi[t.charCodeAt(0)]=1});function lx(t,r){let u=t.pos;const a=t.posMax;if(t.src.charCodeAt(u)!==92||(u++,u>=a))return!1;let i=t.src.charCodeAt(u);if(i===10){for(r||t.push("hardbreak","br",0),u++;u<a&&(i=t.src.charCodeAt(u),!!ze(i));)u++;return t.pos=u,!0}let l=t.src[u];if(i>=55296&&i<=56319&&u+1<a){const f=t.src.charCodeAt(u+1);f>=56320&&f<=57343&&(l+=t.src[u+1],u++)}const h="\\"+l;if(!r){const f=t.push("text_special","",0);i<256&&Zi[i]!==0?f.content=l:f.content=h,f.markup=h,f.info="escape"}return t.pos=u+1,!0}function cx(t,r){let u=t.pos;if(t.src.charCodeAt(u)!==96)return!1;const i=u;u++;const l=t.posMax;for(;u<l&&t.src.charCodeAt(u)===96;)u++;const h=t.src.slice(i,u),f=h.length;if(t.backticksScanned&&(t.backticks[f]||0)<=i)return r||(t.pending+=h),t.pos+=f,!0;let m=u,x;for(;(x=t.src.indexOf("`",m))!==-1;){for(m=x+1;m<l&&t.src.charCodeAt(m)===96;)m++;const b=m-x;if(b===f){if(!r){const y=t.push("code_inline","code",0);y.markup=h,y.content=t.src.slice(u,x).replace(/\n/g," ").replace(/^ (.+) $/,"$1")}return t.pos=m,!0}t.backticks[b]=x}return t.backticksScanned=!0,r||(t.pending+=h),t.pos+=f,!0}function dx(t,r){const u=t.pos,a=t.src.charCodeAt(u);if(r||a!==126)return!1;const i=t.scanDelims(t.pos,!0);let l=i.length;const h=String.fromCharCode(a);if(l<2)return!1;let f;l%2&&(f=t.push("text","",0),f.content=h,l--);for(let m=0;m<l;m+=2)f=t.push("text","",0),f.content=h+h,t.delimiters.push({marker:a,length:0,token:t.tokens.length-1,end:-1,open:i.can_open,close:i.can_close});return t.pos+=i.length,!0}function M0(t,r){let u;const a=[],i=r.length;for(let l=0;l<i;l++){const h=r[l];if(h.marker!==126||h.end===-1)continue;const f=r[h.end];u=t.tokens[h.token],u.type="s_open",u.tag="s",u.nesting=1,u.markup="~~",u.content="",u=t.tokens[f.token],u.type="s_close",u.tag="s",u.nesting=-1,u.markup="~~",u.content="",t.tokens[f.token-1].type==="text"&&t.tokens[f.token-1].content==="~"&&a.push(f.token-1)}for(;a.length;){const l=a.pop();let h=l+1;for(;h<t.tokens.length&&t.tokens[h].type==="s_close";)h++;h--,l!==h&&(u=t.tokens[h],t.tokens[h]=t.tokens[l],t.tokens[l]=u)}}function fx(t){const r=t.tokens_meta,u=t.tokens_meta.length;M0(t,t.delimiters);for(let a=0;a<u;a++)r[a]&&r[a].delimiters&&M0(t,r[a].delimiters)}const Nf={tokenize:dx,postProcess:fx};function hx(t,r){const u=t.pos,a=t.src.charCodeAt(u);if(r||a!==95&&a!==42)return!1;const i=t.scanDelims(t.pos,a===42);for(let l=0;l<i.length;l++){const h=t.push("text","",0);h.content=String.fromCharCode(a),t.delimiters.push({marker:a,length:i.length,token:t.tokens.length-1,end:-1,open:i.can_open,close:i.can_close})}return t.pos+=i.length,!0}function O0(t,r){const u=r.length;for(let a=u-1;a>=0;a--){const i=r[a];if(i.marker!==95&&i.marker!==42||i.end===-1)continue;const l=r[i.end],h=a>0&&r[a-1].end===i.end+1&&r[a-1].marker===i.marker&&r[a-1].token===i.token-1&&r[i.end+1].token===l.token+1,f=String.fromCharCode(i.marker),m=t.tokens[i.token];m.type=h?"strong_open":"em_open",m.tag=h?"strong":"em",m.nesting=1,m.markup=h?f+f:f,m.content="";const x=t.tokens[l.token];x.type=h?"strong_close":"em_close",x.tag=h?"strong":"em",x.nesting=-1,x.markup=h?f+f:f,x.content="",h&&(t.tokens[r[a-1].token].content="",t.tokens[r[i.end+1].token].content="",a--)}}function px(t){const r=t.tokens_meta,u=t.tokens_meta.length;O0(t,t.delimiters);for(let a=0;a<u;a++)r[a]&&r[a].delimiters&&O0(t,r[a].delimiters)}const jf={tokenize:hx,postProcess:px};function mx(t,r){let u,a,i,l,h="",f="",m=t.pos,x=!0;if(t.src.charCodeAt(t.pos)!==91)return!1;const b=t.pos,y=t.posMax,w=t.pos+1,C=t.md.helpers.parseLinkLabel(t,t.pos,!0);if(C<0)return!1;let k=C+1;if(k<y&&t.src.charCodeAt(k)===40){for(x=!1,k++;k<y&&(u=t.src.charCodeAt(k),!(!ze(u)&&u!==10));k++);if(k>=y)return!1;if(m=k,i=t.md.helpers.parseLinkDestination(t.src,k,t.posMax),i.ok){for(h=t.md.normalizeLink(i.str),t.md.validateLink(h)?k=i.pos:h="",m=k;k<y&&(u=t.src.charCodeAt(k),!(!ze(u)&&u!==10));k++);if(i=t.md.helpers.parseLinkTitle(t.src,k,t.posMax),k<y&&m!==k&&i.ok)for(f=i.str,k=i.pos;k<y&&(u=t.src.charCodeAt(k),!(!ze(u)&&u!==10));k++);}(k>=y||t.src.charCodeAt(k)!==41)&&(x=!0),k++}if(x){if(typeof t.env.references>"u")return!1;if(k<y&&t.src.charCodeAt(k)===91?(m=k+1,k=t.md.helpers.parseLinkLabel(t,k),k>=0?a=t.src.slice(m,k++):k=C+1):k=C+1,a||(a=t.src.slice(w,C)),l=t.env.references[Xu(a)],!l)return t.pos=b,!1;h=l.href,f=l.title}if(!r){t.pos=w,t.posMax=C;const F=t.push("link_open","a",1),A=[["href",h]];F.attrs=A,f&&A.push(["title",f]),t.linkLevel++,t.md.inline.tokenize(t),t.linkLevel--,t.push("link_close","a",-1)}return t.pos=k,t.posMax=y,!0}function gx(t,r){let u,a,i,l,h,f,m,x,b="";const y=t.pos,w=t.posMax;if(t.src.charCodeAt(t.pos)!==33||t.src.charCodeAt(t.pos+1)!==91)return!1;const C=t.pos+2,k=t.md.helpers.parseLinkLabel(t,t.pos+1,!1);if(k<0)return!1;if(l=k+1,l<w&&t.src.charCodeAt(l)===40){for(l++;l<w&&(u=t.src.charCodeAt(l),!(!ze(u)&&u!==10));l++);if(l>=w)return!1;for(x=l,f=t.md.helpers.parseLinkDestination(t.src,l,t.posMax),f.ok&&(b=t.md.normalizeLink(f.str),t.md.validateLink(b)?l=f.pos:b=""),x=l;l<w&&(u=t.src.charCodeAt(l),!(!ze(u)&&u!==10));l++);if(f=t.md.helpers.parseLinkTitle(t.src,l,t.posMax),l<w&&x!==l&&f.ok)for(m=f.str,l=f.pos;l<w&&(u=t.src.charCodeAt(l),!(!ze(u)&&u!==10));l++);else m="";if(l>=w||t.src.charCodeAt(l)!==41)return t.pos=y,!1;l++}else{if(typeof t.env.references>"u")return!1;if(l<w&&t.src.charCodeAt(l)===91?(x=l+1,l=t.md.helpers.parseLinkLabel(t,l),l>=0?i=t.src.slice(x,l++):l=k+1):l=k+1,i||(i=t.src.slice(C,k)),h=t.env.references[Xu(i)],!h)return t.pos=y,!1;b=h.href,m=h.title}if(!r){a=t.src.slice(C,k);const F=[];t.md.inline.parse(a,t.md,t.env,F);const A=t.push("image","img",0),q=[["src",b],["alt",""]];A.attrs=q,A.children=F,A.content=a,m&&q.push(["title",m])}return t.pos=l,t.posMax=w,!0}const xx=/^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/,bx=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function yx(t,r){let u=t.pos;if(t.src.charCodeAt(u)!==60)return!1;const a=t.pos,i=t.posMax;for(;;){if(++u>=i)return!1;const h=t.src.charCodeAt(u);if(h===60)return!1;if(h===62)break}const l=t.src.slice(a+1,u);if(bx.test(l)){const h=t.md.normalizeLink(l);if(!t.md.validateLink(h))return!1;if(!r){const f=t.push("link_open","a",1);f.attrs=[["href",h]],f.markup="autolink",f.info="auto";const m=t.push("text","",0);m.content=t.md.normalizeLinkText(l);const x=t.push("link_close","a",-1);x.markup="autolink",x.info="auto"}return t.pos+=l.length+2,!0}if(xx.test(l)){const h=t.md.normalizeLink("mailto:"+l);if(!t.md.validateLink(h))return!1;if(!r){const f=t.push("link_open","a",1);f.attrs=[["href",h]],f.markup="autolink",f.info="auto";const m=t.push("text","",0);m.content=t.md.normalizeLinkText(l);const x=t.push("link_close","a",-1);x.markup="autolink",x.info="auto"}return t.pos+=l.length+2,!0}return!1}function vx(t){return/^<a[>\s]/i.test(t)}function wx(t){return/^<\/a\s*>/i.test(t)}function kx(t){const r=t|32;return r>=97&&r<=122}function _x(t,r){if(!t.md.options.html)return!1;const u=t.posMax,a=t.pos;if(t.src.charCodeAt(a)!==60||a+2>=u)return!1;const i=t.src.charCodeAt(a+1);if(i!==33&&i!==63&&i!==47&&!kx(i))return!1;const l=t.src.slice(a).match(X2);if(!l)return!1;if(!r){const h=t.push("html_inline","",0);h.content=l[0],vx(h.content)&&t.linkLevel++,wx(h.content)&&t.linkLevel--}return t.pos+=l[0].length,!0}const Cx=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,Ex=/^&([a-z][a-z0-9]{1,31});/i;function Sx(t,r){const u=t.pos,a=t.posMax;if(t.src.charCodeAt(u)!==38||u+1>=a)return!1;if(t.src.charCodeAt(u+1)===35){const l=t.src.slice(u).match(Cx);if(l){if(!r){const h=l[1][0].toLowerCase()==="x"?parseInt(l[1].slice(1),16):parseInt(l[1],10),f=t.push("text_special","",0);f.content=Ki(h)?fs(h):fs(65533),f.markup=l[0],f.info="entity"}return t.pos+=l[0].length,!0}}else{const l=t.src.slice(u).match(Ex);if(l){const h=Vg(l[0]);if(h!==l[0]){if(!r){const f=t.push("text_special","",0);f.content=h,f.markup=l[0],f.info="entity"}return t.pos+=l[0].length,!0}}}return!1}function I0(t){const r={},u=t.length;if(!u)return;let a=0,i=-2;const l=[];for(let h=0;h<u;h++){const f=t[h];if(l.push(0),(t[a].marker!==f.marker||i!==f.token-1)&&(a=h),i=f.token,f.length=f.length||0,!f.close)continue;r.hasOwnProperty(f.marker)||(r[f.marker]=[-1,-1,-1,-1,-1,-1]);const m=r[f.marker][(f.open?3:0)+f.length%3];let x=a-l[a]-1,b=x;for(;x>m;x-=l[x]+1){const y=t[x];if(y.marker===f.marker&&y.open&&y.end<0){let w=!1;if((y.close||f.open)&&(y.length+f.length)%3===0&&(y.length%3!==0||f.length%3!==0)&&(w=!0),!w){const C=x>0&&!t[x-1].open?l[x-1]+1:0;l[h]=h-x+C,l[x]=C,f.open=!1,y.end=h,y.close=!1,b=-1,i=-2;break}}}b!==-1&&(r[f.marker][(f.open?3:0)+(f.length||0)%3]=b)}}function zx(t){const r=t.tokens_meta,u=t.tokens_meta.length;I0(t.delimiters);for(let a=0;a<u;a++)r[a]&&r[a].delimiters&&I0(r[a].delimiters)}function Ax(t){let r,u,a=0;const i=t.tokens,l=t.tokens.length;for(r=u=0;r<l;r++)i[r].nesting<0&&a--,i[r].level=a,i[r].nesting>0&&a++,i[r].type==="text"&&r+1<l&&i[r+1].type==="text"?i[r+1].content=i[r].content+i[r+1].content:(r!==u&&(i[u]=i[r]),u++);r!==u&&(i.length=u)}const ii=[["text",ux],["linkify",ax],["newline",ix],["escape",lx],["backticks",cx],["strikethrough",Nf.tokenize],["emphasis",jf.tokenize],["link",mx],["image",gx],["autolink",yx],["html_inline",_x],["entity",Sx]],li=[["balance_pairs",zx],["strikethrough",Nf.postProcess],["emphasis",jf.postProcess],["fragments_join",Ax]];function ks(){this.ruler=new at;for(let t=0;t<ii.length;t++)this.ruler.push(ii[t][0],ii[t][1]);this.ruler2=new at;for(let t=0;t<li.length;t++)this.ruler2.push(li[t][0],li[t][1])}ks.prototype.skipToken=function(t){const r=t.pos,u=this.ruler.getRules(""),a=u.length,i=t.md.options.maxNesting,l=t.cache;if(typeof l[r]<"u"){t.pos=l[r];return}let h=!1;if(t.level<i){for(let f=0;f<a;f++)if(t.level++,h=u[f](t,!0),t.level--,h){if(r>=t.pos)throw new Error("inline rule didn't increment state.pos");break}}else t.pos=t.posMax;h||t.pos++,l[r]=t.pos};ks.prototype.tokenize=function(t){const r=this.ruler.getRules(""),u=r.length,a=t.posMax,i=t.md.options.maxNesting;for(;t.pos<a;){const l=t.pos;let h=!1;if(t.level<i){for(let f=0;f<u;f++)if(h=r[f](t,!1),h){if(l>=t.pos)throw new Error("inline rule didn't increment state.pos");break}}if(h){if(t.pos>=a)break;continue}t.pending+=t.src[t.pos++]}t.pending&&t.pushPending()};ks.prototype.parse=function(t,r,u,a){const i=new this.State(t,r,u,a);this.tokenize(i);const l=this.ruler2.getRules(""),h=l.length;for(let f=0;f<h;f++)l[f](i)};ks.prototype.State=ws;function Dx(t){const r={};t=t||{},r.src_Any=xf.source,r.src_Cc=bf.source,r.src_Z=vf.source,r.src_P=Wi.source,r.src_ZPCc=[r.src_Z,r.src_P,r.src_Cc].join("|"),r.src_ZCc=[r.src_Z,r.src_Cc].join("|");const u="[><|]";return r.src_pseudo_letter="(?:(?!"+u+"|"+r.src_ZPCc+")"+r.src_Any+")",r.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",r.src_auth="(?:(?:(?!"+r.src_ZCc+"|[@/\\[\\]()]).)+@)?",r.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?",r.src_host_terminator="(?=$|"+u+"|"+r.src_ZPCc+")(?!"+(t["---"]?"-(?!--)|":"-|")+"_|:\\d|\\.-|\\.(?!$|"+r.src_ZPCc+"))",r.src_path="(?:[/?#](?:(?!"+r.src_ZCc+"|"+u+`|[()[\\]{}.,"'?!\\-;]).|\\[(?:(?!`+r.src_ZCc+"|\\]).)*\\]|\\((?:(?!"+r.src_ZCc+"|[)]).)*\\)|\\{(?:(?!"+r.src_ZCc+'|[}]).)*\\}|\\"(?:(?!'+r.src_ZCc+`|["]).)+\\"|\\'(?:(?!`+r.src_ZCc+"|[']).)+\\'|\\'(?="+r.src_pseudo_letter+"|[-])|\\.{2,}[a-zA-Z0-9%/&]|\\.(?!"+r.src_ZCc+"|[.]|$)|"+(t["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+",(?!"+r.src_ZCc+"|$)|;(?!"+r.src_ZCc+"|$)|\\!+(?!"+r.src_ZCc+"|[!]|$)|\\?(?!"+r.src_ZCc+"|[?]|$))+|\\/)?",r.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*',r.src_xn="xn--[a-z0-9\\-]{1,59}",r.src_domain_root="(?:"+r.src_xn+"|"+r.src_pseudo_letter+"{1,63})",r.src_domain="(?:"+r.src_xn+"|(?:"+r.src_pseudo_letter+")|(?:"+r.src_pseudo_letter+"(?:-|"+r.src_pseudo_letter+"){0,61}"+r.src_pseudo_letter+"))",r.src_host="(?:(?:(?:(?:"+r.src_domain+")\\.)*"+r.src_domain+"))",r.tpl_host_fuzzy="(?:"+r.src_ip4+"|(?:(?:(?:"+r.src_domain+")\\.)+(?:%TLDS%)))",r.tpl_host_no_ip_fuzzy="(?:(?:(?:"+r.src_domain+")\\.)+(?:%TLDS%))",r.src_host_strict=r.src_host+r.src_host_terminator,r.tpl_host_fuzzy_strict=r.tpl_host_fuzzy+r.src_host_terminator,r.src_host_port_strict=r.src_host+r.src_port+r.src_host_terminator,r.tpl_host_port_fuzzy_strict=r.tpl_host_fuzzy+r.src_port+r.src_host_terminator,r.tpl_host_port_no_ip_fuzzy_strict=r.tpl_host_no_ip_fuzzy+r.src_port+r.src_host_terminator,r.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+r.src_ZPCc+"|>|$))",r.tpl_email_fuzzy="(^|"+u+'|"|\\(|'+r.src_ZCc+")("+r.src_email_name+"@"+r.tpl_host_fuzzy_strict+")",r.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+r.src_ZPCc+"))((?![$+<=>^`||])"+r.tpl_host_port_fuzzy_strict+r.src_path+")",r.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+r.src_ZPCc+"))((?![$+<=>^`||])"+r.tpl_host_port_no_ip_fuzzy_strict+r.src_path+")",r}function Fi(t){return Array.prototype.slice.call(arguments,1).forEach(function(u){u&&Object.keys(u).forEach(function(a){t[a]=u[a]})}),t}function to(t){return Object.prototype.toString.call(t)}function Nx(t){return to(t)==="[object String]"}function jx(t){return to(t)==="[object Object]"}function Fx(t){return to(t)==="[object RegExp]"}function R0(t){return to(t)==="[object Function]"}function Tx(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const Ff={fuzzyLink:!0,fuzzyEmail:!0,fuzzyIP:!1};function Px(t){return Object.keys(t||{}).reduce(function(r,u){return r||Ff.hasOwnProperty(u)},!1)}const Mx={"http:":{validate:function(t,r,u){const a=t.slice(r);return u.re.http||(u.re.http=new RegExp("^\\/\\/"+u.re.src_auth+u.re.src_host_port_strict+u.re.src_path,"i")),u.re.http.test(a)?a.match(u.re.http)[0].length:0}},"https:":"http:","ftp:":"http:","//":{validate:function(t,r,u){const a=t.slice(r);return u.re.no_http||(u.re.no_http=new RegExp("^"+u.re.src_auth+"(?:localhost|(?:(?:"+u.re.src_domain+")\\.)+"+u.re.src_domain_root+")"+u.re.src_port+u.re.src_host_terminator+u.re.src_path,"i")),u.re.no_http.test(a)?r>=3&&t[r-3]===":"||r>=3&&t[r-3]==="/"?0:a.match(u.re.no_http)[0].length:0}},"mailto:":{validate:function(t,r,u){const a=t.slice(r);return u.re.mailto||(u.re.mailto=new RegExp("^"+u.re.src_email_name+"@"+u.re.src_host_strict,"i")),u.re.mailto.test(a)?a.match(u.re.mailto)[0].length:0}}},Ox="a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]",Ix="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Rx(t){return function(r,u){const a=r.slice(u);return t.test(a)?a.match(t)[0].length:0}}function L0(){return function(t,r){r.normalize(t)}}function Gu(t){const r=t.re=Dx(t.__opts__),u=t.__tlds__.slice();t.onCompile(),t.__tlds_replaced__||u.push(Ox),u.push(r.src_xn),r.src_tlds=u.join("|");function a(f){return f.replace("%TLDS%",r.src_tlds)}r.email_fuzzy=RegExp(a(r.tpl_email_fuzzy),"i"),r.email_fuzzy_global=RegExp(a(r.tpl_email_fuzzy),"ig"),r.link_fuzzy=RegExp(a(r.tpl_link_fuzzy),"i"),r.link_fuzzy_global=RegExp(a(r.tpl_link_fuzzy),"ig"),r.link_no_ip_fuzzy=RegExp(a(r.tpl_link_no_ip_fuzzy),"i"),r.link_no_ip_fuzzy_global=RegExp(a(r.tpl_link_no_ip_fuzzy),"ig"),r.host_fuzzy_test=RegExp(a(r.tpl_host_fuzzy_test),"i");const i=[];t.__compiled__={};function l(f,m){throw new Error('(LinkifyIt) Invalid schema "'+f+'": '+m)}Object.keys(t.__schemas__).forEach(function(f){const m=t.__schemas__[f];if(m===null)return;const x={validate:null,link:null};if(t.__compiled__[f]=x,jx(m)){Fx(m.validate)?x.validate=Rx(m.validate):R0(m.validate)?x.validate=m.validate:l(f,m),R0(m.normalize)?x.normalize=m.normalize:m.normalize?l(f,m):x.normalize=L0();return}if(Nx(m)){i.push(f);return}l(f,m)}),i.forEach(function(f){t.__compiled__[t.__schemas__[f]]&&(t.__compiled__[f].validate=t.__compiled__[t.__schemas__[f]].validate,t.__compiled__[f].normalize=t.__compiled__[t.__schemas__[f]].normalize)}),t.__compiled__[""]={validate:null,normalize:L0()};const h=Object.keys(t.__compiled__).filter(function(f){return f.length>0&&t.__compiled__[f]}).map(Tx).join("|");t.re.schema_test=RegExp("(^|(?!_)(?:[><|]|"+r.src_ZPCc+"))("+h+")","i"),t.re.schema_search=RegExp("(^|(?!_)(?:[><|]|"+r.src_ZPCc+"))("+h+")","ig"),t.re.schema_at_start=RegExp("^"+t.re.schema_search.source,"i"),t.re.pretest=RegExp("("+t.re.schema_test.source+")|("+t.re.host_fuzzy_test.source+")|@","i")}function Tf(t,r,u,a){const i=t.slice(u,a);this.schema=r.toLowerCase(),this.index=u,this.lastIndex=a,this.raw=i,this.text=i,this.url=i}function pt(t,r){if(!(this instanceof pt))return new pt(t,r);r||Px(t)&&(r=t,t={}),this.__opts__=Fi({},Ff,r),this.__schemas__=Fi({},Mx,t),this.__compiled__={},this.__tlds__=Ix,this.__tlds_replaced__=!1,this.re={},Gu(this)}pt.prototype.add=function(r,u){return this.__schemas__[r]=u,Gu(this),this};pt.prototype.set=function(r){return this.__opts__=Fi(this.__opts__,r),this};pt.prototype.test=function(r){if(!r.length)return!1;let u,a;if(this.re.schema_test.test(r)){for(a=this.re.schema_search,a.lastIndex=0;(u=a.exec(r))!==null;)if(this.testSchemaAt(r,u[2],a.lastIndex))return!0}return!!(this.__opts__.fuzzyLink&&this.__compiled__["http:"]&&r.search(this.re.host_fuzzy_test)>=0&&r.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy)!==null||this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"]&&r.indexOf("@")>=0&&r.match(this.re.email_fuzzy)!==null)};pt.prototype.pretest=function(r){return this.re.pretest.test(r)};pt.prototype.testSchemaAt=function(r,u,a){return this.__compiled__[u.toLowerCase()]?this.__compiled__[u.toLowerCase()].validate(r,a,this):0};pt.prototype.match=function(r){const u=[],a=[],i=[],l=[];let h,f,m;function x(w,C){return w?C?w.index!==C.index?w.index<C.index?w:C:w.lastIndex>=C.lastIndex?w:C:w:C}if(!r.length)return null;if(this.re.schema_test.test(r))for(m=this.re.schema_search,m.lastIndex=0;(h=m.exec(r))!==null;)f=this.testSchemaAt(r,h[2],m.lastIndex),f&&a.push({schema:h[2],index:h.index+h[1].length,lastIndex:h.index+h[0].length+f});if(this.__opts__.fuzzyLink&&this.__compiled__["http:"])for(m=this.__opts__.fuzzyIP?this.re.link_fuzzy_global:this.re.link_no_ip_fuzzy_global,m.lastIndex=0;(h=m.exec(r))!==null;)i.push({schema:"",index:h.index+h[1].length,lastIndex:h.index+h[0].length});if(this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"])for(m=this.re.email_fuzzy_global,m.lastIndex=0;(h=m.exec(r))!==null;)l.push({schema:"mailto:",index:h.index+h[1].length,lastIndex:h.index+h[0].length});const b=[0,0,0];let y=0;for(;;){const w=[a[b[0]],l[b[1]],i[b[2]]],C=x(x(w[0],w[1]),w[2]);if(!C)break;if(C===w[0]?b[0]++:C===w[1]?b[1]++:b[2]++,C.index<y)continue;const k=new Tf(r,C.schema,C.index,C.lastIndex);this.__compiled__[k.schema].normalize(k,this),u.push(k),y=C.lastIndex}return u.length?u:null};pt.prototype.matchAtStart=function(r){if(!r.length)return null;const u=this.re.schema_at_start.exec(r);if(!u)return null;const a=this.testSchemaAt(r,u[2],u[0].length);if(!a)return null;const i=new Tf(r,u[2],u.index+u[1].length,u.index+u[0].length+a);return this.__compiled__[i.schema].normalize(i,this),i};pt.prototype.tlds=function(r,u){return r=Array.isArray(r)?r:[r],u?(this.__tlds__=this.__tlds__.concat(r).sort().filter(function(a,i,l){return a!==l[i-1]}).reverse(),Gu(this),this):(this.__tlds__=r.slice(),this.__tlds_replaced__=!0,Gu(this),this)};pt.prototype.normalize=function(r){r.schema||(r.url="http://"+r.url),r.schema==="mailto:"&&!/^mailto:/i.test(r.url)&&(r.url="mailto:"+r.url)};pt.prototype.onCompile=function(){};const hr=2147483647,It=36,Yi=1,gs=26,Lx=38,Bx=700,Pf=72,Mf=128,Of="-",Ux=/^xn--/,$x=/[^\0-\x7F]/,Hx=/[\x2E\u3002\uFF0E\uFF61]/g,qx={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},ci=It-Yi,Rt=Math.floor,di=String.fromCharCode;function yn(t){throw new RangeError(qx[t])}function Vx(t,r){const u=[];let a=t.length;for(;a--;)u[a]=r(t[a]);return u}function If(t,r){const u=t.split("@");let a="";u.length>1&&(a=u[0]+"@",t=u[1]),t=t.replace(Hx,".");const i=t.split("."),l=Vx(i,r).join(".");return a+l}function Rf(t){const r=[];let u=0;const a=t.length;for(;u<a;){const i=t.charCodeAt(u++);if(i>=55296&&i<=56319&&u<a){const l=t.charCodeAt(u++);(l&64512)==56320?r.push(((i&1023)<<10)+(l&1023)+65536):(r.push(i),u--)}else r.push(i)}return r}const Wx=t=>String.fromCodePoint(...t),Gx=function(t){return t>=48&&t<58?26+(t-48):t>=65&&t<91?t-65:t>=97&&t<123?t-97:It},B0=function(t,r){return t+22+75*(t<26)-((r!=0)<<5)},Lf=function(t,r,u){let a=0;for(t=u?Rt(t/Bx):t>>1,t+=Rt(t/r);t>ci*gs>>1;a+=It)t=Rt(t/ci);return Rt(a+(ci+1)*t/(t+Lx))},Bf=function(t){const r=[],u=t.length;let a=0,i=Mf,l=Pf,h=t.lastIndexOf(Of);h<0&&(h=0);for(let f=0;f<h;++f)t.charCodeAt(f)>=128&&yn("not-basic"),r.push(t.charCodeAt(f));for(let f=h>0?h+1:0;f<u;){const m=a;for(let b=1,y=It;;y+=It){f>=u&&yn("invalid-input");const w=Gx(t.charCodeAt(f++));w>=It&&yn("invalid-input"),w>Rt((hr-a)/b)&&yn("overflow"),a+=w*b;const C=y<=l?Yi:y>=l+gs?gs:y-l;if(w<C)break;const k=It-C;b>Rt(hr/k)&&yn("overflow"),b*=k}const x=r.length+1;l=Lf(a-m,x,m==0),Rt(a/x)>hr-i&&yn("overflow"),i+=Rt(a/x),a%=x,r.splice(a++,0,i)}return String.fromCodePoint(...r)},Uf=function(t){const r=[];t=Rf(t);const u=t.length;let a=Mf,i=0,l=Pf;for(const m of t)m<128&&r.push(di(m));const h=r.length;let f=h;for(h&&r.push(Of);f<u;){let m=hr;for(const b of t)b>=a&&b<m&&(m=b);const x=f+1;m-a>Rt((hr-i)/x)&&yn("overflow"),i+=(m-a)*x,a=m;for(const b of t)if(b<a&&++i>hr&&yn("overflow"),b===a){let y=i;for(let w=It;;w+=It){const C=w<=l?Yi:w>=l+gs?gs:w-l;if(y<C)break;const k=y-C,F=It-C;r.push(di(B0(C+k%F,0))),y=Rt(k/F)}r.push(di(B0(y,0))),l=Lf(i,x,f===h),i=0,++f}++i,++a}return r.join("")},Kx=function(t){return If(t,function(r){return Ux.test(r)?Bf(r.slice(4).toLowerCase()):r})},Qx=function(t){return If(t,function(r){return $x.test(r)?"xn--"+Uf(r):r})},$f={version:"2.3.1",ucs2:{decode:Rf,encode:Wx},decode:Bf,encode:Uf,toASCII:Qx,toUnicode:Kx},Zx={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}},Yx={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","fragments_join"]}}},Xx={options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","fragments_join"]}}},Jx={default:Zx,zero:Yx,commonmark:Xx},eb=/^(vbscript|javascript|file|data):/,tb=/^data:image\/(gif|png|jpeg|webp);/;function nb(t){const r=t.trim().toLowerCase();return eb.test(r)?tb.test(r):!0}const Hf=["http:","https:","mailto:"];function rb(t){const r=Vi(t,!0);if(r.hostname&&(!r.protocol||Hf.indexOf(r.protocol)>=0))try{r.hostname=$f.toASCII(r.hostname)}catch{}return vs(qi(r))}function sb(t){const r=Vi(t,!0);if(r.hostname&&(!r.protocol||Hf.indexOf(r.protocol)>=0))try{r.hostname=$f.toUnicode(r.hostname)}catch{}return mr(qi(r),mr.defaultChars+"%")}function kt(t,r){if(!(this instanceof kt))return new kt(t,r);r||Gi(t)||(r=t||{},t="default"),this.inline=new ks,this.block=new eo,this.core=new Qi,this.renderer=new yr,this.linkify=new pt,this.validateLink=nb,this.normalizeLink=rb,this.normalizeLinkText=sb,this.utils=a2,this.helpers=Yu({},d2),this.options={},this.configure(t),r&&this.set(r)}kt.prototype.set=function(t){return Yu(this.options,t),this};kt.prototype.configure=function(t){const r=this;if(Gi(t)){const u=t;if(t=Jx[u],!t)throw new Error('Wrong `markdown-it` preset "'+u+'", check name')}if(!t)throw new Error("Wrong `markdown-it` preset, can't be empty");return t.options&&r.set(t.options),t.components&&Object.keys(t.components).forEach(function(u){t.components[u].rules&&r[u].ruler.enableOnly(t.components[u].rules),t.components[u].rules2&&r[u].ruler2.enableOnly(t.components[u].rules2)}),this};kt.prototype.enable=function(t,r){let u=[];Array.isArray(t)||(t=[t]),["core","block","inline"].forEach(function(i){u=u.concat(this[i].ruler.enable(t,!0))},this),u=u.concat(this.inline.ruler2.enable(t,!0));const a=t.filter(function(i){return u.indexOf(i)<0});if(a.length&&!r)throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+a);return this};kt.prototype.disable=function(t,r){let u=[];Array.isArray(t)||(t=[t]),["core","block","inline"].forEach(function(i){u=u.concat(this[i].ruler.disable(t,!0))},this),u=u.concat(this.inline.ruler2.disable(t,!0));const a=t.filter(function(i){return u.indexOf(i)<0});if(a.length&&!r)throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+a);return this};kt.prototype.use=function(t){const r=[this].concat(Array.prototype.slice.call(arguments,1));return t.apply(t,r),this};kt.prototype.parse=function(t,r){if(typeof t!="string")throw new Error("Input data should be a String");const u=new this.core.State(t,this,r);return this.core.process(u),u.tokens};kt.prototype.render=function(t,r){return r=r||{},this.renderer.render(this.parse(t,r),this.options,r)};kt.prototype.parseInline=function(t,r){const u=new this.core.State(t,this,r);return u.inlineMode=!0,this.core.process(u),u.tokens};kt.prototype.renderInline=function(t,r){return r=r||{},this.renderer.render(this.parseInline(t,r),this.options,r)};const ub=new kt({html:!1,linkify:!0,breaks:!1,langPrefix:"language-"});function U0(t){return ub.render(t??"")}const ob={skill:"技能",plugin:"插件",mcp:"MCP","mcp-tool":"MCP 工具",runbook:"手册",instruction:"规则",config:"配置",doc:"文档","agent-rule":"Agent 规则"},ab={skill:"技能",mcp:"MCP 服务",app:"应用",interactive:"可交互",write:"可写入"},ib={productivity:"效率工具"},lb={build:"构建",deploy:"部署",sites:"建站",website:"网站","landing page":"落地页",portfolio:"作品集",dashboard:"仪表盘","kpi dashboard":"KPI 仪表盘",portal:"门户",tracker:"追踪",hub:"中心","internal tool":"内部工具",games:"游戏"};function qf(t){return!t.plugin||!t.description?"":t.name==="sites"&&/build and deploy websites with sites/i.test(t.description)?"使用 Sites 构建和部署网站":""}function xr(t){return t?ob[t]??t:""}function Xi(t){const r=ab[t.kind]??t.kind;return t.count&&t.count>1?`${r} ${t.count}`:r}function Vf(t){return t?ib[t.toLowerCase()]??t:""}function cb(t){if(!t.plugin)return"";const r=(t.plugin.capabilities??[]).map(Xi),u=Vf(t.plugin.category),a=(t.tags??[]).map(i=>lb[i.toLowerCase()]??"");return[...r,u,...a].filter(Boolean).join(" ").toLowerCase()}const Wf="skillhelper_translate_display";function Ji(){try{const t=localStorage.getItem(Wf);return t===null?!0:t==="1"}catch{return!0}}function db(t){try{localStorage.setItem(Wf,t?"1":"0")}catch{}}function Gf(t){var u,a;const r=t.description||"";return Ji()&&(((a=(u=t.i18n)==null?void 0:u.zh)==null?void 0:a.description)||qf(t))||r}function fb(t){return qf(t)}function hb({item:t}){const r=t.plugin;return r?p.jsxs("section",{className:"mt-5 rounded-md border border-border bg-background/60 p-4",children:[p.jsx("h3",{className:"text-body-sm font-semibold text-foreground",children:"插件能力"}),p.jsxs("dl",{className:"mt-3 grid grid-cols-[auto_1fr] gap-x-3 gap-y-2 text-body-sm",children:[r.version&&p.jsxs(p.Fragment,{children:[p.jsx("dt",{className:"text-muted-foreground",children:"版本"}),p.jsx("dd",{children:r.version})]}),r.author&&p.jsxs(p.Fragment,{children:[p.jsx("dt",{className:"text-muted-foreground",children:"开发者"}),p.jsx("dd",{children:r.author})]}),r.category&&p.jsxs(p.Fragment,{children:[p.jsx("dt",{className:"text-muted-foreground",children:"分类"}),p.jsx("dd",{children:Vf(r.category)})]}),r.homepage&&p.jsxs(p.Fragment,{children:[p.jsx("dt",{className:"text-muted-foreground",children:"官网"}),p.jsx("dd",{children:p.jsx("a",{className:"text-primary underline-offset-2 hover:underline",href:r.homepage,target:"_blank",rel:"noreferrer",children:"打开官网"})})]}),p.jsx("dt",{className:"text-muted-foreground",children:"清单"}),p.jsx("dd",{className:"break-all font-mono text-caption",children:r.manifestPath})]}),r.capabilities.length>0&&p.jsx("div",{className:"mt-4 flex flex-wrap gap-1.5",children:r.capabilities.map(u=>p.jsx("span",{className:"rounded-sm bg-sky-500/10 px-2 py-1 text-caption text-sky-700 dark:text-sky-300",children:Xi(u)},u.kind))}),r.defaultPrompts&&r.defaultPrompts.length>0&&p.jsxs("div",{className:"mt-4 border-t border-border pt-3",children:[p.jsx("p",{className:"text-caption font-semibold text-muted-foreground",children:"示例提示词"}),p.jsx("ul",{className:"mt-2 space-y-1 text-body-sm text-muted-foreground",children:r.defaultPrompts.map(u=>p.jsxs("li",{children:["- ",u]},u))})]})]}):null}function pb({item:t,variant:r="full"}){var K,ve,fe,ie,_e;const[u,a]=G.useState(""),[i,l]=G.useState("loading"),[h]=G.useState(()=>Ji()),[f,m]=G.useState(h?"zh":"raw"),[x,b]=G.useState(null),[y,w]=G.useState("idle"),[C,k]=G.useState(null),[F,A]=G.useState(""),[q,I]=G.useState(""),T=G.useRef(null),R=G.useRef(null);G.useEffect(()=>{let le=!0;return l("loading"),a(""),A(""),I(""),Hi(t.id).then(async $=>{var V,S;if(!le||(a($.raw??""),l("ready"),!h))return;const Q=$.title||$.name;if(Q&&w0(Q).then(P=>{le&&P.ok&&P.result&&P.result!==Q&&I(P.result)}).catch(()=>{}),$.description&&!((S=(V=$.i18n)==null?void 0:V.zh)!=null&&S.description))try{const P=await w0($.description);le&&P.ok&&P.result&&P.result!==$.description&&A(P.result)}catch{}}).catch(()=>{le&&l("error")}),()=>{le=!1}},[t.id,h]),G.useEffect(()=>{R.current&&(R.current.abort(),R.current=null),b(null),w("idle"),k(null),m(h?"zh":"raw")},[t.id,h]),G.useEffect(()=>{if(f!=="zh"||i!=="ready"||!u.trim()||T.current===t.id)return;const le=new AbortController;R.current=le;let $=!0;return w("loading"),k(null),yg(t.id,{signal:le.signal,onProgress:Q=>{$&&k(Q)}}).then(Q=>{$&&(b(Q.segments||[]),w("ready"),k(null),T.current=t.id)}).catch(Q=>{$&&(Q instanceof Error&&Q.name==="AbortError"||w("error"))}),()=>{$=!1,le.abort()}},[f,i,u,t.id]);const j=(x==null?void 0:x.map(le=>le.translated).join(`
|
|
257
|
+
|
|
258
|
+
`))??"",U=h&&i==="ready"&&u.trim().length>0,Y=((ve=(K=t.i18n)==null?void 0:K.zh)==null?void 0:ve.description)||F||"",ne=t.title||t.name,ee=((ie=(fe=t.i18n)==null?void 0:fe.zh)==null?void 0:ie.name)||q||"",L=ee&&ee!==ne,ue=()=>{if(f==="raw")return p.jsx("div",{className:"markdown-body",dangerouslySetInnerHTML:{__html:U0(u)}});const le=y==="ready"&&j.trim().length>0;return p.jsxs(p.Fragment,{children:[y==="loading"&&p.jsx("p",{className:"mb-2 text-caption text-muted-foreground",children:C?`翻译中(${C.done}/${C.total} 段)…`:"翻译中,先显示原文…"}),y==="error"&&p.jsx("p",{className:"mb-2 text-caption text-destructive",children:"翻译失败,显示原文"}),p.jsx("div",{className:"markdown-body",dangerouslySetInnerHTML:{__html:U0(le?j:u)}})]})};return p.jsxs("div",{className:"detail",children:[p.jsxs("h2",{className:"text-h3 text-foreground",children:[ne,L&&p.jsxs("span",{className:"ml-2 text-body-sm font-normal text-muted-foreground",children:["(",ee,")"]})]}),p.jsx("p",{className:"mt-2 text-body-sm text-muted-foreground",children:f==="zh"?Y||fb(t)||t.description||"(无描述)":t.description||"(无描述)"}),p.jsx(hb,{item:t}),r==="full"&&p.jsxs(p.Fragment,{children:[p.jsxs("dl",{className:"mt-4 grid grid-cols-[auto_1fr] gap-x-4 gap-y-2 text-body-sm",children:[p.jsx("dt",{className:"text-muted-foreground",children:"类型"}),p.jsx("dd",{children:xr(t.kind)}),p.jsx("dt",{className:"text-muted-foreground",children:"来源"}),p.jsx("dd",{children:Ot(kn(t))}),p.jsx("dt",{className:"text-muted-foreground",children:"路径"}),p.jsx("dd",{className:"break-all font-mono text-caption",children:(_e=t.paths)==null?void 0:_e.abs})]}),p.jsxs("div",{className:"mt-5 flex flex-wrap gap-2",children:[p.jsx(wt,{label:"复制路径",onAction:()=>vn(t.id,"path")}),p.jsx(wt,{label:"复制名称",onAction:()=>vn(t.id,"name")}),p.jsx(wt,{label:"复制正文",onAction:()=>vn(t.id,"raw")}),p.jsx(wt,{label:"复制调用提示",onAction:()=>vn(t.id,"prompt")}),p.jsx(wt,{label:"打开",onAction:()=>Vu(t.id,"default")}),p.jsx(wt,{label:"在访达显示",onAction:()=>Vu(t.id,"finder")})]})]}),p.jsxs("div",{className:"mt-6 border-t border-border pt-5",children:[i==="loading"&&p.jsx("p",{className:"text-body-sm text-muted-foreground",children:"加载正文…"}),i==="error"&&p.jsx("p",{className:"text-body-sm text-destructive",children:"正文加载失败"}),i==="ready"&&!u.trim()&&p.jsx("p",{className:"text-body-sm text-muted-foreground",children:"(无正文内容)"}),i==="ready"&&u.trim()&&p.jsxs(p.Fragment,{children:[U&&p.jsxs("div",{className:"mb-3 inline-flex rounded-md bg-muted p-1 text-body-sm",children:[p.jsx("button",{onClick:()=>m("zh"),className:Se("rounded-sm px-3 py-1 transition-colors",f==="zh"?"bg-card text-primary shadow-sm":"text-muted-foreground"),children:"中文"}),p.jsx("button",{onClick:()=>m("raw"),className:Se("rounded-sm px-3 py-1 transition-colors",f==="raw"?"bg-card text-primary shadow-sm":"text-muted-foreground"),children:"原文"})]}),ue()]})]})]})}const mb={hermes:{icon:"⚡",label:"Hermes",colorClass:"text-purple-500"},claude:{icon:"🤖",label:"Claude",colorClass:"text-blue-500"},cursor:{icon:"📝",label:"Cursor",colorClass:"text-amber-500"},codex:{icon:"💡",label:"Codex",colorClass:"text-yellow-500"}},$0={tool:{icon:"🔧",label:"官方工具",colorClass:"text-blue-600"},directory:{icon:"📁",label:"自定义技能",colorClass:"text-emerald-600"},other:{icon:"⚙️",label:"其它技能",colorClass:"text-slate-500"}},gb={tool:1,directory:2,other:3};function xb(t){switch(t.tierId){case"tier-1":return"tool";case"tier-2":return"directory";case"tier-3":return"other"}switch(t.tier){case"tool":case"tier-1":return"tool";case"directory":case"tier-2":return"directory";case"other":case"tier-3":return"other";default:return"other"}}function no(t){const r=xb(t),u=t.brand||t.editorBrand||"other",a=t.dirName||t.name,i=$0[r]||$0.other,l=r==="tool"?mb[u]||{icon:"🔧"}:null;let h;return r==="tool"&&l?h=`${l.icon} ${t.name}`:r==="directory"?h=`${i.icon} ${a}`:h=`${i.icon} ${t.name}`,{tierIcon:i.icon,tierLabel:i.label,brandIcon:(l==null?void 0:l.icon)||i.icon,displayLabel:h,isTier1:r==="tool",isTier2:r==="directory",isTier3:r==="other",tierSort:gb[r]||99}}const bb=[{key:null,label:"全部"},{key:"tier-1",label:"官方工具"},{key:"tier-2",label:"自定义技能"},{key:"tier-3",label:"其它技能"}];function Kf({item:t,size:r=20}){const u=no(t),a=t.brand||t.editorBrand,i=u.isTier1?a:null;return p.jsx(Oi,{brand:i,src:t.iconUrl,size:r,label:t.title||t.name,className:"bg-transparent",fallbackClassName:"bg-muted"})}function yb(t){if(!t)return"未记录";const r=new Date(t);return Number.isNaN(r.getTime())?"未记录":r.toLocaleDateString("zh-CN",{month:"2-digit",day:"2-digit"})}function vb(t){return Array.isArray(t.category)?t.category.filter(Boolean):t.category?[t.category]:[]}function wb(t){const r=no(t);return Ot(kn(t))!==r.tierLabel}function kb({item:t,compact:r=!1}){var a;const u=((a=t.plugin)==null?void 0:a.capabilities)??[];return u.length?p.jsx(p.Fragment,{children:u.map(i=>p.jsx("span",{className:Se("rounded-sm bg-sky-500/10 text-caption text-sky-700 dark:text-sky-300",r?"px-1.5 py-0.5":"px-2 py-1"),children:Xi(i)},`${t.id}:${i.kind}`))}):null}function fi(t){if(t.tierId)return t.tierId;switch(t.tier){case"tool":case"tier-1":return"tier-1";case"directory":case"tier-2":return"tier-2";case"other":case"tier-3":return"tier-3";default:return"tier-3"}}function _b(t,r){return r===null?t:ls(r)?t.filter(u=>ls(kn(u))):t.filter(u=>kn(u)===r)}function Cb(t){return(t??"").trim().toLowerCase()}function Eb(t){var r,u;return[t.title,t.name,(u=(r=t.i18n)==null?void 0:r.zh)==null?void 0:u.name].map(Cb).filter(Boolean)}function Sb(t,r){const u=Eb(t);return u.some(a=>a===r)?0:u.some(a=>a.startsWith(r))?1:u.some(a=>a.includes(r))?2:cb(t).includes(r)?3:null}function H0(t){return t.title||t.name}function zb({item:t}){var l;const r=no(t),u=vb(t),a=t.tags??[],i="h-9 justify-start px-2.5";return p.jsxs("section",{className:"rounded-md border border-border bg-card text-card-foreground",children:[p.jsxs("div",{className:"grid gap-4 px-4 py-4 xl:grid-cols-[minmax(220px,0.9fr)_minmax(260px,1fr)_minmax(280px,1.1fr)] xl:items-start",children:[p.jsxs("div",{className:"min-w-0",children:[p.jsx("p",{className:"text-caption font-semibold text-muted-foreground",children:"当前条目"}),p.jsxs("div",{className:"mt-2 flex items-start gap-3",children:[p.jsx(Kf,{item:t,size:32}),p.jsxs("div",{className:"min-w-0",children:[p.jsx("h3",{className:"truncate text-body font-semibold text-foreground",children:t.title||t.name}),p.jsx("p",{className:"mt-1 text-caption text-muted-foreground",children:r.tierLabel})]})]})]}),p.jsxs("dl",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-2 text-body-sm",children:[p.jsx("dt",{className:"text-muted-foreground",children:"类型"}),p.jsx("dd",{children:xr(t.kind)}),p.jsx("dt",{className:"text-muted-foreground",children:"来源"}),p.jsx("dd",{className:"min-w-0 truncate",children:Ot(kn(t))}),p.jsx("dt",{className:"text-muted-foreground",children:"更新"}),p.jsx("dd",{className:"font-mono text-caption",children:yb(t.updatedAt)}),p.jsx("dt",{className:"text-muted-foreground",children:"路径"}),p.jsx("dd",{className:"min-w-0 break-all font-mono text-caption leading-relaxed text-muted-foreground",children:((l=t.paths)==null?void 0:l.abs)??"未记录"})]}),p.jsxs("div",{children:[p.jsx("p",{className:"mb-2 text-caption font-semibold text-muted-foreground",children:"操作"}),p.jsxs("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-3 xl:grid-cols-2",children:[p.jsx(wt,{className:i,icon:p.jsx(fm,{size:14}),label:"复制路径",onAction:()=>vn(t.id,"path")}),p.jsx(wt,{className:i,icon:p.jsx(zm,{size:14}),label:"复制名称",onAction:()=>vn(t.id,"name")}),p.jsx(wt,{className:i,icon:p.jsx(X0,{size:14}),label:"复制正文",onAction:()=>vn(t.id,"raw")}),p.jsx(wt,{className:i,icon:p.jsx(wm,{size:14}),label:"调用提示",onAction:()=>vn(t.id,"prompt")}),p.jsx(wt,{className:i,icon:p.jsx(pm,{size:14}),label:"打开",onAction:()=>Vu(t.id,"default")}),p.jsx(wt,{className:i,icon:p.jsx(mm,{size:14}),label:"访达显示",onAction:()=>Vu(t.id,"finder")})]})]})]}),(u.length>0||a.length>0)&&p.jsxs("div",{className:"border-t border-border px-4 py-3",children:[p.jsx("p",{className:"mb-2 text-caption font-semibold text-muted-foreground",children:"分类与标签"}),p.jsxs("div",{className:"flex flex-wrap gap-1.5",children:[u.map(h=>p.jsx("span",{className:"rounded-sm bg-primary-soft px-2 py-1 text-caption text-primary",children:h},`category:${h}`)),a.map(h=>p.jsx("span",{className:"rounded-sm bg-muted px-2 py-1 text-caption text-muted-foreground",children:h},`tag:${h}`))]})]})]})}function Ab({items:t,editorFilter:r,onEditorFilter:u,tierFilter:a=null,onTier:i,query:l,onQuery:h,kindFilter:f,onKind:m,selectedId:x,onSelect:b}){const y=G.useMemo(()=>{const j=a?t.filter(L=>fi(L)===a):t,U=new Map;for(const L of j){const ue=kn(L);U.set(ue,(U.get(ue)??0)+1)}const Y=new Set($u),ne=[...U.entries()].filter(([L])=>!Y.has(L)).sort((L,ue)=>ue[1]-L[1]||Ot(L[0]).localeCompare(Ot(ue[0]),"zh-CN")),ee=$u.map(L=>[L,U.get(L)??0]);return[...ne,...ee]},[t,a]),w=G.useMemo(()=>_b(t,r),[t,r]),C=G.useMemo(()=>{const j=new Map;for(const U of w){const Y=fi(U);j.set(Y,(j.get(Y)??0)+1)}return j},[w]),k=G.useMemo(()=>a?w.filter(j=>fi(j)===a):w,[w,a]),F=G.useMemo(()=>{const j=new Map;for(const U of k)j.set(U.kind,(j.get(U.kind)??0)+1);return[...j.entries()].sort((U,Y)=>Y[1]-U[1])},[k]),A=G.useMemo(()=>new fg(k,{keys:["name","title","description","i18n.zh.description","category","brand","dirName","tags"],threshold:.4,ignoreLocation:!0,includeScore:!0}),[k]),q=G.useMemo(()=>{let j=k;if(l.trim()){const U=l.trim().toLowerCase(),Y=new Map;for(const ne of k){const ee=Sb(ne,U);ee!==null&&Y.set(ne.id,{rank:ee,score:0})}for(const ne of A.search(l)){const ee=Y.get(ne.item.id),L={rank:4,score:ne.score??1};(!ee||L.rank<ee.rank)&&Y.set(ne.item.id,L)}j=k.filter(ne=>Y.has(ne.id)).sort((ne,ee)=>{const L=Y.get(ne.id)??{rank:99,score:1},ue=Y.get(ee.id)??{rank:99,score:1};return L.rank-ue.rank||L.score-ue.score||H0(ne).localeCompare(H0(ee),"zh-CN")})}return f&&(j=j.filter(U=>U.kind===f)),j},[k,A,l,f]),I=!!(l.trim()||r||a||f),T=()=>{h(""),u==null||u(null),i==null||i(null),m(null)},R=G.useMemo(()=>q.find(j=>j.id===x)??q[0]??null,[q,x]);return p.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-4",children:[p.jsxs("section",{className:"rounded-md border border-border bg-card px-4 py-4 shadow-sm shadow-border/30",children:[p.jsxs("div",{className:"flex flex-col gap-3 xl:flex-row xl:items-center xl:justify-between",children:[p.jsxs("div",{className:"min-w-0",children:[p.jsx("h1",{className:"text-h4 font-semibold text-foreground",children:"技能库"}),p.jsxs("p",{className:"mt-1 text-body-sm text-muted-foreground",children:["共 ",q.length," 项,按来源、范围、类型和关键词快速定位可复用能力。"]})]}),p.jsxs("div",{className:"flex shrink-0 flex-wrap items-center gap-2 text-caption text-muted-foreground",children:[p.jsxs("span",{className:"inline-flex h-8 items-center gap-1.5 rounded-md border border-border bg-background px-2.5",children:[p.jsx(o0,{size:14}),t.length," 项已索引"]}),I&&p.jsxs("button",{type:"button",onClick:T,className:"inline-flex h-8 items-center gap-1.5 rounded-md border border-border bg-background px-2.5 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",children:[p.jsx(Dm,{size:13}),"清除筛选"]})]})]}),p.jsxs("div",{className:"mt-4 grid gap-3 rounded-md border border-border bg-background/60 p-3 lg:grid-cols-[minmax(240px,1.4fr)_minmax(160px,0.7fr)_minmax(140px,0.6fr)]",children:[p.jsxs("label",{className:"min-w-0",children:[p.jsx("span",{className:"mb-1 block text-caption font-medium text-muted-foreground",children:"搜索"}),p.jsxs("span",{className:"relative block",children:[p.jsx(xs,{size:16,className:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground"}),p.jsx("input",{type:"search",value:l,onChange:j=>h(j.target.value),placeholder:"搜索技能、插件、自定义能力…",className:"h-10 w-full rounded-md border border-input bg-card pl-9 pr-3 text-body-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50"})]})]}),p.jsxs("label",{className:"min-w-0",children:[p.jsx("span",{className:"mb-1 block text-caption font-medium text-muted-foreground",children:"来源"}),p.jsxs("select",{value:r??"",onChange:j=>u==null?void 0:u(j.target.value||null),className:"h-10 w-full rounded-md border border-input bg-card px-3 text-body-sm text-foreground focus:outline-none focus:ring-2 focus:ring-primary/50",children:[p.jsx("option",{value:"",children:"全部来源"}),y.map(([j,U])=>p.jsxs("option",{value:j,children:[Ot(j)," ",U]},j))]})]}),p.jsxs("label",{className:"min-w-0",children:[p.jsx("span",{className:"mb-1 block text-caption font-medium text-muted-foreground",children:"类型"}),p.jsxs("select",{value:f??"",onChange:j=>m(j.target.value||null),className:"h-10 w-full rounded-md border border-input bg-card px-3 text-body-sm text-foreground focus:outline-none focus:ring-2 focus:ring-primary/50",children:[p.jsx("option",{value:"",children:"全部类型"}),F.map(([j,U])=>p.jsxs("option",{value:j,children:[xr(j)," ",U]},j))]})]})]}),p.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[p.jsxs("span",{className:"mr-1 inline-flex items-center gap-1 text-caption text-muted-foreground",children:[p.jsx(o0,{size:13}),"范围"]}),bb.map(j=>{const U=j.key?C.get(j.key)??0:w.length,Y=a===j.key;return p.jsxs("button",{type:"button",onClick:()=>i==null?void 0:i(j.key),className:Se("inline-flex h-8 items-center gap-1.5 rounded-md border px-3 text-caption font-medium transition-colors",Y?"border-primary bg-primary text-primary-foreground":"border-border bg-background text-muted-foreground hover:bg-muted hover:text-foreground"),children:[p.jsx("span",{children:j.label}),p.jsx("span",{className:Se("font-mono text-[11px]",Y?"text-primary-foreground/80":"text-muted-foreground"),children:U})]},j.key??"all")})]})]}),p.jsxs("div",{className:"grid min-h-0 flex-1 grid-cols-1 gap-4 lg:grid-cols-[320px_minmax(0,1fr)] 2xl:grid-cols-[340px_minmax(0,1fr)]",children:[p.jsx("section",{className:"min-h-0 overflow-y-auto rounded-md border border-border bg-card",children:q.length===0?p.jsxs("div",{className:"flex min-h-48 flex-col items-center justify-center gap-2 px-4 text-center text-body-sm text-muted-foreground",children:[p.jsx(X0,{size:22}),p.jsx("p",{children:"没有匹配的技能条目"})]}):p.jsx("div",{className:"divide-y divide-border",children:q.map(j=>{var ee,L;const U=no(j),Y=(R==null?void 0:R.id)===j.id,ne=Ot(kn(j));return p.jsxs("button",{type:"button","data-testid":"skill-list-item","data-skill-id":j.id,onClick:()=>b(j.id),"aria-pressed":Y,className:Se("flex w-full items-start gap-3 px-3 py-3 text-left transition-colors",Y?"bg-primary-soft text-primary":"bg-card text-foreground hover:bg-muted/70"),children:[p.jsx(Kf,{item:j,size:24}),p.jsxs("span",{className:"min-w-0 flex-1",children:[p.jsxs("span",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[p.jsx("span",{className:"truncate text-body-sm font-semibold",children:j.title||j.name}),((L=(ee=j.i18n)==null?void 0:ee.zh)==null?void 0:L.name)&&j.i18n.zh.name!==(j.title||j.name)&&p.jsx("span",{className:"truncate text-caption font-normal text-muted-foreground",children:j.i18n.zh.name})]}),p.jsx("span",{className:"mt-1 line-clamp-2 block text-caption text-muted-foreground",children:Gf(j)||j.preview||"无描述"}),p.jsxs("span",{className:"mt-2 flex flex-wrap gap-1.5",children:[p.jsx("span",{className:"rounded-sm bg-muted px-1.5 py-0.5 text-caption text-muted-foreground",children:xr(j.kind)}),p.jsx("span",{className:Se("rounded-sm px-1.5 py-0.5 text-caption font-medium",U.isTier1&&"bg-primary-soft text-primary",U.isTier2&&"bg-emerald-500/10 text-emerald-700 dark:text-emerald-300",U.isTier3&&"bg-muted text-muted-foreground"),children:U.tierLabel}),wb(j)&&p.jsx("span",{className:"rounded-sm bg-muted px-1.5 py-0.5 text-caption text-muted-foreground",children:ne}),p.jsx(kb,{item:j,compact:!0})]})]})]},j.id)})})}),p.jsx("section",{className:"min-h-0 overflow-y-auto",children:R?p.jsxs("div",{className:"space-y-4",children:[p.jsx(zb,{item:R}),p.jsx(pb,{item:R,variant:"reader"})]}):p.jsx("div",{className:"detail flex min-h-48 items-center justify-center text-muted-foreground",children:p.jsx("p",{className:"text-body-sm",children:"从左侧选择一项查看详情"})})})]})]})}function Ru({label:t,value:r,icon:u,tone:a="primary"}){const i=a==="success"?"bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":a==="warning"?"bg-amber-500/10 text-amber-700 dark:text-amber-300":"bg-primary-soft text-primary";return p.jsx("div",{className:"rounded-md border border-border bg-card px-4 py-3",children:p.jsxs("div",{className:"flex items-center gap-3",children:[p.jsx("span",{className:`grid h-9 w-9 shrink-0 place-items-center rounded-md ${i}`,children:u}),p.jsxs("div",{className:"min-w-0",children:[p.jsx("div",{className:"font-mono text-h4 font-semibold text-foreground",children:r}),p.jsx("div",{className:"truncate text-caption text-muted-foreground",children:t})]})]})})}function hi({title:t,description:r,icon:u,onOpen:a}){return p.jsxs("button",{type:"button",onClick:a,className:"group flex w-full items-center gap-3 rounded-md border border-border bg-card px-4 py-3 text-left transition-colors hover:border-primary hover:bg-primary-soft/40","aria-label":t,children:[p.jsx("span",{className:"grid h-9 w-9 shrink-0 place-items-center rounded-md bg-muted text-primary",children:u}),p.jsxs("span",{className:"min-w-0 flex-1",children:[p.jsx("span",{className:"block text-body-sm font-semibold text-foreground",children:t}),p.jsx("span",{className:"mt-0.5 block truncate text-caption text-muted-foreground",children:r})]}),p.jsx(om,{size:16,className:"text-muted-foreground transition-transform group-hover:translate-x-1"})]})}function Db(t){if(!t)return"未知";const r=new Date(t);return Number.isNaN(r.getTime())?"未知":r.toLocaleDateString("zh-CN",{month:"2-digit",day:"2-digit"})}function Nb({stats:t,items:r,onOpenSkills:u,onOpenCommands:a,onOpenOtherSkills:i}){const l=r.filter(y=>!y.parseError),h=(t==null?void 0:t.total)??l.length,f=Ku.length,m=[...l].filter(y=>y.updatedAt).sort((y,w)=>Date.parse(w.updatedAt??"")-Date.parse(y.updatedAt??"")).slice(0,5),x=Object.entries((t==null?void 0:t.byEditor)??{}).sort((y,w)=>w[1]-y[1]).slice(0,5),b=Object.entries((t==null?void 0:t.byKind)??{}).sort((y,w)=>w[1]-y[1]).slice(0,4);return p.jsxs("div",{className:"mx-auto flex w-full max-w-[1440px] flex-col gap-5",children:[p.jsx("section",{className:"rounded-md border border-border bg-card px-5 py-4",children:p.jsxs("div",{className:"flex flex-col gap-4 xl:flex-row xl:items-center xl:justify-between",children:[p.jsxs("div",{className:"min-w-0",children:[p.jsxs("div",{className:"flex items-center gap-2 text-caption font-medium text-primary",children:[p.jsx(Z0,{size:14}),"本地工作台已就绪"]}),p.jsx("h1",{className:"mt-1 text-h3 font-bold text-foreground",children:"呼哈哈-技能助手"}),p.jsx("p",{className:"mt-1 max-w-3xl text-body-sm text-muted-foreground",children:"集中浏览本机技能、插件与常用 CLI 帮助,快速找到可复用的 AI 辅助能力。"})]}),p.jsxs("div",{className:"grid grid-cols-2 gap-3 md:grid-cols-4 xl:min-w-[620px]",children:[p.jsx(Ru,{label:"技能条目",value:String(h),icon:p.jsx(xi,{size:18})}),p.jsx(Ru,{label:"命令品牌",value:String(f),icon:p.jsx(yi,{size:18}),tone:"success"}),p.jsx(Ru,{label:"Flags",value:String(l0),icon:p.jsx(J0,{size:18})}),p.jsx(Ru,{label:"子命令",value:String(c0),icon:p.jsx(dr,{size:18}),tone:"warning"})]})]})}),p.jsxs("div",{className:"grid min-h-0 gap-5 xl:grid-cols-[minmax(0,1.15fr)_minmax(320px,0.85fr)]",children:[p.jsxs("section",{className:"detail",children:[p.jsx("div",{className:"mb-4 flex items-center justify-between gap-3",children:p.jsxs("div",{children:[p.jsx("h2",{className:"text-h4 font-semibold text-foreground",children:"继续工作"}),p.jsx("p",{className:"mt-1 text-body-sm text-muted-foreground",children:"从最常用的入口继续,不需要先判断模块。"})]})}),p.jsxs("div",{className:"grid gap-3 lg:grid-cols-3",children:[p.jsx(hi,{title:"打开技能库",description:`${h} 个本地技能与插件`,icon:p.jsx(xi,{size:18}),onOpen:u}),p.jsx(hi,{title:"查看命令手册",description:`${l0} 个 flag / ${c0} 个子命令`,icon:p.jsx(yi,{size:18}),onOpen:a}),p.jsx(hi,{title:"查看其它技能",description:"在技能库中筛选其它技能",icon:p.jsx(dr,{size:18}),onOpen:i})]})]}),p.jsxs("section",{className:"detail",children:[p.jsxs("div",{className:"mb-4 flex items-center gap-2",children:[p.jsx(cm,{size:16,className:"text-primary"}),p.jsx("h2",{className:"text-h4 font-semibold text-foreground",children:"来源健康"})]}),x.length===0?p.jsx("p",{className:"text-body-sm text-muted-foreground",children:"暂无来源统计,等待下一次扫描。"}):p.jsx("div",{className:"space-y-3",children:x.map(([y,w])=>p.jsx("div",{className:"flex items-center gap-3",children:p.jsxs("div",{className:"min-w-0 flex-1",children:[p.jsxs("div",{className:"flex items-center justify-between gap-3 text-body-sm",children:[p.jsx("span",{className:"truncate font-medium text-foreground",children:Ot(y)}),p.jsx("span",{className:"font-mono text-caption text-muted-foreground",children:w})]}),p.jsx("div",{className:"mt-1 h-1.5 overflow-hidden rounded-full bg-muted",children:p.jsx("div",{className:"h-full rounded-full bg-primary",style:{width:`${Math.max(6,Math.min(100,w/Math.max(h,1)*100))}%`}})})]})},y))})]})]}),p.jsxs("div",{className:"grid min-h-0 gap-5 xl:grid-cols-[minmax(0,1fr)_360px]",children:[p.jsxs("section",{className:"detail",children:[p.jsx("div",{className:"mb-4 flex items-center justify-between gap-3",children:p.jsxs("div",{children:[p.jsx("h2",{className:"text-h4 font-semibold text-foreground",children:"最近更新"}),p.jsx("p",{className:"mt-1 text-body-sm text-muted-foreground",children:"最近扫描到变化的技能条目。"})]})}),m.length===0?p.jsx("p",{className:"text-body-sm text-muted-foreground",children:"暂无最近更新记录。"}):p.jsx("div",{className:"divide-y divide-border overflow-hidden rounded-md border border-border",children:m.map(y=>p.jsxs("div",{className:"grid gap-2 bg-background px-3 py-3 md:grid-cols-[1fr_auto]",children:[p.jsxs("div",{className:"min-w-0",children:[p.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[p.jsx("span",{className:"truncate text-body-sm font-medium text-foreground",children:y.title||y.name}),p.jsx("span",{className:"rounded-sm bg-muted px-1.5 py-0.5 text-caption text-muted-foreground",children:xr(y.kind)}),p.jsx("span",{className:"rounded-sm bg-primary-soft px-1.5 py-0.5 text-caption text-primary",children:Ot(kn(y))})]}),p.jsx("p",{className:"mt-1 truncate text-caption text-muted-foreground",children:Gf(y)||y.preview||"无描述"})]}),p.jsx("span",{className:"font-mono text-caption text-muted-foreground",children:Db(y.updatedAt)})]},y.id))})]}),p.jsxs("section",{className:"detail",children:[p.jsx("h2",{className:"text-h4 font-semibold text-foreground",children:"推荐下一步"}),p.jsx("div",{className:"mt-4 space-y-3",children:b.length>0?b.map(([y,w])=>p.jsxs("div",{className:"rounded-md border border-border bg-background px-3 py-3",children:[p.jsxs("div",{className:"flex items-center justify-between gap-3",children:[p.jsx("span",{className:"text-body-sm font-medium text-foreground",children:xr(y)}),p.jsx("span",{className:"font-mono text-caption text-muted-foreground",children:w})]}),p.jsx("p",{className:"mt-1 text-caption text-muted-foreground",children:"可在技能库中继续按类型筛选和复制调用提示。"})]},y)):p.jsx("p",{className:"text-body-sm text-muted-foreground",children:"扫描完成后会展示可优先整理的类型。"})})]})]})]})}const jb=["通用","网络服务","数据管理","关于"];function is({title:t,subtitle:r,children:u}){return p.jsxs("div",{className:"flex items-center justify-between gap-4 border-b border-border py-4",children:[p.jsxs("div",{children:[p.jsx("p",{className:"text-body-sm text-foreground",children:t}),p.jsx("p",{className:"text-caption text-muted-foreground",children:r})]}),u]})}const Lu="h-9 rounded-md border border-border bg-input px-2 text-body-sm text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:opacity-60";function Fb(){const[t,r]=G.useState("通用"),{theme:u,toggle:a}=af(),[i,l]=G.useState(()=>Ji()),h=()=>{const f=!i;l(f),db(f),setTimeout(()=>window.location.reload(),200)};return p.jsxs("div",{children:[p.jsxs("div",{className:"mb-5 flex items-center justify-between",children:[p.jsx("h1",{className:"text-h3 font-bold text-foreground",children:"应用设置"}),p.jsx("div",{className:"inline-flex rounded-md bg-muted p-1 text-body-sm",children:jb.map(f=>p.jsx("button",{onClick:()=>r(f),className:Se("rounded-sm px-3 py-1 transition-colors",t===f?"bg-card text-primary shadow-sm":"text-muted-foreground"),children:f},f))})]}),p.jsxs("div",{className:"rounded-lg border border-border bg-card px-5",children:[t==="通用"&&p.jsxs(p.Fragment,{children:[p.jsx(is,{title:"显示语言",subtitle:"选择界面的显示语言",children:p.jsx("select",{className:Lu,defaultValue:"zh-CN",disabled:!0,children:p.jsx("option",{value:"zh-CN",children:"简体中文"})})}),p.jsx(is,{title:"翻译技能描述",subtitle:"将英文技能描述与正文翻译为中文(联网,使用 Google 翻译,结果本地缓存)。关闭后仅显示原文,不会发送任何内容到外部服务",children:p.jsx("button",{onClick:h,"aria-label":"切换翻译开关",className:Se("relative h-6 w-11 rounded-full transition-colors",i?"bg-primary":"bg-muted"),children:p.jsx("span",{className:Se("absolute top-0.5 h-5 w-5 rounded-full bg-white shadow transition-transform",i?"translate-x-5":"translate-x-0.5")})})}),p.jsx(is,{title:"应用主题",subtitle:"切换深色或浅色模式",children:p.jsxs("select",{className:Lu,value:u,onChange:f=>{f.target.value!==u&&a()},children:[p.jsx("option",{value:"light",children:"浅色"}),p.jsx("option",{value:"dark",children:"深色"})]})}),p.jsx(is,{title:"界面缩放",subtitle:"调整界面缩放比例(待接入)",children:p.jsx("select",{className:Lu,defaultValue:"100",disabled:!0,children:p.jsx("option",{value:"100",children:"100%"})})}),p.jsx(is,{title:"侧边栏布局",subtitle:"切换图标导航或经典布局(待接入)",children:p.jsx("select",{className:Lu,defaultValue:"icon",disabled:!0,children:p.jsx("option",{value:"icon",children:"图标导航"})})})]}),t!=="通用"&&p.jsxs("p",{className:"py-10 text-center text-body-sm text-muted-foreground",children:["「",t,"」待开发,敬请期待"]})]})]})}const Tb=JSON.parse(`[{"brand":"claude","subcommand":"agents","summary_zh":"管理后台 agents。","usage":"Usage: claude agents [options]","groups":[{"name_zh":"选项","source":"explicit","flags":[{"name":"--add-dir","desc_zh":"Additional directory to allow tool access to in dispatched sessions (repeatable)","raw":"Additional directory to allow tool access to in dispatched sessions (repeatable)","args":"<directory>"},{"name":"--agent","desc_zh":"Default agent for sessions dispatched from agent view. Overrides the 'agent' setting.","raw":"Default agent for sessions dispatched from agent view. Overrides the 'agent' setting.","args":"<agent>"},{"name":"--all","desc_zh":"With --json: include completed sessions (the full agent view list)","raw":"With --json: include completed sessions (the full agent view list)"},{"name":"--allow-dangerously-skip-permissions","desc_zh":"Make bypass-permissions mode available to dispatched sessions without defaulting to it","raw":"Make bypass-permissions mode available to dispatched sessions without defaulting to it"},{"name":"--cwd","desc_zh":"Show only background sessions started under <path>","raw":"Show only background sessions started under <path>","args":"<path>"},{"name":"--dangerously-skip-permissions","desc_zh":"Alias for --permission-mode bypassPermissions","raw":"Alias for --permission-mode bypassPermissions"},{"name":"--effort","desc_zh":"Default effort level for sessions dispatched from agent view","raw":"Default effort level for sessions dispatched from agent view","args":"<level>"},{"name":"-h --help","desc_zh":"Display help for command","raw":"Display help for command"},{"name":"--json","desc_zh":"Print active sessions as a JSON array and exit (for scripting; does not require a TTY)","raw":"Print active sessions as a JSON array and exit (for scripting; does not require a TTY)"},{"name":"--mcp-config","desc_zh":"MCP server configuration to apply to dispatched sessions (repeatable)","raw":"MCP server configuration to apply to dispatched sessions (repeatable)","args":"<config>"},{"name":"--model","desc_zh":"Default model for sessions dispatched from agent view","raw":"Default model for sessions dispatched from agent view","args":"<model>"},{"name":"--permission-mode","desc_zh":"Default permission mode for sessions dispatched from agent view","raw":"Default permission mode for sessions dispatched from agent view","args":"<mode>"},{"name":"--plugin-dir","desc_zh":"Load plugins from specified directory for the agent view and dispatched sessions (repeatable)","raw":"Load plugins from specified directory for the agent view and dispatched sessions (repeatable)","args":"<path>"},{"name":"--setting-sources","desc_zh":"Comma-separated list of setting sources to load (user, project, local).","raw":"Comma-separated list of setting sources to load (user, project, local).","args":"<sources>"},{"name":"--settings","desc_zh":"Settings file or JSON string to apply to the agent view and dispatched sessions","raw":"Settings file or JSON string to apply to the agent view and dispatched sessions","args":"<file-or-json>"},{"name":"--strict-mcp-config","desc_zh":"Only use MCP servers from --mcp-config in dispatched sessions","raw":"Only use MCP servers from --mcp-config in dispatched sessions"}]}],"raw":"Usage: claude agents [options]\\n\\nManage background agents\\n\\nOptions:\\n --add-dir <directory> Additional directory to allow tool\\n access to in dispatched sessions\\n (repeatable)\\n --agent <agent> Default agent for sessions dispatched\\n from agent view. Overrides the 'agent'\\n setting.\\n --all With --json: include completed sessions\\n (the full agent view list)\\n --allow-dangerously-skip-permissions Make bypass-permissions mode available\\n to dispatched sessions without\\n defaulting to it\\n --cwd <path> Show only background sessions started\\n under <path>\\n --dangerously-skip-permissions Alias for --permission-mode\\n bypassPermissions\\n --effort <level> Default effort level for sessions\\n dispatched from agent view\\n -h, --help Display help for command\\n --json Print active sessions as a JSON array\\n and exit (for scripting; does not\\n require a TTY)\\n --mcp-config <config> MCP server configuration to apply to\\n dispatched sessions (repeatable)\\n --model <model> Default model for sessions dispatched\\n from agent view\\n --permission-mode <mode> Default permission mode for sessions\\n dispatched from agent view\\n --plugin-dir <path> Load plugins from specified directory\\n for the agent view and dispatched\\n sessions (repeatable)\\n --setting-sources <sources> Comma-separated list of setting sources\\n to load (user, project, local).\\n --settings <file-or-json> Settings file or JSON string to apply to\\n the agent view and dispatched sessions\\n --strict-mcp-config Only use MCP servers from --mcp-config\\n in dispatched sessions","capturedAt":"2026-07-05","sourcePath":"source/command-help/claude/agents.cmd"},{"brand":"claude","subcommand":"doctor","summary_zh":"检查 Claude Code 自动更新器和工作区健康状态。","usage":"Usage: claude doctor [options]","groups":[{"name_zh":"选项","source":"explicit","flags":[{"name":"-h --help","desc_zh":"Display help for command","raw":"Display help for command"}]}],"raw":"Usage: claude doctor [options]\\n\\nCheck the health of your Claude Code auto-updater. Note: The workspace trust\\ndialog is skipped and stdio servers from .mcp.json are spawned for health\\nchecks. Only use this command in directories you trust.\\n\\nOptions:\\n -h, --help Display help for command","capturedAt":"2026-07-05","sourcePath":"source/command-help/claude/doctor.cmd"},{"brand":"claude","subcommand":"mcp","summary_zh":"配置和管理 MCP servers。","usage":"Usage: claude mcp [options] [command]","groups":[{"name_zh":"选项","source":"explicit","flags":[{"name":"-h --help","desc_zh":"Display help for command","raw":"Display help for command"}]},{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"add","desc_zh":"Add an MCP server to Claude Code.","raw":"Add an MCP server to Claude Code.","args":"[options] <name> <commandOrUrl> [args...]"},{"name":"add-from-claude-desktop","desc_zh":"Import MCP servers from Claude Desktop (Mac and WSL only)","raw":"Import MCP servers from Claude Desktop (Mac and WSL only)","args":"[options]"},{"name":"add-json","desc_zh":"Add an MCP server (stdio or SSE) with a JSON string","raw":"Add an MCP server (stdio or SSE) with a JSON string","args":"[options] <name> <json>"},{"name":"get","desc_zh":"Get details about an MCP server. Unapproved .mcp.json servers are shown as ⏸ Pending approval and not connected to; approved servers are health-checked.","raw":"Get details about an MCP server. Unapproved .mcp.json servers are shown as ⏸ Pending approval and not connected to; approved servers are health-checked.","args":"<name>"},{"name":"help","desc_zh":"display help for command","raw":"display help for command","args":"[command]"},{"name":"list","desc_zh":"List configured MCP servers. Unapproved .mcp.json servers are shown as ⏸ Pending approval and not connected to; approved servers are health-checked.","raw":"List configured MCP servers. Unapproved .mcp.json servers are shown as ⏸ Pending approval and not connected to; approved servers are health-checked."},{"name":"login","desc_zh":"Authenticate with an MCP server (HTTP, SSE, or claude.ai connector)","raw":"Authenticate with an MCP server (HTTP, SSE, or claude.ai connector)","args":"[options] <name>"},{"name":"logout","desc_zh":"Clear stored OAuth credentials for an MCP server","raw":"Clear stored OAuth credentials for an MCP server","args":"<name>"},{"name":"remove","desc_zh":"Remove an MCP server","raw":"Remove an MCP server","args":"[options] <name>"},{"name":"reset-project-choices","desc_zh":"Reset all approved and rejected project-scoped (.mcp.json) servers within this project","raw":"Reset all approved and rejected project-scoped (.mcp.json) servers within this project"},{"name":"serve","desc_zh":"Start the Claude Code MCP server","raw":"Start the Claude Code MCP server","args":"[options]"}]}],"raw":"Usage: claude mcp [options] [command]\\n\\nConfigure and manage MCP servers\\n\\nOptions:\\n -h, --help Display help for command\\n\\nCommands:\\n add [options] <name> <commandOrUrl> [args...] Add an MCP server to Claude Code.\\n \\n Examples:\\n # Add HTTP server:\\n claude mcp add --transport http sentry https://mcp.sentry.dev/mcp\\n \\n # Add HTTP server with headers:\\n claude mcp add --transport http corridor https://app.corridor.dev/api/mcp --header \\"Authorization: Bearer ...\\"\\n \\n # Add stdio server with environment variables:\\n claude mcp add my-server -e API_KEY=xxx -- npx my-mcp-server\\n \\n # Add stdio server with subprocess flags:\\n claude mcp add my-server -- my-command --some-flag arg1\\n add-from-claude-desktop [options] Import MCP servers from Claude Desktop\\n (Mac and WSL only)\\n add-json [options] <name> <json> Add an MCP server (stdio or SSE) with a\\n JSON string\\n get <name> Get details about an MCP server.\\n Unapproved .mcp.json servers are shown\\n as ⏸ Pending approval and not connected\\n to; approved servers are health-checked.\\n help [command] display help for command\\n list List configured MCP servers. Unapproved\\n .mcp.json servers are shown as ⏸ Pending\\n approval and not connected to; approved\\n servers are health-checked.\\n login [options] <name> Authenticate with an MCP server (HTTP,\\n SSE, or claude.ai connector)\\n logout <name> Clear stored OAuth credentials for an\\n MCP server\\n remove [options] <name> Remove an MCP server\\n reset-project-choices Reset all approved and rejected\\n project-scoped (.mcp.json) servers\\n within this project\\n serve [options] Start the Claude Code MCP server","capturedAt":"2026-07-05","sourcePath":"source/command-help/claude/mcp.cmd"},{"brand":"claude","subcommand":"plugin","summary_zh":"管理 Claude Code 插件。","usage":"Usage: claude plugin|plugins [options] [command]","groups":[{"name_zh":"选项","source":"explicit","flags":[{"name":"-h --help","desc_zh":"Display help for command","raw":"Display help for command"}]},{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"details","desc_zh":"Show a plugin's component inventory and projected token cost","raw":"Show a plugin's component inventory and projected token cost","args":"[options] <name>"},{"name":"disable","desc_zh":"Disable an enabled plugin","raw":"Disable an enabled plugin","args":"[options] [plugin]"},{"name":"enable","desc_zh":"Enable a disabled plugin","raw":"Enable a disabled plugin","args":"[options] <plugin>"},{"name":"help","desc_zh":"display help for command","raw":"display help for command","args":"[command]"},{"name":"init|new","desc_zh":"Scaffold a new plugin at ~/.claude/skills/<name>/ (auto-loads next session as <name>@skills-dir)","raw":"Scaffold a new plugin at ~/.claude/skills/<name>/ (auto-loads next session as <name>@skills-dir)","args":"[options] <name>"},{"name":"install|i","desc_zh":"Install a plugin from available marketplaces (use plugin@marketplace for specific marketplace)","raw":"Install a plugin from available marketplaces (use plugin@marketplace for specific marketplace)","args":"[options] <plugin>"},{"name":"list","desc_zh":"List installed plugins","raw":"List installed plugins","args":"[options]"},{"name":"marketplace","desc_zh":"Manage Claude Code marketplaces","raw":"Manage Claude Code marketplaces"},{"name":"prune|autoremove","desc_zh":"Remove auto-installed dependencies that are no longer needed","raw":"Remove auto-installed dependencies that are no longer needed","args":"[options]"},{"name":"tag","desc_zh":"Create a {name}--v{version} git tag for a plugin release, validating that plugin.json and any enclosing marketplace entry agree","raw":"Create a {name}--v{version} git tag for a plugin release, validating that plugin.json and any enclosing marketplace entry agree","args":"[options] [path]"},{"name":"uninstall|remove","desc_zh":"Uninstall an installed plugin","raw":"Uninstall an installed plugin","args":"[options] <plugin>"},{"name":"update","desc_zh":"Update a plugin to the latest version (restart required to apply)","raw":"Update a plugin to the latest version (restart required to apply)","args":"[options] <plugin>"},{"name":"validate","desc_zh":"Validate a plugin or marketplace manifest","raw":"Validate a plugin or marketplace manifest","args":"[options] <path>"}]}],"raw":"Usage: claude plugin|plugins [options] [command]\\n\\nManage Claude Code plugins\\n\\nOptions:\\n -h, --help Display help for command\\n\\nCommands:\\n details [options] <name> Show a plugin's component inventory and\\n projected token cost\\n disable [options] [plugin] Disable an enabled plugin\\n enable [options] <plugin> Enable a disabled plugin\\n help [command] display help for command\\n init|new [options] <name> Scaffold a new plugin at\\n ~/.claude/skills/<name>/ (auto-loads next\\n session as <name>@skills-dir)\\n install|i [options] <plugin> Install a plugin from available\\n marketplaces (use plugin@marketplace for\\n specific marketplace)\\n list [options] List installed plugins\\n marketplace Manage Claude Code marketplaces\\n prune|autoremove [options] Remove auto-installed dependencies that\\n are no longer needed\\n tag [options] [path] Create a {name}--v{version} git tag for a\\n plugin release, validating that\\n plugin.json and any enclosing marketplace\\n entry agree\\n uninstall|remove [options] <plugin> Uninstall an installed plugin\\n update [options] <plugin> Update a plugin to the latest version\\n (restart required to apply)\\n validate [options] <path> Validate a plugin or marketplace manifest","capturedAt":"2026-07-05","sourcePath":"source/command-help/claude/plugin.cmd"}]`),Pb=JSON.parse(`[{"brand":"code","subcommand":"agent","summary_zh":"启动并交互 AI agent hosts。","usage":"Usage: code-tunnel agent [OPTIONS] [COMMAND]","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"host","desc_zh":"Start a local agent host server","raw":"Start a local agent host server"},{"name":"ps","desc_zh":"List active sessions on a running agent host","raw":"List active sessions on a running agent host"},{"name":"stop","desc_zh":"Cancel the active turn of a session","raw":"Cancel the active turn of a session"},{"name":"kill","desc_zh":"Forcefully kill the running agent host process tree","raw":"Forcefully kill the running agent host process tree"},{"name":"logs","desc_zh":"Stream live session events","raw":"Stream live session events"},{"name":"help","desc_zh":"Print this message or the help of the given subcommand(s)","raw":"Print this message or the help of the given subcommand(s)"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"--host","desc_zh":"--host <HOST> Host the agent host should bind on. Defaults to 'localhost'. Pass \`0.0.0.0\` to expose the agent host on all interfaces (paired with a connection token unless \`--without-connection-token\` is set)","raw":"--host <HOST> Host the agent host should bind on. Defaults to 'localhost'. Pass \`0.0.0.0\` to expose the agent host on all interfaces (paired with a connection token unless \`--without-connection-token\` is set)","args":"<HOST>"},{"name":"--port","desc_zh":"--port <PORT> Port the agent host should bind on. If 0 (the default) the OS picks a free ephemeral port; the chosen port is recorded in the agent host lockfile [default: 0]","raw":"--port <PORT> Port the agent host should bind on. If 0 (the default) the OS picks a free ephemeral port; the chosen port is recorded in the agent host lockfile [default: 0]","args":"<PORT>"},{"name":"--connection-token","desc_zh":"--connection-token <CONNECTION_TOKEN> A secret that must be included with all requests","raw":"--connection-token <CONNECTION_TOKEN> A secret that must be included with all requests","args":"<CONNECTION_TOKEN>"},{"name":"--connection-token-file","desc_zh":"--connection-token-file <CONNECTION_TOKEN_FILE> A file containing a secret that must be included with all requests","raw":"--connection-token-file <CONNECTION_TOKEN_FILE> A file containing a secret that must be included with all requests","args":"<CONNECTION_TOKEN_FILE>"},{"name":"--without-connection-token","desc_zh":"--without-connection-token Run without a connection token. Only use this if the connection is secured by other means","raw":"--without-connection-token Run without a connection token. Only use this if the connection is secured by other means"},{"name":"--server-data-dir","desc_zh":"--server-data-dir <SERVER_DATA_DIR> Specifies the directory that server data is kept in","raw":"--server-data-dir <SERVER_DATA_DIR> Specifies the directory that server data is kept in","args":"<SERVER_DATA_DIR>"},{"name":"--replace","desc_zh":"--replace Stop any agent host already running on this machine and start a fresh one. Without this flag, the command reuses an existing live supervisor when its configuration is compatible, and errors out when the requested \`--host\` / \`--port\` / \`--connection-token\` differ from what's already running","raw":"--replace Stop any agent host already running on this machine and start a fresh one. Without this flag, the command reuses an existing live supervisor when its configuration is compatible, and errors out when the requested \`--host\` / \`--port\` / \`--connection-token\` differ from what's already running"},{"name":"--tunnel","desc_zh":"--tunnel Expose the agent host over a dev tunnel","raw":"--tunnel Expose the agent host over a dev tunnel"},{"name":"--name","desc_zh":"--name <NAME> Sets the machine name for the tunnel","raw":"--name <NAME> Sets the machine name for the tunnel","args":"<NAME>"},{"name":"--random-name","desc_zh":"--random-name Randomly name the machine for the tunnel","raw":"--random-name Randomly name the machine for the tunnel"},{"name":"-h --help","desc_zh":"-h, --help Print help","raw":"-h, --help Print help"},{"name":"--cli-data-dir","desc_zh":"Directory where CLI metadata should be stored [env: VSCODE_CLI_DATA_DIR=]","raw":"Directory where CLI metadata should be stored [env: VSCODE_CLI_DATA_DIR=]","args":"<CLI_DATA_DIR>"},{"name":"--verbose","desc_zh":"Print verbose output (implies --wait)","raw":"Print verbose output (implies --wait)"},{"name":"--log","desc_zh":"Log level to use [possible values: trace, debug, info, warn, error, critical, off]","raw":"Log level to use [possible values: trace, debug, info, warn, error, critical, off]","args":"<level>"}]}],"raw":"Manage agent host sessions\\n\\nUsage: code-tunnel agent [OPTIONS] [COMMAND]\\n\\nCommands:\\n host Start a local agent host server\\n ps List active sessions on a running agent host\\n stop Cancel the active turn of a session\\n kill Forcefully kill the running agent host process tree\\n logs Stream live session events\\n help Print this message or the help of the given subcommand(s)\\n\\nOptions:\\n --host <HOST>\\n Host the agent host should bind on. Defaults to 'localhost'. Pass \`0.0.0.0\` to expose the agent host on all interfaces (paired with a connection token unless \`--without-connection-token\` is set)\\n --port <PORT>\\n Port the agent host should bind on. If 0 (the default) the OS picks a free ephemeral port; the chosen port is recorded in the agent host lockfile [default: 0]\\n --connection-token <CONNECTION_TOKEN>\\n A secret that must be included with all requests\\n --connection-token-file <CONNECTION_TOKEN_FILE>\\n A file containing a secret that must be included with all requests\\n --without-connection-token\\n Run without a connection token. Only use this if the connection is secured by other means\\n --server-data-dir <SERVER_DATA_DIR>\\n Specifies the directory that server data is kept in\\n --replace\\n Stop any agent host already running on this machine and start a fresh one. Without this flag, the command reuses an existing live supervisor when its configuration is compatible, and errors out when the requested \`--host\` / \`--port\` / \`--connection-token\` differ from what's already running\\n --tunnel\\n Expose the agent host over a dev tunnel\\n --name <NAME>\\n Sets the machine name for the tunnel\\n --random-name\\n Randomly name the machine for the tunnel\\n -h, --help\\n Print help\\n\\nGLOBAL OPTIONS:\\n --cli-data-dir <CLI_DATA_DIR> Directory where CLI metadata should be stored [env: VSCODE_CLI_DATA_DIR=]\\n --verbose Print verbose output (implies --wait)\\n --log <level> Log level to use [possible values: trace, debug, info, warn, error, critical, off]","capturedAt":"2026-07-05","sourcePath":"source/command-help/code/agent.cmd"},{"brand":"code","subcommand":"chat","summary_zh":"在当前工作目录传入 prompt 并运行 chat 会话。","usage":"Usage: code chat [options] [prompt]","groups":[{"name_zh":"选项","source":"explicit","flags":[{"name":"-m --mode","desc_zh":"The mode to use for the chat session. Available options: 'ask', 'edit', 'agent', or the identifier of a custom mode. Defaults to 'agent'.","raw":"The mode to use for the chat session. Available options: 'ask', 'edit', 'agent', or the identifier of a custom mode. Defaults to 'agent'.","args":"<mode>"},{"name":"-a --add-file","desc_zh":"Add files as context to the chat session.","raw":"Add files as context to the chat session.","args":"<path>"},{"name":"--maximize","desc_zh":"Maximize the chat session view.","raw":"Maximize the chat session view."},{"name":"-r --reuse-window","desc_zh":"Force to use the last active window for the chat session.","raw":"Force to use the last active window for the chat session."},{"name":"-n --new-window","desc_zh":"Force to open an empty window for the chat session.","raw":"Force to open an empty window for the chat session."},{"name":"--profile","desc_zh":"--profile <profileName> Opens the provided folder or workspace with the given profile and associates the profile with the workspace. If the profile does not exist, a new empty one is created.","raw":"--profile <profileName> Opens the provided folder or workspace with the given profile and associates the profile with the workspace. If the profile does not exist, a new empty one is created.","args":"<profileName> Opens the provided folder or workspace with the given"}]}],"raw":"Visual Studio Code 1.126.0\\n\\nUsage: code chat [options] [prompt]\\n\\nTo read from stdin, append '-' (e.g. 'ps aux | grep code | code chat <prompt> -')\\n\\nOptions\\n -m --mode <mode> The mode to use for the chat session. Available\\n options: 'ask', 'edit', 'agent', or the identifier of\\n a custom mode. Defaults to 'agent'.\\n -a --add-file <path> Add files as context to the chat session.\\n --maximize Maximize the chat session view.\\n -r --reuse-window Force to use the last active window for the chat\\n session.\\n -n --new-window Force to open an empty window for the chat session.\\n --profile <profileName> Opens the provided folder or workspace with the given\\n profile and associates the profile with the\\n workspace. If the profile does not exist, a new empty\\n one is created.","capturedAt":"2026-07-05","sourcePath":"source/command-help/code/chat.cmd"},{"brand":"code","subcommand":"serve-web","summary_zh":"启动一个在浏览器中显示编辑器 UI 的服务。","usage":"Usage: code-tunnel serve-web [OPTIONS]","groups":[{"name_zh":"选项","source":"explicit","flags":[{"name":"--host","desc_zh":"--host <HOST> Host to listen on, defaults to 'localhost'","raw":"--host <HOST> Host to listen on, defaults to 'localhost'","args":"<HOST>"},{"name":"--socket-path","desc_zh":"--socket-path <SOCKET_PATH>","raw":"--socket-path <SOCKET_PATH>","args":"<SOCKET_PATH>"},{"name":"--port","desc_zh":"--port <PORT> Port to listen on. If 0 is passed a random free port is picked [default: 8000]","raw":"--port <PORT> Port to listen on. If 0 is passed a random free port is picked [default: 8000]","args":"<PORT>"},{"name":"--connection-token","desc_zh":"--connection-token <CONNECTION_TOKEN> A secret that must be included with all requests","raw":"--connection-token <CONNECTION_TOKEN> A secret that must be included with all requests","args":"<CONNECTION_TOKEN>"},{"name":"--connection-token-file","desc_zh":"--connection-token-file <CONNECTION_TOKEN_FILE> A file containing a secret that must be included with all requests","raw":"--connection-token-file <CONNECTION_TOKEN_FILE> A file containing a secret that must be included with all requests","args":"<CONNECTION_TOKEN_FILE>"},{"name":"--without-connection-token","desc_zh":"--without-connection-token Run without a connection token. Only use this if the connection is secured by other means","raw":"--without-connection-token Run without a connection token. Only use this if the connection is secured by other means"},{"name":"--accept-server-license-terms","desc_zh":"--accept-server-license-terms If set, the user accepts the server license terms and the server will be started without a user prompt","raw":"--accept-server-license-terms If set, the user accepts the server license terms and the server will be started without a user prompt"},{"name":"--server-base-path","desc_zh":"--server-base-path <SERVER_BASE_PATH> Specifies the path under which the web UI and the code server is provided","raw":"--server-base-path <SERVER_BASE_PATH> Specifies the path under which the web UI and the code server is provided","args":"<SERVER_BASE_PATH>"},{"name":"--server-data-dir","desc_zh":"--server-data-dir <SERVER_DATA_DIR> Specifies the directory that server data is kept in","raw":"--server-data-dir <SERVER_DATA_DIR> Specifies the directory that server data is kept in","args":"<SERVER_DATA_DIR>"},{"name":"--default-folder","desc_zh":"--default-folder <DEFAULT_FOLDER> The workspace folder to open when no input is specified in the browser URL","raw":"--default-folder <DEFAULT_FOLDER> The workspace folder to open when no input is specified in the browser URL","args":"<DEFAULT_FOLDER>"},{"name":"--default-workspace","desc_zh":"--default-workspace <DEFAULT_WORKSPACE> The workspace to open when no input is specified in the browser URL","raw":"--default-workspace <DEFAULT_WORKSPACE> The workspace to open when no input is specified in the browser URL","args":"<DEFAULT_WORKSPACE>"},{"name":"--disable-telemetry","desc_zh":"--disable-telemetry Disables telemetry","raw":"--disable-telemetry Disables telemetry"},{"name":"--commit-id","desc_zh":"--commit-id <COMMIT_ID> Use a specific commit SHA for the client","raw":"--commit-id <COMMIT_ID> Use a specific commit SHA for the client","args":"<COMMIT_ID>"},{"name":"-h --help","desc_zh":"-h, --help Print help","raw":"-h, --help Print help"},{"name":"--cli-data-dir","desc_zh":"Directory where CLI metadata should be stored [env: VSCODE_CLI_DATA_DIR=]","raw":"Directory where CLI metadata should be stored [env: VSCODE_CLI_DATA_DIR=]","args":"<CLI_DATA_DIR>"},{"name":"--verbose","desc_zh":"Print verbose output (implies --wait)","raw":"Print verbose output (implies --wait)"},{"name":"--log","desc_zh":"Log level to use [possible values: trace, debug, info, warn, error, critical, off]","raw":"Log level to use [possible values: trace, debug, info, warn, error, critical, off]","args":"<level>"}]}],"raw":"Runs a local web version of Visual Studio Code\\n\\nUsage: code-tunnel serve-web [OPTIONS]\\n\\nOptions:\\n --host <HOST>\\n Host to listen on, defaults to 'localhost'\\n --socket-path <SOCKET_PATH>\\n \\n --port <PORT>\\n Port to listen on. If 0 is passed a random free port is picked [default: 8000]\\n --connection-token <CONNECTION_TOKEN>\\n A secret that must be included with all requests\\n --connection-token-file <CONNECTION_TOKEN_FILE>\\n A file containing a secret that must be included with all requests\\n --without-connection-token\\n Run without a connection token. Only use this if the connection is secured by other means\\n --accept-server-license-terms\\n If set, the user accepts the server license terms and the server will be started without a user prompt\\n --server-base-path <SERVER_BASE_PATH>\\n Specifies the path under which the web UI and the code server is provided\\n --server-data-dir <SERVER_DATA_DIR>\\n Specifies the directory that server data is kept in\\n --default-folder <DEFAULT_FOLDER>\\n The workspace folder to open when no input is specified in the browser URL\\n --default-workspace <DEFAULT_WORKSPACE>\\n The workspace to open when no input is specified in the browser URL\\n --disable-telemetry\\n Disables telemetry\\n --commit-id <COMMIT_ID>\\n Use a specific commit SHA for the client\\n -h, --help\\n Print help\\n\\nGLOBAL OPTIONS:\\n --cli-data-dir <CLI_DATA_DIR> Directory where CLI metadata should be stored [env: VSCODE_CLI_DATA_DIR=]\\n --verbose Print verbose output (implies --wait)\\n --log <level> Log level to use [possible values: trace, debug, info, warn, error, critical, off]","capturedAt":"2026-07-05","sourcePath":"source/command-help/code/serve-web.cmd"}]`),Mb=JSON.parse('[{"brand":"codex","subcommand":"exec","summary_zh":"非交互式运行 Codex。","usage":"Usage: codex exec [OPTIONS] [PROMPT]\\ncodex exec [OPTIONS] <COMMAND> [ARGS]","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"resume","desc_zh":"Resume a previous session by id or pick the most recent with --last","raw":"Resume a previous session by id or pick the most recent with --last"},{"name":"review","desc_zh":"Run a code review against the current repository","raw":"Run a code review against the current repository"},{"name":"help","desc_zh":"Print this message or the help of the given subcommand(s)","raw":"Print this message or the help of the given subcommand(s)"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-c --config","desc_zh":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","raw":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","args":"<key=value>"},{"name":"--enable","desc_zh":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","raw":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","args":"<FEATURE>"},{"name":"--disable","desc_zh":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","raw":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","args":"<FEATURE>"},{"name":"--strict-config","desc_zh":"--strict-config Error out when config.toml contains fields that are not recognized by this version of Codex","raw":"--strict-config Error out when config.toml contains fields that are not recognized by this version of Codex"},{"name":"-i --image","desc_zh":"-i, --image <FILE>... Optional image(s) to attach to the initial prompt","raw":"-i, --image <FILE>... Optional image(s) to attach to the initial prompt","args":"<FILE>..."},{"name":"-m --model","desc_zh":"-m, --model <MODEL> Model the agent should use","raw":"-m, --model <MODEL> Model the agent should use","args":"<MODEL>"},{"name":"--oss","desc_zh":"--oss Use open-source provider","raw":"--oss Use open-source provider"},{"name":"--local-provider","desc_zh":"--local-provider <OSS_PROVIDER> Specify which local provider to use (lmstudio or ollama). If not specified with --oss, will use config default or show selection","raw":"--local-provider <OSS_PROVIDER> Specify which local provider to use (lmstudio or ollama). If not specified with --oss, will use config default or show selection","args":"<OSS_PROVIDER>"},{"name":"-p --profile","desc_zh":"-p, --profile <CONFIG_PROFILE_V2> Layer $CODEX_HOME/<name>.config.toml on top of the base user config","raw":"-p, --profile <CONFIG_PROFILE_V2> Layer $CODEX_HOME/<name>.config.toml on top of the base user config","args":"<CONFIG_PROFILE_V2>"},{"name":"-s --sandbox","desc_zh":"-s, --sandbox <SANDBOX_MODE> Select the sandbox policy to use when executing model-generated shell commands","raw":"-s, --sandbox <SANDBOX_MODE> Select the sandbox policy to use when executing model-generated shell commands","args":"<SANDBOX_MODE>"},{"name":"--dangerously-bypass-approvals-and-sandbox","desc_zh":"--dangerously-bypass-approvals-and-sandbox Skip all confirmation prompts and execute commands without sandboxing. EXTREMELY DANGEROUS. Intended solely for running in environments that are externally sandboxed","raw":"--dangerously-bypass-approvals-and-sandbox Skip all confirmation prompts and execute commands without sandboxing. EXTREMELY DANGEROUS. Intended solely for running in environments that are externally sandboxed"},{"name":"--dangerously-bypass-hook-trust","desc_zh":"--dangerously-bypass-hook-trust Run enabled hooks without requiring persisted hook trust for this invocation. DANGEROUS. Intended only for automation that already vets hook sources","raw":"--dangerously-bypass-hook-trust Run enabled hooks without requiring persisted hook trust for this invocation. DANGEROUS. Intended only for automation that already vets hook sources"},{"name":"-C --cd","desc_zh":"-C, --cd <DIR> Tell the agent to use the specified directory as its working root","raw":"-C, --cd <DIR> Tell the agent to use the specified directory as its working root","args":"<DIR>"},{"name":"--add-dir","desc_zh":"--add-dir <DIR> Additional directories that should be writable alongside the primary workspace","raw":"--add-dir <DIR> Additional directories that should be writable alongside the primary workspace","args":"<DIR>"},{"name":"--skip-git-repo-check","desc_zh":"--skip-git-repo-check Allow running Codex outside a Git repository","raw":"--skip-git-repo-check Allow running Codex outside a Git repository"},{"name":"--ephemeral","desc_zh":"--ephemeral Run without persisting session files to disk","raw":"--ephemeral Run without persisting session files to disk"},{"name":"--ignore-user-config","desc_zh":"--ignore-user-config Do not load `$CODEX_HOME/config.toml`; auth still uses `CODEX_HOME`","raw":"--ignore-user-config Do not load `$CODEX_HOME/config.toml`; auth still uses `CODEX_HOME`"},{"name":"--ignore-rules","desc_zh":"--ignore-rules Do not load user or project execpolicy `.rules` files","raw":"--ignore-rules Do not load user or project execpolicy `.rules` files"},{"name":"--output-schema","desc_zh":"--output-schema <FILE> Path to a JSON Schema file describing the model\'s final response shape","raw":"--output-schema <FILE> Path to a JSON Schema file describing the model\'s final response shape","args":"<FILE>"},{"name":"--color","desc_zh":"--color <COLOR> Specifies color settings for use in the output","raw":"--color <COLOR> Specifies color settings for use in the output","args":"<COLOR>"},{"name":"--json","desc_zh":"--json Print events to stdout as JSONL","raw":"--json Print events to stdout as JSONL"},{"name":"-o --output-last-message","desc_zh":"-o, --output-last-message <FILE> Specifies file where the last message from the agent should be written","raw":"-o, --output-last-message <FILE> Specifies file where the last message from the agent should be written","args":"<FILE>"},{"name":"-h --help","desc_zh":"-h, --help Print help (see a summary with \'-h\')","raw":"-h, --help Print help (see a summary with \'-h\')"},{"name":"-V --version","desc_zh":"-V, --version Print version","raw":"-V, --version Print version"}]}],"raw":"Run Codex non-interactively\\n\\nUsage: codex exec [OPTIONS] [PROMPT]\\n codex exec [OPTIONS] <COMMAND> [ARGS]\\n\\nCommands:\\n resume Resume a previous session by id or pick the most recent with --last\\n review Run a code review against the current repository\\n help Print this message or the help of the given subcommand(s)\\n\\nArguments:\\n [PROMPT]\\n Initial instructions for the agent. If not provided as an argument (or if `-` is used),\\n instructions are read from stdin. If stdin is piped and a prompt is also provided, stdin\\n is appended as a `<stdin>` block\\n\\nOptions:\\n -c, --config <key=value>\\n Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`.\\n Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed\\n as TOML. If it fails to parse as TOML, the raw string is used as a literal.\\n \\n Examples: - `-c model=\\"o3\\"` - `-c \'sandbox_permissions=[\\"disk-full-read-access\\"]\'` - `-c\\n shell_environment_policy.inherit=all`\\n\\n --enable <FEATURE>\\n Enable a feature (repeatable). Equivalent to `-c features.<name>=true`\\n\\n --disable <FEATURE>\\n Disable a feature (repeatable). Equivalent to `-c features.<name>=false`\\n\\n --strict-config\\n Error out when config.toml contains fields that are not recognized by this version of\\n Codex\\n\\n -i, --image <FILE>...\\n Optional image(s) to attach to the initial prompt\\n\\n -m, --model <MODEL>\\n Model the agent should use\\n\\n --oss\\n Use open-source provider\\n\\n --local-provider <OSS_PROVIDER>\\n Specify which local provider to use (lmstudio or ollama). If not specified with --oss,\\n will use config default or show selection\\n\\n -p, --profile <CONFIG_PROFILE_V2>\\n Layer $CODEX_HOME/<name>.config.toml on top of the base user config\\n\\n -s, --sandbox <SANDBOX_MODE>\\n Select the sandbox policy to use when executing model-generated shell commands\\n \\n [possible values: read-only, workspace-write, danger-full-access]\\n\\n --dangerously-bypass-approvals-and-sandbox\\n Skip all confirmation prompts and execute commands without sandboxing. EXTREMELY\\n DANGEROUS. Intended solely for running in environments that are externally sandboxed\\n\\n --dangerously-bypass-hook-trust\\n Run enabled hooks without requiring persisted hook trust for this invocation. DANGEROUS.\\n Intended only for automation that already vets hook sources\\n\\n -C, --cd <DIR>\\n Tell the agent to use the specified directory as its working root\\n\\n --add-dir <DIR>\\n Additional directories that should be writable alongside the primary workspace\\n\\n --skip-git-repo-check\\n Allow running Codex outside a Git repository\\n\\n --ephemeral\\n Run without persisting session files to disk\\n\\n --ignore-user-config\\n Do not load `$CODEX_HOME/config.toml`; auth still uses `CODEX_HOME`\\n\\n --ignore-rules\\n Do not load user or project execpolicy `.rules` files\\n\\n --output-schema <FILE>\\n Path to a JSON Schema file describing the model\'s final response shape\\n\\n --color <COLOR>\\n Specifies color settings for use in the output\\n \\n [default: auto]\\n [possible values: always, never, auto]\\n\\n --json\\n Print events to stdout as JSONL\\n\\n -o, --output-last-message <FILE>\\n Specifies file where the last message from the agent should be written\\n\\n -h, --help\\n Print help (see a summary with \'-h\')\\n\\n -V, --version\\n Print version","capturedAt":"2026-07-05","sourcePath":"source/command-help/codex/exec.cmd"},{"brand":"codex","subcommand":"login","summary_zh":"管理登录。","usage":"Usage: codex login [OPTIONS] [COMMAND]","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"status","desc_zh":"Show login status","raw":"Show login status"},{"name":"help","desc_zh":"Print this message or the help of the given subcommand(s)","raw":"Print this message or the help of the given subcommand(s)"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-c --config","desc_zh":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","raw":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","args":"<key=value>"},{"name":"--with-api-key","desc_zh":"--with-api-key Read the API key from stdin (e.g. `printenv OPENAI_API_KEY | codex login --with-api-key`)","raw":"--with-api-key Read the API key from stdin (e.g. `printenv OPENAI_API_KEY | codex login --with-api-key`)"},{"name":"--enable","desc_zh":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","raw":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","args":"<FEATURE>"},{"name":"--with-access-token","desc_zh":"--with-access-token Read the access token from stdin (e.g. `printenv CODEX_ACCESS_TOKEN | codex login","raw":"--with-access-token Read the access token from stdin (e.g. `printenv CODEX_ACCESS_TOKEN | codex login"},{"name":"--with-access-token`)","desc_zh":"--with-access-token`)","raw":"--with-access-token`)"},{"name":"--disable","desc_zh":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","raw":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","args":"<FEATURE>"},{"name":"--device-auth","desc_zh":"--device-auth","raw":"--device-auth"},{"name":"-h --help","desc_zh":"-h, --help Print help (see a summary with \'-h\')","raw":"-h, --help Print help (see a summary with \'-h\')"}]}],"raw":"Manage login\\n\\nUsage: codex login [OPTIONS] [COMMAND]\\n\\nCommands:\\n status Show login status\\n help Print this message or the help of the given subcommand(s)\\n\\nOptions:\\n -c, --config <key=value>\\n Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`.\\n Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed\\n as TOML. If it fails to parse as TOML, the raw string is used as a literal.\\n \\n Examples: - `-c model=\\"o3\\"` - `-c \'sandbox_permissions=[\\"disk-full-read-access\\"]\'` - `-c\\n shell_environment_policy.inherit=all`\\n\\n --with-api-key\\n Read the API key from stdin (e.g. `printenv OPENAI_API_KEY | codex login --with-api-key`)\\n\\n --enable <FEATURE>\\n Enable a feature (repeatable). Equivalent to `-c features.<name>=true`\\n\\n --with-access-token\\n Read the access token from stdin (e.g. `printenv CODEX_ACCESS_TOKEN | codex login\\n --with-access-token`)\\n\\n --disable <FEATURE>\\n Disable a feature (repeatable). Equivalent to `-c features.<name>=false`\\n\\n --device-auth\\n \\n\\n -h, --help\\n Print help (see a summary with \'-h\')","capturedAt":"2026-07-05","sourcePath":"source/command-help/codex/login.cmd"},{"brand":"codex","subcommand":"mcp","summary_zh":"管理外部 MCP servers。","usage":"Usage: codex mcp [OPTIONS] <COMMAND>","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"help","desc_zh":"Print this message or the help of the given subcommand(s)","raw":"Print this message or the help of the given subcommand(s)"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-c --config","desc_zh":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","raw":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","args":"<key=value>"},{"name":"--enable","desc_zh":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","raw":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","args":"<FEATURE>"},{"name":"--disable","desc_zh":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","raw":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","args":"<FEATURE>"},{"name":"-h --help","desc_zh":"-h, --help Print help (see a summary with \'-h\')","raw":"-h, --help Print help (see a summary with \'-h\')"}]}],"raw":"Manage external MCP servers for Codex\\n\\nUsage: codex mcp [OPTIONS] <COMMAND>\\n\\nCommands:\\n list \\n get \\n add \\n remove \\n login \\n logout \\n help Print this message or the help of the given subcommand(s)\\n\\nOptions:\\n -c, --config <key=value>\\n Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`.\\n Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed\\n as TOML. If it fails to parse as TOML, the raw string is used as a literal.\\n \\n Examples: - `-c model=\\"o3\\"` - `-c \'sandbox_permissions=[\\"disk-full-read-access\\"]\'` - `-c\\n shell_environment_policy.inherit=all`\\n\\n --enable <FEATURE>\\n Enable a feature (repeatable). Equivalent to `-c features.<name>=true`\\n\\n --disable <FEATURE>\\n Disable a feature (repeatable). Equivalent to `-c features.<name>=false`\\n\\n -h, --help\\n Print help (see a summary with \'-h\')","capturedAt":"2026-07-05","sourcePath":"source/command-help/codex/mcp.cmd"},{"brand":"codex","subcommand":"plugin","summary_zh":"管理 Codex 插件。","usage":"Usage: codex plugin [OPTIONS] <COMMAND>","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"add","desc_zh":"Install a plugin from a configured marketplace snapshot","raw":"Install a plugin from a configured marketplace snapshot"},{"name":"list","desc_zh":"List plugins available from configured marketplace snapshots","raw":"List plugins available from configured marketplace snapshots"},{"name":"marketplace","desc_zh":"Add, list, upgrade, or remove configured plugin marketplaces","raw":"Add, list, upgrade, or remove configured plugin marketplaces"},{"name":"remove","desc_zh":"Remove an installed plugin from local config and cache","raw":"Remove an installed plugin from local config and cache"},{"name":"help","desc_zh":"Print this message or the help of the given subcommand(s)","raw":"Print this message or the help of the given subcommand(s)"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-c --config","desc_zh":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","raw":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","args":"<key=value>"},{"name":"--enable","desc_zh":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","raw":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","args":"<FEATURE>"},{"name":"--disable","desc_zh":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","raw":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","args":"<FEATURE>"},{"name":"-h --help","desc_zh":"-h, --help Print help (see a summary with \'-h\')","raw":"-h, --help Print help (see a summary with \'-h\')"}]}],"raw":"Manage Codex plugins\\n\\nUsage: codex plugin [OPTIONS] <COMMAND>\\n\\nCommands:\\n add Install a plugin from a configured marketplace snapshot\\n list List plugins available from configured marketplace snapshots\\n marketplace Add, list, upgrade, or remove configured plugin marketplaces\\n remove Remove an installed plugin from local config and cache\\n help Print this message or the help of the given subcommand(s)\\n\\nOptions:\\n -c, --config <key=value>\\n Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`.\\n Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed\\n as TOML. If it fails to parse as TOML, the raw string is used as a literal.\\n \\n Examples: - `-c model=\\"o3\\"` - `-c \'sandbox_permissions=[\\"disk-full-read-access\\"]\'` - `-c\\n shell_environment_policy.inherit=all`\\n\\n --enable <FEATURE>\\n Enable a feature (repeatable). Equivalent to `-c features.<name>=true`\\n\\n --disable <FEATURE>\\n Disable a feature (repeatable). Equivalent to `-c features.<name>=false`\\n\\n -h, --help\\n Print help (see a summary with \'-h\')","capturedAt":"2026-07-05","sourcePath":"source/command-help/codex/plugin.cmd"},{"brand":"codex","subcommand":"review","summary_zh":"非交互式运行代码审查。","usage":"Usage: codex review [OPTIONS] [PROMPT]","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-c --config","desc_zh":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","raw":"-c, --config <key=value> Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed as TOML. If it fails to parse as TOML, the raw string is used as a literal.","args":"<key=value>"},{"name":"--strict-config","desc_zh":"--strict-config Error out when config.toml contains fields that are not recognized by this version of Codex","raw":"--strict-config Error out when config.toml contains fields that are not recognized by this version of Codex"},{"name":"--enable","desc_zh":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","raw":"--enable <FEATURE> Enable a feature (repeatable). Equivalent to `-c features.<name>=true`","args":"<FEATURE>"},{"name":"--uncommitted","desc_zh":"--uncommitted Review staged, unstaged, and untracked changes","raw":"--uncommitted Review staged, unstaged, and untracked changes"},{"name":"--base","desc_zh":"--base <BRANCH> Review changes against the given base branch","raw":"--base <BRANCH> Review changes against the given base branch","args":"<BRANCH>"},{"name":"--disable","desc_zh":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","raw":"--disable <FEATURE> Disable a feature (repeatable). Equivalent to `-c features.<name>=false`","args":"<FEATURE>"},{"name":"--commit","desc_zh":"--commit <SHA> Review the changes introduced by a commit","raw":"--commit <SHA> Review the changes introduced by a commit","args":"<SHA>"},{"name":"--title","desc_zh":"--title <TITLE> Optional commit title to display in the review summary","raw":"--title <TITLE> Optional commit title to display in the review summary","args":"<TITLE>"},{"name":"-h --help","desc_zh":"-h, --help Print help (see a summary with \'-h\')","raw":"-h, --help Print help (see a summary with \'-h\')"}]}],"raw":"Run a code review non-interactively\\n\\nUsage: codex review [OPTIONS] [PROMPT]\\n\\nArguments:\\n [PROMPT]\\n Custom review instructions. If `-` is used, read from stdin\\n\\nOptions:\\n -c, --config <key=value>\\n Override a configuration value that would otherwise be loaded from `~/.codex/config.toml`.\\n Use a dotted path (`foo.bar.baz`) to override nested values. The `value` portion is parsed\\n as TOML. If it fails to parse as TOML, the raw string is used as a literal.\\n \\n Examples: - `-c model=\\"o3\\"` - `-c \'sandbox_permissions=[\\"disk-full-read-access\\"]\'` - `-c\\n shell_environment_policy.inherit=all`\\n\\n --strict-config\\n Error out when config.toml contains fields that are not recognized by this version of\\n Codex\\n\\n --enable <FEATURE>\\n Enable a feature (repeatable). Equivalent to `-c features.<name>=true`\\n\\n --uncommitted\\n Review staged, unstaged, and untracked changes\\n\\n --base <BRANCH>\\n Review changes against the given base branch\\n\\n --disable <FEATURE>\\n Disable a feature (repeatable). Equivalent to `-c features.<name>=false`\\n\\n --commit <SHA>\\n Review the changes introduced by a commit\\n\\n --title <TITLE>\\n Optional commit title to display in the review summary\\n\\n -h, --help\\n Print help (see a summary with \'-h\')","capturedAt":"2026-07-05","sourcePath":"source/command-help/codex/review.cmd"}]'),Ob=[{brand:"gstack",subcommand:"doctor",summary_zh:"诊断安装问题。",usage:`Usage:
|
|
259
|
+
npx @garrytan/gstack doctor [opts]`,groups:[{name_zh:"选项",source:"explicit",flags:[{name:"--host",desc_zh:"Check host integration. Valid: claude, codex, factory, opencode, kiro",raw:"Check host integration. Valid: claude, codex, factory, opencode, kiro",args:"<id>"},{name:"--quiet -q",desc_zh:"Suppress non-essential output",raw:"Suppress non-essential output"},{name:"--yes -y",desc_zh:"Skip confirmation prompts",raw:"Skip confirmation prompts"}]}],raw:`Usage:
|
|
260
|
+
npx @garrytan/gstack doctor [opts]
|
|
261
|
+
|
|
262
|
+
Diagnose install issues for the gstack skill pack.
|
|
263
|
+
|
|
264
|
+
Options:
|
|
265
|
+
--host <id> Check host integration. Valid: claude, codex, factory, opencode, kiro
|
|
266
|
+
--quiet, -q Suppress non-essential output
|
|
267
|
+
--yes, -y Skip confirmation prompts`,capturedAt:"2026-07-05",sourcePath:"source/command-help/gstack/doctor.cmd"},{brand:"gstack",subcommand:"enable",summary_zh:"在当前项目启用指定 skill。",usage:`Usage:
|
|
268
|
+
npx @garrytan/gstack enable <name> [opts]`,groups:[{name_zh:"子命令与参数",source:"explicit",flags:[{name:"<name>",desc_zh:"Skill name to enable",raw:"Skill name to enable",args:"<name>"}]},{name_zh:"选项",source:"explicit",flags:[{name:"--host",desc_zh:"Register with host. Valid: claude, codex, factory, opencode, kiro",raw:"Register with host. Valid: claude, codex, factory, opencode, kiro",args:"<id>"},{name:"--tier",desc_zh:"Use required or optional tier",raw:"Use required or optional tier",args:"<t>"},{name:"--prefix",desc_zh:"Use gstack-* skill names",raw:"Use gstack-* skill names"},{name:"--no-prefix",desc_zh:"Use flat skill names",raw:"Use flat skill names"},{name:"--no-commit",desc_zh:"Stage changes but do not commit",raw:"Stage changes but do not commit"},{name:"--yes -y",desc_zh:"Skip confirmation prompts",raw:"Skip confirmation prompts"}]}],raw:`Usage:
|
|
269
|
+
npx @garrytan/gstack enable <name> [opts]
|
|
270
|
+
|
|
271
|
+
Enable a skill in the current project.
|
|
272
|
+
|
|
273
|
+
Arguments:
|
|
274
|
+
<name> Skill name to enable
|
|
275
|
+
|
|
276
|
+
Options:
|
|
277
|
+
--host <id> Register with host. Valid: claude, codex, factory, opencode, kiro
|
|
278
|
+
--tier <t> Use required or optional tier
|
|
279
|
+
--prefix Use gstack-* skill names
|
|
280
|
+
--no-prefix Use flat skill names
|
|
281
|
+
--no-commit Stage changes but do not commit
|
|
282
|
+
--yes, -y Skip confirmation prompts`,capturedAt:"2026-07-05",sourcePath:"source/command-help/gstack/enable.cmd"},{brand:"gstack",subcommand:"list",summary_zh:"列出可用 skills。",usage:`Usage:
|
|
283
|
+
npx @garrytan/gstack list [opts]`,groups:[{name_zh:"选项",source:"explicit",flags:[{name:"--host",desc_zh:"Filter or register with host. Valid: claude, codex, factory, opencode, kiro",raw:"Filter or register with host. Valid: claude, codex, factory, opencode, kiro",args:"<id>"},{name:"--prefix",desc_zh:"Use gstack-* skill names",raw:"Use gstack-* skill names"},{name:"--no-prefix",desc_zh:"Use flat skill names",raw:"Use flat skill names"},{name:"--quiet -q",desc_zh:"Suppress non-essential output",raw:"Suppress non-essential output"},{name:"--yes -y",desc_zh:"Skip confirmation prompts",raw:"Skip confirmation prompts"}]}],raw:`Usage:
|
|
284
|
+
npx @garrytan/gstack list [opts]
|
|
285
|
+
|
|
286
|
+
List available skills from the gstack skill pack.
|
|
287
|
+
|
|
288
|
+
Options:
|
|
289
|
+
--host <id> Filter or register with host. Valid: claude, codex, factory, opencode, kiro
|
|
290
|
+
--prefix Use gstack-* skill names
|
|
291
|
+
--no-prefix Use flat skill names
|
|
292
|
+
--quiet, -q Suppress non-essential output
|
|
293
|
+
--yes, -y Skip confirmation prompts`,capturedAt:"2026-07-05",sourcePath:"source/command-help/gstack/list.cmd"},{brand:"gstack",subcommand:"status",summary_zh:"显示安装版本、hosts 和设置。",usage:`Usage:
|
|
294
|
+
npx @garrytan/gstack status [opts]`,groups:[{name_zh:"选项",source:"explicit",flags:[{name:"--host",desc_zh:"Show status for host. Valid: claude, codex, factory, opencode, kiro",raw:"Show status for host. Valid: claude, codex, factory, opencode, kiro",args:"<id>"},{name:"--prefix",desc_zh:"Show prefixed skill-name mode",raw:"Show prefixed skill-name mode"},{name:"--no-prefix",desc_zh:"Show flat skill-name mode",raw:"Show flat skill-name mode"},{name:"--quiet -q",desc_zh:"Suppress non-essential output",raw:"Suppress non-essential output"}]}],raw:`Usage:
|
|
295
|
+
npx @garrytan/gstack status [opts]
|
|
296
|
+
|
|
297
|
+
Show install version, hosts, and current settings.
|
|
298
|
+
|
|
299
|
+
Options:
|
|
300
|
+
--host <id> Show status for host. Valid: claude, codex, factory, opencode, kiro
|
|
301
|
+
--prefix Show prefixed skill-name mode
|
|
302
|
+
--no-prefix Show flat skill-name mode
|
|
303
|
+
--quiet, -q Suppress non-essential output`,capturedAt:"2026-07-05",sourcePath:"source/command-help/gstack/status.cmd"}],Ib=JSON.parse('[{"brand":"hermes","subcommand":"doctor","summary_zh":"检查配置和依赖。","usage":"usage: hermes doctor [-h] [--fix] [--ack ADVISORY_ID]","groups":[{"name_zh":"选项","source":"explicit","flags":[{"name":"-h --help","desc_zh":"show this help message and exit","raw":"show this help message and exit"},{"name":"--fix","desc_zh":"Attempt to fix issues automatically","raw":"Attempt to fix issues automatically"},{"name":"--ack","desc_zh":"Acknowledge a security advisory by ID and exit. After ack, the advisory will no longer trigger startup banners. Run `hermes doctor` first to see active advisories and their IDs.","raw":"Acknowledge a security advisory by ID and exit. After ack, the advisory will no longer trigger startup banners. Run `hermes doctor` first to see active advisories and their IDs.","args":"ADVISORY_ID"}]}],"raw":"usage: hermes doctor [-h] [--fix] [--ack ADVISORY_ID]\\n\\nDiagnose issues with Hermes Agent setup\\n\\noptions:\\n -h, --help show this help message and exit\\n --fix Attempt to fix issues automatically\\n --ack ADVISORY_ID Acknowledge a security advisory by ID and exit. After\\n ack, the advisory will no longer trigger startup banners.\\n Run `hermes doctor` first to see active advisories and\\n their IDs.","capturedAt":"2026-07-05","sourcePath":"source/command-help/hermes/doctor.cmd"},{"brand":"hermes","subcommand":"mcp","summary_zh":"管理 MCP servers 并把 Hermes 作为 MCP server 运行。","usage":"usage: hermes mcp [-h] [--accept-hooks]\\n{serve,add,remove,rm,list,ls,test,configure,config,login,picker,catalog,install}\\n...","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"serve","desc_zh":"Run Hermes as an MCP server (expose conversations to other agents)","raw":"Run Hermes as an MCP server (expose conversations to other agents)"},{"name":"add","desc_zh":"Add an MCP server (discovery-first install)","raw":"Add an MCP server (discovery-first install)"},{"name":"remove","desc_zh":"Remove an MCP server","raw":"Remove an MCP server","args":"(rm)"},{"name":"list","desc_zh":"List configured MCP servers","raw":"List configured MCP servers","args":"(ls)"},{"name":"test","desc_zh":"Test MCP server connection","raw":"Test MCP server connection"},{"name":"configure","desc_zh":"Toggle tool selection","raw":"Toggle tool selection","args":"(config)"},{"name":"login","desc_zh":"Force re-authentication for an OAuth-based MCP server","raw":"Force re-authentication for an OAuth-based MCP server"},{"name":"picker","desc_zh":"Interactive catalog picker (also the default for `hermes mcp`)","raw":"Interactive catalog picker (also the default for `hermes mcp`)"},{"name":"catalog","desc_zh":"List Nous-approved MCPs available for one-click install","raw":"List Nous-approved MCPs available for one-click install"},{"name":"install","desc_zh":"Install a catalog MCP by name (e.g. `hermes mcp install n8n`)","raw":"Install a catalog MCP by name (e.g. `hermes mcp install n8n`)"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-h --help","desc_zh":"show this help message and exit","raw":"show this help message and exit"},{"name":"--accept-hooks","desc_zh":"Auto-approve unseen shell hooks without a TTY prompt (equivalent to HERMES_ACCEPT_HOOKS=1 / hooks_auto_accept: true).","raw":"Auto-approve unseen shell hooks without a TTY prompt (equivalent to HERMES_ACCEPT_HOOKS=1 / hooks_auto_accept: true)."}]}],"raw":"usage: hermes mcp [-h] [--accept-hooks]\\n {serve,add,remove,rm,list,ls,test,configure,config,login,picker,catalog,install}\\n ...\\n\\nManage MCP server connections and run Hermes as an MCP server. MCP servers\\nprovide additional tools via the Model Context Protocol. Use \'hermes mcp add\'\\nto connect to a new server, or \'hermes mcp serve\' to expose Hermes\\nconversations over MCP.\\n\\npositional arguments:\\n {serve,add,remove,rm,list,ls,test,configure,config,login,picker,catalog,install}\\n serve Run Hermes as an MCP server (expose conversations to\\n other agents)\\n add Add an MCP server (discovery-first install)\\n remove (rm) Remove an MCP server\\n list (ls) List configured MCP servers\\n test Test MCP server connection\\n configure (config) Toggle tool selection\\n login Force re-authentication for an OAuth-based MCP server\\n picker Interactive catalog picker (also the default for\\n `hermes mcp`)\\n catalog List Nous-approved MCPs available for one-click\\n install\\n install Install a catalog MCP by name (e.g. `hermes mcp\\n install n8n`)\\n\\noptions:\\n -h, --help show this help message and exit\\n --accept-hooks Auto-approve unseen shell hooks without a TTY prompt\\n (equivalent to HERMES_ACCEPT_HOOKS=1 /\\n hooks_auto_accept: true).","capturedAt":"2026-07-05","sourcePath":"source/command-help/hermes/mcp.cmd"},{"brand":"hermes","subcommand":"plugins","summary_zh":"管理插件安装、更新、移除和列表。","usage":"usage: hermes plugins [-h]\\n{install,update,remove,rm,uninstall,list,ls,enable,disable}\\n...","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"install","desc_zh":"Install a plugin from a Git URL or owner/repo","raw":"Install a plugin from a Git URL or owner/repo"},{"name":"update","desc_zh":"Pull latest changes for an installed plugin remove (rm, uninstall) Remove an installed plugin","raw":"Pull latest changes for an installed plugin remove (rm, uninstall) Remove an installed plugin"},{"name":"list","desc_zh":"List installed plugins","raw":"List installed plugins","args":"(ls)"},{"name":"enable","desc_zh":"Enable a disabled plugin","raw":"Enable a disabled plugin"},{"name":"disable","desc_zh":"Disable a plugin without removing it","raw":"Disable a plugin without removing it"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-h --help","desc_zh":"show this help message and exit","raw":"show this help message and exit"}]}],"raw":"usage: hermes plugins [-h]\\n {install,update,remove,rm,uninstall,list,ls,enable,disable}\\n ...\\n\\nInstall plugins from Git repositories, update, remove, or list them.\\n\\npositional arguments:\\n {install,update,remove,rm,uninstall,list,ls,enable,disable}\\n install Install a plugin from a Git URL or owner/repo\\n update Pull latest changes for an installed plugin\\n remove (rm, uninstall)\\n Remove an installed plugin\\n list (ls) List installed plugins\\n enable Enable a disabled plugin\\n disable Disable a plugin without removing it\\n\\noptions:\\n -h, --help show this help message and exit","capturedAt":"2026-07-05","sourcePath":"source/command-help/hermes/plugins.cmd"},{"brand":"hermes","subcommand":"security","summary_zh":"对 venv、plugins 和 MCP servers 做供应链审计。","usage":"usage: hermes security [-h] <subcommand> ...","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"audit","desc_zh":"Run a one-shot supply-chain audit","raw":"Run a one-shot supply-chain audit"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-h --help","desc_zh":"show this help message and exit","raw":"show this help message and exit"}]}],"raw":"usage: hermes security [-h] <subcommand> ...\\n\\nOn-demand vulnerability scan against OSV.dev. Covers the Hermes venv\\n(installed PyPI dists), Python deps declared by plugins under\\n~/.hermes/plugins/, and pinned npx/uvx MCP servers in config.yaml. Does NOT\\nscan globally-installed packages or editor/browser extensions.\\n\\npositional arguments:\\n <subcommand>\\n audit Run a one-shot supply-chain audit\\n\\noptions:\\n -h, --help show this help message and exit","capturedAt":"2026-07-05","sourcePath":"source/command-help/hermes/security.cmd"},{"brand":"hermes","subcommand":"skills","summary_zh":"搜索、安装、配置和管理 skills。","usage":"usage: hermes skills [-h]\\n{browse,search,install,inspect,list,check,update,audit,uninstall,reset,opt-out,opt-in,repair-official,publish,snapshot,tap,config}\\n...","groups":[{"name_zh":"子命令与参数","source":"explicit","flags":[{"name":"browse","desc_zh":"Browse all available skills (paginated)","raw":"Browse all available skills (paginated)"},{"name":"search","desc_zh":"Search skill registries","raw":"Search skill registries"},{"name":"install","desc_zh":"Install a skill","raw":"Install a skill"},{"name":"inspect","desc_zh":"Preview a skill without installing","raw":"Preview a skill without installing"},{"name":"list","desc_zh":"List installed skills","raw":"List installed skills"},{"name":"check","desc_zh":"Check installed hub skills for updates","raw":"Check installed hub skills for updates"},{"name":"update","desc_zh":"Update installed hub skills","raw":"Update installed hub skills"},{"name":"audit","desc_zh":"Re-scan installed hub skills","raw":"Re-scan installed hub skills"},{"name":"uninstall","desc_zh":"Remove a hub-installed skill","raw":"Remove a hub-installed skill"},{"name":"reset","desc_zh":"Reset a bundled skill — clears \'user-modified\' tracking so updates work again","raw":"Reset a bundled skill — clears \'user-modified\' tracking so updates work again"},{"name":"opt-out","desc_zh":"Stop bundled skills from being seeded into this profile","raw":"Stop bundled skills from being seeded into this profile"},{"name":"opt-in","desc_zh":"Re-enable bundled-skill seeding (undo opt-out)","raw":"Re-enable bundled-skill seeding (undo opt-out)"},{"name":"repair-official","desc_zh":"Backfill or restore official optional skills from repo source","raw":"Backfill or restore official optional skills from repo source"},{"name":"publish","desc_zh":"Publish a skill to a registry","raw":"Publish a skill to a registry"},{"name":"snapshot","desc_zh":"Export/import skill configurations","raw":"Export/import skill configurations"},{"name":"tap","desc_zh":"Manage skill sources","raw":"Manage skill sources"},{"name":"config","desc_zh":"Interactive skill configuration — enable/disable individual skills","raw":"Interactive skill configuration — enable/disable individual skills"}]},{"name_zh":"选项","source":"explicit","flags":[{"name":"-h --help","desc_zh":"show this help message and exit","raw":"show this help message and exit"}]}],"raw":"usage: hermes skills [-h]\\n {browse,search,install,inspect,list,check,update,audit,uninstall,reset,opt-out,opt-in,repair-official,publish,snapshot,tap,config}\\n ...\\n\\nSearch, install, inspect, audit, configure, and manage skills from skills.sh,\\nwell-known agent skill endpoints, GitHub, ClawHub, and other registries.\\n\\npositional arguments:\\n {browse,search,install,inspect,list,check,update,audit,uninstall,reset,opt-out,opt-in,repair-official,publish,snapshot,tap,config}\\n browse Browse all available skills (paginated)\\n search Search skill registries\\n install Install a skill\\n inspect Preview a skill without installing\\n list List installed skills\\n check Check installed hub skills for updates\\n update Update installed hub skills\\n audit Re-scan installed hub skills\\n uninstall Remove a hub-installed skill\\n reset Reset a bundled skill — clears \'user-modified\'\\n tracking so updates work again\\n opt-out Stop bundled skills from being seeded into this\\n profile\\n opt-in Re-enable bundled-skill seeding (undo opt-out)\\n repair-official Backfill or restore official optional skills from repo\\n source\\n publish Publish a skill to a registry\\n snapshot Export/import skill configurations\\n tap Manage skill sources\\n config Interactive skill configuration — enable/disable\\n individual skills\\n\\noptions:\\n -h, --help show this help message and exit","capturedAt":"2026-07-05","sourcePath":"source/command-help/hermes/skills.cmd"}]'),Rb=Object.freeze({gstach:"gstack"}),Lb=Object.freeze({claude:Object.freeze(Tb),code:Object.freeze(Pb),codex:Object.freeze(Mb),gstack:Object.freeze(Ob),hermes:Object.freeze(Ib)});function Bb(t){return Rb[t]??t}function Ub(t){return t.split("|").map(r=>r.trim()).filter(r=>r.length>0)}function $b(t){return Lb[Bb(t)]??[]}function el(t,r){const u=Ub(r);return $b(t).find(a=>u.includes(a.subcommand))}function Hb(t){return[t.brand,t.subcommand,t.summary_zh,t.usage,t.raw,...t.groups.flatMap(r=>[r.name_zh,r.source,...r.flags.flatMap(u=>[u.name,u.args,u.desc_zh,u.raw])])].filter(Boolean).join(" ").toLowerCase()}function qb(t){return t.kind==="skill"&&t.source==="claude-agents"}function Vb(t){const r=new Set,u=[];for(const a of t){const i=a==null?void 0:a.trim();!i||r.has(i)||(r.add(i),u.push(i))}return u.length>0?u:void 0}function Wb(t){var u,a,i;const r=t.name||t.dirName||"unknown";return{id:t.id,name:r,displayName:r.startsWith("/")?r:`/${r}`,summary_zh:((a=(u=t.i18n)==null?void 0:u.zh)==null?void 0:a.description)||void 0,summary_raw:t.description||t.preview||void 0,tags:Vb(t.tags??[]),sourcePath:(i=t.paths)==null?void 0:i.abs,detailId:t.id,raw:t.raw,status:t.parseError?"failed":"ready"}}function Gb(t){const r=new Set;return{brand:"claude",subcommand:"agents",title_zh:"Claude Sub-agent 列表",title_raw:"Claude sub-agents available",kind:"skill-list",items:t.filter(qb).map(Wb).filter(a=>{const i=a.name.toLowerCase();return r.has(i)?!1:(r.add(i),!0)}).sort((a,i)=>a.displayName.localeCompare(i.displayName))}}async function Kb(t){const r=await t.fetchSkills();return Gb(r)}const Qb=Object.freeze({brand:"claude",subcommand:"agents",load:Kb});function Zb(t){return t.kind==="mcp"&&t.editorBrand==="claude"}function Yb(t){const r=new Set,u=[];for(const a of t){const i=a==null?void 0:a.trim();!i||r.has(i)||(r.add(i),u.push(i))}return u.length>0?u:void 0}function Xb(t){var u,a,i;const r=t.name||t.dirName||"unknown";return{id:t.id,name:r,displayName:r.startsWith("/")?r:`/${r}`,summary_zh:((a=(u=t.i18n)==null?void 0:u.zh)==null?void 0:a.description)||void 0,summary_raw:t.description||t.preview||void 0,tags:Yb(t.tags??[]),sourcePath:(i=t.paths)==null?void 0:i.abs,detailId:t.id,raw:t.raw,status:t.parseError?"failed":"ready"}}function Jb(t){const r=new Set;return{brand:"claude",subcommand:"mcp",title_zh:"Claude MCP 服务器",title_raw:"Claude MCP servers available",kind:"mcp-list",items:t.filter(Zb).map(Xb).filter(a=>{const i=a.name.toLowerCase();return r.has(i)?!1:(r.add(i),!0)}).sort((a,i)=>a.displayName.localeCompare(i.displayName))}}async function ey(t){const r=await t.fetchSkills();return Jb(r)}const ty=Object.freeze({brand:"claude",subcommand:"mcp",load:ey});function ny(t){return t.kind==="plugin"&&t.source==="claude-plugin"}function ry(t){const r=new Set,u=[];for(const a of t){const i=a==null?void 0:a.trim();!i||r.has(i)||(r.add(i),u.push(i))}return u.length>0?u:void 0}function sy(t){var u,a,i;const r=t.name||t.dirName||"unknown";return{id:t.id,name:r,displayName:r.startsWith("/")?r:`/${r}`,summary_zh:((a=(u=t.i18n)==null?void 0:u.zh)==null?void 0:a.description)||void 0,summary_raw:t.description||t.preview||void 0,tags:ry(t.tags??[]),sourcePath:(i=t.paths)==null?void 0:i.abs,detailId:t.id,raw:t.raw,status:t.parseError?"failed":"ready"}}function uy(t){const r=new Set;return{brand:"claude",subcommand:"plugin",title_zh:"Claude 插件列表",title_raw:"Claude plugins available",kind:"plugin-list",items:t.filter(ny).map(sy).filter(a=>{const i=a.name.toLowerCase();return r.has(i)?!1:(r.add(i),!0)}).sort((a,i)=>a.displayName.localeCompare(i.displayName))}}async function oy(t){const r=await t.fetchSkills();return uy(r)}const ay=Object.freeze({brand:"claude",subcommand:"plugin",load:oy});function iy(t){return t.kind==="mcp"&&t.editorBrand==="codex"}function ly(t){const r=new Set,u=[];for(const a of t){const i=a==null?void 0:a.trim();!i||r.has(i)||(r.add(i),u.push(i))}return u.length>0?u:void 0}function cy(t){var u,a,i;const r=t.name||t.dirName||"unknown";return{id:t.id,name:r,displayName:r.startsWith("/")?r:`/${r}`,summary_zh:((a=(u=t.i18n)==null?void 0:u.zh)==null?void 0:a.description)||void 0,summary_raw:t.description||t.preview||void 0,tags:ly(t.tags??[]),sourcePath:(i=t.paths)==null?void 0:i.abs,detailId:t.id,raw:t.raw,status:t.parseError?"failed":"ready"}}function dy(t){const r=new Set;return{brand:"codex",subcommand:"mcp",title_zh:"Codex MCP 服务器",title_raw:"Codex MCP servers available",kind:"mcp-list",items:t.filter(iy).map(cy).filter(a=>{const i=a.name.toLowerCase();return r.has(i)?!1:(r.add(i),!0)}).sort((a,i)=>a.displayName.localeCompare(i.displayName))}}async function fy(t){const r=await t.fetchSkills();return dy(r)}const hy=Object.freeze({brand:"codex",subcommand:"mcp",load:fy});function py(t){return t.kind==="plugin"&&t.editorBrand==="codex"}function my(t){const r=new Set,u=[];for(const a of t){const i=a==null?void 0:a.trim();!i||r.has(i)||(r.add(i),u.push(i))}return u.length>0?u:void 0}function gy(t){var r,u;return((u=(r=t.i18n)==null?void 0:r.zh)==null?void 0:u.description)||void 0}function xy(t){var u;const r=t.name||t.dirName||"unknown";return{id:t.id,name:r,displayName:r.startsWith("/")?r:`/${r}`,summary_zh:gy(t),summary_raw:t.description||t.preview||void 0,tags:my(t.tags??[]),sourcePath:(u=t.paths)==null?void 0:u.abs,detailId:t.id,raw:t.raw,status:t.parseError?"failed":"ready"}}function by(t){const r=new Set;return{brand:"codex",subcommand:"plugin",title_zh:"Codex 插件列表",title_raw:"Codex plugins available",kind:"plugin-list",items:t.filter(py).map(xy).filter(a=>{const i=a.name.toLowerCase();return r.has(i)?!1:(r.add(i),!0)}).sort((a,i)=>a.displayName.localeCompare(i.displayName))}}async function yy(t){const r=await t.fetchSkills();return by(r)}const vy=Object.freeze({brand:"codex",subcommand:"plugin",load:yy}),wy=/^---\s*$/m;function ky(t){const r=t.trim();return r?r.startsWith("[")&&r.endsWith("]")?r.slice(1,-1).split(",").map(u=>u.trim().replace(/^['"]|['"]$/g,"")).filter(Boolean):[r.replace(/^['"]|['"]$/g,"")].filter(Boolean):[]}function _y(t,r){const u=[];let a=r+1;for(;a<t.length;){const i=t[a];if(!/^\s+/.test(i)&&/^[A-Za-z0-9_-]+\s*:/.test(i))break;const l=i.match(/^\s*-\s*(.+?)\s*$/);l&&u.push(l[1].replace(/^['"]|['"]$/g,"")),a+=1}return{values:u.filter(Boolean),nextIndex:a}}function Cy(t){if(!t.startsWith("---")||t.search(wy)!==0)return;const u=t.slice(3),a=u.match(/\n---\s*(?:\n|$)/);if(!(!a||a.index===void 0))return u.slice(0,a.index).trim()}function tl(t){if(!t)return{};const r=Cy(t);if(!r)return{};const u={},a=r.split(/\r?\n/);let i=0;for(;i<a.length;){const h=a[i].match(/^([A-Za-z0-9_-]+)\s*:\s*(.*?)\s*$/);if(!h){i+=1;continue}const[,f,m]=h,x=b=>{b.length!==0&&(f==="triggers"&&(u.triggers=b),f==="allowed-tools"&&(u.allowedTools=b),f==="benefits-from"&&(u.benefitsFrom=b))};if(f==="triggers"||f==="allowed-tools"||f==="benefits-from"){if(m)x(ky(m)),i+=1;else{const b=_y(a,i);x(b.values),i=b.nextIndex}continue}i+=1}return u}function q0(t){return t.trim().replace(/#+$/,"").trim().toLowerCase()}function nl(t,r){if(!t)return;const u=q0(r),a=t.split(/\r?\n/);let i=-1,l=0;for(let m=0;m<a.length;m+=1){const x=a[m].match(/^(#{1,6})\s+(.+?)\s*$/);if(x&&q0(x[2])===u){i=m+1,l=x[1].length;break}}if(i===-1)return;const h=[];for(let m=i;m<a.length;m+=1){const x=a[m].match(/^(#{1,6})\s+(.+?)\s*$/);if(x&&x[1].length<=l)break;h.push(a[m])}const f=h.join(`
|
|
304
|
+
`).trim();return f.length>0?f:void 0}const pi="/.claude/skills/gstack/";function Ey(t){return t.replace(/\\/g,"/")}function Sy(t){var i;if(t.kind!=="skill")return!1;const r=(i=t.paths)!=null&&i.abs?Ey(t.paths.abs):"";if(!r.includes(pi)||!r.endsWith("/SKILL.md")&&!r.endsWith("/skill.md"))return!1;const a=r.slice(r.indexOf(pi)+pi.length).split("/").filter(Boolean);return a.length===2&&a[1].toLowerCase()==="skill.md"&&a[0]!=="gstack"}function V0(t){const r=new Set,u=[];for(const a of t){const i=a==null?void 0:a.trim();!i||r.has(i)||(r.add(i),u.push(i))}return u.length>0?u:void 0}function zy(t){var h,f,m;const r=tl(t.raw),u=nl(t.raw,"When to invoke this skill"),a=t.name||t.dirName||"unknown",i=t.description||t.preview||void 0,l=((f=(h=t.i18n)==null?void 0:h.zh)==null?void 0:f.description)||void 0;return{id:t.id,name:a,displayName:a.startsWith("/")?a:`/${a}`,summary_zh:l,summary_raw:i,whenToUse_raw:u,triggers:V0([...t.triggers??[],...r.triggers??[]]),allowedTools:r.allowedTools,benefitsFrom:r.benefitsFrom,tags:V0(t.tags??[]),sourcePath:(m=t.paths)==null?void 0:m.abs,detailId:t.id,raw:t.raw,status:t.parseError?"failed":"ready"}}function Ay(t){const r=new Set;return{brand:"gstack",subcommand:"list",title_zh:"gstack 工具列表",title_raw:"gstack skills available",kind:"skill-list",items:t.filter(Sy).map(zy).filter(a=>{const i=a.name.toLowerCase();return r.has(i)?!1:(r.add(i),!0)}).sort((a,i)=>a.displayName.localeCompare(i.displayName))}}async function Dy(t){const r=await t.fetchSkills();return Ay(r)}const Ny=Object.freeze({brand:"gstack",subcommand:"list",load:Dy});function jy(t){return t.kind==="plugin"&&t.editorBrand==="hermes"}function Fy(t){const r=new Set,u=[];for(const a of t){const i=a==null?void 0:a.trim();!i||r.has(i)||(r.add(i),u.push(i))}return u.length>0?u:void 0}function Ty(t){var r,u;return((u=(r=t.i18n)==null?void 0:r.zh)==null?void 0:u.description)||void 0}function Py(t){var u;const r=t.name||t.dirName||"unknown";return{id:t.id,name:r,displayName:r.startsWith("/")?r:`/${r}`,summary_zh:Ty(t),summary_raw:t.description||t.preview||void 0,tags:Fy(t.tags??[]),sourcePath:(u=t.paths)==null?void 0:u.abs,detailId:t.id,raw:t.raw,status:t.parseError?"failed":"ready"}}function My(t){const r=new Set;return{brand:"hermes",subcommand:"plugins",title_zh:"Hermes 插件列表",title_raw:"Hermes plugins available",kind:"plugin-list",items:t.filter(jy).map(Py).filter(a=>{const i=a.name.toLowerCase();return r.has(i)?!1:(r.add(i),!0)}).sort((a,i)=>a.displayName.localeCompare(i.displayName))}}async function Oy(t){const r=await t.fetchSkills();return My(r)}const Iy=Object.freeze({brand:"hermes",subcommand:"plugins",load:Oy}),mi="/.hermes/skills/";function Ry(t){return t.replace(/\\/g,"/")}function Ly(t){var i;if(t.kind!=="skill"||t.editorBrand!=="hermes")return!1;const r=(i=t.paths)!=null&&i.abs?Ry(t.paths.abs):"";if(!r.includes(mi)||!r.endsWith("/SKILL.md")&&!r.endsWith("/skill.md"))return!1;const a=r.slice(r.indexOf(mi)+mi.length).split("/").filter(Boolean);return a.length===2&&a[1].toLowerCase()==="skill.md"}function W0(t){const r=new Set,u=[];for(const a of t){const i=a==null?void 0:a.trim();!i||r.has(i)||(r.add(i),u.push(i))}return u.length>0?u:void 0}function By(t){var h,f,m;const r=tl(t.raw),u=nl(t.raw,"When to invoke this skill"),a=t.name||t.dirName||"unknown",i=t.description||t.preview||void 0,l=((f=(h=t.i18n)==null?void 0:h.zh)==null?void 0:f.description)||void 0;return{id:t.id,name:a,displayName:a.startsWith("/")?a:`/${a}`,summary_zh:l,summary_raw:i,whenToUse_raw:u,triggers:W0([...t.triggers??[],...r.triggers??[]]),allowedTools:r.allowedTools,benefitsFrom:r.benefitsFrom,tags:W0(t.tags??[]),sourcePath:(m=t.paths)==null?void 0:m.abs,detailId:t.id,raw:t.raw,status:t.parseError?"failed":"ready"}}function Uy(t){const r=new Set;return{brand:"hermes",subcommand:"skills",title_zh:"Hermes 技能列表",title_raw:"Hermes skills available",kind:"skill-list",items:t.filter(Ly).map(By).filter(a=>{const i=a.name.toLowerCase();return r.has(i)?!1:(r.add(i),!0)}).sort((a,i)=>a.displayName.localeCompare(i.displayName))}}async function $y(t){const r=await t.fetchSkills();return Uy(r)}const Hy=Object.freeze({brand:"hermes",subcommand:"skills",load:$y}),qy={fetchSkills:Ni,fetchSkillDetail:Hi},Vy=Object.freeze([Ny,Hy,Iy,vy,hy,Qb,ty,ay]);function Wy(t){return t==="gstach"?"gstack":t}function Qf(t,r){const u=Wy(t);return Vy.find(a=>a.brand===u&&a.subcommand===r)}function Gy(t,r){return Qf(t,r)!==void 0}async function Ky(t,r,u=qy){const a=Qf(t,r);if(a)return a.load(u)}function Qy(t){return[t.name,t.displayName,t.summary_zh,t.summary_raw,t.whenToUse_zh,t.whenToUse_raw,t.sourcePath,...t.triggers??[],...t.allowedTools??[],...t.benefitsFrom??[],...t.tags??[]].filter(Boolean).join(" ").toLowerCase()}function Zy(t,r){if(!r)return t;const u=tl(r);return{...t,raw:r,whenToUse_raw:t.whenToUse_raw??nl(r,"When to invoke this skill"),triggers:t.triggers??u.triggers,allowedTools:t.allowedTools??u.allowedTools,benefitsFrom:t.benefitsFrom??u.benefitsFrom}}function gi({label:t,values:r}){return!r||r.length===0?null:p.jsxs("div",{className:"mt-3",children:[p.jsx("div",{className:"mb-1 text-caption font-semibold text-muted-foreground",children:t}),p.jsx("div",{className:"flex flex-wrap gap-1.5",children:r.map(u=>p.jsx("span",{className:"rounded-full border border-border bg-muted px-2 py-0.5 font-mono text-caption text-muted-foreground",children:u},`${t}:${u}`))})]})}function Yy({item:t}){const r=t.summary_zh||t.summary_raw||"暂无中文说明,先显示原文。";return p.jsxs("div",{className:"space-y-1",children:[p.jsx("p",{className:"text-body-sm text-foreground",children:r}),t.summary_raw&&t.summary_raw!==r&&p.jsxs("p",{className:"text-caption text-muted-foreground",children:["原文:",t.summary_raw]})]})}function Xy({item:t}){const[r,u]=G.useState(!1),[a,i]=G.useState(t),[l,h]=G.useState(!1),[f,m]=G.useState(null);return G.useEffect(()=>{i(t),m(null),h(!1)},[t]),G.useEffect(()=>{if(!r||a.raw||!a.detailId)return;let x=!1;return h(!0),m(null),Hi(a.detailId).then(b=>{x||i(y=>Zy(y,b.raw))}).catch(b=>{x||m(b instanceof Error?b.message:"详情加载失败")}).finally(()=>{x||h(!1)}),()=>{x=!0}},[r,a.detailId,a.raw]),p.jsxs("article",{className:"rounded-md border border-border bg-background",children:[p.jsxs("button",{type:"button",onClick:()=>u(x=>!x),className:"flex w-full items-start gap-3 px-4 py-3 text-left transition-colors hover:bg-muted/40","aria-expanded":r,children:[p.jsx("span",{className:"mt-1 shrink-0 text-muted-foreground",children:r?p.jsx(Q0,{size:16}):p.jsx(Pi,{size:16})}),p.jsxs("span",{className:"min-w-0 flex-1",children:[p.jsxs("span",{className:"flex flex-wrap items-center gap-2",children:[p.jsx("span",{className:"font-mono text-body-sm font-semibold text-primary",children:a.displayName}),p.jsx("span",{className:Se("rounded-sm px-2 py-0.5 text-caption",a.status==="ready"?"bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"bg-muted text-muted-foreground"),children:a.status==="ready"?"已解析":"待完善"})]}),p.jsx("span",{className:"mt-1 block",children:p.jsx(Yy,{item:a})})]})]}),r&&p.jsxs("div",{className:"border-t border-border px-4 py-3",children:[l&&p.jsx("p",{className:"text-caption text-muted-foreground",children:"正在加载原始 SKILL.md…"}),f&&p.jsxs("p",{className:"text-caption text-destructive",children:["详情加载失败:",f]}),a.whenToUse_raw&&p.jsxs("section",{className:"mt-2",children:[p.jsx("h4",{className:"text-caption font-semibold text-muted-foreground",children:"何时使用 / When to invoke"}),p.jsx("pre",{className:"mt-1 whitespace-pre-wrap rounded-sm bg-muted px-3 py-2 text-caption text-foreground",children:a.whenToUse_zh||a.whenToUse_raw}),a.whenToUse_zh&&a.whenToUse_raw!==a.whenToUse_zh&&p.jsxs("pre",{className:"mt-2 whitespace-pre-wrap rounded-sm bg-muted/60 px-3 py-2 text-caption text-muted-foreground",children:["原文:",a.whenToUse_raw]})]}),p.jsx(gi,{label:"触发词 / triggers",values:a.triggers}),p.jsx(gi,{label:"允许工具 / allowed-tools",values:a.allowedTools}),p.jsx(gi,{label:"关联技能 / benefits-from",values:a.benefitsFrom}),a.sourcePath&&p.jsxs("p",{className:"mt-3 break-all text-caption text-muted-foreground",children:["原始路径:",p.jsx("span",{className:"font-mono",children:a.sourcePath})]}),a.raw&&p.jsxs("details",{className:"mt-3 text-caption text-muted-foreground",children:[p.jsx("summary",{className:"cursor-pointer select-none font-medium text-foreground",children:"查看原始 SKILL.md"}),p.jsx("pre",{className:"mt-2 max-h-80 overflow-auto whitespace-pre-wrap rounded-sm bg-muted px-3 py-2 font-mono",children:a.raw})]})]})]})}function G0({brand:t,subcommand:r}){const[u,a]=G.useState(""),[i,l]=G.useState(null),[h,f]=G.useState(!1),[m,x]=G.useState(null),b=Gy(t,r);G.useEffect(()=>{if(!b)return;let w=!1;return f(!0),x(null),l(null),Ky(t,r).then(C=>{w||l(C??null)}).catch(C=>{w||x(C instanceof Error?C.message:"关联对象加载失败")}).finally(()=>{w||f(!1)}),()=>{w=!0}},[t,r,b]);const y=G.useMemo(()=>{const w=(i==null?void 0:i.items)??[],C=u.trim().toLowerCase();return C?w.filter(k=>Qy(k).includes(C)):w},[i,u]);return b?p.jsxs("section",{className:"mt-4 rounded-md border border-border bg-card/60 px-4 py-4",children:[p.jsxs("div",{className:"flex flex-col gap-3 md:flex-row md:items-start md:justify-between",children:[p.jsxs("div",{children:[p.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[p.jsx("h3",{className:"text-body-sm font-semibold text-foreground",children:(i==null?void 0:i.title_zh)??"关联对象"}),p.jsx("span",{className:"rounded-sm bg-muted px-2 py-0.5 text-caption text-muted-foreground",children:h?"加载中":`${(i==null?void 0:i.items.length)??0} 项`})]}),p.jsx("p",{className:"mt-1 text-caption text-muted-foreground",children:(i==null?void 0:i.title_raw)??"展示该子命令列出或管理的对象详情,保留中文说明与原文。"})]}),p.jsxs("div",{className:"relative w-full md:w-72",children:[p.jsx(xs,{size:14,className:"absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),p.jsx("input",{type:"search",placeholder:"搜索工具、中文说明、原文或触发词…",value:u,onChange:w=>a(w.target.value),className:"w-full rounded-md border border-input bg-background py-1.5 pl-8 pr-2 text-caption placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50"})]})]}),h&&p.jsx("div",{className:"mt-3 rounded-md border border-dashed border-border px-4 py-4 text-caption text-muted-foreground",children:"正在加载关联对象…"}),m&&p.jsxs("div",{className:"mt-3 rounded-md border border-dashed border-border px-4 py-4 text-caption text-destructive",children:["关联对象加载失败:",m,"。子命令 help 仍可正常查看。"]}),!h&&!m&&i&&i.items.length===0&&p.jsx("div",{className:"mt-3 rounded-md border border-dashed border-border px-4 py-4 text-caption text-muted-foreground",children:"暂未发现关联对象。请确认本地技能扫描结果是否包含该来源。"}),!h&&!m&&i&&i.items.length>0&&p.jsx("div",{className:"mt-3 space-y-2",children:y.length===0?p.jsx("div",{className:"rounded-md border border-dashed border-border px-4 py-4 text-caption text-muted-foreground",children:"没有匹配的关联对象"}):y.map(w=>p.jsx(Xy,{item:w},w.id))})]}):null}function Jy(t){return typeof t=="string"&&t.length>0}function ev(t){return Jy(t)?t==="gstach"?"gstack":t:null}function Zf(t,r){const u=el(t.brand,r.name);return[r.name,r.desc_zh,r.helpStatus,u?Hb(u):void 0].filter(Boolean).join(" ").toLowerCase()}function tv(t){return[t.brand,t.version,t.summary_zh,...t.groups.flatMap(r=>[r.name_zh,r.source,...r.flags.flatMap(u=>[u.name,u.args,u.desc_zh,u.raw])]),...(t.subcommands??[]).map(r=>Zf(t,r))].filter(Boolean).join(" ").toLowerCase()}function nv(t,r){var a;const u=r.trim().toLowerCase();if(!u)return t;if(tv(t).includes(u)){const i=[t.brand,t.version,t.summary_zh].filter(Boolean).join(" ").toLowerCase().includes(u),l=t.groups.map(f=>{const x=`${f.name_zh} ${f.source}`.toLowerCase().includes(u)||i?f.flags:f.flags.filter(b=>[b.name,b.args,b.desc_zh,b.raw].filter(Boolean).join(" ").toLowerCase().includes(u));return x.length>0?{...f,flags:x}:null}).filter(f=>f!==null),h=i?t.subcommands:(a=t.subcommands)==null?void 0:a.filter(f=>Zf(t,f).includes(u));return l.length===0&&(!h||h.length===0)?null:{...t,groups:l,subcommands:h}}return null}function rv(t){return t.groups.reduce((r,u)=>r+u.flags.length,0)}function sv({command:t}){return t.raw?p.jsxs("div",{className:"border-b border-border bg-muted/20 px-4 py-4",children:[p.jsxs("div",{className:"mb-2 flex flex-wrap items-center gap-2 text-caption text-muted-foreground",children:[p.jsx("span",{className:"font-semibold text-foreground",children:"原始 help"}),t.sourcePath&&p.jsx("span",{children:t.sourcePath}),t.capturedAt&&p.jsxs("span",{children:["采集于 ",t.capturedAt]})]}),p.jsx("pre",{className:"max-h-[32rem] overflow-auto whitespace-pre-wrap rounded-md border border-border bg-background px-4 py-3 font-mono text-caption text-foreground",children:t.raw})]}):p.jsx("div",{className:"border-b border-border bg-muted/20 px-4 py-4 text-caption text-muted-foreground",children:"暂未保存该命令的原始 --help 文本。"})}function uv(t){var r;return t.groups.length===0&&(((r=t.subcommands)==null?void 0:r.length)??0)>0?"subcommands":t.groups.length===0&&t.raw?"raw":"flags"}function ov({command:t,activeTab:r,onSelect:u}){const a=[{key:"flags",label:"Flags",count:bs(t)},{key:"subcommands",label:"子命令",count:ys(t)},{key:"raw",label:"原始 help"}];return p.jsx("div",{role:"tablist","aria-label":`${t.brand} 内容切换`,className:"flex shrink-0 flex-wrap gap-2 text-caption",children:a.map(i=>{const l=r===i.key;return p.jsxs("button",{type:"button",role:"tab","aria-selected":l,onClick:()=>u(i.key),className:Se("rounded-full border px-3 py-1.5 transition-colors",l?"border-primary bg-primary text-primary-foreground":"border-border bg-background text-muted-foreground hover:bg-muted/70 hover:text-foreground"),children:[p.jsx("span",{children:i.label}),i.count!==void 0&&p.jsx("span",{className:"ml-1 font-mono",children:i.count})]},`${t.brand}:${i.key}`)})})}function av({commands:t,onSelectBrand:r}){return p.jsx("div",{className:"grid gap-3 lg:grid-cols-2 2xl:grid-cols-3",children:t.map(u=>{var h;const a=bs(u),i=ys(u),l=((h=u.subcommands)==null?void 0:h.filter(f=>f.helpStatus==="ready").length)??0;return p.jsxs("section",{className:"rounded-md border border-border bg-card p-4 transition-colors hover:border-primary",children:[p.jsxs("div",{className:"flex items-start gap-3",children:[p.jsx(Qu,{brand:u.brand,iconBrand:u.iconBrand}),p.jsxs("div",{className:"min-w-0 flex-1",children:[p.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[p.jsx("h2",{className:"font-mono text-h4 font-semibold text-foreground",children:u.brand}),u.version&&p.jsxs("span",{className:"rounded-sm bg-muted px-2 py-0.5 text-caption text-muted-foreground",children:["v",u.version]})]}),p.jsx("p",{className:"mt-1 line-clamp-2 text-body-sm text-muted-foreground",children:u.summary_zh})]})]}),p.jsxs("div",{className:"mt-4 grid grid-cols-3 gap-2",children:[p.jsxs("div",{className:"rounded-md bg-muted px-2 py-2",children:[p.jsx("div",{className:"font-mono text-body-sm font-semibold text-foreground",children:a}),p.jsx("div",{className:"text-caption text-muted-foreground",children:"Flags"})]}),p.jsxs("div",{className:"rounded-md bg-muted px-2 py-2",children:[p.jsx("div",{className:"font-mono text-body-sm font-semibold text-foreground",children:i}),p.jsx("div",{className:"text-caption text-muted-foreground",children:"子命令"})]}),p.jsxs("div",{className:"rounded-md bg-emerald-500/10 px-2 py-2",children:[p.jsx("div",{className:"font-mono text-body-sm font-semibold text-emerald-700 dark:text-emerald-300",children:l}),p.jsx("div",{className:"text-caption text-muted-foreground",children:"已采集"})]})]}),r&&p.jsxs("button",{type:"button",onClick:()=>r(u.brand),className:"mt-4 inline-flex items-center gap-1 rounded-md border border-border px-3 py-1.5 text-caption font-medium text-muted-foreground transition-colors hover:bg-primary-soft hover:text-primary",children:["查看详情",p.jsx(Pi,{size:14})]})]},u.brand)})})}function iv({command:t}){var i,l;const r=((i=t.subcommands)==null?void 0:i.filter(h=>h.helpStatus==="ready").length)??0,u=((l=t.subcommands)==null?void 0:l.filter(h=>h.helpStatus!=="ready").length)??0;async function a(){var h;await((h=navigator.clipboard)==null?void 0:h.writeText(t.brand))}return p.jsxs("aside",{className:"detail sticky top-0 flex max-h-full flex-col gap-5 overflow-y-auto",children:[p.jsxs("div",{children:[p.jsx("p",{className:"text-caption font-semibold uppercase tracking-[0.08em] text-muted-foreground",children:"命令上下文"}),p.jsxs("div",{className:"mt-3 flex items-start gap-3",children:[p.jsx(Qu,{brand:t.brand,iconBrand:t.iconBrand}),p.jsxs("div",{className:"min-w-0",children:[p.jsx("h3",{className:"font-mono text-body font-semibold text-foreground",children:t.brand}),p.jsx("p",{className:"mt-1 text-caption text-muted-foreground",children:t.summary_zh})]})]})]}),p.jsxs("dl",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-2 text-body-sm",children:[p.jsx("dt",{className:"text-muted-foreground",children:"Flags"}),p.jsx("dd",{className:"font-mono text-caption",children:bs(t)}),p.jsx("dt",{className:"text-muted-foreground",children:"子命令"}),p.jsx("dd",{className:"font-mono text-caption",children:ys(t)}),p.jsx("dt",{className:"text-muted-foreground",children:"已采集"}),p.jsx("dd",{className:"font-mono text-caption",children:r}),p.jsx("dt",{className:"text-muted-foreground",children:"待补充"}),p.jsx("dd",{className:"font-mono text-caption",children:u})]}),p.jsxs("div",{className:"rounded-md border border-border bg-background px-3 py-3",children:[p.jsxs("div",{className:"mb-2 flex items-center gap-2 text-caption font-semibold text-muted-foreground",children:[p.jsx(bm,{size:14}),"快速提示"]}),p.jsx("p",{className:"text-body-sm text-foreground",children:"先用搜索定位 flag 或子命令,再切换到原始 help 校对上下文。"})]}),p.jsxs("button",{type:"button",onClick:()=>void a(),className:"inline-flex items-center justify-center gap-2 rounded-md border border-border px-3 py-2 text-body-sm text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",children:[p.jsx(lm,{size:15}),"复制命令名"]})]})}function lv({brand:t,subcommand:r}){const u=el(t,r.name);return u?p.jsxs("div",{className:"rounded-md border border-border bg-background",children:[p.jsxs("div",{className:"border-b border-border px-4 py-3",children:[p.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[p.jsxs("h3",{className:"font-mono text-body-sm font-semibold text-foreground",children:[u.brand," ",u.subcommand]}),p.jsxs("span",{className:"rounded-sm bg-muted px-2 py-0.5 text-caption text-muted-foreground",children:[rv(u)," 项"]})]}),p.jsx("p",{className:"mt-1 text-body-sm text-muted-foreground",children:u.summary_zh}),u.usage&&p.jsx("pre",{className:"mt-3 overflow-x-auto rounded-sm bg-muted px-3 py-2 font-mono text-caption text-foreground",children:u.usage})]}),p.jsx("div",{className:"divide-y divide-border",children:u.groups.map(a=>p.jsxs("div",{className:"px-4 py-3",children:[p.jsxs("div",{className:"mb-2 flex items-center gap-2 text-caption font-semibold text-muted-foreground",children:[p.jsx("span",{children:a.name_zh}),p.jsx("span",{className:"rounded-sm bg-muted px-2 py-0.5",children:a.flags.length})]}),p.jsx("div",{className:"overflow-hidden rounded-md border border-border",children:a.flags.map(i=>p.jsxs("div",{className:Se("grid gap-2 border-b border-border px-3 py-3 last:border-b-0","lg:grid-cols-[minmax(160px,0.8fr)_minmax(0,1.4fr)]"),children:[p.jsxs("div",{className:"min-w-0",children:[p.jsx("code",{className:"break-words rounded-sm bg-muted px-1.5 py-0.5 font-mono text-caption text-primary",children:i.name}),i.args&&p.jsx("div",{className:"mt-1 break-words font-mono text-caption text-muted-foreground",children:i.args})]}),p.jsxs("div",{className:"min-w-0",children:[p.jsx("p",{className:"text-body-sm text-foreground",children:i.desc_zh}),p.jsx("p",{className:"mt-1 break-words text-caption text-muted-foreground",children:i.raw})]})]},`${u.brand}:${u.subcommand}:${a.name_zh}:${i.name}:${i.args??""}`))})]},`${u.brand}:${u.subcommand}:${a.name_zh}`))}),u.raw&&p.jsxs("details",{className:"border-t border-border px-4 py-3 text-caption text-muted-foreground",children:[p.jsx("summary",{className:"cursor-pointer select-none font-medium text-foreground",children:"查看原始 help"}),p.jsx("pre",{className:"mt-3 max-h-80 overflow-auto whitespace-pre-wrap rounded-sm bg-muted px-3 py-2 font-mono",children:u.raw})]}),p.jsx(G0,{brand:t,subcommand:r.name})]}):p.jsxs(p.Fragment,{children:[p.jsxs("div",{className:"rounded-md border border-dashed border-border bg-background px-4 py-4",children:[p.jsx("div",{className:"font-mono text-body-sm font-semibold text-foreground",children:r.name}),p.jsx("p",{className:"mt-1 text-body-sm text-muted-foreground",children:r.desc_zh}),p.jsx("p",{className:"mt-3 text-caption text-muted-foreground",children:"该子命令暂未采集详细帮助。当前可查看摘要,后续补充 --help 详情。"})]}),p.jsx(G0,{brand:t,subcommand:r.name})]})}function cv({brand:t,subcommands:r,selectedName:u,onSelect:a}){const[i,l]=G.useState(""),h=i.trim().toLowerCase(),f=h?r.filter(y=>`${y.name} ${y.desc_zh}`.toLowerCase().includes(h)):r;if(r.length===0)return null;const x=f.some(y=>y.name===u)?u:void 0,b=f.find(y=>y.name===x);return p.jsxs("div",{className:"border-b border-border bg-muted/20 px-4 py-3",children:[p.jsxs("div",{className:"mb-3 flex flex-col gap-3 md:flex-row md:items-center md:justify-between",children:[p.jsxs("div",{className:"flex items-center gap-2 text-caption font-semibold text-muted-foreground",children:[p.jsx(dm,{size:14}),p.jsx("span",{children:"子命令"}),p.jsx("span",{className:"rounded-sm bg-muted px-2 py-0.5",children:r.length})]}),p.jsxs("div",{className:"relative w-full md:w-64",children:[p.jsx(xs,{size:14,className:"absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),p.jsx("input",{type:"search",placeholder:"过滤子命令…",value:i,onChange:y=>l(y.target.value),className:"w-full rounded-md border border-input bg-background py-1.5 pl-8 pr-2 text-caption placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50"})]})]}),f.length===0?p.jsx("div",{className:"rounded-md border border-dashed border-border px-4 py-4 text-caption text-muted-foreground",children:"没有匹配的子命令"}):p.jsxs(p.Fragment,{children:[p.jsx("div",{role:"tablist","aria-label":`${t} 子命令`,className:"mb-3 flex gap-2 overflow-x-auto pb-1",children:f.map(y=>{const w=el(t,y.name),C=y.name===x;return p.jsxs("button",{type:"button",role:"tab","aria-selected":C,"aria-controls":`${t}-${y.name}-panel`,onClick:()=>a(y.name),className:Se("flex shrink-0 items-center gap-1 rounded-full border px-3 py-1.5 font-mono text-caption transition-colors",C?"border-primary bg-primary text-primary-foreground":"border-border bg-background text-foreground hover:bg-muted/70"),children:[p.jsx("span",{children:y.name}),p.jsx("span",{className:Se("h-1.5 w-1.5 rounded-full",w?"bg-emerald-500":"bg-muted-foreground/50"),"aria-label":w?"已采集帮助":"暂无详细帮助"})]},`${t}:${y.name}`)})}),p.jsx("div",{role:"tabpanel",id:x?`${t}-${x}-panel`:void 0,children:b?p.jsx(lv,{brand:t,subcommand:b}):p.jsx("div",{className:"rounded-md border border-dashed border-border px-4 py-4 text-caption text-muted-foreground",children:"选择一个子命令查看帮助详情。绿色圆点表示已采集 --help 详情。"})})]})]})}function dv({selectedBrand:t,query:r,onQuery:u,onSelectBrand:a}){const[i,l]=G.useState(""),[h,f]=G.useState(new Set),[m,x]=G.useState({}),[b,y]=G.useState({}),w=r??i,C=ev(t),k=G.useMemo(()=>C?cs.filter(L=>L.brand===C):cs,[C]),F=G.useMemo(()=>k.map(L=>nv(L,w)).filter(L=>L!==null),[k,w]),A=h1(k),q=p1(k),I=C!==null,T=C??"";function R(L,ue){const K=`${L}:${ue}`;f(ve=>{const fe=new Set(ve);return fe.has(K)?fe.delete(K):fe.add(K),fe})}function j(L,ue){x(K=>({...K,[L]:K[L]===ue?void 0:ue}))}function U(L,ue){y(K=>({...K,[L]:ue}))}function Y(L){if(u){u(L);return}l(L)}const ne=!I&&w.trim().length===0,ee=I?F[0]??k[0]??null:null;return p.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-4",children:[p.jsx("section",{className:"rounded-md border border-border bg-card px-4 py-3",children:p.jsxs("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-end lg:justify-between",children:[p.jsxs("div",{children:[p.jsx("h1",{className:"text-h4 font-semibold text-foreground",children:I?p.jsxs("span",{className:"flex items-center gap-2",children:[p.jsx("span",{className:"font-mono text-primary",children:T}),p.jsx("span",{className:"text-muted-foreground",children:"命令手册"})]}):"CLI 命令手册"}),p.jsx("p",{className:"mt-1 max-w-3xl text-body-sm text-muted-foreground",children:I?p.jsxs(p.Fragment,{children:["该品牌的 flag 与子命令详情,",A," 个 flag / ",q," 个子命令。"]}):p.jsxs(p.Fragment,{children:["5 个常用 CLI 的能力地图,覆盖 ",A," 个 flag 和 ",q," 个子命令。"]})})]}),p.jsxs("div",{className:"relative w-full lg:w-80",children:[p.jsx(xs,{size:16,className:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground"}),p.jsx("input",{type:"search",placeholder:I?"搜索当前命令的 flag/子命令/说明…":"搜索 flag、子命令、说明或命令…",value:w,onChange:L=>Y(L.target.value),className:"w-full rounded-md border border-input bg-background py-2 pl-9 pr-3 text-body-sm placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50"})]})]})}),F.length===0?p.jsx("div",{className:"detail flex min-h-48 items-center justify-center",children:p.jsx("p",{className:"text-body-sm text-muted-foreground",children:"没有匹配的命令能力"})}):ne?p.jsx(av,{commands:F,onSelectBrand:a}):p.jsxs("div",{className:Se("grid min-h-0 gap-4",I&&"xl:grid-cols-[minmax(0,1fr)_300px]"),children:[p.jsx("div",{className:"space-y-4 pb-2",children:F.map(L=>{const ue=b[L.brand]??uv(L);return p.jsxs("section",{className:"overflow-hidden rounded-md border border-border bg-card",children:[p.jsxs("div",{className:"flex flex-col gap-3 border-b border-border p-4 sm:flex-row sm:items-start sm:justify-between",children:[p.jsxs("div",{className:"flex min-w-0 items-start gap-3",children:[p.jsx(Qu,{brand:L.brand,iconBrand:L.iconBrand}),p.jsxs("div",{className:"min-w-0",children:[p.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[p.jsx("h2",{className:"font-mono text-h4 font-semibold text-foreground",children:L.brand}),L.version&&p.jsxs("span",{className:"rounded-sm bg-muted px-2 py-0.5 text-caption text-muted-foreground",children:["v",L.version]})]}),p.jsx("p",{className:"mt-1 text-body-sm text-muted-foreground",children:L.summary_zh})]})]}),p.jsx(ov,{command:L,activeTab:ue,onSelect:K=>U(L.brand,K)})]}),ue==="subcommands"&&p.jsx(cv,{brand:L.brand,subcommands:L.subcommands??[],selectedName:m[L.brand],onSelect:K=>j(L.brand,K)}),ue==="raw"&&p.jsx(sv,{command:L}),ue==="flags"&&L.groups.length>0&&p.jsx("div",{className:"divide-y divide-border",children:L.groups.map(K=>{const ve=`${L.brand}:${K.name_zh}`,fe=h.has(ve);return p.jsxs("div",{children:[p.jsxs("button",{type:"button",onClick:()=>R(L.brand,K.name_zh),className:"flex w-full items-center gap-2 px-4 py-3 text-left transition-colors hover:bg-muted/60","aria-expanded":!fe,children:[fe?p.jsx(Pi,{size:16}):p.jsx(Q0,{size:16}),p.jsx("span",{className:"font-medium text-foreground",children:K.name_zh}),p.jsx("span",{className:"rounded-sm bg-muted px-2 py-0.5 text-caption text-muted-foreground",children:K.flags.length}),p.jsx("span",{className:"ml-auto text-caption text-muted-foreground",children:K.source==="explicit"?"原始分组":"智能分组"})]}),!fe&&p.jsx("div",{className:"px-4 pb-4",children:p.jsx("div",{className:"overflow-hidden rounded-md border border-border",children:K.flags.map(ie=>p.jsxs("div",{className:Se("grid gap-2 border-b border-border bg-background px-3 py-3 last:border-b-0","lg:grid-cols-[minmax(180px,0.9fr)_minmax(0,1.4fr)]"),children:[p.jsxs("div",{className:"min-w-0",children:[p.jsx("code",{className:"break-words rounded-sm bg-muted px-1.5 py-0.5 font-mono text-caption text-primary",children:ie.name}),ie.args&&p.jsx("div",{className:"mt-1 break-words font-mono text-caption text-muted-foreground",children:ie.args})]}),p.jsxs("div",{className:"min-w-0",children:[p.jsx("p",{className:"text-body-sm text-foreground",children:ie.desc_zh}),p.jsx("p",{className:"mt-1 break-words text-caption text-muted-foreground",children:ie.raw})]})]},`${ve}:${ie.name}:${ie.args??""}`))})})]},ve)})})]},L.brand)})}),ee&&p.jsx("section",{className:"hidden xl:block",children:p.jsx(iv,{command:ee})})]})]})}function fv(){return p.jsx("div",{className:"grid h-full place-items-center",children:p.jsxs("div",{className:"detail mx-auto max-w-lg text-center",children:[p.jsx("div",{className:"mx-auto mb-4 grid h-12 w-12 place-items-center rounded-full bg-primary-soft text-primary",children:p.jsx(Y0,{size:22})}),p.jsx("p",{className:"text-h4 text-foreground",children:"编辑器"}),p.jsx("p",{className:"mt-2 text-body-sm text-muted-foreground",children:"此模块将聚合编辑器与 AI 辅助能力,当前版本尚未实现。"}),p.jsxs("div",{className:"mt-5 inline-flex items-center gap-1 rounded-full bg-muted px-3 py-1 text-caption text-muted-foreground",children:[p.jsx(dr,{size:12}),"待开发"]})]})})}const hv=1e4;function pv(t){const r=G.useRef("");G.useEffect(()=>{let u;const a=async()=>{try{const i=await fetch("/api/reload-state");if(!i.ok)return;const l=await i.json();l.lastReloadAt&&l.lastReloadAt!==r.current&&(r.current&&t(),r.current=l.lastReloadAt)}catch{}};return a(),u=setInterval(a,hv),()=>{u&&clearInterval(u)}},[t])}const mv={module:"home",view:"home",editorFilter:null,tierFilter:null,kindFilter:null,query:"",commandQuery:"",selectedId:null,selectedCommandBrand:null};function gv(t,r){switch(r.type){case"module":return r.module==="home"?{...t,module:"home",view:"home",selectedCommandBrand:null}:r.module==="commands"?{...t,module:"commands",view:"cli",selectedCommandBrand:null}:r.module==="editor"?{...t,module:"editor",view:"editor"}:r.module==="skills"?t.module==="commands"?{...t,module:"skills",view:"skills",selectedCommandBrand:null}:{...t,module:"skills",view:"skills"}:t;case"home":return{...t,module:"home",view:"home",selectedCommandBrand:null};case"dashboard":return{...t,module:"skills",view:"skills",editorFilter:null,tierFilter:null,kindFilter:null,selectedId:null,selectedCommandBrand:null};case"settings":return{...t,view:"settings",selectedCommandBrand:null};case"otherSkills":return{...t,module:"skills",view:"skills",editorFilter:null,tierFilter:"tier-3",kindFilter:null,selectedId:null,selectedCommandBrand:null};case"cli":return{...t,module:"commands",view:"cli",selectedCommandBrand:null};case"editorView":return{...t,module:"editor",view:"editor",selectedCommandBrand:null};case"editor":return{...t,module:"skills",view:"skills",editorFilter:r.key,tierFilter:null,kindFilter:null,selectedId:null,selectedCommandBrand:null};case"tier":return{...t,module:"skills",view:"skills",editorFilter:null,tierFilter:r.tier,kindFilter:null,selectedId:null,selectedCommandBrand:null};case"query":return{...t,query:r.query};case"commandQuery":return{...t,commandQuery:r.query};case"kind":return{...t,kindFilter:r.kind};case"select":return{...t,selectedId:r.id};case"selectCommandBrand":return{...t,module:"commands",view:"cli",selectedCommandBrand:r.brand};default:return t}}function xv(){const[t,r]=G.useState([]),[u,a]=G.useState(null),[i,l]=G.useState(!0),[h,f]=G.useState(null),[m,x]=G.useState(!1),[b,y]=G.useReducer(gv,mv);async function w(){l(!0),f(null);try{const[A,q]=await Promise.all([Ni(),v0()]);r(A),a(q)}catch(A){f(A instanceof Error?A.message:"加载失败")}finally{l(!1)}}G.useEffect(()=>{w()},[]);const C=G.useCallback(async()=>{try{const[A,q]=await Promise.all([Ni(),v0()]);r(A),a(q)}catch{}},[]);pv(C);async function k(){x(!0);try{await bg(),await w()}finally{x(!1)}}function F(){return b.view==="home"?p.jsx(Nb,{stats:u,items:t,onOpenSkills:()=>y({type:"dashboard"}),onOpenCommands:()=>y({type:"module",module:"commands"}),onOpenOtherSkills:()=>y({type:"otherSkills"})}):b.view==="cli"?p.jsx(dv,{selectedBrand:b.selectedCommandBrand,query:b.commandQuery,onQuery:A=>y({type:"commandQuery",query:A}),onSelectBrand:A=>y({type:"selectCommandBrand",brand:A})}):b.view==="editor"?p.jsx(fv,{}):i?p.jsx("p",{className:"text-body-sm text-muted-foreground",children:"加载中…"}):h?p.jsx("div",{className:"detail border-destructive",children:p.jsxs("p",{className:"text-body-sm text-destructive",children:["加载失败:",h]})}):b.view==="settings"?p.jsx(Fb,{}):p.jsx(Ab,{items:t,editorFilter:b.editorFilter,onEditorFilter:A=>y({type:"editor",key:A}),tierFilter:b.tierFilter,onTier:A=>y({type:"tier",tier:A}),query:b.query,onQuery:A=>y({type:"query",query:A}),kindFilter:b.kindFilter,onKind:A=>y({type:"kind",kind:A}),selectedId:b.selectedId,onSelect:A=>y({type:"select",id:A})})}return p.jsxs("div",{className:"app-shell",children:[p.jsx(C1,{module:b.module,onModule:A=>y({type:"module",module:A}),onReload:k,reloading:m,searchValue:b.module==="commands"?b.commandQuery:b.query,onSearch:A=>{if(b.module==="commands"){y({type:"commandQuery",query:A});return}b.module==="home"&&y({type:"dashboard"}),y({type:"query",query:A})},scanStatus:i?"loading":m?"syncing":h?"error":"ready",skillCount:(u==null?void 0:u.total)??t.length}),p.jsx(g1,{module:b.module,view:b.view,editorFilter:b.editorFilter,selectedCommandBrand:b.selectedCommandBrand,stats:u,onHome:()=>y({type:"home"}),onSettings:()=>y({type:"settings"}),onCommandBrand:A=>y({type:"selectCommandBrand",brand:A}),onEditor:A=>y({type:"editor",key:A})}),p.jsx("main",{className:"main-pane",children:F()})]})}const Yf=document.getElementById("app");if(!Yf)throw new Error("挂载节点 #app 不存在");nm.createRoot(Yf).render(p.jsx(G.StrictMode,{children:p.jsx(xv,{})}));
|