PageSourceSearch

https://beatbandit.ai/assets/index-CzOd9Km7.js

js beatbandit.ai collected 2026-10-05 11:50:56 UTC 998,192 bytes, 360 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/AuthProviderRoute-to8w50M_.js","assets/SupabaseProvider-CTgOxySk.js","assets/supabaseAuthClient-D4COccm1.js","assets/ProtectedRoute-CwNFzpYP.js","assets/useSupabaseAuth-DG28FngJ.js","assets/authRedirect-DCYLoor1.js","assets/LinearProgress-DOLkLyql.js","assets/taskCenterStorage-CJYyvdpT.js","assets/weaveApi-BNjBXpjA.js","assets/axiosConfig-BS0LIV0L.js","assets/useProjects-CIew3vEQ.js","assets/useQuery-BcbK_yvX.js","assets/useInfiniteQuery-DMg-BX9J.js","assets/projectSchemas-h1QnwtOV.js","assets/screenplaySchemas-D4JI8Qiv.js","assets/analysisWizardApi-B7xI326T.js","assets/screenplayWritingVoiceApi-Cpf7xo8c.js","assets/roomReviewApi-C0Q1BF9_.js","assets/beatWizardApi-Dv9a4vr-.js","assets/sequenceWizardApi-Bg747tWV.js","assets/continuityAuditApi-DqoRixYA.js","assets/diffProposalApi-LIkrBvw3.js","assets/polishWizardApi-Czm7X7e9.js","assets/sceneListRevisionApi-CC1krjUy.js","assets/shotApi-DuiNJ0uk.js","assets/imageAsyncJobsApi-DTAYNH6t.js","assets/sceneWizardApi-DgKw_1Us.js","assets/changeWizardApi-DVSm50y1.js","assets/novelManuscriptGenerationApi-DK67A8AI.js","assets/planningRevisionApi-UdBlb1b8.js","assets/editingRevisionApi-Ctq7CtHI.js","assets/novelManuscriptTaskCenter-Befn2lfB.js","assets/imageAsyncTaskCenter-DUtC5a6Z.js","assets/screenplayWriterTaskCenter-CmD3v1aO.js","assets/storyBootstrapTaskCenter-D7McKT_y.js","assets/shotListTaskCenter-BpPEtr1H.js","assets/CircularProgress-CFKeHsf1.js","assets/ProjectList-ZHEMVM-g.js","assets/useTemplate-ViNE3wSO.js","assets/ConfirmDialog-zWAJ0PN3.js","assets/TrendingUp-DOlPqcSv.js","assets/Menu-BAMQbaXI.js","assets/ownerWindow-D5LHhVun.js","assets/Alert-BXc9IPcV.js","assets/Paper-2iw6XA5a.js","assets/IconButton-DX7NfjoN.js","assets/useControlled-C1WEhlQX.js","assets/MenuItem-CKC7Jjka.js","assets/dividerClasses-CE6pxdyz.js","assets/DialogContentText-DJN-e2p0.js","assets/AccountStatistics-ETtOq2j0.js","assets/AdminPanelSettings-DvQ8SioH.js","assets/Grid-NNIo4zT1.js","assets/requirePropFactory-CXHKSpYe.js","assets/Psychology-bfYi73Ql.js","assets/Divider-UFPhkgyE.js","assets/DangerZone-DdMBOwAX.js","assets/useMutation-CJKToZ6s.js","assets/Warning-Ps4lknT4.js","assets/ListItem-B456oJov.js","assets/Security-CggzCUdN.js","assets/useBillingPreference-D9W5TnwM.js","assets/billingApi-B525x-Ud.js","assets/FormControlLabel-Cvt0lc2T.js","assets/TextField-BLDfXARA.js","assets/Stack-E99Gdh2J.js","assets/styled-D002SLmF.js","assets/useThemeProps-Dhrs3fnV.js","assets/getThemeProps-whaKXyLK.js","assets/Checkbox-CDjSoqnY.js","assets/SwitchBase-B_U2OR8-.js","assets/Info-CA3gQy_l.js","assets/BillingPreference-CUTR11KH.js","assets/Avatar-C-SXWBlB.js","assets/Person-Bgotsgvw.js","assets/Tabs-Ba5iDgru.js","assets/createSvgIcon-DaEeqn1R.js","assets/designTokens-CHJCN-yJ.js","assets/OpenInNew-CqRSraIr.js","assets/Footer-C1DvfyEg.js","assets/Twitter-Bjpi1--0.js","assets/routeChunkPrefetch-0WX0yoLe.js","assets/chunkPrefetch-Db-BfmQX.js","assets/useNovelAdaptation-BlE6m0el.js","assets/novelAdaptationApi-CZpQ3oSP.js","assets/useMediaQuery-BbaHISUJ.js","assets/ToggleButtonGroup-8mfScTM0.js","assets/Popper-t1n9sSlv.js","assets/Autocomplete-BfXap15_.js","assets/usePreviousProps-D6D_fzw_.js","assets/Card-BXrAfFWw.js","assets/CardContent-YIZ_mORG.js","assets/ProjectView-Mi3StT_6.js","assets/Add-DR3ny3xK.js","assets/Restore-ruzW0M8I.js","assets/ExpandMore-5fy3CFZO.js","assets/Snackbar-zJwnOmcl.js","assets/Edit-hGaSq1bW.js","assets/Collapse-Bnk0IQSm.js","assets/ButtonGroup-CVCxmEpG.js","assets/collaborationApi-Bg8o2r1s.js","assets/Toolbar-Cld6iuHK.js","assets/CreditPurchase-BWOXsjG5.js","assets/useAdminAuth-CSLkThHc.js","assets/Container-D2GG3unt.js","assets/CreditPurchaseSuccess-CcJaFRZX.js","assets/CheckCircle-CXsIdQf6.js","assets/AccountBalanceWallet-ogIlKerV.js","assets/BeatLibraryPage-2NG8cRxH.js","assets/MarketingLayout-0M_EGNKO.js","assets/MarketingLayout-KJa7kOqS.css","assets/BeatBanditWall-Ds6vZ21E.js","assets/style-Dx5rZq4Q.js","assets/with-selector-Da0nMLud.js","assets/index-Cj_jwP9h.js","assets/style-BZV40eAE.css","assets/Close-BGxFDry9.js","assets/LandingPage-C3q8gHmw.js","assets/LandingPage-BNz6LL5S.css","assets/AuthPage-DAbMqzUP.js","assets/ResetPasswordPage-YeCwLIiw.js","assets/AuthCallback-CSrJrI1F.js","assets/AccountPage-uYOswElr.js","assets/NovelManu
1scriptEditor-Bi1ZzU8n.js","assets/LexicalRichTextPlugin.prod-CT4SwcTf.js","assets/AccordionSummary-Am8SVHQ6.js","assets/supabaseOAuthApi-DEGLY9ko.js","assets/ArrowBack-wuTO0s01.js","assets/Assessment-gl5Rjglz.js","assets/Link-DobPGoZI.js","assets/ExportDownloadPage-bIyvbj9S.js","assets/useExport-CsIuQC-p.js","assets/AdminRoute-CvBRi6WG.js","assets/AdminDashboard-BTgZuDWN.js","assets/Search-BcRNGXqA.js","assets/TableContainer-BUVhxTHl.js","assets/TableRow-B0KWZW4m.js","assets/Email-xiT1QlHt.js","assets/Analytics-zVJM6IR7.js","assets/PrivacyPolicy-1P84OW15.js","assets/TermsOfService-BDFXh7YT.js","assets/CookiePolicy-BQYx7skW.js","assets/ReturnPolicy--u4bfnNC.js","assets/InvitationPage-vk2eT6X_.js","assets/Error--n9aLARG.js","assets/CheckCircle-D4YsMZEr.js","assets/PricingPage-BKYZ_kzT.js","assets/PricingPage-Bgxegm9f.css","assets/ProjectInvitePage-DPUOU-Z0.js","assets/OAuthConsentPage-SD7rLqPw.js","assets/McpDocsApp-Bz6XpHM_.js","assets/McpDocsApp-BucG8rXt.css","assets/WritePage-DuUQccFk.js","assets/featuresPage-DOF8I0ww.js","assets/featuresPage-DJLPqt6e.css","assets/ProducePage-CxUdYw6s.js","assets/ProducePage-oYj_woTz.css","assets/SamplesPage-CV62xHOc.js","assets/SamplesPage-Cp4Dj5oC.css"])))=>i.map(i=>d[i]);
2var UB=Object.defineProperty;var lR=t=>{throw TypeError(t)};var FB=(t,r,i)=>r in t?UB(t,r,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[r]=i;var gh=(t,r,i)=>FB(t,typeof r!="symbol"?r+"":r,i),Qv=(t,r,i)=>r.has(t)||lR("Cannot "+i);var ee=(t,r,i)=>(Qv(t,r,"read from private field"),i?i.call(t):r.get(t)),bt=(t,r,i)=>r.has(t)?lR("Cannot add the same private member more than once"):r instanceof WeakSet?r.add(t):r.set(t,i),Je=(t,r,i,o)=>(Qv(t,r,"write to private field"),o?o.call(t,i):r.set(t,i),i),lr=(t,r,i)=>(Qv(t,r,"access private method"),i);var _h=(t,r,i,o)=>({set _(l){Je(t,r,l,i)},get _(){return ee(t,r,o)}});function zB(t,r){for(var i=0;i<r.length;i++){const o=r[i];if(typeof o!="string"&&!Array.isArray(o)){for(const l in o)if(l!=="default"&&!(l in t)){const u=Object.getOwnPropertyDescriptor(o,l);u&&Object.defineProperty(t,l,u.get?u:{enumerable:!0,get:()=>o[l]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))o(l);new MutationObserver(l=>{for(const u of l)if(u.type==="childList")for(const d of u.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&o(d)}).observe(document,{childList:!0,subtree:!0});function i(l){const u={};return l.integrity&&(u.integrity=l.integrity),l.referrerPolicy&&(u.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?u.credentials="include":l.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function o(l){if(l.ep)return;l.ep=!0;const u=i(l);fetch(l.href,u)}})();var t9=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function aw(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Lo(t){if(t.__esModule)return t;var r=t.default;if(typeof r=="function"){var i=function o(){return this instanceof o?Reflect.construct(r,arguments,this.constructor):r.apply(this,arguments)};i.prototype=r.prototype}else i={};return Object.defineProperty(i,"__esModule",{value:!0}),Object.keys(t).forEach(function(o){var l=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(i,o,l.get?l:{enumerable:!0,get:function(){return t[o]}})}),i}var wk={exports:{}},Ah={},Sk={exports:{}},Gh={exports:{}};Gh.exports;(function(t,r){/**
3 * @license React
4 * react.development.js
5 *
6 * Copyright (c) Facebook, Inc. and its affiliates.
7 *
8 * This source code is licensed under the MIT license found in the
9 * LICENSE file in the root directory of this source tree.
10 */(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var i="18.3.1",o=Symbol.for("react.element"),l=Symbol.for("react.portal"),u=Symbol.for("react.fragment"),d=Symbol.for("react.strict_mode"),h=Symbol.for("react.profiler"),m=Symbol.for("react.provider"),g=Symbol.for("react.context"),w=Symbol.for("react.forward_ref"),b=Symbol.for("react.suspense"),E=Symbol.for("react.suspense_list"),T=Symbol.for("react.memo"),O=Symbol.for("react.lazy"),R=Symbol.for("react.offscreen"),L=Symbol.iterator,M="@@
10iterator";function G(v){if(v===null||typeof v!="object")return null;var j=L&&v[L]||v[M];return typeof j=="function"?j:null}var $={current:null},z={transition:null},W={current:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1},ae={current:null},Z={},ve=null;function we(v){ve=v}Z.setExtraStackFrame=function(v){ve=v},Z.getCurrentStack=null,Z.getStackAddendum=function(){var v="";ve&&(v+=ve);var j=Z.getCurrentStack;return j&&(v+=j()||""),v};var je=!1,ke=!1,De=!1,N=!1,X=!1,ne={ReactCurrentDispatcher:$,ReactCurrentBatchConfig:z,ReactCurrentOwner:ae};ne.ReactDebugCurrentFrame=Z,ne.ReactCurrentActQueue=W;function ce(v){{for(var j=arguments.length,U=new Array(j>1?j-1:0),V=1;V<j;V++)U[V-1]=arguments[V];_e("warn",v,U)}}function oe(v){{for(var j=arguments.length,U=new Array(j>1?j-1:0),V=1;V<j;V++)U[V-1]=arguments[V];_e("error",v,U)}}function _e(v,j,U){{var V=ne.ReactDebugCurrentFrame,le=V.getStackAddendum();le!==""&&(j+="%s",U=U.concat([le]));var Le=U.map(function(Ee){return String(Ee)});Le.unshift("Warning: "+j),Function.prototype.apply.call(console[v],console,Le)}}var Re={};function Ce(v,j){{var U=v.constructor,V=U&&(U.displayName||U.name)||"ReactClass",le=V+"."+j;if(Re[le])return;oe("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",j,V),Re[le]=!0}}var Ue={isMounted:function(v){return!1},enqueueForceUpdate:function(v,j,U){Ce(v,"forceUpdate")},enqueueReplaceState:function(v,j,U,V){Ce(v,"replaceState")},enqueueSetState:function(v,j,U,V){Ce(v,"setState")}},Me=Object.assign,Fe={};Object.freeze(Fe);function Ze(v,j,U){this.props=v,this.context=j,this.refs=Fe,this.updater=U||Ue}Ze.prototype.isReactComponent={},Ze.prototype.setState=function(v,j){if(typeof v!="object"&&typeof v!="function"&&v!=null)throw new Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,v,j,"setState")},Ze.prototype.forceUpdate=function(v){this.updater.enqueueForceUpdate(this,v,"forceUpdate")};{var pt={isMounted:["isMounted","Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],replaceState:["replaceState","Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]},Ft=function(v,j){Object.defineProperty(Ze.prototype,v,{get:function(){ce("%s(...) is deprecated in plain JavaScript React classes. %s",j[0],j[1])}})};for(var en in pt)pt.hasOwnProperty(en)&&Ft(en,pt[en])}function pn(){}pn.prototype=Ze.prototype;function _t(v,j,U){this.props=v,this.context=j,this.refs=Fe,this.updater=U||Ue}var tn=_t.prototype=new pn;tn.constructor=_t,Me(tn,Ze.prototype),tn.isPureReactComponent=!0;function nn(){var v={current:null};return Object.seal(v),v}var Q=Array.isArray;function jt(v){return Q(v)}function Pt(v){{var j=typeof Symbol=="function"&&Symbol.toStringTag,U=j&&v[Symbol.toStringTag]||v.constructor.name||"Object";return U}}function Mt(v){try{return yn(v),!1}catch{return!0}}function yn(v){return""+v}function Cr(v){if(Mt(v))return oe("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",Pt(v)),yn(v)}function ma(v,j,U){var V=v.displayName;if(V)return V;var le=j.displayName||j.name||"";return le!==""?U+"("+le+")":U}function Mr(v){return v.displayName||"Context"}function Mn(v){if(v==null)return null;if(typeof v.tag=="number"&&oe("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof v=="function")return v.displayName||v.name||null;if(typeof v=="string")return v;switch(v){case u:return"Fragment";case l:return"Portal";case h:return"Profiler";case d:return"StrictMode";case b:return"Suspense";case E:return"SuspenseList"}if(typeof v=="object")switch(v.$$typeof){case g:var j=v;return Mr(j)+".Consumer";case m:var U=v;return Mr(U._context)+".Provider";case w:return ma(v,v.render,"ForwardRef");case T:var V=v.displayName||null;return V!==null?V:Mn(v.type)||"Memo";case O:{var le=v,Le=le._payload,Ee=le._init;try{return Mn(Ee(Le))}catch{return null}}}return null}var gn=Object.prototype.hasOwnProperty,Cn={key:!0,ref:!0,__self:!0,__source:!0},zn,pr,zt;zt={};function $n(v){if(gn.call(v,"ref")){var j=Object.getOwnPropertyDescriptor(v,"ref").get;if(j&&j.isReactWarning)return!1}return v.ref!==void 0}function Rr(v){if(gn.call(v,"key")){var j=Object.getOwnPropertyDescriptor(v,"key").get;if(j&&j.isReactWarning)return!1}return v.key!==void 0}function Ga(v,j){var U=function(){zn||(zn=!0,oe("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",j))};U.isReactWarning=!0,Object.defineProperty(v,"key",{get:U,configurable:!0})}function Ne(v,j){var U=function(){pr||(pr=!0,oe("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",j))};U.isReactWarning=!0,Object.defineProperty(v,"ref",{get:U,configurable:!0})}function ue(v){if(typeof v.ref=="string"&&ae.current&&v.__self&&ae.current.stateNode!==v.__self){var j=Mn(ae.current.type);zt[j]||(oe('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',j,v.ref),zt[j]=!0)}}
vendor: 72,781 bytes, lines 10-77
10var Oe=function(v,j,U,V,le,Le,Ee){var He={$$typeof:o,type:v,key:j,ref:U,props:Ee,_owner:Le};return He._store={},Object.defineProperty(He._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(He,"_self",{configurable:!1,enumerable:!1,writable:!1,value:V}),Object.defineProperty(He,"_source",{configurable:!1,enumerable:!1,writable:!1,value:le}),Object.freeze&&(Object.freeze(He.props),Object.freeze(He)),He};function Ye(v,j,U){var V,le={},Le=null,Ee=null,He=null,it=null;if(j!=null){$n(j)&&(Ee=j.ref,ue(j)),Rr(j)&&(Cr(j.key),Le=""+j.key),He=j.__self===void 0?null:j.__self,it=j.__source===void 0?null:j.__source;for(V in j)gn.call(j,V)&&!Cn.hasOwnProperty(V)&&(le[V]=j[V])}var xt=arguments.length-2;if(xt===1)le.children=U;else if(xt>1){for(var Nt=Array(xt),Bt=0;Bt<xt;Bt++)Nt[Bt]=arguments[Bt+2];Object.freeze&&Object.freeze(Nt),le.children=Nt}if(v&&v.defaultProps){var tt=v.defaultProps;for(V in tt)le[V]===void 0&&(le[V]=tt[V])}if(Le||Ee){var Xt=typeof v=="function"?v.displayName||v.name||"Unknown":v;Le&&Ga(le,Xt),Ee&&Ne(le,Xt)}return Oe(v,Le,Ee,He,it,ae.current,le)}function vt(v,j){var U=Oe(v.type,j,v.ref,v._self,v._source,v._owner,v.props);return U}function $t(v,j,U){if(v==null)throw new Error("React.cloneElement(...): The argument must be a React element, but you passed "+v+".");var V,le=Me({},v.props),Le=v.key,Ee=v.ref,He=v._self,it=v._source,xt=v._owner;if(j!=null){$n(j)&&(Ee=j.ref,xt=ae.current),Rr(j)&&(Cr(j.key),Le=""+j.key);var Nt;v.type&&v.type.defaultProps&&(Nt=v.type.defaultProps);for(V in j)gn.call(j,V)&&!Cn.hasOwnProperty(V)&&(j[V]===void 0&&Nt!==void 0?le[V]=Nt[V]:le[V]=j[V])}var Bt=arguments.length-2;if(Bt===1)le.children=U;else if(Bt>1){for(var tt=Array(Bt),Xt=0;Xt<Bt;Xt++)tt[Xt]=arguments[Xt+2];le.children=tt}return Oe(v.type,Le,Ee,He,it,xt,le)}function rn(v){return typeof v=="object"&&v!==null&&v.$$typeof===o}var an=".",er=":";function Vt(v){var j=/[=:]/g,U={"=":"=0",":":"=2"},V=v.replace(j,function(le){return U[le]});return"$"+V}var qt=!1,It=/\/+/g;function Vi(v){return v.replace(It,"$&/")}function ya(v,j){return typeof v=="object"&&v!==null&&v.key!=null?(Cr(v.key),Vt(""+v.key)):j.toString(36)}function ga(v,j,U,V,le){var Le=typeof v;(Le==="undefined"||Le==="boolean")&&(v=null);var Ee=!1;if(v===null)Ee=!0;else switch(Le){case"string":case"number":Ee=!0;break;case"object":switch(v.$$typeof){case o:case l:Ee=!0}}if(Ee){var He=v,it=le(He),xt=V===""?an+ya(He,0):V;if(jt(it)){var Nt="";xt!=null&&(Nt=Vi(xt)+"/"),ga(it,j,Nt,"",function(Ym){return Ym})}else it!=null&&(rn(it)&&(it.key&&(!He||He.key!==it.key)&&Cr(it.key),it=vt(it,U+(it.key&&(!He||He.key!==it.key)?Vi(""+it.key)+"/":"")+xt)),j.push(it));return 1}var Bt,tt,Xt=0,vn=V===""?an:V+er;if(jt(v))for(var Vo=0;Vo<v.length;Vo++)Bt=v[Vo],tt=vn+ya(Bt,Vo),Xt+=ga(Bt,j,U,tt,le);else{var Vc=G(v);if(typeof Vc=="function"){var _i=v;Vc===_i.entries&&(qt||ce("Using Maps as children is not supported. Use an array of keyed ReactElements instead."),qt=!0);for(var Yc=Vc.call(_i),Kc,Vm=0;!(Kc=Yc.next()).done;)Bt=Kc.value,tt=vn+ya(Bt,Vm++),Xt+=ga(Bt,j,U,tt,le)}else if(Le==="object"){var yp=String(v);throw new Error("Objects are not valid as a React child (found: "+(yp==="[object Object]"?"object with keys {"+Object.keys(v).join(", ")+"}":yp)+"). If you meant to render a collection of children, use an array instead.")}}return Xt}function Yi(v,j,U){if(v==null)return v;var V=[],le=0;return ga(v,V,"","",function(Le){return j.call(U,Le,le++)}),V}function Bs(v){var j=0;return Yi(v,function(){j++}),j}function Us(v,j,U){Yi(v,function(){j.apply(this,arguments)},U)}function No(v){return Yi(v,function(j){return j})||[]}function Fs(v){if(!rn(v))throw new Error("React.Children.only expected to receive a single React element child.");return v}function zs(v){var j={$$typeof:g,_currentValue:v,_currentValue2:v,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};j.Provider={$$typeof:m,_context:j};var U=!1,V=!1,le=!1;{var Le={$$typeof:g,_context:j};Object.defineProperties(Le,{Provider:{get:function(){return V||(V=!0,oe("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")),j.Provider},set:function(Ee){j.Provider=Ee}},_currentValue:{get:function(){return j._currentValue},set:function(Ee){j._currentValue=Ee}},_currentValue2:{get:function(){return j._currentValue2},set:function(Ee){j._currentValue2=Ee}},_threadCount:{get:function(){return j._threadCount},set:function(Ee){j._threadCount=Ee}},Consumer:{get:function(){return U||(U=!0,oe("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")),j.Consumer}},displayName:{get:function(){return j.displayName},set:function(Ee){le||(ce("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",Ee),le=!0)}}}),j.Consumer=Le}return j._currentRenderer=null,j._currentRenderer2=null,j}var _a=-1,qr=0,Ir=1,Wa=2;function Bo(v){if(v._status===_a){var j=v._result,U=j();if(U.then(function(Le){if(v._status===qr||v._status===_a){var Ee=v;Ee._status=Ir,Ee._result=Le}},function(Le){if(v._status===qr||v._status===_a){var Ee=v;Ee._status=Wa,Ee._result=Le}}),v._status===_a){var V=v;V._status=qr,V._result=U}}if(v._status===Ir){var le=v._result;return le===void 0&&oe(`lazy: Expected the result of a dynamic import() call. Instead received: %s
11
12Your code should look like: 
13  const MyComponent = lazy(() => import('./MyComponent'))
14
15Did you accidentally put curly braces around the import?`,le),"default"in le||oe(`lazy: Expected the result of a dynamic import() call. Instead received: %s
16
17Your code should look like: 
18  const MyComponent = lazy(() => import('./MyComponent'))`,le),le.default}else throw v._result}function Uo(v){var j={_status:_a,_result:v},U={$$typeof:O,_payload:j,_init:Bo};{var V,le;Object.defineProperties(U,{defaultProps:{configurable:!0,get:function(){return V},set:function(Le){oe("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),V=Le,Object.defineProperty(U,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return le},set:function(Le){oe("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),le=Le,Object.defineProperty(U,"propTypes",{enumerable:!0})}}})}return U}function Fo(v){v!=null&&v.$$typeof===T?oe("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof v!="function"?oe("forwardRef requires a render function but was given %s.",v===null?"null":typeof v):v.length!==0&&v.length!==2&&oe("forwardRef render functions accept exactly two parameters: props and ref. %s",v.length===1?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),v!=null&&(v.defaultProps!=null||v.propTypes!=null)&&oe("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?");var j={$$typeof:w,render:v};{var U;Object.defineProperty(j,"displayName",{enumerable:!1,configurable:!0,get:function(){return U},set:function(V){U=V,!v.name&&!v.displayName&&(v.displayName=V)}})}return j}var D;D=Symbol.for("react.module.reference");function re(v){return!!(typeof v=="string"||typeof v=="function"||v===u||v===h||X||v===d||v===b||v===E||N||v===R||je||ke||De||typeof v=="object"&&v!==null&&(v.$$typeof===O||v.$$typeof===T||v.$$typeof===m||v.$$typeof===g||v.$$typeof===w||v.$$typeof===D||v.getModuleId!==void 0))}function fe(v,j){re(v)||oe("memo: The first argument must be a component. Instead received: %s",v===null?"null":typeof v);var U={$$typeof:T,type:v,compare:j===void 0?null:j};{var V;Object.defineProperty(U,"displayName",{enumerable:!1,configurable:!0,get:function(){return V},set:function(le){V=le,!v.name&&!v.displayName&&(v.displayName=le)}})}return U}function Se(){var v=$.current;return v===null&&oe(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
191. You might have mismatching versions of React and the renderer (such as React DOM)
202. You might be breaking the Rules of Hooks
213. You might have more than one copy of React in the same app
22See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.`),v}function rt(v){var j=Se();if(v._context!==void 0){var U=v._context;U.Consumer===v?oe("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):U.Provider===v&&oe("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return j.useContext(v)}function Ve(v){var j=Se();return j.useState(v)}function at(v,j,U){var V=Se();return V.useReducer(v,j,U)}function et(v){var j=Se();return j.useRef(v)}function _n(v,j){var U=Se();return U.useEffect(v,j)}function Ht(v,j){var U=Se();return U.useInsertionEffect(v,j)}function Yt(v,j){var U=Se();return U.useLayoutEffect(v,j)}function tr(v,j){var U=Se();return U.useCallback(v,j)}function va(v,j){var U=Se();return U.useMemo(v,j)}function ba(v,j,U){var V=Se();return V.useImperativeHandle(v,j,U)}function Kt(v,j){{var U=Se();return U.useDebugValue(v,j)}}function Qe(){var v=Se();return v.useTransition()}function mi(v){var j=Se();return j.useDeferredValue(v)}function $s(){var v=Se();return v.useId()}function op(v,j,U){var V=Se();return V.useSyncExternalStore(v,j,U)}var Ki=0,Ac,Lc,Mc,qc,Ic,sp,lp;function Hs(){}Hs.__reactDisabledLog=!0;function Nc(){{if(Ki===0){Ac=console.log,Lc=console.info,Mc=console.warn,qc=console.error,Ic=console.group,sp=console.groupCollapsed,lp=console.groupEnd;var v={configurable:!0,enumerable:!0,value:Hs,writable:!0};Object.defineProperties(console,{info:v,log:v,warn:v,error:v,group:v,groupCollapsed:v,groupEnd:v})}Ki++}}function Va(){{if(Ki--,Ki===0){var v={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Me({},v,{value:Ac}),info:Me({},v,{value:Lc}),warn:Me({},v,{value:Mc}),error:Me({},v,{value:qc}),group:Me({},v,{value:Ic}),groupCollapsed:Me({},v,{value:sp}),groupEnd:Me({},v,{value:lp})})}Ki<0&&oe("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var zo=ne.ReactCurrentDispatcher,Qi;function Gs(v,j,U){{if(Qi===void 0)try{throw Error()}catch(le){var V=le.stack.trim().match(/\n( *(at )?)/);Qi=V&&V[1]||""}return`
23`+Qi+v}}var $o=!1,Ws;{var Bc=typeof WeakMap=="function"?WeakMap:Map;Ws=new Bc}function cp(v,j){if(!v||$o)return"";{var U=Ws.get(v);if(U!==void 0)return U}var V;$o=!0;var le=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Le;Le=zo.current,zo.current=null,Nc();try{if(j){var Ee=function(){throw Error()};if(Object.defineProperty(Ee.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Ee,[])}catch(vn){V=vn}Reflect.construct(v,[],Ee)}else{try{Ee.call()}catch(vn){V=vn}v.call(Ee.prototype)}}else{try{throw Error()}catch(vn){V=vn}v()}}catch(vn){if(vn&&V&&typeof vn.stack=="string"){for(var He=vn.stack.split(`
24`),it=V.stack.split(`
25`),xt=He.length-1,Nt=it.length-1;xt>=1&&Nt>=0&&He[xt]!==it[Nt];)Nt--;for(;xt>=1&&Nt>=0;xt--,Nt--)if(He[xt]!==it[Nt]){if(xt!==1||Nt!==1)do if(xt--,Nt--,Nt<0||He[xt]!==it[Nt]){var Bt=`
26`+He[xt].replace(" at new "," at ");return v.displayName&&Bt.includes("<anonymous>")&&(Bt=Bt.replace("<anonymous>",v.displayName)),typeof v=="function"&&Ws.set(v,Bt),Bt}while(xt>=1&&Nt>=0);break}}}finally{$o=!1,zo.current=Le,Va(),Error.prepareStackTrace=le}var tt=v?v.displayName||v.name:"",Xt=tt?Gs(tt):"";return typeof v=="function"&&Ws.set(v,Xt),Xt}function Uc(v,j,U){return cp(v,!1)}function zm(v){var j=v.prototype;return!!(j&&j.isReactComponent)}function Ho(v,j,U){if(v==null)return"";if(typeof v=="function")return cp(v,zm(v));if(typeof v=="string")return Gs(v);switch(v){case b:return Gs("Suspense");case E:return Gs("SuspenseList")}if(typeof v=="object")switch(v.$$typeof){case w:return Uc(v.render);case T:return Ho(v.type,j,U);case O:{var V=v,le=V._payload,Le=V._init;try{return Ho(Le(le),j,U)}catch{}}}return""}var up={},Fc=ne.ReactDebugCurrentFrame;function ft(v){if(v){var j=v._owner,U=Ho(v.type,v._source,j?j.type:null);Fc.setExtraStackFrame(U)}else Fc.setExtraStackFrame(null)}function $m(v,j,U,V,le){{var Le=Function.call.bind(gn);for(var Ee in v)if(Le(v,Ee)){var He=void 0;try{if(typeof v[Ee]!="function"){var it=Error((V||"React class")+": "+U+" type `"+Ee+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof v[Ee]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw it.name="Invariant Violation",it}He=v[Ee](j,Ee,V,U,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(xt){He=xt}He&&!(He instanceof Error)&&(ft(le),oe("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",V||"React class",U,Ee,typeof He),ft(null)),He instanceof Error&&!(He.message in up)&&(up[He.message]=!0,ft(le),oe("Failed %s type: %s",U,He.message),ft(null))}}}function yi(v){if(v){var j=v._owner,U=Ho(v.type,v._source,j?j.type:null);we(U)}else we(null)}var We;We=!1;function zc(){if(ae.current){var v=Mn(ae.current.type);if(v)return`
27
28Check the render method of \``+v+"`."}return""}function fr(v){if(v!==void 0){var j=v.fileName.replace(/^.*[\\\/]/,""),U=v.lineNumber;return`
29
30Check your code at `+j+":"+U+"."}return""}function Go(v){return v!=null?fr(v.__source):""}var Xi={};function Hm(v){var j=zc();if(!j){var U=typeof v=="string"?v:v.displayName||v.name;U&&(j=`
31
32Check the top-level render call using <`+U+">.")}return j}function qn(v,j){if(!(!v._store||v._store.validated||v.key!=null)){v._store.validated=!0;var U=Hm(j);if(!Xi[U]){Xi[U]=!0;var V="";v&&v._owner&&v._owner!==ae.current&&(V=" It was passed a child from "+Mn(v._owner.type)+"."),yi(v),oe('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',U,V),yi(null)}}}function Qt(v,j){if(typeof v=="object"){if(jt(v))for(var U=0;U<v.length;U++){var V=v[U];rn(V)&&qn(V,j)}else if(rn(v))v._store&&(v._store.validated=!0);else if(v){var le=G(v);if(typeof le=="function"&&le!==v.entries)for(var Le=le.call(v),Ee;!(Ee=Le.next()).done;)rn(Ee.value)&&qn(Ee.value,j)}}}function dp(v){{var j=v.type;if(j==null||typeof j=="string")return;var U;if(typeof j=="function")U=j.propTypes;else if(typeof j=="object"&&(j.$$typeof===w||j.$$typeof===T))U=j.propTypes;else return;if(U){var V=Mn(j);$m(U,v.props,"prop",V,v)}else if(j.PropTypes!==void 0&&!We){We=!0;var le=Mn(j);oe("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",le||"Unknown")}typeof j.getDefaultProps=="function"&&!j.getDefaultProps.isReactClassApproved&&oe("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Qr(v){{for(var j=Object.keys(v.props),U=0;U<j.length;U++){var V=j[U];if(V!=="children"&&V!=="key"){yi(v),oe("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",V),yi(null);break}}v.ref!==null&&(yi(v),oe("Invalid attribute `ref` supplied to `React.Fragment`."),yi(null))}}function hr(v,j,U){var V=re(v);if(!V){var le="";(v===void 0||typeof v=="object"&&v!==null&&Object.keys(v).length===0)&&(le+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Le=Go(j);Le?le+=Le:le+=zc();var Ee;v===null?Ee="null":jt(v)?Ee="array":v!==void 0&&v.$$typeof===o?(Ee="<"+(Mn(v.type)||"Unknown")+" />",le=" Did you accidentally export a JSX literal instead of a component?"):Ee=typeof v,oe("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Ee,le)}var He=Ye.apply(this,arguments);if(He==null)return He;if(V)for(var it=2;it<arguments.length;it++)Qt(arguments[it],v);return v===u?Qr(He):dp(He),He}var wa=!1;function Gm(v){var j=hr.bind(null,v);return j.type=v,wa||(wa=!0,ce("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")),Object.defineProperty(j,"type",{enumerable:!1,get:function(){return ce("Factory.type is deprecated. Access the class directly before passing it to createFactory."),Object.defineProperty(this,"type",{value:v}),v}}),j}function $c(v,j,U){for(var V=$t.apply(this,arguments),le=2;le<arguments.length;le++)Qt(arguments[le],V.type);return dp(V),V}function pp(v,j){var U=z.transition;z.transition={};var V=z.transition;z.transition._updatedFibers=new Set;try{v()}finally{if(z.transition=U,U===null&&V._updatedFibers){var le=V._updatedFibers.size;le>10&&ce("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."),V._updatedFibers.clear()}}}var Hc=!1,Vs=null;function Wm(v){if(Vs===null)try{var j=("require"+Math.random()).slice(0,7),U=t&&t[j];Vs=U.call(t,"timers").setImmediate}catch{Vs=function(le){Hc===!1&&(Hc=!0,typeof MessageChannel>"u"&&oe("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));var Le=new MessageChannel;Le.port1.onmessage=le,Le.port2.postMessage(void 0)}}return Vs(v)}var Ji=0,Wo=!1;function Gc(v){{var j=Ji;Ji++,W.current===null&&(W.current=[]);var U=W.isBatchingLegacy,V;try{if(W.isBatchingLegacy=!0,V=v(),!U&&W.didScheduleLegacyUpdate){var le=W.current;le!==null&&(W.didScheduleLegacyUpdate=!1,Qs(le))}}catch(tt){throw gi(j),tt}finally{W.isBatchingLegacy=U}if(V!==null&&typeof V=="object"&&typeof V.then=="function"){var Le=V,Ee=!1,He={then:function(tt,Xt){Ee=!0,Le.then(function(vn){gi(j),Ji===0?Ys(vn,tt,Xt):tt(vn)},function(vn){gi(j),Xt(vn)})}};return!Wo&&typeof Promise<"u"&&Promise.resolve().then(function(){}).then(function(){Ee||(Wo=!0,oe("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"))}),He}else{var it=V;if(gi(j),Ji===0){var xt=W.current;xt!==null&&(Qs(xt),W.current=null);var Nt={then:function(tt,Xt){W.current===null?(W.current=[],Ys(it,tt,Xt)):tt(it)}};return Nt}else{var Bt={then:function(tt,Xt){tt(it)}};return Bt}}}}function gi(v){v!==Ji-1&&oe("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "),Ji=v}function Ys(v,j,U){{var V=W.current;if(V!==null)try{Qs(V),Wm(function(){V.length===0?(W.current=null,j(v)):Ys(v,j,U)})}catch(le){U(le)}else j(v)}}var Ks=!1;function Qs(v){if(!Ks){Ks=!0;var j=0;try{for(;j<v.length;j++){var U=v[j];do U=U(!0);while(U!==null)}v.length=0}catch(V){throw v=v.slice(j+1),V}finally{Ks=!1}}}var fp=hr,hp=$c,Wc=Gm,mp={map:Yi,forEach:Us,count:Bs,toArray:No,only:Fs};r.Children=mp,r.Component=Ze,r.Fragment=u,r.Profiler=h,r.PureComponent=_t,r.StrictMode=d,r.Suspense=b,r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ne,r.act=Gc,r.cloneElement=hp,r.createContext=zs,r.createElement=fp,r.createFactory=Wc,r.createRef=nn,r.forwardRef=Fo,r.isValidElement=rn,r.lazy=Uo,r.memo=fe,r.startTransition=pp,r.unstable_act=Gc,r.useCallback=tr,r.useContext=rt,r.useDebugValue=Kt,r.useDeferredValue=mi,r.useEffect=_n,r.useId=$s,r.useImperativeHandle=ba,r.useInsertionEffect=Ht,r.useLayoutEffect=Yt,r.useMemo=va,r.useReducer=at,r.useRef=et,r.useState=Ve,r.useSyncExternalStore=op,r.useTransition=Qe,r.version=i,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)})()})(Gh,Gh.exports);var $B=Gh.exports;Sk.exports=$B;var k=Sk.exports;const Ua=aw(k),cR=zB({__proto__:null,default:Ua},[k]);/**
33 * @license React
34 * react-jsx-runtime.development.js
35 *
36 * Copyright (c) Facebook, Inc. and its affiliates.
37 *
38 * This source code is licensed under the MIT license found in the
39 * LICENSE file in the root directory of this source tree.
40 */(function(){var t=k,r=Symbol.for("react.element"),i=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),l=Symbol.for("react.strict_mode"),u=Symbol.for("react.profiler"),d=Symbol.for("react.provider"),h=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),w=Symbol.for("react.suspense_list"),b=Symbol.for("react.memo"),E=Symbol.for("react.lazy"),T=Symbol.for("react.offscreen"),O=Symbol.iterator,R="@@iterator";function L(D){if(D===null||typeof D!="object")return null;var re=O&&D[O]||D[R];return typeof re=="function"?re:null}var M=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function G(D){{for(var re=arguments.length,fe=new Array(re>1?re-1:0),Se=1;Se<re;Se++)fe[Se-1]=arguments[Se];$("error",D,fe)}}function $(D,re,fe){{var Se=M.ReactDebugCurrentFrame,rt=Se.getStackAddendum();rt!==""&&(re+="%s",fe=fe.concat([rt]));var Ve=fe.map(function(at){return String(at)});Ve.unshift("Warning: "+re),Function.prototype.apply.call(console[D],console,Ve)}}var z=!1,W=!1,ae=!1,Z=!1,ve=!1,we;we=Symbol.for("react.module.reference");function je(D){return!!(typeof D=="string"||typeof D=="function"||D===o||D===u||ve||D===l||D===g||D===w||Z||D===T||z||W||ae||typeof D=="object"&&D!==null&&(D.$$typeof===E||D.$$typeof===b||D.$$typeof===d||D.$$typeof===h||D.$$typeof===m||D.$$typeof===we||D.getModuleId!==void 0))}function ke(D,re,fe){var Se=D.displayName;if(Se)return Se;var rt=re.displayName||re.name||"";return rt!==""?fe+"("+rt+")":fe}function De(D){return D.displayName||"Context"}function N(D){if(D==null)return null;if(typeof D.tag=="number"&&G("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof D=="function")return D.displayName||D.name||null;if(typeof D=="string")return D;switch(D){case o:return"Fragment";case i:return"Portal";case u:return"Profiler";case l:return"StrictMode";case g:return"Suspense";case w:return"SuspenseList"}if(typeof D=="object")switch(D.$$typeof){case h:var re=D;return De(re)+".Consumer";case d:var fe=D;return De(fe._context)+".Provider";case m:return ke(D,D.render,"ForwardRef");case b:var Se=D.displayName||null;return Se!==null?Se:N(D.type)||"Memo";case E:{var rt=D,Ve=rt._payload,at=rt._init;try{return N(at(Ve))}catch{return null}}}return null}var X=Object.assign,ne=0,ce,oe,_e,Re,Ce,Ue,Me;function Fe(){}Fe.__reactDisabledLog=!0;function Ze(){{if(ne===0){ce=console.log,oe=console.info,_e=console.warn,Re=console.error,Ce=console.group,Ue=console.groupCollapsed,Me=console.groupEnd;var D={configurable:!0,enumerable:!0,value:Fe,writable:!0};Object.defineProperties(console,{info:D,log:D,warn:D,error:D,group:D,groupCollapsed:D,groupEnd:D})}ne++}}function pt(){{if(ne--,ne===0){var D={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:X({},D,{value:ce}),info:X({},D,{value:oe}),warn:X({},D,{value:_e}),error:X({},D,{value:Re}),group:X({},D,{value:Ce}),groupCollapsed:X({},D,{value:Ue}),groupEnd:X({},D,{value:Me})})}ne<0&&G("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var Ft=M.ReactCurrentDispatcher,en;function pn(D,re,fe){{if(en===void 0)try{throw Error()}catch(rt){var Se=rt.stack.trim().match(/\n( *(at )?)/);en=Se&&Se[1]||""}return`
41`+en+D}}var _t=!1,tn;{var nn=typeof WeakMap=="function"?WeakMap:Map;tn=new nn}function Q(D,re){if(!D||_t)return"";{var fe=tn.get(D);if(fe!==void 0)return fe}var Se;_t=!0;var rt=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Ve;Ve=Ft.current,Ft.current=null,Ze();try{if(re){var at=function(){throw Error()};if(Object.defineProperty(at.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(at,[])}catch(Kt){Se=Kt}Reflect.construct(D,[],at)}else{try{at.call()}catch(Kt){Se=Kt}D.call(at.prototype)}}else{try{throw Error()}catch(Kt){Se=Kt}D()}}catch(Kt){if(Kt&&Se&&typeof Kt.stack=="string"){for(var et=Kt.stack.split(`
42`),_n=Se.stack.split(`
43`),Ht=et.length-1,Yt=_n.length-1;Ht>=1&&Yt>=0&&et[Ht]!==_n[Yt];)Yt--;for(;Ht>=1&&Yt>=0;Ht--,Yt--)if(et[Ht]!==_n[Yt]){if(Ht!==1||Yt!==1)do if(Ht--,Yt--,Yt<0||et[Ht]!==_n[Yt]){var tr=`
44`+et[Ht].replace(" at new "," at ");return D.displayName&&tr.includes("<anonymous>")&&(tr=tr.replace("<anonymous>",D.displayName)),typeof D=="function"&&tn.set(D,tr),tr}while(Ht>=1&&Yt>=0);break}}}finally{_t=!1,Ft.current=Ve,pt(),Error.prepareStackTrace=rt}var va=D?D.displayName||D.name:"",ba=va?pn(va):"";return typeof D=="function"&&tn.set(D,ba),ba}function jt(D,re,fe){return Q(D,!1)}function Pt(D){var re=D.prototype;return!!(re&&re.isReactComponent)}function Mt(D,re,fe){if(D==null)return"";if(typeof D=="function")return Q(D,Pt(D));if(typeof D=="string")return pn(D);switch(D){case g:return pn("Suspense");case w:return pn("SuspenseList")}if(typeof D=="object")switch(D.$$typeof){case m:return jt(D.render);case b:return Mt(D.type,re,fe);case E:{var Se=D,rt=Se._payload,Ve=Se._init;try{return Mt(Ve(rt),re,fe)}catch{}}}return""}var yn=Object.prototype.hasOwnProperty,Cr={},ma=M.ReactDebugCurrentFrame;function Mr(D){if(D){var re=D._owner,fe=Mt(D.type,D._source,re?re.type:null);ma.setExtraStackFrame(fe)}else ma.setExtraStackFrame(null)}function Mn(D,re,fe,Se,rt){{var Ve=Function.call.bind(yn);for(var at in D)if(Ve(D,at)){var et=void 0;try{if(typeof D[at]!="function"){var _n=Error((Se||"React class")+": "+fe+" type `"+at+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof D[at]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw _n.name="Invariant Violation",_n}et=D[at](re,at,Se,fe,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(Ht){et=Ht}et&&!(et instanceof Error)&&(Mr(rt),G("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",Se||"React class",fe,at,typeof et),Mr(null)),et instanceof Error&&!(et.message in Cr)&&(Cr[et.message]=!0,Mr(rt),G("Failed %s type: %s",fe,et.message),Mr(null))}}}var gn=Array.isArray;function Cn(D){return gn(D)}function zn(D){{var re=typeof Symbol=="function"&&Symbol.toStringTag,fe=re&&D[Symbol.toStringTag]||D.constructor.name||"Object";return fe}}function pr(D){try{return zt(D),!1}catch{return!0}}function zt(D){return""+D}function $n(D){if(pr(D))return G("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",zn(D)),zt(D)}var Rr=M.ReactCurrentOwner,Ga={key:!0,ref:!0,__self:!0,__source:!0},Ne,ue;function Oe(D){if(yn.call(D,"ref")){var re=Object.getOwnPropertyDescriptor(D,"ref").get;if(re&&re.isReactWarning)return!1}return D.ref!==void 0}function Ye(D){if(yn.call(D,"key")){var re=Object.getOwnPropertyDescriptor(D,"key").get;if(re&&re.isReactWarning)return!1}return D.key!==void 0}function vt(D,re){typeof D.ref=="string"&&Rr.current}function $t(D,re){{var fe=function(){Ne||(Ne=!0,G("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",re))};fe.isReactWarning=!0,Object.defineProperty(D,"key",{get:fe,configurable:!0})}}function rn(D,re){{var fe=function(){ue||(ue=!0,G("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",re))};fe.isReactWarning=!0,Object.defineProperty(D,"ref",{get:fe,configurable:!0})}}var an=function(D,re,fe,Se,rt,Ve,at){var et={$$typeof:r,type:D,key:re,ref:fe,props:at,_owner:Ve};return et._store={},Object.defineProperty(et._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(et,"_self",{configurable:!1,enumerable:!1,writable:!1,value:Se}),Object.defineProperty(et,"_source",{configurable:!1,enumerable:!1,writable:!1,value:rt}),Object.freeze&&(Object.freeze(et.props),Object.freeze(et)),et};function er(D,re,fe,Se,rt){{var Ve,at={},et=null,_n=null;fe!==void 0&&($n(fe),et=""+fe),Ye(re)&&($n(re.key),et=""+re.key),Oe(re)&&(_n=re.ref,vt(re,rt));for(Ve in re)yn.call(re,Ve)&&!Ga.hasOwnProperty(Ve)&&(at[Ve]=re[Ve]);if(D&&D.defaultProps){var Ht=D.defaultProps;for(Ve in Ht)at[Ve]===void 0&&(at[Ve]=Ht[Ve])}if(et||_n){var Yt=typeof D=="function"?D.displayName||D.name||"Unknown":D;et&&$t(at,Yt),_n&&rn(at,Yt)}return an(D,et,_n,rt,Se,Rr.current,at)}}var Vt=M.ReactCurrentOwner,qt=M.ReactDebugCurrentFrame;function It(D){if(D){var re=D._owner,fe=Mt(D.type,D._source,re?re.type:null);qt.setExtraStackFrame(fe)}else qt.setExtraStackFrame(null)}var Vi;Vi=!1;function ya(D){return typeof D=="object"&&D!==null&&D.$$typeof===r}function ga(){{if(Vt.current){var D=N(Vt.current.type);if(D)return`
45
46Check the render method of \``+D+"`."}return""}}function Yi(D){return""}var Bs={};function Us(D){{var re=ga();if(!re){var fe=typeof D=="string"?D:D.displayName||D.name;fe&&(re=`
47
48Check the top-level render call using <`+fe+">.")}return re}}function No(D,re){{if(!D._store||D._store.validated||D.key!=null)return;D._store.validated=!0;var fe=Us(re);if(Bs[fe])return;Bs[fe]=!0;var Se="";D&&D._owner&&D._owner!==Vt.current&&(Se=" It was passed a child from "+N(D._owner.type)+"."),It(D),G('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',fe,Se),It(null)}}function Fs(D,re){{if(typeof D!="object")return;if(Cn(D))for(var fe=0;fe<D.length;fe++){var Se=D[fe];ya(Se)&&No(Se,re)}else if(ya(D))D._store&&(D._store.validated=!0);else if(D){var rt=L(D);if(typeof rt=="function"&&rt!==D.entries)for(var Ve=rt.call(D),at;!(at=Ve.next()).done;)ya(at.value)&&No(at.value,re)}}}function zs(D){{var re=D.type;if(re==null||typeof re=="string")return;var fe;if(typeof re=="function")fe=re.propTypes;else if(typeof re=="object"&&(re.$$typeof===m||re.$$typeof===b))fe=re.propTypes;else return;if(fe){var Se=N(re);Mn(fe,D.props,"prop",Se,D)}else if(re.PropTypes!==void 0&&!Vi){Vi=!0;var rt=N(re);G("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",rt||"Unknown")}typeof re.getDefaultProps=="function"&&!re.getDefaultProps.isReactClassApproved&&G("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function _a(D){{for(var re=Object.keys(D.props),fe=0;fe<re.length;fe++){var Se=re[fe];if(Se!=="children"&&Se!=="key"){It(D),G("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",Se),It(null);break}}D.ref!==null&&(It(D),G("Invalid attribute `ref` supplied to `React.Fragment`."),It(null))}}var qr={};function Ir(D,re,fe,Se,rt,Ve){{var at=je(D);if(!at){var et="";(D===void 0||typeof D=="object"&&D!==null&&Object.keys(D).length===0)&&(et+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var _n=Yi();_n?et+=_n:et+=ga();var Ht;D===null?Ht="null":Cn(D)?Ht="array":D!==void 0&&D.$$typeof===r?(Ht="<"+(N(D.type)||"Unknown")+" />",et=" Did you accidentally export a JSX literal instead of a component?"):Ht=typeof D,G("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Ht,et)}var Yt=er(D,re,fe,rt,Ve);if(Yt==null)return Yt;if(at){var tr=re.children;if(tr!==void 0)if(Se)if(Cn(tr)){for(var va=0;va<tr.length;va++)Fs(tr[va],D);Object.freeze&&Object.freeze(tr)}else G("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Fs(tr,D)}if(yn.call(re,"key")){var ba=N(D),Kt=Object.keys(re).filter(function($s){return $s!=="key"}),Qe=Kt.length>0?"{key: someKey, "+Kt.join(": ..., ")+": ...}":"{key: someKey}";if(!qr[ba+Qe]){var mi=Kt.length>0?"{"+Kt.join(": ..., ")+": ...}":"{}";G(`A props object containing a "key" prop is being spread into JSX:
49  let props = %s;
50  <%s {...props} />
51React keys must be passed directly to JSX without using spread:
52  let props = %s;
53  <%s key={someKey} {...props} />`,Qe,ba,mi,ba),qr[ba+Qe]=!0}}return D===o?_a(Yt):zs(Yt),Yt}}function Wa(D,re,fe){return Ir(D,re,fe,!0)}function Bo(D,re,fe){return Ir(D,re,fe,!1)}var Uo=Bo,Fo=Wa;Ah.Fragment=o,Ah.jsx=Uo,Ah.jsxs=Fo})();wk.exports=Ah;var H=wk.exports,_b={},xk={exports:{}},Gr={},Ek={exports:{}},Ck={};(function(t){/**
54 * @license React
55 * scheduler.development.js
56 *
57 * Copyright (c) Facebook, Inc. and its affiliates.
58 *
59 * This source code is licensed under the MIT license found in the
60 * LICENSE file in the root directory of this source tree.
61 */(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var r=!1,i=5;function o(ue,Oe){var Ye=ue.length;ue.push(Oe),d(ue,Oe,Ye)}function l(ue){return ue.length===0?null:ue[0]}function u(ue){if(ue.length===0)return null;var Oe=ue[0],Ye=ue.pop();return Ye!==Oe&&(ue[0]=Ye,h(ue,Ye,0)),Oe}function d(ue,Oe,Ye){for(var vt=Ye;vt>0;){var $t=vt-1>>>1,rn=ue[$t];if(m(rn,Oe)>0)ue[$t]=Oe,ue[vt]=rn,vt=$t;else return}}function h(ue,Oe,Ye){for(var vt=Ye,$t=ue.length,rn=$t>>>1;vt<rn;){var an=(vt+1)*2-1,er=ue[an],Vt=an+1,qt=ue[Vt];if(m(er,Oe)<0)Vt<$t&&m(qt,er)<0?(ue[vt]=qt,ue[Vt]=Oe,vt=Vt):(ue[vt]=er,ue[an]=Oe,vt=an);else if(Vt<$t&&m(qt,Oe)<0)ue[vt]=qt,ue[Vt]=Oe,vt=Vt;else return}}function m(ue,Oe){var Ye=ue.sortIndex-Oe.sortIndex;return Ye!==0?Ye:ue.id-Oe.id}var g=1,w=2,b=3,E=4,T=5;function O(ue,Oe){}var R=typeof performance=="object"&&typeof performance.now=="function";if(R){var L=performance;t.unstable_now=function(){return L.now()}}else{var M=Date,G=M.now();t.unstable_now=function(){return M.now()-G}}var $=1073741823,z=-1,W=250,ae=5e3,Z=1e4,ve=$,we=[],je=[],ke=1,De=null,N=b,X=!1,ne=!1,ce=!1,oe=typeof setTimeout=="function"?setTimeout:null,_e=typeof clearTimeout=="function"?clearTimeout:null,Re=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Ce(ue){for(var Oe=l(je);Oe!==null;){if(Oe.callback===null)u(je);else if(Oe.startTime<=ue)u(je),Oe.sortIndex=Oe.expirationTime,o(we,Oe);else return;Oe=l(je)}}function Ue(ue){if(ce=!1,Ce(ue),!ne)if(l(we)!==null)ne=!0,zt(Me);else{var Oe=l(je);Oe!==null&&$n(Ue,Oe.startTime-ue)}}function Me(ue,Oe){ne=!1,ce&&(ce=!1,Rr()),X=!0;var Ye=N;try{var vt;if(!r)return Fe(ue,Oe)}finally{De=null,N=Ye,X=!1}}function Fe(ue,Oe){var Ye=Oe;for(Ce(Ye),De=l(we);De!==null&&!(De.expirationTime>Ye&&(!ue||ma()));){var vt=De.callback;if(typeof vt=="function"){De.callback=null,N=De.priorityLevel;var $t=De.expirationTime<=Ye,rn=vt($t);Ye=t.unstable_now(),typeof rn=="function"?De.callback=rn:De===l(we)&&u(we),Ce(Ye)}else u(we);De=l(we)}if(De!==null)return!0;var an=l(je);return an!==null&&$n(Ue,an.startTime-Ye),!1}function Ze(ue,Oe){switch(ue){case g:case w:case b:case E:case T:break;default:ue=b}var Ye=N;N=ue;try{return Oe()}finally{N=Ye}}function pt(ue){var Oe;switch(N){case g:case w:case b:Oe=b;break;default:Oe=N;break}var Ye=N;N=Oe;try{return ue()}finally{N=Ye}}function Ft(ue){var Oe=N;return function(){var Ye=N;N=Oe;try{return ue.apply(this,arguments)}finally{N=Ye}}}function en(ue,Oe,Ye){var vt=t.unstable_now(),$t;if(typeof Ye=="object"&&Ye!==null){var rn=Ye.delay;typeof rn=="number"&&rn>0?$t=vt+rn:$t=vt}else $t=vt;var an;switch(ue){case g:an=z;break;case w:an=W;break;case T:an=ve;break;case E:an=Z;break;case b:default:an=ae;break}var er=$t+an,Vt={id:ke++,callback:Oe,priorityLevel:ue,startTime:$t,expirationTime:er,sortIndex:-1};return $t>vt?(Vt.sortIndex=$t,o(je,Vt),l(we)===null&&Vt===l(je)&&(ce?Rr():ce=!0,$n(Ue,$t-vt))):(Vt.sortIndex=er,o(we,Vt),!ne&&!X&&(ne=!0,zt(Me))),Vt}function pn(){}function _t(){!ne&&!X&&(ne=!0,zt(Me))}function tn(){return l(we)}function nn(ue){ue.callback=null}function Q(){return N}var jt=!1,Pt=null,Mt=-1,yn=i,Cr=-1;function ma(){var ue=t.unstable_now()-Cr;return!(ue<yn)}function Mr(){}function Mn(ue){if(ue<0||ue>125){console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported");return}ue>0?yn=Math.floor(1e3/ue):yn=i}var gn=function(){if(Pt!==null){var ue=t.unstable_now();Cr=ue;var Oe=!0,Ye=!0;try{Ye=Pt(Oe,ue)}finally{Ye?Cn():(jt=!1,Pt=null)}}else jt=!1},Cn;if(typeof Re=="function")Cn=function(){Re(gn)};else if(typeof MessageChannel<"u"){var zn=new MessageChannel,pr=zn.port2;zn.port1.onmessage=gn,Cn=function(){pr.postMessage(null)}}else Cn=function(){oe(gn,0)};function zt(ue){Pt=ue,jt||(jt=!0,Cn())}function $n(ue,Oe){Mt=oe(function(){ue(t.unstable_now())},Oe)}function Rr(){_e(Mt),Mt=-1}var Ga=Mr,Ne=null;t.unstable_IdlePriority=T,t.unstable_ImmediatePriority=g,t.unstable_LowPriority=E,t.unstable_NormalPriority=b,t.unstable_Profiling=Ne,t.unstable_UserBlockingPriority=w,t.unstable_cancelCallback=nn,t.unstable_continueExecution=_t,t.unstable_forceFrameRate=Mn,t.unstable_getCurrentPriorityLevel=Q,t.unstable_getFirstCallbackNode=tn,t.unstable_next=pt,t.unstable_pauseExecution=pn,t.unstable_requestPaint=Ga,t.unstable_runWithPriority=Ze,t.unstable_scheduleCallback=en,t.unstable_shouldYield=ma,t.unstable_wrapCallback=Ft,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)})()})(Ck);Ek.exports=Ck;var HB=Ek.exports;/**
62 * @license React
63 * react-dom.development.js
64 *
65 * Copyright (c) Facebook, Inc. and its affiliates.
66 *
67 * This source code is licensed under the MIT license found in the
68 * LICENSE file in the root directory of this source tree.
69 */(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var t=k,r=HB,i=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,o=!1;function l(e){o=e}function u(e){if(!o){for(var n=arguments.length,a=new Array(n>1?n-1:0),s=1;s<n;s++)a[s-1]=arguments[s];h("warn",e,a)}}function d(e){if(!o){for(var n=arguments.length,a=new Array(n>1?n-1:0),s=1;s<n;s++)a[s-1]=arguments[s];h("error",e,a)}}function h(e,n,a){{var s=i.ReactDebugCurrentFrame,c=s.getStackAddendum();c!==""&&(n+="%s",a=a.concat([c]));var p=a.map(function(f){return String(f)});p.unshift("Warning: "+n),Function.prototype.apply.call(console[e],console,p)}}var m=0,g=1,w=2,b=3,E=4,T=5,O=6,R=7,L=8,M=9,G=10,$=11,z=12,W=13,ae=14,Z=15,ve=16,we=17,je=18,ke=19,De=21,N=22,X=23,ne=24,ce=25,oe=!0,_e=!1,Re=!1,Ce=!1,Ue=!1,Me=!0,Fe=!0,Ze=!0,pt=!0,Ft=new Set,en={},pn={};function _t(e,n){tn(e,n),tn(e+"Capture",n)}function tn(e,n){en[e]&&d("EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.",e),en[e]=n;{var a=e.toLowerCase();pn[a]=e,e==="onDoubleClick"&&(pn.ondblclick=e)}for(var s=0;s<n.length;s++)Ft.add(n[s])}var nn=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",Q=Object.prototype.hasOwnProperty;function jt(e){{var n=typeof Symbol=="function"&&Symbol.toStringTag,a=n&&e[Symbol.toStringTag]||e.constructor.name||"Object";return a}}function Pt(e){try{return Mt(e),!1}catch{return!0}}function Mt(e){return""+e}function yn(e,n){if(Pt(e))return d("The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before before using it here.",n,jt(e)),Mt(e)}function Cr(e){if(Pt(e))return d("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",jt(e)),Mt(e)}function ma(e,n){if(Pt(e))return d("The provided `%s` prop is an unsupported type %s. This value must be coerced to a string before before using it here.",n,jt(e)),Mt(e)}function Mr(e,n){if(Pt(e))return d("The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before before using it here.",n,jt(e)),Mt(e)}function Mn(e){if(Pt(e))return d("The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before before using it here.",jt(e)),Mt(e)}function gn(e){if(Pt(e))return d("Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before before using it here.",jt(e)),Mt(e)}var Cn=0,zn=1,pr=2,zt=3,$n=4,Rr=5,Ga=6,Ne=":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",ue=Ne+"\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040",Oe=new RegExp("^["+Ne+"]["+ue+"]*$"),Ye={},vt={};function $t(e){return Q.call(vt,e)?!0:Q.call(Ye,e)?!1:Oe.test(e)?(vt[e]=!0,!0):(Ye[e]=!0,d("Invalid attribute name: `%s`",e),!1)}function rn(e,n,a){return n!==null?n.type===Cn:a?!1:e.length>2&&(e[0]==="o"||e[0]==="O")&&(e[1]==="n"||e[1]==="N")}function an(e,n,a,s){if(a!==null&&a.type===Cn)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":{if(s)return!1;if(a!==null)return!a.acceptsBooleans;var c=e.toLowerCase().slice(0,5);return c!=="data-"&&c!=="aria-"}default:return!1}}function er(e,n,a,s){if(n===null||typeof n>"u"||an(e,n,a,s))return!0;if(s)return!1;if(a!==null)switch(a.type){case zt:return!n;case $n:return n===!1;case Rr:return isNaN(n);case Ga:return isNaN(n)||n<1}return!1}function Vt(e){return It.hasOwnProperty(e)?It[e]:null}function qt(e,n,a,s,c,p,f){this.acceptsBooleans=n===pr||n===zt||n===$n,this.attributeName=s,this.attributeNamespace=c,this.mustUseProperty=a,this.propertyName=e,this.type=n,this.sanitizeURL=p,this.removeEmptyString=f}var It={},Vi=["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"];Vi.forEach(function(e){It[e]=new qt(e,Cn,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var n=e[0],a=e[1];It[n]=new qt(n,zn,!1,a,null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){It[e]=new qt(e,pr,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){It[e]=new qt(e,pr,!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"].forEach(function(e){It[e]=new qt(e,zt,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){It[e]=new qt(e,zt,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){It[e]=new qt(e,$n,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){It[e]=new qt(e,Ga,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){It[e]=new qt(e,Rr,!1,e.toLowerCase(),null,!1,!1)});var ya=/[\-\:]([a-z])/g,ga=function(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"].forEach(function(e){var n=e.replace(ya,ga);It[n]=new qt(n,zn,!1,e,null,!1,!1)}),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach(function(e){var n=e.replace(ya,ga);It[n]=new qt(n,zn,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var n=e.replace(ya,ga);It[n]=new qt(n,zn,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){It[e]=new qt(e,zn,!1,e.toLowerCase(),null,!1,!1)});var Yi="xlinkHref";It[Yi]=new qt("xlinkHref",zn,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){It[e]=new qt(e,zn,!1,e.toLowerCase(),null,!0,!0)});var Bs=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*\:/i,Us=!1;function No(e){!Us&&Bs.test(e)&&(Us=!0,d("A future version of React will block javascript: URLs as a security precaution. Use event handlers instead if you can. If you need to generate unsafe HTML try using dangerouslySetInnerHTML instead. React was passed %s.",JSON.stringify(e)))}function Fs(e,n,a,s){if(s.mustUseProperty){var c=s.propertyName;return e[c]}else{yn(a,n),s.sanitizeURL&&No(""+a);var p=s.attributeName,f=null;if(s.type===$n){if(e.hasAttribute(p)){var y=e.getAttribute(p);return y===""?!0:er(n,a,s,!1)?y:y===""+a?a:y}}else if(e.hasAttribute(p)){if(er(n,a,s,!1))return e.getAttribute(p);if(s.type===zt)return a;f=e.getAttribute(p)}return er(n,a,s,!1)?f===null?a:f:f===""+a?a:f}}function zs(e,n,a,s){{if(!$t(n))return;if(!e.hasAttribute(n))return a===void 0?void 0:null;var c=e.getAttribute(n);return yn(a,n),c===""+a?a:c}}function _a(e,n,a,s){var c=Vt(n);if(!rn(n,c,s)){if(er(n,a,c,s)&&(a=null),s||c===null){if($t(n)){var p=n;a===null?e.removeAttribute(p):(yn(a,n),e.setAttribute(p,""+a))}return}var f=c.mustUseProperty;if(f){var y=c.propertyName;if(a===null){var _=c.type;e[y]=_===zt?!1:""}else e[y]=a;return}var S=c.attributeName,x=c.attributeNamespace;if(a===null)e.removeAttribute(S);else{var A=c.type,P;A===zt||A===$n&&a===!0?P="":(yn(a,S),P=""+a,c.sanitizeURL&&No(P.toString())),x?e.setAttributeNS(x,S,P):e.setAttribute(S,P)}}}var qr=Symbol.for("react.element"),Ir=Symbol.for("react.portal"),Wa=Symbol.for("react.fragment"),Bo=Symbol.for("react.strict_mode"),Uo=Symbol.for("react.profiler"),Fo=Symbol.for("react.provider"),D=Symbol.for("react.context"),re=Symbol.for("react.forward_ref"),fe=Symbol.for("react.suspense"),Se=Symbol.for("react.suspense_list"),rt=Symbol.for("react.memo"),Ve=Symbol.for("react.lazy"),at=Symbol.for("react.scope"),et=Symbol.for("react.debug_trace_mode"),_n=Symbol.for("react.offscreen"),Ht=Symbol.for("react.legacy_hidden"),Yt=Symbol.for("react.cache"),tr=Symbol.for("react.tracing_marker"),va=Symbol.iterator,ba="@@iterator";function Kt(e){if(e===null||typeof e!="object")return null;var n=va&&e[va]||e[ba];return typeof n=="function"?n:null}var Qe=Object.assign,mi=0,$s,op,Ki,Ac,Lc,Mc,qc;function Ic(){}Ic.__reactDisabledLog=!0;function sp(){{if(mi===0){$s=console.log,op=console.info,Ki=console.warn,Ac=console.error,Lc=console.group,Mc=console.groupCollapsed,qc=console.groupEnd;var e={configurable:!0,enumerable:!0,value:Ic,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}mi++}}function lp(){{if(mi--,mi===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Qe({},e,{value:$s}),info:Qe({},e,{value:op}),warn:Qe({},e,{value:Ki}),error:Qe({},e,{value:Ac}),group:Qe({},e,{value:Lc}),groupCollapsed:Qe({},e,{value:Mc}),groupEnd:Qe({},e,{value:qc})})}mi<0&&d("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var Hs=i.ReactCurrentDispatcher,Nc;function Va(e,n,a){{if(Nc===void 0)try{throw Error()}catch(c){var s=c.stack.trim().match(/\n( *(at )?)/);Nc=s&&s[1]||""}return`
70`+Nc+e}}var zo=!1,Qi;{var Gs=typeof WeakMap=="function"?WeakMap:Map;Qi=new Gs}function $o(e,n){if(!e||zo)return"";{var a=Qi.get(e);if(a!==void 0)return a}var s;zo=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var p;p=Hs.current,Hs.current=null,sp();try{if(n){var f=function(){throw Error()};if(Object.defineProperty(f.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(f,[])}catch(F){s=F}Reflect.construct(e,[],f)}else{try{f.call()}catch(F){s=F}e.call(f.prototype)}}else{try{throw Error()}catch(F){s=F}e()}}catch(F){if(F&&s&&typeof F.stack=="string"){for(var y=F.stack.split(`
71`),_=s.stack.split(`
72`),S=y.length-1,x=_.length-1;S>=1&&x>=0&&y[S]!==_[x];)x--;for(;S>=1&&x>=0;S--,x--)if(y[S]!==_[x]){if(S!==1||x!==1)do if(S--,x--,x<0||y[S]!==_[x]){var A=`
73`+y[S].replace(" at new "," at ");return e.displayName&&A.includes("<anonymous>")&&(A=A.replace("<anonymous>",e.displayName)),typeof e=="function"&&Qi.set(e,A),A}while(S>=1&&x>=0);break}}}finally{zo=!1,Hs.current=p,lp(),Error.prepareStackTrace=c}var P=e?e.displayName||e.name:"",B=P?Va(P):"";return typeof e=="function"&&Qi.set(e,B),B}function Ws(e,n,a){return $o(e,!0)}function Bc(e,n,a){return $o(e,!1)}function cp(e){var n=e.prototype;return!!(n&&n.isReactComponent)}function Uc(e,n,a){if(e==null)return"";if(typeof e=="function")return $o(e,cp(e));if(typeof e=="string")return Va(e);switch(e){case fe:return Va("Suspense");case Se:return Va("SuspenseList")}if(typeof e=="object")switch(e.$$typeof){case re:return Bc(e.render);case rt:return Uc(e.type,n,a);case Ve:{var s=e,c=s._payload,p=s._init;try{return Uc(p(c),n,a)}catch{}}}return""}function zm(e){switch(e._debugOwner&&e._debugOwner.type,e._debugSource,e.tag){case T:return Va(e.type);case ve:return Va("Lazy");case W:return Va("Suspense");case ke:return Va("SuspenseList");case m:case w:case Z:return Bc(e.type);case $:return Bc(e.type.render);case g:return Ws(e.type);default:return""}}function Ho(e){try{var n="",a=e;do n+=zm(a),a=a.return;while(a);return n}catch(s){return`
74Error generating stack: `+s.message+`
75`+s.stack}}function up(e,n,a){var s=e.displayName;if(s)return s;var c=n.displayName||n.name||"";return c!==""?a+"("+c+")":a}function Fc(e){return e.displayName||"Context"}function ft(e){if(e==null)return null;if(typeof e.tag=="number"&&d("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Wa:return"Fragment";case Ir:return"Portal";case Uo:return"Profiler";case Bo:return"StrictMode";case fe:return"Suspense";case Se:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case D:var n=e;return Fc(n)+".Consumer";case Fo:var a=e;return Fc(a._context)+".Provider";case re:return up(e,e.render,"ForwardRef");case rt:var s=e.displayName||null;return s!==null?s:ft(e.type)||"Memo";case Ve:{var c=e,p=c._payload,f=c._init;try{return ft(f(p))}catch{return null}}}return null}function $m(e,n,a){var s=n.displayName||n.name||"";return e.displayName||(s!==""?a+"("+s+")":a)}function yi(e){return e.displayName||"Context"}function We(e){var n=e.tag,a=e.type;switch(n){case ne:return"Cache";case M:var s=a;return yi(s)+".Consumer";case G:var c=a;return yi(c._context)+".Provider";case je:return"DehydratedFragment";case $:return $m(a,a.render,"ForwardRef");case R:return"Fragment";case T:return a;case E:return"Portal";case b:return"Root";case O:return"Text";case ve:return ft(a);case L:return a===Bo?"StrictMode":"Mode";case N:return"Offscreen";case z:return"Profiler";case De:return"Scope";case W:return"Suspense";case ke:return"SuspenseList";case ce:return"TracingMarker";case g:case m:case we:case w:case ae:case Z:if(typeof a=="function")return a.displayName||a.name||null;if(typeof a=="string")return a;break}return null}var zc=i.ReactDebugCurrentFrame,fr=null,Go=!1;function Xi(){{if(fr===null)return null;var e=fr._debugOwner;if(e!==null&&typeof e<"u")return We(e)}return null}function Hm(){return fr===null?"":Ho(fr)}function qn(){zc.getCurrentStack=null,fr=null,Go=!1}function Qt(e){zc.getCurrentStack=e===null?null:Hm,fr=e,Go=!1}function dp(){return fr}function Qr(e){Go=e}function hr(e){return""+e}function wa(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return gn(e),e;default:return""}}var Gm={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0};function $c(e,n){Gm[n.type]||n.onChange||n.onInput||n.readOnly||n.disabled||n.value==null||d("You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`."),n.onChange||n.readOnly||n.disabled||n.checked==null||d("You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.")}function pp(e){var n=e.type,a=e.nodeName;return a&&a.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function Hc(e){return e._valueTracker}function Vs(e){e._valueTracker=null}function Wm(e){var n="";return e&&(pp(e)?n=e.checked?"true":"false":n=e.value),n}function Ji(e){var n=pp(e)?"checked":"value",a=Object.getOwnPropertyDescriptor(e.constructor.prototype,n);gn(e[n]);var s=""+e[n];if(!(e.hasOwnProperty(n)||typeof a>"u"||typeof a.get!="function"||typeof a.set!="function")){var c=a.get,p=a.set;Object.defineProperty(e,n,{configurable:!0,get:function(){return c.call(this)},set:function(y){gn(y),s=""+y,p.call(this,y)}}),Object.defineProperty(e,n,{enumerable:a.enumerable});var f={getValue:function(){return s},setValue:function(y){gn(y),s=""+y},stopTracking:function(){Vs(e),delete e[n]}};return f}}function Wo(e){Hc(e)||(e._valueTracker=Ji(e))}function Gc(e){if(!e)return!1;var n=Hc(e);if(!n)return!0;var a=n.getValue(),s=Wm(e);return s!==a?(n.setValue(s),!0):!1}function gi(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}}var Ys=!1,Ks=!1,Qs=!1,fp=!1;function hp(e){var n=e.type==="checkbox"||e.type==="radio";return n?e.checked!=null:e.value!=null}function Wc(e,n){var a=e,s=n.checked,c=Qe({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:s??a._wrapperState.initialChecked});return c}function mp(e,n){$c("input",n),n.checked!==void 0&&n.defaultChecked!==void 0&&!Ks&&(d("%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://reactjs.org/link/controlled-components",Xi()||"A component",n.type),Ks=!0),n.value!==void 0&&n.defaultValue!==void 0&&!Ys&&(d("%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://reactjs.org/link/controlled-components",Xi()||"A component",n.type),Ys=!0);var a=e,s=n.defaultValue==null?"":n.defaultValue;a._wrapperState={initialChecked:n.checked!=null?n.checked:n.defaultChecked,initialValue:wa(n.value!=null?n.value:s),controlled:hp(n)}}function v(e,n){var a=e,s=n.checked;s!=null&&_a(a,"checked",s,!1)}function j(e,n){var a=e;{var s=hp(n);!a._wrapperState.controlled&&s&&!fp&&(d("A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components"),fp=!0),a._wrapperState.controlled&&!s&&!Qs&&(d("A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components"),Qs=!0)}v(e,n);var c=wa(n.value),p=n.type;if(c!=null)p==="number"?(c===0&&a.value===""||a.value!=c)&&(a.value=hr(c)):a.value!==hr(c)&&(a.value=hr(c));else if(p==="submit"||p==="reset"){a.removeAttribute("value");return}n.hasOwnProperty("value")?Le(a,n.type,c):n.hasOwnProperty("defaultValue")&&Le(a,n.type,wa(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(a.defaultChecked=!!n.defaultChecked)}function U(e,n,a){var s=e;if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var c=n.type,p=c==="submit"||c==="reset";if(p&&(n.value===void 0||n.value===null))return;var f=hr(s._wrapperState.initialValue);a||f!==s.value&&(s.value=f),s.defaultValue=f}var y=s.name;y!==""&&(s.name=""),s.defaultChecked=!s.defaultChecked,s.defaultChecked=!!s._wrapperState.initialChecked,y!==""&&(s.name=y)}function V(e,n){var a=e;j(a,n),le(a,n)}function le(e,n){var a=n.name;if(n.type==="radio"&&a!=null){for(var s=e;s.parentNode;)s=s.parentNode;yn(a,"name");for(var c=s.querySelectorAll("input[name="+JSON.stringify(""+a)+'][type="radio"]'),p=0;p<c.length;p++){var f=c[p];if(!(f===e||f.form!==e.form)){var y=nf(f);if(!y)throw new Error("ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported.");Gc(f),j(f,y)}}}}function Le(e,n,a){(n!=="number"||gi(e.ownerDocument)!==e)&&(a==null?e.defaultValue=hr(e._wrapperState.initialValue):e.defaultValue!==hr(a)&&(e.defaultValue=hr(a)))}var Ee=!1,He=!1,it=!1;function xt(e,n){n.value==null&&(typeof n.children=="object"&&n.children!==null?t.Children.forEach(n.children,function(a){a!=null&&(typeof a=="string"||typeof a=="number"||He||(He=!0,d("Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>.")))}):n.dangerouslySetInnerHTML!=null&&(it||(it=!0,d("Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected.")))),n.selected!=null&&!Ee&&(d("Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>."),Ee=!0)}function Nt(e,n){n.value!=null&&e.setAttribute("value",hr(wa(n.value)))}var Bt=Array.isArray;function tt(e){return Bt(e)}var Xt;Xt=!1;function vn(){var e=Xi();return e?`
76
77Check the render method of \``+e+"`.":""}var Vo=["value","defaultValue"];function Vc(e){{$c("select",e);for(var n=0;n<Vo.length;n++){var a=Vo[n];if(e[a]!=null){var s=tt(e[a]);e.multiple&&!s?d("The `%s` prop supplied to <select> must be an array if `multiple` is true.%s",a,vn()):!e.multiple&&s&&d("The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.%s",a,vn())}}}}function _i(e,n,a,s){var c=e.options;if(n){for(var p=a,f={},y=0;y<p.length;y++)f["$"+p[y]]=!0;for(var _=0;_<c.length;_++){var S=f.hasOwnProperty("$"+c[_].value);c[_].selected!==S&&(c[_].selected=S),S&&s&&(c[_].defaultSelected=!0)}}else{for(var x=hr(wa(a)),A=null,P=0;P<c.length;P++){if(c[P].value===x){c[P].selected=!0,s&&(c[P].defaultSelected=!0);return}A===null&&!c[P].disabled&&(A=c[P])}A!==null&&(A.selected=!0)}}function Yc(e,n){return Qe({},n,{value:void 0})}function Kc(e,n){var a=e;Vc(n),a._wrapperState={wasMultiple:!!n.multiple},n.value!==void 0&&n.defaultValue!==void 0&&!Xt&&(d("Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://reactjs.org/link/controlled-components"),Xt=!0)}function Vm(e,n){var a=e;a.multiple=!!n.multiple;var s=n.value;s!=null?_i(a,!!n.multiple,s,!1):n.defaultValue!=null&&_i(a,!!n.multiple,n.defaultValue,!0)}function yp(e,n){var a=e,s=a._wrapperState.wasMultiple;a._wrapperState.wasMultiple=!!n.multiple;var c=n.value;c!=null?_i(a,!!n.multiple,c,!1):s!==!!n.multiple&&(n.defaultValue!=null?_i(a,!!n.multiple,n.defaultValue,!0):_i(a,!!n.multiple,n.multiple?[]:"",!1))}function Ym(e,n){var a=e,s=n.value;s!=null&&_i(a,!!n.multiple,s,!1)}var eS=!1;function Km(e,n){var a=e;if(n.dangerouslySetInnerHTML!=null)throw new Error("`dangerouslySetInnerHTML` does not make sense on <textarea>.");var s=Qe({},n,{value:void 0,defaultValue:void 0,children:hr(a._wrapperState.initialValue)});return s}function tS(e,n){var a=e;$c("textarea",n),n.value!==void 0&&n.defaultValue!==void 0&&!eS&&(d("%s contains a textarea with both value and defaultValue props. Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://reactjs.org/link/controlled-components",Xi()||"A component"),eS=!0);var s=n.value;if(s==null){var c=n.children,p=n.defaultValue;if(c!=null){d("Use the `defaultValue` or `value` props instead of setting children on <textarea>.");{if(p!=null)throw new Error("If you supply `defaultValue` on a <textarea>, do not pass children.");if(tt(c)){if(c.length>1)throw new Error("<textarea> can only have at most one child.");c=c[0]}p=c}}p==null&&(p=""),s=p}a._wrapperState={initialValue:wa(s)}}function nS(e,n){var a=e,s=wa(n.value),c=wa(n.defaultValue);if(s!=null){var p=hr(s);p!==a.value&&(a.value=p),n.defaultValue==null&&a.defaultValue!==p&&(a.defaultValue=p)}c!=null&&(a.defaultValue=hr(c))}function rS(e,n){var a=e,s=a.textContent;s===a._wrapperState.initialValue&&s!==""&&s!==null&&(a.value=s)}function TD(e,n){nS(e,n)}var vi="http://www.w3.org/1999/xhtml",kD="http://www.w3.org/1998/Math/MathML",Qm="http://www.w3.org/2000/svg";function Xm(e){switch(e){case"svg":return Qm;case"math":return kD;default:return vi}}function Jm(e,n){return e==null||e===vi?Xm(n):e===Qm&&n==="foreignObject"?vi:e}var jD=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(n,a,s,c){MSApp.execUnsafeLocalFunction(function(){return e(n,a,s,c)})}:e},gp,aS=jD(function(e,n){if(e.namespaceURI===Qm&&!("innerHTML"in e)){gp=gp||document.createElement("div"),gp.innerHTML="<svg>"+n.valueOf().toString()+"</svg>";for(var a=gp.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;a.firstChild;)e.appendChild(a.firstChild);return}e.innerHTML=n}),Tr=1,bi=3,bn=8,wi=9,Zm=11,_p=function(e,n){if(n){var a=e.firstChild;if(a&&a===e.lastChild&&a.nodeType===bi){a.nodeValue=n;return}}e.textContent=n},DD={animation:["animationDelay","animationDirection","animationDuration","animationFillMode","animationIterationCount","animationName","animationPlayState","animationTimingFunction"],background:["backgroundAttachment","backgroundClip","backgroundColor","backgroundImage","backgroundOrigin","backgroundPositionX","backgroundPositionY","backgroundRepeat","backgroundSize"],backgroundPosition:["backgroundPositionX","backgroundPositionY"],border:["borderBottomColor","borderBottomStyle","borderBottomWidth","borderImageOutset","borderImageRepeat","borderImageSlice","borderImageSource","borderImageWidth","borderLeftColor","borderLeftStyle","borderLeftWidth","borderRightColor","borderRightStyle","borderRightWidth","borderTopColor","borderTopStyle","borderTopWidth"],borderBlockEnd:["borderBlockEndColor","borderBlockEndStyle","borderBlockEndWidth"],borderBlockStart:["borderBlockStartColor","borderBlockStartStyle","borderBlockStartWidth"],borderBottom:["borderBottomColor","borderBottomStyle","borderBottomWidth"],borderColor:["borderBottomColor","borderLeftColor","borderRightColor","borderTopColor"],borderImage:["borderImageOutset","borderImageRepeat","borderImageSlice","borderImageSource","borderImageWidth"],borderInlineEnd:["borderInlineEndColor","borderInlineEndStyle","borderInlineEndWidth"],borderInlineStart:["borderInlineStartColor","borderInlineStartStyle","borderInlineStartWidth"],borderLeft:["borderLeftColor","borderLeftStyle","borderLeftWidth"],borderRadius:["borderBottomLeftRadius","borderBottomRightRadius","borderTopLeftRadius","borderTopRightRadius"],borderRight:["borderRightColor","borderRightStyle","borderRightWidth"],borderStyle:["borderBottomStyle","borderLeftStyle","borderRightStyle","borderTopStyle"],borderTop:["borderTopColor","borderTopStyle","borderTopWidth"],borderWidth:["borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopWidth"],columnRule:["columnRuleColor","columnRuleStyle","columnRuleWidth"],columns:["columnCount","columnWidth"],flex:["flexBasis","flexGrow","flexShrink"],flexFlow:["flexDirection","flexWrap"],font:["fontFamily","fontFeatureSettings","fontKerning","fontLanguageOverride","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontVariantAlternates","fontVariantCaps","fontVariantEastAsian","fontVariantLigatures","fontVariantNumeric","fontVariantPosition","fontWeight","lineHeight"],fontVariant:["fontVariantAlternates","fontVariantCaps","fontVariantEastAsian","fontVariantLigatures","fontVariantNumeric","fontVariantPosition"],gap:["columnGap","rowGap"],grid:["gridAutoColumns","gridAutoFlow","gridAutoRows","gridTemplateAreas","gridTemplateColumns","gridTemplateRows"],gridArea:["gridColumnEnd","gridColumnStart","gridRowEnd","gridRowStart"],gridColumn:["gridColumnEnd","gridColumnStart"],gridColumnGap:["columnGap"],gridGap:["columnGap","rowGap"],gridRow:["gridRowEnd","gridRowStart"],gridRowGap:["rowGap"],gridTemplate:["gridTemplateAreas","gridTemplateColumns","gridTemplateRows"],listStyle:["listStyleImage","listStylePosition","listStyleType"],margin:["marginBottom","marginLeft","marginRight","marginTop"],marker:["markerEnd","markerMid","markerStart"],mask:["maskClip","maskComposite","maskImage","maskMode","maskOrigin","maskPositionX","maskPositionY","maskRepeat","maskSize"],maskPosition:["maskPositionX","maskPositionY"],outline:["outlineColor","outlineStyle","outlineWidth"],overflow:["overflowX","overflowY"],padding:["paddingBottom","paddingLeft","paddingRight","paddingTop"],placeContent:["alignContent","justifyContent"],placeItems:["alignItems","justifyItems"],placeSelf:["alignSelf","justifySelf"],textDecoration:["textDecorationColor","textDecorationLine","textDecorationStyle"],textEmphasis:["textEmphasisColor","textEmphasisStyle"],transition:["transitionDelay","transitionDuration","transitionProperty","transitionTimingFunction"],wordWrap:["overflowWrap"]},Qc={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};function OD(e,n){return e+n.charAt(0).toUpperCase()+n.substring(1)}var PD=["Webkit","ms","Moz","O"];Object.keys(Qc).forEach(function(e){PD.forEach(function(n){Qc[OD(n,e)]=Qc[e]})});function ey(e,n,a){var s=n==null||typeof n=="boolean"||n==="";return s?"":!a&&typeof n=="number"&&n!==0&&!(Qc.hasOwnProperty(e)&&Qc[e])?n+"px":(Mr(n,e),(""+n).trim())}var AD=/([A-Z])/g,LD=/^ms-/;function MD(e){return e.replace(AD,"-$1").toLowerCase().replace(LD,"-ms-")}var iS=function(){};{var qD=/^(?:webkit|moz|o)[A-Z]/,ID=/^-ms-/,ND=/-(.)/g,oS=/;\s*$/,Xs={},ty={},sS=!1,lS=!1,BD=function(e){return e.replace(ND,function(n,a){return a.toUpperCase()})},UD=function(e){Xs.hasOwnProperty(e)&&Xs[e]||(Xs[e]=!0,d("Unsupported style property %s. Did you mean %s?",e,BD(e.replace(ID,"ms-"))))},FD=function(e){Xs.hasOwnProperty(e)&&Xs[e]||(Xs[e]=!0,d("Unsupported vendor-prefixed style property %s. Did you mean %s?",e,e.charAt(0).toUpperCase()+e.slice(1)))},zD=function(e,n){ty.hasOwnProperty(n)&&ty[n]||(ty[n]=!0,d(`Style property values shouldn't contain a semicolon. Try "%s: %s" instead.`,e,n.replace(oS,"")))},$D=function(e,n){sS||(sS=!0,d("`NaN` is an invalid value for the `%s` css style property.",e))},HD=function(e,n){lS||(lS=!0,d("`Infinity` is an invalid value for the `%s` css style property.",e))};iS=function(e,n){e.indexOf("-")>-1?UD(e):qD.test(e)?FD(e):oS.test(n)&&zD(e,n),typeof n=="number"&&(isNaN(n)?$D(e,n):isFinite(n)||HD(e,n))}}var GD=iS;function WD(e){{var n="",a="";for(var s in e)if(e.hasOwnProperty(s)){var c=e[s];if(c!=null){var p=s.indexOf("--")===0;n+=a+(p?s:MD(s))+":",n+=ey(s,c,p),a=";"}}return n||null}}function cS(e,n){var a=e.style;for(var s in n)if(n.hasOwnProperty(s)){var c=s.indexOf("--")===0;c||GD(s,n[s]);var p=ey(s,n[s],c);s==="float"&&(s="cssFloat"),c?a.setProperty(s,p):a[s]=p}}function VD(e){return e==null||typeof e=="boolean"||e===""}function uS(e){var n={};for(var a in e)for(var s=DD[a]||[a],c=0;c<s.length;c++)n[s[c]]=a;return n}function YD(e,n){{if(!n)return;var a=uS(e),s=uS(n),c={};for(var p in a){var f=a[p],y=s[p];if(y&&f!==y){var _=f+","+y;if(c[_])continue;c[_]=!0,d("%s a style property during rerender (%s) when a conflicting property is set (%s) can lead to styling bugs. To avoid this, don't mix shorthand and non-shorthand properties for the same value; instead, replace the shorthand with separate values.",VD(e[f])?"Removing":"Updating",f,y)}}}}var KD={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},QD=Qe({menuitem:!0},KD),XD="__html";function ny(e,n){if(n){if(QD[e]&&(n.children!=null||n.dangerouslySetInnerHTML!=null))throw new Error(e+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");if(n.dangerouslySetInnerHTML!=null){if(n.children!=null)throw new Error("Can only set one of `children` or `props.dangerouslySetInnerHTML`.");if(typeof n.dangerouslySetInnerHTML!="object"||!(XD in n.dangerouslySetInnerHTML))throw new Error("`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://reactjs.org/link/dangerously-set-inner-html for more information.")}if(!n.suppressContentEditableWarning&&n.contentEditable&&n.children!=null&&d("A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional."),n.style!=null&&typeof n.style!="object")throw new Error("The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.")}}function Yo(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 vp
vendor: 11,308 bytes, line 77
77={accept:"accept",acceptcharset:"acceptCharset","accept-charset":"acceptCharset",accesskey:"accessKey",action:"action",allowfullscreen:"allowFullScreen",alt:"alt",as:"as",async:"async",autocapitalize:"autoCapitalize",autocomplete:"autoComplete",autocorrect:"autoCorrect",autofocus:"autoFocus",autoplay:"autoPlay",autosave:"autoSave",capture:"capture",cellpadding:"cellPadding",cellspacing:"cellSpacing",challenge:"challenge",charset:"charSet",checked:"checked",children:"children",cite:"cite",class:"className",classid:"classID",classname:"className",cols:"cols",colspan:"colSpan",content:"content",contenteditable:"contentEditable",contextmenu:"contextMenu",controls:"controls",controlslist:"controlsList",coords:"coords",crossorigin:"crossOrigin",dangerouslysetinnerhtml:"dangerouslySetInnerHTML",data:"data",datetime:"dateTime",default:"default",defaultchecked:"defaultChecked",defaultvalue:"defaultValue",defer:"defer",dir:"dir",disabled:"disabled",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback",download:"download",draggable:"draggable",enctype:"encType",enterkeyhint:"enterKeyHint",for:"htmlFor",form:"form",formmethod:"formMethod",formaction:"formAction",formenctype:"formEncType",formnovalidate:"formNoValidate",formtarget:"formTarget",frameborder:"frameBorder",headers:"headers",height:"height",hidden:"hidden",high:"high",href:"href",hreflang:"hrefLang",htmlfor:"htmlFor",httpequiv:"httpEquiv","http-equiv":"httpEquiv",icon:"icon",id:"id",imagesizes:"imageSizes",imagesrcset:"imageSrcSet",innerhtml:"innerHTML",inputmode:"inputMode",integrity:"integrity",is:"is",itemid:"itemID",itemprop:"itemProp",itemref:"itemRef",itemscope:"itemScope",itemtype:"itemType",keyparams:"keyParams",keytype:"keyType",kind:"kind",label:"label",lang:"lang",list:"list",loop:"loop",low:"low",manifest:"manifest",marginwidth:"marginWidth",marginheight:"marginHeight",max:"max",maxlength:"maxLength",media:"media",mediagroup:"mediaGroup",method:"method",min:"min",minlength:"minLength",multiple:"multiple",muted:"muted",name:"name",nomodule:"noModule",nonce:"nonce",novalidate:"noValidate",open:"open",optimum:"optimum",pattern:"pattern",placeholder:"placeholder",playsinline:"playsInline",poster:"poster",preload:"preload",profile:"profile",radiogroup:"radioGroup",readonly:"readOnly",referrerpolicy:"referrerPolicy",rel:"rel",required:"required",reversed:"reversed",role:"role",rows:"rows",rowspan:"rowSpan",sandbox:"sandbox",scope:"scope",scoped:"scoped",scrolling:"scrolling",seamless:"seamless",selected:"selected",shape:"shape",size:"size",sizes:"sizes",span:"span",spellcheck:"spellCheck",src:"src",srcdoc:"srcDoc",srclang:"srcLang",srcset:"srcSet",start:"start",step:"step",style:"style",summary:"summary",tabindex:"tabIndex",target:"target",title:"title",type:"type",usemap:"useMap",value:"value",width:"width",wmode:"wmode",wrap:"wrap",about:"about",accentheight:"accentHeight","accent-height":"accentHeight",accumulate:"accumulate",additive:"additive",alignmentbaseline:"alignmentBaseline","alignment-baseline":"alignmentBaseline",allowreorder:"allowReorder",alphabetic:"alphabetic",amplitude:"amplitude",arabicform:"arabicForm","arabic-form":"arabicForm",ascent:"ascent",attributename:"attributeName",attributetype:"attributeType",autoreverse:"autoReverse",azimuth:"azimuth",basefrequency:"baseFrequency",baselineshift:"baselineShift","baseline-shift":"baselineShift",baseprofile:"baseProfile",bbox:"bbox",begin:"begin",bias:"bias",by:"by",calcmode:"calcMode",capheight:"capHeight","cap-height":"capHeight",clip:"clip",clippath:"clipPath","clip-path":"clipPath",clippathunits:"clipPathUnits",cliprule:"clipRule","clip-rule":"clipRule",color:"color",colorinterpolation:"colorInterpolation","color-interpolation":"colorInterpolation",colorinterpolationfilters:"colorInterpolationFilters","color-interpolation-filters":"colorInterpolationFilters",colorprofile:"colorProfile","color-profile":"colorProfile",colorrendering:"colorRendering","color-rendering":"colorRendering",contentscripttype:"contentScriptType",contentstyletype:"contentStyleType",cursor:"cursor",cx:"cx",cy:"cy",d:"d",datatype:"datatype",decelerate:"decelerate",descent:"descent",diffuseconstant:"diffuseConstant",direction:"direction",display:"display",divisor:"divisor",dominantbaseline:"dominantBaseline","dominant-baseline":"dominantBaseline",dur:"dur",dx:"dx",dy:"dy",edgemode:"edgeMode",elevation:"elevation",enablebackground:"enableBackground","enable-background":"enableBackground",end:"end",exponent:"exponent",externalresourcesrequired:"externalResourcesRequired",fill:"fill",fillopacity:"fillOpacity","fill-opacity":"fillOpacity",fillrule:"fillRule","fill-rule":"fillRule",filter:"filter",filterres:"filterRes",filterunits:"filterUnits",floodopacity:"floodOpacity","flood-opacity":"floodOpacity",floodcolor:"floodColor","flood-color":"floodColor",focusable:"focusable",fontfamily:"fontFamily","font-family":"fontFamily",fontsize:"fontSize","font-size":"fontSize",fontsizeadjust:"fontSizeAdjust","font-size-adjust":"fontSizeAdjust",fontstretch:"fontStretch","font-stretch":"fontStretch",fontstyle:"fontStyle","font-style":"fontStyle",fontvariant:"fontVariant","font-variant":"fontVariant",fontweight:"fontWeight","font-weight":"fontWeight",format:"format",from:"from",fx:"fx",fy:"fy",g1:"g1",g2:"g2",glyphname:"glyphName","glyph-name":"glyphName",glyphorientationhorizontal:"glyphOrientationHorizontal","glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphorientationvertical:"glyphOrientationVertical","glyph-orientation-vertical":"glyphOrientationVertical",glyphref:"glyphRef",gradienttransform:"gradientTransform",gradientunits:"gradientUnits",hanging:"hanging",horizadvx:"horizAdvX","horiz-adv-x":"horizAdvX",horizoriginx:"horizOriginX","horiz-origin-x":"horizOriginX",ideographic:"ideographic",imagerendering:"imageRendering","image-rendering":"imageRendering",in2:"in2",in:"in",inlist:"inlist",intercept:"intercept",k1:"k1",k2:"k2",k3:"k3",k4:"k4",k:"k",kernelmatrix:"kernelMatrix",kernelunitlength:"kernelUnitLength",kerning:"kerning",keypoints:"keyPoints",keysplines:"keySplines",keytimes:"keyTimes",lengthadjust:"lengthAdjust",letterspacing:"letterSpacing","letter-spacing":"letterSpacing",lightingcolor:"lightingColor","lighting-color":"lightingColor",limitingconeangle:"limitingConeAngle",local:"local",markerend:"markerEnd","marker-end":"markerEnd",markerheight:"markerHeight",markermid:"markerMid","marker-mid":"markerMid",markerstart:"markerStart","marker-start":"markerStart",markerunits:"markerUnits",markerwidth:"markerWidth",mask:"mask",maskcontentunits:"maskContentUnits",maskunits:"maskUnits",mathematical:"mathematical",mode:"mode",numoctaves:"numOctaves",offset:"offset",opacity:"opacity",operator:"operator",order:"order",orient:"orient",orientation:"orientation",origin:"origin",overflow:"overflow",overlineposition:"overlinePosition","overline-position":"overlinePosition",overlinethickness:"overlineThickness","overline-thickness":"overlineThickness",paintorder:"paintOrder","paint-order":"paintOrder",panose1:"panose1","panose-1":"panose1",pathlength:"pathLength",patterncontentunits:"patternContentUnits",patterntransform:"patternTransform",patternunits:"patternUnits",pointerevents:"pointerEvents","pointer-events":"pointerEvents",points:"points",pointsatx:"pointsAtX",pointsaty:"pointsAtY",pointsatz:"pointsAtZ",prefix:"prefix",preservealpha:"preserveAlpha",preserveaspectratio:"preserveAspectRatio",primitiveunits:"primitiveUnits",property:"property",r:"r",radius:"radius",refx:"refX",refy:"refY",renderingintent:"renderingIntent","rendering-intent":"renderingIntent",repeatcount:"repeatCount",repeatdur:"repeatDur",requiredextensions:"requiredExtensions",requiredfeatures:"requiredFeatures",resource:"resource",restart:"restart",result:"result",results:"results",rotate:"rotate",rx:"rx",ry:"ry",scale:"scale",security:"security",seed:"seed",shaperendering:"shapeRendering","shape-rendering":"shapeRendering",slope:"slope",spacing:"spacing",specularconstant:"specularConstant",specularexponent:"specularExponent",speed:"speed",spreadmethod:"spreadMethod",startoffset:"startOffset",stddeviation:"stdDeviation",stemh:"stemh",stemv:"stemv",stitchtiles:"stitchTiles",stopcolor:"stopColor","stop-color":"stopColor",stopopacity:"stopOpacity","stop-opacity":"stopOpacity",strikethroughposition:"strikethroughPosition","strikethrough-position":"strikethroughPosition",strikethroughthickness:"strikethroughThickness","strikethrough-thickness":"strikethroughThickness",string:"string",stroke:"stroke",strokedasharray:"strokeDasharray","stroke-dasharray":"strokeDasharray",strokedashoffset:"strokeDashoffset","stroke-dashoffset":"strokeDashoffset",strokelinecap:"strokeLinecap","stroke-linecap":"strokeLinecap",strokelinejoin:"strokeLinejoin","stroke-linejoin":"strokeLinejoin",strokemiterlimit:"strokeMiterlimit","stroke-miterlimit":"strokeMiterlimit",strokewidth:"strokeWidth","stroke-width":"strokeWidth",strokeopacity:"strokeOpacity","stroke-opacity":"strokeOpacity",suppresscontenteditablewarning:"suppressContentEditableWarning",suppresshydrationwarning:"suppressHydrationWarning",surfacescale:"surfaceScale",systemlanguage:"systemLanguage",tablevalues:"tableValues",targetx:"targetX",targety:"targetY",textanchor:"textAnchor","text-anchor":"textAnchor",textdecoration:"textDecoration","text-decoration":"textDecoration",textlength:"textLength",textrendering:"textRendering","text-rendering":"textRendering",to:"to",transform:"transform",typeof:"typeof",u1:"u1",u2:"u2",underlineposition:"underlinePosition","underline-position":"underlinePosition",underlinethickness:"underlineThickness","underline-thickness":"underlineThickness",unicode:"unicode",unicodebidi:"unicodeBidi","unicode-bidi":"unicodeBidi",unicoderange:"unicodeRange","unicode-range":"unicodeRange",unitsperem:"unitsPerEm","units-per-em":"unitsPerEm",unselectable:"unselectable",valphabetic:"vAlphabetic","v-alphabetic":"vAlphabetic",values:"values",vectoreffect:"vectorEffect","vector-effect":"vectorEffect",version:"version",vertadvy:"vertAdvY","vert-adv-y":"vertAdvY",vertoriginx:"vertOriginX","vert-origin-x":"vertOriginX",vertoriginy:"vertOriginY","vert-origin-y":"vertOriginY",vhanging:"vHanging","v-hanging":"vHanging",videographic:"vIdeographic","v-ideographic":"vIdeographic",viewbox:"viewBox",viewtarget:"viewTarget",visibility:"visibility",vmathematical:"vMathematical","v-mathematical":"vMathematical",vocab:"vocab",widths:"widths",wordspacing:"wordSpacing","word-spacing":"wordSpacing",writingmode:"writingMode","writing-mode":"writingMode",x1:"x1",x2:"x2",x:"x",xchannelselector:"xChannelSelector",xheight:"xHeight","x-height":"xHeight",xlinkactuate:"xlinkActuate","xlink:actuate":"xlinkActuate",xlinkarcrole:"xlinkArcrole","xlink:arcrole":"xlinkArcrole",xlinkhref:"xlinkHref","xlink:href":"xlinkHref",xlinkrole:"xlinkRole","xlink:role":"xlinkRole",xlinkshow:"xlinkShow","xlink:show":"xlinkShow",xlinktitle:"xlinkTitle","xlink:title":"xlinkTitle",xlinktype:"xlinkType","xlink:type":"xlinkType",xmlbase:"xmlBase","xml:base":"xmlBase",xmllang:"xmlLang","xml:lang":"xmlLang",xmlns:"xmlns","xml:space":"xmlSpace",xmlnsxlink:"xmlnsXlink","xmlns:xlink":"xmlnsXlink",xmlspace:"xmlSpace",y1:"y1",y2:"y2",y:"y",ychannelselector:"yChannelSelector",z:"z",zoomandpan:"zoomAndPan"},
vendor: 47,583 bytes, lines 77-89
77dS={"aria-current":0,"aria-description":0,"aria-details":0,"aria-disabled":0,"aria-hidden":0,"aria-invalid":0,"aria-keyshortcuts":0,"aria-label":0,"aria-roledescription":0,"aria-autocomplete":0,"aria-checked":0,"aria-expanded":0,"aria-haspopup":0,"aria-level":0,"aria-modal":0,"aria-multiline":0,"aria-multiselectable":0,"aria-orientation":0,"aria-placeholder":0,"aria-pressed":0,"aria-readonly":0,"aria-required":0,"aria-selected":0,"aria-sort":0,"aria-valuemax":0,"aria-valuemin":0,"aria-valuenow":0,"aria-valuetext":0,"aria-atomic":0,"aria-busy":0,"aria-live":0,"aria-relevant":0,"aria-dropeffect":0,"aria-grabbed":0,"aria-activedescendant":0,"aria-colcount":0,"aria-colindex":0,"aria-colspan":0,"aria-controls":0,"aria-describedby":0,"aria-errormessage":0,"aria-flowto":0,"aria-labelledby":0,"aria-owns":0,"aria-posinset":0,"aria-rowcount":0,"aria-rowindex":0,"aria-rowspan":0,"aria-setsize":0},Js={},JD=new RegExp("^(aria)-["+ue+"]*$"),ZD=new RegExp("^(aria)[A-Z]["+ue+"]*$");function eO(e,n){{if(Q.call(Js,n)&&Js[n])return!0;if(ZD.test(n)){var a="aria-"+n.slice(4).toLowerCase(),s=dS.hasOwnProperty(a)?a:null;if(s==null)return d("Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.",n),Js[n]=!0,!0;if(n!==s)return d("Invalid ARIA attribute `%s`. Did you mean `%s`?",n,s),Js[n]=!0,!0}if(JD.test(n)){var c=n.toLowerCase(),p=dS.hasOwnProperty(c)?c:null;if(p==null)return Js[n]=!0,!1;if(n!==p)return d("Unknown ARIA attribute `%s`. Did you mean `%s`?",n,p),Js[n]=!0,!0}}return!0}function tO(e,n){{var a=[];for(var s in n){var c=eO(e,s);c||a.push(s)}var p=a.map(function(f){return"`"+f+"`"}).join(", ");a.length===1?d("Invalid aria prop %s on <%s> tag. For details, see https://reactjs.org/link/invalid-aria-props",p,e):a.length>1&&d("Invalid aria props %s on <%s> tag. For details, see https://reactjs.org/link/invalid-aria-props",p,e)}}function nO(e,n){Yo(e,n)||tO(e,n)}var pS=!1;function rO(e,n){{if(e!=="input"&&e!=="textarea"&&e!=="select")return;n!=null&&n.value===null&&!pS&&(pS=!0,e==="select"&&n.multiple?d("`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.",e):d("`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.",e))}}var fS=function(){};{var mr={},hS=/^on./,aO=/^on[^A-Z]/,iO=new RegExp("^(aria)-["+ue+"]*$"),oO=new RegExp("^(aria)[A-Z]["+ue+"]*$");fS=function(e,n,a,s){if(Q.call(mr,n)&&mr[n])return!0;var c=n.toLowerCase();if(c==="onfocusin"||c==="onfocusout")return d("React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React."),mr[n]=!0,!0;if(s!=null){var p=s.registrationNameDependencies,f=s.possibleRegistrationNames;if(p.hasOwnProperty(n))return!0;var y=f.hasOwnProperty(c)?f[c]:null;if(y!=null)return d("Invalid event handler property `%s`. Did you mean `%s`?",n,y),mr[n]=!0,!0;if(hS.test(n))return d("Unknown event handler property `%s`. It will be ignored.",n),mr[n]=!0,!0}else if(hS.test(n))return aO.test(n)&&d("Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.",n),mr[n]=!0,!0;if(iO.test(n)||oO.test(n))return!0;if(c==="innerhtml")return d("Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`."),mr[n]=!0,!0;if(c==="aria")return d("The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead."),mr[n]=!0,!0;if(c==="is"&&a!==null&&a!==void 0&&typeof a!="string")return d("Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.",typeof a),mr[n]=!0,!0;if(typeof a=="number"&&isNaN(a))return d("Received NaN for the `%s` attribute. If this is expected, cast the value to a string.",n),mr[n]=!0,!0;var _=Vt(n),S=_!==null&&_.type===Cn;if(vp.hasOwnProperty(c)){var x=vp[c];if(x!==n)return d("Invalid DOM property `%s`. Did you mean `%s`?",n,x),mr[n]=!0,!0}else if(!S&&n!==c)return d("React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.",n,c),mr[n]=!0,!0;return typeof a=="boolean"&&an(n,a,_,!1)?(a?d('Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.',a,n,n,a,n):d('Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.',a,n,n,a,n,n,n),mr[n]=!0,!0):S?!0:an(n,a,_,!1)?(mr[n]=!0,!1):((a==="false"||a==="true")&&_!==null&&_.type===zt&&(d("Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?",a,n,a==="false"?"The browser will interpret it as a truthy value.":'Although this works, it will not work as expected if you pass the string "false".',n,a),mr[n]=!0),!0)}}var sO=function(e,n,a){{var s=[];for(var c in n){var p=fS(e,c,n[c],a);p||s.push(c)}var f=s.map(function(y){return"`"+y+"`"}).join(", ");s.length===1?d("Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://reactjs.org/link/attribute-behavior ",f,e):s.length>1&&d("Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://reactjs.org/link/attribute-behavior ",f,e)}};function lO(e,n,a){Yo(e,n)||sO(e,n,a)}var mS=1,ry=2,Xc=4,cO=mS|ry|Xc,Jc=null;function uO(e){Jc!==null&&d("Expected currently replaying event to be null. This error is likely caused by a bug in React. Please file an issue."),Jc=e}function dO(){Jc===null&&d("Expected currently replaying event to not be null. This error is likely caused by a bug in React. Please file an issue."),Jc=null}function pO(e){return e===Jc}function ay(e){var n=e.target||e.srcElement||window;return n.correspondingUseElement&&(n=n.correspondingUseElement),n.nodeType===bi?n.parentNode:n}var iy=null,Zs=null,el=null;function yS(e){var n=so(e);if(n){if(typeof iy!="function")throw new Error("setRestoreImplementation() needs to be called to handle a target for controlled events. This error is likely caused by a bug in React. Please file an issue.");var a=n.stateNode;if(a){var s=nf(a);iy(n.stateNode,n.type,s)}}}function fO(e){iy=e}function gS(e){Zs?el?el.push(e):el=[e]:Zs=e}function hO(){return Zs!==null||el!==null}function _S(){if(Zs){var e=Zs,n=el;if(Zs=null,el=null,yS(e),n)for(var a=0;a<n.length;a++)yS(n[a])}}var vS=function(e,n){return e(n)},bS=function(){},oy=!1;function mO(){var e=hO();e&&(bS(),_S())}function wS(e,n,a){if(oy)return e(n,a);oy=!0;try{return vS(e,n,a)}finally{oy=!1,mO()}}function yO(e,n,a){vS=e,bS=a}function gO(e){return e==="button"||e==="input"||e==="select"||e==="textarea"}function _O(e,n,a){switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":return!!(a.disabled&&gO(n));default:return!1}}function Zc(e,n){var a=e.stateNode;if(a===null)return null;var s=nf(a);if(s===null)return null;var c=s[n];if(_O(n,e.type,s))return null;if(c&&typeof c!="function")throw new Error("Expected `"+n+"` listener to be a function, instead got a value of `"+typeof c+"` type.");return c}var sy=!1;if(nn)try{var eu={};Object.defineProperty(eu,"passive",{get:function(){sy=!0}}),window.addEventListener("test",eu,eu),window.removeEventListener("test",eu,eu)}catch{sy=!1}function SS(e,n,a,s,c,p,f,y,_){var S=Array.prototype.slice.call(arguments,3);try{n.apply(a,S)}catch(x){this.onError(x)}}var xS=SS;if(typeof window<"u"&&typeof window.dispatchEvent=="function"&&typeof document<"u"&&typeof document.createEvent=="function"){var ly=document.createElement("react");xS=function(n,a,s,c,p,f,y,_,S){if(typeof document>"u"||document===null)throw new Error("The `document` global was defined when React was initialized, but is not defined anymore. This can happen in a test environment if a component schedules an update from an asynchronous callback, but the test has already finished running. To solve this, you can either unmount the component at the end of your test (and ensure that any asynchronous operations get canceled in `componentWillUnmount`), or you can change the test itself to be asynchronous.");var x=document.createEvent("Event"),A=!1,P=!0,B=window.event,F=Object.getOwnPropertyDescriptor(window,"event");function Y(){ly.removeEventListener(K,Pe,!1),typeof window.event<"u"&&window.hasOwnProperty("event")&&(window.event=B)}var pe=Array.prototype.slice.call(arguments,3);function Pe(){A=!0,Y(),a.apply(s,pe),P=!1}var Te,lt=!1,nt=!1;function q(I){if(Te=I.error,lt=!0,Te===null&&I.colno===0&&I.lineno===0&&(nt=!0),I.defaultPrevented&&Te!=null&&typeof Te=="object")try{Te._suppressLogging=!0}catch{}}var K="react-"+(n||"invokeguardedcallback");if(window.addEventListener("error",q),ly.addEventListener(K,Pe,!1),x.initEvent(K,!1,!1),ly.dispatchEvent(x),F&&Object.defineProperty(window,"event",F),A&&P&&(lt?nt&&(Te=new Error("A cross-origin error was thrown. React doesn't have access to the actual error object in development. See https://reactjs.org/link/crossorigin-error for more information.")):Te=new Error(`An error was thrown inside one of your components, but React doesn't know what it was. This is likely due to browser flakiness. React does its best to preserve the "Pause on exceptions" behavior of the DevTools, which requires some DEV-mode only tricks. It's possible that these don't work in your browser. Try triggering the error in production mode, or switching to a modern browser. If you suspect that this is actually an issue with React, please file an issue.`),this.onError(Te)),window.removeEventListener("error",q),!A)return Y(),SS.apply(this,arguments)}}var vO=xS,tl=!1,bp=null,wp=!1,cy=null,bO={onError:function(e){tl=!0,bp=e}};function uy(e,n,a,s,c,p,f,y,_){tl=!1,bp=null,vO.apply(bO,arguments)}function wO(e,n,a,s,c,p,f,y,_){if(uy.apply(this,arguments),tl){var S=dy();wp||(wp=!0,cy=S)}}function SO(){if(wp){var e=cy;throw wp=!1,cy=null,e}}function xO(){return tl}function dy(){if(tl){var e=bp;return tl=!1,bp=null,e}else throw new Error("clearCaughtError was called but no error was captured. This error is likely caused by a bug in React. Please file an issue.")}function nl(e){return e._reactInternals}function EO(e){return e._reactInternals!==void 0}function CO(e,n){e._reactInternals=n}var qe=0,rl=1,In=2,ht=4,Ko=16,Sp=32,ES=64,yt=128,Qo=256,Xo=512,al=1024,Zi=2048,Jo=4096,Zo=8192,py=16384,RO=32767,xp=32768,Sa=65536,fy=131072,CS=1048576,hy=2097152,es=4194304,my=8388608,eo=16777216,yy=33554432,gy=ht|al|0,_y=In|ht|Ko|Sp|Xo|Jo|Zo,tu=ht|ES|Xo|Zo,il=Zi|Ko,Si=es|my|hy,TO=i.ReactCurrentOwner;function ts(e){var n=e,a=e;if(e.alternate)for(;n.return;)n=n.return;else{var s=n;do n=s,(n.flags&(In|Jo))!==qe&&(a=n.return),s=n.return;while(s)}return n.tag===b?a:null}function RS(e){if(e.tag===W){var n=e.memoizedState;if(n===null){var a=e.alternate;a!==null&&(n=a.memoizedState)}if(n!==null)return n.dehydrated}return null}function TS(e){return e.tag===b?e.stateNode.containerInfo:null}function kO(e){return ts(e)===e}function jO(e){{var n=TO.current;if(n!==null&&n.tag===g){var a=n,s=a.stateNode;s._warnedAboutRefsInRender||d("%s is accessing isMounted inside its render() function. render() should be a pure function of props and state. It should never access something that requires stale data from the previous render, such as refs. Move this logic to componentDidMount and componentDidUpdate instead.",We(a)||"A component"),s._warnedAboutRefsInRender=!0}}var c=nl(e);return c?ts(c)===c:!1}function kS(e){if(ts(e)!==e)throw new Error("Unable to find node on an unmounted component.")}function jS(e){var n=e.alternate;if(!n){var a=ts(e);if(a===null)throw new Error("Unable to find node on an unmounted component.");return a!==e?null:e}for(var s=e,c=n;;){var p=s.return;if(p===null)break;var f=p.alternate;if(f===null){var y=p.return;if(y!==null){s=c=y;continue}break}if(p.child===f.child){for(var _=p.child;_;){if(_===s)return kS(p),e;if(_===c)return kS(p),n;_=_.sibling}throw new Error("Unable to find node on an unmounted component.")}if(s.return!==c.return)s=p,c=f;else{for(var S=!1,x=p.child;x;){if(x===s){S=!0,s=p,c=f;break}if(x===c){S=!0,c=p,s=f;break}x=x.sibling}if(!S){for(x=f.child;x;){if(x===s){S=!0,s=f,c=p;break}if(x===c){S=!0,c=f,s=p;break}x=x.sibling}if(!S)throw new Error("Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.")}}if(s.alternate!==c)throw new Error("Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.")}if(s.tag!==b)throw new Error("Unable to find node on an unmounted component.");return s.stateNode.current===s?e:n}function DS(e){var n=jS(e);return n!==null?OS(n):null}function OS(e){if(e.tag===T||e.tag===O)return e;for(var n=e.child;n!==null;){var a=OS(n);if(a!==null)return a;n=n.sibling}return null}function DO(e){var n=jS(e);return n!==null?PS(n):null}function PS(e){if(e.tag===T||e.tag===O)return e;for(var n=e.child;n!==null;){if(n.tag!==E){var a=PS(n);if(a!==null)return a}n=n.sibling}return null}var AS=r.unstable_scheduleCallback,OO=r.unstable_cancelCallback,PO=r.unstable_shouldYield,AO=r.unstable_requestPaint,Nn=r.unstable_now,LO=r.unstable_getCurrentPriorityLevel,Ep=r.unstable_ImmediatePriority,vy=r.unstable_UserBlockingPriority,ns=r.unstable_NormalPriority,MO=r.unstable_LowPriority,by=r.unstable_IdlePriority,qO=r.unstable_yieldValue,IO=r.unstable_setDisableYieldValue,ol=null,nr=null,me=null,Ya=!1,xa=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u";function NO(e){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")return!1;var n=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(n.isDisabled)return!0;if(!n.supportsFiber)return d("The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://reactjs.org/link/react-devtools"),!0;try{Fe&&(e=Qe({},e,{getLaneLabelMap:HO,injectProfilingHooks:$O})),ol=n.inject(e),nr=n}catch(a){d("React instrumentation encountered an error: %s.",a)}return!!n.checkDCE}function BO(e,n){if(nr&&typeof nr.onScheduleFiberRoot=="function")try{nr.onScheduleFiberRoot(ol,e,n)}catch(a){Ya||(Ya=!0,d("React instrumentation encountered an error: %s",a))}}function UO(e,n){if(nr&&typeof nr.onCommitFiberRoot=="function")try{var a=(e.current.flags&yt)===yt;if(Ze){var s;switch(n){case Br:s=Ep;break;case Ei:s=vy;break;case Ci:s=ns;break;case Op:s=by;break;default:s=ns;break}nr.onCommitFiberRoot(ol,e,s,a)}}catch(c){Ya||(Ya=!0,d("React instrumentation encountered an error: %s",c))}}function FO(e){if(nr&&typeof nr.onPostCommitFiberRoot=="function")try{nr.onPostCommitFiberRoot(ol,e)}catch(n){Ya||(Ya=!0,d("React instrumentation encountered an error: %s",n))}}function zO(e){if(nr&&typeof nr.onCommitFiberUnmount=="function")try{nr.onCommitFiberUnmount(ol,e)}catch(n){Ya||(Ya=!0,d("React instrumentation encountered an error: %s",n))}}function Bn(e){if(typeof qO=="function"&&(IO(e),l(e)),nr&&typeof nr.setStrictMode=="function")try{nr.setStrictMode(ol,e)}catch(n){Ya||(Ya=!0,d("React instrumentation encountered an error: %s",n))}}function $O(e){me=e}function HO(){{for(var e=new Map,n=1,a=0;a<Sy;a++){var s=uP(n);e.set(n,s),n*=2}return e}}function GO(e){me!==null&&typeof me.markCommitStarted=="function"&&me.markCommitStarted(e)}function LS(){me!==null&&typeof me.markCommitStopped=="function"&&me.markCommitStopped()}function nu(e){me!==null&&typeof me.markComponentRenderStarted=="function"&&me.markComponentRenderStarted(e)}function sl(){me!==null&&typeof me.markComponentRenderStopped=="function"&&me.markComponentRenderStopped()}function WO(e){me!==null&&typeof me.markComponentPassiveEffectMountStarted=="function"&&me.markComponentPassiveEffectMountStarted(e)}function VO(){me!==null&&typeof me.markComponentPassiveEffectMountStopped=="function"&&me.markComponentPassiveEffectMountStopped()}function YO(e){me!==null&&typeof me.markComponentPassiveEffectUnmountStarted=="function"&&me.markComponentPassiveEffectUnmountStarted(e)}function KO(){me!==null&&typeof me.markComponentPassiveEffectUnmountStopped=="function"&&me.markComponentPassiveEffectUnmountStopped()}function QO(e){me!==null&&typeof me.markComponentLayoutEffectMountStarted=="function"&&me.markComponentLayoutEffectMountStarted(e)}function XO(){me!==null&&typeof me.markComponentLayoutEffectMountStopped=="function"&&me.markComponentLayoutEffectMountStopped()}function MS(e){me!==null&&typeof me.markComponentLayoutEffectUnmountStarted=="function"&&me.markComponentLayoutEffectUnmountStarted(e)}function qS(){me!==null&&typeof me.markComponentLayoutEffectUnmountStopped=="function"&&me.markComponentLayoutEffectUnmountStopped()}function JO(e,n,a){me!==null&&typeof me.markComponentErrored=="function"&&me.markComponentErrored(e,n,a)}function ZO(e,n,a){me!==null&&typeof me.markComponentSuspended=="function"&&me.markComponentSuspended(e,n,a)}function eP(e){me!==null&&typeof me.markLayoutEffectsStarted=="function"&&me.markLayoutEffectsStarted(e)}function tP(){me!==null&&typeof me.markLayoutEffectsStopped=="function"&&me.markLayoutEffectsStopped()}function nP(e){me!==null&&typeof me.markPassiveEffectsStarted=="function"&&me.markPassiveEffectsStarted(e)}function rP(){me!==null&&typeof me.markPassiveEffectsStopped=="function"&&me.markPassiveEffectsStopped()}function IS(e){me!==null&&typeof me.markRenderStarted=="function"&&me.markRenderStarted(e)}function aP(){me!==null&&typeof me.markRenderYielded=="function"&&me.markRenderYielded()}function NS(){me!==null&&typeof me.markRenderStopped=="function"&&me.markRenderStopped()}function iP(e){me!==null&&typeof me.markRenderScheduled=="function"&&me.markRenderScheduled(e)}function oP(e,n){me!==null&&typeof me.markForceUpdateScheduled=="function"&&me.markForceUpdateScheduled(e,n)}function wy(e,n){me!==null&&typeof me.markStateUpdateScheduled=="function"&&me.markStateUpdateScheduled(e,n)}var Ae=0,ot=1,Et=2,sn=8,Ka=16,BS=Math.clz32?Math.clz32:cP,sP=Math.log,lP=Math.LN2;function cP(e){var n=e>>>0;return n===0?32:31-(sP(n)/lP|0)|0}var Sy=31,ie=0,Un=0,ze=1,ll=2,xi=4,rs=8,Qa=16,ru=32,cl=4194240,au=64,xy=128,Ey=256,Cy=512,Ry=1024,Ty=2048,ky=4096,jy=8192,Dy=16384,Oy=32768,Py=65536,Ay=131072,Ly=262144,My=524288,qy=1048576,Iy=2097152,Cp=130023424,ul=4194304,Ny=8388608,By=16777216,Uy=33554432,Fy=67108864,US=ul,iu=134217728,FS=268435455,ou=268435456,as=536870912,Xr=1073741824;function uP(e){{if(e&ze)return"Sync";if(e&ll)return"InputContinuousHydration";if(e&xi)return"InputContinuous";if(e&rs)return"DefaultHydration";if(e&Qa)return"Default";if(e&ru)return"TransitionHydration";if(e&cl)return"Transition";if(e&Cp)return"Retry";if(e&iu)return"SelectiveHydration";if(e&ou)return"IdleHydration";if(e&as)return"Idle";if(e&Xr)return"Offscreen"}}var Ut=-1,Rp=au,Tp=ul;function su(e){switch(is(e)){case ze:return ze;case ll:return ll;case xi:return xi;case rs:return rs;case Qa:return Qa;case ru:return ru;case au:case xy:case Ey:case Cy:case Ry:case Ty:case ky:case jy:case Dy:case Oy:case Py:case Ay:case Ly:case My:case qy:case Iy:return e&cl;case ul:case Ny:case By:case Uy:case Fy:return e&Cp;case iu:return iu;case ou:return ou;case as:return as;case Xr:return Xr;default:return d("Should have found matching lanes. This is a bug in React."),e}}function kp(e,n){var a=e.pendingLanes;if(a===ie)return ie;var s=ie,c=e.suspendedLanes,p=e.pingedLanes,f=a&FS;if(f!==ie){var y=f&~c;if(y!==ie)s=su(y);else{var _=f&p;_!==ie&&(s=su(_))}}else{var S=a&~c;S!==ie?s=su(S):p!==ie&&(s=su(p))}if(s===ie)return ie;if(n!==ie&&n!==s&&(n&c)===ie){var x=is(s),A=is(n);if(x>=A||x===Qa&&(A&cl)!==ie)return n}(s&xi)!==ie&&(s|=a&Qa);var P=e.entangledLanes;if(P!==ie)for(var B=e.entanglements,F=s&P;F>0;){var Y=os(F),pe=1<<Y;s|=B[Y],F&=~pe}return s}function dP(e,n){for(var a=e.eventTimes,s=Ut;n>0;){var c=os(n),p=1<<c,f=a[c];f>s&&(s=f),n&=~p}return s}function pP(e,n){switch(e){case ze:case ll:case xi:return n+250;case rs:case Qa:case ru:case au:case xy:case Ey:case Cy:case Ry:case Ty:case ky:case jy:case Dy:case Oy:case Py:case Ay:case Ly:case My:case qy:case Iy:return n+5e3;case ul:case Ny:case By:case Uy:case Fy:return Ut;case iu:case ou:case as:case Xr:return Ut;default:return d("Should have found matching lanes. This is a bug in React."),Ut}}function fP(e,n){for(var a=e.pendingLanes,s=e.suspendedLanes,c=e.pingedLanes,p=e.expirationTimes,f=a;f>0;){var y=os(f),_=1<<y,S=p[y];S===Ut?((_&s)===ie||(_&c)!==ie)&&(p[y]=pP(_,n)):S<=n&&(e.expiredLanes|=_),f&=~_}}function hP(e){return su(e.pendingLanes)}function zy(e){var n=e.pendingLanes&-1073741825;return n!==ie?n:n&Xr?Xr:ie}function mP(e){return(e&ze)!==ie}function $y(e){return(e&FS)!==ie}function zS(e){return(e&Cp)===e}function yP(e){var n=ze|xi|Qa;return(e&n)===ie}function gP(e){return(e&cl)===e}function jp(e,n){var a=ll|xi|rs|Qa;return(n&a)!==ie}function _P(e,n){return(n&e.expiredLanes)!==ie}function $S(e){return(e&cl)!==ie}function HS(){var e=Rp;return Rp<<=1,(Rp&cl)===ie&&(Rp=au),e}function vP(){var e=Tp;return Tp<<=1,(Tp&Cp)===ie&&(Tp=ul),e}function is(e){return e&-e}function lu(e){return is(e)}function os(e){return 31-BS(e)}function Hy(e){return os(e)}function Nr(e,n){return(e&n)!==ie}function dl(e,n){return(e&n)===n}function Xe(e,n){return e|n}function Dp(e,n){return e&~n}function GS(e,n){return e&n}function QY(e){return e}function bP(e,n){return e!==Un&&e<n?e:n}function Gy(e){for(var n=[],a=0;a<Sy;a++)n.push(e);return n}function cu(e,n,a){e.pendingLanes|=n,n!==as&&(e.suspendedLanes=ie,e.pingedLanes=ie);var s=e.eventTimes,c=Hy(n);s[c]=a}function wP(e,n){e.suspendedLanes|=n,e.pingedLanes&=~n;for(var a=e.expirationTimes,s=n;s>0;){var c=os(s),p=1<<c;a[c]=Ut,s&=~p}}function WS(e,n,a){e.pingedLanes|=e.suspendedLanes&n}function SP(e,n){var a=e.pendingLanes&~n;e.pendingLanes=n,e.suspendedLanes=ie,e.pingedLanes=ie,e.expiredLanes&=n,e.mutableReadLanes&=n,e.entangledLanes&=n;for(var s=e.entanglements,c=e.eventTimes,p=e.expirationTimes,f=a;f>0;){var y=os(f),_=1<<y;s[y]=ie,c[y]=Ut,p[y]=Ut,f&=~_}}function Wy(e,n){for(var a=e.entangledLanes|=n,s=e.entanglements,c=a;c;){var p=os(c),f=1<<p;f&n|s[p]&n&&(s[p]|=n),c&=~f}}function xP(e,n){var a=is(n),s;switch(a){case xi:s=ll;break;case Qa:s=rs;break;case au:case xy:case Ey:case Cy:case Ry:case Ty:case ky:case jy:case Dy:case Oy:case Py:case Ay:case Ly:case My:case qy:case Iy:case ul:case Ny:case By:case Uy:case Fy:s=ru;break;case as:s=ou;break;default:s=Un;break}return(s&(e.suspendedLanes|n))!==Un?Un:s}function VS(e,n,a){if(xa)for(var s=e.pendingUpdatersLaneMap;a>0;){var c=Hy(a),p=1<<c,f=s[c];f.add(n),a&=~p}}function YS(e,n){if(xa)for(var a=e.pendingUpdatersLaneMap,s=e.memoizedUpdaters;n>0;){var c=Hy(n),p=1<<c,f=a[c];f.size>0&&(f.forEach(function(y){var _=y.alternate;(_===null||!s.has(_))&&s.add(y)}),f.clear()),n&=~p}}function KS(e,n){return null}var Br=ze,Ei=xi,Ci=Qa,Op=as,uu=Un;function Ea(){return uu}function Fn(e){uu=e}function EP(e,n){var a=uu;try{return uu=e,n()}finally{uu=a}}function CP(e,n){return e!==0&&e<n?e:n}function RP(e,n){return e>n?e:n}function Vy(e,n){return e!==0&&e<n}function QS(e){var n=is(e);return Vy(Br,n)?Vy(Ei,n)?$y(n)?Ci:Op:Ei:Br}function Pp(e){var n=e.current.memoizedState;return n.isDehydrated}var XS;function TP(e){XS=e}function kP(e){XS(e)}var Yy;function jP(e){Yy=e}var JS;function DP(e){JS=e}var ZS;function OP(e){ZS=e}var e0;function PP(e){e0=e}var Ky=!1,Ap=[],to=null,no=null,ro=null,du=new Map,pu=new Map,ao=[],AP=["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"];function LP(e){return AP.indexOf(e)>-1}function MP(e,n,a,s,c){return{blockedOn:e,domEventName:n,eventSystemFlags:a,nativeEvent:c,targetContainers:[s]}}function t0(e,n){switch(e){case"focusin":case"focusout":to=null;break;case"dragenter":case"dragleave":no=null;break;case"mouseover":case"mouseout":ro=null;break;case"pointerover":case"pointerout":{var a=n.pointerId;du.delete(a);break}case"gotpointercapture":case"lostpointercapture":{var s=n.pointerId;pu.delete(s);break}}}function fu(e,n,a,s,c,p){if(e===null||e.nativeEvent!==p){var f=MP(n,a,s,c,p);if(n!==null){var y=so(n);y!==null&&Yy(y)}return f}e.eventSystemFlags|=s;var _=e.targetContainers;return c!==null&&_.indexOf(c)===-1&&_.push(c),e}function qP(e,n,a,s,c){switch(n){case"focusin":{var p=c;return to=fu(to,e,n,a,s,p),!0}case"dragenter":{var f=c;return no=fu(no,e,n,a,s,f),!0}case"mouseover":{var y=c;return ro=fu(ro,e,n,a,s,y),!0}case"pointerover":{var _=c,S=_.pointerId;return du.set(S,fu(du.get(S)||null,e,n,a,s,_)),!0}case"gotpointercapture":{var x=c,A=x.pointerId;return pu.set(A,fu(pu.get(A)||null,e,n,a,s,x)),!0}}return!1}function n0(e){var n=cs(e.target);if(n!==null){var a=ts(n);if(a!==null){var s=a.tag;if(s===W){var c=RS(a);if(c!==null){e.blockedOn=c,e0(e.priority,function(){JS(a)});return}}else if(s===b){var p=a.stateNode;if(Pp(p)){e.blockedOn=TS(a);return}}}}e.blockedOn=null}function IP(e){for(var n=ZS(),a={blockedOn:null,target:e,priority:n},s=0;s<ao.length&&Vy(n,ao[s].priority);s++);ao.splice(s,0,a),s===0&&n0(a)}function Lp(e){if(e.blockedOn!==null)return!1;for(var n=e.targetContainers;n.length>0;){var a=n[0],s=Jy(e.domEventName,e.eventSystemFlags,a,e.nativeEvent);if(s===null){var c=e.nativeEvent,p=new c.constructor(c.type,c);uO(p),c.target.dispatchEvent(p),dO()}else{var f=so(s);return f!==null&&Yy(f),e.blockedOn=s,!1}n.shift()}return!0}function r0(e,n,a){Lp(e)&&a.delete(n)}function NP(){Ky=!1,to!==null&&Lp(to)&&(to=null),no!==null&&Lp(no)&&(no=null),ro!==null&&Lp(ro)&&(ro=null),du.forEach(r0),pu.forEach(r0)}function hu(e,n){e.blockedOn===n&&(e.blockedOn=null,Ky||(Ky=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,NP)))}function mu(e){if(Ap.length>0){hu(Ap[0],e);for(var n=1;n<Ap.length;n++){var a=Ap[n];a.blockedOn===e&&(a.blockedOn=null)}}to!==null&&hu(to,e),no!==null&&hu(no,e),ro!==null&&hu(ro,e);var s=function(y){return hu(y,e)};du.forEach(s),pu.forEach(s);for(var c=0;c<ao.length;c++){var p=ao[c];p.blockedOn===e&&(p.blockedOn=null)}for(;ao.length>0;){var f=ao[0];if(f.blockedOn!==null)break;n0(f),f.blockedOn===null&&ao.shift()}}var pl=i.ReactCurrentBatchConfig,Qy=!0;function a0(e){Qy=!!e}function BP(){return Qy}function UP(e,n,a){var s=i0(n),c;switch(s){case Br:c=FP;break;case Ei:c=zP;break;case Ci:default:c=Xy;break}return c.bind(null,n,a,e)}function FP(e,n,a,s){var c=Ea(),p=pl.transition;pl.transition=null;try{Fn(Br),Xy(e,n,a,s)}finally{Fn(c),pl.transition=p}}function zP(e,n,a,s){var c=Ea(),p=pl.transition;pl.transition=null;try{Fn(Ei),Xy(e,n,a,s)}finally{Fn(c),pl.transition=p}}function Xy(e,n,a,s){Qy&&$P(e,n,a,s)}function $P(e,n,a,s){var c=Jy(e,n,a,s);if(c===null){pg(e,n,s,Mp,a),t0(e,s);return}if(qP(c,e,n,a,s)){s.stopPropagation();return}if(t0(e,s),n&Xc&&LP(e)){for(;c!==null;){var p=so(c);p!==null&&kP(p);var f=Jy(e,n,a,s);if(f===null&&pg(e,n,s,Mp,a),f===c)break;c=f}c!==null&&s.stopPropagation();return}pg(e,n,s,null,a)}var Mp=null;function Jy(e,n,a,s){Mp=null;var c=ay(s),p=cs(c);if(p!==null){var f=ts(p);if(f===null)p=null;else{var y=f.tag;if(y===W){var _=RS(f);if(_!==null)return _;p=null}else if(y===b){var S=f.stateNode;if(Pp(S))return TS(f);p=null}else f!==p&&(p=null)}}return Mp=p,null}function i0(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 Br;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 Ei;case"message":{var n=LO();switch(n){case Ep:return Br;case vy:return Ei;case ns:case MO:return Ci;case by:return Op;default:return Ci}}default:return Ci}}function HP(e,n,a){return e.addEventListener(n,a,!1),a}function GP(e,n,a){return e.addEventListener(n,a,!0),a}function WP(e,n,a,s){return e.addEventListener(n,a,{capture:!0,passive:s}),a}function VP(e,n,a,s){return e.addEventListener(n,a,{passive:s}),a}var yu=null,Zy=null,gu=null;function YP(e){return yu=e,Zy=s0(),!0}function KP(){yu=null,Zy=null,gu=null}function o0(){if(gu)return gu;var e,n=Zy,a=n.length,s,c=s0(),p=c.length;for(e=0;e<a&&n[e]===c[e];e++);var f=a-e;for(s=1;s<=f&&n[a-s]===c[p-s];s++);var y=s>1?1-s:void 0;return gu=c.slice(e,y),gu}function s0(){return"value"in yu?yu.value:yu.textContent}function qp(e){var n,a=e.keyCode;return"charCode"in e?(n=e.charCode,n===0&&a===13&&(n=13)):n=a,n===10&&(n=13),n>=32||n===13?n:0}function Ip(){return!0}function l0(){return!1}function Ur(e){function n(a,s,c,p,f){this._reactName=a,this._targetInst=c,this.type=s,this.nativeEvent=p,this.target=f,this.currentTarget=null;for(var y in e)if(e.hasOwnProperty(y)){var _=e[y];_?this[y]=_(p):this[y]=p[y]}var S=p.defaultPrevented!=null?p.defaultPrevented:p.returnValue===!1;return S?this.isDefaultPrevented=Ip:this.isDefaultPrevented=l0,this.isPropagationStopped=l0,this}return Qe(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():typeof a.returnValue!="unknown"&&(a.returnValue=!1),this.isDefaultPrevented=Ip)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():typeof a.cancelBubble!="unknown"&&(a.cancelBubble=!0),this.isPropagationStopped=Ip)},persist:function(){},isPersistent:Ip}),n}var fl={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},eg=Ur(fl),_u=Qe({},fl,{view:0,detail:0}),QP=Ur(_u),tg,ng,vu;function XP(e){e!==vu&&(vu&&e.type==="mousemove"?(tg=e.screenX-vu.screenX,ng=e.screenY-vu.screenY):(tg=0,ng=0),vu=e)}var Np=Qe({},_u,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:ag,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:(XP(e),tg)},movementY:function(e){return"movementY"in e?e.movementY:ng}}),c0=Ur(Np),JP=Qe({},Np,{dataTransfer:0}),ZP=Ur(JP),eA=Qe({},_u,{relatedTarget:0}),rg=Ur(eA),tA=Qe({},fl,{animationName:0,elapsedTime:0,pseudoElement:0}),nA=Ur(tA),rA=Qe({},fl,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),aA=Ur(rA),iA=Qe({},fl,{data:0}),u0=Ur(iA),oA=u0,sA={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},lA={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"};function cA(e){if(e.key){var n=sA[e.key]||e.key;if(n!=="Unidentified")return n}if(e.type==="keypress"){var a=qp(e);return a===13?"Enter":String.fromCharCode(a)}return e.type==="keydown"||e.type==="keyup"?lA[e.keyCode]||"Unidentified":""}var uA={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function dA(e){var n=this,a=n.nativeEvent;if(a.getModifierState)return a.getModifierState(e);var s=uA[e];return s?!!a[s]:!1}function ag(e){return dA}var pA=Qe({},_u,{key:cA,code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:ag,charCode:function(e){return e.type==="keypress"?qp(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?qp(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),fA=Ur(pA),hA=Qe({},Np,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),d0=Ur(hA),mA=Qe({},_u,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:ag}),yA=Ur(mA),gA=Qe({},fl,{propertyName:0,elapsedTime:0,pseudoElement:0}),_A=Ur(gA),vA=Qe({},Np,{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}),bA=Ur(vA),wA=[9,13,27,32],p0=229,ig=nn&&"CompositionEvent"in window,bu=null;nn&&"documentMode"in document&&(bu=document.documentMode);var SA=nn&&"TextEvent"in window&&!bu,f0=nn&&(!ig||bu&&bu>8&&bu<=11),h0=32,m0=String.fromCharCode(h0);function xA(){_t("onBeforeInput",["compositionend","keypress","textInput","paste"]),_t("onCompositionEnd",["compositionend","focusout","keydown","keypress","keyup","mousedown"]),_t("onCompositionStart",["compositionstart","focusout","keydown","keypress","keyup","mousedown"]),_t("onCompositionUpdate",["compositionupdate","focusout","keydown","keypress","keyup","mousedown"])}var y0=!1;function EA(e){return(e.ctrlKey||e.altKey||e.metaKey)&&!(e.ctrlKey&&e.altKey)}function CA(e){switch(e){case"compositionstart":return"onCompositionStart";case"compositionend":return"onCompositionEnd";case"compositionupdate":return"onCompositionUpdate"}}function RA(e,n){return e==="keydown"&&n.keyCode===p0}function g0(e,n){switch(e){case"keyup":return wA.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==p0;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _0(e){var n=e.detail;return typeof n=="object"&&"data"in n?n.data:null}function v0(e){return e.locale==="ko"}var hl=!1;function TA(e,n,a,s,c){var p,f;if(ig?p=CA(n):hl?g0(n,s)&&(p="onCompositionEnd"):RA(n,s)&&(p="onCompositionStart"),!p)return null;f0&&!v0(s)&&(!hl&&p==="onCompositionStart"?hl=YP(c):p==="onCompositionEnd"&&hl&&(f=o0()));var y=$p(a,p);if(y.length>0){var _=new u0(p,n,null,s,c);if(e.push({event:_,listeners:y}),f)_.data=f;else{var S=_0(s);S!==null&&(_.data=S)}}}function kA(e,n){switch(e){case"compositionend":return _0(n);case"keypress":var a=n.which;return a!==h0?null:(y0=!0,m0);case"textInput":var s=n.data;return s===m0&&y0?null:s;default:return null}}function jA(e,n){if(hl){if(e==="compositionend"||!ig&&g0(e,n)){var a=o0();return KP(),hl=!1,a}return null}switch(e){case"paste":return null;case"keypress":if(!EA(n)){if(n.char&&n.char.length>1)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return f0&&!v0(n)?null:n.data;default:return null}}function DA(e,n,a,s,c){var p;if(SA?p=kA(n,s):p=jA(n,s),!p)return null;var f=$p(a,"onBeforeInput");if(f.length>0){var y=new oA("onBeforeInput","beforeinput",null,s,c);e.push({event:y,listeners:f}),y.data=p}}function OA(e,n,a,s,c,p,f){TA(e,n,a,s,c),DA(e,n,a,s,c)}var PA={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 b0(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n==="input"?!!PA[e.type]:n==="textarea"}/**
78 * Checks if an event is supported in the current execution environment.
79 *
80 * NOTE: This will not work correctly for non-generic events such as `change`,
81 * `reset`, `load`, `error`, and `select`.
82 *
83 * Borrows from Modernizr.
84 *
85 * @param {string} eventNameSuffix Event name, e.g. "click".
86 * @return {boolean} True if the event is supported.
87 * @internal
88 * @license Modernizr 3.0.0pre (Custom Build) | MIT
89 */function AA(e){if(!nn)return!1;var n="on"+e,a=n in document;if(!a){var s=document.createElement("div");s.setAttribute(n,"return;"),a=typeof s[n]=="function"}return a}function LA(){_t("onChange",["change","click","focusin","focusout","input","keydown","keyup","selectionchange"])}function w0(e,n,a,s){gS(s);var c=$p(n,"onChange");if(c.length>0){var p=new eg("onChange","change",null,a,s);e.push({event:p,listeners:c})}}var wu=null,Su=null;function MA(e){var n=e.nodeName&&e.nodeName.toLowerCase();return n==="select"||n==="input"&&e.type==="file"}function qA(e){var n=[];w0(n,Su,e,ay(e)),wS(IA,n)}function IA(e){B0(e,0)}function Bp(e){var n=bl(e);if(Gc(n))return e}function NA(e,n){if(e==="change")return n}var S0=!1;nn&&(S0=AA("input")&&(!document.documentMode||document.documentMode>9));function BA(e,n){wu=e,Su=n,wu.attachEvent("onpropertychange",E0)}function x0(){wu&&(wu.detachEvent("onpropertychange",E0),wu=null,Su=null)}function E0(e){e.propertyName==="value"&&Bp(Su)&&qA(e)}function UA(e,n,a){e==="focusin"?(x0(),BA(n,a)):e==="focusout"&&x0()}function FA(e,n){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Bp(Su)}function zA(e){var n=e.nodeName;return n&&n.toLowerCase()==="input"&&(e.type==="checkbox"||e.type==="radio")}function $A(e,n){if(e==="click")return Bp(n)}function HA(e,n){if(e==="input"||e==="change")return Bp(n)}function GA(e){var n=e._wrapperState;!n||!n.controlled||e.type!=="number"||Le(e,"number",e.value)}function WA(e,n,a,s,c,p,f){var y=a?bl(a):window,_,S;if(MA(y)?_=NA:b0(y)?S0?_=HA:(_=FA,S=UA):zA(y)&&(_=$A),_){var x=_(n,a);if(x){w0(e,x,s,c);return}}S&&S(n,y,a),n==="focusout"&&GA(y)}function VA(){tn("onMouseEnter",["mouseout","mouseover"]),tn("onMouseLeave",["mouseout","mouseover"]),tn("onPointerEnter",["pointerout","pointerover"]),tn("onPointerLeave",["pointerout","pointerover"])}function YA(e,n,a,s,c,p,f){var y=n==="mouseover"||n==="pointerover",_=n==="mouseout"||n==="pointerout";if(y&&!pO(s)){var S=s.relatedTarget||s.fromElement;if(S&&(cs(S)||Iu(S)))return}if(!(!_&&!y)){var x;if(c.window===c)x=c;else{var A=c.ownerDocument;A?x=A.defaultView||A.parentWindow:x=window}var P,B;if(_){var F=s.relatedTarget||s.toElement;if(P=a,B=F?cs(F):null,B!==null){var Y=ts(B);(B!==Y||B.tag!==T&&B.tag!==O)&&(B=null)}}else P=null,B=a;if(P!==B){var pe=c0,Pe="onMouseLeave",Te="onMouseEnter",lt="mouse";(n==="pointerout"||n==="pointerover")&&(pe=d0,Pe="onPointerLeave",Te="onPointerEnter",lt="pointer");var nt=P==null?x:bl(P),q=B==null?x:bl(B),K=new pe(Pe,lt+"leave",P,s,c);K.target=nt,K.relatedTarget=q;var I=null,se=cs(c);if(se===a){var ge=new pe(Te,lt+"enter",B,s,c);ge.target=q,ge.relatedTarget=nt,I=ge}_L(e,K,I,P,B)}}}function KA(e,n){return e===n&&(e!==0||1/e===1/n)||e!==e&&n!==n}var Fr=typeof Object.is=="function"?Object.is:KA;function xu(e,n){if(Fr(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;var a=Object.keys(e),s=Object.keys(n);if(a.length!==s.length)return!1;for(var c=0;c<a.length;c++){var p=a[c];if(!Q.call(n,p)||!Fr(e[p],n[p]))return!1}return!0}function C0(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function QA(e){for(;e;){if(e.nextSibling)return e.nextSibling;e=e.parentNode}}function R0(e,n){for(var a=C0(e),s=0,c=0;a;){if(a.nodeType===bi){if(c=s+a.textContent.length,s<=n&&c>=n)return{node:a,offset:n-s};s=c}a=C0(QA(a))}}function XA(e){var n=e.ownerDocument,a=n&&n.defaultView||window,s=a.getSelection&&a.getSelection();if(!s||s.rangeCount===0)return null;var c=s.anchorNode,p=s.anchorOffset,f=s.focusNode,y=s.focusOffset;try{c.nodeType,f.nodeType}catch{return null}return JA(e,c,p,f,y)}function JA(e,n,a,s,c){var p=0,f=-1,y=-1,_=0,S=0,x=e,A=null;e:for(;;){for(var P=null;x===n&&(a===0||x.nodeType===bi)&&(f=p+a),x===s&&(c===0||x.nodeType===bi)&&(y=p+c),x.nodeType===bi&&(p+=x.nodeValue.length),(P=x.firstChild)!==null;)A=x,x=P;for(;;){if(x===e)break e;if(A===n&&++_===a&&(f=p),A===s&&++S===c&&(y=p),(P=x.nextSibling)!==null)break;x=A,A=x.parentNode}x=P}return f===-1||y===-1?null:{start:f,end:y}}function ZA(e,n){var a=e.ownerDocument||document,s=a&&a.defaultView||window;if(s.getSelection){var c=s.getSelection(),p=e.textContent.length,f=Math.min(n.start,p),y=n.end===void 0?f:Math.min(n.end,p);if(!c.extend&&f>y){var _=y;y=f,f=_}var S=R0(e,f),x=R0(e,y);if(S&&x){if(c.rangeCount===1&&c.anchorNode===S.node&&c.anchorOffset===S.offset&&c.focusNode===x.node&&c.focusOffset===x.offset)return;var A=a.createRange();A.setStart(S.node,S.offset),c.removeAllRanges(),f>y?(c.addRange(A),c.extend(x.node,x.offset)):(A.setEnd(x.node,x.offset),c.addRange(A))}}}function T0(e){return e&&e.nodeType===bi}function k0(e,n){return!e||!n?!1:e===n?!0:T0(e)?!1:T0(n)?k0(e,n.parentNode):"contains"in e?e.contains(n):e.compareDocumentPosition?!!(e.compareDocumentPosition(n)&16):!1}function eL(e){return e&&e.ownerDocument&&k0(e.ownerDocument.documentElement,e)}function tL(e){try{return typeof e.contentWindow.location.href=="string"}catch{return!1}}function j0(){for(var e=window,n=gi();n instanceof e.HTMLIFrameElement;){if(tL(n))e=n.contentWindow;else return n;n=gi(e.document)}return n}function og(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 nL(){var e=j0();return{focusedElem:e,selectionRange:og(e)?aL(e):null}}function rL(e){var n=j0(),a=e.focusedElem,s=e.selectionRange;if(n!==a&&eL(a)){s!==null&&og(a)&&iL(a,s);for(var c=[],p=a;p=p.parentNode;)p.nodeType===Tr&&c.push({element:p,left:p.scrollLeft,top:p.scrollTop});typeof a.focus=="function"&&a.focus();for(var f=0;f<c.length;f++){var y=c[f];y.element.scrollLeft=y.left,y.element.scrollTop=y.top}}}function aL(e){var n;return"selectionStart"in e?n={start:e.selectionStart,end:e.selectionEnd}:n=XA(e),n||{start:0,end:0}}function iL(e,n){var a=n.start,s=n.end;s===void 0&&(s=a),"selectionStart"in e?(e.selectionStart=a,e.selectionEnd=Math.min(s,e.value.length)):ZA(e,n)}var oL=nn&&"documentMode"in document&&document.documentMode<=11;function sL(){_t("onSelect",["focusout","contextmenu","dragend","focusin","keydown","keyup","mousedown","mouseup","selectionchange"])}var ml=null,sg=null,Eu=null,lg=!1;function lL(e){if("selectionStart"in e&&og(e))return{start:e.selectionStart,end:e.selectionEnd};var n=e.ownerDocument&&e.ownerDocument.defaultView||window,a=n.getSelection();return{anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}}function cL(e){return e.window===e?e.document:e.nodeType===wi?e:e.ownerDocument}function D0(e,n,a){var s=cL(a);if(!(lg||ml==null||ml!==gi(s))){var c=lL(ml);if(!Eu||!xu(Eu,c)){Eu=c;var p=$p(sg,"onSelect");if(p.length>0){var f=new eg("onSelect","select",null,n,a);e.push({event:f,listeners:p}),f.target=ml}}}}function uL(e,n,a,s,c,p,f){var y=a?bl(a):window;switch(n){case"focusin":(b0(y)||y.contentEditable==="true")&&(ml=y,sg=a,Eu=null);break;case"focusout":ml=null,sg=null,Eu=null;break;case"mousedown":lg=!0;break;case"contextmenu":case"mouseup":case"dragend":lg=!1,D0(e,s,c);break;case"selectionchange":if(oL)break;case"keydown":case"keyup":D0(e,s,c)}}function Up(e,n){var a={};return a[e.toLowerCase()]=n.toLowerCase(),a["Webkit"+e]="webkit"+n,a["Moz"+e]="moz"+n,a}var yl={animationend:Up("Animation","AnimationEnd"),animationiteration:Up("Animation","AnimationIteration"),animationstart:Up("Animation","AnimationStart"),transitionend:Up("Transition","TransitionEnd")},cg={},O0={};nn&&(O0=document.createElement("div").style,"AnimationEvent"in window||(delete yl.animationend.animation,delete yl.animationiteration.animation,delete yl.animationstart.animation),"TransitionEvent"in window||delete yl.transitionend.transition);function Fp(e){if(cg[e])return cg[e];if(!yl[e])return e;var n=yl[e];for(var a in n)if(n.hasOwnProperty(a)&&a in O0)return cg[e]=n[a];return e}var P0=Fp("animationend"),A0=Fp("animationiteration"),L0=Fp("animationstart"),M0=Fp("transitionend"),q0=new Map,I0=["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"];function io(e,n){q0.set(e,n),_t(n,[e])}function dL(){for(var e=0;e<I0.length;e++){var n=I0[e],a=n.toLowerCase(),s=n[0].toUpperCase()+n.slice(1);io(a,"on"+s)}io(P0,"onAnimationEnd"),io(A0,"onAnimationIteration"),io(L0,"onAnimationStart"),io("dblclick","onDoubleClick"),io("focusin","onFocus"),io("focusout","onBlur"),io(M0,"onTransitionEnd")}function pL(e,n,a,s,c,p,f){var y=q0.get(n);if(y!==void 0){var _=eg,S=n;switch(n){case"keypress":if(qp(s)===0)return;case"keydown":case"keyup":_=fA;break;case"focusin":S="focus",_=rg;break;case"focusout":S="blur",_=rg;break;case"beforeblur":case"afterblur":_=rg;break;case"click":if(s.button===2)return;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":_=c0;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":_=ZP;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":_=yA;break;case P0:case A0:case L0:_=nA;break;case M0:_=_A;break;case"scroll":_=QP;break;case"wheel":_=bA;break;case"copy":case"cut":case"paste":_=aA;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":_=d0;break}var x=(p&Xc)!==0;{var A=!x&&n==="scroll",P=yL(a,y,s.type,x,A);if(P.length>0){var B=new _(y,S,null,s,c);e.push({event:B,listeners:P})}}}}dL(),VA(),LA(),sL(),xA();function fL(e,n,a,s,c,p,f){pL(e,n,a,s,c,p);var y=(p&cO)===0;y&&(YA(e,n,a,s,c),WA(e,n,a,s,c),uL(e,n,a,s,c),OA(e,n,a,s,c))}var Cu=["abort","canplay","canplaythrough","durationchange","emptied","encrypted","ended","error","loadeddata","loadedmetadata","loadstart","pause","play","playing","progress","ratechange","resize","seeked","seeking","stalled","suspend","timeupdate","volumechange","waiting"],ug=new Set(["cancel","close","invali
89d","load","scroll","toggle"].concat(Cu));function N0(e,n,a){var s=e.type||"unknown-event";e.currentTarget=a,wO(s,n,void 0,e),e.currentTarget=null}function hL(e,n,a){var s;if(a)for(var c=n.length-1;c>=0;c--){var p=n[c],f=p.instance,y=p.currentTarget,_=p.listener;if(f!==s&&e.isPropagationStopped())return;N0(e,_,y),s=f}else for(var S=0;S<n.length;S++){var x=n[S],A=x.instance,P=x.currentTarget,B=x.listener;if(A!==s&&e.isPropagationStopped())return;N0(e,B,P),s=A}}function B0(e,n){for(var a=(n&Xc)!==0,s=0;s<e.length;s++){var c=e[s],p=c.event,f=c.listeners;hL(p,f,a)}SO()}function mL(e,n,a,s,c){var p=ay(a),f=[];fL(f,e,s,a,p,n),B0(f,n)}function Gt(e,n){ug.has(e)||d('Did not expect a listenToNonDelegatedEvent() call for "%s". This is a bug in React. Please file an issue.',e);var a=!1,s=GM(n),c=vL(e);s.has(c)||(U0(n,e,ry,a),s.add(c))}function dg(e,n,a){ug.has(e)&&!n&&d('Did not expect a listenToNativeEvent() call for "%s" in the bubble phase. This is a bug in React. Please file an issue.',e);var s=0;n&&(s|=Xc),U0(a,e,s,n)}var zp="_reactListening"+Math.random().toString(36).slice(2);function Ru(e){if(!e[zp]){e[zp]=!0,Ft.forEach(function(a){a!=="selectionchange"&&(ug.has(a)||dg(a,!1,e),dg(a,!0,e))});var n=e.nodeType===wi?e:e.ownerDocument;n!==null&&(n[zp]||(n[zp]=!0,dg("selectionchange",!1,n)))}}function U0(e,n,a,s,c){var p=UP(e,n,a),f=void 0;sy&&(n==="touchstart"||n==="touchmove"||n==="wheel")&&(f=!0),e=e,s?f!==void 0?WP(e,n,p,f):GP(e,n,p):f!==void 0?VP(e,n,p,f):HP(e,n,p)}function F0(e,n){return e===n||e.nodeType===bn&&e.parentNode===n}function pg(e,n,a,s,c){var p=s;if(!(n&mS)&&!(n&ry)){var f=c;if(s!==null){var y=s;e:for(;;){if(y===null)return;var _=y.tag;if(_===b||_===E){var S=y.stateNode.containerInfo;if(F0(S,f))break;if(_===E)for(var x=y.return;x!==null;){var A=x.tag;if(A===b||A===E){var P=x.stateNode.containerInfo;if(F0(P,f))return}x=x.return}for(;S!==null;){var B=cs(S);if(B===null)return;var F=B.tag;if(F===T||F===O){y=p=B;continue e}S=S.parentNode}}y=y.return}}}wS(function(){return mL(e,n,a,p)})}function Tu(e,n,a){return{instance:e,listener:n,currentTarget:a}}function yL(e,n,a,s,c,p){for(var f=n!==null?n+"Capture":null,y=s?f:n,_=[],S=e,x=null;S!==null;){var A=S,P=A.stateNode,B=A.tag;if(B===T&&P!==null&&(x=P,y!==null)){var F=Zc(S,y);F!=null&&_.push(Tu(S,F,x))}if(c)break;S=S.return}return _}function $p(e,n){for(var a=n+"Capture",s=[],c=e;c!==null;){var p=c,f=p.stateNode,y=p.tag;if(y===T&&f!==null){var _=f,S=Zc(c,a);S!=null&&s.unshift(Tu(c,S,_));var x=Zc(c,n);x!=null&&s.push(Tu(c,x,_))}c=c.return}return s}function gl(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==T);return e||null}function gL(e,n){for(var a=e,s=n,c=0,p=a;p;p=gl(p))c++;for(var f=0,y=s;y;y=gl(y))f++;for(;c-f>0;)a=gl(a),c--;for(;f-c>0;)s=gl(s),f--;for(var _=c;_--;){if(a===s||s!==null&&a===s.alternate)return a;a=gl(a),s=gl(s)}return null}function z0(e,n,a,s,c){for(var p=n._reactName,f=[],y=a;y!==null&&y!==s;){var _=y,S=_.alternate,x=_.stateNode,A=_.tag;if(S!==null&&S===s)break;if(A===T&&x!==null){var P=x;if(c){var B=Zc(y,p);B!=null&&f.unshift(Tu(y,B,P))}else if(!c){var F=Zc(y,p);F!=null&&f.push(Tu(y,F,P))}}y=y.return}f.length!==0&&e.push({event:n,listeners:f})}function _L(e,n,a,s,c){var p=s&&c?gL(s,c):null;s!==null&&z0(e,n,s,p,!1),c!==null&&a!==null&&z0(e,a,c,p,!0)}function vL(e,n){return e+"__bubble"}var kr=!1,ku="dangerouslySetInnerHTML",Hp="suppressContentEditableWarning",oo="suppressHydrationWarning",$0="autoFocus",ss="children",ls="style",Gp="__html",fg,Wp,ju,H0,Vp,G0,W0;fg={dialog:!0,webview:!0}
vendor: 29,864 bytes, lines 89-97
89,Wp=function(e,n){nO(e,n),rO(e,n),lO(e,n,{registrationNameDependencies:en,possibleRegistrationNames:pn})},G0=nn&&!document.documentMode,ju=function(e,n,a){if(!kr){var s=Yp(a),c=Yp(n);c!==s&&(kr=!0,d("Prop `%s` did not match. Server: %s Client: %s",e,JSON.stringify(c),JSON.stringify(s)))}},H0=function(e){if(!kr){kr=!0;var n=[];e.forEach(function(a){n.push(a)}),d("Extra attributes from the server: %s",n)}},Vp=function(e,n){n===!1?d("Expected `%s` listener to be a function, instead got `false`.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.",e,e,e):d("Expected `%s` listener to be a function, instead got a value of `%s` type.",e,typeof n)},W0=function(e,n){var a=e.namespaceURI===vi?e.ownerDocument.createElement(e.tagName):e.ownerDocument.createElementNS(e.namespaceURI,e.tagName);return a.innerHTML=n,a.innerHTML};var bL=/\r\n?/g,wL=/\u0000|\uFFFD/g;function Yp(e){Mn(e);var n=typeof e=="string"?e:""+e;return n.replace(bL,`
90`).replace(wL,"")}function Kp(e,n,a,s){var c=Yp(n),p=Yp(e);if(p!==c&&(s&&(kr||(kr=!0,d('Text content did not match. Server: "%s" Client: "%s"',p,c))),a&&oe))throw new Error("Text content does not match server-rendered HTML.")}function V0(e){return e.nodeType===wi?e:e.ownerDocument}function SL(){}function Qp(e){e.onclick=SL}function xL(e,n,a,s,c){for(var p in s)if(s.hasOwnProperty(p)){var f=s[p];if(p===ls)f&&Object.freeze(f),cS(n,f);else if(p===ku){var y=f?f[Gp]:void 0;y!=null&&aS(n,y)}else if(p===ss)if(typeof f=="string"){var _=e!=="textarea"||f!=="";_&&_p(n,f)}else typeof f=="number"&&_p(n,""+f);else p===Hp||p===oo||p===$0||(en.hasOwnProperty(p)?f!=null&&(typeof f!="function"&&Vp(p,f),p==="onScroll"&&Gt("scroll",n)):f!=null&&_a(n,p,f,c))}}function EL(e,n,a,s){for(var c=0;c<n.length;c+=2){var p=n[c],f=n[c+1];p===ls?cS(e,f):p===ku?aS(e,f):p===ss?_p(e,f):_a(e,p,f,s)}}function CL(e,n,a,s){var c,p=V0(a),f,y=s;if(y===vi&&(y=Xm(e)),y===vi){if(c=Yo(e,n),!c&&e!==e.toLowerCase()&&d("<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.",e),e==="script"){var _=p.createElement("div");_.innerHTML="<script><\/script>";var S=_.firstChild;f=_.removeChild(S)}else if(typeof n.is=="string")f=p.createElement(e,{is:n.is});else if(f=p.createElement(e),e==="select"){var x=f;n.multiple?x.multiple=!0:n.size&&(x.size=n.size)}}else f=p.createElementNS(y,e);return y===vi&&!c&&Object.prototype.toString.call(f)==="[object HTMLUnknownElement]"&&!Q.call(fg,e)&&(fg[e]=!0,d("The tag <%s> is unrecognized in this browser. If you meant to render a React component, start its name with an uppercase letter.",e)),f}function RL(e,n){return V0(n).createTextNode(e)}function TL(e,n,a,s){var c=Yo(n,a);Wp(n,a);var p;switch(n){case"dialog":Gt("cancel",e),Gt("close",e),p=a;break;case"iframe":case"object":case"embed":Gt("load",e),p=a;break;case"video":case"audio":for(var f=0;f<Cu.length;f++)Gt(Cu[f],e);p=a;break;case"source":Gt("error",e),p=a;break;case"img":case"image":case"link":Gt("error",e),Gt("load",e),p=a;break;case"details":Gt("toggle",e),p=a;break;case"input":mp(e,a),p=Wc(e,a),Gt("invalid",e);break;case"option":xt(e,a),p=a;break;case"select":Kc(e,a),p=Yc(e,a),Gt("invalid",e);break;case"textarea":tS(e,a),p=Km(e,a),Gt("invalid",e);break;default:p=a}switch(ny(n,p),xL(n,e,s,p,c),n){case"input":Wo(e),U(e,a,!1);break;case"textarea":Wo(e),rS(e);break;case"option":Nt(e,a);break;case"select":Vm(e,a);break;default:typeof p.onClick=="function"&&Qp(e);break}}function kL(e,n,a,s,c){Wp(n,s);var p=null,f,y;switch(n){case"input":f=Wc(e,a),y=Wc(e,s),p=[];break;case"select":f=Yc(e,a),y=Yc(e,s),p=[];break;case"textarea":f=Km(e,a),y=Km(e,s),p=[];break;default:f=a,y=s,typeof f.onClick!="function"&&typeof y.onClick=="function"&&Qp(e);break}ny(n,y);var _,S,x=null;for(_ in f)if(!(y.hasOwnProperty(_)||!f.hasOwnProperty(_)||f[_]==null))if(_===ls){var A=f[_];for(S in A)A.hasOwnProperty(S)&&(x||(x={}),x[S]="")}else _===ku||_===ss||_===Hp||_===oo||_===$0||(en.hasOwnProperty(_)?p||(p=[]):(p=p||[]).push(_,null));for(_ in y){var P=y[_],B=f!=null?f[_]:void 0;if(!(!y.hasOwnProperty(_)||P===B||P==null&&B==null))if(_===ls)if(P&&Object.freeze(P),B){for(S in B)B.hasOwnProperty(S)&&(!P||!P.hasOwnProperty(S))&&(x||(x={}),x[S]="");for(S in P)P.hasOwnProperty(S)&&B[S]!==P[S]&&(x||(x={}),x[S]=P[S])}else x||(p||(p=[]),p.push(_,x)),x=P;else if(_===ku){var F=P?P[Gp]:void 0,Y=B?B[Gp]:void 0;F!=null&&Y!==F&&(p=p||[]).push(_,F)}else _===ss?(typeof P=="string"||typeof P=="number")&&(p=p||[]).push(_,""+P):_===Hp||_===oo||(en.hasOwnProperty(_)?(P!=null&&(typeof P!="function"&&Vp(_,P),_==="onScroll"&&Gt("scroll",e)),!p&&B!==P&&(p=[])):(p=p||[]).push(_,P))}return x&&(YD(x,y[ls]),(p=p||[]).push(ls,x)),p}function jL(e,n,a,s,c){a==="input"&&c.type==="radio"&&c.name!=null&&v(e,c);var p=Yo(a,s),f=Yo(a,c);switch(EL(e,n,p,f),a){case"input":j(e,c);break;case"textarea":nS(e,c);break;case"select":yp(e,c);break}}function DL(e){{var n=e.toLowerCase();return vp.hasOwnProperty(n)&&vp[n]||null}}function OL(e,n,a,s,c,p,f){var y,_;switch(y=Yo(n,a),Wp(n,a),n){case"dialog":Gt("cancel",e),Gt("close",e);break;case"iframe":case"object":case"embed":Gt("load",e);break;case"video":case"audio":for(var S=0;S<Cu.length;S++)Gt(Cu[S],e);break;case"source":Gt("error",e);break;case"img":case"image":case"link":Gt("error",e),Gt("load",e);break;case"details":Gt("toggle",e);break;case"input":mp(e,a),Gt("invalid",e);break;case"option":xt(e,a);break;case"select":Kc(e,a),Gt("invalid",e);break;case"textarea":tS(e,a),Gt("invalid",e);break}ny(n,a);{_=new Set;for(var x=e.attributes,A=0;A<x.length;A++){var P=x[A].name.toLowerCase();switch(P){case"value":break;case"checked":break;case"selected":break;default:_.add(x[A].name)}}}var B=null;for(var F in a)if(a.hasOwnProperty(F)){var Y=a[F];if(F===ss)typeof Y=="string"?e.textContent!==Y&&(a[oo]!==!0&&Kp(e.textContent,Y,p,f),B=[ss,Y]):typeof Y=="number"&&e.textContent!==""+Y&&(a[oo]!==!0&&Kp(e.textContent,Y,p,f),B=[ss,""+Y]);else if(en.hasOwnProperty(F))Y!=null&&(typeof Y!="function"&&Vp(F,Y),F==="onScroll"&&Gt("scroll",e));else if(f&&typeof y=="boolean"){var pe=void 0,Pe=Vt(F);if(a[oo]!==!0){if(!(F===Hp||F===oo||F==="value"||F==="checked"||F==="selected")){if(F===ku){var Te=e.innerHTML,lt=Y?Y[Gp]:void 0;if(lt!=null){var nt=W0(e,lt);nt!==Te&&ju(F,Te,nt)}}else if(F===ls){if(_.delete(F),G0){var q=WD(Y);pe=e.getAttribute("style"),q!==pe&&ju(F,pe,q)}}else if(y)_.delete(F.toLowerCase()),pe=zs(e,F,Y),Y!==pe&&ju(F,pe,Y);else if(!rn(F,Pe,y)&&!er(F,Y,Pe,y)){var K=!1;if(Pe!==null)_.delete(Pe.attributeName),pe=Fs(e,F,Y,Pe);else{var I=s;if(I===vi&&(I=Xm(n)),I===vi)_.delete(F.toLowerCase());else{var se=DL(F);se!==null&&se!==F&&(K=!0,_.delete(se)),_.delete(F)}pe=zs(e,F,Y)}var ge=Ue;!ge&&Y!==pe&&!K&&ju(F,pe,Y)}}}}}switch(f&&_.size>0&&a[oo]!==!0&&H0(_),n){case"input":Wo(e),U(e,a,!0);break;case"textarea":Wo(e),rS(e);break;case"select":case"option":break;default:typeof a.onClick=="function"&&Qp(e);break}return B}function PL(e,n,a){var s=e.nodeValue!==n;return s}function hg(e,n){{if(kr)return;kr=!0,d("Did not expect server HTML to contain a <%s> in <%s>.",n.nodeName.toLowerCase(),e.nodeName.toLowerCase())}}function mg(e,n){{if(kr)return;kr=!0,d('Did not expect server HTML to contain the text node "%s" in <%s>.',n.nodeValue,e.nodeName.toLowerCase())}}function yg(e,n,a){{if(kr)return;kr=!0,d("Expected server HTML to contain a matching <%s> in <%s>.",n,e.nodeName.toLowerCase())}}function gg(e,n){{if(n===""||kr)return;kr=!0,d('Expected server HTML to contain a matching text node for "%s" in <%s>.',n,e.nodeName.toLowerCase())}}function AL(e,n,a){switch(n){case"input":V(e,a);return;case"textarea":TD(e,a);return;case"select":Ym(e,a);return}}var Du=function(){},Ou=function(){};{var LL=["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"],Y0=["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"],ML=Y0.concat(["button"]),qL=["dd","dt","li","option","optgroup","p","rp","rt"],K0={current:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null};Ou=function(e,n){var a=Qe({},e||K0),s={tag:n};return Y0.indexOf(n)!==-1&&(a.aTagInScope=null,a.buttonTagInScope=null,a.nobrTagInScope=null),ML.indexOf(n)!==-1&&(a.pTagInButtonScope=null),LL.indexOf(n)!==-1&&n!=="address"&&n!=="div"&&n!=="p"&&(a.listItemTagAutoclosing=null,a.dlItemTagAutoclosing=null),a.current=s,n==="form"&&(a.formTag=s),n==="a"&&(a.aTagInScope=s),n==="button"&&(a.buttonTagInScope=s),n==="nobr"&&(a.nobrTagInScope=s),n==="p"&&(a.pTagInButtonScope=s),n==="li"&&(a.listItemTagAutoclosing=s),(n==="dd"||n==="dt")&&(a.dlItemTagAutoclosing=s),a};var IL=function(e,n){switch(n){case"select":return e==="option"||e==="optgroup"||e==="#text";case"optgroup":return e==="option"||e==="#text";case"option":return e==="#text";case"tr":return e==="th"||e==="td"||e==="style"||e==="script"||e==="template";case"tbody":case"thead":case"tfoot":return e==="tr"||e==="style"||e==="script"||e==="template";case"colgroup":return e==="col"||e==="template";case"table":return e==="caption"||e==="colgroup"||e==="tbody"||e==="tfoot"||e==="thead"||e==="style"||e==="script"||e==="template";case"head":return e==="base"||e==="basefont"||e==="bgsound"||e==="link"||e==="meta"||e==="title"||e==="noscript"||e==="noframes"||e==="style"||e==="script"||e==="template";case"html":return e==="head"||e==="body"||e==="frameset";case"frameset":return e==="frame";case"#document":return e==="html"}switch(e){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return n!=="h1"&&n!=="h2"&&n!=="h3"&&n!=="h4"&&n!=="h5"&&n!=="h6";case"rp":case"rt":return qL.indexOf(n)===-1;case"body":case"caption":case"col":case"colgroup":case"frameset":case"frame":case"head":case"html":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return n==null}return!0},NL=function(e,n){switch(e){case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dialog":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"main":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":case"pre":case"listing":case"table":case"hr":case"xmp":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return n.pTagInButtonScope;case"form":return n.formTag||n.pTagInButtonScope;case"li":return n.listItemTagAutoclosing;case"dd":case"dt":return n.dlItemTagAutoclosing;case"button":return n.buttonTagInScope;case"a":return n.aTagInScope;case"nobr":return n.nobrTagInScope}return null},Q0={};Du=function(e,n,a){a=a||K0;var s=a.current,c=s&&s.tag;n!=null&&(e!=null&&d("validateDOMNesting: when childText is passed, childTag should be null"),e="#text");var p=IL(e,c)?null:s,f=p?null:NL(e,a),y=p||f;if(y){var _=y.tag,S=!!p+"|"+e+"|"+_;if(!Q0[S]){Q0[S]=!0;var x=e,A="";if(e==="#text"?/\S/.test(n)?x="Text nodes":(x="Whitespace text nodes",A=" Make sure you don't have any extra whitespace between tags on each line of your source code."):x="<"+e+">",p){var P="";_==="table"&&e==="tr"&&(P+=" Add a <tbody>, <thead> or <tfoot> to your code to match the DOM tree generated by the browser."),d("validateDOMNesting(...): %s cannot appear as a child of <%s>.%s%s",x,_,A,P)}else d("validateDOMNesting(...): %s cannot appear as a descendant of <%s>.",x,_)}}}}var Xp="suppressHydrationWarning",Jp="$",Zp="/$",Pu="$?",Au="$!",BL="style",_g=null,vg=null;function UL(e){var n,a,s=e.nodeType;switch(s){case wi:case Zm:{n=s===wi?"#document":"#fragment";var c=e.documentElement;a=c?c.namespaceURI:Jm(null,"");break}default:{var p=s===bn?e.parentNode:e,f=p.namespaceURI||null;n=p.tagName,a=Jm(f,n);break}}{var y=n.toLowerCase(),_=Ou(null,y);return{namespace:a,ancestorInfo:_}}}function FL(e,n,a){{var s=e,c=Jm(s.namespace,n),p=Ou(s.ancestorInfo,n);return{namespace:c,ancestorInfo:p}}}function XY(e){return e}function zL(e){_g=BP(),vg=nL();var n=null;return a0(!1),n}function $L(e){rL(vg),a0(_g),_g=null,vg=null}function HL(e,n,a,s,c){var p;{var f=s;if(Du(e,null,f.ancestorInfo),typeof n.children=="string"||typeof n.children=="number"){var y=""+n.children,_=Ou(f.ancestorInfo,e);Du(null,y,_)}p=f.namespace}var S=CL(e,n,a,p);return qu(c,S),Tg(S,n),S}function GL(e,n){e.appendChild(n)}function WL(e,n,a,s,c){switch(TL(e,n,a,s),n){case"button":case"input":case"select":case"textarea":return!!a.autoFocus;case"img":return!0;default:return!1}}function VL(e,n,a,s,c,p){{var f=p;if(typeof s.children!=typeof a.children&&(typeof s.children=="string"||typeof s.children=="number")){var y=""+s.children,_=Ou(f.ancestorInfo,n);Du(null,y,_)}}return kL(e,n,a,s)}function bg(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}function YL(e,n,a,s){{var c=a;Du(null,e,c.ancestorInfo)}var p=RL(e,n);return qu(s,p),p}function KL(){var e=window.event;return e===void 0?Ci:i0(e.type)}var wg=typeof setTimeout=="function"?setTimeout:void 0,QL=typeof clearTimeout=="function"?clearTimeout:void 0,Sg=-1,X0=typeof Promise=="function"?Promise:void 0,XL=typeof queueMicrotask=="function"?queueMicrotask:typeof X0<"u"?function(e){return X0.resolve(null).then(e).catch(JL)}:wg;function JL(e){setTimeout(function(){throw e})}function ZL(e,n,a,s){switch(n){case"button":case"input":case"select":case"textarea":a.autoFocus&&e.focus();return;case"img":{a.src&&(e.src=a.src);return}}}function eM(e,n,a,s,c,p){jL(e,n,a,s,c),Tg(e,c)}function J0(e){_p(e,"")}function tM(e,n,a){e.nodeValue=a}function nM(e,n){e.appendChild(n)}function rM(e,n){var a;e.nodeType===bn?(a=e.parentNode,a.insertBefore(n,e)):(a=e,a.appendChild(n));var s=e._reactRootContainer;s==null&&a.onclick===null&&Qp(a)}function aM(e,n,a){e.insertBefore(n,a)}function iM(e,n,a){e.nodeType===bn?e.parentNode.insertBefore(n,a):e.insertBefore(n,a)}function oM(e,n){e.removeChild(n)}function sM(e,n){e.nodeType===bn?e.parentNode.removeChild(n):e.removeChild(n)}function xg(e,n){var a=n,s=0;do{var c=a.nextSibling;if(e.removeChild(a),c&&c.nodeType===bn){var p=c.data;if(p===Zp)if(s===0){e.removeChild(c),mu(n);return}else s--;else(p===Jp||p===Pu||p===Au)&&s++}a=c}while(a);mu(n)}function lM(e,n){e.nodeType===bn?xg(e.parentNode,n):e.nodeType===Tr&&xg(e,n),mu(e)}function cM(e){e=e;var n=e.style;typeof n.setProperty=="function"?n.setProperty("display","none","important"):n.display="none"}function uM(e){e.nodeValue=""}function dM(e,n){e=e;var a=n[BL],s=a!=null&&a.hasOwnProperty("display")?a.display:null;e.style.display=ey("display",s)}function pM(e,n){e.nodeValue=n}function fM(e){e.nodeType===Tr?e.textContent="":e.nodeType===wi&&e.documentElement&&e.removeChild(e.documentElement)}function hM(e,n,a){return e.nodeType!==Tr||n.toLowerCase()!==e.nodeName.toLowerCase()?null:e}function mM(e,n){return n===""||e.nodeType!==bi?null:e}function yM(e){return e.nodeType!==bn?null:e}function Z0(e){return e.data===Pu}function Eg(e){return e.data===Au}function gM(e){var n=e.nextSibling&&e.nextSibling.dataset,a,s,c;return n&&(a=n.dgst,s=n.msg,c=n.stck),{message:s,digest:a,stack:c}}function _M(e,n){e._reactRetry=n}function ef(e){for(;e!=null;e=e.nextSibling){var n=e.nodeType;if(n===Tr||n===bi)break;if(n===bn){var a=e.data;if(a===Jp||a===Au||a===Pu)break;if(a===Zp)return null}}return e}function Lu(e){return ef(e.nextSibling)}function vM(e){return ef(e.firstChild)}function bM(e){return ef(e.firstChild)}function wM(e){return ef(e.nextSibling)}function SM(e,n,a,s,c,p,f){qu(p,e),Tg(e,a);var y;{var _=c;y=_.namespace}var S=(p.mode&ot)!==Ae;return OL(e,n,a,y,s,S,f)}function xM(e,n,a,s){return qu(a,e),a.mode&ot,PL(e,n)}function EM(e,n){qu(n,e)}function CM(e){for(var n=e.nextSibling,a=0;n;){if(n.nodeType===bn){var s=n.data;if(s===Zp){if(a===0)return Lu(n);a--}else(s===Jp||s===Au||s===Pu)&&a++}n=n.nextSibling}return null}function ex(e){for(var n=e.previousSibling,a=0;n;){if(n.nodeType===bn){var s=n.data;if(s===Jp||s===Au||s===Pu){if(a===0)return n;a--}else s===Zp&&a++}n=n.previousSibling}return null}function RM(e){mu(e)}function TM(e){mu(e)}function kM(e){return e!=="head"&&e!=="body"}function jM(e,n,a,s){var c=!0;Kp(n.nodeValue,a,s,c)}function DM(e,n,a,s,c,p){if(n[Xp]!==!0){var f=!0;Kp(s.nodeValue,c,p,f)}}function OM(e,n){n.nodeType===Tr?hg(e,n):n.nodeType===bn||mg(e,n)}function PM(e,n){{var a=e.parentNode;a!==null&&(n.nodeType===Tr?hg(a,n):n.nodeType===bn||mg(a,n))}}function AM(e,n,a,s,c){(c||n[Xp]!==!0)&&(s.nodeType===Tr?hg(a,s):s.nodeType===bn||mg(a,s))}function LM(e,n,a){yg(e,n)}function MM(e,n){gg(e,n)}function qM(e,n,a){{var s=e.parentNode;s!==null&&yg(s,n)}}function IM(e,n){{var a=e.parentNode;a!==null&&gg(a,n)}}function NM(e,n,a,s,c,p){(p||n[Xp]!==!0)&&yg(a,s)}function BM(e,n,a,s,c){(c||n[Xp]!==!0)&&gg(a,s)}function UM(e){d("An error occurred during hydration. The server HTML was replaced with client content in <%s>.",e.nodeName.toLowerCase())}function FM(e){Ru(e)}var _l=Math.random().toString(36).slice(2),vl="__reactFiber$"+_l,Cg="__reactProps$"+_l,Mu="__reactContainer$"+_l,Rg="__reactEvents$"+_l,zM="__reactListeners$"+_l,$M="__reactHandles$"+_l;function HM(e){delete e[vl],delete e[Cg],delete e[Rg],delete e[zM],delete e[$M]}function qu(e,n){n[vl]=e}function tf(e,n){n[Mu]=e}function tx(e){e[Mu]=null}function Iu(e){return!!e[Mu]}function cs(e){var n=e[vl];if(n)return n;for(var a=e.parentNode;a;){if(n=a[Mu]||a[vl],n){var s=n.alternate;if(n.child!==null||s!==null&&s.child!==null)for(var c=ex(e);c!==null;){var p=c[vl];if(p)return p;c=ex(c)}return n}e=a,a=e.parentNode}return null}function so(e){var n=e[vl]||e[Mu];return n&&(n.tag===T||n.tag===O||n.tag===W||n.tag===b)?n:null}function bl(e){if(e.tag===T||e.tag===O)return e.stateNode;throw new Error("getNodeFromInstance: Invalid argument.")}function nf(e){return e[Cg]||null}function Tg(e,n){e[Cg]=n}function GM(e){var n=e[Rg];return n===void 0&&(n=e[Rg]=new Set),n}var nx={},rx=i.ReactDebugCurrentFrame;function rf(e){if(e){var n=e._owner,a=Uc(e.type,e._source,n?n.type:null);rx.setExtraStackFrame(a)}else rx.setExtraStackFrame(null)}function Ca(e,n,a,s,c){{var p=Function.call.bind(Q);for(var f in e)if(p(e,f)){var y=void 0;try{if(typeof e[f]!="function"){var _=Error((s||"React class")+": "+a+" type `"+f+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[f]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw _.name="Invariant Violation",_}y=e[f](n,f,s,a,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(S){y=S}y&&!(y instanceof Error)&&(rf(c),d("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",s||"React class",a,f,typeof y),rf(null)),y instanceof Error&&!(y.message in nx)&&(nx[y.message]=!0,rf(c),d("Failed %s type: %s",a,y.message),rf(null))}}}var kg=[],af;af=[];var Ri=-1;function lo(e){return{current:e}}function rr(e,n){if(Ri<0){d("Unexpected pop.");return}n!==af[Ri]&&d("Unexpected Fiber popped."),e.current=kg[Ri],kg[Ri]=null,af[Ri]=null,Ri--}function ar(e,n,a){Ri++,kg[Ri]=e.current,af[Ri]=a,e.current=n}var jg;jg={};var zr={};Object.freeze(zr);var Ti=lo(zr),Xa=lo(!1),Dg=zr;function wl(e,n,a){return a&&Ja(n)?Dg:Ti.current}function ax(e,n,a){{var s=e.stateNode;s.__reactInternalMemoizedUnmaskedChildContext=n,s.__reactInternalMemoizedMaskedChildContext=a}}function Sl(e,n){{var a=e.type,s=a.contextTypes;if(!s)return zr;var c=e.stateNode;if(c&&c.__reactInternalMemoizedUnmaskedChildContext===n)return c.__reactInternalMemoizedMaskedChildContext;var p={};for(var f in s)p[f]=n[f];{var y=We(e)||"Unknown";Ca(s,p,"context",y)}return c&&ax(e,n,p),p}}function of(){return Xa.current}function Ja(e){{var n=e.childContextTypes;return n!=null}}function sf(e){rr(Xa,e),rr(Ti,e)}function Og(e){rr(Xa,e),rr(Ti,e)}function ix(e,n,a){{if(Ti.current!==zr)throw new Error("Unexpected context found on stack. This error is likely caused by a bug in React. Please file an issue.");ar(Ti,n,e),ar(Xa,a,e)}}function ox(e,n,a){{var s=e.stateNode,c=n.childContextTypes;if(typeof s.getChildContext!="function"){{var p=We(e)||"Unknown";jg[p]||(jg[p]=!0,d("%s.childContextTypes is specified but there is no getChildContext() method on the instance. You can either define getChildContext() on %s or remove childContextTypes from it.",p,p))}return a}var f=s.getChildContext();for(var y in f)if(!(y in c))throw new Error((We(e)||"Unknown")+'.getChildContext(): key "'+y+'" is not defined in childContextTypes.');{var _=We(e)||"Unknown";Ca(c,f,"child context",_)}return Qe({},a,f)}}function lf(e){{var n=e.stateNode,a=n&&n.__reactInternalMemoizedMergedChildContext||zr;return Dg=Ti.current,ar(Ti,a,e),ar(Xa,Xa.current,e),!0}}function sx(e,n,a){{var s=e.stateNode;if(!s)throw new Error("Expected to have an instance by this point. This error is likely caused by a bug in React. Please file an issue.");if(a){var c=ox(e,n,Dg);s.__reactInternalMemoizedMergedChildContext=c,rr(Xa,e),rr(Ti,e),ar(Ti,c,e),ar(Xa,a,e)}else rr(Xa,e),ar(Xa,a,e)}}function WM(e){{if(!kO(e)||e.tag!==g)throw new Error("Expected subtree parent to be a mounted class component. This error is likely caused by a bug in React. Please file an issue.");var n=e;do{switch(n.tag){case b:return n.stateNode.context;case g:{var a=n.type;if(Ja(a))return n.stateNode.__reactInternalMemoizedMergedChildContext;break}}n=n.return}while(n!==null);throw new Error("Found unexpected detached subtree parent. This error is likely caused by a bug in React. Please file an issue.")}}var co=0,cf=1,ki=null,Pg=!1,Ag=!1;function lx(e){ki===null?ki=[e]:ki.push(e)}function VM(e){Pg=!0,lx(e)}function cx(){Pg&&uo()}function uo(){if(!Ag&&ki!==null){Ag=!0;var e=0,n=Ea();try{var a=!0,s=ki;for(Fn(Br);e<s.length;e++){var c=s[e];do c=c(a);while(c!==null)}ki=null,Pg=!1}catch(p){throw ki!==null&&(ki=ki.slice(e+1)),AS(Ep,uo),p}finally{Fn(n),Ag=!1}}return null}var xl=[],El=0,uf=null,df=0,Jr=[],Zr=0,us=null,ji=1,Di="";function YM(e){return ps(),(e.flags&CS)!==qe}function KM(e){return ps(),df}function QM(){var e=Di,n=ji,a=n&~XM(n);return a.toString(32)+e}function ds(e,n){ps(),xl[El++]=df,xl[El++]=uf,uf=e,df=n}function ux(e,n,a){ps(),Jr[Zr++]=ji,Jr[Zr++]=Di,Jr[Zr++]=us,us=e;var s=ji,c=Di,p=pf(s)-1,f=s&~(1<<p),y=a+1,_=pf(n)+p;if(_>30){var S=p-p%5,x=(1<<S)-1,A=(f&x).toString(32),P=f>>S,B=p-S,F=pf(n)+B,Y=y<<B,pe=Y|P,Pe=A+c;ji=1<<F|pe,Di=Pe}else{var Te=y<<p,lt=Te|f,nt=c;ji=1<<_|lt,Di=nt}}function Lg(e){ps();var n=e.return;if(n!==null){var a=1,s=0;ds(e,a),ux(e,a,s)}}function pf(e){return 32-BS(e)}function XM(e){return 1<<pf(e)-1}function Mg(e){for(;e===uf;)uf=xl[--El],xl[El]=null,df=xl[--El],xl[El]=null;for(;e===us;)us=Jr[--Zr],Jr[Zr]=null,Di=Jr[--Zr],Jr[Zr]=null,ji=Jr[--Zr],Jr[Zr]=null}function JM(){return ps(),us!==null?{id:ji,overflow:Di}:null}function ZM(e,n){ps(),Jr[Zr++]=ji,Jr[Zr++]=Di,Jr[Zr++]=us,ji=n.id,Di=n.overflow,us=e}function ps(){Gn()||d("Expected to be hydrating. This is a bug in React. Please file an issue.")}var Hn=null,ea=null,Ra=!1,fs=!1,po=null;function eq(){Ra&&d("We should not be hydrating here. This is a bug in React. Please file a bug.")}function dx(){fs=!0}function tq(){return fs}function nq(e){var n=e.stateNode.containerInfo;return ea=bM(n),Hn=e,Ra=!0,po=null,fs=!1,!0}function rq(e,n,a){return ea=wM(n),Hn=e,Ra=!0,po=null,fs=!1,a!==null&&ZM(e,a),!0}function px(e,n){switch(e.tag){case b:{OM(e.stateNode.containerInfo,n);break}case T:{var a=(e.mode&ot)!==Ae;AM(e.type,e.memoizedProps,e.stateNode,n,a);break}case W:{var s=e.memoizedState;s.dehydrated!==null&&PM(s.dehydrated,n);break}}}function fx(e,n){px(e,n);var a=sB();a.stateNode=n,a.return=e;var s=e.deletions;s===null?(e.deletions=[a],e.flags|=Ko):s.push(a)}function qg(e,n){{if(fs)return;switch(e.tag){case b:{var a=e.stateNode.containerInfo;switch(n.tag){case T:var s=n.type;n.pendingProps,LM(a,s);break;case O:var c=n.pendingProps;MM(a,c);break}break}case T:{var p=e.type,f=e.memoizedProps,y=e.stateNode;switch(n.tag){case T:{var _=n.type,S=n.pendingProps,x=(e.mode&ot)!==Ae;NM(p,f,y,_,S,x);break}case O:{var A=n.pendingProps,P=(e.mode&ot)!==Ae;BM(p,f,y,A,P);break}}break}case W:{var B=e.memoizedState,F=B.dehydrated;if(F!==null)switch(n.tag){case T:var Y=n.type;n.pendingProps,qM(F,Y);break;case O:var pe=n.pendingProps;IM(F,pe);break}break}default:return}}}function hx(e,n){n.flags=n.flags&-4097|In,qg(e,n)}function mx(e,n){switch(e.tag){case T:{var a=e.type;e.pendingProps;var s=hM(n,a);return s!==null?(e.stateNode=s,Hn=e,ea=vM(s),!0):!1}case O:{var c=e.pendingProps,p=mM(n,c);return p!==null?(e.stateNode=p,Hn=e,ea=null,!0):!1}case W:{var f=yM(n);if(f!==null){var y={dehydrated:f,treeContext:JM(),retryLane:Xr};e.memoizedState=y;var _=lB(f);return _.return=e,e.child=_,Hn=e,ea=null,!0}return!1}default:return!1}}function Ig(e){return(e.mode&ot)!==Ae&&(e.flags&yt)===qe}function Ng(e){throw new Error("Hydration failed because the initial UI does not match what was rendered on the server.")}function Bg(e){if(Ra){var n=ea;if(!n){Ig(e)&&(qg(Hn,e),Ng()),hx(Hn,e),Ra=!1,Hn=e;return}var a=n;if(!mx(e,n)){Ig(e)&&(qg(Hn,e),Ng()),n=Lu(a);var s=Hn;if(!n||!mx(e,n)){hx(Hn,e),Ra=!1,Hn=e;return}fx(s,a)}}}function aq(e,n,a){var s=e.stateNode,c=!fs,p=SM(s,e.type,e.memoizedProps,n,a,e,c);return e.updateQueue=p,p!==null}function iq(e){var n=e.stateNode,a=e.memoizedProps,s=xM(n,a,e);if(s){var c=Hn;if(c!==null)switch(c.tag){case b:{var p=c.stateNode.containerInfo,f=(c.mode&ot)!==Ae;jM(p,n,a,f);break}case T:{var y=c.type,_=c.memoizedProps,S=c.stateNode,x=(c.mode&ot)!==Ae;DM(y,_,S,n,a,x);break}}}return s}function oq(e){var n=e.memoizedState,a=n!==null?n.dehydrated:null;if(!a)throw new Error("Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.");EM(a,e)}function sq(e){var n=e.memoizedState,a=n!==null?n.dehydrated:null;if(!a)throw new Error("Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.");return CM(a)}function yx(e){for(var n=e.return;n!==null&&n.tag!==T&&n.tag!==b&&n.tag!==W;)n=n.return;Hn=n}function ff(e){if(e!==Hn)return!1;if(!Ra)return yx(e),Ra=!0,!1;if(e.tag!==b&&(e.tag!==T||kM(e.type)&&!bg(e.type,e.memoizedProps))){var n=ea;if(n)if(Ig(e))gx(e),Ng();else for(;n;)fx(e,n),n=Lu(n)}return yx(e),e.tag===W?ea=sq(e):ea=Hn?Lu(e.stateNode):null,!0}function lq(){return Ra&&ea!==null}function gx(e){for(var n=ea;n;)px(e,n),n=Lu(n)}function Cl(){Hn=null,ea=null,Ra=!1,fs=!1}function _x(){po!==null&&(dC(po),po=null)}function Gn(){return Ra}function Ug(e){po===null?po=[e]:po.push(e)}var cq=i.ReactCurrentBatchConfig,uq=null;function dq(){return cq.transition}var Ta={recordUnsafeLifecycleWarnings:function(e,n){},flushPendingUnsafeLifecycleWarnings:function(){},recordLegacyContextWarning:function(e,n){},flushLegacyContextWarning:function(){},discardPendingWarnings:function(){}};{var pq=function(e){for(var n=null,a=e;a!==null;)a.mode&sn&&(n=a),a=a.return;return n},hs=function(e){var n=[];return e.forEach(function(a){n.push(a)}),n.sort().join(", ")},Nu=[],Bu=[],Uu=[],Fu=[],zu=[],$u=[],ms=new Set;Ta.recordUnsafeLifecycleWarnings=function(e,n){ms.has(e.type)||(typeof n.componentWillMount=="function"&&n.componentWillMount.__suppressDeprecationWarning!==!0&&Nu.push(e),e.mode&sn&&typeof n.UNSAFE_componentWillMount=="function"&&Bu.push(e),typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps.__suppressDeprecationWarning!==!0&&Uu.push(e),e.mode&sn&&typeof n.UNSAFE_componentWillReceiveProps=="function"&&Fu.push(e),typeof n.componentWillUpdate=="function"&&n.componentWillUpdate.__suppressDeprecationWarning!==!0&&zu.push(e),e.mode&sn&&typeof n.UNSAFE_componentWillUpdate=="function"&&$u.push(e))},Ta.flushPendingUnsafeLifecycleWarnings=function(){var e=new Set;Nu.length>0&&(Nu.forEach(function(P){e.add(We(P)||"Component"),ms.add(P.type)}),Nu=[]);var n=new Set;Bu.length>0&&(Bu.forEach(function(P){n.add(We(P)||"Component"),ms.add(P.type)}),Bu=[]);var a=new Set;Uu.length>0&&(Uu.forEach(function(P){a.add(We(P)||"Component"),ms.add(P.type)}),Uu=[]);var s=new Set;Fu.length>0&&(Fu.forEach(function(P){s.add(We(P)||"Component"),ms.add(P.type)}),Fu=[]);var c=new Set;zu.length>0&&(zu.forEach(function(P){c.add(We(P)||"Component"),ms.add(P.type)}),zu=[]);var p=new Set;if($u.length>0&&($u.forEach(function(P){p.add(We(P)||"Component"),ms.add(P.type)}),$u=[]),n.size>0){var f=hs(n);d(`Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. See https://reactjs.org/link/unsafe-component-lifecycles for details.
91
92* Move code with side effects to componentDidMount, and set initial state in the constructor.
93
94Please update the following components: %s`,f)}if(s.size>0){var y=hs(s);d(`Using UNSAFE_componentWillReceiveProps in strict mode is not recommended and may indicate bugs in your code. See https://reactjs.org/link/unsafe-component-lifecycles for details.
95
96* Move data fetching code or side effects to componentDidUpdate.
97* If you're updating state whenever props change, refactor your co
97de to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://reactjs.org/link/derived-state
98
99Please update the following components: %s`,y)}if(p.size>0){var _=hs(p);d(`Using UNSAFE_componentWillUpdate in strict mode is not recommended and may indicate bugs in your code. See https://reactjs.org/link/unsafe-component-lifecycles for details.
100
101* Move data fetching code or side effects to componentDidUpdate.
102
103Please update the following components: %s`,_)}if(e.size>0){var S=hs(e);u(`componentWillMount has been renamed, and is not recommended for use. See https://reactjs.org/link/unsafe-component-lifecycles for details.
104
105* Move code with side effects to componentDidMount, and set initial state in the constructor.
106* Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
107
108Please update the following components: %s`,S)}if(a.size>0){var x=hs(a);u(`componentWillReceiveProps has been renamed, and is not recommended for use. See https://reactjs.org/link/unsafe-component-lifecycles for details.
109
110* Move data fetching code or side effects to componentDidUpdate.
111* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://reactjs.org/link/derived-state
112* Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
113
114Please update the following components: %s`,x)}if(c.size>0){var A=hs(c);u(`componentWillUpdate has been renamed, and is not recommended for use. See https://reactjs.org/link/unsafe-component-lifecycles for details.
115
116* Move data fetching code or side effects to componentDidUpdate.
117* Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
118
119Please update the following components: %s`,A)}};var hf=new Map,vx=new Set;Ta.recordLegacyContextWarning=function(e,n){var a=pq(e);if(a===null){d("Expected to find a StrictMode component in a strict mode tree. This error is likely caused by a bug in React. Please file an issue.");return}if(!vx.has(e.type)){var s=hf.get(a);(e.type.contextTypes!=null||e.type.childContextTypes!=null||n!==null&&typeof n.getChildContext=="function")&&(s===void 0&&(s=[],hf.set(a,s)),s.push(e))}},Ta.flushLegacyContextWarning=function(){hf.forEach(function(e,n){if(e.length!==0){var a=e[0],s=new Set;e.forEach(function(p){s.add(We(p)||"Component"),vx.add(p.type)});var c=hs(s);try{Qt(a),d(`Legacy context API has been detected within a strict-mode tree.
120
121The old API will be supported in all 16.x releases, but applications using it should migrate to the new version.
122
123Please update the following components: %s
124
125Learn more about this warning here: https://reactjs.org/link/legacy-context`,c)}finally{qn()}}})},Ta.discardPendingWarnings=function(){Nu=[],Bu=[],Uu=[],Fu=[],zu=[],$u=[],hf=new Map}}var Fg,zg,$g,Hg,Gg,bx=function(e,n){};Fg=!1,zg=!1,$g={},Hg={},Gg={},bx=function(e,n){if(!(e===null||typeof e!="object")&&!(!e._store||e._store.validated||e.key!=null)){if(typeof e._store!="object")throw new Error("React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.");e._store.validated=!0;var a=We(n)||"Component";Hg[a]||(Hg[a]=!0,d('Each child in a list should have a unique "key" prop. See https://reactjs.org/link/warning-keys for more information.'))}};function fq(e){return e.prototype&&e.prototype.isReactComponent}function Hu(e,n,a){var s=a.ref;if(s!==null&&typeof s!="function"&&typeof s!="object"){if((e.mode&sn||Me)&&!(a._owner&&a._self&&a._owner.stateNode!==a._self)&&!(a._owner&&a._owner.tag!==g)&&!(typeof a.type=="function"&&!fq(a.type))&&a._owner){var c=We(e)||"Component";$g[c]||(d('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. We recommend using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',c,s),$g[c]=!0)}if(a._owner){var p=a._owner,f;if(p){var y=p;if(y.tag!==g)throw new Error("Function components cannot have string refs. We recommend using useRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref");f=y.stateNode}if(!f)throw new Error("Missing owner for string ref "+s+". This error is likely caused by a bug in React. Please file an issue.");var _=f;ma(s,"ref");var S=""+s;if(n!==null&&n.ref!==null&&typeof n.ref=="function"&&n.ref._stringRef===S)return n.ref;var x=function(A){var P=_.refs;A===null?delete P[S]:P[S]=A};return x._stringRef=S,x}
vendor: 4,447 bytes, lines 125-129
125else{if(typeof s!="string")throw new Error("Expected ref to be a function, a string, an object returned by React.createRef(), or null.");if(!a._owner)throw new Error("Element ref was specified as a string ("+s+`) but no owner was set. This could happen for one of the following reasons:
1261. You may be adding a ref to a function component
1272. You may be adding a ref to a component that was not created inside a component's render method
1283. You have multiple copies of React loaded
129See https://reactjs.org/link/refs-must-have-owner for more information.`)}}return s}function mf(e,n){var a=Object.prototype.toString.call(n);throw new Error("Objects are not valid as a React child (found: "+(a==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":a)+"). If you meant to render a collection of children, use an array instead.")}function yf(e){{var n=We(e)||"Component";if(Gg[n])return;Gg[n]=!0,d("Functions are not valid as a React child. This may happen if you return a Component instead of <Component /> from render. Or maybe you meant to call this function rather than return it.")}}function wx(e){var n=e._payload,a=e._init;return a(n)}function Sx(e){function n(q,K){if(e){var I=q.deletions;I===null?(q.deletions=[K],q.flags|=Ko):I.push(K)}}function a(q,K){if(!e)return null;for(var I=K;I!==null;)n(q,I),I=I.sibling;return null}function s(q,K){for(var I=new Map,se=K;se!==null;)se.key!==null?I.set(se.key,se):I.set(se.index,se),se=se.sibling;return I}function c(q,K){var I=Es(q,K);return I.index=0,I.sibling=null,I}function p(q,K,I){if(q.index=I,!e)return q.flags|=CS,K;var se=q.alternate;if(se!==null){var ge=se.index;return ge<K?(q.flags|=In,K):ge}else return q.flags|=In,K}function f(q){return e&&q.alternate===null&&(q.flags|=In),q}function y(q,K,I,se){if(K===null||K.tag!==O){var ge=Uv(I,q.mode,se);return ge.return=q,ge}else{var he=c(K,I);return he.return=q,he}}function _(q,K,I,se){var ge=I.type;if(ge===Wa)return x(q,K,I.props.children,se,I.key);if(K!==null&&(K.elementType===ge||TC(K,I)||typeof ge=="object"&&ge!==null&&ge.$$typeof===Ve&&wx(ge)===K.type)){var he=c(K,I.props);return he.ref=Hu(q,K,I),he.return=q,he._debugSource=I._source,he._debugOwner=I._owner,he}var Ie=Bv(I,q.mode,se);return Ie.ref=Hu(q,K,I),Ie.return=q,Ie}function S(q,K,I,se){if(K===null||K.tag!==E||K.stateNode.containerInfo!==I.containerInfo||K.stateNode.implementation!==I.implementation){var ge=Fv(I,q.mode,se);return ge.return=q,ge}else{var he=c(K,I.children||[]);return he.return=q,he}}function x(q,K,I,se,ge){if(K===null||K.tag!==R){var he=xo(I,q.mode,se,ge);return he.return=q,he}else{var Ie=c(K,I);return Ie.return=q,Ie}}function A(q,K,I){if(typeof K=="string"&&K!==""||typeof K=="number"){var se=Uv(""+K,q.mode,I);return se.return=q,se}if(typeof K=="object"&&K!==null){switch(K.$$typeof){case qr:{var ge=Bv(K,q.mode,I);return ge.ref=Hu(q,null,K),ge.return=q,ge}case Ir:{var he=Fv(K,q.mode,I);return he.return=q,he}case Ve:{var Ie=K._payload,Ge=K._init;return A(q,Ge(Ie),I)}}if(tt(K)||Kt(K)){var Rt=xo(K,q.mode,I,null);return Rt.return=q,Rt}mf(q,K)}return typeof K=="function"&&yf(q),null}function P(q,K,I,se){var ge=K!==null?K.key:null;if(typeof I=="string"&&I!==""||typeof I=="number")return ge!==null?null:y(q,K,""+I,se);if(typeof I=="object"&&I!==null){switch(I.$$typeof){case qr:return I.key===ge?_(q,K,I,se):null;case Ir:return I.key===ge?S(q,K,I,se):null;case Ve:{var he=I._payload,Ie=I._init;return P(q,K,Ie(he),se)}}if(tt(I)||Kt(I))return ge!==null?null:x(q,K,I,se,null);mf(q,I)}return typeof I=="function"&&yf(q),null}function B(q,K,I,se,ge){if(typeof se=="string"&&se!==""||typeof se=="number"){var he=q.get(I)||null;return y(K,he,""+se,ge)}if(typeof se=="object"&&se!==null){switch(se.$$typeof){case qr:{var Ie=q.get(se.key===null?I:se.key)||null;return _(K,Ie,se,ge)}case Ir:{var Ge=q.get(se.key===null?I:se.key)||null;return S(K,Ge,se,ge)}case Ve:var Rt=se._payload,ut=se._init;return B(q,K,I,ut(Rt),ge)}if(tt(se)||Kt(se)){var fn=q.get(I)||null;return x(K,fn,se,ge,null)}mf(K,se)}return typeof se=="function"&&yf(K),null}function F(q,K,I){{if(typeof q!="object"||q===null)return K;switch(q.$$typeof){case qr:case Ir:bx(q,I);var se=q.key;if(typeof se!="string")break;if(K===null){K=new Set,K.add(se);break}if(!K.has(se)){K.add(se);break}d("Encountered two children with the same key, `%s`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/
129or omitted — the behavior is unsupported and could change in a future version.",se);break;case Ve:var ge=q._payload,he=q._init;F(he(ge),K,I);break}}return K}function Y(q,K,I,se){for(var ge=null,he=0;he<I.length;he++){var Ie=I[he];ge=F(Ie,ge,q)}for(var Ge=null,Rt=null,ut=K,fn=0,dt=0,ln=null;ut!==null&&dt<I.length;dt++){ut.index>dt?(ln=ut,ut=null):ln=ut.sibling;var or=P(q,ut,I[dt],se);if(or===null){ut===null&&(ut=ln);break}e&&ut&&or.alternate===null&&n(q,ut),fn=p(or,fn,dt),Rt===null?Ge=or:Rt.sibling=or,Rt=or,ut=ln}if(dt===I.length){if(a(q,ut),Gn()){var Jn=dt;ds(q,Jn)}return Ge}if(ut===null){for(;dt<I.length;dt++){var Hr=A(q,I[dt],se);Hr!==null&&(fn=p(Hr,fn,dt),Rt===null?Ge=Hr:Rt.sibling=Hr,Rt=Hr)}if(Gn()){var vr=dt;ds(q,vr)}return Ge}for(var br=s(q,ut);dt<I.length;dt++){var sr=B(br,q,dt,I[dt],se);sr!==null&&(e&&sr.alternate!==null&&br.delete(sr.key===null?dt:sr.key),fn=p(sr,fn,dt),Rt===null?Ge=sr:Rt.sibling=sr,Rt=sr)}if(e&&br.forEach(function(Hl){return n(q,Hl)}),Gn()){var Ii=dt;ds(q,Ii)}return Ge}function pe(q,K,I,se){var ge=Kt(I);if(typeof ge!="function")throw new Error("An object is not an iterable. This error is likely caused by a bug in React. Please file an issue.");{typeof Symbol=="function"&&I[Symbol.toStringTag]==="Generator"&&(zg||d("Using Generators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. Keep in mind you might need to polyfill these features for older browsers."),zg=!0),I.entries===ge&&(Fg||d("Using Maps as children is not supported. Use an array of keyed ReactElements instead."),Fg=!0);var he=ge.call(I);if(he)for(var Ie=null,Ge=he.next();!Ge.done;Ge=he.next()){var Rt=Ge.value;Ie=F(Rt,Ie,q)}}var ut=ge.call(I);if(ut==null)throw new Error("An iterable object provided no iterator.");for(var fn=null,dt=null,ln=K,or=0,Jn=0,Hr=null,vr=ut.next();ln!==null&&!vr.done;Jn++,vr=ut.next()){ln.index>Jn?(Hr=ln,ln=null):Hr=ln.sibling;var br=P(q,ln,vr.value,se);if(br===null){ln===null&&(ln=Hr);break}e&&ln&&br.alternate===null&&n(q,ln),or=p(br,or,Jn),dt===null?fn=br:dt.sibling=br,dt=br,ln=Hr}if(vr.done){if(a(q,ln),Gn()){var sr=Jn;ds(q,sr)}return fn}if(ln===null){for(;!vr.done;Jn++,vr=ut.next()){var Ii=A(q,vr.value,se);Ii!==null&&(or=p(Ii,or,Jn),dt===null?fn=Ii:dt.sibling=Ii,dt=Ii)}if(Gn()){var Hl=Jn;ds(q,Hl)}return fn}for(var Sd=s(q,ln);!vr.done;Jn++,vr=ut.next()){var oi=B(Sd,q,Jn,vr.value,se);oi!==null&&(e&&oi.alternate!==null&&Sd.delete(oi.key===null?Jn:oi.key),or=p(oi,or,Jn),dt===null?fn=oi:dt.sibling=oi,dt=oi)}if(e&&Sd.forEach(function(BB){return n(q,BB)}
vendor: 9,153 bytes, line 129
129),Gn()){var NB=Jn;ds(q,NB)}return fn}function Pe(q,K,I,se){if(K!==null&&K.tag===O){a(q,K.sibling);var ge=c(K,I);return ge.return=q,ge}a(q,K);var he=Uv(I,q.mode,se);return he.return=q,he}function Te(q,K,I,se){for(var ge=I.key,he=K;he!==null;){if(he.key===ge){var Ie=I.type;if(Ie===Wa){if(he.tag===R){a(q,he.sibling);var Ge=c(he,I.props.children);return Ge.return=q,Ge._debugSource=I._source,Ge._debugOwner=I._owner,Ge}}else if(he.elementType===Ie||TC(he,I)||typeof Ie=="object"&&Ie!==null&&Ie.$$typeof===Ve&&wx(Ie)===he.type){a(q,he.sibling);var Rt=c(he,I.props);return Rt.ref=Hu(q,he,I),Rt.return=q,Rt._debugSource=I._source,Rt._debugOwner=I._owner,Rt}a(q,he);break}else n(q,he);he=he.sibling}if(I.type===Wa){var ut=xo(I.props.children,q.mode,se,I.key);return ut.return=q,ut}else{var fn=Bv(I,q.mode,se);return fn.ref=Hu(q,K,I),fn.return=q,fn}}function lt(q,K,I,se){for(var ge=I.key,he=K;he!==null;){if(he.key===ge)if(he.tag===E&&he.stateNode.containerInfo===I.containerInfo&&he.stateNode.implementation===I.implementation){a(q,he.sibling);var Ie=c(he,I.children||[]);return Ie.return=q,Ie}else{a(q,he);break}else n(q,he);he=he.sibling}var Ge=Fv(I,q.mode,se);return Ge.return=q,Ge}function nt(q,K,I,se){var ge=typeof I=="object"&&I!==null&&I.type===Wa&&I.key===null;if(ge&&(I=I.props.children),typeof I=="object"&&I!==null){switch(I.$$typeof){case qr:return f(Te(q,K,I,se));case Ir:return f(lt(q,K,I,se));case Ve:var he=I._payload,Ie=I._init;return nt(q,K,Ie(he),se)}if(tt(I))return Y(q,K,I,se);if(Kt(I))return pe(q,K,I,se);mf(q,I)}return typeof I=="string"&&I!==""||typeof I=="number"?f(Pe(q,K,""+I,se)):(typeof I=="function"&&yf(q),a(q,K))}return nt}var Rl=Sx(!0),xx=Sx(!1);function hq(e,n){if(e!==null&&n.child!==e.child)throw new Error("Resuming work not yet implemented.");if(n.child!==null){var a=n.child,s=Es(a,a.pendingProps);for(n.child=s,s.return=n;a.sibling!==null;)a=a.sibling,s=s.sibling=Es(a,a.pendingProps),s.return=n;s.sibling=null}}function mq(e,n){for(var a=e.child;a!==null;)nB(a,n),a=a.sibling}var Wg=lo(null),Vg;Vg={};var gf=null,Tl=null,Yg=null,_f=!1;function vf(){gf=null,Tl=null,Yg=null,_f=!1}function Ex(){_f=!0}function Cx(){_f=!1}function Rx(e,n,a){ar(Wg,n._currentValue,e),n._currentValue=a,n._currentRenderer!==void 0&&n._currentRenderer!==null&&n._currentRenderer!==Vg&&d("Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported."),n._currentRenderer=Vg}function Kg(e,n){var a=Wg.current;rr(Wg,n),e._currentValue=a}function Qg(e,n,a){for(var s=e;s!==null;){var c=s.alternate;if(dl(s.childLanes,n)?c!==null&&!dl(c.childLanes,n)&&(c.childLanes=Xe(c.childLanes,n)):(s.childLanes=Xe(s.childLanes,n),c!==null&&(c.childLanes=Xe(c.childLanes,n))),s===a)break;s=s.return}s!==a&&d("Expected to find the propagation root when scheduling context work. This error is likely caused by a bug in React. Please file an issue.")}function yq(e,n,a){gq(e,n,a)}function gq(e,n,a){var s=e.child;for(s!==null&&(s.return=e);s!==null;){var c=void 0,p=s.dependencies;if(p!==null){c=s.child;for(var f=p.firstContext;f!==null;){if(f.context===n){if(s.tag===g){var y=lu(a),_=Oi(Ut,y);_.tag=wf;var S=s.updateQueue;if(S!==null){var x=S.shared,A=x.pending;A===null?_.next=_:(_.next=A.next,A.next=_),x.pending=_}}s.lanes=Xe(s.lanes,a);var P=s.alternate;P!==null&&(P.lanes=Xe(P.lanes,a)),Qg(s.return,a,e),p.lanes=Xe(p.lanes,a);break}f=f.next}}else if(s.tag===G)c=s.type===e.type?null:s.child;else if(s.tag===je){var B=s.return;if(B===null)throw new Error("We just came from a parent so we must have had a parent. This is a bug in React.");B.lanes=Xe(B.lanes,a);var F=B.alternate;F!==null&&(F.lanes=Xe(F.lanes,a)),Qg(B,a,e),c=s.sibling}else c=s.child;if(c!==null)c.return=s;else for(c=s;c!==null;){if(c===e){c=null;break}var Y=c.sibling;if(Y!==null){Y.return=c.return,c=Y;break}c=c.return}s=c}}function kl(e,n){gf=e,Tl=null,Yg=null;var a=e.dependencies;if(a!==null){var s=a.firstContext;s!==null&&(Nr(a.lanes,n)&&id(),a.firstContext=null)}}function wn(e){_f&&d("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().");var n=e._currentValue;if(Yg!==e){var a={context:e,memoizedValue:n,next:null};if(Tl===null){if(gf===null)throw new Error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().");Tl=a,gf.dependencies={lanes:ie,firstContext:a}}else Tl=Tl.next=a}return n}var ys=null;function Xg(e){ys===null?ys=[e]:ys.push(e)}function _q(){if(ys!==null){for(var e=0;e<ys.length;e++){var n=ys[e],a=n.interleaved;if(a!==null){n.interleaved=null;var s=a.next,c=n.pending;if(c!==null){var p=c.next;c.next=s,a.next=p}n.pending=a}}ys=null}}function Tx(e,n,a,s){var c=n.interleaved;return c===null?(a.next=a,Xg(n)):(a.next=c.next,c.next=a),n.interleaved=a,bf(e,s)}function vq(e,n,a,s){var c=n.interleaved;c===null?(a.next=a,Xg(n)):(a.next=c.next,c.next=a),n.interleaved=a}function bq(e,n,a,s){var c=n.interleaved;return c===null?(a.next=a,Xg(n)):(a.next=c.next,c.next=a),n.interleaved=a,bf(e,s)}function jr(e,n){return bf(e,n)}var wq=bf;function bf(e,n){e.lanes=Xe(e.lanes,n);var a=e.alternate;a!==null&&(a.lanes=Xe(a.lanes,n)),a===null&&(e.flags&(In|Jo))!==qe&&xC(e);for(var s=e,c=e.return;c!==null;)c.childLanes=Xe(c.childLanes,n),a=c.alternate,a!==null?a.childLanes=Xe(a.childLanes,n):(c.flags&(In|Jo))!==qe&&xC(e),s=c,c=c.return;if(s.tag===b){var p=s.stateNode;return p}else return null}var kx=0,jx=1,wf=2,Jg=3,Sf=!1,Zg,xf;Zg=!1,xf=null;function e_(e){var n={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:ie},effects:null};e.updateQueue=n}function Dx(e,n){var a=n.updateQueue,s=e.updateQueue;if(a===s){var c={baseState:s.baseState,firstBaseUpdate:s.firstBaseUpdate,lastBaseUpdate:s.lastBaseUpdate,shared:s.shared,effects:s.effects};n.updateQueue=c}}function Oi(e,n){var a={eventTime:e,lane:n,tag:kx,payload:null,callback:null,next:null};return a}function fo(e,n,a){var s=e.updateQueue;if(s===null)return null;var c=s.shared;if(xf===c&&!Zg&&(d("An update (setState, replaceState, or forceUpdate) was scheduled from inside an update function. Update functions should be pure, with zero side-effects. Consider using componentDidUpdate or a callback."),Zg=!0),vN()){var p=c.pending;return p===null?n.next=n:(n.next=p.next,p.next=n),c.pending=n,wq(e,a)}else return bq(e,c,n,a)}function Ef(e,n,a){var s=n.updateQueue;if(s!==null){var c=s.shared;if($S(a)){var p=c.lanes;p=GS(p,e.pendingLanes);var f=Xe(p,a);c.lanes=f,Wy(e,f)}}}function t_(e,n){var a=e.updateQueue,s=e.alternate;if(s!==null){var c=s.updateQueue;if(a===c){var p=null,f=null,y=a.firstBaseUpdate;if(y!==null){var _=y;do{var S={eventTime:_.eventTime,lane:_.lane,tag:_.tag,payload:_.payload,callback:_.callback,next:null};f===null?p=f=S:(f.next=S,f=S),_=_.next}while(_!==null);f===null?p=f=n:(f.next=n,f=n)}else p=f=n;a={baseState:c.baseState,firstBaseUpdate:p,lastBaseUpdate:f,shared:c.shared,effects:c.effects},e.updateQueue=a;return}}var x=a.lastBaseUpdate;x===null?a.firstBaseUpdate=n:x.next=n,a.lastBaseUpdate=n}function Sq(e,n,a,s,c,p){switch(a.tag){case jx:{var f=a.payload;if(typeof f=="function"){Ex();var y=f.call(p,s,c);{if(e.mode&sn){Bn(!0);try{f.call(p,s,c)}finally{Bn(!1)}}Cx()}return y}return f}case Jg:e.flags=e.flags&-65537|yt;case kx:{var _=a.payload,S;if(typeof _=="function"){Ex(),S=_.call(p,s,c);{if(e.mode&sn){Bn(!0);try{_.call(p,s,c)}finally{Bn(!1)}}Cx()}}else S=_;return S==null?s:Qe({},s,S)}case wf:return Sf=!0,s}return s}function Cf(e,n,a,s){var c=e.updateQueue;Sf=!1,xf=c.shared;var p=c.firstBaseUpdate,f=c.lastBaseUpdate,y=c.shared.pending;if(y!==null){c.shared.pending=null;var _=y,S=_.next;_.next=null,f===null?p=S:f.next=S,f=_;var x=e.alternate;if(x!==null){var A=x.updateQueue,P=A.lastBaseUpdate;P!==f&&(P===null?A.firstBaseUpdate=S:P.next=S,A.lastBaseUpdate=_)}}if(p!==null){var B=c.baseState,F=ie,Y=null,pe=null,Pe=null,Te=p;do{var lt=Te.lane,nt=Te.eventTime;if(dl(s,lt)){if(Pe!==null){var K={eventTime:nt,lane:Un,tag:Te.tag,payload:Te.payload,callback:Te.callback,next:null};Pe=Pe.next=K}B=Sq(e,c,Te,B,n,a);var I=Te.callback;if(I!==null&&Te.lane!==Un){e.flags|=ES;var se=c.effects;se===null?c.effects=[Te]:se.push(Te)}}else{var q={eventTime:nt,lane:lt,tag:Te.tag,payload:Te.payload,callback:Te.callback,next:null};Pe===null?(pe=Pe=q,Y=B):Pe=Pe.next=q,F=Xe(F,lt)}if(Te=Te.next,Te===null){if(y=c.shared.pending,y===null)break;var ge=y,he=ge.next;ge.next=null,Te=he,c.lastBaseUpdate=ge,c.shared.pending=null}}while(!0);Pe===null&&(Y=B),c.baseState=Y,c.firstBaseUpdate=pe,c.lastBaseUpdate=Pe;var Ie=c.shared.interleaved;if(Ie!==null){var Ge=Ie;do F=Xe(F,Ge.lane),Ge=Ge.next;while(Ge!==Ie)}else p===null&&(c.shared.lanes=ie);gd(F),e.lanes=F,e.memoizedState=B}xf=null}function xq(e,n){if(typeof e!="function")throw new Error("Invalid argument passed as callback. E
129xpected a function. Instead "+("received: "+e));e.call(n)}function Ox(){Sf=!1}function Rf(){return Sf}function Px(e,n,a){var s=n.effects;if(n.effects=null,s!==null)for(var c=0;c<s.length;c++){var p=s[c],f=p.callback;f!==null&&(p.callback=null,xq(f,a))}}var Gu={},ho=lo(Gu),Wu=lo(Gu),Tf=lo(Gu);function kf(e){if(e===Gu)throw new Error("Expected host context to exist. This error is likely caused by a bug in React. Please file an issue.");return e}function Ax(){var e=kf(Tf.current);return e}function n_(e,n){ar(Tf,n,e),ar(Wu,e,e),ar(ho,Gu,e);var a=UL(n);rr(ho,e),ar(ho,a,e)}function jl(e){rr(ho,e),rr(Wu,e),rr(Tf,e)}function r_(){var e=kf(ho.current);return e}function Lx(e){kf(Tf.current);var n=kf(ho.current),a=FL(n,e.type);n!==a&&(ar(Wu,e,e),ar(ho,a,e))}function a_(e){Wu.current===e&&(rr(ho,e),rr(Wu,e))}var Eq=0,Mx=1,qx=1,Vu=2,ka=lo(Eq);function i_(e,n){return(e&n)!==0}function Dl(e){return e&Mx}function o_(e,n){return e&Mx|n}function Cq(e,n){return e|n}function mo(e,n){ar(ka,n,e)}function Ol(e){rr(ka,e)}function Rq(e,n){var a=e.memoizedState;return a!==null?a.dehydrated!==null:(e.memoizedProps,!0)}function jf(e){for(var n=e;n!==null;){if(n.tag===W){var a=n.memoizedState;if(a!==null){var s=a.dehydrated;if(s===null||Z0(s)||Eg(s))return n}}else if(n.tag===ke&&n.memoizedProps.revealOrder!==void 0){var c=(n.flags&yt)!==qe;if(c)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)return null;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 Dr=0,Rn=1,Za=2,Tn=4,Wn=8,s_=[];function l_(){for(var e=0;e<s_.length;e++){var n=s_[e];n._workInProgressVersionPrimary=null}s_.length=0}function Tq(e,n){var a=n._getVersion,s=a(n._source);e.mutableSourceEagerHydrationData==null?e.mutableSourceEagerHydrationData=[n,s]:e.mutableSourceEagerHydrationData.push(n,s)}var ye=i.ReactCurrentDispatcher,Yu=i.ReactCurrentBatchConfig,c_,Pl;c_=new Set;var gs=ie,Ct=null,kn=null,jn=null,Df=!1,Ku=!1,Qu=0,kq=0,jq=25,J=null,ta=null,yo=-1,u_=!1;function gt(){{var e=J;ta===null?ta=[e]:ta.push(e)}}function de(){{var e=J;ta!==null&&(yo++,ta[yo]!==e&&Dq(e))}}function Al(e){e!=null&&!tt(e)&&d("%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.",J,typeof e)}function Dq(e){{var n=We(Ct);if(!c_.has(n)&&(c_.add(n),ta!==null)){for(var a="",s=30,c=0;c<=yo;c++){for(var p=ta[c],f=c===yo?e:p,y=c+1+". "+p;y.length<s;)y+=" ";y+=f+`
130`,a+=y}d(`React has detected a change in the order of Hooks called by %s. This will lead to bugs and errors if not fixed. For more information, read the Rules of Hooks: https://reactjs.org/link/rules-of-hooks
131
132   Previous render            Next render
133   ------------------------------------------------------
134%s   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
135`,n,a)}}}function ir(){throw new Error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1361. You might have mismatching versions of React and the renderer (such as React DOM)
1372. You might be breaking the Rules of Hooks
1383. You might have more than one copy of React in the same app
139See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.`)}function d_(e,n){if(u_)return!1;if(n===null)return d("%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.",J),!1;e.length!==n.length&&d(`The final argument passed to %s changed size between renders. The order and size of this array must remain constant.
140
141Previous: %s
142Incoming: %s`,J,"["+n.join(", ")+"]","["+e.join(", ")+"]");for(var a=0;a<n.length&&a<e.length;a++)if(!Fr(e[a],n[a]))return!1;return!0}function Ll(e,n,a,s,c,p){gs=p,Ct=n,ta=e!==null?e._debugHookTypes:null,yo=-1,u_=e!==null&&e.type!==n.type,n.memoizedState=null,n.updateQueue=null,n.lanes=ie,e!==null&&e.memoizedState!==null?ye.current=aE:ta!==null?ye.current=rE:ye.current=nE;var f=a(s,c);if(Ku){var y=0;do{if(Ku=!1,Qu=0,y>=jq)throw new Error("Too many re-renders. React limits the number of renders to prevent an infinite loop.");y+=1,u_=!1,kn=null,jn=null,n.updateQueue=null,yo=-1,ye.current=iE,f=a(s,c)}while(Ku)}ye.current=$f,n._debugHookTypes=ta;var _=kn!==null&&kn.next!==null;if(gs=ie,Ct=null,kn=null,jn=null,J=null,ta=null,yo=-1,e!==null&&(e.flags&Si)!==(n.flags&Si)&&(e.mode&ot)!==Ae&&d("Internal React error: Expected static flag was missing. Please notify the React team."),Df=!1,_)throw new Error("Rendered fewer hooks than expected. This may be caused by an accidental early return statement.");return f}function Ml(){var e=Qu!==0;return Qu=0,e}
vendor: 26,817 bytes, lines 142-146
142function Ix(e,n,a){n.updateQueue=e.updateQueue,(n.mode&Ka)!==Ae?n.flags&=-50333701:n.flags&=-2053,e.lanes=Dp(e.lanes,a)}function Nx(){if(ye.current=$f,Df){for(var e=Ct.memoizedState;e!==null;){var n=e.queue;n!==null&&(n.pending=null),e=e.next}Df=!1}gs=ie,Ct=null,kn=null,jn=null,ta=null,yo=-1,J=null,Xx=!1,Ku=!1,Qu=0}function ei(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return jn===null?Ct.memoizedState=jn=e:jn=jn.next=e,jn}function na(){var e;if(kn===null){var n=Ct.alternate;n!==null?e=n.memoizedState:e=null}else e=kn.next;var a;if(jn===null?a=Ct.memoizedState:a=jn.next,a!==null)jn=a,a=jn.next,kn=e;else{if(e===null)throw new Error("Rendered more hooks than during the previous render.");kn=e;var s={memoizedState:kn.memoizedState,baseState:kn.baseState,baseQueue:kn.baseQueue,queue:kn.queue,next:null};jn===null?Ct.memoizedState=jn=s:jn=jn.next=s}return jn}function Bx(){return{lastEffect:null,stores:null}}function p_(e,n){return typeof n=="function"?n(e):n}function f_(e,n,a){var s=ei(),c;a!==void 0?c=a(n):c=n,s.memoizedState=s.baseState=c;var p={pending:null,interleaved:null,lanes:ie,dispatch:null,lastRenderedReducer:e,lastRenderedState:c};s.queue=p;var f=p.dispatch=Lq.bind(null,Ct,p);return[s.memoizedState,f]}function h_(e,n,a){var s=na(),c=s.queue;if(c===null)throw new Error("Should have a queue. This is likely a bug in React. Please file an issue.");c.lastRenderedReducer=e;var p=kn,f=p.baseQueue,y=c.pending;if(y!==null){if(f!==null){var _=f.next,S=y.next;f.next=S,y.next=_}p.baseQueue!==f&&d("Internal error: Expected work-in-progress queue to be a clone. This is a bug in React."),p.baseQueue=f=y,c.pending=null}if(f!==null){var x=f.next,A=p.baseState,P=null,B=null,F=null,Y=x;do{var pe=Y.lane;if(dl(gs,pe)){if(F!==null){var Te={lane:Un,action:Y.action,hasEagerState:Y.hasEagerState,eagerState:Y.eagerState,next:null};F=F.next=Te}if(Y.hasEagerState)A=Y.eagerState;else{var lt=Y.action;A=e(A,lt)}}else{var Pe={lane:pe,action:Y.action,hasEagerState:Y.hasEagerState,eagerState:Y.eagerState,next:null};F===null?(B=F=Pe,P=A):F=F.next=Pe,Ct.lanes=Xe(Ct.lanes,pe),gd(pe)}Y=Y.next}while(Y!==null&&Y!==x);F===null?P=A:F.next=B,Fr(A,s.memoizedState)||id(),s.memoizedState=A,s.baseState=P,s.baseQueue=F,c.lastRenderedState=A}var nt=c.interleaved;if(nt!==null){var q=nt;do{var K=q.lane;Ct.lanes=Xe(Ct.lanes,K),gd(K),q=q.next}while(q!==nt)}else f===null&&(c.lanes=ie);var I=c.dispatch;return[s.memoizedState,I]}function m_(e,n,a){var s=na(),c=s.queue;if(c===null)throw new Error("Should have a queue. This is likely a bug in React. Please file an issue.");c.lastRenderedReducer=e;var p=c.dispatch,f=c.pending,y=s.memoizedState;if(f!==null){c.pending=null;var _=f.next,S=_;do{var x=S.action;y=e(y,x),S=S.next}while(S!==_);Fr(y,s.memoizedState)||id(),s.memoizedState=y,s.baseQueue===null&&(s.baseState=y),c.lastRenderedState=y}return[y,p]}function JY(e,n,a){}function ZY(e,n,a){}function y_(e,n,a){var s=Ct,c=ei(),p,f=Gn();if(f){if(a===void 0)throw new Error("Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.");p=a(),Pl||p!==a()&&(d("The result of getServerSnapshot should be cached to avoid an infinite loop"),Pl=!0)}else{if(p=n(),!Pl){var y=n();Fr(p,y)||(d("The result of getSnapshot should be cached to avoid an infinite loop"),Pl=!0)}var _=lh();if(_===null)throw new Error("Expected a work-in-progress root. This is a bug in React. Please file an issue.");jp(_,gs)||Ux(s,n,p)}c.memoizedState=p;var S={value:p,getSnapshot:n};return c.queue=S,Mf(zx.bind(null,s,S,e),[e]),s.flags|=Zi,Xu(Rn|Wn,Fx.bind(null,s,S,p,n),void 0,null),p}function Of(e,n,a){var s=Ct,c=na(),p=n();if(!Pl){var f=n();Fr(p,f)||(d("The result of getSnapshot should be cached to avoid an infinite loop"),Pl=!0)}var y=c.memoizedState,_=!Fr(y,p);_&&(c.memoizedState=p,id());var S=c.queue;if(Zu(zx.bind(null,s,S,e),[e]),S.getSnapshot!==n||_||jn!==null&&jn.memoizedState.tag&Rn){s.flags|=Zi,Xu(Rn|Wn,Fx.bind(null,s,S,p,n),void 0,null);var x=lh();if(x===null)throw new Error("Expected a work-in-progress root. This is a bug in React. Please file an issue.");jp(x,gs)||Ux(s,n,p)}return p}function Ux(e,n,a){e.flags|=py;var s={getSnapshot:n,value:a},c=Ct.updateQueue;if(c===null)c=Bx(),Ct.updateQueue=c,c.stores=[s];else{var p=c.stores;p===null?c.stores=[s]:p.push(s)}}function Fx(e,n,a,s){n.value=a,n.getSnapshot=s,$x(n)&&Hx(e)}function zx(e,n,a){var s=function(){$x(n)&&Hx(e)};return a(s)}function $x(e){var n=e.getSnapshot,a=e.value;try{var s=n();return!Fr(a,s)}catch{return!0}}function Hx(e){var n=jr(e,ze);n!==null&&An(n,e,ze,Ut)}function Pf(e){var n=ei();typeof e=="function"&&(e=e()),n.memoizedState=n.baseState=e;var a={pending:null,interleaved:null,lanes:ie,dispatch:null,lastRenderedReducer:p_,lastRenderedState:e};n.queue=a;var s=a.dispatch=Mq.bind(null,Ct,a);return[n.memoizedState,s]}function g_(e){return h_(p_)}function __(e){return m_(p_)}function Xu(e,n,a,s){var c={tag:e,create:n,destroy:a,deps:s,next:null},p=Ct.updateQueue;if(p===null)p=Bx(),Ct.updateQueue=p,p.lastEffect=c.next=c;else{var f=p.lastEffect;if(f===null)p.lastEffect=c.next=c;else{var y=f.next;f.next=c,c.next=y,p.lastEffect=c}}return c}function v_(e){var n=ei();{var a={current:e};return n.memoizedState=a,a}}function Af(e){var n=na();return n.memoizedState}function Ju(e,n,a,s){var c=ei(),p=s===void 0?null:s;Ct.flags|=e,c.memoizedState=Xu(Rn|n,a,void 0,p)}function Lf(e,n,a,s){var c=na(),p=s===void 0?null:s,f=void 0;if(kn!==null){var y=kn.memoizedState;if(f=y.destroy,p!==null){var _=y.deps;if(d_(p,_)){c.memoizedState=Xu(n,a,f,p);return}}}Ct.flags|=e,c.memoizedState=Xu(Rn|n,a,f,p)}function Mf(e,n){return(Ct.mode&Ka)!==Ae?Ju(yy|Zi|my,Wn,e,n):Ju(Zi|my,Wn,e,n)}function Zu(e,n){return Lf(Zi,Wn,e,n)}function b_(e,n){return Ju(ht,Za,e,n)}function qf(e,n){return Lf(ht,Za,e,n)}function w_(e,n){var a=ht;return a|=es,(Ct.mode&Ka)!==Ae&&(a|=eo),Ju(a,Tn,e,n)}function If(e,n){return Lf(ht,Tn,e,n)}function Gx(e,n){if(typeof n=="function"){var a=n,s=e();return a(s),function(){a(null)}}else if(n!=null){var c=n;c.hasOwnProperty("current")||d("Expected useImperativeHandle() first argument to either be a ref callback or React.createRef() object. Instead received: %s.","an object with keys {"+Object.keys(c).join(", ")+"}");var p=e();return c.current=p,function(){c.current=null}}}function S_(e,n,a){typeof n!="function"&&d("Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.",n!==null?typeof n:"null");var s=a!=null?a.concat([e]):null,c=ht;return c|=es,(Ct.mode&Ka)!==Ae&&(c|=eo),Ju(c,Tn,Gx.bind(null,n,e),s)}function Nf(e,n,a){typeof n!="function"&&d("Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.",n!==null?typeof n:"null");var s=a!=null?a.concat([e]):null;return Lf(ht,Tn,Gx.bind(null,n,e),s)}function Oq(e,n){}var Bf=Oq;function x_(e,n){var a=ei(),s=n===void 0?null:n;return a.memoizedState=[e,s],e}function Uf(e,n){var a=na(),s=n===void 0?null:n,c=a.memoizedState;if(c!==null&&s!==null){var p=c[1];if(d_(s,p))return c[0]}return a.memoizedState=[e,s],e}function E_(e,n){var a=ei(),s=n===void 0?null:n,c=e();return a.memoizedState=[c,s],c}function Ff(e,n){var a=na(),s=n===void 0?null:n,c=a.memoizedState;if(c!==null&&s!==null){var p=c[1];if(d_(s,p))return c[0]}var f=e();return a.memoizedState=[f,s],f}function C_(e){var n=ei();return n.memoizedState=e,e}function Wx(e){var n=na(),a=kn,s=a.memoizedState;return Yx(n,s,e)}function Vx(e){var n=na();if(kn===null)return n.memoizedState=e,e;var a=kn.memoizedState;return Yx(n,a,e)}function Yx(e,n,a){var s=!yP(gs);if(s){if(!Fr(a,n)){var c=HS();Ct.lanes=Xe(Ct.lanes,c),gd(c),e.baseState=!0}return n}else return e.baseState&&(e.baseState=!1,id()),e.memoizedState=a,a}function Pq(e,n,a){var s=Ea();Fn(CP(s,Ei)),e(!0);var c=Yu.transition;Yu.transition={};var p=Yu.transition;Yu.transition._updatedFibers=new Set;try{e(!1),n()}finally{if(Fn(s),Yu.transition=c,c===null&&p._updatedFibers){var f=p._updatedFibers.size;f>10&&u("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."),p._updatedFibers.clear()}}}function R_(){var e=Pf(!1),n=e[0],a=e[1],s=Pq.bind(null,a),c=ei();return c.memoizedState=s,[n,s]}function Kx(){var e=g_(),n=e[0],a=na(),s=a.memoizedState;return[n,s]}function Qx(){var e=__(),n=e[0],a=na(),s=a.memoizedState;return[n,s]}var Xx=!1;function Aq(){return Xx}function T_(){var e=ei(),n=lh(),a=n.identifierPrefix,s;if(Gn()){var c=QM();s=":"+a+"R"+c;var p=Qu++;p>0&&(s+="H"+p.toString(32)),s+=":"}else{var f=kq++;s=":"+a+"r"+f.toString(32)+":"}return e.memoizedState=s,s}function zf(){var e=na(),n=e.memoizedState;return n}function Lq(e,n,a){typeof arguments[3]=="function"&&d("State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().");var s=wo(e),c={lane:s,action:a,hasEagerState:!1,eagerState:null,next:null};if(Jx(e))Zx(n,c);else{var p=Tx(e,n,c,s);if(p!==null){var f=_r();An(p,e,s,f),eE(p,n,s)}}tE(e,s)}function Mq(e,n,a){typeof arguments[3]=="function"&&d("State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().");var s=wo(e),c={lane:s,action:a,hasEagerState:!1,eagerState:null,next:null};if(Jx(e))Zx(n,c);else{var p=e.alternate;if(e.lanes===ie&&(p===null||p.lanes===ie)){var f=n.lastRenderedReducer;if(f!==null){var y;y=ye.current,ye.current=ja;try{var _=n.lastRenderedState,S=f(_,a);if(c.hasEagerState=!0,c.eagerState=S,Fr(S,_)){vq(e,n,c,s);return}}catch{}finally{ye.current=y}}}var x=Tx(e,n,c,s);if(x!==null){var A=_r();An(x,e,s,A),eE(x,n,s)}}tE(e,s)}function Jx(e){var n=e.alternate;return e===Ct||n!==null&&n===Ct}function Zx(e,n){Ku=Df=!0;var a=e.pending;a===null?n.next=n:(n.next=a.next,a.next=n),e.pending=n}function eE(e,n,a){if($S(a)){var s=n.lanes;s=GS(s,e.pendingLanes);var c=Xe(s,a);n.lanes=c,Wy(e,c)}}function tE(e,n,a){wy(e,n)}var $f={readContext:wn,useCallback:ir,useContext:ir,useEffect:ir,useImperativeHandle:ir,useInsertionEffect:ir,useLayoutEffect:ir,useMemo:ir,useReducer:ir,useRef:ir,useState:ir,useDebugValue:ir,useDeferredValue:ir,useTransition:ir,useMutableSource:ir,useSyncExternalStore:ir,useId:ir,unstable_isNewReconciler:_e},nE=null,rE=null,aE=null,iE=null,ti=null,ja=null,Hf=null;{var k_=function(){d("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().")},$e=function(){d("Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://reactjs.org/link/rules-of-hooks")};nE={readContext:function(e){return wn(e)},useCallback:function(e,n){return J="useCallback",gt(),Al(n),x_(e,n)},useContext:function(e){return J="useContext",gt(),wn(e)},useEffect:function(e,n){return J="useEffect",gt(),Al(n),Mf(e,n)},useImperativeHandle:function(e,n,a){return J="useImperativeHandle",gt(),Al(a),S_(e,n,a)},useInsertionEffect:function(e,n){return J="useInsertionEffect",gt(),Al(n),b_(e,n)},useLayoutEffect:function(e,n){return J="useLayoutEffect",gt(),Al(n),w_(e,n)},useMemo:function(e,n){J="useMemo",gt(),Al(n);var a=ye.current;ye.current=ti;try{return E_(e,n)}finally{ye.current=a}},useReducer:function(e,n,a){J="useReducer",gt();var s=ye.current;ye.current=ti;try{return f_(e,n,a)}finally{ye.current=s}},useRef:function(e){return J="useRef",gt(),v_(e)},useState:function(e){J="useState",gt();var n=ye.current;ye.current=ti;try{return Pf(e)}finally{ye.current=n}},useDebugValue:function(e,n){return J="useDebugValue",gt(),void 0},useDeferredValue:function(e){return J="useDeferredValue",gt(),C_(e)},useTransition:function(){return J="useTransition",gt(),R_()},useMutableSource:function(e,n,a){return J="useMutableSource",gt(),void 0},useSyncExternalStore:function(e,n,a){return J="useSyncExternalStore",gt(),y_(e,n,a)},useId:function(){return J="useId",gt(),T_()},unstable_isNewReconciler:_e},rE={readContext:function(e){return wn(e)},useCallback:function(e,n){return J="useCallback",de(),x_(e,n)},useContext:function(e){return J="useContext",de(),wn(e)},useEffect:function(e,n){return J="useEffect",de(),Mf(e,n)},useImperativeHandle:function(e,n,a){return J="useImperativeHandle",de(),S_(e,n,a)},useInsertionEffect:function(e,n){return J="useInsertionEffect",de(),b_(e,n)},useLayoutEffect:function(e,n){return J="useLayoutEffect",de(),w_(e,n)},useMemo:function(e,n){J="useMemo",de();var a=ye.current;ye.current=ti;try{return E_(e,n)}finally{ye.current=a}},useReducer:function(e,n,a){J="useReducer",de();var s=ye.current;ye.current=ti;try{return f_(e,n,a)}finally{ye.current=s}},useRef:function(e){return J="useRef",de(),v_(e)},useState:function(e){J="useState",de();var n=ye.current;ye.current=ti;try{return Pf(e)}finally{ye.current=n}},useDebugValue:function(e,n){return J="useDebugValue",de(),void 0},useDeferredValue:function(e){return J="useDeferredValue",de(),C_(e)},useTransition:function(){return J="useTransition",de(),R_()},useMutableSource:function(e,n,a){return J="useMutableSource",de(),void 0},useSyncExternalStore:function(e,n,a){return J="useSyncExternalStore",de(),y_(e,n,a)},useId:function(){return J="useId",de(),T_()},unstable_isNewReconciler:_e},aE={readContext:function(e){return wn(e)},useCallback:function(e,n){return J="useCallback",de(),Uf(e,n)},useContext:function(e){return J="useContext",de(),wn(e)},useEffect:function(e,n){return J="useEffect",de(),Zu(e,n)},useImperativeHandle:function(e,n,a){return J="useImperativeHandle",de(),Nf(e,n,a)},useInsertionEffect:function(e,n){return J="useInsertionEffect",de(),qf(e,n)},useLayoutEffect:function(e,n){return J="useLayoutEffect",de(),If(e,n)},useMemo:function(e,n){J="useMemo",de();var a=ye.current;ye.current=ja;try{return Ff(e,n)}finally{ye.current=a}},useReducer:function(e,n,a){J="useReducer",de();var s=ye.current;ye.current=ja;try{return h_(e,n,a)}finally{ye.current=s}},useRef:function(e){return J="useRef",de(),Af()},useState:function(e){J="useState",de();var n=ye.current;ye.current=ja;try{return g_(e)}finally{ye.current=n}},useDebugValue:function(e,n){return J="useDebugValue",de(),Bf()},useDeferredValue:function(e){return J="useDeferredValue",de(),Wx(e)},useTransition:function(){return J="useTransition",de(),Kx()},useMutableSource:function(e,n,a){return J="useMutableSource",de(),void 0},useSyncExternalStore:function(e,n,a){return J="useSyncExternalStore",de(),Of(e,n)},useId:function(){return J="useId",de(),zf()},unstable_isNewReconciler:_e},iE={readContext:function(e){return wn(e)},useCallback:function(e,n){return J="useCallback",de(),Uf(e,n)},useContext:function(e){return J="useContext",de(),wn(e)},useEffect:function(e,n){return J="useEffect",de(),Zu(e,n)},useImperativeHandle:function(e,n,a){return J="useImperativeHandle",de(),Nf(e,n,a)},useInsertionEffect:function(e,n){return J="useInsertionEffect",de(),qf(e,n)},useLayoutEffect:function(e,n){return J="useLayoutEffect",de(),If(e,n)},useMemo:function(e,n){J="useMemo",de();var a=ye.current;ye.current=Hf;try{return Ff(e,n)}finally{ye.current=a}},useReducer:function(e,n,a){J="useReducer",de();var s=ye.current;ye.current=Hf;try{return m_(e,n,a)}finally{ye.current=s}},useRef:function(e){return J="useRef",de(),Af()},useState:function(e){J="useState",de();var n=ye.current;ye.current=Hf;try{return __(e)}finally{ye.current=n}},useDebugValue:function(e,n){return J="useDebugValue",de(),Bf()},useDeferredValue:function(e){return J="useDeferredValue",de(),Vx(e)},useTransition:function(){return J="useTransition",de(),Qx()},useMutableSource:function(e,n,a){return J="useMutableSource",de(),void 0},useSyncExternalStore:function(e,n,a){return J="useSyncExternalStore",de(),Of(e,n)},useId:function(){return J="useId",de(),zf()},unstable_isNewReconciler:_e},ti={readContext:function(e){return k_(),wn(e)},useCallback:function(e,n){return J="useCallback",$e(),gt(),x_(e,n)},useContext:function(e){return J="useContext",$e(),gt(),wn(e)},useEffect:function(e,n){return J="useEffect",$e(),gt(),Mf(e,n)},useImperativeHandle:function(e,n,a){return J="useImperativeHandle",$e(),gt(),S_(e,n,a)},useInsertionEffect:function(e,n){return J="useInsertionEffect",$e(),gt(),b_(e,n)},useLayoutEffect:function(e,n){return J="useLayoutEffect",$e(),gt(),w_(e,n)},useMemo:function(e,n){J="useMemo",$e(),gt();var a=ye.current;ye.current=ti;try{return E_(e,n)}finally{ye.current=a}},useReducer:function(e,n,a){J="useReducer",$e(),gt();var s=ye.current;ye.current=ti;try{return f_(e,n,a)}finally{ye.current=s}},useRef:function(e){return J="useRef",$e(),gt(),v_(e)},useState:function(e){J="useState",$e(),gt();var n=ye.current;ye.current=ti;try{return Pf(e)}finally{ye.current=n}},useDebugValue:function(e,n){return J="useDebugValue",$e(),gt(),void 0},useDeferredValue:function(e){return J="useDeferredValue",$e(),gt(),C_(e)},useTransition:function(){return J="useTransition",$e(),gt(),R_()},useMutableSource:function(e,n,a){return J="useMutableSource",$e(),gt(),void 0},useSyncExternalStore:function(e,n,a){return J="useSyncExternalStore",$e(),gt(),y_(e,n,a)},useId:function(){return J="useId",$e(),gt(),T_()},unstable_isNewReconciler:_e},ja={readContext:function(e){return k_(),wn(e)},useCallback:function(e,n){return J="useCallback",$e(),de(),Uf(e,n)},useContext:function(e){return J="useContext",$e(),de(),wn(e)},useEffect:function(e,n){return J="useEffect",$e(),de(),Zu(e,n)},useImperativeHandle:function(e,n,a){return J="useImperativeHandle",$e(),de(),Nf(e,n,a)},useInsertionEffect:function(e,n){return J="useInsertionEffect",$e(),de(),qf(e,n)},useLayoutEffect:function(e,n){return J="useLayoutEffect",$e(),de(),If(e,n)},useMemo:function(e,n){J="useMemo",$e(),de();var a=ye.current;ye.current=ja;try{return Ff(e,n)}finally{ye.current=a}},useReducer:function(e,n,a){J="useReducer",$e(),de();var s=ye.current;ye.current=ja;try{return h_(e,n,a)}finally{ye.current=s}},useRef:function(e){return J="useRef",$e(),de(),Af()},useState:function(e){J="useState",$e(),de();var n=ye.current;ye.current=ja;try{return g_(e)}finally{ye.current=n}},useDebugValue:function(e,n){return J="useDebugValue",$e(),de(),Bf()},useDeferredValue:function(e){return J="useDeferredValue",$e(),de(),Wx(e)},useTransition:function(){return J="useTransition",$e(),de(),Kx()},useMutableSource:function(e,n,a){return J="useMutableSource",$e(),de(),void 0},useSyncExternalStore:function(e,n,a){return J="useSyncExternalStore",$e(),de(),Of(e,n)},useId:function(){return J="useId",$e(),de(),zf()},unstable_isNewReconciler:_e},Hf={readContext:function(e){return k_(),wn(e)},useCallback:function(e,n){return J="useCallback",$e(),de(),Uf(e,n)},useContext:function(e){return J="useContext",$e(),de(),wn(e)},useEffect:function(e,n){return J="useEffect",$e(),de(),Zu(e,n)},useImperativeHandle:function(e,n,a){return J="useImperativeHandle",$e(),de(),Nf(e,n,a)},useInsertionEffect:function(e,n){return J="useInsertionEffect",$e(),de(),qf(e,n)},useLayoutEffect:function(e,n){return J="useLayoutEffect",$e(),de(),If(e,n)},useMemo:function(e,n){J="useMemo",$e(),de();var a=ye.current;ye.current=ja;try{return Ff(e,n)}finally{ye.current=a}},useReducer:function(e,n,a){J="useReducer",$e(),de();var s=ye.current;ye.current=ja;try{return m_(e,n,a)}finally{ye.current=s}},useRef:function(e){return J="useRef",$e(),de(),Af()},useState:function(e){J="useState",$e(),de();var n=ye.current;ye.current=ja;try{return __(e)}finally{ye.current=n}},useDebugValue:function(e,n){return J="useDebugValue",$e(),de(),Bf()},useDeferredValue:function(e){return J="useDeferredValue",$e(),de(),Vx(e)},useTransition:function(){return J="useTransition",$e(),de(),Qx()},useMutableSource:function(e,n,a){return J="useMutableSource",$e(),de(),void 0},useSyncExternalStore:function(e,n,a){return J="useSyncExternalStore",$e(),de(),Of(e,n)},useId:function(){return J="useId",$e(),de(),zf()},unstable_isNewReconciler:_e}}var go=r.unstable_now,oE=0,Gf=-1,ed=-1,Wf=-1,j_=!1,Vf=!1;function sE(){return j_}function qq(){Vf=!0}function Iq(){j_=!1,Vf=!1}function Nq(){j_=Vf,Vf=!1}function lE(){return oE}function cE(){oE=go()}function D_(e){ed=go(),e.actualStartTime<0&&(e.actualStartTime=go())}function uE(e){ed=-1}function Yf(e,n){if(ed>=0){var a=go()-ed;e.actualDuration+=a,n&&(e.selfBaseDuration=a),ed=-1}}function ni(e){if(Gf>=0){var n=go()-Gf;Gf=-1;for(var a=e.return;a!==null;){switch(a.tag){case b:var s=a.stateNode;s.effectDuration+=n;return;case z:var c=a.stateNode;c.effectDuration+=n;return}a=a.return}}}function O_(e){if(Wf>=0){var n=go()-Wf;Wf=-1;for(var a=e.return;a!==null;){switch(a.tag){case b:var s=a.stateNode;s!==null&&(s.passiveEffectDuration+=n);return;case z:var c=a.stateNode;c!==null&&(c.passiveEffectDuration+=n);return}a=a.return}}}function ri(){Gf=go()}function P_(){Wf=go()}function A_(e){for(var n=e.child;n;)e.actualDuration+=n.actualDuration,n=n.sibling}function Da(e,n){if(e&&e.defaultProps){var a=Qe({},n),s=e.defaultProps;for(var c in s)a[c]===void 0&&(a[c]=s[c]);return a}return n}var L_={},M_,q_,I_,N_,B_,dE,Kf,U_,F_,z_,td;{M_=new Set,q_=new Set,I_=new Set,N_=new Set,U_=new Set,B_=new Set,F_=new Set,z_=new Set,td=new Set;var pE=new Set;Kf=function(e,n){if(!(e===null||typeof e=="function")){var a=n+"_"+e;pE.has(a)||(pE.add(a),d("%s(...): Expected the last optional `callback` argument to be a function. Instead received: %s.",n,e))}},dE=function(e,n){if(n===void 0){var a=ft(e)||"Component";B_.has(a)||(B_.add(a),d("%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.",a))}},Object.defineProperty(L_,"_processChildContext",{enumerable:!1,value:function(){throw new Error("_processChildContext is not available in React 16+. This likely means you have multiple copies of React and are attempting to nest a React 15 tree inside a React 16 tree using unstable_renderSubtreeIntoContainer, which isn't supported. Try to make sure you have only one copy of React (and ideally, switch to ReactDOM.createPortal).")}}),Object.freeze(L_)}function $_(e,n,a,s){var c=e.memoizedState,p=a(s,c);{if(e.mode&sn){Bn(!0);try{p=a(s,c)}finally{Bn(!1)}}dE(n,p)}var f=p==null?c:Qe({},c,p);if(e.memoizedState=f,e.lanes===ie){var y=e.updateQueue;y.baseState=f}}var H_={isMounted:jO,enqueueSetState:function(e,n,a){var s=nl(e),c=_r(),p=wo(s),f=Oi(c,p);f.payload=n,a!=null&&(Kf(a,"setState"),f.callback=a);var y=fo(s,f,p);y!==null&&(An(y,s,p,c),Ef(y,s,p)),wy(s,p)},enqueueReplaceState:function(e,n,a){var s=nl(e),c=_r(),p=wo(s),f=Oi(c,p);f.tag=jx,f.payload=n,a!=null&&(Kf(a,"replaceState"),f.callback=a);var y=fo(s,f,p);y!==null&&(An(y,s,p,c),Ef(y,s,p)),wy(s,p)},enqueueForceUpdate:function(e,n){var a=nl(e),s=_r(),c=wo(a),p=Oi(s,c);p.tag=wf,n!=null&&(Kf(n,"forceUpdate"),p.callback=n);var f=fo(a,p,c);f!==null&&(An(f,a,c,s),Ef(f,a,c)),oP(a,c)}};function fE(e,n,a,s,c,p,f){var y=e.stateNode;if(typeof y.shouldComponentUpdate=="function"){var _=y.shouldComponentUpdate(s,p,f);{if(e.mode&sn){Bn(!0);try{_=y.shouldComponentUpdate(s,p,f)}finally{Bn(!1)}}_===void 0&&d("%s.shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false.",ft(n)||"Component")}return _}return n.prototype&&n.prototype.isPureReactComponent?!xu(a,s)||!xu(c,p):!0}function Bq(e,n,a){var s=e.stateNode;{var c=ft(n)||"Component",p=s.render;p||(n.prototype&&typeof n.prototype.render=="function"?d("%s(...): No `render` method found on the returned component instance: did you accidentally return an object from the constructor?",c):d("%s(...): No `render` method found on the returned component instance: you may have forgotten to define `render`.",c)),s.getInitialState&&!s.getInitialState.isReactClassApproved&&!s.state&&d("getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?",c),s.getDefaultProps&&!s.getDefaultProps.isReactClassApproved&&d("getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.",c),s.propTypes&&d("propTypes was defined as an instance property on %s. Use a static property to define propTypes instead.",c),s.contextType&&d("contextType was defined as an instance property on %s. Use a static property to define contextType instead.",c),n.childContextTypes&&!td.has(n)&&(e.mode&sn)===Ae&&(td.add(n),d(`%s uses the legacy childContextTypes API which is no longer supported and will be removed in the next major release. Use React.createContext() instead
143
144.Learn more about this warning here: https://reactjs.org/link/legacy-context`,c)),n.contextTypes&&!td.has(n)&&(e.mode&sn)===Ae&&(td.add(n),d(`%s uses the legacy contextTypes API which is no longer supported and will be removed in the next major release. Use React.createContext() with static contextType instead.
145
146Learn more about this warning here: https://reactjs.org/link/legacy-context`,c)),s.contextTypes&&d("contextTypes was defined as an instance property on %s. Use a static property to define contextTypes instead.",c),n.contextType&&n.contextTypes&&!F_.has(n)&&(F_.add(n),d("%s declares both contextTypes and contextType static properties. The legacy contextTypes property will be ignored.",c)),typeof s.componentShouldUpdate=="function"&&d("%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.",c),n.prototype&&n.prototype.isPureReactComponent&&typeof s.shouldComponentUpdate<"u"&&d("%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.",ft(n)||"A pure component"),typeof s.componentDidUnmount=="function"&&d("%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?",c),typeof s.componentDidReceiveProps=="function"&&d("%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().",c),typeof s.componentWillRecieveProps=="function"&&d("%s has a method called componentWillRecieveProps(). Did 
146you mean componentWillReceiveProps()?",c),typeof s.UNSAFE_componentWillRecieveProps=="function"&&d("%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?",c);var f=s.props!==a;s.props!==void 0&&f&&d("%s(...): When calling super() in `%s`, make sure to pass up the same props that your component's constructor was passed.",c,c),s.defaultProps&&d("Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.",c,c),typeof s.getSnapshotBeforeUpdate=="function"&&typeof s.componentDidUpdate!="function"&&!I_.has(n)&&(I_.add(n),d("%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.",ft(n))),typeof s.getDerivedStateFromProps=="function"&&d("%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.",c),typeof s.getDerivedStateFromError=="function"&&d("%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.",c),typeof n.getSnapshotBeforeUpdate=="function"&&d("%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.",c);var y=s.state;y&&(typeof y!="object"||tt(y))&&d("%s.state: must be set to an object or null",c),typeof s.getChildContext=="function"&&typeof n.childContextTypes!="object"&&d("%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().",c)}}function hE(e,n){n.updater=H_,e.stateNode=n,CO(n,e),n._reactInternalInstance=L_}function mE(e,n,a){var s=!1,c=zr,p=zr,f=n.contextType;if("contextType"in n){var y=f===null||f!==void 0&&f.$$typeof===D&&f._context===void 0;if(!y&&!z_.has(n)){z_.add(n);var _="";f===void 0?_=" However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file.":typeof f!="object"?_=" However, it is set to a "+typeof f+".":f.$$typeof===Fo?_=" Did you accidentally pass the Context.Provider instead?":f._context!==void 0?_=" Did you accidentally pass the Context.Consumer instead?":_=" However, it is set to an object with keys {"+Object.keys(f).join(", ")+"}.",d("%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s",ft(n)||"Component",_)}}if(typeof f=="object"&&f!==null)p=wn(f);else{c=wl(e,n,!0);var S=n.contextTypes;s=S!=null,p=s?Sl(e,c):zr}var x=new n(a,p);if(e.mode&sn){Bn(!0);try{x=new n(a,p)}finally{Bn(!1)}}var A=e.memoizedState=x.state!==null&&x.state!==void 0?x.state:null;hE(e,x);{if(typeof n.getDerivedStateFromProps=="function"&&A===null){var P=ft(n)||"Component";q_.has(P)||(q_.add(P),d("`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.",P,x.state===null?"null":"undefined",P))}if(typeof n.getDerivedStateFromProps=="function"||typeof x.getSnapshotBeforeUpdate=="function"){var B=null,F=null,Y=null;if(typeof x.componentWillMount=="function"&&x.componentWillMount.__suppressDeprecationWarning!==!0?B="componentWillMount":typeof x.UNSAFE_componentWillMount=="function"&&(B="UNSAFE_componentWillMount"),typeof x.componentWillReceiveProps=="function"&&x.componentWillReceiveProps.__suppressDeprecationWarning!==!0?F="componentWillReceiveProps":typeof x.UNSAFE_componentWillReceiveProps=="function"&&(F="UNSAFE_componentWillReceiveProps"),typeof x.componentWillUpdate=="function"&&x.componentWillUpdate.__suppressDeprecationWarning!==!0?Y="componentWillUpdate":typeof x.UNSAFE_componentWillUpdate=="function"&&(Y="UNSAFE_componentWillUpdate"),B!==null||F!==null||Y!==null){var pe=ft(n)||"Component",Pe=typeof n.getDerivedStateFromProps=="function"?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";N_.has(pe)||(N_.add(pe),d(`Unsafe legacy lifecycles will not be called for components using new component APIs.
147
148%s uses %s but also contains the following legacy lifecycles:%s%s%s
149
150The above lifecycles should be removed. Learn more about this warning here:
151https://reactjs.org/link/unsafe-component-lifecycles`,pe,Pe,B!==null?`
152  `+B:"",F!==null?`
153  `+F:"",Y!==null?`
154  `+Y:""))}}}return s&&ax(e,c,p),x}
vendor: 97,976 bytes, lines 154-203
154function Uq(e,n){var a=n.state;typeof n.componentWillMount=="function"&&n.componentWillMount(),typeof n.UNSAFE_componentWillMount=="function"&&n.UNSAFE_componentWillMount(),a!==n.state&&(d("%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.",We(e)||"Component"),H_.enqueueReplaceState(n,n.state,null))}function yE(e,n,a,s){var c=n.state;if(typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(a,s),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(a,s),n.state!==c){{var p=We(e)||"Component";M_.has(p)||(M_.add(p),d("%s.componentWillReceiveProps(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.",p))}H_.enqueueReplaceState(n,n.state,null)}}function G_(e,n,a,s){Bq(e,n,a);var c=e.stateNode;c.props=a,c.state=e.memoizedState,c.refs={},e_(e);var p=n.contextType;if(typeof p=="object"&&p!==null)c.context=wn(p);else{var f=wl(e,n,!0);c.context=Sl(e,f)}{if(c.state===a){var y=ft(n)||"Component";U_.has(y)||(U_.add(y),d("%s: It is not recommended to assign props directly to state because updates to props won't be reflected in state. In most cases, it is better to use props directly.",y))}e.mode&sn&&Ta.recordLegacyContextWarning(e,c),Ta.recordUnsafeLifecycleWarnings(e,c)}c.state=e.memoizedState;var _=n.getDerivedStateFromProps;if(typeof _=="function"&&($_(e,n,_,a),c.state=e.memoizedState),typeof n.getDerivedStateFromProps!="function"&&typeof c.getSnapshotBeforeUpdate!="function"&&(typeof c.UNSAFE_componentWillMount=="function"||typeof c.componentWillMount=="function")&&(Uq(e,c),Cf(e,a,c,s),c.state=e.memoizedState),typeof c.componentDidMount=="function"){var S=ht;S|=es,(e.mode&Ka)!==Ae&&(S|=eo),e.flags|=S}}function Fq(e,n,a,s){var c=e.stateNode,p=e.memoizedProps;c.props=p;var f=c.context,y=n.contextType,_=zr;if(typeof y=="object"&&y!==null)_=wn(y);else{var S=wl(e,n,!0);_=Sl(e,S)}var x=n.getDerivedStateFromProps,A=typeof x=="function"||typeof c.getSnapshotBeforeUpdate=="function";!A&&(typeof c.UNSAFE_componentWillReceiveProps=="function"||typeof c.componentWillReceiveProps=="function")&&(p!==a||f!==_)&&yE(e,c,a,_),Ox();var P=e.memoizedState,B=c.state=P;if(Cf(e,a,c,s),B=e.memoizedState,p===a&&P===B&&!of()&&!Rf()){if(typeof c.componentDidMount=="function"){var F=ht;F|=es,(e.mode&Ka)!==Ae&&(F|=eo),e.flags|=F}return!1}typeof x=="function"&&($_(e,n,x,a),B=e.memoizedState);var Y=Rf()||fE(e,n,p,a,P,B,_);if(Y){if(!A&&(typeof c.UNSAFE_componentWillMount=="function"||typeof c.componentWillMount=="function")&&(typeof c.componentWillMount=="function"&&c.componentWillMount(),typeof c.UNSAFE_componentWillMount=="function"&&c.UNSAFE_componentWillMount()),typeof c.componentDidMount=="function"){var pe=ht;pe|=es,(e.mode&Ka)!==Ae&&(pe|=eo),e.flags|=pe}}else{if(typeof c.componentDidMount=="function"){var Pe=ht;Pe|=es,(e.mode&Ka)!==Ae&&(Pe|=eo),e.flags|=Pe}e.memoizedProps=a,e.memoizedState=B}return c.props=a,c.state=B,c.context=_,Y}function zq(e,n,a,s,c){var p=n.stateNode;Dx(e,n);var f=n.memoizedProps,y=n.type===n.elementType?f:Da(n.type,f);p.props=y;var _=n.pendingProps,S=p.context,x=a.contextType,A=zr;if(typeof x=="object"&&x!==null)A=wn(x);else{var P=wl(n,a,!0);A=Sl(n,P)}var B=a.getDerivedStateFromProps,F=typeof B=="function"||typeof p.getSnapshotBeforeUpdate=="function";!F&&(typeof p.UNSAFE_componentWillReceiveProps=="function"||typeof p.componentWillReceiveProps=="function")&&(f!==_||S!==A)&&yE(n,p,s,A),Ox();var Y=n.memoizedState,pe=p.state=Y;if(Cf(n,s,p,c),pe=n.memoizedState,f===_&&Y===pe&&!of()&&!Rf())return typeof p.componentDidUpdate=="function"&&(f!==e.memoizedProps||Y!==e.memoizedState)&&(n.flags|=ht),typeof p.getSnapshotBeforeUpdate=="function"&&(f!==e.memoizedProps||Y!==e.memoizedState)&&(n.flags|=al),!1;typeof B=="function"&&($_(n,a,B,s),pe=n.memoizedState);var Pe=Rf()||fE(n,a,y,s,Y,pe,A)||Re;return Pe?(!F&&(typeof p.UNSAFE_componentWillUpdate=="function"||typeof p.componentWillUpdate=="function")&&(typeof p.componentWillUpdate=="function"&&p.componentWillUpdate(s,pe,A),typeof p.UNSAFE_componentWillUpdate=="function"&&p.UNSAFE_componentWillUpdate(s,pe,A)),typeof p.componentDidUpdate=="function"&&(n.flags|=ht),typeof p.getSnapshotBeforeUpdate=="function"&&(n.flags|=al)):(typeof p.componentDidUpdate=="function"&&(f!==e.memoizedProps||Y!==e.memoizedState)&&(n.flags|=ht),typeof p.getSnapshotBeforeUpdate=="function"&&(f!==e.memoizedProps||Y!==e.memoizedState)&&(n.flags|=al),n.memoizedProps=s,n.memoizedState=pe),p.props=s,p.state=pe,p.context=A,Pe}function _s(e,n){return{value:e,source:n,stack:Ho(n),digest:null}}function W_(e,n,a){return{value:e,source:null,stack:a??null,digest:n??null}}function $q(e,n){return!0}function V_(e,n){try{var a=$q(e,n);if(a===!1)return;var s=n.value,c=n.source,p=n.stack,f=p!==null?p:"";if(s!=null&&s._suppressLogging){if(e.tag===g)return;console.error(s)}var y=c?We(c):null,_=y?"The above error occurred in the <"+y+"> component:":"The above error occurred in one of your React components:",S;if(e.tag===b)S=`Consider adding an error boundary to your tree to customize error handling behavior.
155Visit https://reactjs.org/link/error-boundaries to learn more about error boundaries.`;else{var x=We(e)||"Anonymous";S="React will try to recreate this component tree from scratch "+("using the error boundary you provided, "+x+".")}var A=_+`
156`+f+`
157
158`+(""+S);console.error(A)}catch(P){setTimeout(function(){throw P})}}var Hq=typeof WeakMap=="function"?WeakMap:Map;function gE(e,n,a){var s=Oi(Ut,a);s.tag=Jg,s.payload={element:null};var c=n.value;return s.callback=function(){qN(c),V_(e,n)},s}function Y_(e,n,a){var s=Oi(Ut,a);s.tag=Jg;var c=e.type.getDerivedStateFromError;if(typeof c=="function"){var p=n.value;s.payload=function(){return c(p)},s.callback=function(){kC(e),V_(e,n)}}var f=e.stateNode;return f!==null&&typeof f.componentDidCatch=="function"&&(s.callback=function(){kC(e),V_(e,n),typeof c!="function"&&LN(this);var _=n.value,S=n.stack;this.componentDidCatch(_,{componentStack:S!==null?S:""}),typeof c!="function"&&(Nr(e.lanes,ze)||d("%s: Error boundaries should implement getDerivedStateFromError(). In that method, return a state update to display an error message or fallback UI.",We(e)||"Unknown"))}),s}function _E(e,n,a){var s=e.pingCache,c;if(s===null?(s=e.pingCache=new Hq,c=new Set,s.set(n,c)):(c=s.get(n),c===void 0&&(c=new Set,s.set(n,c))),!c.has(a)){c.add(a);var p=IN.bind(null,e,n,a);xa&&_d(e,a),n.then(p,p)}}function Gq(e,n,a,s){var c=e.updateQueue;if(c===null){var p=new Set;p.add(a),e.updateQueue=p}else c.add(a)}function Wq(e,n){var a=e.tag;if((e.mode&ot)===Ae&&(a===m||a===$||a===Z)){var s=e.alternate;s?(e.updateQueue=s.updateQueue,e.memoizedState=s.memoizedState,e.lanes=s.lanes):(e.updateQueue=null,e.memoizedState=null)}}function vE(e){var n=e;do{if(n.tag===W&&Rq(n))return n;n=n.return}while(n!==null);return null}function bE(e,n,a,s,c){if((e.mode&ot)===Ae){if(e===n)e.flags|=Sa;else{if(e.flags|=yt,a.flags|=fy,a.flags&=-52805,a.tag===g){var p=a.alternate;if(p===null)a.tag=we;else{var f=Oi(Ut,ze);f.tag=wf,fo(a,f,ze)}}a.lanes=Xe(a.lanes,ze)}return e}return e.flags|=Sa,e.lanes=c,e}function Vq(e,n,a,s,c){if(a.flags|=xp,xa&&_d(e,c),s!==null&&typeof s=="object"&&typeof s.then=="function"){var p=s;Wq(a),Gn()&&a.mode&ot&&dx();var f=vE(n);if(f!==null){f.flags&=-257,bE(f,n,a,e,c),f.mode&ot&&_E(e,p,c),Gq(f,e,p);return}else{if(!mP(c)){_E(e,p,c),Tv();return}var y=new Error("A component suspended while responding to synchronous input. This will cause the UI to be replaced with a loading indicator. To fix, updates that suspend should be wrapped with startTransition.");s=y}}else if(Gn()&&a.mode&ot){dx();var _=vE(n);if(_!==null){(_.flags&Sa)===qe&&(_.flags|=Qo),bE(_,n,a,e,c),Ug(_s(s,a));return}}s=_s(s,a),RN(s);var S=n;do{switch(S.tag){case b:{var x=s;S.flags|=Sa;var A=lu(c);S.lanes=Xe(S.lanes,A);var P=gE(S,x,A);t_(S,P);return}case g:var B=s,F=S.type,Y=S.stateNode;if((S.flags&yt)===qe&&(typeof F.getDerivedStateFromError=="function"||Y!==null&&typeof Y.componentDidCatch=="function"&&!vC(Y))){S.flags|=Sa;var pe=lu(c);S.lanes=Xe(S.lanes,pe);var Pe=Y_(S,B,pe);t_(S,Pe);return}break}S=S.return}while(S!==null)}function Yq(){return null}var nd=i.ReactCurrentOwner,Oa=!1,K_,rd,Q_,X_,J_,vs,Z_,Qf,ad;K_={},rd={},Q_={},X_={},J_={},vs=!1,Z_={},Qf={},ad={};function yr(e,n,a,s){e===null?n.child=xx(n,null,a,s):n.child=Rl(n,e.child,a,s)}function Kq(e,n,a,s){n.child=Rl(n,e.child,null,s),n.child=Rl(n,null,a,s)}function wE(e,n,a,s,c){if(n.type!==n.elementType){var p=a.propTypes;p&&Ca(p,s,"prop",ft(a))}var f=a.render,y=n.ref,_,S;kl(n,c),nu(n);{if(nd.current=n,Qr(!0),_=Ll(e,n,f,s,y,c),S=Ml(),n.mode&sn){Bn(!0);try{_=Ll(e,n,f,s,y,c),S=Ml()}finally{Bn(!1)}}Qr(!1)}return sl(),e!==null&&!Oa?(Ix(e,n,c),Pi(e,n,c)):(Gn()&&S&&Lg(n),n.flags|=rl,yr(e,n,_,c),n.child)}function SE(e,n,a,s,c){if(e===null){var p=a.type;if(eB(p)&&a.compare===null&&a.defaultProps===void 0){var f=p;return f=$l(p),n.tag=Z,n.type=f,nv(n,p),xE(e,n,f,s,c)}{var y=p.propTypes;if(y&&Ca(y,s,"prop",ft(p)),a.defaultProps!==void 0){var _=ft(p)||"Unknown";ad[_]||(d("%s: Support for defaultProps will be removed from memo components in a future major release. Use JavaScript default parameters instead.",_),ad[_]=!0)}}var S=Nv(a.type,null,s,n,n.mode,c);return S.ref=n.ref,S.return=n,n.child=S,S}{var x=a.type,A=x.propTypes;A&&Ca(A,s,"prop",ft(x))}var P=e.child,B=lv(e,c);if(!B){var F=P.memoizedProps,Y=a.compare;if(Y=Y!==null?Y:xu,Y(F,s)&&e.ref===n.ref)return Pi(e,n,c)}n.flags|=rl;var pe=Es(P,s);return pe.ref=n.ref,pe.return=n,n.child=pe,pe}function xE(e,n,a,s,c){if(n.type!==n.elementType){var p=n.elementType;if(p.$$typeof===Ve){var f=p,y=f._payload,_=f._init;try{p=_(y)}catch{p=null}var S=p&&p.propTypes;S&&Ca(S,s,"prop",ft(p))}}if(e!==null){var x=e.memoizedProps;if(xu(x,s)&&e.ref===n.ref&&n.type===e.type)if(Oa=!1,n.pendingProps=s=x,lv(e,c))(e.flags&fy)!==qe&&(Oa=!0);else return n.lanes=e.lanes,Pi(e,n,c)}return ev(e,n,a,s,c)}function EE(e,n,a){var s=n.pendingProps,c=s.children,p=e!==null?e.memoizedState:null;if(s.mode==="hidden"||Ce)if((n.mode&ot)===Ae){var f={baseLanes:ie,cachePool:null,transitions:null};n.memoizedState=f,ch(n,a)}else if(Nr(a,Xr)){var A={baseLanes:ie,cachePool:null,transitions:null};n.memoizedState=A;var P=p!==null?p.baseLanes:a;ch(n,P)}else{var y=null,_;if(p!==null){var S=p.baseLanes;_=Xe(S,a)}else _=a;n.lanes=n.childLanes=Xr;var x={baseLanes:_,cachePool:y,transitions:null};return n.memoizedState=x,n.updateQueue=null,ch(n,_),null}else{var B;p!==null?(B=Xe(p.baseLanes,a),n.memoizedState=null):B=a,ch(n,B)}return yr(e,n,c,a),n.child}function Qq(e,n,a){var s=n.pendingProps;return yr(e,n,s,a),n.child}function Xq(e,n,a){var s=n.pendingProps.children;return yr(e,n,s,a),n.child}function Jq(e,n,a){{n.flags|=ht;{var s=n.stateNode;s.effectDuration=0,s.passiveEffectDuration=0}}var c=n.pendingProps,p=c.children;return yr(e,n,p,a),n.child}function CE(e,n){var a=n.ref;(e===null&&a!==null||e!==null&&e.ref!==a)&&(n.flags|=Xo,n.flags|=hy)}function ev(e,n,a,s,c){if(n.type!==n.elementType){var p=a.propTypes;p&&Ca(p,s,"prop",ft(a))}var f;{var y=wl(n,a,!0);f=Sl(n,y)}var _,S;kl(n,c),nu(n);{if(nd.current=n,Qr(!0),_=Ll(e,n,a,s,f,c),S=Ml(),n.mode&sn){Bn(!0);try{_=Ll(e,n,a,s,f,c),S=Ml()}finally{Bn(!1)}}Qr(!1)}return sl(),e!==null&&!Oa?(Ix(e,n,c),Pi(e,n,c)):(Gn()&&S&&Lg(n),n.flags|=rl,yr(e,n,_,c),n.child)}function RE(e,n,a,s,c){{switch(mB(n)){case!1:{var p=n.stateNode,f=n.type,y=new f(n.memoizedProps,p.context),_=y.state;p.updater.enqueueSetState(p,_,null);break}case!0:{n.flags|=yt,n.flags|=Sa;var S=new Error("Simulated error coming from DevTools"),x=lu(c);n.lanes=Xe(n.lanes,x);var A=Y_(n,_s(S,n),x);t_(n,A);break}}if(n.type!==n.elementType){var P=a.propTypes;P&&Ca(P,s,"prop",ft(a))}}var B;Ja(a)?(B=!0,lf(n)):B=!1,kl(n,c);var F=n.stateNode,Y;F===null?(Jf(e,n),mE(n,a,s),G_(n,a,s,c),Y=!0):e===null?Y=Fq(n,a,s,c):Y=zq(e,n,a,s,c);var pe=tv(e,n,a,Y,B,c);{var Pe=n.stateNode;Y&&Pe.props!==s&&(vs||d("It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.",We(n)||"a component"),vs=!0)}return pe}function tv(e,n,a,s,c,p){CE(e,n);var f=(n.flags&yt)!==qe;if(!s&&!f)return c&&sx(n,a,!1),Pi(e,n,p);var y=n.stateNode;nd.current=n;var _;if(f&&typeof a.getDerivedStateFromError!="function")_=null,uE();else{nu(n);{if(Qr(!0),_=y.render(),n.mode&sn){Bn(!0);try{y.render()}finally{Bn(!1)}}Qr(!1)}sl()}return n.flags|=rl,e!==null&&f?Kq(e,n,_,p):yr(e,n,_,p),n.memoizedState=y.state,c&&sx(n,a,!0),n.child}function TE(e){var n=e.stateNode;n.pendingContext?ix(e,n.pendingContext,n.pendingContext!==n.context):n.context&&ix(e,n.context,!1),n_(e,n.containerInfo)}function Zq(e,n,a){if(TE(n),e===null)throw new Error("Should have a current fiber. This is a bug in React.");var s=n.pendingProps,c=n.memoizedState,p=c.element;Dx(e,n),Cf(n,s,null,a);var f=n.memoizedState;n.stateNode;var y=f.element;if(c.isDehydrated){var _={element:y,isDehydrated:!1,cache:f.cache,pendingSuspenseBoundaries:f.pendingSuspenseBoundaries,transitions:f.transitions},S=n.updateQueue;if(S.baseState=_,n.memoizedState=_,n.flags&Qo){var x=_s(new Error("There was an error while hydrating. Because the error happened outside of a Suspense boundary, the entire root will switch to client rendering."),n);return kE(e,n,y,a,x)}else if(y!==p){var A=_s(new Error("This root received an early update, before anything was able hydrate. Switched the entire root to client rendering."),n);return kE(e,n,y,a,A)}else{nq(n);var P=xx(n,null,y,a);n.child=P;for(var B=P;B;)B.flags=B.flags&-3|Jo,B=B.sibling}}else{if(Cl(),y===p)return Pi(e,n,a);yr(e,n,y,a)}return n.child}function kE(e,n,a,s,c){return Cl(),Ug(c),n.flags|=Qo,yr(e,n,a,s),n.child}function eI(e,n,a){Lx(n),e===null&&Bg(n);var s=n.type,c=n.pendingProps,p=e!==null?e.memoizedProps:null,f=c.children,y=bg(s,c);return y?f=null:p!==null&&bg(s,p)&&(n.flags|=Sp),CE(e,n),yr(e,n,f,a),n.child}function tI(e,n){return e===null&&Bg(n),null}function nI(e,n,a,s){Jf(e,n);var c=n.pendingProps,p=a,f=p._payload,y=p._init,_=y(f);n.type=_;var S=n.tag=tB(_),x=Da(_,c),A;switch(S){case m:return nv(n,_),n.type=_=$l(_),A=ev(null,n,_,x,s),A;case g:return n.type=_=Pv(_),A=RE(null,n,_,x,s),A;case $:return n.type=_=Av(_),A=wE(null,n,_,x,s),A;case ae:{if(n.type!==n.elementType){var P=_.propTypes;P&&Ca(P,x,"prop",ft(_))}return A=SE(null,n,_,Da(_.type,x),s),A}}var B="";throw _!==null&&typeof _=="object"&&_.$$typeof===Ve&&(B=" Did you wrap a component in React.lazy() more than once?"),new Error("Element type is invalid. Received a promise that resolves to: "+_+". "+("Lazy element type must resolve to a class or function."+B))}function rI(e,n,a,s,c){Jf(e,n),n.tag=g;var p;return Ja(a)?(p=!0,lf(n)):p=!1,kl(n,c),mE(n,a,s),G_(n,a,s,c),tv(null,n,a,!0,p,c)}function aI(e,n,a,s){Jf(e,n);var c=n.pendingProps,p;{var f=wl(n,a,!1);p=Sl(n,f)}kl(n,s);var y,_;nu(n);{if(a.prototype&&typeof a.prototype.render=="function"){var S=ft(a)||"Unknown";K_[S]||(d("The <%s /> component appears to have a render method, but doesn't extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.",S,S),K_[S]=!0)}n.mode&sn&&Ta.recordLegacyContextWarning(n,null),Qr(!0),nd.current=n,y=Ll(null,n,a,c,p,s),_=Ml(),Qr(!1)}if(sl(),n.flags|=rl,typeof y=="object"&&y!==null&&typeof y.render=="function"&&y.$$typeof===void 0){var x=ft(a)||"Unknown";rd[x]||(d("The <%s /> component appears to be a function component that returns a class instance. Change %s to a class that extends React.Component instead. If you can't use a class try assigning the prototype on the function as a workaround. `%s.prototype = React.Component.prototype`. Don't use an arrow function since it cannot be called with `new` by React.",x,x,x),rd[x]=!0)}if(typeof y=="object"&&y!==null&&typeof y.render=="function"&&y.$$typeof===void 0){{var A=ft(a)||"Unknown";rd[A]||(d("The <%s /> component appears to be a function component that returns a class instance. Change %s to a class that extends React.Component instead. If you can't use a class try assigning the prototype on the function as a workaround. `%s.prototype = React.Component.prototype`. Don't use an arrow function since it cannot be called with `new` by React.",A,A,A),rd[A]=!0)}n.tag=g,n.memoizedState=null,n.updateQueue=null;var P=!1;return Ja(a)?(P=!0,lf(n)):P=!1,n.memoizedState=y.state!==null&&y.state!==void 0?y.state:null,e_(n),hE(n,y),G_(n,a,c,s),tv(null,n,a,!0,P,s)}else{if(n.tag=m,n.mode&sn){Bn(!0);try{y=Ll(null,n,a,c,p,s),_=Ml()}finally{Bn(!1)}}return Gn()&&_&&Lg(n),yr(null,n,y,s),nv(n,a),n.child}}function nv(e,n){{if(n&&n.childContextTypes&&d("%s(...): childContextTypes cannot be defined on a function component.",n.displayName||n.name||"Component"),e.ref!==null){var a="",s=Xi();s&&(a+=`
159
160Check the render method of \``+s+"`.");var c=s||"",p=e._debugSource;p&&(c=p.fileName+":"+p.lineNumber),J_[c]||(J_[c]=!0,d("Function components cannot be given refs. Attempts to access this ref will fail. Did you mean to use React.forwardRef()?%s",a))}if(n.defaultProps!==void 0){var f=ft(n)||"Unknown";ad[f]||(d("%s: Support for defaultProps will be removed from function components in a future major release. Use JavaScript default parameters instead.",f),ad[f]=!0)}if(typeof n.getDerivedStateFromProps=="function"){var y=ft(n)||"Unknown";X_[y]||(d("%s: Function components do not support getDerivedStateFromProps.",y),X_[y]=!0)}if(typeof n.contextType=="object"&&n.contextType!==null){var _=ft(n)||"Unknown";Q_[_]||(d("%s: Function components do not support contextType.",_),Q_[_]=!0)}}}var rv={dehydrated:null,treeContext:null,retryLane:Un};function av(e){return{baseLanes:e,cachePool:Yq(),transitions:null}}function iI(e,n){var a=null;return{baseLanes:Xe(e.baseLanes,n),cachePool:a,transitions:e.transitions}}function oI(e,n,a,s){if(n!==null){var c=n.memoizedState;if(c===null)return!1}return i_(e,Vu)}function sI(e,n){return Dp(e.childLanes,n)}function jE(e,n,a){var s=n.pendingProps;yB(n)&&(n.flags|=yt);var c=ka.current,p=!1,f=(n.flags&yt)!==qe;if(f||oI(c,e)?(p=!0,n.flags&=-129):(e===null||e.memoizedState!==null)&&(c=Cq(c,qx)),c=Dl(c),mo(n,c),e===null){Bg(n);var y=n.memoizedState;if(y!==null){var _=y.dehydrated;if(_!==null)return pI(n,_)}var S=s.children,x=s.fallback;if(p){var A=lI(n,S,x,a),P=n.child;return P.memoizedState=av(a),n.memoizedState=rv,A}else return iv(n,S)}else{var B=e.memoizedState;if(B!==null){var F=B.dehydrated;if(F!==null)return fI(e,n,f,s,F,B,a)}if(p){var Y=s.fallback,pe=s.children,Pe=uI(e,n,pe,Y,a),Te=n.child,lt=e.child.memoizedState;return Te.memoizedState=lt===null?av(a):iI(lt,a),Te.childLanes=sI(e,a),n.memoizedState=rv,Pe}else{var nt=s.children,q=cI(e,n,nt,a);return n.memoizedState=null,q}}}function iv(e,n,a){var s=e.mode,c={mode:"visible",children:n},p=ov(c,s);return p.return=e,e.child=p,p}function lI(e,n,a,s){var c=e.mode,p=e.child,f={mode:"hidden",children:n},y,_;return(c&ot)===Ae&&p!==null?(y=p,y.childLanes=ie,y.pendingProps=f,e.mode&Et&&(y.actualDuration=0,y.actualStartTime=-1,y.selfBaseDuration=0,y.treeBaseDuration=0),_=xo(a,c,s,null)):(y=ov(f,c),_=xo(a,c,s,null)),y.return=e,_.return=e,y.sibling=_,e.child=y,_}function ov(e,n,a){return DC(e,n,ie,null)}function DE(e,n){return Es(e,n)}function cI(e,n,a,s){var c=e.child,p=c.sibling,f=DE(c,{mode:"visible",children:a});if((n.mode&ot)===Ae&&(f.lanes=s),f.return=n,f.sibling=null,p!==null){var y=n.deletions;y===null?(n.deletions=[p],n.flags|=Ko):y.push(p)}return n.child=f,f}function uI(e,n,a,s,c){var p=n.mode,f=e.child,y=f.sibling,_={mode:"hidden",children:a},S;if((p&ot)===Ae&&n.child!==f){var x=n.child;S=x,S.childLanes=ie,S.pendingProps=_,n.mode&Et&&(S.actualDuration=0,S.actualStartTime=-1,S.selfBaseDuration=f.selfBaseDuration,S.treeBaseDuration=f.treeBaseDuration),n.deletions=null}else S=DE(f,_),S.subtreeFlags=f.subtreeFlags&Si;var A;return y!==null?A=Es(y,s):(A=xo(s,p,c,null),A.flags|=In),A.return=n,S.return=n,S.sibling=A,n.child=S,A}function Xf(e,n,a,s){s!==null&&Ug(s),Rl(n,e.child,null,a);var c=n.pendingProps,p=c.children,f=iv(n,p);return f.flags|=In,n.memoizedState=null,f}function dI(e,n,a,s,c){var p=n.mode,f={mode:"visible",children:a},y=ov(f,p),_=xo(s,p,c,null);return _.flags|=In,y.return=n,_.return=n,y.sibling=_,n.child=y,(n.mode&ot)!==Ae&&Rl(n,e.child,null,c),_}function pI(e,n,a){return(e.mode&ot)===Ae?(d("Cannot hydrate Suspense in legacy mode. Switch from ReactDOM.hydrate(element, container) to ReactDOMClient.hydrateRoot(container, <App />).render(element) or remove the Suspense components from the server rendered components."),e.lanes=ze):Eg(n)?e.lanes=rs:e.lanes=Xr,null}function fI(e,n,a,s,c,p,f){if(a)if(n.flags&Qo){n.flags&=-257;var q=W_(new Error("There was an error while hydrating this Suspense boundary. Switched to client rendering."));return Xf(e,n,f,q)}else{if(n.memoizedState!==null)return n.child=e.child,n.flags|=yt,null;var K=s.children,I=s.fallback,se=dI(e,n,K,I,f),ge=n.child;return ge.memoizedState=av(f),n.memoizedState=rv,se}else{if(eq(),(n.mode&ot)===Ae)return Xf(e,n,f,null);if(Eg(c)){var y,_,S;{var x=gM(c);y=x.digest,_=x.message,S=x.stack}var A;_?A=new Error(_):A=new Error("The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering.");var P=W_(A,y,S);return Xf(e,n,f,P)}var B=Nr(f,e.childLanes);if(Oa||B){var F=lh();if(F!==null){var Y=xP(F,f);if(Y!==Un&&Y!==p.retryLane){p.retryLane=Y;var pe=Ut;jr(e,Y),An(F,e,Y,pe)}}Tv();var Pe=W_(new Error("This Suspense boundary received an update before it finished hydrating. This caused the boundary to switch to client rendering. The usual way to fix this is to wrap the original update in startTransition."));return Xf(e,n,f,Pe)}else if(Z0(c)){n.flags|=yt,n.child=e.child;var Te=NN.bind(null,e);return _M(c,Te),null}else{rq(n,c,p.treeContext);var lt=s.children,nt=iv(n,lt);return nt.flags|=Jo,nt}}}function OE(e,n,a){e.lanes=Xe(e.lanes,n);var s=e.alternate;s!==null&&(s.lanes=Xe(s.lanes,n)),Qg(e.return,n,a)}function hI(e,n,a){for(var s=n;s!==null;){if(s.tag===W){var c=s.memoizedState;c!==null&&OE(s,a,e)}else if(s.tag===ke)OE(s,a,e);else if(s.child!==null){s.child.return=s,s=s.child;continue}if(s===e)return;for(;s.sibling===null;){if(s.return===null||s.return===e)return;s=s.return}s.sibling.return=s.return,s=s.sibling}}function mI(e){for(var n=e,a=null;n!==null;){var s=n.alternate;s!==null&&jf(s)===null&&(a=n),n=n.sibling}return a}function yI(e){if(e!==void 0&&e!=="forwards"&&e!=="backwards"&&e!=="together"&&!Z_[e])if(Z_[e]=!0,typeof e=="string")switch(e.toLowerCase()){case"together":case"forwards":case"backwards":{d('"%s" is not a valid value for revealOrder on <SuspenseList />. Use lowercase "%s" instead.',e,e.toLowerCase());break}case"forward":case"backward":{d('"%s" is not a valid value for revealOrder on <SuspenseList />. React uses the -s suffix in the spelling. Use "%ss" instead.',e,e.toLowerCase());break}default:d('"%s" is not a supported revealOrder on <SuspenseList />. Did you mean "together", "forwards" or "backwards"?',e);break}else d('%s is not a supported value for revealOrder on <SuspenseList />. Did you mean "together", "forwards" or "backwards"?',e)}function gI(e,n){e!==void 0&&!Qf[e]&&(e!=="collapsed"&&e!=="hidden"?(Qf[e]=!0,d('"%s" is not a supported value for tail on <SuspenseList />. Did you mean "collapsed" or "hidden"?',e)):n!=="forwards"&&n!=="backwards"&&(Qf[e]=!0,d('<SuspenseList tail="%s" /> is only valid if revealOrder is "forwards" or "backwards". Did you mean to specify revealOrder="forwards"?',e)))}function PE(e,n){{var a=tt(e),s=!a&&typeof Kt(e)=="function";if(a||s){var c=a?"array":"iterable";return d("A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>",c,n,c),!1}}return!0}function _I(e,n){if((n==="forwards"||n==="backwards")&&e!==void 0&&e!==null&&e!==!1)if(tt(e)){for(var a=0;a<e.length;a++)if(!PE(e[a],a))return}else{var s=Kt(e);if(typeof s=="function"){var c=s.call(e);if(c)for(var p=c.next(),f=0;!p.done;p=c.next()){if(!PE(p.value,f))return;f++}}else d('A single row was passed to a <SuspenseList revealOrder="%s" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?',n)}}function sv(e,n,a,s,c){var p=e.memoizedState;p===null?e.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:s,tail:a,tailMode:c}:(p.isBackwards=n,p.rendering=null,p.renderingStartTime=0,p.last=s,p.tail=a,p.tailMode=c)}function AE(e,n,a){var s=n.pendingProps,c=s.revealOrder,p=s.tail,f=s.children;yI(c),gI(p,c),_I(f,c),yr(e,n,f,a);var y=ka.current,_=i_(y,Vu);if(_)y=o_(y,Vu),n.flags|=yt;else{var S=e!==null&&(e.flags&yt)!==qe;S&&hI(n,n.child,a),y=Dl(y)}if(mo(n,y),(n.mode&ot)===Ae)n.memoizedState=null;else switch(c){case"forwards":{var x=mI(n.child),A;x===null?(A=n.child,n.child=null):(A=x.sibling,x.sibling=null),sv(n,!1,A,x,p);break}case"backwards":{var P=null,B=n.child;for(n.child=null;B!==null;){var F=B.alternate;if(F!==null&&jf(F)===null){n.child=B;break}var Y=B.sibling;B.sibling=P,P=B,B=Y}sv(n,!0,P,null,p);break}case"together":{sv(n,!1,null,null,void 0);break}default:n.memoizedState=null}return n.child}function vI(e,n,a){n_(n,n.stateNode.containerInfo);var s=n.pendingProps;return e===null?n.child=Rl(n,null,s,a):yr(e,n,s,a),n.child}var LE=!1;function bI(e,n,a){var s=n.type,c=s._context,p=n.pendingProps,f=n.memoizedProps,y=p.value;{"value"in p||LE||(LE=!0,d("The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?"));var _=n.type.propTypes;_&&Ca(_,p,"prop","Context.Provider")}if(Rx(n,c,y),f!==null){var S=f.value;if(Fr(S,y)){if(f.children===p.children&&!of())return Pi(e,n,a)}else yq(n,c,a)}var x=p.children;return yr(e,n,x,a),n.child}var ME=!1;function wI(e,n,a){var s=n.type;s._context===void 0?s!==s.Consumer&&(ME||(ME=!0,d("Rendering <Context> directly is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?"))):s=s._context;var c=n.pendingProps,p=c.children;typeof p!="function"&&d("A context consumer was rendered with multiple children, or a child that isn't a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it."),kl(n,a);var f=wn(s);nu(n);var y;return nd.current=n,Qr(!0),y=p(f),Qr(!1),sl(),n.flags|=rl,yr(e,n,y,a),n.child}function id(){Oa=!0}function Jf(e,n){(n.mode&ot)===Ae&&e!==null&&(e.alternate=null,n.alternate=null,n.flags|=In)}function Pi(e,n,a){return e!==null&&(n.dependencies=e.dependencies),uE(),gd(n.lanes),Nr(a,n.childLanes)?(hq(e,n),n.child):null}function SI(e,n,a){{var s=n.return;if(s===null)throw new Error("Cannot swap the root fiber.");if(e.alternate=null,n.alternate=null,a.index=n.index,a.sibling=n.sibling,a.return=n.return,a.ref=n.ref,n===s.child)s.child=a;else{var c=s.child;if(c===null)throw new Error("Expected parent to have a child.");for(;c.sibling!==n;)if(c=c.sibling,c===null)throw new Error("Expected to find the previous sibling.");c.sibling=a}var p=s.deletions;return p===null?(s.deletions=[e],s.flags|=Ko):p.push(e),a.flags|=In,a}}function lv(e,n){var a=e.lanes;return!!Nr(a,n)}function xI(e,n,a){switch(n.tag){case b:TE(n),n.stateNode,Cl();break;case T:Lx(n);break;case g:{var s=n.type;Ja(s)&&lf(n);break}case E:n_(n,n.stateNode.containerInfo);break;case G:{var c=n.memoizedProps.value,p=n.type._context;Rx(n,p,c);break}case z:{var f=Nr(a,n.childLanes);f&&(n.flags|=ht);{var y=n.stateNode;y.effectDuration=0,y.passiveEffectDuration=0}}break;case W:{var _=n.memoizedState;if(_!==null){if(_.dehydrated!==null)return mo(n,Dl(ka.current)),n.flags|=yt,null;var S=n.child,x=S.childLanes;if(Nr(a,x))return jE(e,n,a);mo(n,Dl(ka.current));var A=Pi(e,n,a);return A!==null?A.sibling:null}else mo(n,Dl(ka.current));break}case ke:{var P=(e.flags&yt)!==qe,B=Nr(a,n.childLanes);if(P){if(B)return AE(e,n,a);n.flags|=yt}var F=n.memoizedState;if(F!==null&&(F.rendering=null,F.tail=null,F.lastEffect=null),mo(n,ka.current),B)break;return null}case N:case X:return n.lanes=ie,EE(e,n,a)}return Pi(e,n,a)}function qE(e,n,a){if(n._debugNeedsRemount&&e!==null)return SI(e,n,Nv(n.type,n.key,n.pendingProps,n._debugOwner||null,n.mode,n.lanes));if(e!==null){var s=e.memoizedProps,c=n.pendingProps;if(s!==c||of()||n.type!==e.type)Oa=!0;else{var p=lv(e,a);if(!p&&(n.flags&yt)===qe)return Oa=!1,xI(e,n,a);(e.flags&fy)!==qe?Oa=!0:Oa=!1}}else if(Oa=!1,Gn()&&YM(n)){var f=n.index,y=KM();ux(n,y,f)}switch(n.lanes=ie,n.tag){case w:return aI(e,n,n.type,a);case ve:{var _=n.elementType;return nI(e,n,_,a)}case m:{var S=n.type,x=n.pendingProps,A=n.elementType===S?x:Da(S,x);return ev(e,n,S,A,a)}case g:{var P=n.type,B=n.pendingProps,F=n.elementType===P?B:Da(P,B);return RE(e,n,P,F,a)}case b:return Zq(e,n,a);case T:return eI(e,n,a);case O:return tI(e,n);case W:return jE(e,n,a);case E:return vI(e,n,a);case $:{var Y=n.type,pe=n.pendingProps,Pe=n.elementType===Y?pe:Da(Y,pe);return wE(e,n,Y,Pe,a)}case R:return Qq(e,n,a);case L:return Xq(e,n,a);case z:return Jq(e,n,a);case G:return bI(e,n,a);case M:return wI(e,n,a);case ae:{var Te=n.type,lt=n.pendingProps,nt=Da(Te,lt);if(n.type!==n.elementType){var q=Te.propTypes;q&&Ca(q,nt,"prop",ft(Te))}return nt=Da(Te.type,nt),SE(e,n,Te,nt,a)}case Z:return xE(e,n,n.type,n.pendingProps,a);case we:{var K=n.type,I=n.pendingProps,se=n.elementType===K?I:Da(K,I);return rI(e,n,K,se,a)}case ke:return AE(e,n,a);case De:break;case N:return EE(e,n,a)}throw new Error("Unknown unit of work tag ("+n.tag+"). This error is likely caused by a bug in React. Please file an issue.")}function ql(e){e.flags|=ht}function IE(e){e.flags|=Xo,e.flags|=hy}var NE,cv,BE,UE;NE=function(e,n,a,s){for(var c=n.child;c!==null;){if(c.tag===T||c.tag===O)GL(e,c.stateNode);else if(c.tag!==E){if(c.child!==null){c.child.return=c,c=c.child;continue}}if(c===n)return;for(;c.sibling===null;){if(c.return===null||c.return===n)return;c=c.return}c.sibling.return=c.return,c=c.sibling}},cv=function(e,n){},BE=function(e,n,a,s,c){var p=e.memoizedProps;if(p!==s){var f=n.stateNode,y=r_(),_=VL(f,a,p,s,c,y);n.updateQueue=_,_&&ql(n)}},UE=function(e,n,a,s){a!==s&&ql(n)};function od(e,n){if(!Gn())switch(e.tailMode){case"hidden":{for(var a=e.tail,s=null;a!==null;)a.alternate!==null&&(s=a),a=a.sibling;s===null?e.tail=null:s.sibling=null;break}case"collapsed":{for(var c=e.tail,p=null;c!==null;)c.alternate!==null&&(p=c),c=c.sibling;p===null?!n&&e.tail!==null?e.tail.sibling=null:e.tail=null:p.sibling=null;break}}}function Vn(e){var n=e.alternate!==null&&e.alternate.child===e.child,a=ie,s=qe;if(n){if((e.mode&Et)!==Ae){for(var _=e.selfBaseDuration,S=e.child;S!==null;)a=Xe(a,Xe(S.lanes,S.childLanes)),s|=S.subtreeFlags&Si,s|=S.flags&Si,_+=S.treeBaseDuration,S=S.sibling;e.treeBaseDuration=_}else for(var x=e.child;x!==null;)a=Xe(a,Xe(x.lanes,x.childLanes)),s|=x.subtreeFlags&Si,s|=x.flags&Si,x.return=e,x=x.sibling;e.subtreeFlags|=s}else{if((e.mode&Et)!==Ae){for(var c=e.actualDuration,p=e.selfBaseDuration,f=e.child;f!==null;)a=Xe(a,Xe(f.lanes,f.childLanes)),s|=f.subtreeFlags,s|=f.flags,c+=f.actualDuration,p+=f.treeBaseDuration,f=f.sibling;e.actualDuration=c,e.treeBaseDuration=p}else for(var y=e.child;y!==null;)a=Xe(a,Xe(y.lanes,y.childLanes)),s|=y.subtreeFlags,s|=y.flags,y.return=e,y=y.sibling;e.subtreeFlags|=s}return e.childLanes=a,n}function EI(e,n,a){if(lq()&&(n.mode&ot)!==Ae&&(n.flags&yt)===qe)return gx(n),Cl(),n.flags|=Qo|xp|Sa,!1;var s=ff(n);if(a!==null&&a.dehydrated!==null)if(e===null){if(!s)throw new Error("A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.");if(oq(n),Vn(n),(n.mode&Et)!==Ae){var c=a!==null;if(c){var p=n.child;p!==null&&(n.treeBaseDuration-=p.treeBaseDuration)}}return!1}else{if(Cl(),(n.flags&yt)===qe&&(n.memoizedState=null),n.flags|=ht,Vn(n),(n.mode&Et)!==Ae){var f=a!==null;if(f){var y=n.child;y!==null&&(n.treeBaseDuration-=y.treeBaseDuration)}}return!1}else return _x(),!0}function FE(e,n,a){var s=n.pendingProps;switch(Mg(n),n.tag){case w:case ve:case Z:case m:case $:case R:case L:case z:case M:case ae:return Vn(n),null;case g:{var c=n.type;return Ja(c)&&sf(n),Vn(n),null}case b:{var p=n.stateNode;if(jl(n),Og(n),l_(),p.pendingContext&&(p.context=p.pendingContext,p.pendingContext=null),e===null||e.child===null){var f=ff(n);if(f)ql(n);else if(e!==null){var y=e.memoizedState;(!y.isDehydrated||(n.flags&Qo)!==qe)&&(n.flags|=al,_x())}}return cv(e,n),Vn(n),null}case T:{a_(n);var _=Ax(),S=n.type;if(e!==null&&n.stateNode!=null)BE(e,n,S,s,_),e.ref!==n.ref&&IE(n);else{if(!s){if(n.stateNode===null)throw new Error("We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.");return Vn(n),null}var x=r_(),A=ff(n);if(A)aq(n,_,x)&&ql(n);else{var P=HL(S,s,_,x,n);NE(P,n,!1,!1),n.stateNode=P,WL(P,S,s,_)&&ql(n)}n.ref!==null&&IE(n)}return Vn(n),null}case O:{var B=s;if(e&&n.stateNode!=null){var F=e.memoizedProps;UE(e,n,F,B)}else{if(typeof B!="string"&&n.stateNode===null)throw new Error("We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.");var Y=Ax(),pe=r_(),Pe=ff(n);Pe?iq(n)&&ql(n):n.stateNode=YL(B,Y,pe,n)}return Vn(n),null}case W:{Ol(n);var Te=n.memoizedState;if(e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){var lt=EI(e,n,Te);if(!lt)return n.flags&Sa?n:null}if((n.flags&yt)!==qe)return n.lanes=a,(n.mode&Et)!==Ae&&A_(n),n;var nt=Te!==null,q=e!==null&&e.memoizedState!==null;if(nt!==q&&nt){var K=n.child;if(K.flags|=Zo,(n.mode&ot)!==Ae){var I=e===null&&(n.memoizedProps.unstable_avoidThisFallback!==!0||!0);I||i_(ka.current,qx)?CN():Tv()}}var se=n.updateQueue;if(se!==null&&(n.flags|=ht),Vn(n),(n.mode&Et)!==Ae&&nt){var ge=n.child;ge!==null&&(n.treeBaseDuration-=ge.treeBaseDuration)}return null}case E:return jl(n),cv(e,n),e===null&&FM(n.stateNode.containerInfo),Vn(n),null;case G:var he=n.type._context;return Kg(he,n),Vn(n),null;case we:{var Ie=n.type;return Ja(Ie)&&sf(n),Vn(n),null}case ke:{Ol(n);var Ge=n.memoizedState;if(Ge===null)return Vn(n),null;var Rt=(n.flags&yt)!==qe,ut=Ge.rendering;if(ut===null)if(Rt)od(Ge,!1);else{var fn=TN()&&(e===null||(e.flags&yt)===qe);if(!fn)for(var dt=n.child;dt!==null;){var ln=jf(dt);if(ln!==null){Rt=!0,n.flags|=yt,od(Ge,!1);var or=ln.updateQueue;return or!==null&&(n.updateQueue=or,n.flags|=ht),n.subtreeFlags=qe,mq(n,a),mo(n,o_(ka.current,Vu)),n.child}dt=dt.sibling}Ge.tail!==null&&Nn()>lC()&&(n.flags|=yt,Rt=!0,od(Ge,!1),n.lanes=US)}else{if(!Rt){var Jn=jf(ut);if(Jn!==null){n.flags|=yt,Rt=!0;var Hr=Jn.updateQueue;if(Hr!==null&&(n.updateQueue=Hr,n.flags|=ht),od(Ge,!0),Ge.tail===null&&Ge.tailMode==="hidden"&&!ut.alternate&&!Gn())return Vn(n),null}else Nn()*2-Ge.renderingStartTime>lC()&&a!==Xr&&(n.flags|=yt,Rt=!0,od(Ge,!1),n.lanes=US)}if(Ge.isBackwards)ut.sibling=n.child,n.child=ut;else{var vr=Ge.last;vr!==null?vr.sibling=ut:n.child=ut,Ge.last=ut}}if(Ge.tail!==null){var br=Ge.tail;Ge.rendering=br,Ge.tail=br.sibling,Ge.renderingStartTime=Nn(),br.sibling=null;var sr=ka.current;return Rt?sr=o_(sr,Vu):sr=Dl(sr),mo(n,sr),br}return Vn(n),null}case De:break;case N:case X:{Rv(n);var Ii=n.memoizedState,Hl=Ii!==null;if(e!==null){var Sd=e.memoizedState,oi=Sd!==null;oi!==Hl&&(n.flags|=Zo)}return!Hl||(n.mode&ot)===Ae?Vn(n):Nr(ii,Xr)&&(Vn(n),n.subtreeFlags&(In|ht)&&(n.flags|=Zo)),null}case ne:return null;case ce:return null}throw new Error("Unknown unit of work tag ("+n.tag+"). This error is likely caused by a bug in React. Please file an issue.")}function CI(e,n,a){switch(Mg(n),n.tag){case g:{var s=n.type;Ja(s)&&sf(n);var c=n.flags;return c&Sa?(n.flags=c&-65537|yt,(n.mode&Et)!==Ae&&A_(n),n):null}case b:{n.stateNode,jl(n),Og(n),l_();var p=n.flags;return(p&Sa)!==qe&&(p&yt)===qe?(n.flags=p&-65537|yt,n):null}case T:return a_(n),null;case W:{Ol(n);var f=n.memoizedState;if(f!==null&&f.dehydrated!==null){if(n.alternate===null)throw new Error("Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.");Cl()}var y=n.flags;return y&Sa?(n.flags=y&-65537|yt,(n.mode&Et)!==Ae&&A_(n),n):null}case ke:return Ol(n),null;case E:return jl(n),null;case G:var _=n.type._context;return Kg(_,n),null;case N:case X:return Rv(n),null;case ne:return null;default:return null}}function zE(e,n,a){switch(Mg(n),n.tag){case g:{var s=n.type.childContextTypes;s!=null&&sf(n);break}case b:{n.stateNode,jl(n),Og(n),l_();break}case T:{a_(n);break}case E:jl(n);break;case W:Ol(n);break;case ke:Ol(n);break;case G:var c=n.type._context;Kg(c,n);break;case N:case X:Rv(n);break}}var $E=null;$E=new Set;var Zf=!1,Yn=!1,RI=typeof WeakSet=="function"?WeakSet:Set,xe=null,Il=null,Nl=null;function TI(e){uy(null,function(){throw e}),dy()}var kI=function(e,n){if(n.props=e.memoizedProps,n.state=e.memoizedState,e.mode&Et)try{ri(),n.componentWillUnmount()}finally{ni(e)}else n.componentWillUnmount()};function HE(e,n){try{_o(Tn,e)}catch(a){At(e,n,a)}}function uv(e,n,a){try{kI(e,a)}catch(s){At(e,n,s)}}function jI(e,n,a){try{a.componentDidMount()}catch(s){At(e,n,s)}}function GE(e,n){try{VE(e)}catch(a){At(e,n,a)}}function Bl(e,n){var a=e.ref;if(a!==null)if(typeof a=="function"){var s;try{if(Ze&&pt&&e.mode&Et)try{ri(),s=a(null)}finally{ni(e)}else s=a(null)}catch(c){At(e,n,c)}typeof s=="function"&&d("Unexpected return value from a callback ref in %s. A callback ref should not return a function.",We(e))}else a.current=null}function eh(e,n,a){try{a()}catch(s){At(e,n,s)}}var WE=!1;function DI(e,n){zL(e.containerInfo),xe=n,OI();var a=WE;return WE=!1,a}function OI(){for(;xe!==null;){var e=xe,n=e.child;(e.subtreeFlags&gy)!==qe&&n!==null?(n.return=e,xe=n):PI()}}function PI(){for(;xe!==null;){var e=xe;Qt(e);try{AI(e)}catch(a){At(e,e.return,a)}qn();var n=e.sibling;if(n!==null){n.return=e.return,xe=n;return}xe=e.return}}function AI(e){var n=e.alternate,a=e.flags;if((a&al)!==qe){switch(Qt(e),e.tag){case m:case $:case Z:break;case g:{if(n!==null){var s=n.memoizedProps,c=n.memoizedState,p=e.stateNode;e.type===e.elementType&&!vs&&(p.props!==e.memoizedProps&&d("Expected %s props to match memoized props before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",We(e)||"instance"),p.state!==e.memoizedState&&d("Expected %s state to match memoized state before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",We(e)||"instance"));var f=p.getSnapshotBeforeUpdate(e.elementType===e.type?s:Da(e.type,s),c);{var y=$E;f===void 0&&!y.has(e.type)&&(y.add(e.type),d("%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.",We(e)))}p.__reactInternalSnapshotBeforeUpdate=f}break}case b:{{var _=e.stateNode;fM(_.containerInfo)}break}case T:case O:case E:case we:break;default:throw new Error("This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.")}qn()}}function Pa(e,n,a){var s=n.updateQueue,c=s!==null?s.lastEffect:null;if(c!==null){var p=c.next,f=p;do{if((f.tag&e)===e){var y=f.destroy;f.destroy=void 0,y!==void 0&&((e&Wn)!==Dr?YO(n):(e&Tn)!==Dr&&MS(n),(e&Za)!==Dr&&vd(!0),eh(n,a,y),(e&Za)!==Dr&&vd(!1),(e&Wn)!==Dr?KO():(e&Tn)!==Dr&&qS())}f=f.next}while(f!==p)}}function _o(e,n){var a=n.updateQueue,s=a!==null?a.lastEffect:null;if(s!==null){var c=s.next,p=c;do{if((p.tag&e)===e){(e&Wn)!==Dr?WO(n):(e&Tn)!==Dr&&QO(n);var f=p.create;(e&Za)!==Dr&&vd(!0),p.destroy=f(),(e&Za)!==Dr&&vd(!1),(e&Wn)!==Dr?VO():(e&Tn)!==Dr&&XO();{var y=p.destroy;if(y!==void 0&&typeof y!="function"){var _=void 0;(p.tag&Tn)!==qe?_="useLayoutEffect":(p.tag&Za)!==qe?_="useInsertionEffect":_="useEffect";var S=void 0;y===null?S=" You returned null. If your effect does not require clean up, return undefined (or nothing).":typeof y.then=="function"?S=`
161
162It looks like you wrote `+_+`(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately:
163
164`+_+`(() => {
165  async function fetchData() {
166    // You can await here
167    const response = await MyAPI.getData(someId);
168    // ...
169  }
170  fetchData();
171}, [someId]); // Or [] if effect doesn't need props or state
172
173Learn more about data fetching with Hooks: https://reactjs.org/link/hooks-data-fetching`:S=" You returned: "+y,d("%s must not return anything besides a function, which is used for clean-up.%s",_,S)}}}p=p.next}while(p!==c)}}function LI(e,n){if((n.flags&ht)!==qe)switch(n.tag){case z:{var a=n.stateNode.passiveEffectDuration,s=n.memoizedProps,c=s.id,p=s.onPostCommit,f=lE(),y=n.alternate===null?"mount":"update";sE()&&(y="nested-update"),typeof p=="function"&&p(c,y,a,f);var _=n.return;e:for(;_!==null;){switch(_.tag){case b:var S=_.stateNode;S.passiveEffectDuration+=a;break e;case z:var x=_.stateNode;x.passiveEffectDuration+=a;break e}_=_.return}break}}}function MI(e,n,a,s){if((a.flags&tu)!==qe)switch(a.tag){case m:case $:case Z:{if(!Yn)if(a.mode&Et)try{ri(),_o(Tn|Rn,a)}finally{ni(a)}else _o(Tn|Rn,a);break}case g:{var c=a.stateNode;if(a.flags&ht&&!Yn)if(n===null)if(a.type===a.elementType&&!vs&&(c.props!==a.memoizedProps&&d("Expected %s props to match memoized props before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",We(a)||"instance"),c.state!==a.memoizedState&&d("Expected %s state to match memoized state before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",We(a)||"instance")),a.mode&Et)try{ri(),c.componentDidMount()}finally{ni(a)}else c.componentDidMount();else{var p=a.elementType===a.type?n.memoizedProps:Da(a.type,n.memoizedProps),f=n.memoizedState;if(a.type===a.elementType&&!vs&&(c.props!==a.memoizedProps&&d("Expected %s props to match memoized props before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",We(a)||"instance"),c.state!==a.memoizedState&&d("Expected %s state to match memoized state before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",We(a)||"instance")),a.mode&Et)try{ri(),c.componentDidUpdate(p,f,c.__reactInternalSnapshotBeforeUpdate)}finally{ni(a)}else c.componentDidUpdate(p,f,c.__reactInternalSnapshotBeforeUpdate)}var y=a.updateQueue;y!==null&&(a.type===a.elementType&&!vs&&(c.props!==a.memoizedProps&&d("Expected %s props to match memoized props before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",We(a)||"instance"),c.state!==a.memoizedState&&d("Expected %s state to match memoized state before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",We(a)||"instance")),Px(a,y,c));break}case b:{var _=a.updateQueue;if(_!==null){var S=null;if(a.child!==null)switch(a.child.tag){case T:S=a.child.stateNode;break;case g:S=a.child.stateNode;break}Px(a,_,S)}break}case T:{var x=a.stateNode;if(n===null&&a.flags&ht){var A=a.type,P=a.memoizedProps;ZL(x,A,P)}break}case O:break;case E:break;case z:{{var B=a.memoizedProps,F=B.onCommit,Y=B.onRender,pe=a.stateNode.effectDuration,Pe=lE(),Te=n===null?"mount":"update";sE()&&(Te="nested-update"),typeof Y=="function"&&Y(a.memoizedProps.id,Te,a.actualDuration,a.treeBaseDuration,a.actualStartTime,Pe);{typeof F=="function"&&F(a.memoizedProps.id,Te,pe,Pe),PN(a);var lt=a.return;e:for(;lt!==null;){switch(lt.tag){case b:var nt=lt.stateNode;nt.effectDuration+=pe;break e;case z:var q=lt.stateNode;q.effectDuration+=pe;break e}lt=lt.return}}}break}case W:{$I(e,a);break}case ke:case we:case De:case N:case X:case ce:break;default:throw new Error("This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.")}Yn||a.flags&Xo&&VE(a)}function qI(e){switch(e.tag){case m:case $:case Z:{if(e.mode&Et)try{ri(),HE(e,e.return)}finally{ni(e)}else HE(e,e.return);break}case g:{var n=e.stateNode;typeof n.componentDidMount=="function"&&jI(e,e.return,n),GE(e,e.return);break}case T:{GE(e,e.return);break}}}function II(e,n){for(var a=null,s=e;;){if(s.tag===T){if(a===null){a=s;try{var c=s.stateNode;n?cM(c):dM(s.stateNode,s.memoizedProps)}catch(f){At(e,e.return,f)}}}else if(s.tag===O){if(a===null)try{var p=s.stateNode;n?uM(p):pM(p,s.memoizedProps)}catch(f){At(e,e.return,f)}}else if(!((s.tag===N||s.tag===X)&&s.memoizedState!==null&&s!==e)){if(s.child!==null){s.child.return=s,s=s.child;continue}}if(s===e)return;for(;s.sibling===null;){if(s.return===null||s.return===e)return;a===s&&(a=null),s=s.return}a===s&&(a=null),s.sibling.return=s.return,s=s.sibling}}function VE(e){var n=e.ref;if(n!==null){var a=e.stateNode,s;switch(e.tag){case T:s=a;break;default:s=a}if(typeof n=="function"){var c;if(e.mode&Et)try{ri(),c=n(s)}finally{ni(e)}else c=n(s);typeof c=="function"&&d("Unexpected return value from a callback ref in %s. A callback ref should not return a function.",We(e))}else n.hasOwnProperty("current")||d("Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().",We(e)),n.current=s}}function NI(e){var n=e.alternate;n!==null&&(n.return=null),e.return=null}function YE(e){var n=e.alternate;n!==null&&(e.alternate=null,YE(n));{if(e.child=null,e.deletions=null,e.sibling=null,e.tag===T){var a=e.stateNode;a!==null&&HM(a)}e.stateNode=null,e._debugOwner=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}}function BI(e){for(var n=e.return;n!==null;){if(KE(n))return n;n=n.return}throw new Error("Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.")}function KE(e){return e.tag===T||e.tag===b||e.tag===E}function QE(e){var n=e;e:for(;;){for(;n.sibling===null;){if(n.return===null||KE(n.return))return null;n=n.return}for(n.sibling.return=n.return,n=n.sibling;n.tag!==T&&n.tag!==O&&n.tag!==je;){if(n.flags&In||n.child===null||n.tag===E)continue e;n.child.return=n,n=n.child}if(!(n.flags&In))return n.stateNode}}function UI(e){var n=BI(e);switch(n.tag){case T:{var a=n.stateNode;n.flags&Sp&&(J0(a),n.flags&=-33);var s=QE(e);pv(e,s,a);break}case b:case E:{var c=n.stateNode.containerInfo,p=QE(e);dv(e,p,c);break}default:throw new Error("Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue.")}}function dv(e,n,a){var s=e.tag,c=s===T||s===O;if(c){var p=e.stateNode;n?iM(a,p,n):rM(a,p)}else if(s!==E){var f=e.child;if(f!==null){dv(f,n,a);for(var y=f.sibling;y!==null;)dv(y,n,a),y=y.sibling}}}function pv(e,n,a){var s=e.tag,c=s===T||s===O;if(c){var p=e.stateNode;n?aM(a,p,n):nM(a,p)}else if(s!==E){var f=e.child;if(f!==null){pv(f,n,a);for(var y=f.sibling;y!==null;)pv(y,n,a),y=y.sibling}}}var Kn=null,Aa=!1;function FI(e,n,a){{var s=n;e:for(;s!==null;){switch(s.tag){case T:{Kn=s.stateNode,Aa=!1;break e}case b:{Kn=s.stateNode.containerInfo,Aa=!0;break e}case E:{Kn=s.stateNode.containerInfo,Aa=!0;break e}}s=s.return}if(Kn===null)throw new Error("Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.");XE(e,n,a),Kn=null,Aa=!1}NI(a)}function vo(e,n,a){for(var s=a.child;s!==null;)XE(e,n,s),s=s.sibling}function XE(e,n,a){switch(zO(a),a.tag){case T:Yn||Bl(a,n);case O:{{var s=Kn,c=Aa;Kn=null,vo(e,n,a),Kn=s,Aa=c,Kn!==null&&(Aa?sM(Kn,a.stateNode):oM(Kn,a.stateNode))}return}case je:{Kn!==null&&(Aa?lM(Kn,a.stateNode):xg(Kn,a.stateNode));return}case E:{{var p=Kn,f=Aa;Kn=a.stateNode.containerInfo,Aa=!0,vo(e,n,a),Kn=p,Aa=f}return}case m:case $:case ae:case Z:{if(!Yn){var y=a.updateQueue;if(y!==null){var _=y.lastEffect;if(_!==null){var S=_.next,x=S;do{var A=x,P=A.destroy,B=A.tag;P!==void 0&&((B&Za)!==Dr?eh(a,n,P):(B&Tn)!==Dr&&(MS(a),a.mode&Et?(ri(),eh(a,n,P),ni(a)):eh(a,n,P),qS())),x=x.next}while(x!==S)}}}vo(e,n,a);return}case g:{if(!Yn){Bl(a,n);var F=a.stateNode;typeof F.componentWillUnmount=="function"&&uv(a,n,F)}vo(e,n,a);return}case De:{vo(e,n,a);return}case N:{if(a.mode&ot){var Y=Yn;Yn=Y||a.memoizedState!==null,vo(e,n,a),Yn=Y}else vo(e,n,a);break}default:{vo(e,n,a);return}}}function zI(e){e.memoizedState}function $I(e,n){var a=n.memoizedState;if(a===null){var s=n.alternate;if(s!==null){var c=s.memoizedState;if(c!==null){var p=c.dehydrated;p!==null&&TM(p)}}}}function JE(e){var n=e.updateQueue;if(n!==null){e.updateQueue=null;var a=e.stateNode;a===null&&(a=e.stateNode=new RI),n.forEach(function(s){var c=BN.bind(null,e,s);if(!a.has(s)){if(a.add(s),xa)if(Il!==null&&Nl!==null)_d(Nl,Il);else throw Error("Expected finished root and lanes to be set. This is a bug in React.");s.then(c,c)}})}}function HI(e,n,a){Il=a,Nl=e,Qt(n),ZE(n,e),Qt(n),Il=null,Nl=null}function La(e,n,a){var s=n.deletions;if(s!==null)for(var c=0;c<s.length;c++){var p=s[c];try{FI(e,n,p)}catch(_){At(p,n,_)}}var f=dp();if(n.subtreeFlags&_y)for(var y=n.child;y!==null;)Qt(y),ZE(y,e),y=y.sibling;Qt(f)}function ZE(e,n,a){var s=e.alternate,c=e.flags;switch(e.tag){case m:case $:case ae:case Z:{if(La(n,e),ai(e),c&ht){try{Pa(Za|Rn,e,e.return),_o(Za|Rn,e)}catch(Ie){At(e,e.return,Ie)}if(e.mode&Et){try{ri(),Pa(Tn|Rn,e,e.return)}catch(Ie){At(e,e.return,Ie)}ni(e)}else try{Pa(Tn|Rn,e,e.return)}catch(Ie){At(e,e.return,Ie)}}return}case g:{La(n,e),ai(e),c&Xo&&s!==null&&Bl(s,s.return);return}case T:{La(n,e),ai(e),c&Xo&&s!==null&&Bl(s,s.return);{if(e.flags&Sp){var p=e.stateNode;try{J0(p)}catch(Ie){At(e,e.return,Ie)}}if(c&ht){var f=e.stateNode;if(f!=null){var y=e.memoizedProps,_=s!==null?s.memoizedProps:y,S=e.type,x=e.updateQueue;if(e.updateQueue=null,x!==null)try{eM(f,x,S,_,y,e)}catch(Ie){At(e,e.return,Ie)}}}}return}case O:{if(La(n,e),ai(e),c&ht){if(e.stateNode===null)throw new Error("This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue.");var A=e.stateNode,P=e.memoizedProps,B=s!==null?s.memoizedProps:P;try{tM(A,B,P)}catch(Ie){At(e,e.return,Ie)}}return}case b:{if(La(n,e),ai(e),c&ht&&s!==null){var F=s.memoizedState;if(F.isDehydrated)try{RM(n.containerInfo)}catch(Ie){At(e,e.return,Ie)}}return}case E:{La(n,e),ai(e);return}case W:{La(n,e),ai(e);var Y=e.child;if(Y.flags&Zo){var pe=Y.stateNode,Pe=Y.memoizedState,Te=Pe!==null;if(pe.isHidden=Te,Te){var lt=Y.alternate!==null&&Y.alternate.memoizedState!==null;lt||EN()}}if(c&ht){try{zI(e)}catch(Ie){At(e,e.return,Ie)}JE(e)}return}case N:{var nt=s!==null&&s.memoizedState!==null;if(e.mode&ot){var q=Yn;Yn=q||nt,La(n,e),Yn=q}else La(n,e);if(ai(e),c&Zo){var K=e.stateNode,I=e.memoizedState,se=I!==null,ge=e;if(K.isHidden=se,se&&!nt&&(ge.mode&ot)!==Ae){xe=ge;for(var he=ge.child;he!==null;)xe=he,WI(he),he=he.sibling}II(ge,se)}return}case ke:{La(n,e),ai(e),c&ht&&JE(e);return}case De:return;default:{La(n,e),ai(e);return}}}function ai(e){var n=e.flags;if(n&In){try{UI(e)}catch(a){At(e,e.return,a)}e.flags&=-3}n&Jo&&(e.flags&=-4097)}function GI(e,n,a){Il=a,Nl=n,xe=e,eC(e,n,a),Il=null,Nl=null}function eC(e,n,a){for(var s=(e.mode&ot)!==Ae;xe!==null;){var c=xe,p=c.child;if(c.tag===N&&s){var f=c.memoizedState!==null,y=f||Zf;if(y){fv(e,n,a);continue}else{var _=c.alternate,S=_!==null&&_.memoizedState!==null,x=S||Yn,A=Zf,P=Yn;Zf=y,Yn=x,Yn&&!P&&(xe=c,VI(c));for(var B=p;B!==null;)xe=B,eC(B,n,a),B=B.sibling;xe=c,Zf=A,Yn=P,fv(e,n,a);continue}}(c.subtreeFlags&tu)!==qe&&p!==null?(p.return=c,xe=p):fv(e,n,a)}}function fv(e,n,a){for(;xe!==null;){var s=xe;if((s.flags&tu)!==qe){var c=s.alternate;Qt(s);try{MI(n,c,s,a)}catch(f){At(s,s.return,f)}qn()}if(s===e){xe=null;return}var p=s.sibling;if(p!==null){p.return=s.return,xe=p;return}xe=s.return}}function WI(e){for(;xe!==null;){var n=xe,a=n.child;switch(n.tag){case m:case $:case ae:case Z:{if(n.mode&Et)try{ri(),Pa(Tn,n,n.return)}finally{ni(n)}else Pa(Tn,n,n.return);break}case g:{Bl(n,n.return);var s=n.stateNode;typeof s.componentWillUnmount=="function"&&uv(n,n.return,s);break}case T:{Bl(n,n.return);break}case N:{var c=n.memoizedState!==null;if(c){tC(e);continue}break}}a!==null?(a.return=n,xe=a):tC(e)}}function tC(e){for(;xe!==null;){var n=xe;if(n===e){xe=null;return}var a=n.sibling;if(a!==null){a.return=n.return,xe=a;return}xe=n.return}}function VI(e){for(;xe!==null;){var n=xe,a=n.child;if(n.tag===N){var s=n.memoizedState!==null;if(s){nC(e);continue}}a!==null?(a.return=n,xe=a):nC(e)}}function nC(e){for(;xe!==null;){var n=xe;Qt(n);try{qI(n)}catch(s){At(n,n.return,s)}if(qn(),n===e){xe=null;return}var a=n.sibling;if(a!==null){a.return=n.return,xe=a;return}xe=n.return}}function YI(e,n,a,s){xe=n,KI(n,e,a,s)}function KI(e,n,a,s){for(;xe!==null;){var c=xe,p=c.child;(c.subtreeFlags&il)!==qe&&p!==null?(p.return=c,xe=p):QI(e,n,a,s)}}function QI(e,n,a,s){for(;xe!==null;){var c=xe;if((c.flags&Zi)!==qe){Qt(c);try{XI(n,c,a,s)}catch(f){At(c,c.return,f)}qn()}if(c===e){xe=null;return}var p=c.sibling;if(p!==null){p.return=c.return,xe=p;return}xe=c.return}}function XI(e,n,a,s){switch(n.tag){case m:case $:case Z:{if(n.mode&Et){P_();try{_o(Wn|Rn,n)}finally{O_(n)}}else _o(Wn|Rn,n);break}}}function JI(e){xe=e,ZI()}function ZI(){for(;xe!==null;){var e=xe,n=e.child;if((xe.flags&Ko)!==qe){var a=e.deletions;if(a!==null){for(var s=0;s<a.length;s++){var c=a[s];xe=c,nN(c,e)}{var p=e.alternate;if(p!==null){var f=p.child;if(f!==null){p.child=null;do{var y=f.sibling;f.sibling=null,f=y}while(f!==null)}}}xe=e}}(e.subtreeFlags&il)!==qe&&n!==null?(n.return=e,xe=n):eN()}}function eN(){for(;xe!==null;){var e=xe;(e.flags&Zi)!==qe&&(Qt(e),tN(e),qn());var n=e.sibling;if(n!==null){n.return=e.return,xe=n;return}xe=e.return}}function tN(e){switch(e.tag){case m:case $:case Z:{e.mode&Et?(P_(),Pa(Wn|Rn,e,e.return),O_(e)):Pa(Wn|Rn,e,e.return);break}}}function nN(e,n){for(;xe!==null;){var a=xe;Qt(a),aN(a,n),qn();var s=a.child;s!==null?(s.return=a,xe=s):rN(e)}}function rN(e){for(;xe!==null;){var n=xe,a=n.sibling,s=n.return;if(YE(n),n===e){xe=null;return}if(a!==null){a.return=s,xe=a;return}xe=s}}function aN(e,n){switch(e.tag){case m:case $:case Z:{e.mode&Et?(P_(),Pa(Wn,e,n),O_(e)):Pa(Wn,e,n);break}}}function iN(e){switch(e.tag){case m:case $:case Z:{try{_o(Tn|Rn,e)}catch(a){At(e,e.return,a)}break}case g:{var n=e.stateNode;try{n.componentDidMount()}catch(a){At(e,e.return,a)}break}}}function oN(e){switch(e.tag){case m:case $:case Z:{try{_o(Wn|Rn,e)}catch(n){At(e,e.return,n)}break}}}function sN(e){switch(e.tag){case m:case $:case Z:{try{Pa(Tn|Rn,e,e.return)}catch(a){At(e,e.return,a)}break}case g:{var n=e.stateNode;typeof n.componentWillUnmount=="function"&&uv(e,e.return,n);break}}}function lN(e){switch(e.tag){case m:case $:case Z:try{Pa(Wn|Rn,e,e.return)}catch(n){At(e,e.return,n)}}}if(typeof Symbol=="function"&&Symbol.for){var sd=Symbol.for;sd("selector.component"),sd("selector.has_pseudo_class"),sd("selector.role"),sd("selector.test_id"),sd("selector.text")}var cN=[];function uN(){cN.forEach(function(e){return e()})}var dN=i.ReactCurrentActQueue;function pN(e){{var n=typeof IS_REACT_ACT_ENVIRONMENT<"u"?IS_REACT_ACT_ENVIRONMENT:void 0,a=typeof jest<"u";return a&&n!==!1}}function rC(){{var e=typeof IS_REACT_ACT_ENVIRONMENT<"u"?IS_REACT_ACT_ENVIRONMENT:void 0;return!e&&dN.current!==null&&d("The current testing environment is not configured to support act(...)"),e}}var fN=Math.ceil,hv=i.ReactCurrentDispatcher,mv=i.ReactCurrentOwner,Qn=i.ReactCurrentBatchConfig,Ma=i.ReactCurrentActQueue,Dn=0,aC=1,Xn=2,ra=4,Ai=0,ld=1,bs=2,th=3,cd=4,iC=5,yv=6,st=Dn,gr=null,on=null,On=ie,ii=ie,gv=lo(ie),Pn=Ai,ud=null,nh=ie,dd=ie,rh=ie,pd=null,Or=null,_v=0,oC=500,sC=1/0,hN=500,Li=null;function fd(){sC=Nn()+hN}function lC(){return sC}var ah=!1,vv=null,Ul=null,ws=!1,bo=null,hd=ie,bv=[],wv=null,mN=50,md=0,Sv=null,xv=!1,ih=!1,yN=50,Fl=0,oh=null,yd=Ut,sh=ie,cC=!1;function lh(){return gr}function _r(){return(st&(Xn|ra))!==Dn?Nn():(yd!==Ut||(yd=Nn()),yd)}function wo(e){var n=e.mode;if((n&ot)===Ae)return ze;if((st&Xn)!==Dn&&On!==ie)return lu(On);var a=dq()!==uq;if(a){if(Qn.transition!==null){var s=Qn.transition;s._updatedFibers||(s._updatedFibers=new Set),s._updatedFibers.add(e)}return sh===Un&&(sh=HS()),sh}var c=Ea();if(c!==Un)return c;var p=KL();return p}function gN(e){var n=e.mode;return(n&ot)===Ae?ze:vP()}function An(e,n,a,s){FN(),cC&&d("useInsertionEffect must not schedule updates."),xv&&(ih=!0),cu(e,a,s),(st&Xn)!==ie&&e===gr?HN(n):(xa&&VS(e,n,a),GN(n),e===gr&&((st&Xn)===Dn&&(dd=Xe(dd,a)),Pn===cd&&So(e,On)),Pr(e,s),a===ze&&st===Dn&&(n.mode&ot)===Ae&&!Ma.isBatchingLegacy&&(fd(),cx()))}function _N(e,n,a){var s=e.current;s.lanes=n,cu(e,n,a),Pr(e,a)}function vN(e){return(st&Xn)!==Dn}function Pr(e,n){var a=e.callbackNode;fP(e,n);var s=kp(e,e===gr?On:ie);if(s===ie){a!==null&&CC(a),e.callbackNode=null,e.callbackPriority=Un;return}var c=is(s),p=e.callbackPriority;if(p===c&&!(Ma.current!==null&&a!==Dv)){a==null&&p!==ze&&d("Expected scheduled callback to exist. This error is likely caused by a bug in React. Please file an issue.");return}a!=null&&CC(a);var f;if(c===ze)e.tag===co?(Ma.isBatchingLegacy!==null&&(Ma.didScheduleLegacyUpdate=!0),VM(pC.bind(null,e))):lx(pC.bind(null,e)),Ma.current!==null?Ma.current.push(uo):XL(function(){(st&(Xn|ra))===Dn&&uo()}),f=null;else{var y;switch(QS(s)){case Br:y=Ep;break;case Ei:y=vy;break;case Ci:y=ns;break;case Op:y=by;break;default:y=ns;break}f=Ov(y,uC.bind(null,e))}e.callbackPriority=c,e.callbackNode=f}function uC(e,n){if(Iq(),yd=Ut,sh=ie,(st&(Xn|ra))!==Dn)throw new Error("Should not already be working.");var a=e.callbackNode,s=qi();if(s&&e.callbackNode!==a)return null;var c=kp(e,e===gr?On:ie);if(c===ie)return null;var p=!jp(e,c)&&!_P(e,c)&&!n,f=p?jN(e,c):uh(e,c);if(f!==Ai){if(f===bs){var y=zy(e);y!==ie&&(c=y,f=Ev(e,y))}if(f===ld){var _=ud;throw Ss(e,ie),So(e,c),Pr(e,Nn()),_}if(f===yv)So(e,c);else{var S=!jp(e,c),x=e.current.alternate;if(S&&!wN(x)){if(f=uh(e,c),f===bs){var A=zy(e);A!==ie&&(c=A,f=Ev(e,A))}if(f===ld){var P=ud;throw Ss(e,ie),So(e,c),Pr(e,Nn()),P}}e.finishedWork=x,e.finishedLanes=c,bN(e,f,c)}}return Pr(e,Nn()),e.callbackNode===a?uC.bind(null,e):null}function Ev(e,n){var a=pd;if(Pp(e)){var s=Ss(e,n);s.flags|=Qo,UM(e.containerInfo)}var c=uh(e,n);if(c!==bs){var p=Or;Or=a,p!==null&&dC(p)}return c}function dC(e){Or===null?Or=e:Or.push.apply(Or,e)}function bN(e,n,a){switch(n){case Ai:case ld:throw new Error("Root did not complete. This is a bug in React.");case bs:{xs(e,Or,Li);break}case th:{if(So(e,a),zS(a)&&!RC()){var s=_v+oC-Nn();if(s>10){var c=kp(e,ie);if(c!==ie)break;var p=e.suspendedLanes;if(!dl(p,a)){_r(),WS(e,p);break}e.timeoutHandle=wg(xs.bind(null,e,Or,Li),s);break}}xs(e,Or,Li);break}case cd:{if(So(e,a),gP(a))break;if(!RC()){var f=dP(e,a),y=f,_=Nn()-y,S=UN(_)-_;if(S>10){e.timeoutHandle=wg(xs.bind(null,e,Or,Li),S);break}}xs(e,Or,Li);break}case iC:{xs(e,Or,Li);break}default:throw new Error("Unknown root exit status.")}}function wN(e){for(var n=e;;){if(n.flags&py){var a=n.updateQueue;if(a!==null){var s=a.stores;if(s!==null)for(var c=0;c<s.length;c++){var p=s[c],f=p.getSnapshot,y=p.value;try{if(!Fr(f(),y))return!1}catch{return!1}}}}var _=n.child;if(n.subtreeFlags&py&&_!==null){_.return=n,n=_;continue}if(n===e)return!0;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 So(e,n){n=Dp(n,rh),n=Dp(n,dd),wP(e,n)}function pC(e){if(Nq(),(st&(Xn|ra))!==Dn)throw new Error("Should not already be working.");qi();var n=kp(e,ie);if(!Nr(n,ze))return Pr(e,Nn()),null;var a=uh(e,n);if(e.tag!==co&&a===bs){var s=zy(e);s!==ie&&(n=s,a=Ev(e,s))}if(a===ld){var c=ud;throw Ss(e,ie),So(e,n),Pr(e,Nn()),c}if(a===yv)throw new Error("Root did not complete. This is a bug in React.");var p=e.current.alternate;return e.finishedWork=p,e.finishedLanes=n,xs(e,Or,Li),Pr(e,Nn()),null}function SN(e,n){n!==ie&&(Wy(e,Xe(n,ze)),Pr(e,Nn()),(st&(Xn|ra))===Dn&&(fd(),uo()))}function Cv(e,n){var a=st;st|=aC;try{return e(n)}finally{st=a,st===Dn&&!Ma.isBatchingLegacy&&(fd(),cx())}}function xN(e,n,a,s,c){var p=Ea(),f=Qn.transition;try{return Qn.transition=null,Fn(Br),e(n,a,s,c)}finally{Fn(p),Qn.transition=f,st===Dn&&fd()}}function Mi(e){bo!==null&&bo.tag===co&&(st&(Xn|ra))===Dn&&qi();var n=st;st|=aC;var a=Qn.transition,s=Ea();try{return Qn.transition=null,Fn(Br),e?e():void 0}finally{Fn(s),Qn.transition=a,st=n,(st&(Xn|ra))===Dn&&uo()}}function fC(){return(st&(Xn|ra))!==Dn}function ch(e,n){ar(gv,ii,e),ii=Xe(ii,n)}function Rv(e){ii=gv.current,rr(gv,e)}function Ss(e,n){e.finishedWork=null,e.finishedLanes=ie;var a=e.timeoutHandle;if(a!==Sg&&(e.timeoutHandle=Sg,QL(a)),on!==null)for(var s=on.return;s!==null;){var c=s.alternate;zE(c,s),s=s.return}gr=e;var p=Es(e.current,null);return on=p,On=ii=n,Pn=Ai,ud=null,nh=ie,dd=ie,rh=ie,pd=null,Or=null,_q(),Ta.discardPendingWarnings(),p}function hC(e,n){do{var a=on;try{if(vf(),Nx(),qn(),mv.current=null,a===null||a.return===null){Pn=ld,ud=n,on=null;return}if(Ze&&a.mode&Et&&Yf(a,!0),Fe)if(sl(),n!==null&&typeof n=="object"&&typeof n.then=="function"){var s=n;ZO(a,s,On)}else JO(a,n,On);Vq(e,a.return,a,n,On),_C(a)}catch(c){n=c,on===a&&a!==null?(a=a.return,on=a):a=on;continue}return}while(!0)}function mC(){var e=hv.current;return hv.current=$f,e===null?$f:e}function yC(e){hv.current=e}function EN(){_v=Nn()}function gd(e){nh=Xe(e,nh)}function CN(){Pn===Ai&&(Pn=th)}function Tv(){(Pn===Ai||Pn===th||Pn===bs)&&(Pn=cd),gr!==null&&($y(nh)||$y(dd))&&So(gr,On)}function RN(e){Pn!==cd&&(Pn=bs),pd===null?pd=[e]:pd.push(e)}function TN(){return Pn===Ai}function uh(e,n){var a=st;st|=Xn;var s=mC();if(gr!==e||On!==n){if(xa){var c=e.memoizedUpdaters;c.size>0&&(_d(e,On),c.clear()),YS(e,n)}Li=KS(),Ss(e,n)}IS(n);do try{kN();break}catch(p){hC(e,p)}while(!0);if(vf(),st=a,yC(s),on!==null)throw new Error("Cannot commit an incomplete root. This error is likely caused by a bug in React. Please file an issue.");return NS(),gr=null,On=ie,Pn}function kN(){for(;on!==null;)gC(on)}function jN(e,n){var a=st;st|=Xn;var s=mC();if(gr!==e||On!==n){if(xa){var c=e.memoizedUpdaters;c.size>0&&(_d(e,On),c.clear()),YS(e,n)}Li=KS(),fd(),Ss(e,n)}IS(n);do try{DN();break}catch(p){hC(e,p)}while(!0);return vf(),yC(s),st=a,on!==null?(aP(),Ai):(NS(),gr=null,On=ie,Pn)}function DN(){for(;on!==null&&!PO();)gC(on)}function gC(e){var n=e.alternate;Qt(e);var a;(e.mode&Et)!==Ae?(D_(e),a=kv(n,e,ii),Yf(e,!0)):a=kv(n,e,ii),qn(),e.memoizedProps=e.pendingProps,a===null?_C(e):on=a,mv.current=null}function _C(e){var n=e;do{var a=n.alternate,s=n.return;if((n.flags&xp)===qe){Qt(n);var c=void 0;if((n.mode&Et)===Ae?c=FE(a,n,ii):(D_(n),c=FE(a,n,ii),Yf(n,!1)),qn(),c!==null){on=c;return}}else{var p=CI(a,n);if(p!==null){p.flags&=RO,on=p;return}if((n.mode&Et)!==Ae){Yf(n,!1);for(var f=n.actualDuration,y=n.child;y!==null;)f+=y.actualDuration,y=y.sibling;n.actualDuration=f}if(s!==null)s.flags|=xp,s.subtreeFlags=qe,s.deletions=null;else{Pn=yv,on=null;return}}var _=n.sibling;if(_!==null){on=_;return}n=s,on=n}while(n!==null);Pn===Ai&&(Pn=iC)}function xs(e,n,a){var s=Ea(),c=Qn.transition;try{Qn.transition=null,Fn(Br),ON(e,n,a,s)}finally{Qn.transition=c,Fn(s)}return null}function ON(e,n,a,s){do qi();while(bo!==null);if(zN(),(st&(Xn|ra))!==Dn)throw new Error("Should not already be working.");var c=e.finishedWork,p=e.finishedLanes;if(GO(p),c===null)return LS(),null;if(p===ie&&d("root.finishedLanes should not be empty during a commit. This is a bug in React."),e.finishedWork=null,e.finishedLanes=ie,c===e.current)throw new Error("Cannot commit the same tree as before. This error is likely caused by a bug in React. Please file an issue.");e.callbackNode=null,e.callbackPriority=Un;var f=Xe(c.lanes,c.childLanes);SP(e,f),e===gr&&(gr=null,on=null,On=ie),((c.subtreeFlags&il)!==qe||(c.flags&il)!==qe)&&(ws||(ws=!0,wv=a,Ov(ns,function(){return qi(),null})));var y=(c.subtreeFlags&(gy|_y|tu|il))!==qe,_=(c.flags&(gy|_y|tu|il))!==qe;if(y||_){var S=Qn.transition;Qn.transition=null;var x=Ea();Fn(Br);var A=st;st|=ra,mv.current=null,DI(e,c),cE(),HI(e,c,p),$L(e.containerInfo),e.current=c,eP(p),GI(c,e,p),tP(),AO(),st=A,Fn(x),Qn.transition=S}else e.current=c,cE();var P=ws;if(ws?(ws=!1,bo=e,hd=p):(Fl=0,oh=null),f=e.pendingLanes,f===ie&&(Ul=null),P||SC(e.current,!1),UO(c.stateNode,s),xa&&e.memoizedUpdaters.clear(),uN(),Pr(e,Nn()),n!==null)for(var B=e.onRecoverableError,F=0;F<n.length;F++){var Y=n[F],pe=Y.stack,Pe=Y.digest;B(Y.value,{componentStack:pe,digest:Pe})}if(ah){ah=!1;var Te=vv;throw vv=null,Te}return Nr(hd,ze)&&e.tag!==co&&qi(),f=e.pendingLanes,Nr(f,ze)?(qq(),e===Sv?md++:(md=0,Sv=e)):md=0,uo(),LS(),null}function qi(){if(bo!==null){var e=QS(hd),n=RP(Ci,e),a=Qn.transition,s=Ea();try{return Qn.transition=null,Fn(n),AN()}finally{Fn(s),Qn.transition=a}}return!1}function PN(e){bv.push(e),ws||(ws=!0,Ov(ns,function(){return qi(),null}))}function AN(){if(bo===null)return!1;var e=wv;wv=null;var n=bo,a=hd;if(bo=null,hd=ie,(st&(Xn|ra))!==Dn)throw new Error("Cannot flush passive effects while already rendering.");xv=!0,ih=!1,nP(a);var s=st;st|=ra,JI(n.current),YI(n,n.current,a,e);{var c=bv;bv=[];for(var p=0;p<c.length;p++){var f=c[p];LI(n,f)}}rP(),SC(n.current,!0),st=s,uo(),ih?n===oh?Fl++:(Fl=0,oh=n):Fl=0,xv=!1,ih=!1,FO(n);{var y=n.current.stateNode;y.effectDuration=0,y.passiveEffectDuration=0}return!0}function vC(e){return Ul!==null&&Ul.has(e)}function LN(e){Ul===null?Ul=new Set([e]):Ul.add(e)}function MN(e){ah||(ah=!0,vv=e)}var qN=MN;function bC(e,n,a){var s=_s(a,n),c=gE(e,s,ze),p=fo(e,c,ze),f=_r();p!==null&&(cu(p,ze,f),Pr(p,f))}function At(e,n,a){if(TI(a),vd(!1),e.tag===b){bC(e,e,a);return}var s=null;for(s=n;s!==null;){if(s.tag===b){bC(s,e,a);return}else if(s.tag===g){var c=s.type,p=s.stateNode;if(typeof c.getDerivedStateFromError=="function"||typeof p.componentDidCatch=="function"&&!vC(p)){var f=_s(a,e),y=Y_(s,f,ze),_=fo(s,y,ze),S=_r();_!==null&&(cu(_,ze,S),Pr(_,S));return}}s=s.return}d(`Internal React error: Attempted to capture a commit phase error inside a detached tree. This indicates a bug in React. Likely causes include deleting the same fiber more than once, committing an already-finished tree, or an inconsistent return pointer.
174
175Error message:
176
177%s`,a)}function IN(e,n,a){var s=e.pingCache;s!==null&&s.delete(n);var c=_r();WS(e,a),WN(e),gr===e&&dl(On,a)&&(Pn===cd||Pn===th&&zS(On)&&Nn()-_v<oC?Ss(e,ie):rh=Xe(rh,a)),Pr(e,c)}function wC(e,n){n===Un&&(n=gN(e));var a=_r(),s=jr(e,n);s!==null&&(cu(s,n,a),Pr(s,a))}function NN(e){var n=e.memoizedState,a=Un;n!==null&&(a=n.retryLane),wC(e,a)}function BN(e,n){var a=Un,s;switch(e.tag){case W:s=e.stateNode;var c=e.memoizedState;c!==null&&(a=c.retryLane);break;case ke:s=e.stateNode;break;default:throw new Error("Pinged unknown suspense boundary type. This is probably a bug in React.")}s!==null&&s.delete(n),wC(e,a)}function UN(e){return e<120?120:e<480?480:e<1080?1080:e<1920?1920:e<3e3?3e3:e<4320?4320:fN(e/1960)*1960}function FN(){if(md>mN)throw md=0,Sv=null,new Error("Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.");Fl>yN&&(Fl=0,oh=null,d("Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render."))}function zN(){Ta.flushLegacyContextWarning(),Ta.flushPendingUnsafeLifecycleWarnings()}function SC(e,n){Qt(e),dh(e,eo,sN),n&&dh(e,yy,lN),dh(e,eo,iN),n&&dh(e,yy,oN),qn()}function dh(e,n,a){for(var s=e,c=null;s!==null;){var p=s.subtreeFlags&n;s!==c&&s.child!==null&&p!==qe?s=s.child:((s.flags&n)!==qe&&a(s),s.sibling!==null?s=s.sibling:s=c=s.return)}}var ph=null;function xC(e){{if((st&Xn)!==Dn||!(e.mode&ot))return;var n=e.tag;if(n!==w&&n!==b&&n!==g&&n!==m&&n!==$&&n!==ae&&n!==Z)return;var a=We(e)||"ReactComponent";if(ph!==null){if(ph.has(a))return;ph.add(a)}else ph=new Set([a]);var s=fr;try{Qt(e),d("Can't perform a React state update on a component that hasn't mounted yet. This indicates that you have a side-effect in your render function that asynchronously later calls tries to update the component. Move this work to useEffect instead.")}finally{s?Qt(e):qn()}}}var kv;{var $N=null;kv=function(e,n,a){var s=OC($N,n);try{return qE(e,n,a)}catch(p){if(tq()||p!==null&&typeof p=="object"&&typeof p.then=="function")throw p;if(vf(),Nx(),zE(e,n),OC(n,s),n.mode&Et&&D_(n),uy(null,qE,null,e,n,a),xO()){var c=dy();typeof c=="object"&&c!==null&&c._suppressLogging&&typeof p=="object"&&p!==null&&!p._suppressLogging&&(p._suppressLogging=!0)}throw p}}}var EC=!1,jv;jv=new Set;function HN(e){if(Go&&!Aq())switch(e.tag){case m:case $:case Z:{var n=on&&We(on)||"Unknown",a=n;if(!jv.has(a)){jv.add(a);var s=We(e)||"Unknown";d("Cannot update a component (`%s`) while rendering a different component (`%s`). To locate the bad setState() call inside `%s`, follow the stack trace as described in https://reactjs.org/link/setstate-in-render",s,n,n)}break}case g:{EC||(d("Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state."),EC=!0);break}}}function _d(e,n){if(xa){var a=e.memoizedUpdaters;a.forEach(function(s){VS(e,s,n)})}}var Dv={};function Ov(e,n){{var a=Ma.current;return a!==null?(a.push(n),Dv):AS(e,n)}}function CC(e){if(e!==Dv)return OO(e)}function RC(){return Ma.current!==null}function GN(e){{if(e.mode&ot){if(!rC())return}else if(!pN()||st!==Dn||e.tag!==m&&e.tag!==$&&e.tag!==Z)return;if(Ma.current===null){var n=fr;try{Qt(e),d(`An update to %s inside a test was not wrapped in act(...).
178
179When testing, code that causes React state updates should be wrapped into act(...):
180
181act(() => {
182  /* fire events that update state */
183});
184/* assert on the output */
185
186This ensures that you're testing the behavior the user would see in the browser. Learn more at https://reactjs.org/link/wrap-tests-with-act`,We(e))}finally{n?Qt(e):qn()}}}}function WN(e){e.tag!==co&&rC()&&Ma.current===null&&d(`A suspended resource finished loading inside a test, but the event was not wrapped in act(...).
187
188When testing, code that resolves suspended data should be wrapped into act(...):
189
190act(() => {
191  /* finish loading suspended data */
192});
193/* assert on the output */
194
195This ensures that you're testing the behavior the user would see in the browser. Learn more at https://reactjs.org/link/wrap-tests-with-act`)}function vd(e){cC=e}var aa=null,zl=null,VN=function(e){aa=e};function $l(e){{if(aa===null)return e;var n=aa(e);return n===void 0?e:n.current}}function Pv(e){return $l(e)}function Av(e){{if(aa===null)return e;var n=aa(e);if(n===void 0){if(e!=null&&typeof e.render=="function"){var a=$l(e.render);if(e.render!==a){var s={$$typeof:re,render:a};return e.displayName!==void 0&&(s.displayName=e.displayName),s}}return e}return n.current}}function TC(e,n){{if(aa===null)return!1;var a=e.elementType,s=n.type,c=!1,p=typeof s=="object"&&s!==null?s.$$typeof:null;switch(e.tag){case g:{typeof s=="function"&&(c=!0);break}case m:{(typeof s=="function"||p===Ve)&&(c=!0);break}case $:{(p===re||p===Ve)&&(c=!0);break}case ae:case Z:{(p===rt||p===Ve)&&(c=!0);break}default:return!1}if(c){var f=aa(a);if(f!==void 0&&f===aa(s))return!0}return!1}}function kC(e){{if(aa===null||typeof WeakSet!="function")return;zl===null&&(zl=new WeakSet),zl.add(e)}}var YN=function(e,n){{if(aa===null)return;var a=n.staleFamilies,s=n.updatedFamilies;qi(),Mi(function(){Lv(e.current,s,a)})}},KN=function(e,n){{if(e.context!==zr)return;qi(),Mi(function(){bd(n,e,null,null)})}};function Lv(e,n,a){{var s=e.alternate,c=e.child,p=e.sibling,f=e.tag,y=e.type,_=null;switch(f){case m:case Z:case g:_=y;break;case $:_=y.render;break}if(aa===null)throw new Error("Expected resolveFamily to be set during hot reload.");var S=!1,x=!1;if(_!==null){var A=aa(_);A!==void 0&&(a.has(A)?x=!0:n.has(A)&&(f===g?x=!0:S=!0))}if(zl!==null&&(zl.has(e)||s!==null&&zl.has(s))&&(x=!0),x&&(e._debugNeedsRemount=!0),x||S){var P=jr(e,ze);P!==null&&An(P,e,ze,Ut)}c!==null&&!x&&Lv(c,n,a),p!==null&&Lv(p,n,a)}}var QN=function(e,n){{var a=new Set,s=new Set(n.map(function(c){return c.current}));return Mv(e.current,s,a),a}};function Mv(e,n,a){{var s=e.child,c=e.sibling,p=e.tag,f=e.type,y=null;switch(p){case m:case Z:case g:y=f;break;case $:y=f.render;break}var _=!1;y!==null&&n.has(y)&&(_=!0),_?XN(e,a):s!==null&&Mv(s,n,a),c!==null&&Mv(c,n,a)}}function XN(e,n){{var a=JN(e,n);if(a)return;for(var s=e;;){switch(s.tag){case T:n.add(s.stateNode);return;case E:n.add(s.stateNode.containerInfo);return;case b:n.add(s.stateNode.containerInfo);return}if(s.return===null)throw new Error("Expected to reach root first.");s=s.return}}}function JN(e,n){for(var a=e,s=!1;;){if(a.tag===T)s=!0,n.add(a.stateNode);else if(a.child!==null){a.child.return=a,a=a.child;continue}if(a===e)return s;for(;a.sibling===null;){if(a.return===null||a.return===e)return s;a=a.return}a.sibling.return=a.return,a=a.sibling}return!1}var qv;{qv=!1;try{var jC=Object.preventExtensions({})}catch{qv=!0}}function ZN(e,n,a,s){this.tag=e,this.key=a,this.elementType=null,this.type=null,this.stateNode=null,this.return=null,this.child=null,this.sibling=null,this.index=0,this.ref=null,this.pendingProps=n,this.memoizedProps=null,this.updateQueue=null,this.memoizedState=null,this.dependencies=null,this.mode=s,this.flags=qe,this.subtreeFlags=qe,this.deletions=null,this.lanes=ie,this.childLanes=ie,this.alternate=null,this.actualDuration=Number.NaN,this.actualStartTime=Number.NaN,this.selfBaseDuration=Number.NaN,this.treeBaseDuration=Number.NaN,this.actualDuration=0,this.actualStartTime=-1,this.selfBaseDuration=0,this.treeBaseDuration=0,this._debugSource=null,this._debugOwner=null,this._debugNeedsRemount=!1,this._debugHookTypes=null,!qv&&typeof Object.preventExtensions=="function"&&Object.preventExtensions(this)}var $r=function(e,n,a,s){return new ZN(e,n,a,s)};function Iv(e){var n=e.prototype;return!!(n&&n.isReactComponent)}function eB(e){return typeof e=="function"&&!Iv(e)&&e.defaultProps===void 0}function tB(e){if(typeof e=="function")return Iv(e)?g:m;if(e!=null){var n=e.$$typeof;if(n===re)return $;if(n===rt)return ae}return w}function Es(e,n){var a=e.alternate;a===null?(a=$r(e.tag,n,e.key,e.mode),a.elementType=e.elementType,a.type=e.type,a.stateNode=e.stateNode,a._debugSource=e._debugSource,a._debugOwner=e._debugOwner,a._debugHookTypes=e._debugHookTypes,a.alternate=e,e.alternate=a):(a.pendingProps=n,a.type=e.type,a.flags=qe,a.subtreeFlags=qe,a.deletions=null,a.actualDuration=0,a.actualStartTime=-1),a.flags=e.flags&Si,a.childLanes=e.childLanes,a.lanes=e.lanes,a.child=e.child,a.memoizedProps=e.memoizedProps,a.memoizedState=e.memoizedState,a.updateQueue=e.updateQueue;var s=e.dependencies;switch(a.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},a.sibling=e.sibling,a.index=e.index,a.ref=e.ref,a.selfBaseDuration=e.selfBaseDuration,a.treeBaseDuration=e.treeBaseDuration,a._debugNeedsRemount=e._debugNeedsRemount,a.tag){case w:case m:case Z:a.type=$l(e.type);break;case g:a.type=Pv(e.type);break;case $:a.type=Av(e.type);break}return a}function nB(e,n){e.flags&=Si|In;var a=e.alternate;if(a===null)e.childLanes=ie,e.lanes=n,e.child=null,e.subtreeFlags=qe,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null,e.selfBaseDuration=0,e.treeBaseDuration=0;else{e.childLanes=a.childLanes,e.lanes=a.lanes,e.child=a.child,e.subtreeFlags=qe,e.deletions=null,e.memoizedProps=a.memoizedProps,e.memoizedState=a.memoizedState,e.updateQueue=a.updateQueue,e.type=a.type;var s=a.dependencies;e.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},e.selfBaseDuration=a.selfBaseDuration,e.treeBaseDuration=a.treeBaseDuration}return e}function rB(e,n,a){var s;return e===cf?(s=ot,n===!0&&(s|=sn,s|=Ka)):s=Ae,xa&&(s|=Et),$r(b,null,null,s)}function Nv(e,n,a,s,c,p){var f=w,y=e;if(typeof e=="function")Iv(e)?(f=g,y=Pv(y)):y=$l(y);else if(typeof e=="string")f=T;else e:switch(e){case Wa:return xo(a.children,c,p,n);case Bo:f=L,c|=sn,(c&ot)!==Ae&&(c|=Ka);break;case Uo:return aB(a,c,p,n);case fe:return iB(a,c,p,n);case Se:return oB(a,c,p,n);case _n:return DC(a,c,p,n);case Ht:case at:case Yt:case tr:case et:default:{if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Fo:f=G;break e;case D:f=M;break e;case re:f=$,y=Av(y);break e;case rt:f=ae;break e;case Ve:f=ve,y=null;break e}var _="";{(e===void 0||typeof e=="object"&&e!==null&&Object.keys(e).length===0)&&(_+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var S=s?We(s):null;S&&(_+=`
196
197Check the render method of \``+S+"`.")}throw new Error("Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) "+("but got: "+(e==null?e:typeof e)+"."+_))}}var x=$r(f,a,n,c);return x.elementType=e,x.type=y,x.lanes=p,x._debugOwner=s,x}function Bv(e,n,a){var s=null;s=e._owner;var c=e.type,p=e.key,f=e.props,y=Nv(c,p,f,s,n,a);return y._debugSource=e._source,y._debugOwner=e._owner,y}function xo(e,n,a,s){var c=$r(R,e,s,n);return c.lanes=a,c}function aB(e,n,a,s){typeof e.id!="string"&&d('Profiler must specify an "id" of type `string` as a prop. Received the type `%s` instead.',typeof e.id);var c=$r(z,e,s,n|Et);return c.elementType=Uo,c.lanes=a,c.stateNode={effectDuration:0,passiveEffectDuration:0},c}function iB(e,n,a,s){var c=$r(W,e,s,n);return c.elementType=fe,c.lanes=a,c}function oB(e,n,a,s){var c=$r(ke,e,s,n);return c.elementType=Se,c.lanes=a,c}function DC(e,n,a,s){var c=$r(N,e,s,n);c.elementType=_n,c.lanes=a;var p={isHidden:!1};return c.stateNode=p,c}function Uv(e,n,a){var s=$r(O,e,null,n);return s.lanes=a,s}function sB(){var e=$r(T,null,null,Ae);return e.elementType="DELETED",e}function lB(e){var n=$r(je,null,null,Ae);return n.stateNode=e,n}function Fv(e,n,a){var s=e.children!==null?e.children:[],c=$r(E,s,e.key,n);return c.lanes=a,c.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},c}function OC(e,n){return e===null&&(e=$r(w,null,null,Ae)),e.tag=n.tag,e.key=n.key,e.elementType=n.elementType,e.type=n.type,e.stateNode=n.stateNode,e.return=n.return,e.child=n.child,e.sibling=n.sibling,e.index=n.index,e.ref=n.ref,e.pendingProps=n.pendingProps,e.memoizedProps=n.memoizedProps,e.updateQueue=n.updateQueue,e.memoizedState=n.memoizedState,e.dependencies=n.dependencies,e.mode=n.mode,e.flags=n.flags,e.subtreeFlags=n.subtreeFlags,e.deletions=n.deletions,e.lanes=n.lanes,e.childLanes=n.childLanes,e.alternate=n.alternate,e.actualDuration=n.actualDuration,e.actualStartTime=n.actualStartTime,e.selfBaseDuration=n.selfBaseDuration,e.treeBaseDuration=n.treeBaseDuration,e._debugSource=n._debugSource,e._debugOwner=n._debugOwner,e._debugNeedsRemount=n._debugNeedsRemount,e._debugHookTypes=n._debugHookTypes,e}function cB(e,n,a,s,c){this.tag=n,this.containerInfo=e,this.pendingChildren=null,this.current=null,this.pingCache=null,this.finishedWork=null,this.timeoutHandle=Sg,this.context=null,this.pendingContext=null,this.callbackNode=null,this.callbackPriority=Un,this.eventTimes=Gy(ie),this.expirationTimes=Gy(Ut),this.pendingLanes=ie,this.suspendedLanes=ie,this.pingedLanes=ie,this.expiredLanes=ie,this.mutableReadLanes=ie,this.finishedLanes=ie,this.entangledLanes=ie,this.entanglements=Gy(ie),this.identifierPrefix=s,this.onRecoverableError=c,this.mutableSourceEagerHydrationData=null,this.effectDuration=0,this.passiveEffectDuration=0;{this.memoizedUpdaters=new Set;for(var p=this.pendingUpdatersLaneMap=[],f=0;f<Sy;f++)p.push(new Set)}switch(n){case cf:this._debugRootType=a?"hydrateRoot()":"createRoot()";break;case co:this._debugRootType=a?"hydrate()":"render()";break}}function PC(e,n,a,s,c,p,f,y,_,S){var x=new cB(e,n,a,y,_),A=rB(n,p);x.current=A,A.stateNode=x;{var P={element:s,isDehydrated:a,cache:null,transitions:null,pendingSuspenseBoundaries:null};A.memoizedState=P}return e_(A),x}var zv="18.3.1";function uB(e,n,a){var s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;return Cr(s),{$$typeof:Ir,key:s==null?null:""+s,children:e,containerInfo:n,implementation:a}}var $v,Hv;$v=!1,Hv={};function AC(e){if(!e)return zr;var n=nl(e),a=WM(n);if(n.tag===g){var s=n.type;if(Ja(s))return ox(n,s,a)}return a}function dB(e,n){{var a=nl(e);if(a===void 0){if(typeof e.render=="function")throw new Error("Unable to find node on an unmounted component.");var s=Object.keys(e).join(",");throw new Error("Argument appears to not be a ReactComponent. Keys: "+s)}var c=DS(a);if(c===null)return null;if(c.mode&sn){var p=We(a)||"Component";if(!Hv[p]){Hv[p]=!0;var f=fr;try{Qt(c),a.mode&sn?d("%s is deprecated in StrictMode. %s was passed an instance of %s which is inside StrictMode. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-find-node",n,n,p):d("%s is deprecated in StrictMode. %s was passed an instance of %s which renders StrictMode children. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-find-node",n,n,p)}finally{f?Qt(f):qn()}}}return c.stateNode}}function LC(e,n,a,s,c,p,f,y){var _=!1,S=null;return PC(e,n,_,S,a,s,c,p,f)}function MC(e,n,a,s,c,p,f,y,_,S){var x=!0,A=PC(a,s,x,e,c,p,f,y,_);A.context=AC(null);var P=A.current,B=_r(),F=wo(P),Y=Oi(B,F);return Y.callback=n??null,fo(P,Y,F),_N(A,F,B),A}function bd(e,n,a,s){BO(n,e);var c=n.current,p=_r(),f=wo(c);iP(f);var y=AC(a);n.context===null?n.context=y:n.pendingContext=y,Go&&fr!==null&&!$v&&($v=!0,d(`Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.
198
199Check the render method of %s.`,We(fr)||"Unknown"));var _=Oi(p,f);_.payload={element:e},s=s===void 0?null:s,s!==null&&(typeof s!="function"&&d("render(...): Expected the last optional `callback` argument to be a function. Instead received: %s.",s),_.callback=s);var S=fo(c,_,f);return S!==null&&(An(S,c,f,p),Ef(S,c,f)),f}function fh(e){var n=e.current;if(!n.child)return null;switch(n.child.tag){case T:return n.child.stateNode;default:return n.child.stateNode}}function pB(e){switch(e.tag){case b:{var n=e.stateNode;if(Pp(n)){var a=hP(n);SN(n,a)}break}case W:{Mi(function(){var c=jr(e,ze);if(c!==null){var p=_r();An(c,e,ze,p)}});var s=ze;Gv(e,s);break}}}function qC(e,n){var a=e.memoizedState;a!==null&&a.dehydrated!==null&&(a.retryLane=bP(a.retryLane,n))}function Gv(e,n){qC(e,n);var a=e.alternate;a&&qC(a,n)}function fB(e){if(e.tag===W){var n=iu,a=jr(e,n);if(a!==null){var s=_r();An(a,e,n,s)}Gv(e,n)}}function hB(e){if(e.tag===W){var n=wo(e),a=jr(e,n);if(a!==null){var s=_r();An(a,e,n,s)}Gv(e,n)}}function IC(e){var n=DO(e);return n===null?null:n.stateNode}var NC=function(e){return null};function mB(e){return NC(e)}var BC=function(e){return!1};function yB(e){return BC(e)}var UC=null,FC=null,zC=null,$C=null,HC=null,GC=null,WC=null,VC=null,YC=null;{var KC=function(e,n,a){var s=n[a],c=tt(e)?e.slice():Qe({},e);return a+1===n.length?(tt(c)?c.splice(s,1):delete c[s],c):(c[s]=KC(e[s],n,a+1),c)},QC=function(e,n){return KC(e,n,0)},XC=function(e,n,a,s){var c=n[s],p=tt(e)?e.slice():Qe({},e);if(s+1===n.length){var f=a[s];p[f]=p[c],tt(p)?p.splice(c,1):delete p[c]}else p[c]=XC(e[c],n,a,s+1);return p},JC=function(e,n,a){if(n.length!==a.length){u("copyWithRename() expects paths of the same length");return}else for(var s=0;s<a.length-1;s++)if(n[s]!==a[s]){u("copyWithRename() expects paths to be the same except for the deepest key");return}return XC(e,n,a,0)},ZC=function(e,n,a,s){if(a>=n.length)return s;var c=n[a],p=tt(e)?e.slice():Qe({},e);return p[c]=ZC(e[c],n,a+1,s),p},eR=function(e,n,a){return ZC(e,n,0,a)},Wv=function(e,n){for(var a=e.memoizedState;a!==null&&n>0;)a=a.next,n--;return a};UC=function(e,n,a,s){var c=Wv(e,n);if(c!==null){var p=eR(c.memoizedState,a,s);c.memoizedState=p,c.baseState=p,e.memoizedProps=Qe({},e.memoizedProps);var f=jr(e,ze);f!==null&&An(f,e,ze,Ut)}},FC=function(e,n,a){var s=Wv(e,n);if(s!==null){var c=QC(s.memoizedState,a);s.memoizedState=c,s.baseState=c,e.memoizedProps=Qe({},e.memoizedProps);var p=jr(e,ze);p!==null&&An(p,e,ze,Ut)}},zC=function(e,n,a,s){var c=Wv(e,n);if(c!==null){var p=JC(c.memoizedState,a,s);c.memoizedState=p,c.baseState=p,e.memoizedProps=Qe({},e.memoizedProps);var f=jr(e,ze);f!==null&&An(f,e,ze,Ut)}},$C=function(e,n,a){e.pendingProps=eR(e.memoizedProps,n,a),e.alternate&&(e.alternate.pendingProps=e.pendingProps);var s=jr(e,ze);s!==null&&An(s,e,ze,Ut)},HC=function(e,n){e.pendingProps=QC(e.memoizedProps,n),e.alternate&&(e.alternate.pendingProps=e.pendingProps);var a=jr(e,ze);a!==null&&An(a,e,ze,Ut)},GC=function(e,n,a){e.pendingProps=JC(e.memoizedProps,n,a),e.alternate&&(e.alternate.pendingProps=e.pendingProps);var s=jr(e,ze);s!==null&&An(s,e,ze,Ut)},WC=function(e){var n=jr(e,ze);n!==null&&An(n,e,ze,Ut)},VC=function(e){NC=e},YC=function(e){BC=e}}function gB(e){var n=DS(e);return n===null?null:n.stateNode}function _B(e){return null}function vB(){return fr}function bB(e){var n=e.findFiberByHostInstance,a=i.ReactCurrentDispatcher;return NO({bundleType:e.bundleType,version:e.version,rendererPackageName:e.rendererPackageName,rendererConfig:e.rendererConfig,overrideHookState:UC,overrideHookStateDeletePath:FC,overrideHookStateRenamePath:zC,overrideProps:$C,overridePropsDeletePath:HC,overridePropsRenamePath:GC,setErrorHandler:VC,setSuspenseHandler:YC,scheduleUpdate:WC,currentDispatcherRef:a,findHostInstanceByFiber:gB,findFiberByHostInstance:n||_B,findHostInstancesForRefresh:QN,scheduleRefresh:YN,scheduleRoot:KN,setRefreshHandler:VN,getCurrentFiber:vB,reconcilerVersion:zv})}var tR=typeof reportError=="function"?reportError:function(e){console.error(e)};function Vv(e){this._internalRoot=e}hh.prototype.render=Vv.prototype.render=function(e){var n=this._internalRoot;if(n===null)throw new Error("Cannot update an unmounted root.");{typeof arguments[1]=="function"?d("render(...): does not support the second callback argument. To execute a side effect after rendering, declare it in a component body with useEffect()."):mh(arguments[1])?d("You passed a container to the second argument of root.render(...). You don't need to pass it again since you already passed it to create the root."):typeof arguments[1]<"u"&&d("You passed a second argument to root.render(...) but it only accepts one argument.");var a=n.containerInfo;if(a.nodeType!==bn){var s=IC(n.current);s&&s.parentNode!==a&&d("render(...): It looks like the React-rendered content of the root container was removed without using React. This is not supported and will cause errors. Instead, call root.unmount() to empty a root's container.")}}bd(e,n,null,null)},hh.prototype.unmount=Vv.prototype.unmount=function(){typeof arguments[0]=="function"&&d("unmount(...): does not support a callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().");var e=this._internalRoot;if(e!==null){this._internalRoot=null;var n=e.containerInfo;fC()&&d("Attempted to synchronously unmount a root while React was already rendering. React cannot finish unmounting the root until the current render has completed, which may lead to a race condition."),Mi(function(){bd(null,e,null,null)}),tx(n)}};function wB(e,n){if(!mh(e))throw new Error("createRoot(...): Target container is not a DOM element.");nR(e);var a=!1,s=!1,c="",p=tR;n!=null&&(n.hydrate?u("hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead."):typeof n=="object"&&n!==null&&n.$$typeof===qr&&d(`You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage:
200
201  let root = createRoot(domContainer);
202  root.render(<App />);`),n.unstable_strictMode===!0&&(a=!0),n.identifierPrefix!==void 0&&(c=n.identifierPrefix),n.onRecoverableError!==void 0&&(p=n.onRecoverableError),n.transitionCallbacks!==void 0&&n.transitionCallbacks);var f=LC(e,cf,null,a,s,c,p);tf(f.current,e);var y=e.nodeType===bn?e.parentNode:e;return Ru(y),new Vv(f)}function hh(e){this._internalRoot=e}function SB(e){e&&IP(e)}hh.prototype.unstable_scheduleHydration=SB;function xB(e,n,a){if(!mh(e))throw new Error("hydrateRoot(...): Target container is not a DOM element.");nR(e),n===void 0&&d("Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)");var s=a??null,c=a!=null&&a.hydratedSources||null,p=!1,f=!1,y="",_=tR;a!=null&&(a.unstable_strictMode===!0&&(p=!0),a.identifierPrefix!==void 0&&(y=a.identifierPrefix),a.onRecoverableError!==void 0&&(_=a.onRecoverableError));var S=MC(n,null,e,cf,s,p,f,y,_);if(tf(S.current,e),Ru(e),c)for(var x=0;x<c.length;x++){var A=c[x];Tq(S,A)}return new hh(S)}function mh(e){return!!(e&&(e.nodeType===Tr||e.nodeType===wi||e.nodeType===Zm))}function wd(e){return!!(e&&(e.nodeType===Tr||e.nodeType===wi||e.nodeType===Zm||e.nodeType===bn&&e.nodeValue===" react-mount-point-unstable "))}function nR(e){e.nodeType===Tr&&e.tagName&&e.tagName.toUpperCase()==="BODY"&&d("createRoot(): Creating roots directly with document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try using a container element created for your app."),Iu(e)&&(e._reactRootContainer?d("You are calling ReactDOMClient.createRoot() on a container that was previously passed to ReactDOM.render(). This is not supported."):d("You are calling ReactDOMClient.createRoot() on a container that has already been passed to createRoot() before. Instead, call root.render() on the existing root instead if you want to update it."))}var EB=i.ReactCurrentOwner,rR;rR=function(e){if(e._reactRootContainer&&e.nodeType!==bn){var n=IC(e._reactRootContainer.current);n&&n.parentNode!==e&&d("render(...): It looks like the React-rendered content of this container was removed without using React. This is not supported and will cause errors. Instead, call ReactDOM.unmountComponentAtNode to empty a container.")}var a=!!e._reactRootContainer,s=Yv(e),c=!!(s&&so(s));c&&!a&&d("render(...): Replacing React-rendered children with a new root component. If you intended to update the children of this node, you should instead have the existing children update their state and render the new components instead of calling ReactDOM.render."),e.nodeType===Tr&&e.tagName&&e.tagName.toUpperCase()==="BODY"&&d("render(): Rendering components directly into document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try rendering into a container element created for your app.")};function Yv(e){return e?e.nodeType===wi?e.documentElement:e.firstChild:null}function aR(){}function CB(e,n,a,s,c){if(c){if(typeof s=="function"){var p=s;s=function(){var P=fh(f);p.call(P)}}var f=MC(n,s,e,co,null,!1,!1,"",aR);e._reactRootContainer=f,tf(f.current,e);var y=e.nodeType===bn?e.parentNode:e;return Ru(y),Mi(),f}else{for(var _;_=e.lastChild;)e.removeChild(_);if(typeof s=="function"){var S=s;s=function(){var P=fh(x);S.call(P)}}var x=LC(e,co,null,!1,!1,"",aR);e._reactRootContainer=x,tf(x.current,e);var A=e.nodeType===bn?e.parentNode:e;return Ru(A),Mi(function(){bd(n,x,a,s)}),x}}function RB(e,n){e!==null&&typeof e!="function"&&d("%s(...): Expected the last optional `callback` argument to be a function. Instead received: %s.",n,e)}function yh(e,n,a,s,c){rR(a),RB(c===void 0?null:c,"render");var p=a._reactRootContainer,f;if(!p)f=CB(a,n,e,c,s);else{if(f=p,typeof c=="function"){var y=c;c=function(){var _=fh(f);y.call(_)}}bd(n,f,e,c)}return fh(f)}var iR=!1;function TB(e){{iR||(iR=!0,d("findDOMNode is deprecated and will be removed in the next major release. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-find-node"));var n=EB.current;if(n!==null&&n.stateNode!==null){var a=n.stateNode._warnedAboutRefsInRender;a||d("%s is accessing findDOMNode inside its render(). render() should be a pure function of props and state. It should never access something that requires stale data from the previous render, such as refs. Move this logic to componentDidMount and componentDidUpdate instead.",ft(n.type)||"A component"),n.stateNode._warnedAboutRefsInRender=!0}}return e==null?null:e.nodeType===Tr?e:dB(e,"findDOMNode")}function kB(e,n,a){if(d("ReactDOM.hydrate is no longer supported in React 18. Use hydrateRoot instead. Until you switch to the new API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot"),!wd(n))throw new Error("Target container is not a DOM element.");{var s=Iu(n)&&n._reactRootContainer===void 0;s&&d("You are calling ReactDOM.hydrate() on a container that was previously passed to ReactDOMClient.createRoot(). This is not supported. Did you mean to call hydrateRoot(container, element)?")}return yh(null,e,n,!0,a)}function jB(e,n,a){if(d("ReactDOM.render is no longer supported in React 18. Use createRoot instead. Until you switch to the new API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot"),!wd(n))throw new Error("Target container is not a DOM element.");{var s=Iu(n)&&n._reactRootContainer===void 0;s&&d("You are calling ReactDOM.render() on a container that was previously passed to ReactDOMClient.createRoot(). This is not supported. Did you mean to call root.render(element)?")}return yh(null,e,n,!1,a)}function DB(e,n,a,s){if(d("ReactDOM.unstable_renderSubtreeIntoContainer() is no longer supported in React 18. Consider using a portal instead. Until you switch to the createRoot API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot"),!wd(a))throw new Error("Target container is not a DOM element.");if(e==null||!EO(e))throw new Error("parentComponent must be a valid React Component");return yh(e,n,a,!1,s)}var oR=!1;function OB(e){if(oR||(oR=!0,d("unmountComponentAtNode is deprecated and will be removed in the next major release. Switch to the createRoot API. Learn more: https://reactjs.org/link/switch-to-createroot")),!wd(e))throw new Error("unmountComponentAtNode(...): Target container is not a DOM element.");{var n=Iu(e)&&e._reactRootContainer===void 0;n&&d("You are calling ReactDOM.unmountComponentAtNode() on a container that was previously passed to ReactDOMClient.createRoot(). This is not supported. Did you mean to call root.unmount()?")}if(e._reactRootContainer){{var a=Yv(e),s=a&&!so(a);s&&d("unmountComponentAtNode(): The node you're attempting to unmount was rendered by another copy of React.")}return Mi(function(){yh(null,null,e,!1,function(){e._reactRootContainer=null,tx(e)})}),!0}else{{var c=Yv(e),p=!!(c&&so(c)),f=e.nodeType===Tr&&wd(e.parentNode)&&!!e.parentNode._reactRootContainer;p&&d("unmountComponentAtNode(): The node you're attempting to unmount was rendered by React and is not a top-level container. %s",f?"You may have accidentally passed in a React root node instead of its container.":"Instead, have the parent component update its state and rerender in order to remove this component.")}return!1}}TP(pB),jP(fB),DP(hB),OP(Ea),PP(EP),(typeof Map!="function"||Map.prototype==null||typeof Map.prototype.forEach!="function"||typeof Set!="function"||Set.prototype==null||typeof Set.prototype.clear!="function"||typeof Set.prototype.forEach!="function")&&d("React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),fO(AL),yO(Cv,xN,Mi);function PB(e,n){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;if(!mh(n))throw new Error("Target container is not a DOM element.");return uB(e,n,null,a)}function AB(e,n,a,s){return DB(e,n,a,s)}var Kv={usingClientEntryPoint:!1,Events:[so,bl,nf,gS,_S,Cv]};function LB(e,n){return Kv.usingClientEntryPoint||d('You are importing createRoot from "react-dom" which is not supported. You should instead import it from "react-dom/client".'),wB(e,n)}function MB(e,n,a){return Kv.usingClientEntryPoint||d('You are importing hydrateRoot from "react-dom" which is not supported. You should instead import it from "react-dom/client".'),xB(e,n,a)}function qB(e){return fC()&&d("flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task."),Mi(e)}var IB=bB({findFiberByHostInstance:cs,bundleType:1,version:zv,rendererPackageName:"react-dom"});if(!IB&&nn&&window.top===window.self&&(navigator.userAgent.indexOf("Chrome")>-1&&navigator.userAgent.indexOf("Edge")===-1||navigator.userAgent.indexOf("Firefox")>-1)){var sR=window.location.protocol;/^(https?|file):$/.test(sR)&&console.info("%cDownload the React DevTools for a better development experience: https://reactjs.org/link/react-devtools"+(sR==="file:"?`
203You might need to use a local HTTP server (instead of file://): https://reactjs.org/link/react-devtools-faq`:""),"font-weight:bold")}Gr.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Kv,Gr.createPortal=PB,Gr.createRoot=LB,Gr.findDOMNode=TB,Gr.flushSync=qB,Gr.hydrate=kB,Gr.hydrateRoot=MB,Gr.render=jB,Gr.unmountComponentAtNode=OB,Gr.unstable_batchedUpdates=Cv,Gr.unstable_renderSubtreeIntoContainer=AB,Gr.version=zv,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)})();xk.exports=Gr;var Rk=xk.exports;const vh=aw(Rk);var Xv=Rk;
203{var bh=Xv.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;_b.createRoot=function(t,r){bh.usingClientEntryPoint=!0;try{return Xv.createRoot(t,r)}finally{bh.usingClientEntryPoint=!1}},_b.hydrateRoot=function(t,r,i){bh.usingClientEntryPoint=!0;try{return Xv.hydrateRoot(t,r,i)}finally{bh.usingClientEntryPoint=!1}}}/**
204 * react-router v7.14.2
205 *
206 * Copyright (c) Remix Software Inc.
207 *
208 * This source code is licensed under the MIT license found in the
209 * LICENSE.md file in the root directory of this source tree.
210 *
211 * @license MIT
212 */var uR="popstate";function dR(t){return typeof t=="object"&&t!=null&&"pathname"in t&&"search"in t&&"hash"in t&&"state"in t&&"key"in t}function GB(t={}){function r(o,l){var g;let u=(g=l.state)==null?void 0:g.masked,{pathname:d,search:h,hash:m}=u||o.location;return vb("",{pathname:d,search:h,hash:m},l.state&&l.state.usr||null,l.state&&l.state.key||"default",u?{pathname:o.location.pathname,search:o.location.search,hash:o.location.hash}:void 0)}function i(o,l){return typeof l=="string"?l:Ad(l)}return VB(r,i,null,t)}function Zt(t,r){if(t===!1||t===null||typeof t>"u")throw new Error(r)}function da(t,r){if(!t){typeof console<"u"&&console.warn(r);try{throw new Error(r)}catch{}}}function WB(){return Math.random().toString(36).substring(2,10)}function pR(t,r){return{usr:t.state,key:t.key,idx:r,masked:t.unstable_mask?{pathname:t.pathname,search:t.search,hash:t.hash}:void 0}}function vb(t,r,i=null,o,l){return{pathname:typeof t=="string"?t:t.pathname,search:"",hash:"",...typeof r=="string"?_c(r):r,state:i,key:r&&r.key||o||WB(),unstable_mask:l}}function Ad({pathname:t="/",search:r="",hash:i=""}){return r&&r!=="?"&&(t+=r.charAt(0)==="?"?r:"?"+r),i&&i!=="#"&&(t+=i.charAt(0)==="#"?i:"#"+i),t}function _c(t){let r={};if(t){let i=t.indexOf("#");i>=0&&(r.hash=t.substring(i),t=t.substring(0,i));let o=t.indexOf("?");o>=0&&(r.search=t.substring(o),t=t.substring(0,o)),t&&(r.pathname=t)}return r}function VB(t,r,i,o={}){let{window:l=document.defaultView,v5Compat:u=!1}=o,d=l.history,h="POP",m=null,g=w();g==null&&(g=0,d.replaceState({...d.state,idx:g},""));function w(){return(d.state||{idx:null}).idx}function b(){h="POP";let L=w(),M=L==null?null:L-g;g=L,m&&m({action:h,location:R.location,delta:M})}function E(L,M){h="PUSH";let G=dR(L)?L:vb(R.location,L,M);g=w()+1;let $=pR(G,g),z=R.createHref(G.unstable_mask||G);try{d.pushState($,"",z)}catch(W){if(W instanceof DOMException&&W.name==="DataCloneError")throw W;l.location.assign(z)}u&&m&&m({action:h,location:R.location,delta:1})}function T(L,M){h="REPLACE";let G=dR(L)?L:vb(R.location,L,M);g=w();let $=pR(G,g),z=R.createHref(G.unstable_mask||G);d.replaceState($,"",z),u&&m&&m({action:h,location:R.location,delta:0})}function O(L){return YB(L)}let R={get action(){return h},get location(){return t(l,d)},listen(L){if(m)throw new Error("A history only accepts one active listener");return l.addEventListener(uR,b),m=L,()=>{l.removeEventListener(uR,b),m=null}},createHref(L){return r(l,L)},createURL:O,encodeLocation(L){let M=O(L);return{pathname:M.pathname,search:M.search,hash:M.hash}},push:E,replace:T,go(L){return d.go(L)}};return R}function YB(t,r=!1){let i="http://localhost";
212typeof window<"u"&&(i=window.location.origin!=="null"?window.location.origin:window.location.href),Zt(i,"No window.location.(origin|href) available to create URL");let o=typeof t=="string"?t:Ad(t);return o=o.replace(/ $/,"%20"),!r&&o.startsWith("//")&&(o=i+o),new URL(o,i)}function Tk(t,r,i="/"){return KB(t,r,i,!1)}function KB(t,r,i,o){let l=typeof r=="string"?_c(r):r,u=Hi(l.pathname||"/",i);if(u==null)return null;let d=kk(t);QB(d);let h=null;for(let m=0;h==null&&m<d.length;++m){let g=sU(u);h=iU(d[m],g,o)}return h}function kk(t,r=[],i=[],o="",l=!1){let u=(d,h,m=l,g)=>{let w={relativePath:g===void 0?d.path||"":g,caseSensitive:d.caseSensitive===!0,childrenIndex:h,route:d};if(w.relativePath.startsWith("/")){if(!w.relativePath.startsWith(o)&&m)return;Zt(w.relativePath.startsWith(o),`Absolute route path "${w.relativePath}" nested under path "${o}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),w.relativePath=w.relativePath.slice(o.length)}let b=za([o,w.relativePath]),E=i.concat(w);d.children&&d.children.length>0&&(Zt(d.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${b}".`),kk(d.children,r,E,b,m)),!(d.path==null&&!d.index)&&r.push({path:b,score:rU(b,d.index),routesMeta:E})};return t.forEach((d,h)=>{var m;if(d.path===""||!((m=d.path)!=null&&m.includes("?")))u(d,h);else for(let g of jk(d.path))u(d,h,!0,g)}),r}function jk(t){let r=t.split("/");if(r.length===0)return[];let[i,...o]=r,l=i.endsWith("?"),u=i.replace(/\?$/,"");if(o.length===0)return l?[u,""]:[u];let d=jk(o.join("/")),h=[];return h.push(...d.map(m=>m===""?u:[u,m].join("/"))),l&&h.push(...d),h.map(m=>t.startsWith("/")&&m===""?"/":m)}function QB(t){t.sort((r,i)=>r.score!==i.score?i.score-r.score:aU(r.routesMeta.map(o=>o.childrenIndex),i.routesMeta.map(o=>o.childrenIndex)))}var XB=/^:[\w-]+$/,JB=3,ZB=2,eU=1,tU=10,nU=-2,fR=t=>t==="*";function rU(t,r){let i=t.split("/"),o=i.length;return i.some(fR)&&(o+=nU),r&&(o+=ZB),i.filter(l=>!fR(l)).reduce((l,u)=>l+(XB.test(u)?JB:u===""?eU:tU),o)}function aU(t,r){return t.length===r.length&&t.slice(0,-1).every((o,l)=>o===r[l])?t[t.length-1]-r[r.length-1]:0}function iU(t,r,i=!1){let{routesMeta:o}=t,l={},u="/",d=[];for(let h=0;h<o.length;++h){let m=o[h],g=h===o.length-1,w=u==="/"?r:r.slice(u.length)||"/",b=Wh({path:m.relativePath,caseSensitive:m.caseSensitive,end:g},w),E=m.route;if(!b&&g&&i&&!o[o.length-1].route.index&&(b=Wh({path:m.relativePath,caseSensitive:m.caseSensitive,end:!1},w)),!b)return null;
212Object.assign(l,b.params),d.push({params:l,pathname:za([u,b.pathname]),pathnameBase:dU(za([u,b.pathnameBase])),route:E}),b.pathnameBase!=="/"&&(u=za([u,b.pathnameBase]))}return d}function Wh(t,r){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[i,o]=oU(t.path,t.caseSensitive,t.end),l=r.match(i);if(!l)return null;let u=l[0],d=u.replace(/(.)\/+$/,"$1"),h=l.slice(1);return{params:o.reduce((g,{paramName:w,isOptional:b},E)=>{if(w==="*"){let O=h[E]||"";d=u.slice(0,u.length-O.length).replace(/(.)\/+$/,"$1")}const T=h[E];return b&&!T?g[w]=void 0:g[w]=(T||"").replace(/%2F/g,"/"),g},{}),pathname:u,pathnameBase:d,pattern:t}}function oU(t,r=!1,i=!0){da(t==="*"||!t.endsWith("*")||t.endsWith("/*"),`Route path "${t}" will be treated as if it were "${t.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${t.replace(/\*$/,"/*")}".`);let o=[],l="^"+t.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(d,h,m,g,w)=>{if(o.push({paramName:h,isOptional:m!=null}),m){let b=w.charAt(g+d.length);return b&&b!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return t.endsWith("*")?(o.push({paramName:"*"}),l+=t==="*"||t==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):i?l+="\\/*$":t!==""&&t!=="/"&&(l+="(?:(?=\\/|$))"),[new RegExp(l,r?void 0:"i"),o]}function sU(t){try{return t.split("/").map(r=>decodeURIComponent(r).replace(/\//g,"%2F")).join("/")}catch(r){return da(!1,`The URL path "${t}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${r}).`),t}}function Hi(t,r){if(r==="/")return t;if(!t.toLowerCase().startsWith(r.toLowerCase()))return null;let i=r.endsWith("/")?r.length-1:r.length,o=t.charAt(i);return o&&o!=="/"?null:t.slice(i)||"/"}var lU=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function cU(t,r="/"){let{pathname:i,search:o="",hash:l=""}=typeof t=="string"?_c(t):t,u;return i?(i=Dk(i),i.startsWith("/")?u=hR(i.substring(1),"/"):u=hR(i,r)):u=r,{pathname:u,search:pU(o),hash:fU(l)}}function hR(t,r){let i=Vh(r).split("/");return t.split("/").forEach(l=>{l===".."?i.length>1&&i.pop():l!=="."&&i.push(l)}),i.length>1?i.join("/"):"/"}function Jv(t,r,i,o){return`Cannot include a '${t}' character in a manually specified \`to.${r}\` field [${JSON.stringify(o)}].  Please separate it out to the \`to.${i}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function uU(t){return t.filter((r,i)=>i===0||r.route.path&&r.route.path.length>0)}function iw(t){let r=uU(t);return r.map((i,o)=>o===r.length-1?i.pathname:i.pathnameBase)}function dm(t,r,i,o=!1){let l;typeof t=="string"?l=_c(t):(l={...t},Zt(!l.pathname||!l.pathname.includes("?"),Jv("?","pathname","search",l)),Zt(!l.pathname||!l.pathname.includes("#"),Jv("#","pathname","hash",l)),Zt(!l.search||!l.search.includes("#"),Jv("#","search","hash",l)));let u=t===""||l.pathname==="",d=u?"/":l.pathname,h;if(d==null)h=i;else{let b=r.length-1;if(!o&&d.startsWith("..")){let E=d.split("/");for(;E[0]==="..";)E.shift(),b-=1;l.pathname=E.join("/")}h=b>=0?r[b]:"/"}let m=cU(l,h),g=d&&d!=="/"&&d.endsWith("/"),w=(u||d===".")&&i.endsWith("/");return!m.pathname.endsWith("/")&&(g||w)&&(m.pathname+="/"),m}var Dk=t=>t.replace(/\/\/+/g,"/"),za=t=>Dk(t.join("/")),Vh=t=>t.replace(/\/+$/,""),dU=t=>Vh(t).replace(/^\/*/,"/"),pU=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,fU=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t,hU=class{constructor(t,r,i,o=!1){this.status=t,this.statusText=r||"",this.internal=o,i instanceof Error?(this.data=i.toString(),this.error=i):this.data=i}};function mU(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.internal=="boolean"&&"data"in t}function yU(t){let r=t.map(i=>i.route.path).filter(Boolean);return za(r)||"/"}var Ok=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function Pk(t,r){let i=t;if(typeof i!="string"||!lU.test(i))return{absoluteURL:void 0,isExternal:!1,to:i};let o=i,l=!1;if(Ok)try{let u=new URL(window.location.href),d=i.startsWith("//")?new URL(u.protocol+i):new URL(i),h=Hi(d.pathname,r);d.origin===u.origin&&h!=null?i=h+d.search+d.hash:l=!0}catch{da(!1,`<Link to="${i}">
212 contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:o,isExternal:l,to:i}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Ak=["POST","PUT","PATCH","DELETE"];new Set(Ak);var gU=["GET",...Ak];new Set(gU);var vc=k.createContext(null);vc.displayName="DataRouter";var pm=k.createContext(null);pm.displayName="DataRouterState";var Lk=k.createContext(!1);function _U(){return k.useContext(Lk)}var Mk=k.createContext({isTransitioning:!1});Mk.displayName="ViewTransition";var vU=k.createContext(new Map);vU.displayName="Fetchers";var bU=k.createContext(null);bU.displayName="Await";var Kr=k.createContext(null);Kr.displayName="Navigation";var Gd=k.createContext(null);Gd.displayName="Location";var fa=k.createContext({outlet:null,matches:[],isDataRoute:!1});fa.displayName="Route";var ow=k.createContext(null);ow.displayName="RouteError";var qk="REACT_ROUTER_ERROR",wU="REDIRECT",SU="ROUTE_ERROR_RESPONSE";function xU(t){if(t.startsWith(`${qk}:${wU}:{`))try{let r=JSON.parse(t.slice(28));if(typeof r=="object"&&r&&typeof r.status=="number"&&typeof r.statusText=="string"&&typeof r.location=="string"&&typeof r.reloadDocument=="boolean"&&typeof r.replace=="boolean")return r}catch{}}function EU(t){if(t.startsWith(`${qk}:${SU}:{`))try{let r=JSON.parse(t.slice(40));if(typeof r=="object"&&r&&typeof r.status=="number"&&typeof r.statusText=="string")return new hU(r.status,r.statusText,r.data)}catch{}}function CU(t,{relative:r}={}){Zt(bc(),"useHref() may be used only in the context of a <Router> component.");let{basename:i,navigator:o}=k.useContext(Kr),{hash:l,pathname:u,search:d}=Wd(t,{relative:r}),h=u;return i!=="/"&&(h=u==="/"?i:za([i,u])),o.createHref({pathname:h,search:d,hash:l})}function bc(){return k.useContext(Gd)!=null}function Lr(){return Zt(bc(),"useLocation() may be used only in the context of a <Router> component."),k.useContext(Gd).location}var Ik="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nk(t){k.useContext(Kr).static||k.useLayoutEffect(t)}function sw(){let{isDataRoute:t}=k.useContext(fa);return t?UU():RU()}function RU(){Zt(bc(),"useNavigate() may be used only in the context of a <Router> component.");let t=k.useContext(vc),{basename:r,navigator:i}=k.useContext(Kr),{matches:o}=k.useContext(fa),{pathname:l}=Lr(),u=JSON.stringify(iw(o)),d=k.useRef(!1);return Nk(()=>{d.current=!0}),k.useCallback((m,g={})=>{if(da(d.current,Ik),!d.current)return;if(typeof m=="number"){i.go(m);return}let w=dm(m,JSON.parse(u),l,g.relative==="path");t==null&&r!=="/"&&(w.pathname=w.pathname==="/"?r:za([r,w.pathname])),(g.replace?i.replace:i.push)(w,g.state,g)},[r,i,u,l,t])}var TU=k.createContext(null);function kU(t){let r=k.useContext(fa).outlet;return k.useMemo(()=>r&&k.createElement(TU.Provider,{value:t},r),[r,t])}function n9(){let{matches:t}=k.useContext(fa),r=t[t.length-1];return(r==null?void 0:r.params)??{}}function Wd(t,{relative:r}={}){let{matches:i}=k.useContext(fa),{pathname:o}=Lr(),l=JSON.stringify(iw(i));return k.useMemo(()=>dm(t,JSON.parse(l),o,r==="path"),[t,l,o,r])}function jU(t,r){return Bk(t,r)}function Bk(t,r,i){var L;Zt(bc(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:o}=k.useContext(Kr),{matches:l}=k.useContext(fa),u=l[l.length-1],d=u?u.params:{},h=u?u.pathname:"/",m=u?u.pathnameBase:"/",g=u&&u.route;{let M=g&&g.path||"";Fk(h,!g||M.endsWith("*")||M.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${h}" (under <Route path="${M}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
213
214Please change the parent <Route path="${M}"> to <Route path="${M==="/"?"*":`${M}/*`}">.`)}let w=Lr(),b;if(r){let M=typeof r=="string"?_c(r):r;Zt(m==="/"||((L=M.pathname)==null?void 0:L.startsWith(m)),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${m}" but pathname "${M.pathname}" was given in the \`location\` prop.`),b=M}else b=w;let E=b.pathname||"/",T=E;if(m!=="/"){let M=m.replace(/^\//,"").split("/");T="/"+E.replace(/^\//,"").split("/").slice(M.length).join("/")}let O=Tk(t,{pathname:T});da(g||O!=null,`No routes matched location "${b.pathname}${b.search}${b.hash}" `),da(O==null||O[O.length-1].route.element!==void 0||O[O.length-1].route.Component!==void 0||O[O.length-1].route.lazy!==void 0,`Matched leaf route at location "${b.pathname}${b.search}${b.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let R=LU(O&&O.map(M=>Object.assign({},M,{params:Object.assign({},d,M.params),pathname:za([m,o.encodeLocation?o.encodeLocation(M.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:M.pathname]),pathnameBase:M.pathnameBase==="/"?m:za([m,o.encodeLocation?o.encodeLocation(M.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:M.pathnameBase])})),l,i);return r&&R?k.createElement(Gd.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",unstable_mask:void 0,...b},navigationType:"POP"}},R):R}function DU(){let t=BU(),r=mU(t)?`${t.status} ${t.statusText}`:t instanceof Error?t.message:JSON.stringify(t),i=t instanceof Error?t.stack:null,o="rgba(200,200,200, 0.5)",l={padding:"0.5rem",backgroundColor:o},u={padding:"2px 4px",backgroundColor:o},d=null;return console.error("Error handled by React Router default ErrorBoundary:",t),d=k.createElement(k.Fragment,null,k.createElement("p",null,"💿 Hey developer 👋"),k.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",k.createElement("code",{style:u},"ErrorBoundary")," or"," ",k.createElement("code",{style:u},"errorElement")," prop on your route.")),k.createElement(k.Fragment,null,k.createElement("h2",null,"Unexpected Application 
214Error!"),k.createElement("h3",{style:{fontStyle:"italic"}},r),i?k.createElement("pre",{style:l},i):null,d)}var OU=k.createElement(DU,null),Uk=class extends k.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,r){return r.location!==t.location||r.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:r.error,location:r.location,revalidation:t.revalidation||r.revalidation}}componentDidCatch(t,r){this.props.onError?this.props.onError(t,r):console.error("React Router caught the following error during render",t)}render(){let t=this.state.error;if(this.context&&typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){const i=EU(t.digest);i&&(t=i)}let r=t!==void 0?k.createElement(fa.Provider,{value:this.props.routeContext},k.createElement(ow.Provider,{value:t,children:this.props.component})):this.props.children;return this.context?k.createElement(PU,{error:t},r):r}};Uk.contextType=Lk;var Zv=new WeakMap;function PU({children:t,error:r}){let{basename:i}=k.useContext(Kr);if(typeof r=="object"&&r&&"digest"in r&&typeof r.digest=="string"){let o=xU(r.digest);if(o){let l=Zv.get(r);if(l)throw l;let u=Pk(o.location,i);if(Ok&&!Zv.get(r))if(u.isExternal||o.reloadDocument)window.location.href=u.absoluteURL||u.to;else{const d=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(u.to,{replace:o.replace}));throw Zv.set(r,d),d}return k.createElement("meta",{httpEquiv:"refresh",content:`0;url=${u.absoluteURL||u.to}`})}}return t}function AU({routeContext:t,match:r,children:i}){let o=k.useContext(vc);return o&&o.static&&o.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=r.route.id),k.createElement(fa.Provider,{value:t},i)}function LU(t,r=[],i){let o=i==null?void 0:i.state;if(t==null){if(!o)return null;if(o.errors)t=o.matches;else if(r.length===0&&!o.initialized&&o.matches.length>0)t=o.matches;else return null}let l=t,u=o==null?void 0:o.errors;if(u!=null){let w=l.findIndex(b=>b.route.id&&(u==null?void 0:u[b.route.id])!==void 0);Zt(w>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(u).join(",")}`),l=l.slice(0,Math.min(l.length,w+1))}let d=!1,h=-1;if(i&&o){d=o.renderFallback;for(let w=0;w<l.length;w++){let b=l[w];if((b.route.HydrateFallback||b.route.hydrateFallbackElement)&&(h=w),b.route.id){let{loaderData:E,errors:T}=o,O=b.route.loader&&!E.hasOwnProperty(b.route.id)&&(!T||T[b.route.id]===void 0);if(b.route.lazy||O){i.isStatic&&(d=!0),h>=0?l=l.slice(0,h+1):l=[l[0]];break}}}}let m=i==null?void 0:i.onError,g=o&&m?(w,b)=>{var E,T;m(w,{location:o.location,params:((T=(E=o.matches)==null?void 0:E[0])==null?void 0:T.params)??{},unstable_pattern:yU(o.matches),errorInfo:b})}:void 0;return l.reduceRight((w,b,E)=>{let T,O=!1,R=null,L=null;o&&(T=u&&b.route.id?u[b.route.id]:void 0,R=b.route.errorElement||OU,d&&(h<0&&E===0?(Fk("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),O=!0,L=null):h===E&&(O=!0,L=b.route.hydrateFallbackElement||null)));let M=r.concat(l.slice(0,E+1)),G=()=>{let $;return T?$=R:O?$=L:b.route.Component?$=k.createElement(b.route.Component,null):b.route.element?$=b.route.element:$=w,k.createElement(AU,{match:b,routeContext:{outlet:w,matches:M,isDataRoute:o!=null},children:$})};return o&&(b.route.ErrorBoundary||b.route.errorElement||E===0)?k.createElement(Uk,{location:o.location,revalidation:o.revalidation,component:R,error:T,children:G(),routeContext:{outlet:null,matches:M,isDataRoute:!0},onError:g}):G()},null)}function lw(t){return`${t} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function MU(t){let r=k.useContext(vc);return Zt(r,lw(t)),r}function qU(t){let r=k.useContext(pm);return Zt(r,lw(t)),r}function IU(t){let r=k.useContext(fa);return Zt(r,lw(t)),r}function cw(t){let r=IU(t),i=r.matches[r.matches.length-1];return Zt(i.route.id,`${t} can only be used on routes that contain a unique "id"`),i.route.id}function NU(){return cw("useRouteId")}function BU(){var o;let t=k.useContext(ow),r=qU("useRouteError"),i=cw("useRouteError");return t!==void 0?t:(o=r.errors)==null?void 0:o[i]}function UU(){let{router:t}=MU("useNavigate"),r=cw("useNavigate"),i=k.useRef(!1);return Nk(()=>{i.current=!0}),k.useCallback(async(l,u={})=>{da(i.current,Ik),i.current&&(typeof l=="number"?await t.navigate(l):await t.navigate(l,{fromRouteId:r,...u}))},[t,r])}var mR={};function Fk(t,r,i){!r&&!mR[t]&&(mR[t]=!0,da(!1,i))}k.memo(FU);function FU({routes:t,future:r,state:i,isStatic:o,onError:l}){return Bk(t,void 0,{state:i,isStatic:o,onError:l,future:r})}function zU({to:t,replace:r,state:i,relative:o}){Zt(bc(),"<Navigate> may be used only in the context of a <Router> component.");let{static:l}=k.useContext(Kr);da(!l,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:u}=k.useContext(fa),{pathname:d}=Lr(),h=sw(),m=dm(t,iw(u),d,o==="path"),g=JSON.stringify(m);return k.useEffect(()=>{h(JSON.parse(g),{replace:r,state:i,relative:o})},[h,g,o,r,i]),null}function r9(t){return kU(t.context)}function mt(t){Zt(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function $U({basename:t="/",children:r=null,location:i,navigationType:o="POP",navigator:l,static:u=!1,unstable_useTransitions:d}){Zt(!bc(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let h=t.replace(/^\/*/,"/"),m=k.useMemo(()=>({basename:h,navigator:l,static:u,unstable_useTransitions:d,future:{}}),[h,l,u,d]);typeof i=="string"&&(i=_c(i));let{pathname:g="/",search:w="",hash:b="",state:E=null,key:T="default",unstable_mask:O}=i,R=k.useMemo(()=>{let L=Hi(g,h);return L==null?null:{location:{pathname:L,search:w,hash:b,state:E,key:T,unstable_mask:O},navigationType:o}},[h,g,w,b,E,T,o,O]);
214return da(R!=null,`<Router basename="${h}"> is not able to match the URL "${g}${w}${b}" because it does not start with the basename, so the <Router> won't render anything.`),R==null?null:k.createElement(Kr.Provider,{value:m},k.createElement(Gd.Provider,{children:r,value:R}))}function HU({children:t,location:r}){return jU(bb(t),r)}function bb(t,r=[]){let i=[];return k.Children.forEach(t,(o,l)=>{if(!k.isValidElement(o))return;let u=[...r,l];if(o.type===k.Fragment){i.push.apply(i,bb(o.props.children,u));return}Zt(o.type===mt,`[${typeof o.type=="string"?o.type:o.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),Zt(!o.props.index||!o.props.children,"An index route cannot have child routes.");let d={id:o.props.id||u.join("-"),caseSensitive:o.props.caseSensitive,element:o.props.element,Component:o.props.Component,index:o.props.index,path:o.props.path,middleware:o.props.middleware,loader:o.props.loader,action:o.props.action,hydrateFallbackElement:o.props.hydrateFallbackElement,HydrateFallback:o.props.HydrateFallback,errorElement:o.props.errorElement,ErrorBoundary:o.props.ErrorBoundary,hasErrorBoundary:o.props.hasErrorBoundary===!0||o.props.ErrorBoundary!=null||o.props.errorElement!=null,shouldRevalidate:o.props.shouldRevalidate,handle:o.props.handle,lazy:o.props.lazy};o.props.children&&(d.children=bb(o.props.children,u)),i.push(d)}),i}var Lh="get",Mh="application/x-www-form-urlencoded";function fm(t){return typeof HTMLElement<"u"&&t instanceof HTMLElement}function GU(t){return fm(t)&&t.tagName.toLowerCase()==="button"}function WU(t){return fm(t)&&t.tagName.toLowerCase()==="form"}function VU(t){return fm(t)&&t.tagName.toLowerCase()==="input"}function YU(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}function KU(t,r){return t.button===0&&(!r||r==="_self")&&!YU(t)}function wb(t=""){return new URLSearchParams(typeof t=="string"||Array.isArray(t)||t instanceof URLSearchParams?t:Object.keys(t).reduce((r,i)=>{let o=t[i];return r.concat(Array.isArray(o)?o.map(l=>[i,l]):[[i,o]])},[]))}function QU(t,r){let i=wb(t);return r&&r.forEach((o,l)=>{i.has(l)||r.getAll(l).forEach(u=>{i.append(l,u)})}),i}var wh=null;function XU(){if(wh===null)try{new FormData(document.createElement("form"),0),wh=!1}catch{wh=!0}return wh}var JU=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function eb(t){return t!=null&&!JU.has(t)?(da(!1,`"${t}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Mh}"`),null):t}function ZU(t,r){let i,o,l,u,d;if(WU(t)){let h=t.getAttribute("action");o=h?Hi(h,r):null,i=t.getAttribute("method")||Lh,l=eb(t.getAttribute("enctype"))||Mh,u=new FormData(t)}else if(GU(t)||VU(t)&&(t.type==="submit"||t.type==="image")){let h=t.form;if(h==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let m=t.getAttribute("formaction")||h.getAttribute("action");if(o=m?Hi(m,r):null,i=t.getAttribute("formmethod")||h.getAttribute("method")||Lh,l=eb(t.getAttribute("formenctype"))||eb(h.getAttribute("enctype"))||Mh,u=new FormData(h,t),!XU()){let{name:g,type:w,value:b}=t;if(w==="image"){let E=g?`${g}.`:"";u.append(`${E}x`,"0"),u.append(`${E}y`,"0")}else g&&u.append(g,b)}}else{if(fm(t))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');i=Lh,o=null,l=Mh,d=t}return u&&l==="text/plain"&&(d=u,u=void 0),{action:o,method:i.toLowerCase(),encType:l,formData:u,body:d}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function uw(t,r){if(t===!1||t===null||typeof t>"u")throw new Error(r)}function zk(t,r,i,o){let l=typeof t=="string"?new URL(t,typeof window>"u"?"server://singlefetch/":window.location.origin):t;return i?l.pathname.endsWith("/")?l.pathname=`${l.pathname}_.${o}`:l.pathname=`${l.pathname}.${o}`:l.pathname==="/"?l.pathname=`_root.${o}`:r&&Hi(l.pathname,r)==="/"?l.pathname=`${Vh(r)}/_root.${o}`:l.pathname=`${Vh(l.pathname)}.${o}`,l}async function eF(t,r){if(t.id in r)return r[t.id];try{let i=await import(t.module);return r[t.id]=i,i}catch(i){return console.error(`Error loading route module \`${t.module}\`, reloading page...`),console.error(i),window.__reactRouterContext&&window.__reactRouterContext.
214isSpaMode,window.location.reload(),new Promise(()=>{})}}function tF(t){return t==null?!1:t.href==null?t.rel==="preload"&&typeof t.imageSrcSet=="string"&&typeof t.imageSizes=="string":typeof t.rel=="string"&&typeof t.href=="string"}async function nF(t,r,i){let o=await Promise.all(t.map(async l=>{let u=r.routes[l.route.id];if(u){let d=await eF(u,i);return d.links?d.links():[]}return[]}));return oF(o.flat(1).filter(tF).filter(l=>l.rel==="stylesheet"||l.rel==="preload").map(l=>l.rel==="stylesheet"?{...l,rel:"prefetch",as:"style"}:{...l,rel:"prefetch"}))}function yR(t,r,i,o,l,u){let d=(m,g)=>i[g]?m.route.id!==i[g].route.id:!0,h=(m,g)=>{var w;return i[g].pathname!==m.pathname||((w=i[g].route.path)==null?void 0:w.endsWith("*"))&&i[g].params["*"]!==m.params["*"]};return u==="assets"?r.filter((m,g)=>d(m,g)||h(m,g)):u==="data"?r.filter((m,g)=>{var b;let w=o.routes[m.route.id];if(!w||!w.hasLoader)return!1;if(d(m,g)||h(m,g))return!0;if(m.route.shouldRevalidate){let E=m.route.shouldRevalidate({currentUrl:new URL(l.pathname+l.search+l.hash,window.origin),currentParams:((b=i[0])==null?void 0:b.params)||{},nextUrl:new URL(t,window.origin),nextParams:m.params,defaultShouldRevalidate:!0});if(typeof E=="boolean")return E}return!0}):[]}function rF(t,r,{includeHydrateFallback:i}={}){return aF(t.map(o=>{let l=r.routes[o.route.id];if(!l)return[];let u=[l.module];return l.clientActionModule&&(u=u.concat(l.clientActionModule)),l.clientLoaderModule&&(u=u.concat(l.clientLoaderModule)),i&&l.hydrateFallbackModule&&(u=u.concat(l.hydrateFallbackModule)),l.imports&&(u=u.concat(l.imports)),u}).flat(1))}function aF(t){return[...new Set(t)]}function iF(t){let r={},i=Object.keys(t).sort();for(let o of i)r[o]=t[o];return r}function oF(t,r){let i=new Set;return new Set(r),t.reduce((o,l)=>{let u=JSON.stringify(iF(l));return i.has(u)||(i.add(u),o.push({key:u,link:l})),o},[])}function dw(){let t=k.useContext(vc);return uw(t,"You must render this element inside a <DataRouterContext.Provider> element"),t}function sF(){let t=k.useContext(pm);return uw(t,"You must render this element inside a <DataRouterStateContext.Provider> element"),t}var pw=k.createContext(void 0);pw.displayName="FrameworkContext";function fw(){let t=k.useContext(pw);return uw(t,"You must render this element inside a <HydratedRouter> element"),t}function lF(t,r){let i=k.useContext(pw),[o,l]=k.useState(!1),[u,d]=k.useState(!1),{onFocus:h,onBlur:m,onMouseEnter:g,onMouseLeave:w,onTouchStart:b}=r,E=k.useRef(null);k.useEffect(()=>{if(t==="render"&&d(!0),t==="viewport"){let R=M=>{M.forEach(G=>{d(G.isIntersecting)})},L=new IntersectionObserver(R,{threshold:.5});return E.current&&L.observe(E.current),()=>{L.disconnect()}}},[t]),k.useEffect(()=>{if(o){let R=setTimeout(()=>{d(!0)},100);return()=>{clearTimeout(R)}}},[o]);let T=()=>{l(!0)},O=()=>{l(!1),d(!1)};return i?t!=="intent"?[u,E,{}]:[u,E,{onFocus:xd(h,T),onBlur:xd(m,O),onMouseEnter:xd(g,T),onMouseLeave:xd(w,O),onTouchStart:xd(b,T)}]:[!1,E,{}]}function xd(t,r){return i=>{t&&t(i),i.defaultPrevented||r(i)}}function cF({page:t,...r}){let i=_U(),{router:o}=dw(),l=k.useMemo(()=>Tk(o.routes,t,o.basename),[o.routes,t,o.basename]);return l?i?k.createElement(dF,{page:t,matches:l,...r}):k.createElement(pF,{page:t,matches:l,...r}):null}function uF(t){let{manifest:r,routeModules:i}=fw(),[o,l]=k.useState([]);return k.useEffect(()=>{let u=!1;return nF(t,r,i).then(d=>{u||l(d)}),()=>{u=!0}},[t,r,i]),o}function dF({page:t,matches:r,...i}){let o=Lr(),{future:l}=fw(),{basename:u}=dw(),d=k.useMemo(()=>{if(t===o.pathname+o.search+o.hash)return[];let h=zk(t,u,l.unstable_trailingSlashAwareDataRequests,"rsc"),m=!1,g=[];for(let w of r)typeof w.route.shouldRevalidate=="function"?m=!0:g.push(w.route.id);return m&&g.length>0&&h.searchParams.set("_routes",g.join(",")),[h.pathname+h.search]},[u,l.unstable_trailingSlashAwareDataRequests,t,o,r]);return k.createElement(k.Fragment,null,d.map(h=>k.createElement("link",{key:h,rel:"prefetch",as:"fetch",href:h,...i})))}function pF({page:t,matches:r,...i}){let o=Lr(),{future:l,manifest:u,routeModules:d}=fw(),{basename:h}=dw(),{loaderData:m,matches:g}=sF(),w=k.useMemo(()=>yR(t,r,g,u,o,"data"),[t,r,g,u,o]),b=k.useMemo(()=>yR(t,r,g,u,o,"assets"),[t,r,g,u,o]),E=k.useMemo(()=>
214{if(t===o.pathname+o.search+o.hash)return[];let R=new Set,L=!1;if(r.forEach(G=>{var z;let $=u.routes[G.route.id];!$||!$.hasLoader||(!w.some(W=>W.route.id===G.route.id)&&G.route.id in m&&((z=d[G.route.id])!=null&&z.shouldRevalidate)||$.hasClientLoader?L=!0:R.add(G.route.id))}),R.size===0)return[];let M=zk(t,h,l.unstable_trailingSlashAwareDataRequests,"data");return L&&R.size>0&&M.searchParams.set("_routes",r.filter(G=>R.has(G.route.id)).map(G=>G.route.id).join(",")),[M.pathname+M.search]},[h,l.unstable_trailingSlashAwareDataRequests,m,o,u,w,r,t,d]),T=k.useMemo(()=>rF(b,u),[b,u]),O=uF(b);return k.createElement(k.Fragment,null,E.map(R=>k.createElement("link",{key:R,rel:"prefetch",as:"fetch",href:R,...i})),T.map(R=>k.createElement("link",{key:R,rel:"modulepreload",href:R,...i})),O.map(({key:R,link:L})=>k.createElement("link",{key:R,nonce:i.nonce,...L,crossOrigin:L.crossOrigin??i.crossOrigin})))}function fF(...t){return r=>{t.forEach(i=>{typeof i=="function"?i(r):i!=null&&(i.current=r)})}}var hF=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{hF&&(window.__reactRouterVersion="7.14.2")}catch{}function mF({basename:t,children:r,unstable_useTransitions:i,window:o}){let l=k.useRef();l.current==null&&(l.current=GB({window:o,v5Compat:!0}));let u=l.current,[d,h]=k.useState({action:u.action,location:u.location}),m=k.useCallback(g=>{i===!1?h(g):k.startTransition(()=>h(g))},[i]);return k.useLayoutEffect(()=>u.listen(m),[u,m]),k.createElement($U,{basename:t,children:r,location:d.location,navigationType:d.action,navigator:u,unstable_useTransitions:i})}var $k=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,hw=k.forwardRef(function({onClick:r,discover:i="render",prefetch:o="none",relative:l,reloadDocument:u,replace:d,unstable_mask:h,state:m,target:g,to:w,preventScrollReset:b,viewTransition:E,unstable_defaultShouldRevalidate:T,...O},R){let{basename:L,navigator:M,unstable_useTransitions:G}=k.useContext(Kr),$=typeof w=="string"&&$k.test(w),z=Pk(w,L);w=z.to;let W=CU(w,{relative:l}),ae=Lr(),Z=null;if(h){let ne=dm(h,[],ae.unstable_mask?ae.unstable_mask.pathname:"/",!0);L!=="/"&&(ne.pathname=ne.pathname==="/"?L:za([L,ne.pathname])),Z=M.createHref(ne)}let[ve,we,je]=lF(o,O),ke=vF(w,{replace:d,unstable_mask:h,state:m,target:g,preventScrollReset:b,relative:l,viewTransition:E,unstable_defaultShouldRevalidate:T,unstable_useTransitions:G});function De(ne){r&&r(ne),ne.defaultPrevented||ke(ne)}let N=!(z.isExternal||u),X=k.createElement("a",{...O,...je,href:(N?Z:void 0)||z.absoluteURL||W,onClick:N?De:r,ref:fF(R,we),target:g,"data-discover":!$&&i==="render"?"true":void 0});return ve&&!$?k.createElement(k.Fragment,null,X,k.createElement(cF,{page:W})):X});hw.displayName="Link";var yF=k.forwardRef(function({"aria-current":r="page",caseSensitive:i=!1,className:o="",end:l=!1,style:u,to:d,viewTransition:h,children:m,...g},w){let b=Wd(d,{relative:g.relative}),E=Lr(),T=k.useContext(pm),{navigator:O,basename:R}=k.useContext(Kr),L=T!=null&&EF(b)&&h===!0,M=O.encodeLocation?O.encodeLocation(b).pathname:b.pathname,G=E.pathname,$=T&&T.navigation&&T.navigation.location?T.navigation.location.pathname:null;i||(G=G.toLowerCase(),$=$?$.toLowerCase():null,M=M.toLowerCase()),$&&R&&($=Hi($,R)||$);const z=M!=="/"&&M.endsWith("/")?M.length-1:M.length;let W=G===M||!l&&G.startsWith(M)&&G.charAt(z)==="/",ae=$!=null&&($===M||!l&&$.startsWith(M)&&$.charAt(M.length)==="/"),Z={isActive:W,isPending:ae,isTransitioning:L},ve=W?r:void 0,we;typeof o=="function"?we=o(Z):we=[o,W?"active":null,ae?"pending":null,L?"transitioning":null].filter(Boolean).join(" ");let je=typeof u=="function"?u(Z):u;return k.createElement(hw,{...g,"aria-current":ve,className:we,ref:w,style:je,to:d,viewTransition:h},typeof m=="function"?m(Z):m)});yF.displayName="NavLink";var gF=k.forwardRef(({discover:t="render",fetcherKey:r,navigate:i,reloadDocument:o,replace:l,state:u,method:d=Lh,action:h,onSubmit:m,relative:g,preventScrollReset:w,viewTransition:b,unstable_defaultShouldRevalidate:E,...T},O)=>{let{unstable_useTransitions:R}=k.useContext(Kr),L=SF(),M=xF(h,{relative:g}),G=d.toLowerCase()==="get"?"get":"post",$=typeof h=="string"&&$k.test(h),z=W=>{if(m&&m(W),W.defaultPrevented)return;W.preventDefault();let ae=W.nativeEvent.submitter,Z=(ae==null?void 0:ae.getAttribute("formmethod"))||d,ve=()=>L(ae||W.currentTarget,{fetcherKey:r,method:Z,navigate:i,replace:l,state:u,relative:g,preventScrollReset:w,viewTransition:b,unstable_defaultShouldRevalidate:E});R&&i!==!1?k.startTransition(()=>ve()):ve()};return k.createElement("form",{ref:O,method:G,action:M,onSubmit:o?m:z,...T,"data-discover":!$&&t==="render"?"true":void 0})});gF.displayName="Form";function _F(t){return`${t} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function Hk(t){let r=k.useContext(vc);return Zt(r,_F(t)),r}function vF(t,{target:r,replace:i,unstable_mask:o,state:l,preventScrollReset:u,relative:d,viewTransition:h,unstable_defaultShouldRevalidate:m,unstable_useTransitions:g}={}){let w=sw(),b=Lr(),E=Wd(t,{relative:d});return k.useCallback(T=>{if(KU(T,r)){T.preventDefault();let O=i!==void 0?i:Ad(b)===Ad(E),R=()=>w(t,{replace:O,unstable_mask:o,state:l,preventScrollReset:u,relative:d,viewTransition:h,unstable_defaultShouldRevalidate:m});g?k.startTransition(()=>R()):R()}},[b,w,E,i,o,l,r,t,u,d,h,m,g])}function a9(t){da(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let r=k.useRef(wb(t)),i=k.useRef(!1),o=Lr(),l=k.useMemo(()=>QU(o.search,i.current?null:r.current),[o.search]),u=sw(),d=k.useCallback((h,m)=>{const g=wb(typeof h=="function"?h(new URLSearchParams(l)):h);i.current=!0,u("?"+g,m)},[u,l]);return[l,d]}var bF=0,wF=()=>`__${String(++bF)}__`;function SF(){let{router:t}=Hk("useSubmit"),{basename:r}=k.useContext(Kr),i=NU(),o=t.fetch,l=t.navigate;return k.useCallback(async(u,d={})=>{let{action:h,method:m,encType:g,formData:w,body:b}=ZU(u,r);if(d.navigate===!1){let E=d.fetcherKey||wF();await o(E,i,d.action||h,{unstable_defaultShouldRevalidate:d.unstable_defaultShouldRevalidate,preventScrollReset:d.preventScrollReset,formData:w,body:b,formMethod:d.method||m,formEncType:d.encType||g,flushSync:d.flushSync})}else await l(d.action||h,{unstable_defaultShouldRevalidate:d.unstable_defaultShouldRevalidate,preventScrollReset:d.preventScrollReset,formData:w,body:b,formMethod:d.method||m,formEncType:d.encType||g,replace:d.replace,state:d.state,fromRouteId:i,flushSync:d.flushSync,viewTransition:d.viewTransition})},[o,l,r,i])}function xF(t,{relative:r}={}){let{basename:i}=k.useContext(Kr),o=k.useContext(fa);Zt(o,"useFormAction must be used inside a RouteContext");let[l]=o.matches.slice(-1),u={...Wd(t||".",{relative:r})},d=Lr();if(t==null){u.search=d.search;let h=new URLSearchParams(u.search),m=h.getAll("index");if(m.some(w=>w==="")){h.delete("index"),m.filter(b=>b).forEach(b=>h.append("index",b));let w=h.toString();u.search=w?`?${w}`:""}}return(!t||t===".")&&l.route.index&&(u.search=u.search?u.search.replace(/^\?/,"?index&"):"?index"),i!=="/"&&(u.pathname=u.pathname==="/"?i:za([i,u.pathname])),Ad(u)}function EF(t,{relative:r}={}){let i=k.useContext(Mk);Zt(i!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`.  Did you accidentally import `RouterProvider` from `react-router`?");let{basename:o}=Hk("useViewTransitionState"),l=Wd(t,{relative:r});if(!i.isTransitioning)return!1;let u=Hi(i.currentLocation.pathname,o)||i.currentLocation.pathname,d=Hi(i.nextLocation.pathname,o)||i.nextLocation.pathname;return Wh(l.pathname,d)!=null||Wh(l.pathname,u)!=null}var hm=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(t){return this.listeners.add(t),this.onSubscribe(),()=>{this.listeners.delete(t),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},mm=typeof window>"u"||"Deno"in globalThis;function Ia(){}function CF(t,r){return typeof t=="function"?t(r):t}function RF(t){return typeof t=="number"&&t>=0&&t!==1/0}function TF(t,r){return Math.max(t+(r||0)-Date.now(),0)}function gR(t,r){return typeof t=="function"?t(r):t}function kF(t,r){return typeof t=="function"?t(r):t}function _R(t,r){const{type:i="all",exact:o,fetchStatus:l,predicate:u,queryKey:d,stale:h}=t;
vendor: 14,274 bytes, line 214
214if(d){if(o){if(r.queryHash!==mw(d,r.options))return!1}else if(!Md(r.queryKey,d))return!1}if(i!=="all"){const m=r.isActive();if(i==="active"&&!m||i==="inactive"&&m)return!1}return!(typeof h=="boolean"&&r.isStale()!==h||l&&l!==r.state.fetchStatus||u&&!u(r))}function vR(t,r){const{exact:i,status:o,predicate:l,mutationKey:u}=t;if(u){if(!r.options.mutationKey)return!1;if(i){if(Ld(r.options.mutationKey)!==Ld(u))return!1}else if(!Md(r.options.mutationKey,u))return!1}return!(o&&r.state.status!==o||l&&!l(r))}function mw(t,r){return((r==null?void 0:r.queryKeyHashFn)||Ld)(t)}function Ld(t){return JSON.stringify(t,(r,i)=>xb(i)?Object.keys(i).sort().reduce((o,l)=>(o[l]=i[l],o),{}):i)}function Md(t,r){return t===r?!0:typeof t!=typeof r?!1:t&&r&&typeof t=="object"&&typeof r=="object"?!Object.keys(r).some(i=>!Md(t[i],r[i])):!1}function Sb(t,r){if(t===r)return t;const i=bR(t)&&bR(r);if(i||xb(t)&&xb(r)){const o=i?t:Object.keys(t),l=o.length,u=i?r:Object.keys(r),d=u.length,h=i?[]:{};let m=0;for(let g=0;g<d;g++){const w=i?g:u[g];(!i&&o.includes(w)||i)&&t[w]===void 0&&r[w]===void 0?(h[w]=void 0,m++):(h[w]=Sb(t[w],r[w]),h[w]===t[w]&&t[w]!==void 0&&m++)}return l===d&&m===l?t:h}return r}function i9(t,r){if(!r||Object.keys(t).length!==Object.keys(r).length)return!1;for(const i in t)if(t[i]!==r[i])return!1;return!0}function bR(t){return Array.isArray(t)&&t.length===Object.keys(t).length}function xb(t){if(!wR(t))return!1;const r=t.constructor;if(r===void 0)return!0;const i=r.prototype;return!(!wR(i)||!i.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(t)!==Object.prototype)}function wR(t){return Object.prototype.toString.call(t)==="[object Object]"}function jF(t){return new Promise(r=>{setTimeout(r,t)})}function DF(t,r,i){if(typeof i.structuralSharing=="function")return i.structuralSharing(t,r);if(i.structuralSharing!==!1){try{return Sb(t,r)}catch(o){console.error(`Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${i.queryHash}]: ${o}`)}return Sb(t,r)}return r}function OF(t,r,i=0){const o=[...t,r];return i&&o.length>i?o.slice(1):o}function PF(t,r,i=0){const o=[r,...t];return i&&o.length>i?o.slice(0,-1):o}var Yh=Symbol();function Gk(t,r){return t.queryFn===Yh&&console.error(`Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${t.queryHash}'`),!t.queryFn&&(r!=null&&r.initialPromise)?()=>r.initialPromise:!t.queryFn||t.queryFn===Yh?()=>Promise.reject(new Error(`Missing queryFn: '${t.queryHash}'`)):t.queryFn}var js,To,rc,fk,AF=(fk=class extends hm{constructor(){super();bt(this,js);bt(this,To);bt(this,rc);Je(this,rc,r=>{if(!mm&&window.addEventListener){const i=()=>r();return window.addEventListener("visibilitychange",i,!1),()=>{window.removeEventListener("visibilitychange",i)}}})}onSubscribe(){ee(this,To)||this.setEventListener(ee(this,rc))}onUnsubscribe(){var r;this.hasListeners()||((r=ee(this,To))==null||r.call(this),Je(this,To,void 0))}setEventListener(r){var i;Je(this,rc,r),(i=ee(this,To))==null||i.call(this),Je(this,To,r(o=>{typeof o=="boolean"?this.setFocused(o):this.onFocus()}))}setFocused(r){ee(this,js)!==r&&(Je(this,js,r),this.onFocus())}onFocus(){const r=this.isFocused();this.listeners.forEach(i=>{i(r)})}isFocused(){var r;return typeof ee(this,js)=="boolean"?ee(this,js):((r=globalThis.document)==null?void 0:r.visibilityState)!=="hidden"}},js=new WeakMap,To=new WeakMap,rc=new WeakMap,fk),Wk=new AF,ac,ko,ic,hk,LF=(hk=class extends hm{constructor(){super();bt(this,ac,!0);bt(this,ko);bt(this,ic);Je(this,ic,r=>{if(!mm&&window.addEventListener){const i=()=>r(!0),o=()=>r(!1);return window.addEventListener("online",i,!1),window.addEventListener("offline",o,!1),()=>{window.removeEventListener("online",i),window.removeEventListener("offline",o)}}})}onSubscribe(){ee(this,ko)||this.setEventListener(ee(this,ic))}onUnsubscribe(){var r;this.hasListeners()||((r=ee(this,ko))==null||r.call(this),Je(this,ko,void 0))}setEventListener(r){var i;Je(this,ic,r),(i=ee(this,ko))==null||i.call(this),Je(this,ko,r(this.setOnline.bind(this)))}setOnline(r){ee(this,ac)!==r&&(Je(this,ac,r),this.listeners.forEach(o=>{o(r)}))}isOnline(){return ee(this,ac)}},ac=new WeakMap,ko=new WeakMap,ic=new WeakMap,hk),Kh=new LF;function MF(){let t,r;const i=new Promise((l,u)=>{t=l,r=u});i.status="pending",i.catch(()=>{});function o(l){Object.assign(i,l),delete i.resolve,delete i.reject}return i.resolve=l=>{o({status:"fulfilled",value:l}),t(l)},i.reject=l=>{o({status:"rejected",reason:l}),r(l)},i}function qF(t){return Math.min(1e3*2**t,3e4)}function Vk(t){return(t??"online")==="online"?Kh.isOnline():!0}var Yk=class extends Error{constructor(t){super("CancelledError"),this.revert=t==null?void 0:t.revert,this.silent=t==null?void 0:t.silent}};function tb(t){return t instanceof Yk}function Kk(t){let r=!1,i=0,o=!1,l;const u=MF(),d=R=>{var L;o||(E(new Yk(R)),(L=t.abort)==null||L.call(t))},h=()=>{r=!0},m=()=>{r=!1},g=()=>Wk.isFocused()&&(t.networkMode==="always"||Kh.isOnline())&&t.canRun(),w=()=>Vk(t.networkMode)&&t.canRun(),b=R=>{var L;o||(o=!0,(L=t.onSuccess)==null||L.call(t,R),l==null||l(),u.resolve(R))},E=R=>{var L;o||(o=!0,(L=t.onError)==null||L.call(t,R),l==null||l(),u.reject(R))},T=()=>new Promise(R=>{var L;l=M=>{(o||g())&&R(M)},(L=t.onPause)==null||L.call(t)}).then(()=>{var R;l=void 0,o||(R=t.onContinue)==null||R.call(t)}),O=()=>{if(o)return;let R;const L=i===0?t.initialPromise:void 0;try{R=L??t.fn()}catch(M){R=Promise.reject(M)}Promise.resolve(R).then(b).catch(M=>{var ae;if(o)return;const G=t.retry??(mm?0:3),$=t.retryDelay??qF,z=typeof $=="function"?$(i,M):$,W=G===!0||typeof G=="number"&&i<G||typeof G=="function"&&G(i,M);if(r||!W){E(M);return}i++,(ae=t.onFail)==null||ae.call(t,i,M),jF(z).then(()=>g()?void 0:T()).then(()=>{r?E(M):O()})})};return{promise:u,cancel:d,continue:()=>(l==null||l(),u),cancelRetry:h,continueRetry:m,canStart:w,start:()=>(w()?O():T().then(O),u)}}function IF(){let t=[],r=0,i=h=>{h()},o=h=>{h()},l=h=>setTimeout(h,0);const u=h=>{r?t.push(h):l(()=>{i(h)})},d=()=>{const h=t;t=[],h.length&&l(()=>{o(()=>{h.forEach(m=>{i(m)})})})};return{batch:h=>{let m;r++;try{m=h()}finally{r--,r||d()}return m},batchCalls:h=>(...m)=>{u(()=>{h(...m)})},schedule:u,setNotifyFunction:h=>{i=h},setBatchNotifyFunction:h=>{o=h},setScheduler:h=>{l=h}}}var xr=IF(),Ds,mk,Qk=(mk=class{constructor(){bt(this,Ds)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),RF(this.gcTime)&&Je(this,Ds,setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(t){this.gcTime=Math.max(this.gcTime||0,t??(mm?1/0:5*60*1e3))}clearGcTimeout(){ee(this,Ds)&&(clearTimeout(ee(this,Ds)),Je(this,Ds,void 0))}},Ds=new WeakMap,mk),oc,sc,ia,ur,$d,Os,Na,Bi,yk,NF=(yk=class extends Qk{constructor(r){super();bt(this,Na);bt(this,oc);bt(this,sc);bt(this,ia);bt(this,ur);bt(this,$d);bt(this,Os);Je(this,Os,!1),Je(this,$d,r.defaultOptions),this.setOptions(r.options),this.observers=[],Je(this,ia,r.cache),this.queryKey=r.queryKey,this.queryHash=r.queryHash,Je(this,oc,UF(this.options)),this.state=r.state??ee(this,oc),this.scheduleGc()}get meta(){return this.options.meta}get promise(){var r;return(r=ee(this,ur))==null?void 0:r.promise}setOptions(r){this.options={...ee(this,$d),...r},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&ee(this,ia).remove(this)}setData(r,i){const o=DF(this.state.data,r,this.options);return lr(this,Na,Bi).call(this,{data:o,type:"success",dataUpdatedAt:i==null?void 0:i.updatedAt,manual:i==null?void 0:i.manual}),o}setState(r,i){lr(this,Na,Bi).call(this,{type:"setState",state:r,setStateOptions:i})}cancel(r){var o,l;const i=(o=ee(this,ur))==null?void 0:o.promise;return(l=ee(this,ur))==null||l.cancel(r),i?i.then(Ia).catch(Ia):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(ee(this,oc))}isActive(){return this.observers.some(r=>kF(r.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Yh||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStale(){return this.state.isInvalidated?!0:this.getObserversCount()>0?this.observers.some(r=>r.getCurrentResult().isStale):this.state.data===void 0}isStaleByTime(r=0){return this.state.isInvalidated||this.state.data===void 0||!TF(this.state.dataUpdatedAt,r)}onFocus(){var i;const r=this.observers.find(o=>o.shouldFetchOnWindowFocus());r==null||r.refetch({cancelRefetch:!1}),(i=ee(this,ur))==null||i.continue()}onOnline(){var i;const r=this.observers.find(o=>o.shouldFetchOnReconnect());r==null||r.refetch({cancelRefetch:!1}),(i=ee(this,ur))==null||i.continue()}addObserver(r){this.observers.includes(r)||(this.observers.push(r),this.clearGcTimeout(),ee(this,ia).notify({type:"observerAdded",query:this,observer:r}))}removeObserver(r){this.observers.includes(r)&&(this.observers=this.observers.filter(i=>i!==r),this.observers.length||(ee(this,ur)&&(ee(this,Os)?ee(this,ur).cancel({revert:!0}):ee(this,ur).cancelRetry()),this.scheduleGc()),ee(this,ia).notify({type:"observerRemoved",query:this,observer:r}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||lr(this,Na,Bi).call(this,{type:"invalidate"})}fetch(r,i){var m,g,w;if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&(i!=null&&i.cancelRefetch))this.cancel({silent:!0});else if(ee(this,ur))return ee(this,ur).continueRetry(),ee(this,ur).promise}if(r&&this.setOptions(r),!this.options.queryFn){const b=this.observers.find(E=>E.options.queryFn);b&&this.setOptions(b.options)}Array.isArray(this.options.queryKey)||console.error("As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']");const o=new AbortController,l=b=>{Object.defineProperty(b,"signal",{enumerable:!0,get:()=>(Je(this,Os,!0),o.signal)})},u=()=>{const b=Gk(this.options,i),E={queryKey:this.queryKey,meta:this.meta};return l(E),Je(this,Os,!1),this.options.persister?this.options.persister(b,E,this):b(E)},d={fetchOptions:i,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:u};l(d),(m=this.options.behavior)==null||m.onFetch(d,this),Je(this,sc,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((g=d.fetchOptions)==null?void 0:g.meta))&&lr(this,Na,Bi).call(this,{type:"fetch",meta:(w=d.fetchOptions)==null?void 0:w.meta});const h=b=>{var E,T,O,R;tb(b)&&b.silent||lr(this,Na,Bi).call(this,{type:"error",error:b}),tb(b)||((T=(E=ee(this,ia).config).onError)==null||T.call(E,b,this),(R=(O=ee(this,ia).config).onSettled)==null||R.call(O,this.state.data,b,this)),this.scheduleGc()};return Je(this,ur,Kk({initialPromise:i==null?void 0:i.initialPromise,fn:d.fetchFn,abort:o.abort.bind(o),onSuccess:b=>{var E,T,O,R;if(b===void 0){console.error(`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`),h(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(b)}catch(L){h(L);return}(T=(E=ee(this,ia).config).onSuccess)==null||T.call(E,b,this),(R=(O=ee(this,ia).config).onSettled)==null||R.call(O,b,this.state.error,this),this.scheduleGc()},onError:h,onFail:(b,E)=>{lr(this,Na,Bi).call(this,{type:"failed",failureCount:b,error:E})},onPause:()=>{lr(this,Na,Bi).call(this,{type:"pause"})},onContinue:()=>{lr(this,Na,Bi).call(this,{type:"continue"})},retry:d.options.retry,retryDelay:d.options.retryDelay,networkMode:d.options.networkMode,canRun:()=>!0})),ee(this,ur).start()}},oc=new WeakMap,sc=new WeakMap,ia=new WeakMap,ur=new WeakMap,$d=new WeakMap,Os=new WeakMap,Na=new WeakSet,Bi=function(r){const i=o=>{switch(r.type){case"failed":return{...o,fetchFailureCount:r.failureCount,fetchFailureReason:r.error};case"pause":return{...o,fetchStatus:"paused"};case"continue":return{...o,fetchStatus:"fetching"};case"fetch":return{...o,...BF(o.data,this.options),fetchMeta:r.meta??null};case"success":return{...o,data:r.data,dataUpdateCount:o.dataUpdateCount+1,dataUpdatedAt:r.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!r.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const l=r.error;return tb(l)&&l.revert&&ee(this,sc)?{...ee(this,sc),fetchStatus:"idle"}:{...o,error:l,errorUpdateCount:o.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:o.fetchFailureCount+1,fetchFailureReason:l,fetchStatus:"idle",status:"error"};case"invalidate":return{...o,isInvalidated:!0};case"setState":return{...o,...r.state}}};this.state=i(this.state),xr.batch(()=>{this.observers.forEach(o=>{o.onQueryUpdate()}),ee(this,ia).notify({query:this,type:"updated",action:r})})},yk);function BF(t,r){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:Vk(r.networkMode)?"fetching":"paused",...t===void 0&&{error:null,status:"pending"}}}function UF(t){const r=typeof t.initialData=="function"?t.initialData():t.initialData,i=r!==void 0,o=i?typeof t.initialDataUpdatedAt=="function"?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0;return{data:r,dataUpdateCount:0,dataUpdatedAt:i?o??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:i?"success":"pending",fetchStatus:"idle"}}var si,gk,FF=(gk=class extends hm{constructor(r={}){super();bt(this,si);this.config=r,Je(this,si,new Map)}build(r,i,o){const l=i.queryKey,u=i.queryHash??mw(l,i);let d=this.get(u);return d||(d=new NF({cache:this,queryKey:l,queryHash:u,options:r.defaultQueryOptions(i),state:o,defaultOptions:r.getQueryDefaults(l)}),this.add(d)),d}add(r){ee(this,si).has(r.queryHash)||(ee(this,si).set(r.queryHash,r),this.notify({type:"added",query:r}))}remove(r){const i=ee(this,si).get(r.queryHash);i&&(r.destroy(),i===r&&ee(this,si).delete(r.queryHash),this.notify({type:"removed",query:r}))}clear(){xr.batch(()=>{this.getAll().forEach(r=>{this.remove(r)})})}get(r){return ee(this,si).get(r)}getAll(){return[...ee(this,si).values()]}find(r){const i={exact:!0,...r};return this.getAll().find(o=>_R(i,o))}findAll(r={}){const i=this.getAll();return Object.keys(r).length>0?i.filter(o=>_R(r,o)):i}notify(r){xr.batch(()=>
214{this.listeners.forEach(i=>{i(r)})})}onFocus(){xr.batch(()=>{this.getAll().forEach(r=>{r.onFocus()})})}onOnline(){xr.batch(()=>{this.getAll().forEach(r=>{r.onOnline()})})}},si=new WeakMap,gk),li,wr,Ps,ci,Co,_k,zF=(_k=class extends Qk{constructor(r){super();bt(this,ci);bt(this,li);bt(this,wr);bt(this,Ps);this.mutationId=r.mutationId,Je(this,wr,r.mutationCache),Je(this,li,[]),this.state=r.state||$F(),this.setOptions(r.options),this.scheduleGc()}setOptions(r){this.options=r,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(r){ee(this,li).includes(r)||(ee(this,li).push(r),this.clearGcTimeout(),ee(this,wr).notify({type:"observerAdded",mutation:this,observer:r}))}removeObserver(r){Je(this,li,ee(this,li).filter(i=>i!==r)),this.scheduleGc(),ee(this,wr).notify({type:"observerRemoved",mutation:this,observer:r})}optionalRemove(){ee(this,li).length||(this.state.status==="pending"?this.scheduleGc():ee(this,wr).remove(this))}continue(){var r;return((r=ee(this,Ps))==null?void 0:r.continue())??this.execute(this.state.variables)}async execute(r){var l,u,d,h,m,g,w,b,E,T,O,R,L,M,G,$,z,W,ae,Z;Je(this,Ps,Kk({fn:()=>this.options.mutationFn?this.options.mutationFn(r):Promise.reject(new Error("No mutationFn found")),onFail:(ve,we)=>{lr(this,ci,Co).call(this,{type:"failed",failureCount:ve,error:we})},onPause:()=>{lr(this,ci,Co).call(this,{type:"pause"})},onContinue:()=>{lr(this,ci,Co).call(this,{type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>ee(this,wr).canRun(this)}));const i=this.state.status==="pending",o=!ee(this,Ps).canStart();try{if(!i){lr(this,ci,Co).call(this,{type:"pending",variables:r,isPaused:o}),await((u=(l=ee(this,wr).config).onMutate)==null?void 0:u.call(l,r,this));const we=await((h=(d=this.options).onMutate)==null?void 0:h.call(d,r));we!==this.state.context&&lr(this,ci,Co).call(this,{type:"pending",context:we,variables:r,isPaused:o})}const ve=await ee(this,Ps).start();return await((g=(m=ee(this,wr).config).onSuccess)==null?void 0:g.call(m,ve,r,this.state.context,this)),await((b=(w=this.options).onSuccess)==null?void 0:b.call(w,ve,r,this.state.context)),await((T=(E=ee(this,wr).config).onSettled)==null?void 0:T.call(E,ve,null,this.state.variables,this.state.context,this)),await((R=(O=this.options).onSettled)==null?void 0:R.call(O,ve,null,r,this.state.context)),lr(this,ci,Co).call(this,{type:"success",data:ve}),ve}catch(ve){try{throw await((M=(L=ee(this,wr).config).onError)==null?void 0:M.call(L,ve,r,this.state.context,this)),await(($=(G=this.options).onError)==null?void 0:$.call(G,ve,r,this.state.context)),await((W=(z=ee(this,wr).config).onSettled)==null?void 0:W.call(z,void 0,ve,this.state.variables,this.state.context,this)),await((Z=(ae=this.options).onSettled)==null?void 0:Z.call(ae,void 0,ve,r,this.state.context)),ve}finally{lr(this,ci,Co).call(this,{type:"error",error:ve})}}finally{ee(this,wr).runNext(this)}}},li=new WeakMap,wr=new WeakMap,Ps=new WeakMap,ci=new WeakSet,Co=function(r){const i=o=>{switch(r.type){case"failed":return{...o,failureCount:r.failureCount,failureReason:r.error};case"pause":return{...o,isPaused:!0};case"continue":return{...o,isPaused:!1};case"pending":return{...o,context:r.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:r.isPaused,status:"pending",variables:r.variables,submittedAt:Date.now()};case"success":return{...o,data:r.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...o,data:void 0,error:r.error,failureCount:o.failureCount+1,failureReason:r.error,isPaused:!1,status:"error"}}};this.state=i(this.state),xr.batch(()=>{ee(this,li).forEach(o=>{o.onMutationUpdate(r)}),ee(this,wr).notify({mutation:this,type:"updated",action:r})})},_k);function $F(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var Fi,Ba,Hd,vk,HF=(vk=class extends hm{constructor(r={}){super();bt(this,Fi);bt(this,Ba);bt(this,Hd);this.config=r,Je(this,Fi,new Set),Je(this,Ba,new Map),Je(this,Hd,0)}build(r,i,o){const l=new zF({mutationCache:this,mutationId:++_h(this,Hd)._,options:r.defaultMutationOptions(i),state:o});return this.add(l),l}add(r){ee(this,Fi).add(r);const i=Sh(r);if(typeof i=="string"){const o=ee(this,Ba).get(i);o?o.push(r):ee(this,Ba).set(i,[r])}this.notify({type:"added",mutation:r})}remove(r){if(ee(this,Fi).delete(r)){const i=Sh(r);if(typeof i=="string"){const o=ee(this,Ba).get(i);if(o)if(o.length>1){const l=o.indexOf(r);l!==-1&&o.splice(l,1)}else o[0]===r&&ee(this,Ba).delete(i)}}this.notify({type:"removed",mutation:r})}canRun(r){const i=Sh(r);if(typeof i=="string"){const o=ee(this,Ba).get(i),l=o==null?void 0:o.find(u=>u.state.status==="pending");return!l||l===r}else return!0}runNext(r){var o;const i=Sh(r);if(typeof i=="string"){const l=(o=ee(this,Ba).get(i))==null?void 0:o.find(u=>
214u!==r&&u.state.isPaused);return(l==null?void 0:l.continue())??Promise.resolve()}else return Promise.resolve()}clear(){xr.batch(()=>{ee(this,Fi).forEach(r=>{this.notify({type:"removed",mutation:r})}),ee(this,Fi).clear(),ee(this,Ba).clear()})}getAll(){return Array.from(ee(this,Fi))}find(r){const i={exact:!0,...r};return this.getAll().find(o=>vR(i,o))}findAll(r={}){return this.getAll().filter(i=>vR(r,i))}notify(r){xr.batch(()=>{this.listeners.forEach(i=>{i(r)})})}resumePausedMutations(){const r=this.getAll().filter(i=>i.state.isPaused);return xr.batch(()=>Promise.all(r.map(i=>i.continue().catch(Ia))))}},Fi=new WeakMap,Ba=new WeakMap,Hd=new WeakMap,vk);function Sh(t){var r;return(r=t.options.scope)==null?void 0:r.id}function SR(t){return{onFetch:(r,i)=>{var w,b,E,T,O;const o=r.options,l=(E=(b=(w=r.fetchOptions)==null?void 0:w.meta)==null?void 0:b.fetchMore)==null?void 0:E.direction,u=((T=r.state.data)==null?void 0:T.pages)||[],d=((O=r.state.data)==null?void 0:O.pageParams)||[];let h={pages:[],pageParams:[]},m=0;const g=async()=>{let R=!1;const L=$=>{Object.defineProperty($,"signal",{enumerable:!0,get:()=>(r.signal.aborted?R=!0:r.signal.addEventListener("abort",()=>{R=!0}),r.signal)})},M=Gk(r.options,r.fetchOptions),G=async($,z,W)=>{if(R)return Promise.reject();if(z==null&&$.pages.length)return Promise.resolve($);const ae={queryKey:r.queryKey,pageParam:z,direction:W?"backward":"forward",meta:r.options.meta};L(ae);const Z=await M(ae),{maxPages:ve}=r.options,we=W?PF:OF;return{pages:we($.pages,Z,ve),pageParams:we($.pageParams,z,ve)}};if(l&&u.length){const $=l==="backward",z=$?Xk:Eb,W={pages:u,pageParams:d},ae=z(o,W);h=await G(W,ae,$)}else{const $=t??u.length;do{const z=m===0?d[0]??o.initialPageParam:Eb(o,h);if(m>0&&z==null)break;h=await G(h,z),m++}while(m<$)}return h};r.options.persister?r.fetchFn=()=>{var R,L;return(L=(R=r.options).persister)==null?void 0:L.call(R,g,{queryKey:r.queryKey,meta:r.options.meta,signal:r.signal},i)}:r.fetchFn=g}}}function Eb(t,{pages:r,pageParams:i}){const o=r.length-1;return r.length>0?t.getNextPageParam(r[o],r,i[o],i):void 0}function Xk(t,{pages:r,pageParams:i}){var o;return r.length>0?(o=t.getPreviousPageParam)==null?void 0:o.call(t,r[0],r,i[0],i):void 0}function o9(t,r){return r?Eb(t,r)!=null:!1}function s9(t,r){return!r||!t.getPreviousPageParam?!1:Xk(t,r)!=null}var dn,jo,Do,lc,cc,Oo,uc,dc,bk,GF=(bk=class{constructor(t={}){bt(this,dn);bt(this,jo);bt(this,Do);bt(this,lc);bt(this,cc);bt(this,Oo);bt(this,uc);bt(this,dc);Je(this,dn,t.queryCache||new FF),Je(this,jo,t.mutationCache||new HF),Je(this,Do,t.defaultOptions||{}),Je(this,lc,new Map),Je(this,cc,new Map),Je(this,Oo,0)}mount(){_h(this,Oo)._++,ee(this,Oo)===1&&(Je(this,uc,Wk.subscribe(async t=>{t&&(await this.resumePausedMutations(),ee(this,dn).onFocus())})),Je(this,dc,Kh.subscribe(async t=>{t&&(await this.resumePausedMutations(),ee(this,dn).onOnline())})))}unmount(){var t,r;_h(this,Oo)._--,ee(this,Oo)===0&&((t=ee(this,uc))==null||t.call(this),Je(this,uc,void 0),(r=ee(this,dc))==null||r.call(this),Je(this,dc,void 0))}isFetching(t){return ee(this,dn).findAll({...t,fetchStatus:"fetching"}).length}isMutating(t){return ee(this,jo).findAll({...t,status:"pending"}).length}getQueryData(t){var i;const r=this.defaultQueryOptions({queryKey:t});return(i=ee(this,dn).get(r.queryHash))==null?void 0:i.state.data}ensureQueryData(t){const r=this.defaultQueryOptions(t),i=ee(this,dn).build(this,r),o=i.state.data;return o===void 0?this.fetchQuery(t):(t.revalidateIfStale&&i.isStaleByTime(gR(r.staleTime,i))&&this.prefetchQuery(r),Promise.resolve(o))}getQueriesData(t){return ee(this,dn).findAll(t).map(({queryKey:r,state:i})=>{const o=i.data;return[r,o]})}setQueryData(t,r,i){const o=this.defaultQueryOptions({queryKey:t}),l=ee(this,dn).get(o.queryHash),u=l==null?void 0:l.state.data,d=CF(r,u);if(d!==void 0)return ee(this,dn).build(this,o).setData(d,{...i,manual:!0})}setQueriesData(t,r,i){return xr.batch(()=>ee(this,dn).findAll(t).map(({queryKey:o})=>[o,this.setQueryData(o,r,i)]))}getQueryState(t){var i;const r=this.defaultQueryOptions({queryKey:t});return(i=ee(this,dn).get(r.queryHash))==null?void 0:i.state}removeQueries(t){const r=ee(this,dn);xr.batch(()=>{r.findAll(t).forEach(i=>
214{r.remove(i)})})}resetQueries(t,r){const i=ee(this,dn),o={type:"active",...t};return xr.batch(()=>(i.findAll(t).forEach(l=>{l.reset()}),this.refetchQueries(o,r)))}cancelQueries(t,r={}){const i={revert:!0,...r},o=xr.batch(()=>ee(this,dn).findAll(t).map(l=>l.cancel(i)));return Promise.all(o).then(Ia).catch(Ia)}invalidateQueries(t,r={}){return xr.batch(()=>{if(ee(this,dn).findAll(t).forEach(o=>{o.invalidate()}),(t==null?void 0:t.refetchType)==="none")return Promise.resolve();const i={...t,type:(t==null?void 0:t.refetchType)??(t==null?void 0:t.type)??"active"};return this.refetchQueries(i,r)})}refetchQueries(t,r={}){const i={...r,cancelRefetch:r.cancelRefetch??!0},o=xr.batch(()=>ee(this,dn).findAll(t).filter(l=>!l.isDisabled()).map(l=>{let u=l.fetch(void 0,i);return i.throwOnError||(u=u.catch(Ia)),l.state.fetchStatus==="paused"?Promise.resolve():u}));return Promise.all(o).then(Ia)}fetchQuery(t){const r=this.defaultQueryOptions(t);r.retry===void 0&&(r.retry=!1);const i=ee(this,dn).build(this,r);return i.isStaleByTime(gR(r.staleTime,i))?i.fetch(r):Promise.resolve(i.state.data)}prefetchQuery(t){return this.fetchQuery(t).then(Ia).catch(Ia)}fetchInfiniteQuery(t){return t.behavior=SR(t.pages),this.fetchQuery(t)}prefetchInfiniteQuery(t){return this.fetchInfiniteQuery(t).then(Ia).catch(Ia)}ensureInfiniteQueryData(t){return t.behavior=SR(t.pages),this.ensureQueryData(t)}resumePausedMutations(){return Kh.isOnline()?ee(this,jo).resumePausedMutations():Promise.resolve()}getQueryCache(){return ee(this,dn)}getMutationCache(){return ee(this,jo)}getDefaultOptions(){return ee(this,Do)}setDefaultOptions(t){Je(this,Do,t)}setQueryDefaults(t,r){ee(this,lc).set(Ld(t),{queryKey:t,defaultOptions:r})}getQueryDefaults(t){const r=[...ee(this,lc).values()],i={};return r.forEach(o=>{Md(t,o.queryKey)&&Object.assign(i,o.defaultOptions)}),i}setMutationDefaults(t,r){ee(this,cc).set(Ld(t),{mutationKey:t,defaultOptions:r})}getMutationDefaults(t){const r=[...ee(this,cc).values()];let i={};return r.forEach(o=>{Md(t,o.mutationKey)&&(i={...i,...o.defaultOptions})}),i}defaultQueryOptions(t){if(t._defaulted)return t;const r={...ee(this,Do).queries,...this.getQueryDefaults(t.queryKey),...t,_defaulted:!0};return r.queryHash||(r.queryHash=mw(r.queryKey,r)),r.refetchOnReconnect===void 0&&(r.refetchOnReconnect=r.networkMode!=="always"),r.throwOnError===void 0&&(r.throwOnError=!!r.suspense),!r.networkMode&&r.persister&&(r.networkMode="offlineFirst"),r.queryFn===Yh&&(r.enabled=!1),r}defaultMutationOptions(t){return t!=null&&t._defaulted?t:{...ee(this,Do).mutations,...(t==null?void 0:t.mutationKey)&&this.getMutationDefaults(t.mutationKey),...t,_defaulted:!0}}clear(){ee(this,dn).clear(),ee(this,jo).clear()}},dn=new WeakMap,jo=new WeakMap,Do=new WeakMap,lc=new WeakMap,cc=new WeakMap,Oo=new WeakMap,uc=new WeakMap,dc=new WeakMap,bk),Jk=k.createContext(void 0),l9=t=>{const r=k.useContext(Jk);if(t)return t;if(!r)throw new Error("No QueryClient set, use QueryClientProvider to set one");return r},WF=({client:t,children:r})=>(k.useEffect(()=>(t.mount(),()=>{t.unmount()}),[t]),H.jsx(Jk.Provider,{value:t,children:r}));function VF(t){let r="https://mui.com/production-error/?code="+t;for(let i=1;i<arguments.length;i+=1)r+="&args[]="+encodeURIComponent(arguments[i]);return"Minified MUI error #"+t+"; visit "+r+" for the full message."}const YF=Object.freeze(Object.defineProperty({__proto__:null,default:VF},Symbol.toStringTag,{value:"Module"})),pc="$$material";function be(){return be=Object.assign?Object.assign.bind():function(t){for(var r=1;r<arguments.length;r++){var i=arguments[r];for(var o in i)({}).hasOwnProperty.call(i,o)&&(t[o]=i[o])}return t},be.apply(null,arguments)}function Ln(t,r){if(t==null)return{};var i={};for(var o in t)if({}.hasOwnProperty.call(t,o)){if(r.indexOf(o)!==-1)continue;i[o]=t[o]}return i}function KF(t){if(t.sheet)return t.sheet;for(var r=0;r<document.styleSheets.length;r++)if(document.styleSheets[r].ownerNode===t)return document.styleSheets[r]}function QF(t){var r=document.createElement("style");return r.setAttribute("data-emotion",t.key),t.nonce!==void 0&&r.setAttribute("nonce",t.nonce),r.appendChild(document.createTextNode("")),r.setAttribute("data-s",""),r}var XF=function(){function t(i){var o=this;this._insertTag=function(l){var u;o.tags.length===0?o.insertionPoint?u=o.insertionPoint.nextSibling:o.prepend?u=o.container.firstChild:u=o.before:u=o.tags[o.tags.length-1].nextSibling,o.container.insertBefore(l,u),o.tags.push(l)},this.isSpeedy=i.speedy===void 0?!0:i.speedy,this.tags=[],this.ctr=0,this.nonce=i.nonce,this.key=i.key,this.container=i.container,this.prepend=i.prepend,this.insertionPoint=i.insertionPoint,this.before=null}var r=t.prototype;return r.hydrate=function(o){o.forEach(this._insertTag)},r.insert=function(o){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(QF(this));var l=this.tags[this.tags.length-1];if(this.isSpeedy){var u=KF(l);try{u.insertRule(o,u.cssRules.length)}catch{}}else l.appendChild(document.createTextNode(o));this.ctr++}
vendor: 12,103 bytes, lines 214-221
214,r.flush=function(){this.tags.forEach(function(o){var l;return(l=o.parentNode)==null?void 0:l.removeChild(o)}),this.tags=[],this.ctr=0},t}(),cr="-ms-",Qh="-moz-",wt="-webkit-",Zk="comm",yw="rule",gw="decl",JF="@import",ej="@keyframes",ZF="@layer",ez=Math.abs,ym=String.fromCharCode,tz=Object.assign;function nz(t,r){return Zn(t,0)^45?(((r<<2^Zn(t,0))<<2^Zn(t,1))<<2^Zn(t,2))<<2^Zn(t,3):0}function tj(t){return t.trim()}function rz(t,r){return(t=r.exec(t))?t[0]:t}function St(t,r,i){return t.replace(r,i)}function Cb(t,r){return t.indexOf(r)}function Zn(t,r){return t.charCodeAt(r)|0}function qd(t,r,i){return t.slice(r,i)}function ui(t){return t.length}function _w(t){return t.length}function xh(t,r){return r.push(t),t}function az(t,r){return t.map(r).join("")}var gm=1,fc=1,nj=0,Ar=0,xn=0,wc="";function _m(t,r,i,o,l,u,d){return{value:t,root:r,parent:i,type:o,props:l,children:u,line:gm,column:fc,length:d,return:""}}function Ed(t,r){return tz(_m("",null,null,"",null,null,0),t,{length:-t.length},r)}function iz(){return xn}function oz(){return xn=Ar>0?Zn(wc,--Ar):0,fc--,xn===10&&(fc=1,gm--),xn}function Yr(){return xn=Ar<nj?Zn(wc,Ar++):0,fc++,xn===10&&(fc=1,gm++),xn}function pi(){return Zn(wc,Ar)}function qh(){return Ar}function Vd(t,r){return qd(wc,t,r)}function Id(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function rj(t){return gm=fc=1,nj=ui(wc=t),Ar=0,[]}function aj(t){return wc="",t}function Ih(t){return tj(Vd(Ar-1,Rb(t===91?t+2:t===40?t+1:t)))}function sz(t){for(;(xn=pi())&&xn<33;)Yr();return Id(t)>2||Id(xn)>3?"":" "}function lz(t,r){for(;--r&&Yr()&&!(xn<48||xn>102||xn>57&&xn<65||xn>70&&xn<97););return Vd(t,qh()+(r<6&&pi()==32&&Yr()==32))}function Rb(t){for(;Yr();)switch(xn){case t:return Ar;case 34:case 39:t!==34&&t!==39&&Rb(xn);break;case 40:t===41&&Rb(t);break;case 92:Yr();break}return Ar}function cz(t,r){for(;Yr()&&t+xn!==57;)if(t+xn===84&&pi()===47)break;return"/*"+Vd(r,Ar-1)+"*"+ym(t===47?t:Yr())}function uz(t){for(;!Id(pi());)Yr();return Vd(t,Ar)}function dz(t){return aj(Nh("",null,null,null,[""],t=rj(t),0,[0],t))}function Nh(t,r,i,o,l,u,d,h,m){for(var g=0,w=0,b=d,E=0,T=0,O=0,R=1,L=1,M=1,G=0,$="",z=l,W=u,ae=o,Z=$;L;)switch(O=G,G=Yr()){case 40:if(O!=108&&Zn(Z,b-1)==58){Cb(Z+=St(Ih(G),"&","&\f"),"&\f")!=-1&&(M=-1);break}case 34:case 39:case 91:Z+=Ih(G);break;case 9:case 10:case 13:case 32:Z+=sz(O);break;case 92:Z+=lz(qh()-1,7);continue;case 47:switch(pi()){case 42:case 47:xh(pz(cz(Yr(),qh()),r,i),m);break;default:Z+="/"}break;case 123*R:h[g++]=ui(Z)*M;case 125*R:case 59:case 0:switch(G){case 0:case 125:L=0;case 59+w:M==-1&&(Z=St(Z,/\f/g,"")),T>0&&ui(Z)-b&&xh(T>32?ER(Z+";",o,i,b-1):ER(St(Z," ","")+";",o,i,b-2),m);break;case 59:Z+=";";default:if(xh(ae=xR(Z,r,i,g,w,l,h,$,z=[],W=[],b),u),G===123)if(w===0)Nh(Z,r,ae,ae,z,u,b,h,W);else switch(E===99&&Zn(Z,3)===110?100:E){case 100:case 108:case 109:case 115:Nh(t,ae,ae,o&&xh(xR(t,ae,ae,0,0,l,h,$,l,z=[],b),W),l,W,b,h,o?z:W);break;default:Nh(Z,ae,ae,ae,[""],W,0,h,W)}}g=w=T=0,R=M=1,$=Z="",b=d;break;case 58:b=1+ui(Z),T=O;default:if(R<1){if(G==123)--R;else if(G==125&&R++==0&&oz()==125)continue}switch(Z+=ym(G),G*R){case 38:M=w>0?1:(Z+="\f",-1);break;case 44:h[g++]=(ui(Z)-1)*M,M=1;break;case 64:pi()===45&&(Z+=Ih(Yr())),E=pi(),w=b=ui($=Z+=uz(qh())),G++;break;case 45:O===45&&ui(Z)==2&&(R=0)}}return u}function xR(t,r,i,o,l,u,d,h,m,g,w){for(var b=l-1,E=l===0?u:[""],T=_w(E),O=0,R=0,L=0;O<o;++O)for(var M=0,G=qd(t,b+1,b=ez(R=d[O])),$=t;M<T;++M)($=tj(R>0?E[M]+" "+G:St(G,/&\f/g,E[M])))&&(m[L++]=$);return _m(t,r,i,l===0?yw:h,m,g,w)}function pz(t,r,i){return _m(t,r,i,Zk,ym(iz()),qd(t,2,-2),0)}function ER(t,r,i,o){return _m(t,r,i,gw,qd(t,0,o),qd(t,o+1,-1),o)}function tc(t,r){for(var i="",o=_w(t),l=0;l<o;l++)i+=r(t[l],l,t,r)||"";return i}function fz(t,r,i,o){switch(t.type){case ZF:if(t.children.length)break;case JF:case gw:return t.return=t.return||t.value;case Zk:return"";case ej:return t.return=t.value+"{"+tc(t.children,o)+"}";case yw:t.value=t.props.join(",")}return ui(i=tc(t.children,o))?t.return=t.value+"{"+i+"}":""}function hz(t){var r=_w(t);return function(i,o,l,u){for(var d="",h=0;h<r;h++)d+=t[h](i,o,l,u)||"";return d}}function mz(t){return function(r){r.root||(r=r.return)&&t(r)}}function ij(t){var r=Object.create(null);return function(i){return r[i]===void 0&&(r[i]=t(i)),r[i]}}var yz=function(r,i,o){for(var l=0,u=0;l=u,u=pi(),l===38&&u===12&&(i[o]=1),!Id(u);)Yr();return Vd(r,Ar)},gz=function(r,i){var o=-1,l=44;do switch(Id(l)){case 0:l===38&&pi()===12&&(i[o]=1),r[o]+=yz(Ar-1,i,o);break;case 2:r[o]+=Ih(l);break;case 4:if(l===44){r[++o]=pi()===58?"&\f":"",i[o]=r[o].length;break}default:r[o]+=ym(l)}while(l=Yr());return r},_z=function(r,i){return aj(gz(rj(r),i))},CR=new WeakMap,vz=function(r){if(!(r.type!=="rule"||!r.parent||r.length<1)){for(var i=r.value,o=r.parent,l=r.column===o.column&&r.line===o.line;o.type!=="rule";)if(o=o.parent,!o)return;if(!(r.props.length===1&&i.charCodeAt(0)!==58&&!CR.get(o))&&!l){CR.set(r,!0);for(var u=[],d=_z(i,u),h=o.props,m=0,g=0;m<d.length;m++)for(var w=0;w<h.length;w++,g++)r.props[g]=u[m]?d[m].replace(/&\f/g,h[w]):h[w]+" "+d[m]}}},bz=function(r){if(r.type==="decl"){var i=r.value;i.charCodeAt(0)===108&&i.charCodeAt(2)===98&&(r.return="",r.value="")}};function oj(t,r){switch(nz(t,r)){case 5103:return wt+"print-"+t+t;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return wt+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return wt+t+Qh+t+cr+t+t;case 6828:case 4268:return wt+t+cr+t+t;case 6165:return wt+t+cr+"flex-"+t+t;case 5187:return wt+t+St(t,/(\w+).+(:[^]+)/,wt+"box-$1$2"+cr+"flex-$1$2")+t;case 5443:return wt+t+cr+"flex-item-"+St(t,/flex-|-self/,"")+t;case 4675:return wt+t+cr+"flex-line-pack"+St(t,/align-content|flex-|-self/,"")+t;case 5548:return wt+t+cr+St(t,"shrink","negative")+t;case 5292:return wt+t+cr+St(t,"basis","preferred-size")+t;case 6060:return wt+"box-"+St(t,"-grow","")+wt+t+cr+St(t,"grow","positive")+t;case 4554:return wt+St(t,/([^-])(transform)/g,"$1"+wt+"$2")+t;case 6187:return St(St(St(t,/(zoom-|grab)/,wt+"$1"),/(image-set)/,wt+"$1"),t,"")+t;case 5495:case 3959:return St(t,/(image-set\([^]*)/,wt+"$1$`$1");case 4968:return St(St(t,/(.+:)(flex-)?(.*)/,wt+"box-pack:$3"+cr+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+wt+t+t;case 4095:case 3583:case 4068:case 2532:return St(t,/(.+)-inline(.+)/,wt+"$1$2")+t;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(ui(t)-1-r>6)switch(Zn(t,r+1)){case 109:if(Zn(t,r+4)!==45)break;case 102:return St(t,/(.+:)(.+)-([^]+)/,"$1"+wt+"$2-$3$1"+Qh+(Zn(t,r+3)==108?"$3":"$2-$3"))+t;case 115:return~Cb(t,"stretch")?oj(St(t,"stretch","fill-available"),r)+t:t}break;case 4949:if(Zn(t,r+1)!==115)break;case 6444:switch(Zn(t,ui(t)-3-(~Cb(t,"!important")&&10))){case 107:return St(t,":",":"+wt)+t;case 101:return St(t,/(.+:)([^;!]+)(;|!.+)?/,"$1"+wt+(Zn(t,14)===45?"inline-":"")+"box$3$1"+wt+"$2$3$1"+cr+"$2box$3")+t}break;case 5936:switch(Zn(t,r+11)){case 114:return wt+t+cr+St(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return wt+t+cr+St(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return wt+t+cr+St(t,/[svh]\w+-[tblr]{2}/,"lr")+t}return wt+t+cr+t+t}return t}var wz=function(r,i,o,l){if(r.length>-1&&!r.return)switch(r.type){case gw:r.return=oj(r.value,r.length);break;case ej:return tc([Ed(r,{value:St(r.value,"@","@"+wt)})],l);case yw:if(r.length)return az(r.props,function(u){switch(rz(u,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return tc([Ed(r,{props:[St(u,/:(read-\w+)/,":"+Qh+"$1")]})],l);case"::placeholder":return tc([Ed(r,{props:[St(u,/:(plac\w+)/,":"+wt+"input-$1")]}),Ed(r,{props:[St(u,/:(plac\w+)/,":"+Qh+"$1")]}),Ed(r,{props:[St(u,/:(plac\w+)/,cr+"input-$1")]})],l)}return""})}},Sz=[wz],sj=function(r){var i=r.key;if(i==="css"){var o=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(o,function(R){var L=R.getAttribute("data-emotion");L.indexOf(" ")!==-1&&(document.head.appendChild(R),R.setAttribute("data-s",""))})}var l=r.stylisPlugins||Sz,u={},d,h=[];d=r.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+i+' "]'),function(R){for(var L=R.getAttribute("data-emotion").split(" "),M=1;M<L.length;M++)u[L[M]]=!0;h.push(R)});var m,g=[vz,bz];{var w,b=[fz,mz(function(R){w.insert(R)})],E=hz(g.concat(l,b)),T=function(L){return tc(dz(L),E)};m=function(L,M,G,$){w=G,T(L?L+"{"+M.styles+"}":M.styles),$&&(O.inserted[M.name]=!0)}}var O={key:i,sheet:new XF({key:i,container:d,nonce:r.nonce,speedy:r.speedy,prepend:r.prepend,insertionPoint:r.insertionPoint}),nonce:r.nonce,inserted:u,registered:{},insert:m};return O.sheet.hydrate(h),O},lj={exports:{}},Tt={};/** @license React v16.13.1
215 * react-is.development.js
216 *
217 * Copyright (c) Facebook, Inc. and its affiliates.
218 *
219 * This source code is licensed under the MIT license found in the
220 * LICENSE file in the root directory of this source tree.
221 */(function(){var t=typeof Symbol=="function"&&Symbol.for,r=t?Symbol.for("react.element"):60103,i=t?Symbol.for("react.portal"):60106,o=t?Symbol.for("react.fragment"):60107,l=t?Symbol.for("react.strict_mode"):60108,u=t?Symbol.for("react.profiler"):60114,d=t?Symbol.for("react.provider"):60109,h=t?Symbol.for("react.context"):60110,m=t?Symbol.for("react.async_mode"):60111,g=t?Symbol.for("react.concurrent_mode"):60111,w=t?Symbol.for("react.forward_ref"):60112,b=t?Symbol.for("react.suspense"):60113,E=t?Symbol.for("react.suspense_list"):60120,T=t?Symbol.for("react.memo"):60115,O=t?Symbol.for("react.lazy"):60116,R=t?Symbol.for("react.block"):60121,L=t?Symbol.for("react.fundamental"):60117,M=t?Symbol.for("react.responder"):60118,G=t?Symbol.for("react.scope"):60119;function $(Q){return typeof Q=="string"||typeof Q=="function"||Q===o||Q===g||Q===u||Q===l||Q===b||Q===E||typeof Q=="object"&&Q!==null&&(Q.$$typeof===O||Q.$$typeof===T||Q.$$typeof===d||Q.$$typeof===h||Q.$$typeof===w||Q.$$typeof===L||Q.$$typeof===M||Q.$$typeof===G||Q.$$typeof===R)}function z(Q){if(typeof Q=="object"&&Q!==null){var jt=Q.$$typeof;switch(jt){case r:var Pt=Q.type;switch(Pt){case m:case g:case o:case u:case l:case b:return Pt;default:var Mt=Pt&&Pt.$$typeof;switch(Mt){case h:case w:case O:case T:case d:return Mt;default:return jt}}case i:return jt}}}var W=m,ae=g,Z=h,ve=d,we=r,je=w,ke=o,De=O,N=T,X=i,ne=u,ce=l,oe=b,_e=!1;function Re(Q){return _e||(_e=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),Ce(Q)||z(Q)===m}function Ce(Q){return z(Q)===g}function Ue(Q){return z(Q)===h}function Me(Q){return z(Q)===d}function Fe(Q){return typeof Q=="object"&&Q!==null&&Q.$$typeof===r}function Ze(Q){return z(Q)===w}function pt(Q){return z(Q)===o}function Ft(Q){return z(Q)===O}function en(Q){return z(Q)===T}function pn(Q){return z(Q)===i}function _t(Q){return z(Q)===u}function tn(Q){return z(Q)===l}function nn(Q){return z(Q)===b}Tt.AsyncMode=W,Tt.ConcurrentMode=ae,Tt.ContextConsumer=Z,Tt.ContextProvider=ve,Tt.Element=we,Tt.ForwardRef=je,Tt.Fragment=ke,Tt.Lazy=De,Tt.Memo=N,Tt.Portal=X,Tt.Profiler=ne,Tt.StrictMode=ce,Tt.Suspense=oe,Tt.isAsyncMode=Re,Tt.isConcurrentMode=Ce,Tt.isContextConsumer=Ue,Tt.isContextProvider=Me,Tt.isElement=Fe,Tt.isForwardRef=Ze,Tt.isFragment=pt,Tt.isLazy=Ft,Tt.isMemo=en,Tt.isPortal=pn,Tt.isProfiler=_t,Tt.isStrictMode=tn,Tt.isSuspense=nn,Tt.isValidElementType=$,Tt.typeOf=z})();lj.exports=Tt;var xz=lj.exports,cj=xz,Ez={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},Cz={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},uj={};uj[cj.ForwardRef]=Ez;uj[cj.Memo]=Cz;var Rz=!0;function dj(t,r,i){var o="";
vendor: 4,085 bytes, line 221
221return i.split(" ").forEach(function(l){t[l]!==void 0?r.push(t[l]+";"):l&&(o+=l+" ")}),o}var vw=function(r,i,o){var l=r.key+"-"+i.name;(o===!1||Rz===!1)&&r.registered[l]===void 0&&(r.registered[l]=i.styles)},bw=function(r,i,o){vw(r,i,o);var l=r.key+"-"+i.name;if(r.inserted[i.name]===void 0){var u=i;do r.insert(i===u?"."+l:"",u,r.sheet,!0),u=u.next;while(u!==void 0)}};function Tz(t){for(var r=0,i,o=0,l=t.length;l>=4;++o,l-=4)i=t.charCodeAt(o)&255|(t.charCodeAt(++o)&255)<<8|(t.charCodeAt(++o)&255)<<16|(t.charCodeAt(++o)&255)<<24,i=(i&65535)*1540483477+((i>>>16)*59797<<16),i^=i>>>24,r=(i&65535)*1540483477+((i>>>16)*59797<<16)^(r&65535)*1540483477+((r>>>16)*59797<<16);switch(l){case 3:r^=(t.charCodeAt(o+2)&255)<<16;case 2:r^=(t.charCodeAt(o+1)&255)<<8;case 1:r^=t.charCodeAt(o)&255,r=(r&65535)*1540483477+((r>>>16)*59797<<16)}return r^=r>>>13,r=(r&65535)*1540483477+((r>>>16)*59797<<16),((r^r>>>15)>>>0).toString(36)}var kz={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},jz=/[A-Z]|^ms/g,Dz=/_EMO_([^_]+?)_([^]*?)_EMO_/g,pj=function(r){return r.charCodeAt(1)===45},RR=function(r){return r!=null&&typeof r!="boolean"},nb=ij(function(t){return pj(t)?t:t.replace(jz,"-$&").toLowerCase()}),TR=function(r,i){switch(r){case"animation":case"animationName":if(typeof i=="string")return i.replace(Dz,function(o,l,u){return di={name:l,styles:u,next:di},l})}return kz[r]!==1&&!pj(r)&&typeof i=="number"&&i!==0?i+"px":i};function Nd(t,r,i){if(i==null)return"";var o=i;if(o.__emotion_styles!==void 0)return o;switch(typeof i){case"boolean":return"";case"object":{var l=i;if(l.anim===1)return di={name:l.name,styles:l.styles,next:di},l.name;var u=i;if(u.styles!==void 0){var d=u.next;if(d!==void 0)for(;d!==void 0;)di={name:d.name,styles:d.styles,next:di},d=d.next;var h=u.styles+";";return h}return Oz(t,r,i)}case"function":{if(t!==void 0){var m=di,g=i(t);return di=m,Nd(t,r,g)}break}}var w=i;if(r==null)return w;var b=r[w];return b!==void 0?b:w}function Oz(t,r,i){var o="";if(Array.isArray(i))for(var l=0;l<i.length;l++)o+=Nd(t,r,i[l])+";";else for(var u in i){var d=i[u];if(typeof d!="object"){var h=d;r!=null&&r[h]!==void 0?o+=u+"{"+r[h]+"}":RR(h)&&(o+=nb(u)+":"+TR(u,h)+";")}else if(Array.isArray(d)&&typeof d[0]=="string"&&(r==null||r[d[0]]===void 0))for(var m=0;m<d.length;m++)RR(d[m])&&(o+=nb(u)+":"+TR(u,d[m])+";");else{var g=Nd(t,r,d);switch(u){case"animation":case"animationName":{o+=nb(u)+":"+g+";";break}default:o+=u+"{"+g+"}"}}}return o}var kR=/label:\s*([^\s;{]+)\s*(;|$)/g,di;function vm(t,r,i){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var o=!0,l="";di=void 0;var u=t[0];if(u==null||u.raw===void 0)o=!1,l+=Nd(i,r,u);else{var d=u;l+=d[0]}for(var h=1;h<t.length;h++)if(l+=Nd(i,r,t[h]),o){var m=u;l+=m[h]}kR.lastIndex=0;for(var g="",w;(w=kR.exec(l))!==null;)g+="-"+w[1];var b=Tz(l)+g;return{name:b,styles:l,next:di}}var Pz=function(r){return r()},fj=cR.useInsertionEffect?cR.useInsertionEffect:!1,hj=fj||Pz,jR=fj||k.useLayoutEffect,mj=k.createContext(typeof HTMLElement<"u"?sj({key:"css"}):null),Az=mj.Provider,ww=function(r){return k.forwardRef(function(i,o){var l=k.useContext(mj);return r(i,l,o)})},Sc=k.createContext({}),Sw={}.hasOwnProperty,Tb="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",Lz=function(r,i){var o={};for(var l in i)Sw.call(i,l)&&(o[l]=i[l]);return o[Tb]=r,o},Mz=function(r){var i=r.cache,o=r.serialized,l=r.isStringTag;return vw(i,o,l),hj(function(){return bw(i,o,l)}),null},qz=ww(function(t,r,i){var o=t.css;
221typeof o=="string"&&r.registered[o]!==void 0&&(o=r.registered[o]);var l=t[Tb],u=[o],d="";typeof t.className=="string"?d=dj(r.registered,u,t.className):t.className!=null&&(d=t.className+" ");var h=vm(u,void 0,k.useContext(Sc));d+=r.key+"-"+h.name;var m={};for(var g in t)Sw.call(t,g)&&g!=="css"&&g!==Tb&&(m[g]=t[g]);return m.className=d,i&&(m.ref=i),k.createElement(k.Fragment,null,k.createElement(Mz,{cache:r,serialized:h,isStringTag:typeof l=="string"}),k.createElement(l,m))}),Iz=qz,rb={exports:{}},DR;function yj(){return DR||(DR=1,function(t){function r(){return t.exports=r=Object.assign?Object.assign.bind():function(i){for(var o=1;o<arguments.length;o++){var l=arguments[o];for(var u in l)({}).hasOwnProperty.call(l,u)&&(i[u]=l[u])}return i},t.exports.__esModule=!0,t.exports.default=t.exports,r.apply(null,arguments)}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}(rb)),rb.exports}yj();var Nz=function(r,i){var o=arguments;if(i==null||!Sw.call(i,"css"))return k.createElement.apply(void 0,o);var l=o.length,u=new Array(l);u[0]=Iz,u[1]=Lz(r,i);for(var d=2;d<l;d++)u[d]=o[d];return k.createElement.apply(null,u)};(function(t){var r;r||(r=t.JSX||(t.JSX={}))})(Nz);var Bz=ww(function(t,r){var i=t.styles,o=vm([i],void 0,k.useContext(Sc)),l=k.useRef();return jR(function(){var u=r.key+"-global",d=new r.sheet.constructor({key:u,nonce:r.sheet.nonce,container:r.sheet.container,speedy:r.sheet.isSpeedy}),h=!1,m=document.querySelector('style[data-emotion="'+u+" "+o.name+'"]');return r.sheet.tags.length&&(d.before=r.sheet.tags[0]),m!==null&&(h=!0,m.setAttribute("data-emotion",u),d.hydrate([m])),l.current=[d,h],function(){d.flush()}},[r]),jR(function(){var u=l.current,d=u[0],h=u[1];if(h){u[1]=!1;return}if(o.next!==void 0&&bw(r,o.next,!0),d.tags.length){var m=d.tags[d.tags.length-1].nextElementSibling;d.before=m,d.flush()}r.insert("",o,d,!1)},[r,o.name]),null});function gj(){for(var t=arguments.length,r=new Array(t),i=0;i<t;i++)r[i]=arguments[i];return vm(r)}function bm(){var t=gj.apply(void 0,arguments),r="animation-"+t.name;return{name:r,styles:"@keyframes "+r+"{"+t.styles+"}",anim:1,toString:function(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}}var Uz=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackgroun
221d|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,Fz=ij(function(t){return Uz.test(t)||t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)<91}),zz=Fz,$z=function(r){return r!=="theme"},OR=function(r){return typeof r=="string"&&r.charCodeAt(0)>96?zz:$z},PR=function(r,i,o){var l;if(i){var u=i.shouldForwardProp;l=r.__emotion_forwardProp&&u?function(d){return r.__emotion_forwardProp(d)&&u(d)}:u}return typeof l!="function"&&o&&(l=r.__emotion_forwardProp),l},Hz=function(r){var i=r.cache,o=r.serialized,l=r.isStringTag;return vw(i,o,l),hj(function(){return bw(i,o,l)}),null},Gz=function t(r,i){var o=r.__emotion_real===r,l=o&&r.__emotion_base||r,u,d;i!==void 0&&(u=i.label,d=i.target);var h=PR(r,i,o),m=h||OR(l),g=!m("as");return function(){var w=arguments,b=o&&r.__emotion_styles!==void 0?r.__emotion_styles.slice(0):[];if(u!==void 0&&b.push("label:"+u+";"),w[0]==null||w[0].raw===void 0)b.push.apply(b,w);else{var E=w[0];b.push(E[0]);for(var T=w.length,O=1;O<T;O++)b.push(w[O],E[O])}var R=ww(function(L,M,G){var $=g&&L.as||l,z="",W=[],ae=L;if(L.theme==null){ae={};for(var Z in L)ae[Z]=L[Z];ae.theme=k.useContext(Sc)}typeof L.className=="string"?z=dj(M.registered,W,L.className):L.className!=null&&(z=L.className+" ");var ve=vm(b.concat(W),M.registered,ae);z+=M.key+"-"+ve.name,d!==void 0&&(z+=" "+d);var we=g&&h===void 0?OR($):m,je={};for(var ke in L)g&&ke==="as"||we(ke)&&(je[ke]=L[ke]);return je.className=z,G&&(je.ref=G),k.createElement(k.Fragment,null,k.createElement(Hz,{cache:M,serialized:ve,isStringTag:typeof $=="string"}),k.createElement($,je))});return R.displayName=u!==void 0?u:"Styled("+(typeof l=="string"?l:l.displayName||l.name||"Component")+")",R.defaultProps=r.defaultProps,R.__emotion_real=R,R.__emotion_base=l,R.__emotion_styles=b,R.__emotion_forwardProp=h,Object.defineProperty(R,"toString",{value:function(){return"."+d}}),R.withComponent=function(L,M){var G=t(L,be({},i,M,{shouldForwardProp:PR(R,M,!0)}));return G.apply(void 0,b)},R}},Wz=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"],kb=Gz.bind(null);Wz.forEach(function(t){kb[t]=kb(t)});
221var _j={exports:{}},vj={exports:{}},kt={};/** @license React v16.13.1
222 * react-is.development.js
223 *
224 * Copyright (c) Facebook, Inc. and its affiliates.
225 *
226 * This source code is licensed under the MIT license found in the
227 * LICENSE file in the root directory of this source tree.
228 */(function(){var t=typeof Symbol=="function"&&Symbol.for,r=t?Symbol.for("react.element"):60103,i=t?Symbol.for("react.portal"):60106,o=t?Symbol.for("react.fragment"):60107,l=t?Symbol.for("react.strict_mode"):60108,u=t?Symbol.for("react.profiler"):60114,d=t?Symbol.for("react.provider"):60109,h=t?Symbol.for("react.context"):60110,m=t?Symbol.for("react.async_mode"):60111,g=t?Symbol.for("react.concurrent_mode"):60111,w=t?Symbol.for("react.forward_ref"):60112,b=t?Symbol.for("react.suspense"):60113,E=t?Symbol.for("react.suspense_list"):60120,T=t?Symbol.for("react.memo"):60115,O=t?Symbol.for("react.lazy"):60116,R=t?Symbol.for("react.block"):60121,L=t?Symbol.for("react.fundamental"):60117,M=t?Symbol.for("react.responder"):60118,G=t?Symbol.for("react.scope"):60119;function $(Q){return typeof Q=="string"||typeof Q=="function"||Q===o||Q===g||Q===u||Q===l||Q===b||Q===E||typeof Q=="object"&&Q!==null&&(Q.$$typeof===O||Q.$$typeof===T||Q.$$typeof===d||Q.$$typeof===h||Q.$$typeof===w||Q.$$typeof===L||Q.$$typeof===M||Q.$$typeof===G||Q.$$typeof===R)}function z(Q){if(typeof Q=="object"&&Q!==null){var jt=Q.$$typeof;switch(jt){case r:var Pt=Q.type;switch(Pt){case m:case g:case o:case u:case l:case b:return Pt;default:var Mt=Pt&&Pt.$$typeof;switch(Mt){case h:case w:case O:case T:case d:return Mt;default:return jt}}case i:return jt}}}var W=m,ae=g,Z=h,ve=d,we=r,je=w,ke=o,De=O,N=T,X=i,ne=u,ce=l,oe=b,_e=!1;function Re(Q){return _e||(_e=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),Ce(Q)||z(Q)===m}function Ce(Q){return z(Q)===g}function Ue(Q){return z(Q)===h}function Me(Q){return z(Q)===d}function Fe(Q){return typeof Q=="object"&&Q!==null&&Q.$$typeof===r}function Ze(Q){return z(Q)===w}function pt(Q){return z(Q)===o}function Ft(Q){return z(Q)===O}function en(Q){return z(Q)===T}function pn(Q){return z(Q)===i}function _t(Q){return z(Q)===u}function tn(Q){return z(Q)===l}function nn(Q){return z(Q)===b}kt.AsyncMode=W,kt.ConcurrentMode=ae,kt.ContextConsumer=Z,kt.ContextProvider=ve,kt.Element=we,kt.ForwardRef=je,kt.Fragment=ke,kt.Lazy=De,kt.Memo=N,kt.Portal=X,kt.Profiler=ne,kt.StrictMode=ce,kt.Suspense=oe,kt.isAsyncMode=Re,kt.isConcurrentMode=Ce,kt.isContextConsumer=Ue,kt.isContextProvider=Me,kt.isElement=Fe,kt.isForwardRef=Ze,kt.isFragment=pt,kt.isLazy=Ft,kt.isMemo=en,kt.isPortal=pn,kt.isProfiler=_t,kt.isStrictMode=tn,kt.isSuspense=nn,kt.isValidElementType=$,kt.typeOf=z})();vj.exports=kt;var bj=vj.exports;/*
229object-assign
230(c) Sindre Sorhus
231@license MIT
232*/var AR=Object.getOwnPropertySymbols,Vz=Object.prototype.hasOwnProperty,Yz=Object.prototype.propertyIsEnumerable;function Kz(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function Qz(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var r={},i=0;i<10;i++)r["_"+String.fromCharCode(i)]=i;var o=Object.getOwnPropertyNames(r).map(function(u){return r[u]});if(o.join("")!=="0123456789")return!1;var l={};return"abcdefghijklmnopqrst".split("").forEach(function(u){l[u]=u}),Object.keys(Object.assign({},l)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}var Xz=Qz()?Object.assign:function(t,r){for(var i,o=Kz(t),l,u=1;u<arguments.length;u++){i=Object(arguments[u]);for(var d in i)Vz.call(i,d)&&(o[d]=i[d]);if(AR){l=AR(i);for(var h=0;h<l.length;h++)Yz.call(i,l[h])&&(o[l[h]]=i[l[h]])}}return o},Jz="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",wj=Jz,Sj=Function.call.bind(Object.prototype.hasOwnProperty),jb=function(){};{var Zz=wj,Db={},e$=Sj;jb=function(t){var r="Warning: "+t;typeof console<"u"&&console.error(r);try{throw new Error(r)}catch{}}}function xj(t,r,i,o,l){for(var u in t)if(e$(t,u)){var d;try{if(typeof t[u]!="function"){var h=Error((o||"React class")+": "+i+" type `"+u+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof t[u]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw h.name="Invariant Violation",h}d=t[u](r,u,o,i,null,Zz)}catch(g){d=g}if(d&&!(d instanceof Error)&&jb((o||"React class")+": type specification of "+i+" `"+u+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof d+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),d instanceof Error&&!(d.message in Db)){Db[d.message]=!0;var m=l?l():"";jb("Failed "+i+" type: "+d.message+(m??""))}}}xj.resetWarningCache=function(){Db={}};var t$=xj,n$=bj,r$=Xz,Gl=wj,ab=Sj,LR=t$,Zl=function(){};Zl=function(t){var r="Warning: "+t;typeof console<"u"&&console.error(r);try{throw new Error(r)}catch{}};function Eh(){return null}var a$=function(t,r){var i=typeof Symbol=="function"&&Symbol.iterator,o="@@iterator";function l(N){var X=N&&(i&&N[i]||N[o]);if(typeof X=="function")return X}var u="<<anonymous>>",d={array:w("array"),bigint:w("bigint"),bool:w("boolean"),func:w("function"),number:w("number"),object:w("object"),string:w("string"),symbol:w("symbol"),any:b(),arrayOf:E,element:T(),elementType:O(),instanceOf:R,node:$(),objectOf:M,oneOf:L,oneOfType:G,shape:W,exact:ae};function h(N,X){return N===X?N!==0||1/N===1/X:N!==N&&X!==X}function m(N,X){this.message=N,this.data=X&&typeof X=="object"?X:{},this.stack=""}m.prototype=Error.prototype;function g(N){var X={},ne=0;function ce(_e,Re,Ce,Ue,Me,Fe,Ze){if(Ue=Ue||u,Fe=Fe||Ce,Ze!==Gl){if(r){var pt=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw pt.name="Invariant Violation",pt}else if(typeof console<"u"){var Ft=Ue+":"+Ce;!X[Ft]&&ne<3&&(Zl("You are manually calling a React.PropTypes validation function for the `"+Fe+"` prop on `"+Ue+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),X[Ft]=!0,ne++)}}return Re[Ce]==null?_e?Re[Ce]===null?new m("The "+Me+" `"+Fe+"` is marked as required "+("in `"+Ue+"`, but its value is `null`.")):new m("The "+Me+" `"+Fe+"` is marked as required in "+("`"+Ue+"`, but its value is `undefined`.")):null:N(Re,Ce,Ue,Me,Fe)}var oe=ce.bind(null,!1);return oe.isRequired=ce.bind(null,!0),oe}function w(N){function X(ne,ce,oe,_e,Re,Ce){var Ue=ne[ce],Me=we(Ue);if(Me!==N){var Fe=je(Ue);return new m("Invalid "+_e+" `"+Re+"` of type "+("`"+Fe+"` supplied to `"+oe+"`, expected ")+("`"+N+"`."),{expectedType:N})}return null}return g(X)}function b(){return g(Eh)}function E(N){function X(ne,ce,oe,_e,Re){if(typeof N!="function")return new m("Property `"+Re+"` of component `"+oe+"` has invali
232d PropType notation inside arrayOf.");var Ce=ne[ce];if(!Array.isArray(Ce)){var Ue=we(Ce);return new m("Invalid "+_e+" `"+Re+"` of type "+("`"+Ue+"` supplied to `"+oe+"`, expected an array."))}for(var Me=0;Me<Ce.length;Me++){var Fe=N(Ce,Me,oe,_e,Re+"["+Me+"]",Gl);if(Fe instanceof Error)return Fe}return null}return g(X)}function T(){function N(X,ne,ce,oe,_e){var Re=X[ne];if(!t(Re)){var Ce=we(Re);return new m("Invalid "+oe+" `"+_e+"` of type "+("`"+Ce+"` supplied to `"+ce+"`, expected a single ReactElement."))}return null}return g(N)}function O(){function N(X,ne,ce,oe,_e){var Re=X[ne];if(!n$.isValidElementType(Re)){var Ce=we(Re);return new m("Invalid "+oe+" `"+_e+"` of type "+("`"+Ce+"` supplied to `"+ce+"`, expected a single ReactElement type."))}return null}return g(N)}function R(N){function X(ne,ce,oe,_e,Re){if(!(ne[ce]instanceof N)){var Ce=N.name||u,Ue=De(ne[ce]);return new m("Invalid "+_e+" `"+Re+"` of type "+("`"+Ue+"` supplied to `"+oe+"`, expected ")+("instance of `"+Ce+"`."))}return null}return g(X)}function L(N){if(!Array.isArray(N))return arguments.length>1?Zl("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."):Zl("Invalid argument supplied to oneOf, expected an array."),Eh;function X(ne,ce,oe,_e,Re){for(var Ce=ne[ce],Ue=0;Ue<N.length;Ue++)if(h(Ce,N[Ue]))return null;var Me=JSON.stringify(N,function(Ze,pt){var Ft=je(pt);return Ft==="symbol"?String(pt):pt});return new m("Invalid "+_e+" `"+Re+"` of value `"+String(Ce)+"` "+("supplied to `"+oe+"`, expected one of "+Me+"."))}return g(X)}function M(N){function X(ne,ce,oe,_e,Re){if(typeof N!="function")return new m("Property `"+Re+"` of component `"+oe+"` has invalid PropType notation inside objectOf.");var Ce=ne[ce],Ue=we(Ce);if(Ue!=="object")return new m("Invalid "+_e+" `"+Re+"` of type "+("`"+Ue+"` supplied to `"+oe+"`, expected an object."));for(var Me in Ce)if(ab(Ce,Me)){var Fe=N(Ce,Me,oe,_e,Re+"."+Me,Gl);if(Fe instanceof Error)return Fe}return null}return g(X)}function G(N){if(!Array.isArray(N))return Zl("Invalid argument supplied to oneOfType, expected an instance of array."),Eh;for(var X=0;X<N.length;X++){var ne=N[X];if(typeof ne!="function")return Zl("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+ke(ne)+" at index "+X+"."),Eh}function ce(oe,_e,Re,Ce,Ue){for(var Me=[],Fe=0;Fe<N.length;Fe++){var Ze=N[Fe],pt=Ze(oe,_e,Re,Ce,Ue,Gl);if(pt==null)return null;pt.data&&ab(pt.data,"expectedType")&&Me.push(pt.data.expectedType)}var Ft=Me.length>0?", expected one of type ["+Me.join(", ")+"]":"";return new m("Invalid "+Ce+" `"+Ue+"` supplied to "+("`"+Re+"`"+Ft+"."))}return g(ce)}function $(){function N(X,ne,ce,oe,_e){return Z(X[ne])?null:new m("Invalid "+oe+" `"+_e+"` supplied to "+("`"+ce+"`, expected a ReactNode."))}return g(N)}function z(N,X,ne,ce,oe){return new m((N||"React class")+": "+X+" type `"+ne+"."+ce+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+oe+"`.")}function W(N){function X(ne,ce,oe,_e,Re){var Ce=ne[ce],Ue=we(Ce);if(Ue!=="object")return new m("Invalid "+_e+" `"+Re+"` of type `"+Ue+"` "+("supplied to `"+oe+"`, expected `object`."));for(var Me in N){var Fe=N[Me];if(typeof Fe!="function")return z(oe,_e,Re,Me,je(Fe));var Ze=Fe(Ce,Me,oe,_e,Re+"."+Me,Gl);if(Ze)return Ze}return null}return g(X)}function ae(N){function X(ne,ce,oe,_e,Re){var Ce=ne[ce],Ue=we(Ce);if(Ue!=="object")return new m("Invalid "+_e+" `"+Re+"` of type `"+Ue+"` "+("supplied to `"+oe+"`, expected `object`."));var Me=r$({},ne[ce],N);for(var Fe in Me){var Ze=N[Fe];if(ab(N,Fe)&&typeof Ze!="function")return z(oe,_e,Re,Fe,je(Ze));if(!Ze)return new m("Invalid "+_e+" `"+Re+"` key `"+Fe+"` supplied to `"+oe+"`.\nBad object: "+JSON.stringify(ne[ce],null,"  ")+`
233Valid keys: `+JSON.stringify(Object.keys(N),null,"  "));var pt=Ze(Ce,Fe,oe,_e,Re+"."+Fe,Gl);if(pt)return pt}return null}return g(X)}function Z(N){switch(typeof N){case"number":case"string":case"undefined":return!0;case"boolean":return!N;case"object":if(Array.isArray(N))return N.every(Z);if(N===null||t(N))return!0;var X=l(N);if(X){var ne=X.call(N),ce;if(X!==N.entries){for(;!(ce=ne.next()).done;)if(!Z(ce.value))return!1}else for(;!(ce=ne.next()).done;){var oe=ce.value;if(oe&&!Z(oe[1]))return!1}}else return!1;return!0;default:return!1}}function ve(N,X){return N==="symbol"?!0:X?X["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&X instanceof Symbol:!1}function we(N){var X=typeof N;return Array.isArray(N)?"array":N instanceof RegExp?"object":ve(X,N)?"symbol":X}function je(N){if(typeof N>"u"||N===null)return""+N;var X=we(N);if(X==="object"){if(N instanceof Date)return"date";if(N instanceof RegExp)return"regexp"}return X}function ke(N){var X=je(N);switch(X){case"array":case"object":return"an "+X;case"boolean":case"date":case"regexp":return"a "+X;default:return X}}function De(N){return!N.constructor||!N.constructor.name?u:N.constructor.name}return d.checkPropTypes=LR,d.resetWarningCache=LR.resetWarningCache,d.PropTypes=d,d};{var i$=bj,o$=!0;_j.exports=a$(i$.isElement,o$)}var s$=_j.exports;const C=aw(s$);let Ob;
233typeof document=="object"&&(Ob=sj({key:"css",prepend:!0}));function Ej(t){const{injectFirst:r,children:i}=t;return r&&Ob?H.jsx(Az,{value:Ob,children:i}):i}Ej.propTypes={children:C.node,injectFirst:C.bool};function l$(t){return t==null||Object.keys(t).length===0}function xw(t){const{styles:r,defaultTheme:i={}}=t,o=typeof r=="function"?l=>r(l$(l)?i:l):r;return H.jsx(Bz,{styles:o})}xw.propTypes={defaultTheme:C.object,styles:C.oneOfType([C.array,C.string,C.object,C.func])};function Cj(t,r){const i=kb(t,r);return(...o)=>{const l=typeof t=="string"?`"${t}"`:"component";return o.length===0?console.error([`MUI: Seems like you called \`styled(${l})()\` without a \`style\` argument.`,'You must provide a `styles` argument: `styled("div")(styleYouForgotToPass)`.'].join(`
234`)):o.some(u=>u===void 0)&&console.error(`MUI: the styled(${l})(...args) API requires all its args to be defined.`),i(...o)}}const c$=(t,r)=>{Array.isArray(t.__emotion_styles)&&(t.__emotion_styles=r(t.__emotion_styles))},u$=Object.freeze(Object.defineProperty({__proto__:null,GlobalStyles:xw,StyledEngineProvider:Ej,ThemeContext:Sc,css:gj,default:Cj,internal_processStyles:c$,keyframes:bm},Symbol.toStringTag,{value:"Module"}));function Ro(t){if(typeof t!="object"||t===null)return!1;const r=Object.getPrototypeOf(t);return(r===null||r===Object.prototype||Object.getPrototypeOf(r)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)}function Rj(t){if(k.isValidElement(t)||!Ro(t))return t;const r={};return Object.keys(t).forEach(i=>{r[i]=Rj(t[i])}),r}function $a(t,r,i={clone:!0}){const o=i.clone?be({},t):t;return Ro(t)&&Ro(r)&&Object.keys(r).forEach(l=>{k.isValidElement(r[l])?o[l]=r[l]:Ro(r[l])&&Object.prototype.hasOwnProperty.call(t,l)&&Ro(t[l])?o[l]=$a(t[l],r[l],i):i.clone?o[l]=Ro(r[l])?Rj(r[l]):r[l]:o[l]=r[l]}),o}const d$=Object.freeze(Object.defineProperty({__proto__:null,default:$a,isPlainObject:Ro},Symbol.toStringTag,{value:"Module"})),p$=["values","unit","step"],f$=t=>{const r=Object.keys(t).map(i=>({key:i,val:t[i]}))||[];return r.sort((i,o)=>i.val-o.val),r.reduce((i,o)=>be({},i,{[o.key]:o.val}),{})};function Tj(t){const{values:r={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:i="px",step:o=5}=t,l=Ln(t,p$),u=f$(r),d=Object.keys(u);function h(E){return`@media (min-width:${typeof r[E]=="number"?r[E]:E}${i})`}function m(E){return`@media (max-width:${(typeof r[E]=="number"?r[E]:E)-o/100}${i})`}function g(E,T){const O=d.indexOf(T);return`@media (min-width:${typeof r[E]=="number"?r[E]:E}${i}) and (max-width:${(O!==-1&&typeof r[d[O]]=="number"?r[d[O]]:T)-o/100}${i})`}function w(E){return d.indexOf(E)+1<d.length?g(E,d[d.indexOf(E)+1]):h(E)}function b(E){const T=d.indexOf(E);return T===0?h(d[1]):T===d.length-1?m(d[T]):g(E,d[d.indexOf(E)+1]).replace("@media","@media not all and")}return be({keys:d,values:u,up:h,down:m,between:g,only:w,not:b,unit:i},l)}const h$={borderRadius:4},Mo=C.oneOfType([C.number,C.string,C.object,C.array]);function Dd(t,r){return r?$a(t,r,{clone:!1}):t}const Ew={xs:0,sm:600,md:900,lg:1200,xl:1536},MR={keys:["xs","sm","md","lg","xl"],up:t=>`@media (min-width:${Ew[t]}px)`};function Gi(t,r,i){const o=t.theme||{};if(Array.isArray(r)){const u=o.breakpoints||MR;return r.reduce((d,h,m)=>(d[u.up(u.keys[m])]=i(r[m]),d),{})}if(typeof r=="object"){const u=o.breakpoints||MR;return Object.keys(r).reduce((d,h)=>{if(Object.keys(u.values||Ew).indexOf(h)!==-1){const m=u.up(h);d[m]=i(r[h],h)}else{const m=h;d[m]=r[m]}return d},{})}return i(r)}function kj(t={}){var r;return((r=t.keys)==null?void 0:r.reduce((o,l)=>{const u=t.up(l);return o[u]={},o},{}))||{}}function jj(t,r){return t.reduce((i,o)=>{const l=i[o];return(!l||Object.keys(l).length===0)&&delete i[o],i},r)}function c9(t,...r){const i=kj(t),o=[i,...r].reduce((l,u)=>$a(l,u),{});return jj(Object.keys(i),o)}function m$(t,r){if(typeof t!="object")return{};const i={},o=Object.keys(r);return Array.isArray(t)?o.forEach((l,u)=>{u<t.length&&(i[l]=!0)}):o.forEach(l=>{t[l]!=null&&(i[l]=!0)}),i}function u9({values:t,breakpoints:r,base:i}){const o=i||m$(t,r),l=Object.keys(o);if(l.length===0)return t;let u;return l.reduce((d,h,m)=>(Array.isArray(t)?(d[h]=t[m]!=null?t[m]:t[u],u=m):typeof t=="object"?(d[h
234]=t[h]!=null?t[h]:t[u],u=h):d[h]=t,d),{})}function En(t){if(typeof t!="string")throw new Error("MUI: `capitalize(string)` expects a string argument.");return t.charAt(0).toUpperCase()+t.slice(1)}const y$=Object.freeze(Object.defineProperty({__proto__:null,default:En},Symbol.toStringTag,{value:"Module"}));function wm(t,r,i=!0){if(!r||typeof r!="string")return null;if(t&&t.vars&&i){const o=`vars.${r}`.split(".").reduce((l,u)=>l&&l[u]?l[u]:null,t);if(o!=null)return o}return r.split(".").reduce((o,l)=>o&&o[l]!=null?o[l]:null,t)}function Xh(t,r,i,o=i){let l;return typeof t=="function"?l=t(i):Array.isArray(t)?l=t[i]||o:l=wm(t,i)||o,r&&(l=r(l,o,t)),l}function hn(t){const{prop:r,cssProperty:i=t.prop,themeKey:o,transform:l}=t,u=d=>{if(d[r]==null)return null;const h=d[r],m=d.theme,g=wm(m,o)||{};return Gi(d,h,b=>{let E=Xh(g,l,b);return b===E&&typeof b=="string"&&(E=Xh(g,l,`${r}${b==="default"?"":En(b)}`,b)),i===!1?E:{[i]:E}})};return u.propTypes={[r]:Mo},u.filterProps=[r],u}function g$(t){const r={};return i=>(r[i]===void 0&&(r[i]=t(i)),r[i])}const _$={m:"margin",p:"padding"},v$={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},qR={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},b$=g$(t=>{if(t.length>2)if(qR[t])t=qR[t];else return[t];const[r,i]=t.split(""),o=_$[r],l=v$[i]||"";return Array.isArray(l)?l.map(u=>o+u):[o+l]}),Sm=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],xm=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],w$=[...Sm,...xm];function Yd(t,r,i,o){var l;const u=(l=wm(t,r,!1))!=null?l:i;return typeof u=="number"?d=>typeof d=="string"?d:(typeof d!="number"&&console.error(`MUI: Expected ${o} argument to be a number or a string, got ${d}.`),u*d):Array.isArray(u)?d=>typeof d=="string"?d:(Number.isInteger(d)?d>u.length-1&&console.error([`MUI: The value provided (${d}) overflows.`,`The supported values are: ${JSON.stringify(u)}.`,`${d} > ${u.length-1}, you need to add the missing values.`].join(`
235`)):console.error([`MUI: The \`theme.${r}\` array type cannot be combined with non integer values.You should either use an integer value that can be used as index, or define the \`theme.${r}\` as a number.`].join(`
236`)),u[d]):typeof u=="function"?u:(console.error([`MUI: The \`theme.${r}\` value (${u}
236) is invalid.`,"It should be a number, an array or a function."].join(`
237`)),()=>{})}function Dj(t){return Yd(t,"spacing",8,"spacing")}function Kd(t,r){if(typeof r=="string"||r==null)return r;const i=Math.abs(r),o=t(i);return r>=0?o:typeof o=="number"?-o:`-${o}`}function S$(t,r){return i=>t.reduce((o,l)=>(o[l]=Kd(r,i),o),{})}function x$(t,r,i,o){if(r.indexOf(i)===-1)return null;const l=b$(i),u=S$(l,o),d=t[i];return Gi(t,d,u)}function Oj(t,r){const i=Dj(t.theme);return Object.keys(t).map(o=>x$(t,r,o,i)).reduce(Dd,{})}function cn(t){return Oj(t,Sm)}cn.propTypes=Sm.reduce((t,r)=>(t[r]=Mo,t),{});cn.filterProps=Sm;function un(t){return Oj(t,xm)}un.propTypes=xm.reduce((t,r)=>(t[r]=Mo,t),{});un.filterProps=xm;w$.reduce((t,r)=>(t[r]=Mo,t),{});function E$(t=8){if(t.mui)return t;const r=Dj({spacing:t}),i=(...o)=>(o.length<=4||console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${o.length}`),(o.length===0?[1]:o).map(u=>{const d=r(u);return typeof d=="number"?`${d}px`:d}).join(" "));return i.mui=!0,i}function Em(...t){const r=t.reduce((o,l)=>(l.filterProps.forEach(u=>{o[u]=l}),o),{}),i=o=>Object.keys(o).reduce((l,u)=>r[u]?Dd(l,r[u](o)):l,{});return i.propTypes=t.reduce((o,l)=>Object.assign(o,l.propTypes),{}),i.filterProps=t.reduce((o,l)=>o.concat(l.filterProps),[]),i}function la(t){return typeof t!="number"?t:`${t}px solid`}function ha(t,r){return hn({prop:t,themeKey:"borders",transform:r})}const C$=ha("border",la),R$=ha("borderTop",la),T$=ha("borderRight",la),k$=ha("borderBottom",la),j$=ha("borderLeft",la),D$=ha("borderColor"),O$=ha("borderTopColor"),P$=ha("borderRightColor"),A$=ha("borderBottomColor"),L$=ha("borderLeftColor"),M$=ha("outline",la),q$=ha("outlineColor"),Cm=t=>{if(t.borderRadius!==void 0&&t.borderRadius!==null){const r=Yd(t.theme,"shape.borderRadius",4,"borderRadius"),i=o=>({borderRadius:Kd(r,o)});return Gi(t,t.borderRadius,i)}return null};Cm.propTypes={borderRadius:Mo};Cm.filterProps=["borderRadius"];Em(C$,R$,T$,k$,j$,D$,O$,P$,A$,L$,Cm,M$,q$);const Rm=t=>{if(t.gap!==void 0&&t.gap!==null){const r=Yd(t.theme,"spacing",8,"gap"),i=o=>({gap:Kd(r,o)});return Gi(t,t.gap,i)}return null};Rm.propTypes={gap:Mo};Rm.filterProps=["gap"];const Tm=t=>{if(t.columnGap!==void 0&&t.columnGap!==null){const r=Yd(t.theme,"spacing",8,"columnGap"),i=o=>({columnGap:Kd(r,o)});return Gi(t,t.columnGap,i)}return null};Tm.propTypes={columnGap:Mo};Tm.filterProps=["columnGap"];const km=t=>{if(t.rowGap!==void 0&&t.rowGap!==null){const r=Yd(t.theme,"spacing",8,"rowGap"),i=o=>({rowGap:Kd(r,o)});return Gi(t,t.rowGap,i)}return null};km.propTypes={rowGap:Mo};km.filterProps=["rowGap"];const I$=hn({prop:"gridColumn"}),N$=hn({prop:"gridRow"}),B$=hn({prop:"gridAutoFlow"}),U$=hn({prop:"gridAutoColumns"}),F$=hn({prop:"gridAutoRows"}),z$=hn({prop:"gridTemplateColumns"}),$$=hn({prop:"gridTemplateRows"}),H$=hn({prop:"gridTemplateAreas"}),G$=hn({prop:"gridArea"});Em(Rm,Tm,km,I$,N$,B$,U$,F$,z$,$$,H$,G$);function nc(t,r){return r==="grey"?r:t}const W$=hn({prop:"color",themeKey:"palette",transform:nc}
237),V$=hn({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:nc}),Y$=hn({prop:"backgroundColor",themeKey:"palette",transform:nc});Em(W$,V$,Y$);function Wr(t){return t<=1&&t!==0?`${t*100}%`:t}const K$=hn({prop:"width",transform:Wr}),Cw=t=>{if(t.maxWidth!==void 0&&t.maxWidth!==null){const r=i=>{var o,l;const u=((o=t.theme)==null||(o=o.breakpoints)==null||(o=o.values)==null?void 0:o[i])||Ew[i];return u?((l=t.theme)==null||(l=l.breakpoints)==null?void 0:l.unit)!=="px"?{maxWidth:`${u}${t.theme.breakpoints.unit}`}:{maxWidth:u}:{maxWidth:Wr(i)}};return Gi(t,t.maxWidth,r)}return null};Cw.filterProps=["maxWidth"];const Q$=hn({prop:"minWidth",transform:Wr}),X$=hn({prop:"height",transform:Wr}),J$=hn({prop:"maxHeight",transform:Wr}),Z$=hn({prop:"minHeight",transform:Wr});hn({prop:"size",cssProperty:"width",transform:Wr});hn({prop:"size",cssProperty:"height",transform:Wr});const e5=hn({prop:"boxSizing"});Em(K$,Cw,Q$,X$,J$,Z$,e5);const Qd={border:{themeKey:"borders",transform:la},borderTop:{themeKey:"borders",transform:la},borderRight:{themeKey:"borders",transform:la},borderBottom:{themeKey:"borders",transform:la},borderLeft:{themeKey:"borders",transform:la},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:la},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:Cm},color:{themeKey:"palette",transform:nc}
237,bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:nc},backgroundColor:{themeKey:"palette",transform:nc},p:{style:un},pt:{style:un},pr:{style:un},pb:{style:un},pl:{style:un},px:{style:un},py:{style:un},padding:{style:un},paddingTop:{style:un},paddingRight:{style:un},paddingBottom:{style:un},paddingLeft:{style:un},paddingX:{style:un},paddingY:{style:un},paddingInline:{style:un},paddingInlineStart:{style:un},paddingInlineEnd:{style:un},paddingBlock:{style:un},paddingBlockStart:{style:un},paddingBlockEnd:{style:un},m:{style:cn},mt:{style:cn},mr:{style:cn},mb:{style:cn},ml:{style:cn},mx:{style:cn},my:{style:cn},margin:{style:cn},marginTop:{style:cn},marginRight:{style:cn},marginBottom:{style:cn},marginLeft:{style:cn},marginX:{style:cn},marginY:{style:cn},marginInline:{style:cn},marginInlineStart:{style:cn},marginInlineEnd:{style:cn},marginBlock:{style:cn},marginBlockStart:{style:cn},marginBlockEnd:{style:cn},displayPrint:{cssProperty:!1,transform:t=>({"@media print":{display:t}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:Rm},rowGap:{style:km},columnGap:{style:Tm},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:Wr},maxWidth:{style:Cw},minWidth:{transform:Wr},height:{transform:Wr},maxHeight:{transform:Wr},minHeight:{transform:Wr},boxSizing:{},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}};function t5(...t){const r=t.reduce((o,l)=>o.concat(Object.keys(l)),[]),i=new Set(r);return t.every(o=>i.size===Object.keys(o).length)}function n5(t,r){return typeof t=="function"?t(r):t}function Pj(){function t(i,o,l,u){const d={[i]:o,theme:l},h=u[i];if(!h)return{[i]:o};const{cssProperty:m=i,themeKey:g,transform:w,style:b}=h;if(o==null)return null;if(g==="typography"&&o==="inherit")return{[i]:o};const E=wm(l,g)||{};return b?b(d):Gi(d,o,O=>{let R=Xh(E,w,O);return O===R&&typeof O=="string"&&(R=Xh(E,w,`${i}${O==="default"?"":En(O)}`,O)),m===!1?R:{[m]:R}})}function r(i){var o;const{sx:l,theme:u={}}=i||{};if(!l)return null;const d=(o=u.unstable_sxConfig)!=null?o:Qd;function h(m){let g=m;if(typeof m=="function")g=m(u);else if(typeof m!="object")return m;if(!g)return null;const w=kj(u.breakpoints),b=Object.keys(w);let E=w;return Object.keys(g).forEach(T=>{const O=n5(g[T],u);if(O!=null)if(typeof O=="object")if(d[T])E=Dd(E,t(T,O,u,d));else{const R=Gi({theme:u},O,L=>({[T]:L}));t5(R,O)?E[T]=r({sx:O,theme:u}):E=Dd(E,R)}else E=Dd(E,t(T,O,u,d))}),jj(b,E)}return Array.isArray(l)?l.map(h):h(l)}return r}const Xd=Pj();Xd.filterProps=["sx"];function Aj(t,r){const i=this;return i.vars&&typeof i.getColorSchemeSelector=="function"?{[i.getColorSchemeSelector(t).replace(/(\[[^\]]+\])/,"*:where($1)")]:r}:i.palette.mode===t?r:{}}const r5=["breakpoints","palette","spacing","shape"];function Rw(t={},...r){const{breakpoints:i={},palette:o={},spacing:l,shape:u={}}=t,d=Ln(t,r5),h=Tj(i),m=E$(l);let g=$a({breakpoints:h,direction:"ltr",components:{},palette:be({mode:"light"},o),spacing:m,shape:be({},h$,u)},d);return g.applyStyles=Aj,g=r.reduce((w,b)=>$a(w,b),g),g.unstable_sxConfig=be({},Qd,d==null?void 0:d.unstable_sxConfig),g.unstable_sx=function(b){return Xd({sx:b,theme:this})},g}const a5=Object.freeze(Object.defineProperty({__proto__:null,default:Rw,private_createBreakpoints:Tj,unstable_applyStyles:Aj},Symbol.toStringTag,{value:"Module"}));function i5(t){return Object.keys(t).length===0}function Lj(t=null){const r=k.useContext(Sc);return!r||i5(r)?t:r}const o5=Rw();function Tw(t=o5){return Lj(t)}function Mj({styles:t,themeId:r,defaultTheme:i={}}){const o=Tw(i),l=typeof t=="function"?t(r&&o[r]||o):t;return H.jsx(xw,{styles:l})}Mj.propTypes={defaultTheme:C.object,styles:C.oneOfType([C.array,C.func,C.number,C.object,C.string,C.bool]),themeId:C.string};const s5=["sx"],l5=t=>{var r,i;const o={systemProps:{},otherProps:{}},l=(r=t==null||(i=t.theme)==null?void 0:i.unstable_sxConfig)!=null?r:Qd;return Object.keys(t).forEach(u=>{l[u]?o.systemProps[u]=t[u]:o.otherProps[u]=t[u]}),o};function kw(t){const{sx:r}=t,i=Ln(t,s5),{systemProps:o,otherProps:l}=l5(i);let u;return Array.isArray(r)?u=[o,...r]:typeof r=="function"?u=(...d)=>{const h=r(...d);return Ro(h)?be({},o,h):o}:u=be({},o,r),be({},l,{sx:u})}const c5=Object.freeze(Object.defineProperty({__proto__:null,default:Xd,extendSxProp:kw,unstable_createStyleFunctionSx:Pj,unstable_defaultSxConfig:Qd},Symbol.toStringTag,{value:"Module"})),IR=t=>t,u5=()=>{let t=IR;return{configure(r){t=r},generate(r){return t(r)},reset(){t=IR}}},qj=u5();function Ij(t){var r,i,o="";if(typeof t=="string"||typeof t=="number")o+=t;else if(typeof t=="object")if(Array.isArray(t)){var l=t.length;for(r=0;r<l;r++)t[r]&&(i=Ij(t[r]))&&(o&&(o+=" "),o+=i)}else for(i in t)t[i]&&(o&&(o+=" "),o+=i);return o}function Sr(){for(var t,r,i=0,o="",l=arguments.length;i<l;i++)(t=arguments[i])&&(r=Ij(t))&&(o&&(o+=" "),o+=r);return o}const d5=["className","component"];function p5(t={}){const{themeId:r,defaultTheme:i,defaultClassName:o="MuiBox-root",generateClassName:l}=t,u=Cj("div",{shouldForwardProp:h=>h!=="theme"&&h!=="sx"&&h!=="as"})(Xd);return k.forwardRef(function(m,g){const w=Tw(i),b=kw(m),{className:E,
237component:T="div"}=b,O=Ln(b,d5);return H.jsx(u,be({as:T,ref:g,className:Sr(E,l?l(o):o),theme:r&&w[r]||w},O))})}const f5={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function xc(t,r,i="Mui"){const o=f5[r];return o?`${i}-${o}`:`${qj.generate(t)}-${r}`}function Ec(t,r,i="Mui"){const o={};return r.forEach(l=>{o[l]=xc(t,l,i)}),o}var Nj={exports:{}},Lt={};/**
238 * @license React
239 * react-is.development.js
240 *
241 * Copyright (c) Meta Platforms, Inc. and affiliates.
242 *
243 * This source code is licensed under the MIT license found in the
244 * LICENSE file in the root directory of this source tree.
245 */(function(){function t(R){if(typeof R=="object"&&R!==null){var L=R.$$typeof;switch(L){case r:switch(R=R.type,R){case o:case u:case l:case g:case w:case T:return R;default:switch(R=R&&R.$$typeof,R){case h:case m:case E:case b:return R;case d:return R;default:return L}}case i:return L}}}var r=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),l=Symbol.for("react.strict_mode"),u=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),h=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),w=Symbol.for("react.suspense_list"),b=Symbol.for("react.memo"),E=Symbol.for("react.lazy"),T=Symbol.for("react.view_transition"),O=Symbol.for("react.client.reference");Lt.ContextConsumer=d,Lt.ContextProvider=h,Lt.Element=r,Lt.ForwardRef=m,Lt.Fragment=o,Lt.Lazy=E,Lt.Memo=b,Lt.Portal=i,Lt.Profiler=u,Lt.StrictMode=l,Lt.Suspense=g,Lt.SuspenseList=w,Lt.isContextConsumer=function(R){return t(R)===d},Lt.isContextProvider=function(R){return t(R)===h},Lt.isElement=function(R){return typeof R=="object"&&R!==null&&R.$$typeof===r},Lt.isForwardRef=function(R){return t(R)===m},Lt.isFragment=function(R){return t(R)===o},Lt.isLazy=function(R){return t(R)===E},Lt.isMemo=function(R){return t(R)===b},Lt.isPortal=function(R){return t(R)===i},Lt.isProfiler=function(R){return t(R)===u},Lt.isStrictMode=function(R){return t(R)===l},Lt.isSuspense=function(R){return t(R)===g},Lt.isSuspenseList=function(R){return t(R)===w},Lt.isValidElementType=function(R){return typeof R=="string"||typeof R=="function"||R===o||R===u||R===l||R===g||R===w||typeof R=="object"&&R!==null&&(R.$$typeof===E||R.$$typeof===b||R.$$typeof===h||R.$$typeof===d||R.$$typeof===m||R.$$typeof===O||R.getModuleId!==void 0)},Lt.typeOf=t})();Nj.exports=Lt;var NR=Nj.exports;const h5=/^\s*function(?:\s|\s*\/\*.*\*\/\s*)+([^(\s/]*)\s*/;function Bj(t){const r=`${t}`.match(h5);return r&&r[1]||""}function Uj(t,r=""){return t.displayName||t.name||Bj(t)||r}function BR(t,r,i){const o=Uj(r);return t.displayName||(o!==""?`${i}(${o})`:i)}function m5(t){if(t!=null){if(typeof t=="string")return t;if(typeof t=="function")return Uj(t,"Component");if(typeof t=="object")switch(t.$$typeof){case NR.ForwardRef:return BR(t,t.render,"ForwardRef");case NR.Memo:return BR(t,t.type,"memo");default:return}}}const y5=Object.freeze(Object.defineProperty({__proto__:null,default:m5,getFunctionName:Bj},Symbol.toStringTag,{value:"Module"}));function Jh(t,r){const i=be({},r);return Object.keys(t).forEach(o=>{if(o.toString().match(/^(components|slots)$/))i[o]=be({},t[o],i[o]);else if(o.toString().match(/^(componentsProps|slotProps)$/)){const l=t[o]||{},u=r[o];i[o]={},!u||!Object.keys(u)?i[o]=l:!l||!Object.keys(l)?i[o]=u:(i[o]=be({},u),Object.keys(l).forEach(d=>{i[o][d]=Jh(l[d],u[d])}))}else i[o]===void 0&&(i[o]=t[o])}),i}const g5=typeof window<"u"?k.useLayoutEffect:k.useEffect;function _5(t,r=Number.MIN_SAFE_INTEGER,i=Number.MAX_SAFE_INTEGER){return Math.max(r,Math.min(t,i))}const v5=Object.freeze(Object.defineProperty({__proto__:null,default:_5},Symbol.toStringTag,{value:"Module"}));function jw(t,r){return function(...o){return t(...o)||r(...o)}}function b5(t){const{prototype:r={}}=t;return!!r.isReactComponent}function Fj(t,r,i,o,l){const u=t[r],d=l||r;if(u==null||typeof window>"u")return null;let h;const m=u.type;return typeof m=="function"&&!b5(m)&&(h="Did you accidentally use a plain function component for an element instead?"),h!==void 0?new Error(`Invalid ${o} \`${d}\` supplied to \`${i}\`. Expected an element that can hold a ref. ${h} For more information see https://mui.com/r/caveat-with-refs-guide`):null}const Dw=jw(C.element,Fj);Dw.isRequired=jw(C.element.isRequired,Fj);function w5(t){const{prototype:r={}}=t;return!!r.isReactComponent}function S5(t,r,i,o,l){const u=t[r],d=l||r;if(u==null||typeof window>"u")return null;let h;return typeof u=="function"&&!w5(u)&&(h="Did you accidentally provide a plain function component instead?"),h!==void 0?new Error(`Invalid ${o} \`${d}\` supplied to \`${i}\`. Expected an element type that can hold a ref. ${h} For more information see https://mui.com/r/caveat-with-refs-guide`):null}const x5=jw(C.elementType,S5),E5="exact-prop: ​";function zj(t){return be({},t,{[E5]:r=>{const i=Object.keys(r).filter(o=>!t.hasOwnProperty(o));return i.length>0?new Error(`The following props are not supported: ${i.map(o=>`\`${o}\``).join(", ")}. Please remove them.`):null}})}const C5=C.oneOfType([C.func,C.object]);function R5(t,r){typeof t=="function"?t(r):t&&(t.current=r)}function Ch(t){const r=k.useRef(t);return g5(()=>{r.current=t}),k.useRef((...i)=>(0,r.current)(...i)).current}function Zh(...t){return k.useMemo(()=>t.every(r=>r==null)?null:r=>{t.forEach(i=>
245{R5(i,r)})},t)}const UR={};function T5(t,r){const i=k.useRef(UR);return i.current===UR&&(i.current=t(r)),i}const k5=[];function j5(t){k.useEffect(t,k5)}class jm{constructor(){this.currentId=null,this.clear=()=>{this.currentId!==null&&(clearTimeout(this.currentId),this.currentId=null)},this.disposeEffect=()=>this.clear}static create(){return new jm}start(r,i){this.clear(),this.currentId=setTimeout(()=>{this.currentId=null,i()},r)}}function $j(){const t=T5(jm.create).current;return j5(t.disposeEffect),t}let Dm=!0,Pb=!1;const D5=new jm,O5={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function P5(t){const{type:r,tagName:i}=t;return!!(i==="INPUT"&&O5[r]&&!t.readOnly||i==="TEXTAREA"&&!t.readOnly||t.isContentEditable)}function A5(t){t.metaKey||t.altKey||t.ctrlKey||(Dm=!0)}function ib(){Dm=!1}function L5(){this.visibilityState==="hidden"&&Pb&&(Dm=!0)}function M5(t){t.addEventListener("keydown",A5,!0),t.addEventListener("mousedown",ib,!0),t.addEventListener("pointerdown",ib,!0),t.addEventListener("touchstart",ib,!0),t.addEventListener("visibilitychange",L5,!0)}function q5(t){const{target:r}=t;try{return r.matches(":focus-visible")}catch{}return Dm||P5(r)}function I5(){const t=k.useCallback(l=>{l!=null&&M5(l.ownerDocument)},[]),r=k.useRef(!1);function i(){return r.current?(Pb=!0,D5.start(100,()=>{Pb=!1}),r.current=!1,!0):!1}function o(l){return q5(l)?(r.current=!0,!0):!1}return{isFocusVisibleRef:r,onFocus:o,onBlur:i,ref:t}}function Om(t,r,i=void 0){const o={};return Object.keys(t).forEach(l=>{o[l]=t[l].reduce((u,d)=>{if(d){const h=r(d);h!==""&&u.push(h),i&&i[d]&&u.push(i[d])}return u},[]).join(" ")}),o}function Hj(t){if(parseInt(k.version,10)>=19){var r;return(t==null||(r=t.props)==null?void 0:r.ref)||null}return(t==null?void 0:t.ref)||null}const Ow=k.createContext(null);Ow.displayName="ThemeContext";function Gj(){const t=k.useContext(Ow);return k.useDebugValue(t),t}const N5=typeof Symbol=="function"&&Symbol.for,B5=N5?Symbol.for("mui.nested"):"__THEME_NESTED__";function U5(t,r){if(typeof r=="function"){const i=r(t);return i||console.error(["MUI: You should return an object from your theme function, i.e.","<ThemeProvider theme={() => ({})} />"].join(`
246`)),i}return be({},t,r)}function em(t){const{children:r,theme:i}=t,o=Gj();o===null&&typeof i=="function"&&console.error(["MUI: You are providing a theme function prop to the ThemeProvider component:","<ThemeProvider theme={outerTheme => outerTheme} />","","However, no outer theme is present.","Make sure a theme is already injected higher in the React tree or provide a theme object."].join(`
247`));const l=k.useMemo(()=>{const u=o===null?i:U5(o,i);return u!=null&&(u[B5]=o!==null),u},[i,o]);return H.jsx(Ow.Provider,{value:l,children:r})}em.propTypes={children:C.node,theme:C.oneOfType([C.object,C.func]).isRequired};em.propTypes=zj(em.propTypes);const F5=["value"],Wj=k.createContext();function Vj(t){let{value:r}=t,i=Ln(t,F5);return H.jsx(Wj.Provider,be({value:r??!0},i))}Vj.propTypes={children:C.node,value:C.bool};const d9=()=>{const t=k.useContext(Wj);return t??!1},Yj=k.createContext(void 0);function Kj({value:t,children:r}){return H.jsx(Yj.Provider,{value:t,children:r})}Kj.propTypes={children:C.node,value:C.object};function z5(t){const{theme:r,name:i,props:o}=t;if(!r||!r.components||!r.components[i])return o;const l=r.components[i];return l.defaultProps?Jh(l.defaultProps,o):!l.styleOverrides&&!l.variants?Jh(l,o):o}function $5({props:t,name:r}){const i=k.useContext(Yj);return z5({props:t,name:r,theme:{components:i}})}const FR={};function zR(t,r,i,o=!1){return k.useMemo(()=>{const l=t&&r[t]||r;if(typeof i=="function"){const u=i(l),d=t?be({},r,{[t]:u}):u;return o?()=>d:d}return t?be({},r,{[t]:i}):be({},r,i)},[t,r,i,o])}function tm(t){const{children:r,theme:i,themeId:o}=t,l=Lj(FR),u=Gj()||FR;(l===null&&typeof i=="function"||o&&l&&!l[o]&&typeof i=="function")&&console.error(["MUI: You are providing a theme function prop to the ThemeProvider component:","<ThemeProvider theme={outerTheme => outerTheme} />","","However, no outer theme is present.","Make sure a theme is already injected higher in the React tree or provide a theme object."].join(`
248`));const d=zR(o,l,i),h=zR(o,u,i,!0),m=d.direction==="rtl";return H.jsx(em,{theme:h,children:H.jsx(Sc.Provider,{value:d,children:H.jsx(Vj,{value:m,children:H.jsx(Kj,{value:d==null?void 0:d.components,children:r})})})})}tm.propTypes={children:C.node,theme:C.oneOfType([C.func,C.object]).isRequired,themeId:C.string};tm.propTypes=zj(tm.propTypes);function H5(t,r){return be({toolbar:{minHeight:56,[t.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[t.up("sm")]:{minHeight:64}}},r)}var mn={},Qj={exports:{}};(function(t){function r(i){return i&&i.__esModule?i:{default:i}}
248t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports})(Qj);var Xj=Qj.exports;const G5=Lo(YF),W5=Lo(v5);var Jj=Xj;Object.defineProperty(mn,"__esModule",{value:!0});var Rh=mn.alpha=n1;mn.blend=aH;mn.colorChannel=void 0;var V5=mn.darken=Aw;mn.decomposeColor=pa;var p9=mn.emphasize=r1,$R=mn.getContrastRatio=Z5;mn.getLuminance=nm;mn.hexToRgb=Zj;mn.hslToRgb=t1;var Y5=mn.lighten=Lw;mn.private_safeAlpha=eH;mn.private_safeColorChannel=void 0;mn.private_safeDarken=tH;mn.private_safeEmphasize=rH;mn.private_safeLighten=nH;mn.recomposeColor=Cc;mn.rgbToHex=J5;Jj(G5);var K5=Jj(W5);function Pw(t,r=0,i=1){return(t<r||t>i)&&console.error(`MUI: The value provided ${t} is out of range [${r}, ${i}].`),(0,K5.default)(t,r,i)}function Zj(t){t=t.slice(1);const r=new RegExp(`.{1,${t.length>=6?2:1}}`,"g");let i=t.match(r);return i&&i[0].length===1&&(i=i.map(o=>o+o)),i?`rgb${i.length===4?"a":""}(${i.map((o,l)=>l<3?parseInt(o,16):Math.round(parseInt(o,16)/255*1e3)/1e3).join(", ")})`:""}function Q5(t){const r=t.toString(16);return r.length===1?`0${r}`:r}function pa(t){if(t.type)return t;if(t.charAt(0)==="#")return pa(Zj(t));const r=t.indexOf("("),i=t.substring(0,r);if(["rgb","rgba","hsl","hsla","color"].indexOf(i)===-1)throw new Error(`MUI: Unsupported \`${t}\` color.
249The following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().`);let o=t.substring(r+1,t.length-1),l;if(i==="color"){if(o=o.split(" "),l=o.shift(),o.length===4&&o[3].charAt(0)==="/"&&(o[3]=o[3].slice(1)),["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].indexOf(l)===-1)throw new Error(`MUI: unsupported \`${l}\` color space.
250The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.`)}else o=o.split(",");return o=o.map(u=>parseFloat(u)),{type:i,values:o,colorSpace:l}}const e1=t=>{const r=pa(t);return r.values.slice(0,3).map((i,o)=>r.type.indexOf("hsl")!==-1&&o!==0?`${i}%`:i).join(" ")};mn.colorChannel=e1;const X5=(t,r)=>{try{return e1(t)}catch{return r&&console.warn(r),t}};mn.private_safeColorChannel=X5;function Cc(t){const{type:r,colorSpace:i}=t;let{values:o}=t;return r.indexOf("rgb")!==-1?o=o.map((l,u)=>u<3?parseInt(l,10):l):r.indexOf("hsl")!==-1&&(o[1]=`${o[1]}%`,o[2]=`${o[2]}%`),r.indexOf("color")!==-1?o=`${i} ${o.join(" ")}`:o=`${o.join(", ")}`,`${r}(${o})`}function J5(t){if(t.indexOf("#")===0)return t;const{values:r}=pa(t);return`#${r.map((i,o)=>Q5(o===3?Math.round(255*i):i)).join("")}`}function t1(t){t=pa(t);const{values:r}=t,i=r[0],o=r[1]/100,l=r[2]/100,u=o*Math.min(l,1-l),d=(g,w=(g+i/30)%12)=>l-u*Math.max(Math.min(w-3,9-w,1),-1);let h="rgb";const m=[Math.round(d(0)*255),Math.round(d(8)*255),Math.round(d(4)*255)];return t.type==="hsla"&&(h+="a",m.push(r[3])),Cc({type:h,values:m})}function nm(t){t=pa(t);let r=t.type==="hsl"||t.type==="hsla"?pa(t1(t)).values:t.values;return r=r.map(i=>(t.type!=="color"&&(i/=255),i<=.03928?i/12.92:((i+.055)/1.055)**2.4)),Number((.2126*r[0]+.7152*r[1]+.0722*r[2]).toFixed(3))}function Z5(t,r){const i=nm(t),o=nm(r);return(Math.max(i,o)+.05)/(Math.min(i,o)+.05)}function n1(t,r){return t=pa(t),r=Pw(r),(t.type==="rgb"||t.type==="hsl")&&(t.type+="a"),t.type==="color"?t.values[3]=`/${r}`:t.values[3]=r,Cc(t)}function eH(t,r,i){try{return n1(t,r)}catch{return i&&console.warn(i),t}}function Aw(t,r){if(t=pa(t),r=Pw(r),t.type.indexOf("hsl")!==-1)t.values[2]*=1-r;else if(t.type.indexOf("rgb")!==-1||t.type.indexOf("color")!==-1)for(let i=0;i<3;i+=1)t.values[i]*=1-r;return Cc(t)}function tH(t,r,i){try{return Aw(t,r)}catch{return i&&console.warn(i),t}}function Lw(t,r){if(t=pa(t),r=Pw(r),t.type.indexOf("hsl")!==-1)t.values[2]+=(100-t.values[2])*r;else if(t.type.indexOf("rgb")!==-1)for(let i=0;i<3;i+=1)t.values[i]+=(255-t.values[i])*r;else if(t.type.indexOf("color")!==-1)for(let i=0;i<3;i+=1)t.values[i]+=(1-t.values[i])*r;return Cc(t)}function nH(t,r,i){try{return Lw(t,r)}catch{return i&&console.warn(i),t}}function r1(t,r=.15){return nm(t)>.5?Aw(t,r):Lw(t,r)}function rH(t,r,i){try{return r1(t,r)}catch{return i&&console.warn(i),t}}function aH(t,r,i,o=1){const l=(m,g)=>Math.round((m**(1/o)*(1-i)+g**(1/o)*i)**o),u=pa(t),d=pa(r),h=[l(u.values[0],d.values[0]),l(u.values[1],d.values[1]),l(u.values[2],d.values[2])];return Cc({type:"rgb",values:h})}const Bd={black:"#000",white:"#fff"},iH={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},Wl={50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",A100:"#ea80fc",A200:"#e040fb",A400:"#d500f9",A700:"#aa00ff"},Vl={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},Cd={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},Yl={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},Kl={50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",A100:"#80d8ff",A200:"#40c4ff",A400:"#00b0ff",A700:"#0091ea"},Ql={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"},oH=["mode","contrastThreshold","tonalOffset"],HR={text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:Bd.white,default:Bd.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackgroun
250d:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}},ob={text:{primary:Bd.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:Bd.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}};function GR(t,r,i,o){const l=o.light||o,u=o.dark||o*1.5;t[r]||(t.hasOwnProperty(i)?t[r]=t[i]:r==="light"?t.light=Y5(t.main,l):r==="dark"&&(t.dark=V5(t.main,u)))}function sH(t="light"){return t==="dark"?{main:Yl[200],light:Yl[50],dark:Yl[400]}:{main:Yl[700],light:Yl[400],dark:Yl[800]}}function lH(t="light"){return t==="dark"?{main:Wl[200],light:Wl[50],dark:Wl[400]}:{main:Wl[500],light:Wl[300],dark:Wl[700]}}function cH(t="light"){return t==="dark"?{main:Vl[500],light:Vl[300],dark:Vl[700]}:{main:Vl[700],light:Vl[400],dark:Vl[800]}}function uH(t="light"){return t==="dark"?{main:Kl[400],light:Kl[300],dark:Kl[700]}:{main:Kl[700],light:Kl[500],dark:Kl[900]}}function dH(t="light"){return t==="dark"?{main:Ql[400],light:Ql[300],dark:Ql[700]}:{main:Ql[800],light:Ql[500],dark:Ql[900]}}function pH(t="light"){return t==="dark"?{main:Cd[400],light:Cd[300],dark:Cd[700]}:{main:"#ed6c02",light:Cd[500],dark:Cd[900]}}function fH(t){const{mode:r="light",contrastThreshold:i=3,tonalOffset:o=.2}=t,l=Ln(t,oH),u=t.primary||sH(r),d=t.secondary||lH(r),h=t.error||cH(r),m=t.info||uH(r),g=t.success||dH(r),w=t.warning||pH(r);function b(R){const L=$R(R,ob.text.primary)>=i?ob.text.primary:HR.text.primary;{const M=$R(R,L);M<3&&console.error([`MUI: The contrast ratio of ${M}:1 for ${L} on ${R}`,"falls below the WCAG recommended absolute minimum contrast ratio of 3:1.","https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast"].join(`
251`))}return L}const E=({color:R,name:L,mainShade:M=500,lightShade:G=300,darkShade:$=700})=>{if(R=be({},R),!R.main&&R[M]&&(R.main=R[M]),!R.hasOwnProperty("main"))throw new Error(`MUI: The color${L?` (${L})`:""} provided to augmentColor(color) is invalid.
252The color object needs to have a \`main\` property or a \`${M}\` property.`);if(typeof R.main!="string")throw new Error(`MUI: The color${L?` (${L})`:""} provided to augmentColor(color) is invalid.
253\`color.main\` should be a string, but \`${JSON.stringify(R.main)}\` was provided instead.
254
255Did you intend to use one of the following approaches?
256
257import { green } from "@mui/material/colors";
258
259const theme1 = createTheme({ palette: {
260  primary: green,
261} });
262
263const theme2 = createTheme({ palette: {
264  primary: { main: green[500] },
265} });`);return GR(R,"light",G,o),GR(R,"dark",$,o),R.contrastText||(R.contrastText=b(R.main)),R},T={dark:ob,light:HR};return T[r]||console.error(`MUI: The palette mode \`${r}\` is not supported.`),$a(be({common:be({},Bd),mode:r,primary:E({color:u,name:"primary"}),secondary:E({color:d,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:E({color:h,name:"error"}),warning:E({color:w,name:"warning"}),info:E({color:m,name:"info"}),success:E({color:g,name:"success"}),grey:iH,contrastThreshold:i,getContrastText:b,augmentColor:E,tonalOffset:o},T[r]),l)}const hH=["fontFamily","fontSize","fontWeightLight","fontWeightRegular","fontWeightMedium","fontWeightBold","htmlFontSize","allVariants","pxToRem"];function mH(t){return Math.round(t*1e5)/1e5}const WR={textTransform:"uppercase"},VR='"Roboto", "Helvetica", "Arial", sans-serif';function yH(t,r){const i=typeof r=="function"?r(t):r,{fontFamily:o=VR,fontSize:l=14,fontWeightLight:u=300,fontWeightRegular:d=400,fontWeightMedium:h=500,fontWeightBold:m=700,htmlFontSize:g=16,allVariants:w,pxToRem:b}=i,E=Ln(i,hH);typeof l!="number"&&console.error("MUI: `fontSize` is required to be a number."),typeof g!="number"&&console.error("MUI: `htmlFontSize` is required to be a number.");const T=l/14,O=b||(M=>`${M/g*T}rem`),R=(M,G,$,z,W)=>be({fontFamily:o,fontWeight:M,fontSize:O(G),lineHeight:$},o===VR?{letterSpacing:`${mH(z/G)}em`}:{},W,w),L={h1:R(u,96,1.167,-1.5),h2:R(u,60,1.2,-.5),h3:R(d,48,1.167,0),h4:R(d,34,1.235,.25),h5:R(d,24,1.334,0),h6:R(h,20,1.6,.15),subtitle1:R(d,16,1.75,.15),subtitle2:R(h,14,1.57,.1),body1:R(d,16,1.5,.15),body2:R(d,14,1.43,.15),button:R(h,14,1.75,.4,WR),caption:R(d,12,1.66,.4),overline:R(d,12,2.66,1,WR),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return $a(be({htmlFontSize:g,pxToRem:O,fontFamily:o,fontSize:l,fontWeightLight:u,fontWeightRegular:d,fontWeightMedium:h,fontWeightBold:m},L),E,{clone:!1})}const gH=.2,_H=.14,vH=.12;function Jt(...t){return[`${t[0]}px ${t[1]}px ${t[2]}px ${t[3]}px rgba(0,0,0,${gH})`,`${t[4]}px ${t[5]}px ${t[6]}px ${t[7]}px rgba(0,0,0,${_H})`,`${t[8]}px ${t[9]}px ${t[10]}px ${t[11]}
265px rgba(0,0,0,${vH})`].join(",")}const bH=["none",Jt(0,2,1,-1,0,1,1,0,0,1,3,0),Jt(0,3,1,-2,0,2,2,0,0,1,5,0),Jt(0,3,3,-2,0,3,4,0,0,1,8,0),Jt(0,2,4,-1,0,4,5,0,0,1,10,0),Jt(0,3,5,-1,0,5,8,0,0,1,14,0),Jt(0,3,5,-1,0,6,10,0,0,1,18,0),Jt(0,4,5,-2,0,7,10,1,0,2,16,1),Jt(0,5,5,-3,0,8,10,1,0,3,14,2),Jt(0,5,6,-3,0,9,12,1,0,3,16,2),Jt(0,6,6,-3,0,10,14,1,0,4,18,3),Jt(0,6,7,-4,0,11,15,1,0,4,20,3),Jt(0,7,8,-4,0,12,17,2,0,5,22,4),Jt(0,7,8,-4,0,13,19,2,0,5,24,4),Jt(0,7,9,-4,0,14,21,2,0,5,26,4),Jt(0,8,9,-5,0,15,22,2,0,6,28,5),Jt(0,8,10,-5,0,16,24,2,0,6,30,5),Jt(0,8,11,-5,0,17,26,2,0,6,32,5),Jt(0,9,11,-5,0,18,28,2,0,7,34,6),Jt(0,9,12,-6,0,19,29,2,0,7,36,6),Jt(0,10,13,-6,0,20,31,3,0,8,38,7),Jt(0,10,13,-6,0,21,33,3,0,8,40,7),Jt(0,10,14,-6,0,22,35,3,0,8,42,7),Jt(0,11,14,-7,0,23,36,3,0,9,44,8),Jt(0,11,15,-7,0,24,38,3,0,9,46,8)],wH=["duration","easing","delay"],SH={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},xH={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function YR(t){return`${Math.round(t)}ms`}function EH(t){if(!t)return 0;const r=t/36;return Math.round((4+15*r**.25+r/5)*10)}function CH(t){const r=be({},SH,t.easing),i=be({},xH,t.duration);return be({getAutoHeightDuration:EH,create:(l=["all"],u={})=>{const{duration:d=i.standard,easing:h=r.easeInOut,delay:m=0}=u,g=Ln(u,wH);{const w=E=>typeof E=="string",b=E=>!isNaN(parseFloat(E));!w(l)&&!Array.isArray(l)&&console.error('MUI: Argument "props" must be a string or Array.'),!b(d)&&!w(d)&&console.error(`MUI: Argument "duration" must be a number or a string but found ${d}.`),w(h)||console.error('MUI: Argument "easing" must be a string.'),!b(m)&&!w(m)&&console.error('MUI: Argument "delay" must be a number or a string.'),typeof u!="object"&&console.error(["MUI: Secong argument of transition.create must be an object.","Arguments should be either `create('prop1', options)` or `create(['prop1', 'prop2'], options)`"].join(`
266`)),Object.keys(g).length!==0&&console.error(`MUI: Unrecognized argument(s) [${Object.keys(g).join(",")}].`)}return(Array.isArray(l)?l:[l]).map(w=>`${w} ${typeof d=="string"?d:YR(d)} ${h} ${typeof m=="string"?m:YR(m)}`).join(",")}},t,{easing:r,duration:i})}const RH={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500},TH=["breakpoints","mixins","spacing","palette","transitions","typography","shape"];function Mw(t={},...r){const{mixins:i={},palette:o={},transitions:l={},typography:u={}}=t,d=Ln(t,TH);if(t.vars)throw new Error("MUI: `vars` is a private field used for CSS variables support.\nPlease use another name.");const h=fH(o),m=Rw(t);let g=$a(m,{mixins:H5(m.breakpoints,i),palette:h,shadows:bH.slice(),typography:yH(h,u),transitions:CH(l),zIndex:be({},RH)});g=$a(g,d),g=r.reduce((w,b)=>$a(w,b),g);{const w=["active","checked","completed","disabled","error","expanded","focused","focusVisible","required","selected"],b=(E,T)=>{let O;for(O in E){const R=E[O];if(w.indexOf(O)!==-1&&Object.keys(R).length>0){{const L=xc("",O);console.error([`MUI: The \`${T}\` component increases the CSS specificity of the \`${O}\` internal state.`,"You can not override it like this: ",JSON.stringify(E,null,2),"",`Instead, you need to use the '&.${L}' syntax:`,JSON.stringify({root:{[`&.${L}`]:R}},null,2),"","https://mui.com/r/state-classes-guide"].join(`
267`))}E[O]={}}}};Object.keys(g.components).forEach(E=>{const T=g.components[E].styleOverrides;T&&E.indexOf("Mui")===0&&b(T,E)})}return g.unstable_sxConfig=be({},Qd,d==null?void 0:d.unstable_sxConfig),g.unstable_sx=function(b){return Xd({sx:b,theme:this})},g}const qw=Mw();function a1(){const t=Tw(qw);return k.useDebugValue(t),t[pc]||t}var Jd={},sb={exports:{}},KR;function kH(){return KR||(KR=1,function(t){function r(i,o){if(i==null)return{};var l={};for(var u in i)if({}.hasOwnProperty.call(i,u)){if(o.indexOf(u)!==-1)continue;l[u]=i[u]}return l}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}(sb)),sb.exports}const jH=Lo(u$),DH=Lo(d$),OH=Lo(y$),PH=Lo(y5),AH=Lo(a5),LH=Lo(c5);var Rc=Xj;Object.defineProperty(Jd,"__esModule",{value:!0});var MH=Jd.default=KH,f9=Jd.shouldForwardProp=Bh;Jd.systemDefaultTheme=void 0;var oa=Rc(yj()),Ab=Rc(kH()),QR=HH(jH),qH=DH,IH=Rc(OH),NH=Rc(PH),BH=Rc(AH),UH=Rc(LH);const FH=["ownerState"],zH=["variants"],$H=["name","slot","skipVariantsResolver","skipSx","overridesResolver"];function i1(t){if(typeof WeakMap!="function")return null;var r=new WeakMap,i=new WeakMap;return(i1=function(o){return o?i:r})(t)}function HH(t,r){if(t&&t.__esModule)return t;if(t===null||typeof t!="object"&&typeof t!="function")return{default:t};var i=i1(r);if(i&&i.has(t))return i.get(t);var o={__proto__:null},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in t)if(u!=="default"&&Object.prototype.hasOwnProperty.call(t,u)){var d=l?Object.getOwnPropertyDescriptor(t,u):null;d&&(d.get||d.set)?Object.defineProperty(o,u,d):o[u]=t[u]}return o.default=t,i&&i.set(t,o),o}function GH(t){return Object.keys(t).length===0}function WH(t){return typeof t=="string"&&t.charCodeAt(0)>96}function Bh(t){return t!=="ownerState"&&t!=="theme"&&t!=="sx"&&t!=="as"}const VH=Jd.systemDefaultTheme=(0,BH.default)(),XR=t=>t&&t.charAt(0).toLowerCase()+t.slice(1);function Th({defaultTheme:t,theme:r,themeId:i}){return GH(r)?t:r[i]||r}function YH(t){return t?(r,i)=>i[t]:null}function Uh(t,r){let{ownerState:i}=r,o=(0,Ab.default)(r,FH);const l=typeof t=="function"?t((0,oa.default)({ownerState:i},o)):t;if(Array.isArray(l))return l.flatMap(u=>Uh(u,(0,oa.default)({ownerState:i},o)));
267if(l&&typeof l=="object"&&Array.isArray(l.variants)){const{variants:u=[]}=l;let h=(0,Ab.default)(l,zH);return u.forEach(m=>{let g=!0;typeof m.props=="function"?g=m.props((0,oa.default)({ownerState:i},o,i)):Object.keys(m.props).forEach(w=>{(i==null?void 0:i[w])!==m.props[w]&&o[w]!==m.props[w]&&(g=!1)}),g&&(Array.isArray(h)||(h=[h]),h.push(typeof m.style=="function"?m.style((0,oa.default)({ownerState:i},o,i)):m.style))}),h}return l}function KH(t={}){const{themeId:r,defaultTheme:i=VH,rootShouldForwardProp:o=Bh,slotShouldForwardProp:l=Bh}=t,u=d=>(0,UH.default)((0,oa.default)({},d,{theme:Th((0,oa.default)({},d,{defaultTheme:i,themeId:r}))}));return u.__mui_systemSx=!0,(d,h={})=>{(0,QR.internal_processStyles)(d,W=>W.filter(ae=>!(ae!=null&&ae.__mui_systemSx)));const{name:m,slot:g,skipVariantsResolver:w,skipSx:b,overridesResolver:E=YH(XR(g))}=h,T=(0,Ab.default)(h,$H),O=w!==void 0?w:g&&g!=="Root"&&g!=="root"||!1,R=b||!1;let L;m&&(L=`${m}-${XR(g||"Root")}`);let M=Bh;g==="Root"||g==="root"?M=o:g?M=l:WH(d)&&(M=void 0);const G=(0,QR.default)(d,(0,oa.default)({shouldForwardProp:M,label:L},T)),$=W=>typeof W=="function"&&W.__emotion_real!==W||(0,qH.isPlainObject)(W)?ae=>Uh(W,(0,oa.default)({},ae,{theme:Th({theme:ae.theme,defaultTheme:i,themeId:r})})):W,z=(W,...ae)=>{let Z=$(W);const ve=ae?ae.map($):[];m&&E&&ve.push(ke=>{const De=Th((0,oa.default)({},ke,{defaultTheme:i,themeId:r}));if(!De.components||!De.components[m]||!De.components[m].styleOverrides)return null;const N=De.components[m].styleOverrides,X={};
267return Object.entries(N).forEach(([ne,ce])=>{X[ne]=Uh(ce,(0,oa.default)({},ke,{theme:De}))}),E(ke,X)}),m&&!O&&ve.push(ke=>{var De;const N=Th((0,oa.default)({},ke,{defaultTheme:i,themeId:r})),X=N==null||(De=N.components)==null||(De=De[m])==null?void 0:De.variants;return Uh({variants:X},(0,oa.default)({},ke,{theme:N}))}),R||ve.push(u);const we=ve.length-ae.length;if(Array.isArray(W)&&we>0){const ke=new Array(we).fill("");Z=[...W,...ke],Z.raw=[...W.raw,...ke]}const je=G(Z,...ve);{let ke;m&&(ke=`${m}${(0,IH.default)(g||"")}`),ke===void 0&&(ke=`Styled(${(0,NH.default)(d)})`),je.displayName=ke}return d.muiName&&(je.muiName=d.muiName),je};return G.withConfig&&(z.withConfig=G.withConfig),z}}function QH(t){return t!=="ownerState"&&t!=="theme"&&t!=="sx"&&t!=="as"}const o1=t=>QH(t)&&t!=="classes",qo=MH({themeId:pc,defaultTheme:qw,rootShouldForwardProp:o1}),XH=["theme"];function s1(t){let{theme:r}=t,i=Ln(t,XH);const o=r[pc];return H.jsx(tm,be({},i,{themeId:o?pc:void 0,theme:o||r}))}s1.propTypes={children:C.node,theme:C.oneOfType([C.object,C.func]).isRequired};C.node,C.object.isRequired;function Tc(t){return $5(t)}function JH(t){return xc("MuiSvgIcon",t)}Ec("MuiSvgIcon",["root","colorPrimary","colorSecondary","colorAction","colorError","colorDisabled","fontSizeInherit","fontSizeSmall","fontSizeMedium","fontSizeLarge"]);const ZH=["children","className","color","component","fontSize","htmlColor","inheritViewBox","titleAccess","viewBox"],e3=t=>{const{color:r,fontSize:i,classes:o}=t,l={root:["root",r!=="inherit"&&`color${En(r)}`,`fontSize${En(i)}`]};return Om(l,JH,o)},t3=qo("svg",{name:"MuiSvgIcon",slot:"Root",overridesResolver:(t,r)=>{const{ownerState:i}=t;return[r.root,i.color!=="inherit"&&r[`color${En(i.color)}`],r[`fontSize${En(i.fontSize)}`]]}})(({theme:t,ownerState:r})=>{var i,o,l,u,d,h,m,g,w,b,E,T,O;return{userSelect:"none",width:"1em",height:"1em",display:"inline-block",fill:r.hasSvgAsChild?void 0:"currentColor",flexShrink:0,transition:(i=t.transitions)==null||(o=i.create)==null?void 0:o.call(i,"fill",{duration:(l=t.transitions)==null||(l=l.duration)==null?void 0:l.shorter}),fontSize:{inherit:"inherit",small:((u=t.typography)==null||(d=u.pxToRem)==null?void 0:d.call(u,20))||"1.25rem",medium:((h=t.typography)==null||(m=h.pxToRem)==null?void 0:m.call(h,24))||"1.5rem",large:((g=t.typography)==null||(w=g.pxToRem)==null?void 0:w.call(g,35))||"2.1875rem"}[r.fontSize],color:(b=(E=(t.vars||t).palette)==null||(E=E[r.color])==null?void 0:E.main)!=null?b:{action:(T=(t.vars||t).palette)==null||(T=T.action)==null?void 0:T.active,disabled:(O=(t.vars||t).palette)==null||(O=O.action)==null?void 0:O.disabled,inherit:void 0}[r.color]}}),rm=k.forwardRef(function(r,i){const o=Tc({props:r,name:"MuiSvgIcon"}),{children:l,className:u,color:d="inherit",component:h="svg",fontSize:m="medium",htmlColor:g,inheritViewBox:w=!1,titleAccess:b,viewBox:E="0 0 24 24"}=o,T=Ln(o,ZH),O=k.isValidElement(l)&&l.type==="svg",R=be({},o,{color:d,component:h,fontSize:m,instanceFontSize:r.fontSize,inheritViewBox:w,viewBox:E,hasSvgAsChild:O}),L={};w||(L.viewBox=E);const M=e3(R);return H.jsxs(t3,be({as:h,className:Sr(M.root,u),focusable:"false",color:g,"aria-hidden":b?void 0:!0,role:b?"img":void 0,ref:i},L,T,O&&l.props,{ownerState:R,children:[O?l.props.children:l,b?H.jsx("title",{children:b}):null]}))});rm.propTypes={children:C.node,classes:C.object,className:C.string,color:C.oneOfType([C.oneOf(["inherit","action","disabled","primary","secondary","error","info","success","warning"]),C.string]),component:C.elementType,fontSize:C.oneOfType([C.oneOf(["inherit","large","medium","small"]),C.string]),htmlColor:C.string,inheritViewBox:C.bool,shapeRendering:C.string,sx:C.oneOfType([C.arrayOf(C.oneOfType([C.func,C.object,C.bool])),C.func,C.object]),titleAccess:C.string,viewBox:C.string};rm.muiName="SvgIcon";function n3(t,r){function i(o,l){return H.jsx(rm,be({"data-testid":`${r}Icon`,ref:l},o,{children:t}))}return i.displayName=`${r}Icon`,i.muiName=rm.muiName,k.memo(k.forwardRef(i))}function Lb(t,r){return Lb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,o){return i.__proto__=o,i},Lb(t,r)}function l1(t,r){t.prototype=Object.create(r.prototype),t.prototype.constructor=t,Lb(t,r)}const JR={disabled:!1};var r3=C.oneOfType([C.number,C.shape({enter:C.number,exit:C.number,appear:C.number}).isRequired]),h9=C.oneOfType([C.string,C.shape({enter:C.string,exit:C.string,active:C.string}
267),C.shape({enter:C.string,enterDone:C.string,enterActive:C.string,exit:C.string,exitDone:C.string,exitActive:C.string})]);const am=Ua.createContext(null);var a3=function(r){return r.scrollTop},Td="unmounted",Cs="exited",Rs="entering",ec="entered",Mb="exiting",hi=function(t){l1(r,t);function r(o,l){var u;u=t.call(this,o,l)||this;var d=l,h=d&&!d.isMounting?o.enter:o.appear,m;return u.appearStatus=null,o.in?h?(m=Cs,u.appearStatus=Rs):m=ec:o.unmountOnExit||o.mountOnEnter?m=Td:m=Cs,u.state={status:m},u.nextCallback=null,u}r.getDerivedStateFromProps=function(l,u){var d=l.in;return d&&u.status===Td?{status:Cs}:null};var i=r.prototype;return i.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},i.componentDidUpdate=function(l){var u=null;if(l!==this.props){var d=this.state.status;this.props.in?d!==Rs&&d!==ec&&(u=Rs):(d===Rs||d===ec)&&(u=Mb)}this.updateStatus(!1,u)},i.componentWillUnmount=function(){this.cancelNextCallback()},i.getTimeouts=function(){var l=this.props.timeout,u,d,h;return u=d=h=l,l!=null&&typeof l!="number"&&(u=l.exit,d=l.enter,h=l.appear!==void 0?l.appear:d),{exit:u,enter:d,appear:h}},i.updateStatus=function(l,u){if(l===void 0&&(l=!1),u!==null)if(this.cancelNextCallback(),u===Rs){if(this.props.unmountOnExit||this.props.mountOnEnter){var d=this.props.nodeRef?this.props.nodeRef.current:vh.findDOMNode(this);d&&a3(d)}this.performEnter(l)}else this.performExit();else this.props.unmountOnExit&&this.state.status===Cs&&this.setState({status:Td})},i.performEnter=function(l){var u=this,d=this.props.enter,h=this.context?this.context.isMounting:l,m=this.props.nodeRef?[h]:[vh.findDOMNode(this),h],g=m[0],w=m[1],b=this.getTimeouts(),E=h?b.appear:b.enter;if(!l&&!d||JR.disabled){this.safeSetState({status:ec},function(){u.props.onEntered(g)});return}this.props.onEnter(g,w),this.safeSetState({status:Rs},function(){u.props.onEntering(g,w),u.onTransitionEnd(E,function(){u.safeSetState({status:ec},function(){u.props.onEntered(g,w)})})})},i.performExit=function(){var l=this,u=this.props.exit,d=this.getTimeouts(),h=this.props.nodeRef?void 0:vh.findDOMNode(this);if(!u||JR.disabled){this.safeSetState({status:Cs},function(){l.props.onExited(h)});return}this.props.onExit(h),this.safeSetState({status:Mb},function(){l.props.onExiting(h),l.onTransitionEnd(d.exit,function(){l.safeSetState({status:Cs},function(){l.props.onExited(h)})})})},i.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},i.safeSetState=function(l,u){u=this.setNextCallback(u),this.setState(l,u)},i.setNextCallback=function(l){var u=this,d=!0;return this.nextCallback=function(h){d&&(d=!1,u.nextCallback=null,l(h))},this.nextCallback.cancel=function(){d=!1},this.nextCallback},i.onTransitionEnd=function(l,u){this.setNextCallback(u);var d=this.props.nodeRef?this.props.nodeRef.current:vh.findDOMNode(this),h=l==null&&!this.props.addEndListener;if(!d||h){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var m=this.props.nodeRef?[this.nextCallback]:[d,this.nextCallback],g=m[0],w=m[1];this.props.addEndListener(g,w)}l!=null&&setTimeout(this.nextCallback,l)},i.render=function(){var l=this.state.status;if(l===Td)return null;var u=this.props,d=u.children;u.in,u.mountOnEnter,u.unmountOnExit,u.appear,u.enter,u.exit,u.timeout,u.addEndListener,u.onEnter,u.onEntering,u.onEntered,u.onExit,u.onExiting,u.onExited,u.nodeRef;var h=Ln(u,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return Ua.createElement(am.Provider,{value:null},typeof d=="function"?d(l,h):Ua.cloneElement(Ua.Children.only(d),h))},r}(Ua.Component);hi.contextType=am;hi.propTypes={nodeRef:C.shape({current:typeof Element>"u"?C.any:function(t,r,i,o,l,u){var d=t[r];return C.instanceOf(d&&"ownerDocument"in d?d.ownerDocument.defaultView.Element:Element)(t,r,i,o,l,u)}}),children:C.oneOfType([C.func.isRequired,C.element.isRequired]).isRequired,in:C.bool,mountOnEnter:C.bool,unmountOnExit:C.bool,appear:C.bool,enter:C.bool,exit:C.bool,timeout:function(r){var i=r3;r.addEndListener||(i=i.isRequired);for(var o=arguments.length,l=new Array(o>1?o-1:0),u=1;u<o;u++)l[u-1]=arguments[u];return i.apply(void 0,[r].concat(l))},addEndListener:C.func,onEnter:C.func,onEntering:C.func,onEntered:C.func,onExit:C.func,onExiting:C.func,onExited:C.func};function Xl(){}hi.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter
267:!0,exit:!0,onEnter:Xl,onEntering:Xl,onEntered:Xl,onExit:Xl,onExiting:Xl,onExited:Xl};hi.UNMOUNTED=Td;hi.EXITED=Cs;hi.ENTERING=Rs;hi.ENTERED=ec;hi.EXITING=Mb;function i3(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function Iw(t,r){var i=function(u){return r&&k.isValidElement(u)?r(u):u},o=Object.create(null);return t&&k.Children.map(t,function(l){return l}).forEach(function(l){o[l.key]=i(l)}),o}function o3(t,r){t=t||{},r=r||{};function i(w){return w in r?r[w]:t[w]}var o=Object.create(null),l=[];for(var u in t)u in r?l.length&&(o[u]=l,l=[]):l.push(u);var d,h={};for(var m in r){if(o[m])for(d=0;d<o[m].length;d++){var g=o[m][d];h[o[m][d]]=i(g)}h[m]=i(m)}for(d=0;d<l.length;d++)h[l[d]]=i(l[d]);return h}function ks(t,r,i){return i[r]!=null?i[r]:t.props[r]}function s3(t,r){return Iw(t.children,function(i){return k.cloneElement(i,{onExited:r.bind(null,i),in:!0,appear:ks(i,"appear",t),enter:ks(i,"enter",t),exit:ks(i,"exit",t)})})}function l3(t,r,i){var o=Iw(t.children),l=o3(r,o);return Object.keys(l).forEach(function(u){var d=l[u];if(k.isValidElement(d)){var h=u in r,m=u in o,g=r[u],w=k.isValidElement(g)&&!g.props.in;m&&(!h||w)?l[u]=k.cloneElement(d,{onExited:i.bind(null,d),in:!0,exit:ks(d,"exit",t),enter:ks(d,"enter",t)}):!m&&h&&!w?l[u]=k.cloneElement(d,{in:!1}):m&&h&&k.isValidElement(g)&&(l[u]=k.cloneElement(d,{onExited:i.bind(null,d),in:g.props.in,exit:ks(d,"exit",t),enter:ks(d,"enter",t)}))}}),l}var c3=Object.values||function(t){return Object.keys(t).map(function(r){return t[r]})},u3={component:"div",childFactory:function(r){return r}},Nw=function(t){l1(r,t);function r(o,l){var u;u=t.call(this,o,l)||this;var d=u.handleExited.bind(i3(u));return u.state={contextValue:{isMounting:!0},handleExited:d,firstRender:!0},u}var i=r.prototype;return i.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},i.componentWillUnmount=function(){this.mounted=!1},r.getDerivedStateFromProps=function(l,u){var d=u.children,h=u.handleExited,m=u.firstRender;return{children:m?s3(l,h):l3(l,d,h),firstRender:!1}},i.handleExited=function(l,u){var d=Iw(this.props.children);l.key in d||(l.props.onExited&&l.props.onExited(u),this.mounted&&this.setState(function(h){var m=be({},h.children);return delete m[l.key],{children:m}}))},i.render=function(){var l=this.props,u=l.component,d=l.childFactory,h=Ln(l,["component","childFactory"]),m=this.state.contextValue,g=c3(this.state.children).map(d);return delete h.appear,delete h.enter,delete h.exit,u===null?Ua.createElement(am.Provider,{value:m},g):Ua.createElement(am.Provider,{value:m},Ua.createElement(u,h,g))},r}(Ua.Component);Nw.propTypes={component:C.any,children:C.node,appear:C.bool,enter:C.bool,exit:C.bool,childFactory:C.func};Nw.defaultProps=u3;const c1=t=>t.scrollTop;function im(t,r){var i,o;const{timeout:l,easing:u,style:d={}}=t;return{duration:(i=d.transitionDuration)!=null?i:typeof l=="number"?l:l[r.mode]||0,easing:(o=d.transitionTimingFunction)!=null?o:typeof u=="object"?u[r.mode]:u,delay:d.transitionDelay}}function u1(t){const{className:r,classes:i,pulsate:o=!1,rippleX:l,rippleY:u,rippleSize:d,in:h,onExited:m,timeout:g}=t,[w,b]=k.useState(!1),E=Sr(r,i.ripple,i.rippleVisible,o&&i.ripplePulsate),T={width:d,height:d,top:-(d/2)+u,left:-(d/2)+l},O=Sr(i.child,w&&i.childLeaving,o&&i.childPulsate);return!h&&!w&&b(!0),k.useEffect(()=>{if(!h&&m!=null){const R=setTimeout(m,g);return()=>{clearTimeout(R)}}},[m,h,g]),H.jsx("span",{className:E,style:T,children:H.jsx("span",{className:O})})}u1.propTypes={classes:C.object.isRequired,className:C.string,in:C.bool,onExited:C.func,pulsate:C.bool,rippleSize:C.number,rippleX:C.number,rippleY:C.number,timeout:C.number.isRequired};const sa=Ec("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),d3=["center","classes","className"];let Pm=t=>t,ZR,eT,tT,nT;const qb=550,p3=80,f3=bm(ZR||(ZR=Pm`
268  0% {
269    transform: scale(0);
270    opacity: 0.1;
271  }
272
273  100% {
274    transform: scale(1);
275    opacity: 0.3;
276  }
277`)),h3=bm(eT||(eT=Pm`
278  0% {
279    opacity: 1;
280  }
281
282  100% {
283    opacity: 0;
284  }
285`)),m3=bm(tT||(tT=Pm`
286  0% {
287    transform: scale(1);
288  }
289
290  50% {
291    transform: scale(0.92);
292  }
293
294  100% {
295    transform: scale(1);
296  }
297`)),y3=qo("span",{name:"MuiTouchRipple",slot:"Root"})({overflow:"hidden",pointerEvents:"none",position:"absolute",zIndex:0,top:0,right:0,bottom:0,left:0,borderRadius:"inherit"}),g3=qo(u1,{name:"MuiTouchRipple",slot:"Ripple"})(nT||(nT=Pm`
298  opacity: 0;
299  position: absolute;
300
301  &.${0} {
302    opacity: 0.3;
303    transform: scale(1);
304    animation-name: ${0};
305    animation-duration: ${0}ms;
306    animation-timing-function: ${0};
307  }
308
309  &.${0} {
310    animation-duration: ${0}ms;
311  }
312
313  & .${0} {
314    opacity: 1;
315    display: block;
316    width: 100%;
317    height: 100%;
318    border-radius: 50%;
319    background-color: currentColor;
320  }
321
322  & .${0} {
323    opacity: 0;
324    animation-name: ${0};
325    animation-duration: ${0}ms;
326    animation-timing-function: ${0};
327  }
328
329  & .${0} {
330    position: absolute;
331    /* @noflip */
332    left: 0px;
333    top: 0;
334    animation-name: ${0};
335    animation-duration: 2500ms;
336    animation-timing-function: ${0};
337    animation-iteration-count: infinite;
338    animation-delay: 200ms;
339  }
340`),sa.rippleVisible,f3,qb,({theme:t})=>t.transitions.easing.easeInOut,sa.ripplePulsate,({theme:t})=>t.transitions.duration.shorter,sa.child,sa.childLeaving,h3,qb,({theme:t})=>t.transitions.easing.easeInOut,sa.childPulsate,m3,({theme:t})=>t.transitions.easing.easeInOut),d1=k.forwardRef(function(r,i){const o=Tc({props:r,name:"MuiTouchRipple"}),{center:l=!1,classes:u={},className:d}=o,h=Ln(o,d3),[m,g]=k.useState([]),w=k.useRef(0),b=k.useRef(null);k.useEffect(()=>{b.current&&(b.current(),b.current=null)},[m]);const E=k.useRef(!1),T=$j(),O=k.useRef(null),R=k.useRef(null),L=k.useCallback(z=>{const{pulsate:W,rippleX:ae,rippleY:Z,rippleSize:ve,cb:we}=z;g(je=>[...je,H.jsx(g3,{classes:{ripple:Sr(u.ripple,sa.ripple),rippleVisible:Sr(u.rippleVisible,sa.rippleVisible),ripplePulsate:Sr(u.ripplePulsate,sa.ripplePulsate),
340child:Sr(u.child,sa.child),childLeaving:Sr(u.childLeaving,sa.childLeaving),childPulsate:Sr(u.childPulsate,sa.childPulsate)},timeout:qb,pulsate:W,rippleX:ae,rippleY:Z,rippleSize:ve},w.current)]),w.current+=1,b.current=we},[u]),M=k.useCallback((z={},W={},ae=()=>{})=>{const{pulsate:Z=!1,center:ve=l||W.pulsate,fakeElement:we=!1}=W;if((z==null?void 0:z.type)==="mousedown"&&E.current){E.current=!1;return}(z==null?void 0:z.type)==="touchstart"&&(E.current=!0);const je=we?null:R.current,ke=je?je.getBoundingClientRect():{width:0,height:0,left:0,top:0};let De,N,X;if(ve||z===void 0||z.clientX===0&&z.clientY===0||!z.clientX&&!z.touches)De=Math.round(ke.width/2),N=Math.round(ke.height/2);else{const{clientX:ne,clientY:ce}=z.touches&&z.touches.length>0?z.touches[0]:z;De=Math.round(ne-ke.left),N=Math.round(ce-ke.top)}if(ve)X=Math.sqrt((2*ke.width**2+ke.height**2)/3),X%2===0&&(X+=1);else{const ne=Math.max(Math.abs((je?je.clientWidth:0)-De),De)*2+2,ce=Math.max(Math.abs((je?je.clientHeight:0)-N),N)*2+2;X=Math.sqrt(ne**2+ce**2)}z!=null&&z.touches?O.current===null&&(O.current=()=>{L({pulsate:Z,rippleX:De,rippleY:N,rippleSize:X,cb:ae})},T.start(p3,()=>{O.current&&(O.current(),O.current=null)})):L({pulsate:Z,rippleX:De,rippleY:N,rippleSize:X,cb:ae})},[l,L,T]),G=k.useCallback(()=>{M({},{pulsate:!0})},[M]),$=k.useCallback((z,W)=>{if(T.clear(),(z==null?void 0:z.type)==="touchend"&&O.current){O.current(),O.current=null,T.start(0,()=>{$(z,W)});return}O.current=null,g(ae=>ae.length>0?ae.slice(1):ae),b.current=W},[T]);return k.useImperativeHandle(i,()=>({pulsate:G,start:M,stop:$}),[G,M,$]),H.jsx(y3,be({className:Sr(sa.root,u.root,d),ref:R},h,{children:H.jsx(Nw,{component:null,exit:!0,children:m})}))});d1.propTypes={center:C.bool,classes:C.object,className:C.string};function _3(t){return xc("MuiButtonBase",t)}const v3=Ec("MuiButtonBase",["root","disabled","focusVisible"]),b3=["action","centerRipple","children","className","component","disabled","disableRipple","disableTouchRipple","focusRipple","focusVisibleClassName","LinkComponent","onBlur","onClick","onContextMenu","onDragLeave","onFocus","onFocusVisible","onKeyDown","onKeyUp","onMouseDown","onMouseLeave","onMouseUp","onTouchEnd","onTouchMove","onTouchStart","tabIndex","TouchRippleProps","touchRippleRef","type"],w3=t=>{const{disabled:r,focusVisible:i,focusVisibleClassName:o,classes:l}=t,d=Om({root:["root",r&&"disabled",i&&"focusVisible"]},_3,l);return i&&o&&(d.root+=` ${o}`),d},S3=qo("button",{name:"MuiButtonBase",slot:"Root",overridesResolver:(t,r)=>r.root})({display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",boxSizing:"border-box",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none",textDecoration:"none",color:"inherit","&::-moz-focus-inner":{borderStyle:"none"},[`&.${v3.disabled}`]:{pointerEvents:"none",cursor:"default"},"@media print":{colorAdjust:"exact"}}),p1=k.forwardRef(function(r,i){const o=Tc({props:r,name:"MuiButtonBase"}),{action:l,centerRipple:u=!1,children:d,className:h,component:m="button",disabled:g=!1,disableRipple:w=!1,disableTouchRipple:b=!1,focusRipple:E=!1,LinkComponent:T="a",onBlur:O,onClick:R,onContextMenu:L,onDragLeave:M,onFocus:G,onFocusVisible:$,onKeyDown:z,onKeyUp:W,onMouseDown:ae,onMouseLeave:Z,onMouseUp:ve,onTouchEnd:we,onTouchMove:je,onTouchStart:ke,tabIndex:De=0,TouchRippleProps:N,touchRippleRef:X,type:ne}=o,ce=Ln(o,b3),oe=k.useRef(null),_e=k.useRef(null),Re=Zh(_e,X),{isFocusVisibleRef:Ce,onFocus:Ue,onBlur:Me,ref:Fe}=I5(),[Ze,pt]=k.useState(!1);g&&Ze&&pt(!1),k.useImperativeHandle(l,()=>({focusVisible:()=>{pt(!0),oe.current.focus()}}),[]);const[Ft,en]=k.useState(!1);k.useEffect(()=>{en(!0)},[]);const pn=Ft&&!w&&!g;k.useEffect(()=>{Ze&&E&&!w&&Ft&&_e.current.pulsate()},[w,E,Ze,Ft]);function _t(Ne,ue,Oe=b){return Ch(Ye=>(ue&&ue(Ye),!Oe&&_e.current&&_e.current[Ne](Ye),!0))}const tn=_t("start",ae),nn=_t("stop",L),Q=_t("stop",M),jt=_t("stop",ve),Pt=_t("stop",Ne=>{Ze&&Ne.preventDefault(),Z&&Z(Ne)}),Mt=_t("start",ke),yn=_t("stop",we),Cr=_t("stop",je),ma=_t("stop",Ne=>{Me(Ne),Ce.current===!1&&pt(!1),O&&O(Ne)},!1),Mr=Ch(Ne=>{oe.current||(oe.current=Ne.currentTarget),Ue(Ne),Ce.current===!0&&(pt(!0),$&&$(Ne)),G&&G(Ne)}),Mn=()=>{const Ne=oe.current;return m&&m!=="button"&&!(Ne.tagName==="A"&&Ne.href)},gn=k.useRef(!1),Cn=Ch(Ne=>{E&&!gn.current&&Ze&&_e.current&&Ne.key===" "&&(gn.current=!0,_e.current.stop(Ne,()=>{_e.current.start(Ne)})),Ne.target===Ne.currentTarget&&Mn()&&Ne.key===" "&&Ne.preventDefault(),z&&z(Ne),Ne.target===Ne.currentTarget&&Mn()&&Ne.key==="Enter"&&!g&&(Ne.preventDefault(),R&&R(Ne))}),zn=Ch(Ne=>{E&&Ne.key===" "&&_e.current&&Ze&&!Ne.defaultPrevented&&(gn.current=!1,_e.current.stop(Ne,()=>{_e.current.pulsate(Ne)})),W&&W(Ne),R&&Ne.target===Ne.currentTarget&&Mn()&&Ne.key===" "&&!Ne.defaultPrevented&&R(Ne)});let pr=m;pr==="button"&&(ce.href||ce.to)&&(pr=T);
340const zt={};pr==="button"?(zt.type=ne===void 0?"button":ne,zt.disabled=g):(!ce.href&&!ce.to&&(zt.role="button"),g&&(zt["aria-disabled"]=g));const $n=Zh(i,Fe,oe);k.useEffect(()=>{pn&&!_e.current&&console.error(["MUI: The `component` prop provided to ButtonBase is invalid.","Please make sure the children prop is rendered in this custom component."].join(`
341`))},[pn]);const Rr=be({},o,{centerRipple:u,component:m,disabled:g,disableRipple:w,disableTouchRipple:b,focusRipple:E,tabIndex:De,focusVisible:Ze}),Ga=w3(Rr);return H.jsxs(S3,be({as:pr,className:Sr(Ga.root,h),ownerState:Rr,onBlur:ma,onClick:R,onContextMenu:nn,onFocus:Mr,onKeyDown:Cn,onKeyUp:zn,onMouseDown:tn,onMouseLeave:Pt,onMouseUp:jt,onDragLeave:Q,onTouchEnd:yn,onTouchMove:Cr,onTouchStart:Mt,ref:$n,tabIndex:g?-1:De,type:ne},zt,ce,{children:[d,pn?H.jsx(d1,be({ref:Re,center:u},N)):null]}))});p1.propTypes={action:C5,centerRipple:C.bool,children:C.node,classes:C.object,className:C.string,component:x5,disabled:C.bool,disableRipple:C.bool,disableTouchRipple:C.bool,focusRipple:C.bool,focusVisibleClassName:C.string,href:C.any,LinkComponent:C.elementType,onBlur:C.func,onClick:C.func,onContextMenu:C.func,onDragLeave:C.func,onFocus:C.func,onFocusVisible:C.func,onKeyDown:C.func,onKeyUp:C.func,onMouseDown:C.func,onMouseLeave:C.func,onMouseUp:C.func,onTouchEnd:C.func,onTouchMove:C.func,onTouchStart:C.func,sx:C.oneOfType([C.arrayOf(C.oneOfType([C.func,C.object,C.bool])),C.func,C.object]),tabIndex:C.number,TouchRippleProps:C.object,touchRippleRef:C.oneOfType([C.func,C.shape({current:C.shape({pulsate:C.func.isRequired,start:C.func.isRequired,stop:C.func.isRequired})})]),type:C.oneOfType([C.oneOf(["button","reset","submit"]),C.string])};function x3(t){return xc("MuiTypography",t)}Ec("MuiTypography",["root","h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","inherit","button","caption","overline","alignLeft","alignRight","alignCenter","alignJustify","noWrap","gutterBottom","paragraph"]);const E3=["align","className","component","gutterBottom","noWrap","paragraph","variant","variantMapping"],C3=t=>{const{align:r,gutterBottom:i,noWrap:o,paragraph:l,variant:u,classes:d}=t,h={root:["root",u,t.align!=="inherit"&&`align${En(r)}`,i&&"gutterBottom",o&&"noWrap",l&&"paragraph"]};return Om(h,x3,d)},R3=qo("span",{name:"MuiTypography",slot:"Root",overridesResolver:(t,r)=>{const{ownerState:i}=t;return[r.root,i.variant&&r[i.variant],i.align!=="inherit"&&r[`align${En(i.align)}`],i.noWrap&&r.noWrap,i.gutterBottom&&r.gutterBottom,i.paragraph&&r.paragraph]}})(({theme:t,ownerState:r})=>be({margin:0},r.variant==="inherit"&&{font:"inherit"},r.variant!=="inherit"&&t.typography[r.variant],r.align!=="inherit"&&{textAlign:r.align},r.noWrap&&{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},r.gutterBottom&&{marginBottom:"0.35em"},r.paragraph&&{marginBottom:16})),rT={h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",h6:"h6",subtitle1:"h6",subtitle2:"h6",body1:"p",body2:"p",inherit:"p"},T3={primary:"primary.main",textPrimary:"text.primary",secondary:"secondary.main",textSecondary:"text.secondary",error:"error.main"},k3=t=>T3[t]||t,Fh=k.forwardRef(function(r,i){const o=Tc({props:r,name:"MuiTypography"}),l=k3(o.color),u=kw(be({},o,{color:l})),{align:d="inherit",className:h,component:m,gutterBottom:g=!1,noWrap:w=!1,paragraph:b=!1,variant:E="body1",variantMapping:T=rT}=u,O=Ln(u,E3),R=be({},u,{align:d,color:l,className:h,component:m,gutterBottom:g,noWrap:w,paragraph:b,variant:E,variantMapping:T}),L=m||(b?"p":T[E]||rT[E])||"span",M=C3(R);return H.jsx(R3,be({as:L,ref:i,ownerState:R,className:Sr(M.root,h)},O))});Fh.propTypes={align:C.oneOf(["center","inherit","justify","left","right"]),children:C.node,classes:C.object,className:C.string,component:C.elementType,gutterBottom:C.bool,noWrap:C.bool,paragraph:C.bool,sx:C.oneOfType([C.arrayOf(C.oneOfType([C.func,C.object,C.bool])),C.func,C.object]),variant:C.oneOfType([C.oneOf(["body1","body2","button","caption","h1","h2","h3","h4","h5","h6","inherit","overline","subtitle1","subtitle2"]),C.string]),variantMapping:C.object};function f1(t){return H.jsx(Mj,be({},t,{defaultTheme:qw,themeId:pc}))}f1.propTypes={styles:C.oneOfType([C.array,C.func,C.number,C.object,C.string,C.bool])};const j3=["addEndListener","appear","children","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","style","timeout","TransitionComponent"],D3={entering:{opacity:1},entered:{opacity:1}},h1=k.forwardRef(function(r,i){const o=a1(),l={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},{addEndListener:u,appear:d=!0,children:h,easing:m,in:g,onEnter:w,onEntered:b,onEntering:E,onExit:T,onExited:O,onExiting:R,style:L,timeout:M=l,TransitionComponent:G=hi}=r,$=Ln(r,j3),z=k.useRef(null),W=Zh(z,Hj(h),i),ae=X=>ne=>{if(X){const ce=z.current;ne===void 0?X(ce):X(ce,ne)}},Z=ae(E),ve=ae((X,ne)=>{c1(X);const ce=im({style:L,timeout:M,easing:m},{mode:"enter"});X.style.webkitTransition=o.transitions.create("opacity",ce),X.style.transition=o.transitions.create("opacity",ce),w&&w(X,ne)}
341),we=ae(b),je=ae(R),ke=ae(X=>{const ne=im({style:L,timeout:M,easing:m},{mode:"exit"});X.style.webkitTransition=o.transitions.create("opacity",ne),X.style.transition=o.transitions.create("opacity",ne),T&&T(X)}),De=ae(O),N=X=>{u&&u(z.current,X)};return H.jsx(G,be({appear:d,in:g,nodeRef:z,onEnter:ve,onEntered:we,onEntering:Z,onExit:ke,onExited:De,onExiting:je,addEndListener:N,timeout:M},$,{children:(X,ne)=>k.cloneElement(h,be({style:be({opacity:0,visibility:X==="exited"&&!g?"hidden":void 0},D3[X],L,h.props.style),ref:W},ne))}))});h1.propTypes={addEndListener:C.func,appear:C.bool,children:Dw.isRequired,easing:C.oneOfType([C.shape({enter:C.string,exit:C.string}),C.string]),in:C.bool,onEnter:C.func,onEntered:C.func,onEntering:C.func,onExit:C.func,onExited:C.func,onExiting:C.func,style:C.object,timeout:C.oneOfType([C.number,C.shape({appear:C.number,enter:C.number,exit:C.number})])};const O3=Ec("MuiBox",["root"]),P3=Mw(),Od=p5({themeId:pc,defaultTheme:P3,defaultClassName:O3.root,generateClassName:qj.generate});Od.propTypes={children:C.node,component:C.elementType,sx:C.oneOfType([C.arrayOf(C.oneOfType([C.func,C.object,C.bool])),C.func,C.object])};function A3(t){return xc("MuiButton",t)}const kh=Ec("MuiButton",["root","text","textInherit","textPrimary","textSecondary","textSuccess","textError","textInfo","textWarning","outlined","outlinedInherit","outlinedPrimary","outlinedSecondary","outlinedSuccess","outlinedError","outlinedInfo","outlinedWarning","contained","containedInherit","containedPrimary","containedSecondary","containedSuccess","containedError","containedInfo","containedWarning","disableElevation","focusVisible","disabled","colorInherit","colorPrimary","colorSecondary","colorSuccess","colorError","colorInfo","colorWarning","textSizeSmall","textSizeMedium","textSizeLarge","outlinedSizeSmall","outlinedSizeMedium","outlinedSizeLarge","containedSizeSmall","containedSizeMedium","containedSizeLarge","sizeMedium","sizeSmall","sizeLarge","fullWidth","startIcon","endIcon","icon","iconSizeSmall","iconSizeMedium","iconSizeLarge"]),m1=k.createContext({});m1.displayName="ButtonGroupContext";const y1=k.createContext(void 0);y1.displayName="ButtonGroupButtonContext";const L3=["children","color","component","className","disabled","disableElevation","disableFocusRipple","endIcon","focusVisibleClassName","fullWidth","size","startIcon","type","variant"],M3=t=>{const{color:r,disableElevation:i,fullWidth:o,size:l,variant:u,classes:d}=t,h={root:["root",u,`${u}${En(r)}`,`size${En(l)}`,`${u}Size${En(l)}`,`color${En(r)}`,i&&"disableElevation",o&&"fullWidth"],label:["label"],startIcon:["icon","startIcon",`iconSize${En(l)}`],endIcon:["icon","endIcon",`iconSize${En(l)}`]},m=Om(h,A3,d);return be({},d,m)},g1=t=>be({},t.size==="small"&&{"& > *:nth-of-type(1)":{fontSize:18}},t.size==="medium"&&{"& > *:nth-of-type(1)":{fontSize:20}},t.size==="large"&&{"& > *:nth-of-type(1)":{fontSize:22}}),q3=qo(p1,{shouldForwardProp:t=>o1(t)||t==="classes",name:"MuiButton",slot:"Root",overridesResolver:(t,r)=>{const{ownerState:i}=t;return[r.root,r[i.variant],r[`${i.variant}${En(i.color)}`],r[`size${En(i.size)}`],r[`${i.variant}Size${En(i.size)}`],i.color==="inherit"&&r.colorInherit,i.disableElevation&&r.disableElevation,i.fullWidth&&r.fullWidth]}})(({theme:t,ownerState:r})=>{var i,o;const l=t.palette.mode==="light"?t.palette.grey[300]:t.palette.grey[800],u=t.palette.mode==="light"?t.palette.grey.A100:t.palette.grey[700];return be({},t.typography.button,{minWidth:64,padding:"6px 16px",borderRadius:(t.vars||t).shape.borderRadius,transition:t.transitions.create(["background-color","box-shadow","border-color","color"],{duration:t.transitions.duration.short}),"&:hover":be({textDecoration:"none",backgroundColor:t.vars?`rgba(${t.vars.palette.text.primaryChannel} / ${t.vars.palette.action.hoverOpacity})`:Rh(t.palette.text.primary,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},r.variant==="text"&&r.color!=="inherit"&&{backgroundColor:t.vars?`rgba(${t.vars.palette[r.color].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:Rh(t.palette[r.color].main,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},r.variant==="outlined"&&r.color!=="inherit"&&{border:`1px solid ${(t.vars||t).palette[r.color].main}
341`,backgroundColor:t.vars?`rgba(${t.vars.palette[r.color].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:Rh(t.palette[r.color].main,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},r.variant==="contained"&&{backgroundColor:t.vars?t.vars.palette.Button.inheritContainedHoverBg:u,boxShadow:(t.vars||t).shadows[4],"@media (hover: none)":{boxShadow:(t.vars||t).shadows[2],backgroundColor:(t.vars||t).palette.grey[300]}},r.variant==="contained"&&r.color!=="inherit"&&{backgroundColor:(t.vars||t).palette[r.color].dark,"@media (hover: none)":{backgroundColor:(t.vars||t).palette[r.color].main}}),"&:active":be({},r.variant==="contained"&&{boxShadow:(t.vars||t).shadows[8]}),[`&.${kh.focusVisible}`]:be({},r.variant==="contained"&&{boxShadow:(t.vars||t).shadows[6]}),[`&.${kh.disabled}`]:be({color:(t.vars||t).palette.action.disabled},r.variant==="outlined"&&{border:`1px solid ${(t.vars||t).palette.action.disabledBackground}`},r.variant==="contained"&&{color:(t.vars||t).palette.action.disabled,boxShadow:(t.vars||t).shadows[0],backgroundColor:(t.vars||t).palette.action.disabledBackground})},r.variant==="text"&&{padding:"6px 8px"},r.variant==="text"&&r.color!=="inherit"&&{color:(t.vars||t).palette[r.color].main},r.variant==="outlined"&&{padding:"5px 15px",border:"1px solid currentColor"},r.variant==="outlined"&&r.color!=="inherit"&&{color:(t.vars||t).palette[r.color].main,border:t.vars?`1px solid rgba(${t.vars.palette[r.color].mainChannel} / 0.5)`:`1px solid ${Rh(t.palette[r.color].main,.5)}`},r.variant==="contained"&&{color:t.vars?t.vars.palette.text.primary:(i=(o=t.palette).getContrastText)==null?void 0:i.call(o,t.palette.grey[300]),backgroundColor:t.vars?t.vars.palette.Button.inheritContainedBg:l,boxShadow:(t.vars||t).shadows[2]},r.variant==="contained"&&r.color!=="inherit"&&{color:(t.vars||t).palette[r.color].contrastText,backgroundColor:(t.vars||t).palette[r.color].main},r.color==="inherit"&&{color:"inherit",borderColor:"currentColor"},r.size==="small"&&r.variant==="text"&&{padding:"4px 5px",fontSize:t.typography.pxToRem(13)},r.size==="large"&&r.variant==="text"&&{padding:"8px 11px",fontSize:t.typography.pxToRem(15)},r.size==="small"&&r.variant==="outlined"&&{padding:"3px 9px",fontSize:t.typography.pxToRem(13)},r.size==="large"&&r.variant==="outlined"&&{padding:"7px 21px",fontSize:t.typography.pxToRem(15)},r.size==="small"&&r.variant==="contained"&&{padding:"4px 10px",fontSize:t.typography.pxToRem(13)},r.size==="large"&&r.variant==="contained"&&{padding:"8px 22px",fontSize:t.typography.pxToRem(15)},r.fullWidth&&{width:"100%"})},({ownerState:t})=>t.disableElevation&&{boxShadow:"none","&:hover":{boxShadow:"none"},[`&.${kh.focusVisible}`]:{boxShadow:"none"},"&:active":{boxShadow:"none"},[`&.${kh.disabled}`]:{boxShadow:"none"}}),I3=qo("span",{name:"MuiButton",slot:"StartIcon",overridesResolver:(t,r)=>{const{ownerState:i}=t;return[r.startIcon,r[`iconSize${En(i.size)}`]]}})(({ownerState:t})=>be({display:"inherit",marginRight:8,marginLeft:-4},t.size==="small"&&{marginLeft:-2},g1(t))),N3=qo("span",{name:"MuiButton",slot:"EndIcon",overridesResolver:(t,r)=>{const{ownerState:i}=t;return[r.endIcon,r[`iconSize${En(i.size)}`]]}})(({ownerState:t})=>be({display:"inherit",marginRight:-4,marginLeft:8},t.size==="small"&&{marginRight:-2},g1(t))),_1=k.forwardRef(function(r,i){const o=k.useContext(m1),l=k.useContext(y1),u=Jh(o,r),d=Tc({props:u,name:"MuiButton"}),{children:h,color:m="primary",component:g="button",className:w,disabled:b=!1,disableElevation:E=!1,disableFocusRipple:T=!1,endIcon:O,focusVisibleClassName:R,fullWidth:L=!1,size:M="medium",startIcon:G,type:$,variant:z="text"}=d,W=Ln(d,L3),ae=be({},d,{color:m,component:g,disabled:b,disableElevation:E,disableFocusRipple:T,fullWidth:L,size:M,type:$,variant:z}),Z=M3(ae),ve=G&&H.jsx(I3,{className:Z.startIcon,ownerState:ae,children:G}),we=O&&H.jsx(N3,{className:Z.endIcon,ownerState:ae,children:O}),je=l||"";return H.jsxs(q3,be({ownerState:ae,className:Sr(o.className,Z.root,w,je),component:g,disabled:b,focusRipple:!T,focusVisibleClassName:Sr(Z.focusVisible,R),ref:i,type:$},W,{classes:Z,children:[ve,h,we]}))});_1.propTypes={children:C.node,classes:C.object,className:C.string,color:C.oneOfType([C.oneOf(["inherit","primary","secondary","success","error","info","warning"]),C.string]),component:C.elementType,disabled:C.bool,disableElevation:C.bool,disableFocusRipple:C.bool,disableRipple:C.bool,endIcon:C.node,focusVisibleClassName:C.string,fullWidth:C.bool,href:C.string,
341size:C.oneOfType([C.oneOf(["small","medium","large"]),C.string]),startIcon:C.node,sx:C.oneOfType([C.arrayOf(C.oneOfType([C.func,C.object,C.bool])),C.func,C.object]),type:C.oneOfType([C.oneOf(["button","reset","submit"]),C.string]),variant:C.oneOfType([C.oneOf(["contained","outlined","text"]),C.string])};const B3=(t,r)=>be({WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",boxSizing:"border-box",WebkitTextSizeAdjust:"100%"},r&&!t.vars&&{colorScheme:t.palette.mode}),U3=t=>be({color:(t.vars||t).palette.text.primary},t.typography.body1,{backgroundColor:(t.vars||t).palette.background.default,"@media print":{backgroundColor:(t.vars||t).palette.common.white}}),F3=(t,r=!1)=>{var i;const o={};r&&t.colorSchemes&&Object.entries(t.colorSchemes).forEach(([d,h])=>{var m;o[t.getColorSchemeSelector(d).replace(/\s*&/,"")]={colorScheme:(m=h.palette)==null?void 0:m.mode}});let l=be({html:B3(t,r),"*, *::before, *::after":{boxSizing:"inherit"},"strong, b":{fontWeight:t.typography.fontWeightBold},body:be({margin:0},U3(t),{"&::backdrop":{backgroundColor:(t.vars||t).palette.background.default}})},o);const u=(i=t.components)==null||(i=i.MuiCssBaseline)==null?void 0:i.styleOverrides;return u&&(l=[l,u]),l};function v1(t){const r=Tc({props:t,name:"MuiCssBaseline"}),{children:i,enableColorScheme:o=!1}=r;return H.jsxs(k.Fragment,{children:[H.jsx(f1,{styles:l=>F3(l,o)}),i]})}v1.propTypes={children:C.node,enableColorScheme:C.bool};const z3=["addEndListener","appear","children","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","style","timeout","TransitionComponent"];function Ib(t){return`scale(${t}, ${t**2})`}const $3={entering:{opacity:1,transform:Ib(1)},entered:{opacity:1,transform:"none"}},lb=typeof navigator<"u"&&/^((?!chrome|android).)*(safari|mobile)/i.test(navigator.userAgent)&&/(os |version\/)15(.|_)4/i.test(navigator.userAgent),om=k.forwardRef(function(r,i){const{addEndListener:o,appear:l=!0,children:u,easing:d,in:h,onEnter:m,onEntered:g,onEntering:w,onExit:b,onExited:E,onExiting:T,style:O,timeout:R="auto",TransitionComponent:L=hi}=r,M=Ln(r,z3),G=$j(),$=k.useRef(),z=a1(),W=k.useRef(null),ae=Zh(W,Hj(u),i),Z=ne=>ce=>{if(ne){const oe=W.current;ce===void 0?ne(oe):ne(oe,ce)}},ve=Z(w),we=Z((ne,ce)=>{c1(ne);const{duration:oe,delay:_e,easing:Re}=im({style:O,timeout:R,easing:d},{mode:"enter"});let Ce;R==="auto"?(Ce=z.transitions.getAutoHeightDuration(ne.clientHeight),$.current=Ce):Ce=oe,ne.style.transition=[z.transitions.create("opacity",{duration:Ce,delay:_e}),z.transitions.create("transform",{duration:lb?Ce:Ce*.666,delay:_e,easing:Re})].join(","),m&&m(ne,ce)}),je=Z(g),ke=Z(T),De=Z(ne=>{const{duration:ce,delay:oe,easing:_e}=im({style:O,timeout:R,easing:d},{mode:"exit"});let Re;R==="auto"?(Re=z.transitions.getAutoHeightDuration(ne.clientHeight),$.current=Re):Re=ce,ne.style.transition=[z.transitions.create("opacity",{duration:Re,delay:oe}),z.transitions.create("transform",{duration:lb?Re:Re*.666,delay:lb?oe:oe||Re*.333,easing:_e})].join(","),ne.style.opacity=0,ne.style.transform=Ib(.75),b&&b(ne)}),N=Z(E),X=ne=>{R==="auto"&&G.start($.current||0,ne),o&&o(W.current,ne)};return H.jsx(L,be({appear:l,in:h,nodeRef:W,onEnter:we,onEntered:je,onEntering:ve,onExit:De,onExited:N,onExiting:ke,addEndListener:X,timeout:R==="auto"?null:R},M,{children:(ne,ce)=>k.cloneElement(u,be({style:be({opacity:0,transform:Ib(.75),visibility:ne==="exited"&&!h?"hidden":void 0},$3[ne],O,u.props.style),ref:ae},ce))}))});om.propTypes={addEndListener:C.func,appear:C.bool,children:Dw.isRequired,easing:C.oneOfType([C.shape({enter:C.string,exit:C.string}),C.string]),in:C.bool,onEnter:C.func,onEntered:C.func,onEntering:C.func,onExit:C.func,onExited:C.func,onExiting:C.func,style:C.object,timeout:C.oneOfType([C.oneOf(["auto"]),C.number,C.shape({appear:C.number,enter:C.number,exit:C.number})])};om.muiSupportAuto=!0;const te={font:{display:'"Space Grotesk", system-ui, sans-serif',body:'"Inter", system-ui, sans-serif',mono:'"JetBrains Mono", ui-monospace, monospace'},bg:"#0c0b0e",bgMain:"#0f0d12",surface:"#15121a",surface2:"#1a1622",ink:"#f4f1ea",inkDim:"#b7b2a8",inkFaint:"#7f7a72",inkEdit:"#faf7ef",gold:"#d4a853",goldDim:"rgba(212, 168, 83, 0.55)",goldWash:"rgba(212, 168, 83, 0.07)",onGold:"#1a1408",line:"rgba(244, 241, 234, 0.09)",line2:"rgba(244, 241, 234, 0.16)",fieldBorder:"rgba(244, 241, 234, 0.12)",fieldBorderHover:"rgba(212, 168, 83, 0.45)",fieldFocusRing:"rgba(212, 168, 83, 0.14)",shadowCard:"0 1px 0 rgba(0, 0, 0, 0.2)"},H3={movie:"#e8c46a",genre_movies:"#b48fe8",short_movie:"#f0975e",one_scene:"#f4b183",advertisement:"#5fd0c2",tv:"#7fa8e8",tv_60:"#7fa8e8",tv_season:"#89b4f0",micro_drama:"#e887b0",single_scene:"#8fd0a8"};function m9(t){const r=t&&H3[t]||te.gold,i=parseInt(r.slice(1,3),16),o=parseInt(r.slice(3,5),16),l=parseInt(r.slice(5,7),16);return{accent:r,dim:`rgba(${i}, ${o}, ${l}, 0.45)`,wash:`rgba(${i}, ${o}, ${l}, 0.05)`}}const G3={"--bb-font-display":te.font.display,"--bb-font-body":te.font.body,"--bb-font-mono":te.font.mono,"--bb-bg":te.bg,"--bb-bg-main":te.bgMain,"--bb-surface":te.surface,"--bb-surface-2":te.surface2,"--bb-ink":te.ink,"--bb-ink-dim":te.inkDim,"--bb-ink-faint":te.inkFaint,"--bb-ink-edit":te.inkEdit,"--bb-gold":te.gold,"--bb-gold-dim":te.goldDim,"--bb-gold-wash":te.goldWash,"--bb-on-gold":te.onGold,"--bb-line":te.line,"--bb-line-2":te.line2,"--bb-field-border":te.fieldBorder,"--bb-field-border-hover":te.fieldBorderHover,"--bb-field-focus-ring":te.fieldFocusRing,"--bb-shadow-card":te.shadowCard};function W3(t=document.documentElement){for(const[r,i]of Object.entries(G3))t.style.setProperty(r,i)}const V3=Mw({palette:{mode:"dark",primary:{main:te.gold,light:"#e8c97a",dark:"#b8913f",contrastText:te.onGold}
341,secondary:{main:te.inkDim,light:te.ink,dark:te.inkFaint,contrastText:te.bg},background:{default:te.bgMain,paper:te.surface},text:{primary:te.ink,secondary:te.inkDim},divider:te.line,grey:{50:"#0c0b0e",100:"#15121a",200:"#1a1622",300:"#2a2530",400:"#4a453e",500:"#7f7a72",600:"#b7b2a8",700:"#d6d1c6",800:"#f4f1ea",900:"#faf7ef"}},typography:{fontFamily:te.font.body,h1:{fontFamily:te.font.display,fontSize:"3rem",fontWeight:600,lineHeight:1.1,letterSpacing:"-0.02em"},h2:{fontFamily:te.font.display,fontSize:"2.4rem",fontWeight:600,lineHeight:1.15,letterSpacing:"-0.02em"},h3:{fontFamily:te.font.display,fontSize:"2rem",fontWeight:600,lineHeight:1.2,letterSpacing:"-0.02em"},h4:{fontFamily:te.font.display,fontSize:"1.6rem",fontWeight:600,lineHeight:1.25,letterSpacing:"-0.02em"},h5:{fontFamily:te.font.display,fontSize:"1.3rem",fontWeight:600,lineHeight:1.3,letterSpacing:"-0.01em"},h6:{fontFamily:te.font.display,fontSize:"1.1rem",fontWeight:600,lineHeight:1.35,letterSpacing:"-0.01em"},body1:{fontSize:"1rem",lineHeight:1.65,fontWeight:400},body2:{fontSize:"0.9rem",lineHeight:1.6,fontWeight:400}},cardTypes:{BEAT:{primary:"#0b0b0c",light:"#0c0c0e",input:"#0b0b0c"},CHARACTER:{primary:"#0b0b0c",light:"#0c0c0e",input:"#0b0b0c"},SCENE:{primary:"#0b0b0c",light:"#0c0c0e",input:"#0b0b0c"}},customTokens:{shadows:{xs:"0 1px 2px rgba(0, 0, 0, 0.05)",sm:"0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.06)",md:"0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px rgba(0, 0, 0, 0.1), 0 10px 10px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px rgba(0, 0, 0, 0.25)"},animations:{fast:"0.1s ease-in-out",normal:"0.2s ease-in-out",slow:"0.3s ease-in-out"},zIndex:{dropdown:1e3,sticky:1020,fixed:1030,modal:1040,popover:1050,tooltip:1060},borderRadius:{xs:"2px",sm:"4px",md:"8px",lg:"12px",xl:"16px","2xl":"24px",full:"9999px"},gradients:{primary:"linear-gradient(135deg, #d4a853 0%, #e8c97a 100%)",secondary:"linear-gradient(135deg, #b8913f 0%, #d4a853 100%)",accent:"linear-gradient(135deg, #d4a853 0%, #b8913f 100%)",glass:"linear-gradient(135deg, rgba(244, 241, 234, 0.08) 0%, rgba(244, 241, 234, 0.04) 100%)"},landing:{light:{background:"#FAF8F5",backgroundAlt:"#F2EDE8",textPrimary:"#1a1a2e",textSecondary:"#4a4a5a",cardBackground:"#ffffff",cardBorder:"rgba(0, 0, 0, 0.08)"},accent:{gold:"#D4A853",goldLight:"#E8C97A",goldGlow:"rgba(212, 168, 83, 0.3)"},typography:{displaySize:{xs:"3rem",md:"5rem"},pullQuoteSize:"1.5rem"}},wizard:{title:{color:te.ink,fontFamily:te.font.display,fontWeight:600,letterSpacing:"-0.02em",gradient:"linear-gradient(135deg, #d4a853 0%, #e8c97a 50%, #d4a853 100%)"},background:{color:"background.default",texture:"none",gradient:"linear-gradient(180deg, rgba(212, 168, 83, 0.03) 0%, rgba(212, 168, 83, 0.03) 100%)"},instructionBox:{backgroundColor:te.goldWash,border:`1px solid ${te.goldDim}`,textColor:te.inkDim},stageList:{background:te.surface,selectedBackground:te.goldWash,borderColor:te.gold,textColor:te.ink,textGradient:"linear-gradient(135deg, #d4a853 0%, #e8c97a 50%, #d4a853 100%)"}},sidebar:{background:te.bg,hoverBackground:te.goldWash,activeBackground:te.goldWash,activeBackgroundHover:"rgba(212, 168, 83, 0.12)",divider:te.line,text:te.inkDim,mutedText:te.inkFaint,headerText:te.inkFaint,accent:te.gold,accentSoft:te.goldDim,activeText:te.gold,controlBackground:"transparent",controlBorder:te.line2}},components:{MuiButton:{styleOverrides:{root:({theme:t})=>({borderRadius:999,textTransform:"none",fontFamily:te.font.body,fontWeight:500,fontSize:"0.9rem",padding:"8px 18px",boxShadow:"none",transition:`all ${t.customTokens.animations.normal}`,"&:hover":{boxShadow:"none"},"&:focus-visible":{boxShadow:`0 0 0 3px ${te.fieldFocusRing}`}}),contained:()=>({background:te.gold,color:te.onGold,fontWeight:600,"&:hover":{background:te.gold,boxShadow:"0 8px 22px rgba(212, 168, 83, 0.22)",transform:"translateY(-1px)"}}),outlined:()=>({borderWidth:"1px",borderColor:te.line2,color:te.ink,"&:hover":{borderWidth:"1px",borderColor:te.inkDim,backgroundColor:te.goldWash}}),text:()=>({color:te.inkDim,"&:hover":{color:te.ink,backgroundColor:te.goldWash}})}},MuiIconButton:{styleOverrides:{root:({theme:t})=>({borderRadius:8,color:te.inkFaint,transition:`all ${t.customTokens.animations.normal}`,"&:hover":{backgroundColor:te.goldWash,color:te.ink},"&:focus-visible":{boxShadow:`0 0 0 3px ${te.fieldFocusRing}`}})}},MuiCard:{styleOverrides:{root:({theme:t})=>({borderRadius:0,boxShadow:te.shadowCard,border:`1px solid ${te.line}`,backgroundColor:te.surface,backgroundImage:"none",transition:`border-color ${t.customTokens.animations.normal}`,"&:hover":{borderColor:te.line2}})}},MuiPaper:{styleOverrides:{root:{backgroundImage:"none"}}},MuiChip:{styleOverrides:{root:({theme:t})=>({borderRadius:999,fontFamily:te.font.mono,fontWeight:400,fontSize:"0.66rem",letterSpacing:"0.08em",textTransform:"uppercase",padding:"3px 4px",height:"auto",backgroundColor:"transparent",border:`1px solid ${te.line2}`,color:te.inkFaint,transition:`all ${t.customTokens.animations.normal}`,"&:hover":{borderColor:te.goldDim,backgroundColor:te.goldWash}})}},MuiTooltip:{styleOverrides:{tooltip:({theme:t})=>({backgroundColor:te.surface2,color:te.ink,fontSize:"0.72rem",fontWeight:500,padding:"4px 9px",borderRadius:7,border:`1px solid ${te.line2}`,boxShadow:t.customTokens.shadows.lg,maxWidth:240,transition:`opacity ${t.customTokens.animations.fast}`}),arrow:{color:te.surface2,"&::before":{border:`1px solid ${te.line2}`}}}},MuiOutlinedInput:{styleOverrides:{root:({theme:t})=>({fontFamily:te.font.mono,fontSize:"0.86rem",lineHeight:1.7,color:te.inkEdit,transition:`border-color ${t.customTokens.animations.normal}, box-shadow ${t.customTokens.animations.normal}`,"& .MuiOutlinedInput-notchedOutline":{borderColor:te.fieldBorder},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:te.fieldBorderHover},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:te.gold,borderWidth:1},"&.Mui-focused":{boxShadow:`0 0 0 3px ${te.fieldFocusRing}`}})}},MuiInputBase:{styleOverrides:{input:{fontFamily:te.font.mono,color:te.inkEdit,"&::placeholder":{fontFamily:te.font.body,color:te.inkFaint,opacity:1}}}},MuiInputLabel:{styleOverrides:{root:{fontFamily:te.font.mono,fontSize:"0.78rem",letterSpacing:"0.08em",textTransform:"uppercase",color:te.inkFaint,"&.Mui-focused":{color:te.gold}}}},MuiAlert:{styleOverrides:{root:{borderRadius:0,border:`1px solid ${te.goldDim}`,backgroundColor:te.goldWash,color:te.inkDim,"& .MuiAlert-icon":{color:te.gold}},standardError:{border:"1px solid rgba(239, 68, 68, 0.5)",backgroundColor:"rgba(239, 68, 68, 0.08)","& .MuiAlert-icon":{color:"#f87171"}},filledError:{border:"1px solid rgba(239, 68, 68, 0.5)",backgroundColor:"rgba(239, 68, 68, 0.15)",color:te.ink,"& .MuiAlert-icon":{color:"#f87171"}},outlinedError:{border:"1px solid rgba(239, 68, 68, 0.5)",backgroundColor:"transparent","& .MuiAlert-icon":{color:"#f87171"}}}},MuiDialog:{defaultProps:{TransitionComponent:h1,TransitionProps:{timeout:200}},styleOverrides:{paper:{borderRadius:4,border:`1px solid ${te.line2}`,backgroundColor:te.surface,backgroundImage:"none"}}},MuiMenu:{defaultProps:{TransitionComponent:om,TransitionProps:{timeout:180}},styleOverrides:{paper:{borderRadius:6,border:`1px solid ${te.line2}`,backgroundColor:te.surface2,backgroundImage:"none"}}},MuiPopover:{defaultProps:{TransitionComponent:om,TransitionProps:{timeout:180}}},MuiDivider:{styleOverrides:{root:{borderColor:te.line}}}},spacing:8,shape:{borderRadius:4}}),Y3=n3(H.jsx("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"Refresh");class K3{constructor(){gh(this,"isDebugMode");this.isDebugMode=this.determineDebugMode(),typeof window<"u"&&(window.logger=this)}determineDebugMode(){if(typeof window>"u")return!1;
341if(new URLSearchParams(window.location.search).get("debug")==="true")return console.log("Logger: Debug mode force-enabled via URL parameter."),!0;try{const l=localStorage.getItem("debug");if(l!==null)return l==="true"}catch{}const i=!1;let o=!1;try{const l=window.location.hostname||"";o=/\.vercel\.app$/.test(l)}catch{}return i||o}log(...r){this.isDebugMode&&console.log(...r)}error(...r){console.error(...r)}warn(...r){this.isDebugMode&&console.warn(...r)}info(...r){this.isDebugMode&&console.info(...r)}enableDebug(){this.isDebugMode=!0;try{localStorage.setItem("debug","true")}catch{}console.log("Logger: Debug mode enabled. Refresh the page for full effect.")}disableDebug(){this.isDebugMode=!1;try{localStorage.setItem("debug","false")}catch{}console.log("Logger: Debug mode disabled. Refresh the page for full effect.")}}const aT=new K3,Ke=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,ct=globalThis,As="10.57.0";function Am(){return Lm(ct),ct}function Lm(t){const r=t.__SENTRY__=t.__SENTRY__||{};return r.version=r.version||As,r[As]=r[As]||{}}function kc(t,r,i=ct){const o=i.__SENTRY__=i.__SENTRY__||{},l=o[As]=o[As]||{};return l[t]||(l[t]=r())}const Q3=["debug","info","warn","error","log","assert","trace"],X3="Sentry Logger ",sm={};function jc(t){if(!("console"in ct))return t();const r=ct.console,i={},o=Object.keys(sm);o.forEach(l=>{const u=sm[l];i[l]=r[l],r[l]=u});try{return t()}finally{o.forEach(l=>{r[l]=i[l]})}}function J3(){Uw().enabled=!0}function Z3(){Uw().enabled=!1}function b1(){return Uw().enabled}function e4(...t){Bw("log",...t)}function t4(...t){Bw("warn",...t)}function n4(...t){Bw("error",...t)}function Bw(t,...r){Ke&&b1()&&jc(()=>{ct.console[t](`${X3}[${t}]:`,...r)})}function Uw(){return Ke?kc("loggerSettings",()=>({enabled:!1})):{enabled:!1}}const Be={enable:J3,disable:Z3,isEnabled:b1,log:e4,warn:t4,error:n4},w1=50,Ms="?",iT=/\(error: (.*)\)/,oT=/captureMessage|captureException/;function S1(...t){const r=t.sort((i,o)=>i[0]-o[0]).map(i=>i[1]);return(i,o=0,l=0)=>{const u=[],d=i.split(`
342`);for(let h=o;h<d.length;h++){let m=d[h];m.length>1024&&(m=m.slice(0,1024));const g=iT.test(m)?m.replace(iT,"$1"):m;if(!g.includes("Error: ")){for(const w of r){const b=w(g);if(b){u.push(b);break}}if(u.length>=w1+l)break}}return a4(u.slice(l))}}function r4(t){return Array.isArray(t)?S1(...t):t}function a4(t){if(!t.length)return[];const r=Array.from(t);return/sentryWrapped/.test(jh(r).function||"")&&r.pop(),r.reverse(),oT.test(jh(r).function||"")&&(r.pop(),oT.test(jh(r).function||"")&&r.pop()),r.slice(0,w1).map(i=>({...i,filename:i.filename||jh(r).filename,function:i.function||Ms}))}function jh(t){return t[t.length-1]||{}}const cb="<anonymous>";function Po(t){try{return!t||typeof t!="function"?cb:t.name||cb}catch{return cb}}function sT(t){const r=t.exception;if(r){const i=[];try{return r.values.forEach(o=>{o.stacktrace.frames&&i.push(...o.stacktrace.frames)}),i}catch{return}}}const kd={},lT={};function Is(t,r){return kd[t]=kd[t]||[],kd[t].push(r),()=>{const i=kd[t];if(i){const o=i.indexOf(r);o!==-1&&i.splice(o,1)}}}function Ns(t,r){if(!lT[t]){lT[t]=!0;try{r()}catch(i){Ke&&Be.error(`Error while instrumenting ${t}`,i)}}}function Ha(t,r){const i=t&&kd[t];if(i)for(const o of i)try{o(r)}catch(l){Ke&&Be.error(`Error while triggering instrumentation handler.
343Type: ${t}
344Name: ${Po(o)}
345Error:`,l)}}let ub=null;function i4(t){const r="error";Is(r,t),Ns(r,o4)}function o4(){ub=ct.onerror,ct.onerror=function(t,r,i,o,l){return Ha("error",{column:o,error:l,line:i,msg:t,url:r}),ub?ub.apply(this,arguments):!1},ct.onerror.__SENTRY_INSTRUMENTED__=!0}let db=null;function s4(t){const r="unhandledrejection";Is(r,t),Ns(r,l4)}function l4(){db=ct.onunhandledrejection,ct.onunhandledrejection=function(t){return Ha("unhandledrejection",t),db?db.apply(this,arguments):!0},ct.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}const x1=Object.prototype.toString;function Mm(t){switch(x1.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return hc(t,Error)}}function Dc(t,r){return x1.call(t)===`[object ${r}]`}function E1(t){return Dc(t,"ErrorEvent")}function cT(t){return Dc(t,"DOMError")}function c4(t){return Dc(t,"DOMException")}function zi(t){return Dc(t,"String")}function Fw(t){return typeof t=="object"&&t!==null&&"__sentry_template_str
345ing__"in t&&"__sentry_template_values__"in t}function Zd(t){return t===null||Fw(t)||typeof t!="object"&&typeof t!="function"}function Ud(t){return Dc(t,"Object")}function qm(t){return typeof Event<"u"&&hc(t,Event)}function u4(t){return Dc(t,"RegExp")}function ep(t){return!!(t!=null&&t.then&&typeof t.then=="function")}function hc(t,r){try{return t instanceof r}catch{return!1}}function C1(t){return typeof Request<"u"&&hc(t,Request)}function Vr(t,r,i){if(!(r in t))return;const o=t[r];if(typeof o!="function")return;const l=i(o);typeof l=="function"&&R1(l,o);try{t[r]=l}catch{Ke&&Be.log(`Failed to replace method "${r}" in object`,t)}}function Ao(t,r,i){try{Object.defineProperty(t,r,{value:i,writable:!0,configurable:!0})}catch{Ke&&Be.log(`Failed to add non-enumerable property "${String(r)}" to object`,t)}}function R1(t,r){try{const i=r.prototype||{};t.prototype=r.prototype=i,Ao(t,"__sentry_original__",r)}catch{}}function zw(t){return t.__sentry_original__}function T1(t){if(Mm(t))return{message:t.message,name:t.name,stack:t.stack,...uT(t)};if(qm(t)){const{type:r,target:i,currentTarget:o,detail:l}=t;return{type:r,target:i,currentTarget:o,...l?{detail:l}:{},...uT(t)}}return t}function uT(t){return typeof t=="object"&&t!==null?Object.fromEntries(Object.entries(t)):{}}function d4(t){const r=Object.keys(T1(t));return r.sort(),r[0]?r.join(", "):"[object has no keys]"}let Jl;function Im(t){if(Jl!==void 0)return Jl?Jl(t):t();const r=Symbol.for("__SENTRY_SAFE_RANDOM_ID_WRAPPER__"),i=ct;return r in i&&typeof i[r]=="function"?(Jl=i[r],Jl(t)):(Jl=null,t())}function lm(){return Im(()=>Math.random())}function Oc(){return Im(()=>Date.now())}const p4=Symbol.for("sentry.skipNormalization"),f4=Symbol.for("sentry.overrideNormalizationDepth");function h4(t){return!!t[p4]}function m4(t){const r=t[f4];return typeof r=="number"?r:void 0}let Nb;function k1(t){Nb=t}
345function Ui(t,r=100,i=1/0){try{return Bb("",t,r,i)}catch(o){return{ERROR:`**non-serializable** (${o})`}}}function j1(t,r=3,i=100*1024){const o=Ui(t,r);return _4(o)>i?j1(t,r-1,i):o}function Bb(t,r,i=1/0,o=1/0,l=v4()){const[u,d]=l;if(r==null||["boolean","string"].includes(typeof r)||typeof r=="number"&&Number.isFinite(r))return r;const h=D1(t,r);if(!h.startsWith("[object "))return h;if(h4(r))return r;const m=m4(r),g=m!==void 0?m:i;if(g===0)return h.replace("object ","");if(u(r))return"[Circular ~]";const w=r;if(w&&typeof w.toJSON=="function")try{const O=w.toJSON();return Bb("",O,g-1,o,l)}catch{}const b=Array.isArray(r)?[]:{};let E=0;const T=T1(r);for(const O in T){if(!Object.prototype.hasOwnProperty.call(T,O))continue;if(E>=o){b[O]="[MaxProperties ~]";break}const R=T[O];b[O]=Bb(O,R,g-1,o,l),E++}return d(r),b}function D1(t,r){try{if(Nb){const o=Nb(r);if(o)return o}return typeof global<"u"&&r===global?"[Global]":typeof r=="number"&&!Number.isFinite(r)?`[${r}]`:typeof r=="function"?`[Function: ${Po(r)}]`:typeof r=="symbol"?`[${String(r)}]`:typeof r=="bigint"?`[BigInt: ${String(r)}]`:`[object ${y4(r)}]`}catch(i){return`**non-serializable** (${i})`}}function y4(t){const r=Object.getPrototypeOf(t);return r!=null&&r.constructor?r.constructor.name:"null prototype"}function g4(t){return~-encodeURI(t).split(/%..|./).length}function _4(t){return g4(JSON.stringify(t))}function v4(){const t=new WeakSet;function r(o){return t.has(o)?!0:(t.add(o),!1)}function i(o){t.delete(o)}return[r,i]}function Ub(t,r=0){return typeof t!="string"||r===0||t.length<=r?t:`${t.slice(0,r)}...`}function dT(t,r){if(!Array.isArray(t))return"";const i=[];for(let o=0;o<t.length;o++){const l=t[o];Zd(l)?i.push(String(l)):l instanceof Error?i.push(l.message?`${l.name}: ${l.message}`:l.name):i.push(D1(void 0,l))}return i.join(r)}function Pd(t,r,i=!1){return zi(t)?u4(r)?r.test(t):zi(r)?i?t===r:t.includes(r):typeof r=="function"?r(t):!1:!1}function tp(t,r=[],i=!1){for(const o of r)if(Pd(t,o,i))return!0;return!1}function b4(){const t=ct;return t.crypto||t.msCrypto}let pb;function w4(){return lm()*16}function ua(t=b4()){try{if(t!=null&&t.randomUUID)return Im(()=>t.randomUUID()).replace(/-/g,"")}catch{}return pb||(pb="10000000100040008000"+1e11),pb.replace(/[018]/g,r=>(r^(w4()&15)>>r/4).toString(16))}function O1(t){var r,i;return(i=(r=t.exception)==null?void 0:r.values)==null?void 0:i[0]}function Ts(t){const{message:r,event_id:i}=t;if(r)return r;const o=O1(t);return o?o.type&&o.value?`${o.type}: ${o.value}`:o.type||o.value||i||"<unknown>":i||"<unknown>"}function Fb(t,r,i){const o=t.exception=t.exception||{},l=o.values=o.values||[],u=l[0]=l[0]||{};u.value||(u.value=r||""),u.type||(u.type="Error")}function Ls(t,r){const i=O1(t);if(!i)return;const o={type:"generic",handled:!0},l=i.mechanism;if(i.mechanism={...o,...l,...r},r&&"data"in r){const u={...l==null?void 0:l.data,...r.data};i.mechanism.data=u}}function pT(t){if(S4(t))return!0;try{Ao(t,"__sentry_captured__",!0)}catch{}return!1}function S4(t){try{return t.__sentry_captured__}catch{}}const P1=1e3;function np(){return Oc()/P1}function x4(){const{performance:t}=ct;if(!(t!=null&&t.now)||!t.timeOrigin)return np;const r=t.timeOrigin;return()=>(r+Im(()=>t.now()))/P1}let fT;function $i(){return(fT??(fT=x4()))()}function E4(t){const r=$i(),i={sid:ua(),init:!0,timestamp:r,started:r,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>R4(i)};return mc(i,t),i}function mc(t,r={}){if(r.user&&(!t.ipAddress&&r.user.ip_address&&(t.ipAddress=r.user.ip_address),!t.did&&!r.did&&(t.did=r.user.id||r.user.email||r.user.username)),t.timestamp=r.timestamp||$i(),r.abnormal_mechanism&&(t.abnormal_mechanism=r.abnormal_mechanism),r.ignoreDuration&&(t.ignoreDuration=r.ignoreDuration),r.sid&&(t.sid=r.sid.length===32?r.sid:ua()),r.init!==void 0&&(t.init=r.init),!t.did&&r.did&&(t.did=`${r.did}`),typeof r.started=="number"&&(t.started=r.started),t.ignoreDuration)t.duration=void 0;else if(typeof r.duration=="number")t.duration=r.duration;else{const i=t.timestamp-t.started;t.duration=i>=0?i:0}r.release&&(t.release=r.release),r.environment&&(t.environment=r.environment),!t.ipAddress&&r.ipAddress&&(t.ipAddress=r.ipAddress),!t.userAgent&&r.userAgent&&(t.userAgent=r.userAgent),t
345ypeof r.errors=="number"&&(t.errors=r.errors),r.status&&(t.status=r.status)}function C4(t,r){let i={};t.status==="ok"&&(i={status:"exited"}),mc(t,i)}function R4(t){return{sid:`${t.sid}`,init:t.init,started:new Date(t.started*1e3).toISOString(),timestamp:new Date(t.timestamp*1e3).toISOString(),status:t.status,errors:t.errors,did:typeof t.did=="number"||typeof t.did=="string"?`${t.did}`:void 0,duration:t.duration,abnormal_mechanism:t.abnormal_mechanism,attrs:{release:t.release,environment:t.environment,ip_address:t.ipAddress,user_agent:t.userAgent}}}function rp(t,r,i=2){if(!r||typeof r!="object"||i<=0)return r;if(t&&Object.keys(r).length===0)return t;const o={...t};for(const l in r)Object.prototype.hasOwnProperty.call(r,l)&&(o[l]=rp(o[l],r[l],i-1));return o}function hT(){return ua()}function A1(){return ua().substring(16)}function T4(t){try{const r=ct.WeakRef;if(typeof r=="function")return new r(t)}catch{}return t}function L1(t){if(t){if(typeof t=="object"&&"deref"in t&&typeof t.deref=="function")try{return t.deref()}catch{return}return t}}const zb="_sentrySpan";function mT(t,r){r?Ao(t,zb,T4(r)):delete t[zb]}function yT(t){return L1(t[zb])}const k4=100;class fi{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._attributes={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:hT(),sampleRand:lm()}}clone(){const r=new fi;return r._breadcrumbs=[...this._breadcrumbs],r._tags={...this._tags},r._attributes={...this._attributes},r._extra={...this._extra},r._contexts={...this._contexts},this._contexts.flags&&(r._contexts.flags={values:[...this._contexts.flags.values]}),r._user=this._user,r._level=this._level,r._session=this._session,r._transactionName=this._transactionName,r._fingerprint=this._fingerprint,r._eventProcessors=[...this._eventProcessors],r._attachments=[...this._attachments],r._sdkProcessingMetadata={...this._sdkProcessingMetadata},r._propagationContext={...this._propagationContext},r._client=this._client,r._lastEventId=this._lastEventId,r._conversationId=this._conversationId,mT(r,yT(this)),r}setClient(r){this._client=r}setLastEventId(r){this._lastEventId=r}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(r){this._scopeListeners.push(r)}addEventProcessor(r){return this._eventProcessors.push(r),this}setUser(r){return this._user=r||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session&&mc(this._session,{user:r}),this._notifyScopeListeners(),this}getUser(){return this._user}setConversationId(r){return this._conversationId=r||void 0,this._notifyScopeListeners(),this}setTags(r){return this._tags={...this._tags,...r},this._notifyScopeListeners(),this}setTag(r,i){return this.setTags({[r]:i})}setAttributes(r){return this._attributes={...this._attributes,...r},this._notifyScopeListeners(),this}setAttribute(r,i){return this.setAttributes({[r]:i})}removeAttribute(r){return r in this._attributes&&(delete this._attributes[r],this._notifyScopeListeners()),this}setExtras(r){return this._extra={...this._extra,...r},this._notifyScopeListeners(),this}setExtra(r,i){return this._extra={...this._extra,[r]:i},this._notifyScopeListeners(),this}setFingerprint(r){return this._fingerprint=r,this._notifyScopeListeners(),this}setLevel(r){return this._level=r,this._notifyScopeListeners(),this}setTransactionName(r){return this._transactionName=r,this._notifyScopeListeners(),this}setContext(r,i){return i===null?delete this._contexts[r]:this._contexts[r]=i,this._notifyScopeListeners(),this}setSession(r){return r?this._session=r:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(r){if(!r)return this;const i=typeof r=="function"?r(this):r,o=i instanceof fi?i.getScopeData():Ud(i)?r:void 0,{tags:l,attributes:u,extra:d,user:h,contexts:m,level:g,fingerprint:w=[],propagationContext:b,conversationId:E}=o||{};return this._tags={...this._tags,...l},this._attributes={...this._attributes,...u},this._extra={...this._extra,...d},this._contexts={...this._contexts,...m},h&&Object.keys(h).length&&(this._user=h),g&&(this._level=g),w.length&&(this._fingerprint=w),b&&(this._propagationContext=b),E&&(this._conversationId=E),this}clear(){return this._breadcrumbs=[],this._tags={},this._attributes={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,this._conversationId=void 0,mT(this,void 0),this._attachments=[],this.setPropagationContext({traceId:hT(),sampleRand:lm()}),this._notifyScopeListeners(),this}addBreadcrumb(r,i){var u;const o=typeof i=="number"?i:k4;if(o<=0)return this;const l={timestamp:np(),...r,message:r.message?Ub(r.message,2048):r.message};return this._breadcrumbs.push(l),this._breadcrumbs.length>o&&(this._breadcrumbs=this._breadcrumbs.slice(-o),(u=this._client)==null||u.recordDroppedEvent("buffer_overflow","log_item")),this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(r){return this._attachments.push(r),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,attributes:this._attributes,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:yT(this),conversationId:this._conversationId}}setSDKProcessingMetadata(r){return this._sdkProcessingMetadata=rp(this._sdkProcessingMetadata,r,2),this}setPropagationContext(r){return this._propagationContext=r,this}getPropagationContext(){return this._propagationContext}captureException(r,i){const o=(i==null?void 0:i.event_id)||ua();if(!this._client)return Ke&&Be.warn("No client configured on scope - will not capture exception!"),o;const l=new Error("Sentry syntheticException");return this._client.captureException(r,{originalException:r,syntheticException:l,...i,event_id:o},this),o}captureMessage(r,i,o){const l=(o==null?void 0:o.event_id)||ua();if(!this._client)return Ke&&Be.warn("No client configured on scope - will not capture message!"),l;const u=(o==null?void 0:o.syntheticException)??new Error(r);return this._client.captureMessage(r,i,{originalException:r,syntheticException:u,...o,event_id:l},this),l}
345captureEvent(r,i){const o=r.event_id||(i==null?void 0:i.event_id)||ua();return this._client?(this._client.captureEvent(r,{...i,event_id:o},this),o):(Ke&&Be.warn("No client configured on scope - will not capture event!"),o)}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(r=>{r(this)}),this._notifyingListeners=!1)}}function j4(){return kc("defaultCurrentScope",()=>new fi)}function D4(){return kc("defaultIsolationScope",()=>new fi)}const gT=t=>t instanceof Promise&&!t[M1],M1=Symbol("chained PromiseLike"),O4=(t,r,i)=>{const o=t.then(l=>(r(l),l),l=>{throw i(l),l});return gT(o)&&gT(t)?o:P4(t,o)},P4=(t,r)=>{if(!r)return t;let i=!1;for(const o in t){if(o in r)continue;i=!0;const l=t[o];typeof l=="function"?Object.defineProperty(r,o,{value:(...u)=>l.apply(t,u),enumerable:!0,configurable:!0,writable:!0}):r[o]=l}return i&&Object.assign(r,{[M1]:!0}),r};class A4{constructor(r,i){let o;r?o=r:o=new fi;let l;i?l=i:l=new fi,this._stack=[{scope:o}],this._isolationScope=l}withScope(r){const i=this._pushScope();let o;try{o=r(i)}catch(l){throw this._popScope(),l}return ep(o)?O4(o,()=>this._popScope(),()=>this._popScope()):(this._popScope(),o)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){const r=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:r}),r}_popScope(){return this._stack.length<=1?!1:!!this._stack.pop()}}function yc(){const t=Am(),r=Lm(t);return r.stack=r.stack||new A4(j4(),D4())}function L4(t){return yc().withScope(t)}function M4(t,r){const i=yc();return i.withScope(()=>(i.getStackTop().scope=t,r(t)))}function _T(t){return yc().withScope(()=>t(yc().getIsolationScope()))}function q4(){return{withIsolationScope:_T,withScope:L4,withSetScope:M4,withSetIsolationScope:(t,r)=>_T(r),getCurrentScope:()=>yc().getScope(),getIsolationScope:()=>yc().getIsolationScope()}}function $w(t){const r=Lm(t);return r.acs?r.acs:q4()}function I4(t){return typeof t=="object"&&t!=null&&!Array.isArray(t)&&Object.keys(t).includes("value")}function N4(t,r){const{value:i,unit:o}=I4(t)?t:{value:t,unit:void 0},l=B4(i),u=o&&typeof o=="string"?{unit:o}:{};if(l)return{...l,...u};if(!r||r==="skip-undefined"&&i===void 0)return;let d="";try{d=JSON.stringify(i)??""}catch{}return{value:d,type:"string",...u}}function vT(t,r=!1){const i={};for(const[o,l]of Object.entries(t??{})){const u=N4(l,r);u&&(i[o]=u)}return i}function B4(t){if(Array.isArray(t))return{value:t,type:"array"};const r=typeof t=="string"?"string":typeof t=="boolean"?"boolean":typeof t=="number"&&!Number.isNaN(t)?Number.isInteger(t)?"integer":"double":null;if(r)return{value:t,type:r}}function Wi(){const t=Am();return $w(t).getCurrentScope()}function Io(){const t=Am();return $w(t).getIsolationScope()}function U4(){return kc("globalScope",()=>new fi)}function F4(...t){const r=Am(),i=$w(r);if(t.length===2){const[o,l]=t;return o?i.withSetScope(o,l):i.withScope(l)}return i.withScope(t[0])}function dr(){return Wi().getClient()}function z4(t){const r=t.getPropagationContext(),{traceId:i,parentSpanId:o,propagationSpanId:l}=r,u={trace_id:i,span_id:l||A1()};return o&&(u.parent_span_id=o),u}const $4="sentry.source",H4="sentry.sample_rate",G4="sentry.previous_trace_sample_rate",W4="sentry.op",V4="sentry.origin",q1="sentry.profile_id",I1="sentry.exclusive_time",Y4="gen_ai.conversation.id",K4=0,Q4=1,X4="_sentryScope",J4="_sentryIsolationScope";function N1(t){const r=t;return{scope:r[X4],isolationScope:L1(r[J4])}}const bT="sentry-";function Z4(t){const r=eG(t);if(!r)return;const i=Object.entries(r).reduce((o,[l,u])=>{if(l.startsWith(bT)){const d=l.slice(bT.length);o[d]=u}return o},{});if(Object.keys(i).length>0)return i}function eG(t){if(!(!t||!zi(t)&&!Array.isArray(t)))return Array.isArray(t)?t.reduce((r,i)=>{const o=wT(i);return Object.entries(o).forEach(([l,u])=>{r[l]=u}),r},{}):wT(t)}function wT(t){return t.split(",").map(r=>{const i=r.indexOf("=");if(i===-1)return[];const o=r.slice(0,i),l=r.slice(i+1);return[o,l].map(u=>{try{return decodeURIComponent(u.trim())}catch{return}})}).reduce((r,[i,o])=>(i&&o&&(r[i]=o),r),{})}const tG=/^o(\d+)\./,nG=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)((?:\[[:.%\w]+\]|[\w.-]+))(?::(\d+))?\/(.+)/;function rG(t){return t==="http"||t==="https"}function ap(t,r=!1){const{host:i,path:o,pass:l,port:u,projectId:d,protocol:h,publicKey:m}=t;return`${h}://${m}${r&&l?`:${l}`:""}@${i}${u?`:${u}`:""}/${o&&`${o}/`}${d}`}function aG(t){const r=nG.exec(t);if(!r){jc(()=>{console.error(`Invalid Sentry Dsn: ${t}`)});return}const[i,o,l="",u="",d="",h=""]=r.slice(1);let m="",g=h;const w=g.split("/");if(w.length>1&&(m=w.slice(0,-1).join("/"),g=w.pop()),g){const b=g.match(/^\d+/);b&&(g=b[0])}return B1({host:u,pass:l,path:m,projectId:g,port:d,protocol:i,publicKey:o})}function B1(t){return{protocol:t.protocol,publicKey:t.publicKey||"",pass:t.pass||"",host:t.host,port:t.port||"",path:t.path||"",projectId:t.projectId}}function iG(t){if(!Ke)return!0;const{port:r,projectId:i,protocol:o}=t;return["protocol","publicKey","host","projectId"].find(d=>
345t[d]?!1:(Be.error(`Invalid Sentry Dsn: ${d} missing`),!0))?!1:i.match(/^\d+$/)?rG(o)?r&&isNaN(parseInt(r,10))?(Be.error(`Invalid Sentry Dsn: Invalid port ${r}`),!1):!0:(Be.error(`Invalid Sentry Dsn: Invalid protocol ${o}`),!1):(Be.error(`Invalid Sentry Dsn: Invalid projectId ${i}`),!1)}function oG(t){const r=t.match(tG);return r==null?void 0:r[1]}function sG(t){const r=t.getOptions(),{host:i}=t.getDsn()||{};let o;return r.orgId?o=String(r.orgId):i&&(o=oG(i)),o}function lG(t){const r=typeof t=="string"?aG(t):B1(t);if(!(!r||!iG(r)))return r}function cG(t){if(typeof t=="boolean")return Number(t);const r=typeof t=="string"?parseFloat(t):t;if(!(typeof r!="number"||isNaN(r)||r<0||r>1))return r}const U1=1;let ST=!1;function uG(t){const{spanId:r,traceId:i,isRemote:o}=t.spanContext(),l=o?r:Nm(t).parent_span_id,u=N1(t).scope,d=o?(u==null?void 0:u.getPropagationContext().propagationSpanId)||A1():r;return{parent_span_id:l,span_id:d,trace_id:i}}function dG(t){if(t&&t.length>0)return t.map(({context:{spanId:r,traceId:i,traceFlags:o,...l},attributes:u})=>({span_id:r,trace_id:i,sampled:o===U1,attributes:u,...l}))}function xT(t){return typeof t=="number"?ET(t):Array.isArray(t)?t[0]+t[1]/1e9:t instanceof Date?ET(t.getTime()):$i()}function ET(t){return t>9999999999?t/1e3:t}function Nm(t){if(mG(t))return t.getSpanJSON();const{spanId:r,traceId:i}=t.spanContext();if(hG(t)){const{attributes:o,startTime:l,name:u,endTime:d,status:h,links:m}=t;return{span_id:r,trace_id:i,data:o,description:u,parent_span_id:pG(t),start_timestamp:xT(l),timestamp:xT(d)||void 0,status:gG(h),op:o[W4],origin:o[V4],links:dG(m)}}return{span_id:r,trace_id:i,start_timestamp:0,data:{}}}function pG(t){var r;return"parentSpanId"in t?t.parentSpanId:"parentSpanContext"in t?(r=t.parentSpanContext)==null?void 0:r.spanId:void 0}function fG(t){var r;return{...t,attributes:vT(t.attributes),links:(r=t.links)==null?void 0:r.map(i=>({...i,attributes:vT(i.attributes)}))}}function hG(t){const r=t;return!!r.attributes&&!!r.startTime&&!!r.name&&!!r.endTime&&!!r.status}function mG(t){return typeof t.getSpanJSON=="function"}function yG(t){const{traceFlags:r}=t.spanContext();return r===U1}function gG(t){if(!(!t||t.code===K4))return t.code===Q4?"ok":t.message||"internal_error"}const _G="_sentryRootSpan",F1=vG;function vG(t){return t[_G]||t}function CT(){ST||(jc(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly or use `ignoreSpans`.")}),ST=!0)}function bG(t){var i;if(typeof __SENTRY_TRACING__=="boolean"&&!__SENTRY_TRACING__)return!1;const r=(i=dr())==null?void 0:i.getOptions();return!!r&&(r.tracesSampleRate!=null||!!r.tracesSampler)}function RT(t){Be.log(`Ignoring span ${t.op} - ${t.description} because it matches \`ignoreSpans\`.`)}function TT(t,r){if(!(r!=null&&r.length))return!1;for(const i of r){if(xG(i)){if(t.description&&Pd(t.description,i))return Ke&&RT(t),!0;continue}const o=!!i.attributes&&Object.keys(i.attributes).length>0;if(!i.name&&!i.op&&!o)continue;const l=i.name?t.description&&Pd(t.description,i.name):!0,u=i.op?t.op&&Pd(t.op,i.op):!0,d=i.attributes?Object.entries(i.attributes).every(([h,m])=>{var g;return wG((g=t.attributes)==null?void 0:g[h],m)}):!0;if(l&&u&&d)return Ke&&RT(t),!0}return!1}function wG(t,r){return typeof t=="string"&&(typeof r=="string"||r instanceof RegExp)?Pd(t,r):Array.isArray(t)&&Array.isArray(r)?t.length===r.length&&t.every((i,o)=>i===r[o]):t===r}function SG(t,r){const i=r.parent_span_id,o=r.span_id;if(i)for(const l of t)l.parent_span_id===o&&(l.parent_span_id=i)}function xG(t){return typeof t=="string"||t instanceof RegExp}const Hw="production",EG="_frozenDsc";function z1(t,r){const i=r.getOptions(),{publicKey:o}=r.getDsn()||{},l={environment:i.environment||Hw,release:i.release,public_key:o,trace_id:t,org_id:sG(r)};return r.emit("createDsc",l),l}function CG(t,r){const i=r.getPropagationContext();return i.dsc||z1(i.traceId,t)}function RG(t){var O;const r=dr();if(!r)return{};const i=F1(t),o=Nm(i),l=o.data,u=i.spanContext().traceState,d=(u==null?void 0:u.get("sentry.sample_rate"))??l[H4]??l[G4];
345function h(R){return(typeof d=="number"||typeof d=="string")&&(R.sample_rate=`${d}`),R}const m=i[EG];if(m)return h(m);const g=u==null?void 0:u.get("sentry.dsc"),w=g&&Z4(g);if(w)return h(w);const b=z1(t.spanContext().traceId,r),E=l[$4]??l["sentry.span.source"],T=o.description;return E!=="url"&&T&&(b.transaction=T),bG()&&(b.sampled=String(yG(i)),b.sample_rand=(u==null?void 0:u.get("sentry.sample_rand"))??((O=N1(i).scope)==null?void 0:O.getPropagationContext().sampleRand.toString())),h(b),r.emit("createDsc",b,i),b}function TG(t){return!!t&&typeof t=="function"&&"_streamed"in t&&!!t._streamed}function Pc(t,r=[]){return[t,r]}function kT(t,r){const[i,o]=t;return[i,[...o,r]]}function $b(t,r){const i=t[1];for(const o of i){const l=o[0].type;if(r(o,l))return!0}return!1}function kG(t,r){return $b(t,(i,o)=>r.includes(o))}function Hb(t){const r=Lm(ct);return r.encodePolyfill?r.encodePolyfill(t):new TextEncoder().encode(t)}function jG(t){const[r,i]=t;let o=JSON.stringify(r);function l(u){typeof o=="string"?o=typeof u=="string"?o+u:[Hb(o),u]:o.push(typeof u=="string"?Hb(u):u)}for(const u of i){const[d,h]=u;if(l(`
346${JSON.stringify(d)}
347`),typeof h=="string"||h instanceof Uint8Array)l(h);else{let m;try{m=JSON.stringify(h)}catch{m=JSON.stringify(Ui(h))}l(m)}}return typeof o=="string"?o:DG(o)}function DG(t){const r=t.reduce((l,u)=>l+u.length,0),i=new Uint8Array(r);let o=0;for(const l of t)i.set(l,o),o+=l.length;return i}function OG(t){const r=typeof t.data=="string"?Hb(t.data):t.data;return[{type:"attachment",length:r.length,filename:t.filename,content_type:t.contentType,attachment_type:t.attachmentType},r]}const $1={sessions:"session",event:"error",client_report:"internal",user_report:"default",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",raw_security:"security",log:"log_item",trace_metric:"metric"};function PG(t){return t in $1}function jT(t){return PG(t)?$1[t]:t}function H1(t){if(!(t!=null&&t.sdk))return;const{name:r,version:i}=t.sdk;return{name:r,version:i}}function AG(t,r,i,o){var u;const l=(u=t.sdkProcessingMetadata)==null?void 0:u.dynamicSamplingContext;return{event_id:t.event_id,sent_at:new Date(Oc()).toISOString(),...r&&{sdk:r},...!!i&&o&&{dsn:ap(o)},...l&&{trace:l}}}function LG(t,r){var o,l,u,d;if(!r)return t;const i=t.sdk||{};return t.sdk={...i,name:i.name||r.name,version:i.version||r.version,integrations:[...((o=t.sdk)==null?void 0:o.integrations)||[],...r.integrations||[]],packages:[...((l=t.sdk)==null?void 0:l.packages)||[],...r.packages||[]],settings:(u=t.sdk)!=null&&u.settings||r.settings?{...(d=t.sdk)==null?void 0:d.settings,...r.settings}:void 0},t}function MG(t,r,i,o){const l=H1(i),u={sent_at:new Date(Oc()).toISOString(),...l&&{sdk:l},...!!o&&r&&{dsn:ap(r)}},d="aggregates"in t?[{type:"sessions"},t]:[{type:"session"},t.toJSON()];return Pc(u,[d])}function qG(t,r,i,o){const l=H1(i),u=t.type&&t.type!=="replay_event"?t.type:"event";LG(t,i==null?void 0:i.sdk);const d=AG(t,l,o,r);return delete t.sdkProcessingMetadata,Pc(d,[[{type:u},t]])}function IG(t){return t.getOptions().traceLifecycle==="stream"}function NG(t,r){const{fingerprint:i,span:o,breadcrumbs:l,sdkProcessingMetadata:u}=r;BG(t,r),o&&zG(t,o),$G(t,i),UG(t,l),FG(t,u)}function DT(t,r){const{extra:i,tags:o,attributes:l,user:u,contexts:d,level:h,sdkProcessingMetadata:m,breadcrumbs:g,fingerprint:w,eventProcessors:b,attachments:E,propagationContext:T,transactionName:O,span:R}=r;Rd(t,"extra",i),Rd(t,"tags",o),Rd(t,"attributes",l),Rd(t,"user",u),Rd(t,"contexts",d),t.sdkProcessingMetadata=rp(t.sdkProcessingMetadata,m,2),h&&(t.level=h),O&&(t.transactionName=O),R&&(t.span=R),g.length&&(t.breadcrumbs=[...t.breadcrumbs,...g]),w.length&&(t.fingerprint=[...t.fingerprint,...w]),b.length&&(t.eventProcessors=[...t.eventProcessors,...b]),E.length&&(t.attachments=[...t.attachments,...E]),t.propagationContext={...t.propagationContext,...T}}function Rd(t,r,i){t[r]=rp(t[r],i,1)}function G1(t,r){const i=U4().getScopeData();return t&&DT(i,t.getScopeData()),r&&DT(i,r.getScopeData()),i}function BG(t,r){const{extra:i,tags:o,user:l,contexts:u,level:d,transactionName:h}=r;Object.keys(i).length&&(t.extra={...i,...t.extra}),Object.keys(o).length&&(t.tags={...o,...t.tags}),Object.keys(l).length&&(t.user={...l,...t.user}),Object.keys(u).length&&(t.contexts={...u,...t.contexts}),d&&(t.level=d),h&&t.type!=="transaction"&&(t.transaction=h)}function UG(t,r){const i=[...t.breadcrumbs||[],...r];t.breadcrumbs=i.length?i:void 0}function FG(t,r){t.sdkProcessingMetadata={...t.sdkProcessingMetadata,...r}}function zG(t,r){t.contexts={trace:uG(r),...t.contexts},t.sdkProcessingMetadata={dynamicSamplingContext:RG(r),...t.sdkProcessingMetadata};const i=F1(r),o=Nm(i).description;o&&!t.transaction&&t.type==="transaction"&&(t.transaction=o)}function $G(t,r){t.fingerprint=t.fingerprint?Array.isArray(t.fingerprint)?t.fingerprint:[t.fingerprint]:[],r&&(t.fingerprint=t.fingerprint.concat(r)),t.fingerprint.length||delete t.fingerprint}function fb(t){if(!t)return{};const r=t.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!r)return{};const i=r[6]||"",o=r[8]||"";return{host:r[4],path:r[5],protocol:r[2],search:i,hash:o,relative:r[5]+i+o}}function HG(t,r=!0){if(t.startsWith("data:")){const i=t.match(/^data:([^;,]+)/),o=i?i[1]:"text/plain",l=t.includes(";base64,"),u=t.indexOf(",");let d="";if(r&&u!==-1){const h=t.slice(u+1);d=h.length>10?`${h.slice(0,10)}... [truncated]`:h}return`data:${o}${l?",base64":""}${d?`,${d}`:""}`}return t}function W1(t,r){const i=t.attributes??(t.attributes={});Object.entries(r).forEach(([o,l])=>{l!=null&&!(o in i)&&(i[o]=l)})}const hb=0,OT=1,PT=2;function ip(t){return new Fd(r=>{r(t)})}function Gw(t){return new Fd((r,i)=>{i(t)})}class Fd{constructor(r){this._state=hb,this._handlers=[],this._runExecutor(r)}then(r,i){return new Fd((o,l)=>{this._handlers.push([!1,u=>{if(!r)o(u);else try{o(r(u))}catch(d){l(d)}},u=>{if(!i)l(u);else try{o(i(u))}catch(d){l(d)}}]),this._executeHandlers()})}catch(r){return this.then(i=>i,r)}finally(r){return new Fd((i,o)=>{let l,u;return this.then(d=>{u=!1,l=d,r&&r()},d=>{u=!0,l=d,r&&r()}).then(()=>
347{if(u){o(l);return}i(l)})})}_executeHandlers(){if(this._state===hb)return;const r=this._handlers.slice();this._handlers=[],r.forEach(i=>{i[0]||(this._state===OT&&i[1](this._value),this._state===PT&&i[2](this._value),i[0]=!0)})}_runExecutor(r){const i=(u,d)=>{if(this._state===hb){if(ep(d)){d.then(o,l);return}this._state=u,this._value=d,this._executeHandlers()}},o=u=>{i(OT,u)},l=u=>{i(PT,u)};try{r(o,l)}catch(u){l(u)}}}function GG(t,r,i,o=0){try{const l=Gb(r,i,t,o);return ep(l)?l:ip(l)}catch(l){return Gw(l)}}function Gb(t,r,i,o){const l=i[o];if(!t||!l)return t;const u=l({...t},r);return Ke&&u===null&&Be.log(`Event processor "${l.id||"?"}" dropped event`),ep(u)?u.then(d=>Gb(d,r,i,o+1)):Gb(u,r,i,o+1)}let Ni,AT,LT,Eo;function WG(t){const r=ct._sentryDebugIds,i=ct._debugIds;if(!r&&!i)return{};const o=r?Object.keys(r):[],l=i?Object.keys(i):[];if(Eo&&o.length===AT&&l.length===LT)return Eo;AT=o.length,LT=l.length,Eo={},Ni||(Ni={});const u=(d,h)=>{for(const m of d){const g=h[m],w=Ni==null?void 0:Ni[m];if(w&&Eo&&g)Eo[w[0]]=g,Ni&&(Ni[m]=[w[0],g]);else if(g){const b=t(m);for(let E=b.length-1;E>=0;E--){const T=b[E],O=T==null?void 0:T.filename;if(O&&Eo&&Ni){Eo[O]=g,Ni[m]=[O,g];break}}}}};return r&&u(o,r),i&&u(l,i),Eo}function VG(t,r,i,o,l,u){const{normalizeDepth:d=3,normalizeMaxBreadth:h=1e3}=t,m={...r,event_id:r.event_id||i.event_id||ua(),timestamp:r.timestamp||np()},g=i.integrations||t.integrations.map(M=>M.name);YG(m,t),XG(m,g),l&&l.emit("applyFrameMetadata",r),r.type===void 0&&KG(m,t.stackParser);const w=ZG(o,i.captureContext);i.mechanism&&Ls(m,i.mechanism);const b=l?l.getEventProcessors():[],E=G1(u,w),T=[...i.attachments||[],...E.attachments];T.length&&(i.attachments=T),NG(m,E);const O=[...b,...E.eventProcessors];return(i.data&&i.data.__sentry__===!0?ip(m):GG(O,m,i)).then(M=>(M&&QG(M),typeof d=="number"&&d>0?JG(M,d,h):M))}function YG(t,r){var h,m;const{environment:i,release:o,dist:l,maxValueLength:u}=r;t.environment=t.environment||i||Hw,!t.release&&o&&(t.release=o),!t.dist&&l&&(t.dist=l);const d=t.request;d!=null&&d.url&&u&&(d.url=Ub(d.url,u)),u&&((m=(h=t.exception)==null?void 0:h.values)==null||m.forEach(g=>{g.value&&(g.value=Ub(g.value,u))}))}function KG(t,r){var o,l;const i=WG(r);(l=(o=t.exception)==null?void 0:o.values)==null||l.forEach(u=>{var d,h;(h=(d=u.stacktrace)==null?void 0:d.frames)==null||h.forEach(m=>{m.filename&&(m.debug_id=i[m.filename])})})}function QG(t){var o,l;const r={};if((l=(o=t.exception)==null?void 0:o.values)==null||l.forEach(u=>{var d,h;(h=(d=u.stacktrace)==null?void 0:d.frames)==null||h.forEach(m=>{m.debug_id&&(m.abs_path?r[m.abs_path]=m.debug_id:m.filename&&(r[m.filename]=m.debug_id),delete m.debug_id)})}),Object.keys(r).length===0)return;t.debug_meta=t.debug_meta||{},t.debug_meta.images=t.debug_meta.images||[];const i=t.debug_meta.images;Object.entries(r).forEach(([u,d])=>{i.push({type:"sourcemap",code_file:u,debug_id:d})})}function XG(t,r){r.length>0&&(t.sdk=t.sdk||{},t.sdk.integrations=[...t.sdk.integrations||[],...r])}function JG(t,r,i){var l,u;if(!t)return null;const o={...t,...t.breadcrumbs&&{breadcrumbs:t.breadcrumbs.map(d=>({...d,...d.data&&{data:Ui(d.data,r,i)}}))},...t.user&&{user:Ui(t.user,r,i)},...t.contexts&&{contexts:Ui(t.contexts,r,i)},...t.extra&&{extra:Ui(t.extra,r,i)}};return(l=t.contexts)!=null&&l.trace&&o.contexts&&(o.contexts.trace=t.contexts.trace,t.contexts.trace.data&&(o.contexts.trace.data=Ui(t.contexts.trace.data,r,i))),t.spans&&(o.spans=t.spans.map(d=>({...d,...d.data&&{data:Ui(d.data,r,i)}}))),(u=t.contexts)!=null&&u.flags&&o.contexts&&(o.contexts.flags=Ui(t.contexts.flags,3,i)),o}function ZG(t,r){if(!r)return t;const i=t?t.clone():new fi;return i.update(r),i}function eW(t){if(t)return tW(t)?{captureContext:t}:rW(t)?{captureContext:t}:t}function tW(t){return t instanceof fi||typeof t=="function"}const nW=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function rW(t){return Object.keys(t).some(r=>nW.includes(r))}function V1(t,r){return Wi().captureException(t,eW(r))}function Y1(t,r){return Wi().captureEvent(t,r)}function aW(t,r){Io().setContext(t,r)}function MT(t){const r=Io(),{user:i}=G1(r,Wi()),{userAgent:o}=ct.navigator||{},l=E4({user:i,...o&&{userAgent:o},...t}),u=r.getSession();return(u==null?void 0:u.status)==="ok"&&mc(u,{status:"exited"}),K1(),r.setSession(l),l}function K1(){const t=Io(),i=Wi().getSession()||t.getSession();i&&C4(i),Q1(),t.setSession()}function Q1(){const t=Io(),r=dr(),i=t.getSession();i&&r&&r.captureSession(i)}function mb(t=!1){if(t){K1();return}Q1()}const iW="7";function oW(t){const r=t.protocol?`${t.protocol}:`:"",i=t.port?`:${t.port}`:"";return`${r}//${t.host}${i}${t.path?`/${t.path}`:""}/api/`}function sW(t){return`${oW(t)}${t.projectId}/envelope/`}function lW(t,r){const i={sentry_version:iW};return t.publicKey&&(i.sentry_key=t.publicKey),r&&(i.sentry_client=`${r.name}/${r.version}`),new URLSearchParams(i).toString()}function cW(t,r,i){return r||`${sW(t)}?${lW(t,i)}`}const qT=[];function uW(t){const r={};return t.forEach(i=>
347{const{name:o}=i,l=r[o];l&&!l.isDefaultInstance&&i.isDefaultInstance||(r[o]=i)}),Object.values(r)}function dW(t){const r=t.defaultIntegrations||[],i=t.integrations;r.forEach(l=>{l.isDefaultInstance=!0});let o;if(Array.isArray(i))o=[...r,...i];else if(typeof i=="function"){const l=i(r);o=Array.isArray(l)?l:[l]}else o=r;return uW(o)}function pW(t,r){const i={};return r.forEach(o=>{o!=null&&o.beforeSetup&&o.beforeSetup(t)}),r.forEach(o=>{o&&X1(t,o,i)}),i}function IT(t,r){for(const i of r)i!=null&&i.afterAllSetup&&i.afterAllSetup(t)}function X1(t,r,i){if(i[r.name]){Ke&&Be.log(`Integration skipped because it was already installed: ${r.name}`);return}if(i[r.name]=r,!qT.includes(r.name)&&typeof r.setupOnce=="function"&&(r.setupOnce(),qT.push(r.name)),r.setup&&typeof r.setup=="function"&&r.setup(t),typeof r.preprocessEvent=="function"){const o=r.preprocessEvent.bind(r);t.on("preprocessEvent",(l,u)=>o(l,u,t))}if(typeof r.processEvent=="function"){const o=r.processEvent.bind(r),l=Object.assign((u,d)=>o(u,d,t),{id:r.name});t.addEventProcessor(l)}["processSpan","processSegmentSpan"].forEach(o=>{const l=r[o];typeof l=="function"&&t.on(o,u=>l.call(r,u,t))}),Ke&&Be.log(`Integration installed: ${r.name}`)}function fW(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function hW(){/*! __SENTRY_SDK_SOURCE__ */return"npm"}function mW(){return!fW()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}function Ww(){return typeof window<"u"&&(!mW()||yW())}function yW(){const t=ct.process;return(t==null?void 0:t.type)==="renderer"}function gW(t,r){const i=r?"auto":"never";return[{type:"log",item_count:t.length,content_type:"application/vnd.sentry.items.log+json"},{version:2,...Ww()&&{ingest_settings:{infer_ip:i,infer_user_agent:i}},items:t}]}function _W(t,r,i,o,l){const u={};return r!=null&&r.sdk&&(u.sdk={name:r.sdk.name,version:r.sdk.version}),i&&o&&(u.dsn=ap(o)),Pc(u,[gW(t,l)])}function Wb(t,r){const i=r??vW(t)??[];if(i.length===0)return;const o=t.getOptions(),l=_W(i,o._metadata,o.tunnel,t.getDsn(),t.getDataCollectionOptions().userInfo);J1().set(t,[]),t.emit("flushLogs"),t.sendEnvelope(l)}function vW(t){return J1().get(t)}function J1(){return kc("clientToLogBufferMap",()=>new WeakMap)}function bW(t,r){const i=r?"auto":"never";return[{type:"trace_metric",item_count:t.length,content_type:"application/vnd.sentry.items.trace-metric+json"},{version:2,...Ww()&&{ingest_settings:{infer_ip:i,infer_user_agent:i}},items:t}]}function wW(t,r,i,o,l){const u={};return r!=null&&r.sdk&&(u.sdk={name:r.sdk.name,version:r.sdk.version}),i&&o&&(u.dsn=ap(o)),Pc(u,[bW(t,l)])}function Z1(t,r){const i=r??SW(t)??[];if(i.length===0)return;const o=t.getOptions(),l=wW(i,o._metadata,o.tunnel,t.getDsn(),t.getDataCollectionOptions().userInfo);eD().set(t,[]),t.emit("flushMetrics"),t.sendEnvelope(l)}function SW(t){return eD().get(t)}function eD(){return kc("clientToMetricBufferMap",()=>new WeakMap)}function xW(t){const r={trace_id:t.trace_id,span_id:t.span_id,parent_span_id:t.parent_span_id,name:t.description||"",start_timestamp:t.start_timestamp,end_timestamp:t.timestamp||t.start_timestamp,status:!t.status||t.status==="ok"||t.status==="cancelled"?"ok":"error",is_segment:!1,attributes:{...t.data},links:t.links};return fG(r)}function EW(t,r){var u,d,h;if(t.type!=="transaction"||!((u=t.spans)!=null&&u.length)||!((d=t.sdkProcessingMetadata)!=null&&d.hasGenAiSpans)||!r.getOptions().streamGenAiSpans||IG(r))return;const i=[],o=[];for(const m of t.spans)(h=m.op)!=null&&h.startsWith("gen_ai.")?i.push(xW(m)):o.push(m);if(i.length===0)return;t.spans=o;const l=r.getDataCollectionOptions().userInfo?"auto":"never";return[{type:"span",item_count:i.length,content_type:"application/vnd.sentry.items.span.v2+json"},{version:2,...Ww()&&{ingest_settings:{infer_ip:l,infer_user_agent:l}},items:i}]}function tD(t){return typeof t=="object"&&typeof t.unref=="function"&&t.unref(),t}const Vw=Symbol.for("SentryBufferFullError");function Yw(t=100){const r=new Set;function i(){return r.size<t}function o(d){r.delete(d)}function l(d){if(!i())return Gw(Vw);const h=d();return r.add(h),h.then(()=>o(h),()=>o(h)),h}function u(d){if(!r.size)return ip(!0);const h=Promise.allSettled(Array.from(r)).then(()=>!0);if(!d)return h;const m=[h,new Promise(g=>tD(setTimeout(()=>g(!1),d)))];return Promise.race(m)}return{get $(){return Array.from(r)},add:l,drain:u}}const CW=60*1e3;function RW(t,r=Oc()){const i=parseInt(`${t}`,10);if(!isNaN(i))return i*1e3;const o=Date.parse(`${t}`);return isNaN(o)?CW:o-r}function TW(t,r){return t[r]||t.all||0}function kW(t,r,i=Oc()){return TW(t,r)>i}function jW(t,{statusCode:r,headers:i},o=Oc()){const l={...t},u=i==null?void 0:i["x-sentry-rate-limits"],d=i==null?void 0:i["retry-after"];if(u)for(const h of u.trim().split(",")){const[m,g,,,w]=h.split(":",5),b=parseInt(m,10),E=(isNaN(b)?60:b)*1e3;if(!g)l.all=o+E;else for(const T of g.split(";"))T==="metric_bucket"?(!w||w.split(";").includes("custom"))&&(l[T]=o+E):l[T]=o+E}else d?l.all=o+RW(d,o):r===429&&(l.all=o+60*1e3);return l}const nD=64;function DW(t,r,i=Yw(t.bufferSize||nD)){let o={};const l=d=>i.drain(d);function u(d){const h=[];if($b(d,(b,E)=>{const T=jT(E);kW(o,T)?t.recordDroppedEvent("ratelimit_backoff",T):h.push(b)}),h.length===0)return Promise.resolve({});const m=Pc(d[0],h),g=b=>{if(kG(m,["client_report"])){Ke&&Be.warn(`Dropping client report. Will not send outcomes (reason: ${b}).`);return}$b(m,(E,T)=>{t.recordDroppedEvent(b,jT(T))})},w=()=>r({body:jG(m)}).then(b=>b.statusCode===413?(Ke&&Be.error("Sentry responded with status code 413. Envelope was discarded due to exceeding size limits."),g("send_error"),b):(Ke&&b.statusCode!==void 0&&(b.statusCode<200||b.statusCode>=300)&&Be.warn(`Sentry responded with status code ${b.statusCode} to sent event.`),o=jW(o,b),b),b=>{throw g("network_error"),Ke&&Be.error("Encountered error running transport request:",b),b});return i.add(w).then(b=>b,b=>{if(b===Vw)return Ke&&Be.error("Skipped sending event because buffer is full."),g("queue_overflow"),Promise.resolve({});throw b})}return{send:u,flush:l}}function OW(t,r,i){const o=[{type:"client_report"},{timestamp:np(),discarded_events:t}];return Pc(r?{dsn:r}:{},[o])}function rD(t){const r=[];t.message&&r.push(t.message);try{const i=t.exception.values[t.exception.values.length-1];i!=null&&i.value&&(r.push(i.value),i.type&&r.push(`${i.type}: ${i.value}`))}catch{}return r}function PW(t){var m;const{trace_id:r,parent_span_id:i,span_id:o,status:l,origin:u,data:d,op:h}=((m=t.contexts)==null?void 0:m.trace)??{};return{data:d??{},description:t.transaction,op:h,parent_span_id:i,span_id:o??"",start_timestamp:t.start_timestamp??0,status:l,timestamp:t.timestamp,trace_id:r??"",origin:u,profile_id:d==null?void 0:d[q1],exclusive_time:d==null?void 0:d[I1],measurements:t.measurements,is_segment:!0}}function AW(t){return{type:"transaction",timestamp:t.timestamp,start_timestamp:t.start_timestamp,transaction:t.description,contexts:{trace:{trace_id:t.trace_id,span_id:t.span_id,parent_span_id:t.parent_span_id,op:t.op,status:t.status,origin:t.origin,data:{...t.data,...t.profile_id&&{[q1]:t.profile_id},...t.exclusive_time&&{[I1]:t.exclusive_time}}}},measurements:t.measurements}}const Dh=["forwarded","-ip","remote-","via","-user"];function LW(t){return t===!0?{userInfo:!0,cookies:!0,httpHeaders:{request:!0,response:!0},httpBodies:["incomingRequest","outgoingRequest","incomingResponse","outgoingResponse"],queryParams:!0,genAI:{inputs:!0,outputs:!0}
347,stackFrameVariables:!0,frameContextLines:7}:{userInfo:!1,cookies:{deny:Dh},httpHeaders:{request:{deny:Dh},response:{deny:Dh}},httpBodies:[],queryParams:{deny:Dh},genAI:{inputs:!1,outputs:!1},stackFrameVariables:!0,frameContextLines:7}}const MW={userInfo:!0,cookies:!0,httpHeaders:{request:!0,response:!0},httpBodies:["incomingRequest","outgoingRequest","incomingResponse","outgoingResponse"],queryParams:!0,genAI:{inputs:!0,outputs:!0},stackFrameVariables:!0,frameContextLines:5};function qW(t){var o,l,u,d;const r=t.dataCollection!=null?MW:LW(t.sendDefaultPii),i=t.dataCollection??{};return{userInfo:i.userInfo??r.userInfo,cookies:i.cookies??r.cookies,httpHeaders:{request:((o=i.httpHeaders)==null?void 0:o.request)??r.httpHeaders.request,response:((l=i.httpHeaders)==null?void 0:l.response)??r.httpHeaders.response},httpBodies:i.httpBodies??r.httpBodies,queryParams:i.queryParams??r.queryParams,genAI:{inputs:((u=i.genAI)==null?void 0:u.inputs)??r.genAI.inputs,outputs:((d=i.genAI)==null?void 0:d.outputs)??r.genAI.outputs},stackFrameVariables:i.stackFrameVariables??r.stackFrameVariables,frameContextLines:i.frameContextLines??r.frameContextLines}}const NT="Not capturing exception because it's already been captured.",BT="Discarded session because of missing or non-string release",aD=Symbol.for("SentryInternalError"),iD=Symbol.for("SentryDoNotSendEventError"),IW=5e3;function zh(t){return{message:t,[aD]:!0}}function yb(t){return{message:t,[iD]:!0}}function UT(t){return!!t&&typeof t=="object"&&aD in t}function FT(t){return!!t&&typeof t=="object"&&iD in t}function zT(t,r,i,o,l){let u=0,d,h=!1;t.on(i,()=>{u=0,clearTimeout(d),h=!1}),t.on(r,m=>{if(u+=o(m),u>=8e5)l(t);else if(!h){const g=t.getOptions()._flushInterval??IW;g>0&&(h=!0,d=tD(setTimeout(()=>{l(t)},g)))}}),t.on("flush",()=>{l(t)})}class NW{constructor(r){var o,l,u;if(this._options=r,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],this._promiseBuffer=Yw(((o=r.transportOptions)==null?void 0:o.bufferSize)??nD),this._dataCollection=qW(r),r.dsn?this._dsn=lG(r.dsn):Ke&&Be.warn("No DSN provided, client will not send events."),this._dsn){const d=cW(this._dsn,r.tunnel,r._metadata?r._metadata.sdk:void 0);this._transport=r.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...r.transportOptions,url:d})}this._options.enableLogs=this._options.enableLogs??((l=this._options._experiments)==null?void 0:l.enableLogs),this._options.enableLogs&&zT(this,"afterCaptureLog","flushLogs",zW,Wb),(this._options.enableMetrics??((u=this._options._experiments)==null?void 0:u.enableMetrics)??!0)&&zT(this,"afterCaptureMetric","flushMetrics",FW,Z1)}captureException(r,i,o){const l=ua();if(pT(r))return Ke&&Be.log(NT),l;const u={event_id:l,...i};return this._process(()=>this.eventFromException(r,u).then(d=>this._captureEvent(d,u,o)).then(d=>d),"error"),u.event_id}captureMessage(r,i,o,l){const u={event_id:ua(),...o},d=Fw(r)?r:String(r),h=Zd(r),m=h?this.eventFromMessage(d,i,u):this.eventFromException(r,u);return this._process(()=>m.then(g=>this._captureEvent(g,u,l)),h?"unknown":"error"),u.event_id}captureEvent(r,i,o){const l=ua();if(i!=null&&i.originalException&&pT(i.originalException))return Ke&&Be.log(NT),l;const u={event_id:l,...i},d=r.sdkProcessingMetadata||{},h=d.capturedSpanScope,m=d.capturedSpanIsolationScope,g=$T(r.type);return this._process(()=>this._captureEvent(r,u,h||o,m),g),u.event_id}captureSession(r){this.sendSession(r),mc(r,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getDataCollectionOptions(){return this._dataCollection}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}async flush(r){const i=this._transport;if(this.emit("flush"),!i)return!0;const o=await this._isClientDoneProcessing(r),l=await i.flush(r);return o&&l}async close(r){Wb(this);const i=await this.flush(r);return this.getOptions().enabled=!1,this.emit("close"),i}getEventProcessors(){return this._eventProcessors}addEventProcessor(r){this._eventProcessors.push(r)}init(){(this._isEnabled()||this._options.integrations.some(({name:r})=>r.startsWith("Spotlight")))&&this._setupIntegrations()}getIntegrationByName(r){return this._integrations[r]}getIntegrationNames(){return Object.keys(this._integrations)}addIntegration(r){const i=this._integrations[r.name];!i&&r.beforeSetup&&r.beforeSetup(this),X1(this,r,this._integrations),i||IT(this,[r])}sendEvent(r,i={}
347){this.emit("beforeSendEvent",r,i);const o=EW(r,this);let l=qG(r,this._dsn,this._options._metadata,this._options.tunnel);for(const u of i.attachments||[])l=kT(l,OG(u));o&&(l=kT(l,o)),this.sendEnvelope(l).then(u=>this.emit("afterSendEvent",r,u))}sendSession(r){const{release:i,environment:o=Hw}=this._options;if("aggregates"in r){const u=r.attrs||{};if(!u.release&&!i){Ke&&Be.warn(BT);return}u.release=u.release||i,u.environment=u.environment||o,r.attrs=u}else{if(!r.release&&!i){Ke&&Be.warn(BT);return}r.release=r.release||i,r.environment=r.environment||o}this.emit("beforeSendSession",r);const l=MG(r,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(l)}recordDroppedEvent(r,i,o=1){if(this._options.sendClientReports){const l=`${r}:${i}`;Ke&&Be.log(`Recording outcome: "${l}"${o>1?` (${o} times)`:""}`),this._outcomes[l]=(this._outcomes[l]||0)+o}}on(r,i){const o=this._hooks[r]=this._hooks[r]||new Set,l=(...u)=>i(...u);return o.add(l),()=>{o.delete(l)}}emit(r,...i){const o=this._hooks[r];o&&o.forEach(l=>l(...i))}async sendEnvelope(r){if(this.emit("beforeEnvelope",r),this._isEnabled()&&this._transport)try{return await this._transport.send(r)}catch(i){return Ke&&Be.error("Error while sending envelope:",i),{}}return Ke&&Be.error("Transport disabled"),{}}registerCleanup(r){}dispose(){}_setupIntegrations(){const{integrations:r}=this._options;this._integrations=pW(this,r),IT(this,r)}_updateSessionFromEvent(r,i){var m,g;let o=i.level==="fatal",l=!1;const u=(m=i.exception)==null?void 0:m.values;if(u){l=!0,o=!1;for(const w of u)if(((g=w.mechanism)==null?void 0:g.handled)===!1){o=!0;break}}const d=r.status==="ok";(d&&r.errors===0||d&&o)&&(mc(r,{...o&&{status:"crashed"},errors:r.errors||Number(l||o)}),this.captureSession(r))}async _isClientDoneProcessing(r){let i=0;for(;!r||i<r;){if(await new Promise(o=>setTimeout(o,1)),!this._numProcessing)return!0;i++}return!1}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(r,i,o,l){const u=this.getOptions(),d=this.getIntegrationNames();return!i.integrations&&d.length&&(i.integrations=d),this.emit("preprocessEvent",r,i),r.type||l.setLastEventId(r.event_id||i.event_id),VG(u,r,i,o,this,l).then(h=>{var g;if(h===null)return h;this.emit("postprocessEvent",h,i),h.contexts={trace:{...(g=h.contexts)==null?void 0:g.trace,...z4(o)},...h.contexts};const m=CG(this,o);return h.sdkProcessingMetadata={dynamicSamplingContext:m,...h.sdkProcessingMetadata},h})}_captureEvent(r,i={},o=Wi(),l=Io()){return Ke&&Vb(r)&&Be.log(`Captured error event \`${rD(r)[0]||"<unknown>"}\``),this._processEvent(r,i,o,l).then(u=>u.event_id,u=>{Ke&&(FT(u)?Be.log(u.message):UT(u)?Be.warn(u.message):Be.warn(u))})}_processEvent(r,i,o,l){const u=this.getOptions(),{sampleRate:d}=u,h=oD(r),m=Vb(r),w=`before send for type \`${r.type||"error"}\``,b=typeof d>"u"?void 0:cG(d);if(m&&typeof b=="number"&&lm()>b)return this.recordDroppedEvent("sample_rate","error"),Gw(yb(`Discarding event because it's not included in the random sample (sampling rate = ${d})`));const E=$T(r.type);return this._prepareEvent(r,i,o,l).then(T=>{var L;if(T===null)throw this.recordDroppedEvent("event_processor",E),yb("An event processor returned `null`, will not send event.");if(((L=i.data)==null?void 0:L.__sentry__)===!0)return T;const R=UW(this,u,T,i);return BW(R,w)}).then(T=>{var L;if(T===null){if(this.recordDroppedEvent("before_send",E),h){const G=1+(r.spans||[]).length;this.recordDroppedEvent("before_send","span",G)}throw yb(`${w} returned \`null\`, will not send event.`)}const O=o.getSession()||l.getSession();if(m&&O&&this._updateSessionFromEvent(O,T),h){const M=((L=T.sdkProcessingMetadata)==null?void 0:L.spanCountBeforeProcessing)||0,G=T.spans?T.spans.length:0,$=M-G;$>0&&this.recordDroppedEvent("before_send","span",$)}const R=T.transaction_info;if(h&&R&&T.transaction!==r.transaction){const M="custom";T.transaction_info={...R,source:M}}return this.sendEvent(T,i),T}).then(null,T=>{throw FT(T)||UT(T)?T:(this.captureException(T,{mechanism:{handled:!1,type:"internal"},data:{__sentry__:!0},originalException:T}),zh(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
348Reason: ${T}`))})}_process(r,i){this._numProcessing++,this._promiseBuffer.add(r).then(o=>(this._numProcessing--,o),o=>(this._numProcessing--,o===Vw&&this.recordDroppedEvent("queue_overflow",i),o))}_clearOutcomes(){const r=this._outcomes;return this._outcomes={},Object.entries(r).map(([i,o])=>{const[l,u]=i.split(":");return{reason:l,category:u,quantity:o}})}_flushOutcomes(){Ke&&Be.log("Flushing outcomes...");const r=this._clearOutcomes();if(r.length===0){Ke&&Be.log("No outcomes to send");return}if(!this._dsn){Ke&&Be.log("No dsn provided, will not send outcomes");return}Ke&&Be.log("Sending outcomes:",r);const i=OW(r,this._options.tunnel&&ap(this._dsn));this.sendEnvelope(i)}}function $T(t){return t==="replay_event"?"replay":t||"error"}function BW(t,r){const i=`${r} must return \`null\` or a valid event.`;if(ep(t))return t.then(o=>{if(!Ud(o)&&o!==null)throw zh(i);return o},o=>{throw zh(`${r} rejected with ${o}`)});if(!Ud(t)&&t!==null)throw zh(i);return t}function UW(t,r,i,o){const{beforeSend:l,beforeSendTransaction:u,ignoreSpans:d}=r,h=!TG(r.beforeSendSpan)&&r.beforeSendSpan;let m=i;if(Vb(m)&&l)return l(m,o);if(oD(m)){if(h||d){const g=PW(m);
348if(d!=null&&d.length&&TT({description:g.description,op:g.op,attributes:g.data},d))return null;if(h){const w=h(g);w?m=rp(i,AW(w)):CT()}if(m.spans){const w=[],b=m.spans;for(const T of b){if(d!=null&&d.length&&TT({description:T.description,op:T.op,attributes:T.data},d)){SG(b,T);continue}if(h){const O=h(T);O?w.push(O):(CT(),w.push(T))}else w.push(T)}const E=m.spans.length-w.length;E&&t.recordDroppedEvent("before_send","span",E),m.spans=w}}if(u){if(m.spans){const g=m.spans.length;m.sdkProcessingMetadata={...i.sdkProcessingMetadata,spanCountBeforeProcessing:g}}return u(m,o)}}return m}function Vb(t){return t.type===void 0}function oD(t){return t.type==="transaction"}function FW(t){let r=0;return t.name&&(r+=t.name.length*2),r+=8,r+sD(t.attributes)}function zW(t){let r=0;return t.message&&(r+=t.message.length*2),r+sD(t.attributes)}function sD(t){if(!t)return 0;let r=0;return Object.values(t).forEach(i=>{Array.isArray(i)?r+=i.length*HT(i[0]):Zd(i)?r+=HT(i):r+=100}),r}function HT(t){return typeof t=="string"?t.length*2:typeof t=="number"?8:typeof t=="boolean"?4:0}function $W(t,r){r.debug===!0&&(Ke?Be.enable():jc(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")})),Wi().update(r.initialScope);const o=new t(r);return HW(o),o.init(),o}function HW(t){Wi().setClient(t)}function GW(t){var r;"aggregates"in t?((r=t.attrs)==null?void 0:r.ip_address)===void 0&&(t.attrs={...t.attrs,ip_address:"{{auto}}"}):t.ipAddress===void 0&&(t.ipAddress="{{auto}}")}function lD(t,r,i=[r],o="npm"){const l=(t._metadata=t._metadata||{}).sdk=t._metadata.sdk||{};l.name||(l.name=`sentry.javascript.${r}`,l.packages=i.map(u=>({name:`${o}:@sentry/${u}`,version:As})),l.version=As)}const WW=100;function qs(t,r){const i=dr(),o=Io();if(!i)return;const{beforeBreadcrumb:l=null,maxBreadcrumbs:u=WW}=i.getOptions();if(u<=0)return;const h={timestamp:np(),...t},m=l?jc(()=>l(h,r)):h;m!==null&&(i.emit&&i.emit("beforeAddBreadcrumb",m,r),o.addBreadcrumb(m,u))}let GT;const VW="FunctionToString",WT=new WeakMap,YW=()=>({name:VW,setupOnce(){GT=Function.prototype.toString;try{Function.prototype.toString=function(...t){const r=zw(this),i=WT.has(dr())&&r!==void 0?r:this;return GT.apply(i,t)}}catch{}},setup(t){WT.set(t,!0)}}),KW=YW,QW=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,/can't redefine non-configurable property "solana"/,/vv\(\)\.getRestrictions is not a function/,/Can't find variable: _AutofillCallbackHandler/,/Object Not Found Matching Id:\d+, MethodName:simulateEvent/,/^Java exception was raised during method invocation$/],XW="EventFilters",JW=(t={})=>{let r;return{name:XW,setup(i){const o=i.getOptions();r=VT(t,o)},processEvent(i,o,l){if(!r){const u=l.getOptions();r=VT(t,u)}return eV(i,r)?null:i}}},ZW=(t={})=>({...JW(t),name:"InboundFilters"});function VT(t={},r={}){return{allowUrls:[...t.allowUrls||[],...r.allowUrls||[]],denyUrls:[...t.denyUrls||[],...r.denyUrls||[]],ignoreErrors:[...t.ignoreErrors||[],...r.ignoreErrors||[],...t.disableErrorDefaults?[]:QW],ignoreTransactions:[...t.ignoreTransactions||[],...r.ignoreTransactions||[]]}}function eV(t,r){if(t.type){if(t.type==="transaction"&&nV(t,r.ignoreTransactions))return Ke&&Be.warn(`Event dropped due to being matched by \`ignoreTransactions\` option.
349Event: ${Ts(t)}`),!0}else{if(tV(t,r.ignoreErrors))return Ke&&Be.warn(`Event dropped due to being matched by \`ignoreErrors\` option.
350Event: ${Ts(t)}`),!0;if(oV(t))return Ke&&Be.warn(`Event dropped due to not having an error message, error type or stacktrace.
351Event: ${Ts(t)}`),!0;if(rV(t,r.denyUrls))return Ke&&Be.warn(`Event dropped due to being matched by \`denyUrls\` option.
352Event: ${Ts(t)}.
353Url: ${cm(t)}`),!0;if(!aV(t,r.allowUrls))return Ke&&Be.warn(`Event dropped due to not being matched by \`allowUrls\` option.
354Event: ${Ts(t)}.
355Url: ${cm(t)}`),!0}return!1}function tV(t,r){return r!=null&&r.length?rD(t).some(i=>tp(i,r)):!1}function nV(t,r){if(!(r!=null&&r.length))return!1;const i=t.transaction;return i?tp(i,r):!1}
355function rV(t,r){if(!(r!=null&&r.length))return!1;const i=cm(t);return i?tp(i,r):!1}function aV(t,r){if(!(r!=null&&r.length))return!0;const i=cm(t);return i?tp(i,r):!0}function iV(t=[]){for(let r=t.length-1;r>=0;r--){const i=t[r];if(i&&i.filename!=="<anonymous>"&&i.filename!=="[native code]")return i.filename||null}return null}function cm(t){var r,i;try{const o=[...((r=t.exception)==null?void 0:r.values)??[]].reverse().find(u=>{var d,h,m;return((d=u.mechanism)==null?void 0:d.parent_id)===void 0&&((m=(h=u.stacktrace)==null?void 0:h.frames)==null?void 0:m.length)}),l=(i=o==null?void 0:o.stacktrace)==null?void 0:i.frames;return l?iV(l):null}catch{return Ke&&Be.error(`Cannot extract url for event ${Ts(t)}`),null}}function oV(t){var r,i;return(i=(r=t.exception)==null?void 0:r.values)!=null&&i.length?!t.message&&!t.exception.values.some(o=>o.stacktrace||o.type&&o.type!=="Error"||o.value):!1}function sV(t,r,i,o,l,u){var h;if(!((h=l.exception)!=null&&h.values)||!u||!hc(u.originalException,Error))return;const d=l.exception.values.length>0?l.exception.values[l.exception.values.length-1]:void 0;d&&(l.exception.values=Yb(t,r,o,u.originalException,i,l.exception.values,d,0))}function Yb(t,r,i,o,l,u,d,h){if(u.length>=i+1)return u;let m=[...u];if(hc(o[l],Error)){YT(d,h,o);const g=t(r,o[l]),w=m.length;KT(g,l,w,h),m=Yb(t,r,i,o[l],l,[g,...m],g,w)}return cD(o)&&o.errors.forEach((g,w)=>{if(hc(g,Error)){YT(d,h,o);const b=t(r,g),E=m.length;KT(b,`errors[${w}]`,E,h),m=Yb(t,r,i,g,l,[b,...m],b,E)}}),m}function cD(t){return Array.isArray(t.errors)}function YT(t,r,i){t.mechanism={handled:!0,type:"auto.core.linked_errors",...cD(i)&&{is_exception_group:!0},...t.mechanism,exception_id:r}}function KT(t,r,i,o){t.mechanism={handled:!0,...t.mechanism,type:"chained",source:r,exception_id:i,parent_id:o}}function lV(t){return Mm(t)&&"__sentry_fetch_url_host__"in t&&typeof t.__sentry_fetch_url_host__=="string"}function QT(t){return lV(t)?`${t.message} (${t.__sentry_fetch_url_host__})`:t.message}const XT=new Set([]);function cV(t){const r="console",i=Is(r,t);return Ns(r,uV),i}function uV(){"console"in ct&&Q3.forEach(function(t){t in ct.console&&Vr(ct.console,t,function(r){return sm[t]=r,function(...i){const o=i[0],l=sm[t],u=XT.size&&typeof o=="string"&&tp(o,XT);u||Ha("console",{args:i,level:t}),(!u||Ke&&Be.isEnabled())&&(l==null||l.apply(ct.console,i))}})})}function dV(t){return t==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(t)?t:"log"}const pV="Dedupe",fV=()=>{let t;return{name:pV,processEvent(r){if(r.type)return r;try{if(mV(r,t))return Ke&&Be.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return t=r}}},hV=fV;function mV(t,r){return r?!!(yV(t,r)||gV(t,r)):!1}function yV(t,r){const i=t.message,o=r.message;return!(!i&&!o||i&&!o||!i&&o||i!==o||!dD(t,r)||!uD(t,r))}function gV(t,r){const i=JT(r),o=JT(t);return!(!i||!o||i.type!==o.type||i.value!==o.value||!dD(t,r)||!uD(t,r))}function uD(t,r){let i=sT(t),o=sT(r);if(!i&&!o)return!0;if(i&&!o||!i&&o||(i=i,o=o,o.length!==i.length))return!1;for(let l=0;l<o.length;l++){const u=o[l],d=i[l];if(u.filename!==d.filename||u.lineno!==d.lineno||u.colno!==d.colno||u.function!==d.function)return!1}return!0}function dD(t,r){let i=t.fingerprint,o=r.fingerprint;if(!i&&!o)return!0;if(i&&!o||!i&&o)return!1;i=i,o=o;try{return i.join("")===o.join("")}catch{return!1}}function JT(t){var r,i;return(i=(r=t.exception)==null?void 0:r.values)==null?void 0:i[0]}const _V="ConversationId",vV=()=>({name:_V,setup(t){t.on("spanStart",r=>{const i=Wi().getScopeData(),o=Io().getScopeData(),l=i.conversationId||o.conversationId;if(l){const{op:u,data:d,description:h}=Nm(r);if(!(u!=null&&u.startsWith("gen_ai."))&&!d["ai.operationId"]&&!(h!=null&&h.startsWith("ai.")))return;r.setAttribute(Y4,l)}})}}),bV=vV;function pD(t){if(t!==void 0)return t>=400&&t<500?"warning":t>=500?"error":void 0}const zd=ct;function wV(){return"history"in zd&&!!zd.history}function SV(){if(!("fetch"in zd))return!1;try{return new Headers,new Request("data:,"),new Response,!0}catch{return!1}}function Kb(t){return t&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(t.toString())}function xV(){var i;if(typeof EdgeRuntime=="string")return!0;
355if(!SV())return!1;if(Kb(zd.fetch))return!0;let t=!1;const r=zd.document;if(r&&typeof r.createElement=="function")try{const o=r.createElement("iframe");o.hidden=!0,r.head.appendChild(o),(i=o.contentWindow)!=null&&i.fetch&&(t=Kb(o.contentWindow.fetch)),r.head.removeChild(o)}catch(o){Ke&&Be.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",o)}return t}function EV(t,r){const i="fetch",o=Is(i,t);return Ns(i,()=>CV(void 0,r)),o}function CV(t,r=!1){r&&!xV()||Vr(ct,"fetch",function(i){return function(...o){const l=new Error,{method:u,url:d}=RV(o),h={args:o,fetchData:{method:u,url:d},startTimestamp:$i()*1e3,virtualError:l,headers:TV(o)};return Ha("fetch",{...h}),i.apply(ct,o).then(async m=>(Ha("fetch",{...h,endTimestamp:$i()*1e3,response:m}),m),m=>{Ha("fetch",{...h,endTimestamp:$i()*1e3,error:m}),Mm(m)&&m.stack===void 0&&(m.stack=l.stack,Ao(m,"framesToPop",1));const g=dr(),w=(g==null?void 0:g.getOptions().enhanceFetchErrorMessages)??"always";if(w!==!1&&m instanceof TypeError&&(m.message==="Failed to fetch"||m.message==="Load failed"||m.message==="NetworkError when attempting to fetch resource."))try{const T=new URL(h.fetchData.url).host;w==="always"?m.message=`${m.message} (${T})`:Ao(m,"__sentry_fetch_url_host__",T)}catch{}throw m})}})}function $h(t,r){return!!t&&typeof t=="object"&&!!t[r]}function ZT(t){return typeof t=="string"?t:t?$h(t,"url")?t.url:t.toString?t.toString():"":""}function RV(t){if(t.length===0)return{method:"GET",url:""};if(t.length===2){const[i,o]=t;return{url:ZT(i),method:$h(o,"method")?String(o.method).toUpperCase():C1(i)&&$h(i,"method")?String(i.method).toUpperCase():"GET"}}const r=t[0];return{url:ZT(r),method:$h(r,"method")?String(r.method).toUpperCase():"GET"}}function TV(t){const[r,i]=t;try{if(typeof i=="object"&&i!==null&&"headers"in i&&i.headers)return new Headers(i.headers);if(C1(r))return new Headers(r.headers)}catch{}}const fD=ct;function Kw(){try{return fD.document.location.href}catch{return""}}function kV(t,r=5){if(!fD.HTMLElement)return null;let i=t;for(let o=0;o<r;o++){if(!i)return null;if(i instanceof HTMLElement){if(i.dataset.sentryComponent)return i.dataset.sentryComponent;if(i.dataset.sentryElement)return i.dataset.sentryElement}i=i.parentNode}return null}const Wt=ct;let Qb=0;function hD(){return Qb>0}function jV(){Qb++,setTimeout(()=>{Qb--})}function gc(t,r={}){function i(l){return typeof l=="function"}if(!i(t))return t;try{const l=t.__sentry_wrapped__;if(l)return typeof l=="function"?l:t;if(zw(t))return t}catch{return t}const o=function(...l){ct._sentryWrappedDepth=(ct._sentryWrappedDepth||0)+1;try{const u=l.map(d=>gc(d,r));return t.apply(this,u)}catch(u){throw jV(),F4(d=>{d.addEventProcessor(h=>(r.mechanism&&(Fb(h,void 0),Ls(h,r.mechanism)),h.extra={...h.extra,arguments:l},h)),V1(u)}),u}finally{ct._sentryWrappedDepth=(ct._sentryWrappedDepth||0)-1}};try{for(const l in t)Object.prototype.hasOwnProperty.call(t,l)&&(o[l]=t[l])}catch{}R1(o,t),Ao(t,"__sentry_wrapped__",o);try{Object.getOwnPropertyDescriptor(o,"name").configurable&&Object.defineProperty(o,"name",{get(){return t.name}})}catch{}return o}function ek(){const t=Kw(),{referrer:r}=Wt.document||{},{userAgent:i}=Wt.navigator||{},o={...r&&{Referer:r},...i&&{"User-Agent":i}};return{url:t,headers:o}}function Qw(t,r){const i=Bm(t,r),o={type:LV(r),value:MV(r)};return i.length&&(o.stacktrace={frames:i}),o.type===void 0&&o.value===""&&(o.value="Unrecoverable error caught"),o}function DV(t,r,i,o){const l=dr(),u=l==null?void 0:l.getOptions().normalizeDepth,d=UV(r),h={__serialized__:j1(r,u)};if(d)return{exception:{values:[Qw(t,d)]},extra:h};const m={exception:{values:[{type:qm(r)?r.constructor.name:o?"UnhandledRejection":"Error",value:NV(r,{isUnhandledRejection:o})}]},extra:h};if(i){const g=Bm(t,i);g.length&&(m.exception.values[0].stacktrace={frames:g})}return m}function gb(t,r){return{exception:{values:[Qw(t,r)]}}}function Bm(t,r){const i=r.stacktrace||r.stack||"",o=PV(r),l=AV(r);try{return t(i,o,l)}catch{}return[]}const OV=/Minified React error #\d+;/i;function PV(t){return t&&OV.test(t.message)?1:0}function AV(t){return typeof t.framesToPop=="number"?t.framesToPop:0}function mD(t){return typeof WebAssembly<"u"&&typeof WebAssembly.Exception<"u"?t instanceof WebAssembly.Exception:!1}function LV(t){const r=t==null?void 0:t.name;return!r&&mD(t)?t.message&&Array.isArray(t.message)&&t.message.length==2?t.message[0]:"WebAssembly.Exception":r}function MV(t){const r=t==null?void 0:t.message;return mD(t)?Array.isArray(t.message)&&t.message.length==2?t.message[1]:"wasm exception":r?r.error&&typeof r.error.message=="string"?QT(r.error):QT(t):"No error message"}function qV(t,r,i,o){const l=(i==null?void 0:i.syntheticException)||void 0,u=Xw(t,r,l,o);return Ls(u),u.level="error",i!=null&&i.event_id&&(u.event_id=i.event_id),ip(u)}function IV(t,r,i="info",o,l){const u=(o==null?void 0:o.syntheticException)||void 0,d=Xb(t,r,u,l);return d.level=i,o!=null&&o.event_id&&(d.event_id=o.event_id),ip(d)}function Xw(t,r,i,o,l){var d,h;let u;if(E1(r)&&r.error)return gb(t,r.error);if(cT(r)||c4(r)){const m=r;if("stack"in r){u=gb(t,r);const g=(h=(d=u.exception)==null?void 0:d.values)==null?void 0:h[0];
355if(o&&i&&g&&!g.stacktrace){const w=Bm(t,i);w.length&&(g.stacktrace={frames:w},Ls(u,{synthetic:!0}))}}else{const g=m.name||(cT(m)?"DOMError":"DOMException"),w=m.message?`${g}: ${m.message}`:g;u=Xb(t,w,i,o),Fb(u,w)}return"code"in m&&(u.tags={...u.tags,"DOMException.code":`${m.code}`}),u}return Mm(r)?gb(t,r):Ud(r)||qm(r)?(u=DV(t,r,i,l),Ls(u,{synthetic:!0}),u):(u=Xb(t,r,i,o),Fb(u,`${r}`),Ls(u,{synthetic:!0}),u)}function Xb(t,r,i,o){const l={};if(o&&i){const u=Bm(t,i);u.length&&(l.exception={values:[{value:r,stacktrace:{frames:u}}]}),Ls(l,{synthetic:!0})}if(Fw(r)){const{__sentry_template_string__:u,__sentry_template_values__:d}=r;return l.logentry={message:u,params:d},l}return l.message=r,l}function NV(t,{isUnhandledRejection:r}){const i=d4(t),o=r?"promise rejection":"exception";return E1(t)?`Event \`ErrorEvent\` captured as ${o} with message \`${t.message}\``:qm(t)?`Event \`${BV(t)}\` (type=${t.type}) captured as ${o}`:`Object captured as ${o} with keys: ${i}`}function BV(t){try{const r=Object.getPrototypeOf(t);return r?r.constructor.name:void 0}catch{}}function UV(t){return Object.values(t).find(r=>r instanceof Error)}class FV extends NW{constructor(r){var w;const i=zV(r),o=Wt.SENTRY_SDK_SOURCE||hW();lD(i,"browser",["browser"],o),super(i);const{userInfo:l}=this.getDataCollectionOptions();(w=i._metadata)!=null&&w.sdk&&(i._metadata.sdk.settings={infer_ip:l?"auto":"never",...i._metadata.sdk.settings});const{sendClientReports:u,enableLogs:d,_experiments:h,enableMetrics:m}=this._options,g=m??(h==null?void 0:h.enableMetrics)??!0;Wt.document&&(u||d||g)&&Wt.document.addEventListener("visibilitychange",()=>{Wt.document.visibilityState==="hidden"&&(u&&this._flushOutcomes(),d&&Wb(this),g&&Z1(this))}),l&&this.on("beforeSendSession",GW)}eventFromException(r,i){return qV(this._options.stackParser,r,i,this._options.attachStacktrace)}eventFromMessage(r,i="info",o){return IV(this._options.stackParser,r,i,o,this._options.attachStacktrace)}_prepareEvent(r,i,o,l){return r.platform=r.platform||"javascript",super._prepareEvent(r,i,o,l)}}function zV(t){var r;return{release:typeof __SENTRY_RELEASE__=="string"?__SENTRY_RELEASE__:(r=Wt.SENTRY_RELEASE)==null?void 0:r.id,sendClientReports:!0,parentSpanIsAlwaysRootSpan:!0,...t}}const $V=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,Er=ct,HV=80;function yD(t,r={}){if(!t)return"<unknown>";try{let i=t;const o=5,l=[];let u=0,d=0;const h=" > ",m=h.length;let g;const w=Array.isArray(r)?r:r.keyAttrs,b=!Array.isArray(r)&&r.maxStringLength||HV;for(;i&&u++<o&&(g=GV(i,w),!(g==="html"||u>1&&d+l.length*m+g.length>=b));)l.push(g),d+=g.length,i=i.parentNode;return l.reverse().join(h)}catch{return"<unknown>"}}function GV(t,r){const i=t,o=[];if(!(i!=null&&i.tagName))return"";if(typeof HTMLElement<"u"&&i instanceof HTMLElement&&i.dataset){if(i.dataset.sentryComponent)return i.dataset.sentryComponent;if(i.dataset.sentryElement)return i.dataset.sentryElement}o.push(i.tagName.toLowerCase());const l=r!=null&&r.length?r.filter(u=>i.getAttribute(u)).map(u=>[u,i.getAttribute(u)]):null;if(l!=null&&l.length)l.forEach(u=>{o.push(`[${u[0]}="${u[1]}"]`)});else{i.id&&o.push(`#${i.id}`);const u=i.className;if(u&&zi(u)){const d=u.split(/\s+/);for(const h of d)o.push(`.${h}`)}}for(const u of["aria-label","type","name","title","alt"]){const d=i.getAttribute(u);d&&o.push(`[${u}="${d}"]`)}return o.join("")}const WV=1e3;let tk,Jb,Zb;function VV(t){const r="dom";Is(r,t),Ns(r,YV)}function YV(){if(!Er.document)return;const t=Ha.bind(null,"dom"),r=nk(t,!0);Er.document.addEventListener("click",r,!1),Er.document.addEventListener("keypress",r,!1),["EventTarget","Node"].forEach(i=>{var u,d;const l=(u=Er[i])==null?void 0:u.prototype;(d=l==null?void 0:l.hasOwnProperty)!=null&&d.call(l,"addEventListener")&&(Vr(l,"addEventListener",function(h){return function(m,g,w){if(m==="click"||m=="keypress")try{const b=this.__sentry_instrumentation_handlers__=this.__sentry_instrumentation_handlers__||{},E=b[m]=b[m]||{refCount:0};if(!E.handler){const T=nk(t);E.handler=T,h.call(this,m,T,w)}E.refCount++}catch{}return h.call(this,m,g,w)}}),Vr(l,"removeEventListener",function(h){return function(m,g,w){if(m==="click"||m=="keypress")try{const b=this.__sentry_instrumentation_handlers__||{},E=b[m];E&&(E.refCount--,E.refCount<=0&&(h.call(this,m,E.handler,w),E.handler=void 0,delete b[m]),Object.keys(b).length===0&&delete this.__sentry_instrumentation_handlers__)}catch{}return h.call(this,m,g,w)}}))})}function KV(t){if(t.type!==Jb)return!1;try{if(!t.target||t.target._sentryId!==Zb)return!1}catch{}return!0}function QV(t,r){return t!=="keypress"?!1:r!=null&&r.tagName?!(r.tagName==="INPUT"||r.tagName==="TEXTAREA"||r.isContentEditable):!0}function nk(t,r=!1){return i=>{if(!i||i._sentryCaptured)return;const o=XV(i);if(QV(i.type,o))return;Ao(i,"_sentryCaptured",!0),o&&!o._sentryId&&Ao(o,"_sentryId",ua());
355const l=i.type==="keypress"?"input":i.type;KV(i)||(t({event:i,name:l,global:r}),Jb=i.type,Zb=o?o._sentryId:void 0),clearTimeout(tk),tk=Er.setTimeout(()=>{Zb=void 0,Jb=void 0},WV)}}function XV(t){try{return t.target}catch{return null}}let Oh;function gD(t){const r="history";Is(r,t),Ns(r,JV)}function JV(){if(Er.addEventListener("popstate",()=>{const r=Er.location.href,i=Oh;if(Oh=r,i===r)return;Ha("history",{from:i,to:r})}),!wV())return;function t(r){return function(...i){const o=i.length>2?i[2]:void 0;if(o){const l=Oh,u=ZV(String(o));if(Oh=u,l===u)return r.apply(this,i);Ha("history",{from:l,to:u})}return r.apply(this,i)}}Vr(Er.history,"pushState",t),Vr(Er.history,"replaceState",t)}function ZV(t){try{return new URL(t,Er.location.origin).toString()}catch{return t}}const Hh={};function e6(t){const r=Hh[t];if(r)return r;let i=Er[t];if(Kb(i))return Hh[t]=i.bind(Er);const o=Er.document;if(o&&typeof o.createElement=="function")try{const l=o.createElement("iframe");l.hidden=!0,o.head.appendChild(l);const u=l.contentWindow;u!=null&&u[t]&&(i=u[t]),o.head.removeChild(l)}catch(l){$V&&Be.warn(`Could not create sandbox iframe for ${t} check, bailing to window.${t}: `,l)}return i&&(Hh[t]=i.bind(Er))}function t6(t){Hh[t]=void 0}const jd="__sentry_xhr_v3__";function n6(t){const r="xhr";Is(r,t),Ns(r,r6)}function r6(){if(!Er.XMLHttpRequest)return;const t=XMLHttpRequest.prototype;t.open=new Proxy(t.open,{apply(r,i,o){const l=new Error,u=$i()*1e3,d=zi(o[0])?o[0].toUpperCase():void 0,h=a6(o[1]);if(!d||!h)return r.apply(i,o);i[jd]={method:d,url:h,request_headers:{}},d==="POST"&&h.match(/sentry_key/)&&(i.__sentry_own_request__=!0);const m=()=>{const g=i[jd];if(g&&i.readyState===4){try{g.status_code=i.status}catch{}const w={endTimestamp:$i()*1e3,startTimestamp:u,xhr:i,virtualError:l};Ha("xhr",w)}};return"onreadystatechange"in i&&typeof i.onreadystatechange=="function"?i.onreadystatechange=new Proxy(i.onreadystatechange,{apply(g,w,b){return m(),g.apply(w,b)}}):i.addEventListener("readystatechange",m),i.setRequestHeader=new Proxy(i.setRequestHeader,{apply(g,w,b){const[E,T]=b,O=w[jd];return O&&zi(E)&&zi(T)&&(O.request_headers[E.toLowerCase()]=T),g.apply(w,b)}}),r.apply(i,o)}}),t.send=new Proxy(t.send,{apply(r,i,o){const l=i[jd];if(!l)return r.apply(i,o);o[0]!==void 0&&(l.body=o[0]);const u={startTimestamp:$i()*1e3,xhr:i};return Ha("xhr",u),r.apply(i,o)}})}function a6(t){if(zi(t))return t;try{return t.toString()}catch{}}function i6(t){if(typeof Element>"u")return!1;try{return t instanceof Element}catch{return!1}}const o6=40;function s6(t,r=e6("fetch")){let i=0,o=0;async function l(u){const d=u.body.length;i+=d,o++;const h={body:u.body,method:"POST",referrerPolicy:"strict-origin",headers:t.headers,keepalive:i<=6e4&&o<15,...t.fetchOptions};try{const m=await r(t.url,h);return{statusCode:m.status,headers:{"x-sentry-rate-limits":m.headers.get("X-Sentry-Rate-Limits"),"retry-after":m.headers.get("Retry-After")}}}catch(m){throw t6("fetch"),m}finally{i-=d,o--}}return DW(t,l,Yw(t.bufferSize||o6))}const Um=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,l6=30,c6=50;function ew(t,r,i,o){const l={filename:t,function:r==="<anonymous>"?Ms:r,in_app:!0};return i!==void 0&&(l.lineno=i),o!==void 0&&(l.colno=o),l}const u6=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,d6=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,p6=/\((\S*)(?::(\d+))(?::(\d+))\)/,f6=/at (.+?) ?\(data:(.+?),/,h6=t=>{var l;const r=t.match(f6);if(r)return{filename:`<data:${r[2]}>`,function:r[1]};const i=u6.exec(t);if(i){const[,u,d,h]=i;return ew(u,Ms,+d,+h)}const o=d6.exec(t);if(o){if(((l=o[2])==null?void 0:l.indexOf("eval"))===0){const m=p6.exec(o[2]);m&&(o[2]=m[1],o[3]=m[2],o[4]=m[3])}const[d,h]=_D(o[1]||Ms,o[2]);return ew(h,d,o[3]?+o[3]:void 0,o[4]?+o[4]:void 0)}},m6=[l6,h6],y6=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,g6=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,_6=t=>{const r=y6.exec(t);if(r){if(r[3]&&r[3].indexOf(" > eval")>-1){const u=g6.exec(r[3]);u&&(r[1]=r[1]||"eval",r[3]=u[1],r[4]=u[2],r[5]="")}let o=r[3],l=r[1]||Ms;return[l,o]=_D(l,o),ew(o,l,r[4]?+r[4]:void 0,r[5]?+r[5]:void 0)}},v6=[c6,_6],b6=[m6,v6],w6=S1(...b6),_D=(t,r)=>{const i=t.indexOf("safari-extension")!==-1,o=t.indexOf("safari-web-extension")!==-1;return i||o?[t.indexOf("@")!==-1?t.split("@")[0]:Ms,i?`safari-extension:${r}
355`:`safari-web-extension:${r}`]:[t,r]},Ph=1024,S6="Breadcrumbs",x6=(t={})=>{const r={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...t};return{name:S6,setup(i){r.console&&cV(T6(i)),r.dom&&VV(R6(i,r.dom)),r.xhr&&n6(k6(i)),r.fetch&&EV(j6(i)),r.history&&gD(D6(i)),r.sentry&&i.on("beforeSendEvent",C6(i))}}},E6=x6;function C6(t){return function(i){dr()===t&&qs({category:`sentry.${i.type==="transaction"?"transaction":"event"}`,event_id:i.event_id,level:i.level,message:Ts(i)},{event:i})}}function R6(t,r){return function(o){if(dr()!==t)return;let l,u,d=typeof r=="object"?r.serializeAttribute:void 0,h=typeof r=="object"&&typeof r.maxStringLength=="number"?r.maxStringLength:void 0;h&&h>Ph&&(Um&&Be.warn(`\`dom.maxStringLength\` cannot exceed ${Ph}, but a value of ${h} was configured. Sentry will use ${Ph} instead.`),h=Ph),typeof d=="string"&&(d=[d]);try{const g=o.event,w=O6(g)?g.target:g;l=yD(w,{keyAttrs:d,maxStringLength:h}),u=kV(w)}catch{l="<unknown>"}if(l.length===0)return;const m={category:`ui.${o.name}`,message:l};u&&(m.data={"ui.component_name":u}),qs(m,{event:o.event,name:o.name,global:o.global})}}function T6(t){return function(i){if(dr()!==t)return;const o={category:"console",data:{arguments:i.args,logger:"console"},level:dV(i.level),message:dT(i.args," ")};if(i.level==="assert")if(i.args[0]===!1)o.message=`Assertion failed: ${dT(i.args.slice(1)," ")||"console.assert"}`,o.data.arguments=i.args.slice(1);else return;qs(o,{input:i.args,level:i.level})}}function k6(t){return function(i){if(dr()!==t)return;const{startTimestamp:o,endTimestamp:l}=i,u=i.xhr[jd];if(!o||!l||!u)return;const{method:d,url:h,status_code:m,body:g}=u,w={method:d,url:h,status_code:m},b={xhr:i.xhr,input:g,startTimestamp:o,endTimestamp:l},E={category:"xhr",data:w,type:"http",level:pD(m)};t.emit("beforeOutgoingRequestBreadcrumb",E,b),qs(E,b)}}function j6(t){return function(i){if(dr()!==t)return;const{startTimestamp:o,endTimestamp:l}=i;if(l&&!(i.fetchData.url.match(/sentry_key/)&&i.fetchData.method==="POST"))if(i.error){const u={data:i.error,input:i.args,startTimestamp:o,endTimestamp:l},d={category:"fetch",data:i.fetchData,level:"error",type:"http"};t.emit("beforeOutgoingRequestBreadcrumb",d,u),qs(d,u)}else{const u=i.response,d={...i.fetchData,status_code:u==null?void 0:u.status},h={input:i.args,response:u,startTimestamp:o,endTimestamp:l},m={category:"fetch",data:d,type:"http",level:pD(d.status_code)};t.emit("beforeOutgoingRequestBreadcrumb",m,h),qs(m,h)}}}function D6(t){return function(i){if(dr()!==t)return;let o=i.from,l=i.to;const u=fb(Wt.location.href);let d=o?fb(o):void 0;const h=fb(l);d!=null&&d.path||(d=u),u.protocol===h.protocol&&u.host===h.host&&(l=h.relative),u.protocol===d.protocol&&u.host===d.host&&(o=d.relative),qs({category:"navigation",data:{from:o,to:l}})}}function O6(t){return!!t&&!!t.target}const P6="EventTarget,Window,Node,ApplicationCache,AudioTrackList,BroadcastChannel,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload".split(","),A6="BrowserApiErrors",L6=(t={})=>{const r={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,unregisterOriginalCallbacks:!1,...t};return{name:A6,setupOnce(){r.setTimeout&&Vr(Wt,"setTimeout",rk),r.setInterval&&Vr(Wt,"setInterval",rk),r.requestAnimationFrame&&Vr(Wt,"requestAnimationFrame",q6),r.XMLHttpRequest&&"XMLHttpRequest"in Wt&&Vr(XMLHttpRequest.prototype,"send",I6);const i=r.eventTarget;i&&(Array.isArray(i)?i:P6).forEach(l=>N6(l,r))}}},M6=L6;function rk(t){return function(...r){const i=r[0];return r[0]=gc(i,{mechanism:{handled:!1,type:`auto.browser.browserapierrors.${Po(t)}`}}),t.apply(this,r)}}function q6(t){return function(r){return t.apply(this,[gc(r,{mechanism:{data:{handler:Po(t)},handled:!1,type:"auto.browser.browserapierrors.requestAnimationFrame"}})])}}function I6(t){return function(...r){const i=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(l=>{l in i&&typeof i[l]=="function"&&Vr(i,l,function(u){const d={mechanism:{data:{handler:Po(u)},handled:!1,type:`auto.browser.browserapierrors.xhr.${l}`}},h=zw(u);
355return h&&(d.mechanism.data.handler=Po(h)),gc(u,d)})}),t.apply(this,r)}}function N6(t,r){var l,u;const o=(l=Wt[t])==null?void 0:l.prototype;(u=o==null?void 0:o.hasOwnProperty)!=null&&u.call(o,"addEventListener")&&(Vr(o,"addEventListener",function(d){return function(h,m,g){try{B6(m)&&(m.handleEvent=gc(m.handleEvent,{mechanism:{data:{handler:Po(m),target:t},handled:!1,type:"auto.browser.browserapierrors.handleEvent"}}))}catch{}return r.unregisterOriginalCallbacks&&U6(this,h,m),d.apply(this,[h,gc(m,{mechanism:{data:{handler:Po(m),target:t},handled:!1,type:"auto.browser.browserapierrors.addEventListener"}}),g])}}),Vr(o,"removeEventListener",function(d){return function(h,m,g){try{const w=m.__sentry_wrapped__;w&&d.call(this,h,w,g)}catch{}return d.call(this,h,m,g)}}))}function B6(t){return typeof t.handleEvent=="function"}function U6(t,r,i){t&&typeof t=="object"&&"removeEventListener"in t&&typeof t.removeEventListener=="function"&&t.removeEventListener(r,i)}const F6=(t={})=>{const r=t.lifecycle??"route";return{name:"BrowserSession",setupOnce(){if(typeof Wt.document>"u"){Um&&Be.warn("Using the `browserSessionIntegration` in non-browser environments is not supported.");return}MT({ignoreDuration:!0}),mb();const i=Io();let o=i.getUser();i.addScopeListener(l=>{const u=l.getUser();((o==null?void 0:o.id)!==(u==null?void 0:u.id)||(o==null?void 0:o.ip_address)!==(u==null?void 0:u.ip_address))&&(mb(),o=u)}),r==="route"&&gD(({from:l,to:u})=>{l!==u&&(MT({ignoreDuration:!0}),mb())})}}},z6="CultureContext",$6=()=>({name:z6,preprocessEvent(t){var i;const r=ak();r&&(t.contexts={...t.contexts,culture:{...r,...(i=t.contexts)==null?void 0:i.culture}})},processSegmentSpan(t){const r=ak();r&&W1(t,{"culture.locale":r.locale,"culture.timezone":r.timezone,"culture.calendar":r.calendar})}}),H6=$6;function ak(){try{const t=Wt.Intl;if(!t)return;const r=t.DateTimeFormat().resolvedOptions();return{locale:r.locale,timezone:r.timeZone,calendar:r.calendar}}catch{return}}const G6="GlobalHandlers",W6=(t={})=>{const r={onerror:!0,onunhandledrejection:!0,...t};return{name:G6,setupOnce(){Error.stackTraceLimit=50},setup(i){r.onerror&&(Y6(i),ik("onerror")),r.onunhandledrejection&&(K6(i),ik("onunhandledrejection"))}}},V6=W6;function Y6(t){i4(r=>{const{stackParser:i,attachStacktrace:o}=vD();if(dr()!==t||hD())return;const{msg:l,url:u,line:d,column:h,error:m}=r,g=J6(Xw(i,m||l,void 0,o,!1),u,d,h);g.level="error",Y1(g,{originalException:m,mechanism:{handled:!1,type:"auto.browser.global_handlers.onerror"}})})}function K6(t){s4(r=>{const{stackParser:i,attachStacktrace:o}=vD();if(dr()!==t||hD())return;const l=Q6(r),u=Zd(l)?X6(l):Xw(i,l,void 0,o,!0);u.level="error",Y1(u,{originalException:l,mechanism:{handled:!1,type:"auto.browser.global_handlers.onunhandledrejection"}})})}function Q6(t){if(Zd(t))return t;try{if("reason"in t)return t.reason;if("detail"in t&&"reason"in t.detail)return t.detail.reason}catch{}return t}function X6(t){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(t)}`}]}}}function J6(t,r,i,o){const l=t.exception=t.exception||{},u=l.values=l.values||[],d=u[0]=u[0]||{},h=d.stacktrace=d.stacktrace||{},m=h.frames=h.frames||[];return m.length===0&&m.push({colno:o,lineno:i,filename:Z6(r)??Kw(),function:Ms,in_app:!0}),t}function ik(t){Um&&Be.log(`Global Handler attached: ${t}`)}function vD(){const t=dr();return(t==null?void 0:t.getOptions())||{stackParser:()=>[],attachStacktrace:!1}}function Z6(t){if(!(!zi(t)||t.length===0))return t.startsWith("data:")?`<${HG(t,!1)}>`:t}const e8=()=>({name:"HttpContext",preprocessEvent(t){var o;if(!Wt.navigator&&!Wt.location&&!Wt.document)return;const r=ek(),i={...r.headers,...(o=t.request)==null?void 0:o.headers};t.request={...r,...t.request,headers:i}},processSegmentSpan(t){if(!Wt.navigator&&!Wt.location&&!Wt.document)return;const r=ek();W1(t,{"url.full":r.url||void 0,"http.request.header.user_agent":r.headers["User-Agent"],"http.request.header.referer":r.headers.Referer})}}),t8="cause",n8=5,r8="LinkedErrors",a8=(t={})=>{const r=t.limit||n8,i=t.key||t8;return{name:r8,preprocessEvent(o,l,u){const d=u.getOptions();sV(Qw,d.stackParser,i,r,o,l)}}},i8=a8,o8=/^HTML(\w*)Element$/;function bD(t){if(typeof window<"u"&&t===window)return"[Window]";if(typeof document<"u"&&t===document)return"[Document]";if(i6(t)){const r=s8(t);if(o8.test(r))return`[HTMLElement: ${yD(t)}]`}}function s8(t){const r=Object.getPrototypeOf(t);return r!=null&&r.constructor?r.constructor.name:"null prototype"}function l8(){return c8()?(Um&&jc(()=>{console.error("[Sentry] You cannot use Sentry.init() in a browser extension, see: https://docs.sentry.io/platforms/javascript/best-practices/browser-extensions/")}),!0):!1}function c8(){var l;if(typeof Wt.window>"u")return!1;const t=Wt;if(t.nw)return!1;const r=t.chrome||t.browser;if(!((l=r==null?void 0:r.runtime)!=null&&l.id))return!1;const i=Kw();return!(Wt===Wt.top&&/^(?:chrome-extension|moz-extension|ms-browser-extension|safari-web-extension):\/\//.test(i))}function u8(t){return[ZW(),KW(),bV(),M6(),E6(),V6(),i8(),hV(),e8(),H6(),F6()]}function d8(t={}){const r=!t.skipBrowserExtensionCheck&&l8();let i=t.defaultIntegrations==null?u8():t.defaultIntegrations;const o={...t,enabled:r?!1:t.enabled,stackParser:r4(t.stackParser||w6),integrations:dW({integrations:t.integrations,defaultIntegrations:i}),transport:t.transport||s6};return k1(bD),$W(FV,o)}function p8(t){return Ud(t)&&"nativeEvent"in t&&"preventDefault"in t&&"stopPropagation"in t}function f8(t){const r={...t};lD(r,"react"),aW("react",{version:k.version});const i=d8(r);return k1(h8),i}function h8(t){return p8(t)?"[SyntheticEvent]":bD(t)}const m8="https://c9f9daba12fea431ee5c11af8c548a9a@o4511540468252672.ingest.de.sentry.io/4511540595720272",y8=[/Failed to fetch dynamically imported module/i,/Importing a module script failed/i,/text\/html.+valid JavaScript MIME type/i,/Unable to preload CSS/i,/Invalid call to runtime\.sendMessage\(\)\. Tab not found
355/i,/Lock was stolen by another request/i];function g8(t){return t instanceof Error?t.message:typeof t=="string"?t:null}function _8(t){var i;return(((i=t.exception)==null?void 0:i.values)||[]).flatMap(o=>{var l;return((l=o.stacktrace)==null?void 0:l.frames)||[]}).some(o=>{const l=o.filename||"",u=o.module||"";return l.includes("/src/")||l.includes("../../src/")||u.startsWith("src.")})}function v8(t,r){return r.some(o=>/Failed to execute 'removeChild' on 'Node'/i.test(o))&&!_8(t)}function b8(t,r){var o;const i=[t.message,...(((o=t.exception)==null?void 0:o.values)||[]).flatMap(l=>[l.type,l.value]),r?g8(r.originalException):null].filter(l=>!!l);return v8(t,i)?!0:i.some(l=>y8.some(u=>u.test(l)))}function w8(){f8({dsn:m8,environment:"production",release:"681135a465a1f5eaebdc02ca3639e6f33ee00756",sendDefaultPii:!1,beforeSend:(t,r)=>b8(t,r)?null:t})}function S8(t,r){V1(t,r?{extra:r}:void 0)}const wD="chunk-reload-attempted:",x8=/Failed to fetch dynamically imported module|Importing a module script failed|text\/html.+valid JavaScript MIME type|Unable to preload CSS/i,um="__chunk_reload",E8=2;function SD(t){const r=t instanceof Error?t.message:String(t);return x8.test(r)}function C8(t){if(typeof window>"u")return 0;let r=null;try{r=window.sessionStorage.getItem(t)}catch{r=null}const i=r?Number.parseInt(r,10):0;return Number.isFinite(i)?i:0}function R8(t,r){try{return window.sessionStorage.setItem(t,String(r)),!0}catch{return!1}}function tw(t){try{window.sessionStorage.removeItem(t)}catch{}}function T8(){const t=new URL(window.location.href);t.searchParams.set(um,Date.now().toString()),window.location.replace(t.toString())}function xD(){if(typeof window>"u")return;const t=new URL(window.location.href);t.searchParams.has(um)&&(t.searchParams.delete(um),window.history.replaceState(window.history.state,"",t.toString()))}function ED(t){if(typeof window>"u")return!1;const r=`${wD}${t}`,i=C8(r);return i>=E8?(tw(r),!1):!R8(r,i+1)&&new URL(window.location.href).searchParams.has(um)?!1:(T8(),!0)}async function k8(t,r){const i=`${wD}${r}`;try{const o=await t();return typeof window<"u"&&(tw(i),xD()),o}catch(o){if(SD(o)&&ED(r))return new Promise(()=>{});throw typeof window<"u"&&tw(i),o}}function Dt(t,r){return k.lazy(()=>k8(t,r))}class j8 extends k.Component{constructor(){super(...arguments);gh(this,"state",{hasError:!1,error:null,errorInfo:null});gh(this,"handleRefresh",()=>{window.location.reload()})}static getDerivedStateFromError(i){return{hasError:!0,error:i,errorInfo:null}}componentDidCatch(i,o){if(SD(i)&&ED("app-shell")){aT.warn("Chunk load failed, reloading app with cache bust.",i);return}aT.error("Uncaught error:",i,o),S8(i,{componentStack:o.componentStack}),this.setState({error:i,errorInfo:o})}render(){var i,o;return this.state.hasError?H.jsxs(Od,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100vh",p:3,textAlign:"center"},children:[H.jsx(Fh,{variant:"h4",gutterBottom:!0,color:"error",children:"Something went wrong"}),H.jsx(Fh,{variant:"body1",color:"text.secondary",sx:{mb:3},children:"We're sorry, but there was an error loading this page."}),H.jsx(_1,{variant:"contained",startIcon:H.jsx(Y3,{}),onClick:this.handleRefresh,children:"Refresh Page"}),H.jsxs(Od,{sx:{mt:4,textAlign:"left",width:"min(960px, 100%)"},children:[H.jsx(Fh,{variant:"h6",gutterBottom:!0,children:"Error Details:"}),H.jsxs(Od,{component:"pre",sx:{m:0,whiteSpace:"pre-wrap",backgroundColor:"transparent",color:"text.primary",border:"1px solid",borderColor:"divider",p:2,borderRadius:1,maxWidth:"100%",overflow:"auto"},children:[(i=this.state.error)==null?void 0:i.toString(),`
356
357`,(o=this.state.errorInfo)==null?void 0:o.componentStack]})]})]}):this.props.children}}const D8="modulepreload",O8=function(t){return"/"+t},ok={},Ot=function(r,i,o){let l=Promise.resolve();if(i&&i.length>0){document.getElementsByTagName("link");const d=document.querySelector("meta[property=csp-nonce]"),h=(d==null?void 0:d.nonce)||(d==null?void 0:d.getAttribute("nonce"));l=Promise.allSettled(i.map(m=>{if(m=O8(m),m in ok)return;ok[m]=!0;const g=m.endsWith(".css"),w=g?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${m}"]${w}`))return;const b=document.createElement("link");if(b.rel=g?"stylesheet":D8,g||(b.as="script"),b.crossOrigin="",b.href=m,h&&b.setAttribute("nonce",h),document.head.appendChild(b),g)return new Promise((E,T)=>{b.addEventListener("load",E),b.addEventListener("error",()=>T(new Error(`Unable to preload CSS for ${m}`)))})}))}function u(d){const h=new Event("vite:preloadError",{cancelable:!0});if(h.payload=d,window.dispatchEvent(h),!h.defaultPrevented)throw d}return l.then(d=>{for(const h of d||[])h.status==="rejected"&&u(h.reason);return r().catch(u)})};function P8(){return H.jsx("main",{style:{minHeight:"100vh",display:"grid",placeItems:"center",padding:"2rem",background:"#0c0b0e",color:"#f4f1ea",textAlign:"center"},children:H.jsxs("div",{children:[H.jsx("p",{style:{color:"#d4a853",fontFamily:"monospace"},children:"404"}),H.jsx("h1",{children:"That page is not in this draft."}),H.jsx("p",{style:{color:"#b7b2a8"},children:"The address may have changed, or the page may no longer exist."}),H.jsx(hw,{style:{color:"#d4a853"},to:"/",children:"Return to BeatBandit"})]})})}const A8=Dt(()=>Ot(()=>import("./AuthProviderRoute-to8w50M_.js"),__vite__mapDeps([0,1,2])),"AuthProviderRoute"),L8=Dt(()=>Ot(()=>import("./ProtectedRoute-CwNFzpYP.js"),__vite__mapDeps([3,4,1,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36])),"ProtectedRoute"),M8=Dt(()=>Ot(()=>import("./ProjectList-ZHEMVM-g.js"),__vite__mapDeps([37,10,11,12,9,2,13,38,39,40,41,42,43,44,45,46,47,48,49,1,4,5,50,36,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,7,14,81,82,83,84,85,86,87,88,89,90,91])).then(t=>({default:t.ProjectList})),"ProjectList"),q8=Dt(()=>Ot(()=>import("./ProjectView-Mi3StT_6.js").then(t=>t.af),__vite__mapDeps([92,9,2,7,76,42,46,53,48,45,43,44,11,57,10,12,13,38,36,61,4,1,5,62,14,8,64,41,47,93,40,87,73,55,74,75,58,94,89,77,52,65,66,67,68,95,96,97,90,98,99,85,100,82,101])).then(t=>({default:t.ProjectView})),"ProjectView"),I8=Dt(()=>Ot(()=>import("./CreditPurchase-BWOXsjG5.js"),__vite__mapDeps([102,4,1,2,5,103,11,9,45,73,43,44,74,41,42,55,48,47,51,10,12,13,104,66,67,68,36,65,52,53,90,91])).then(t=>({default:t.CreditPurchase})),"CreditPurchase"),sk=Dt(()=>Ot(()=>import("./CreditPurchaseSuccess-CcJaFRZX.js"),__vite__mapDeps([105,106,76,42,46,53,48,107,10,11,12,9,2,13,104,66,67,68,44,43,45,36,55,65])).then(t=>({default:t.CreditPurchaseSuccess}
357)),"CreditPurchaseSuccess"),lk=Dt(()=>Ot(()=>import("./BeatLibraryPage-2NG8cRxH.js"),__vite__mapDeps([108,109,110])),"BeatLibrary"),N8=Dt(()=>Ot(()=>import("./BeatBanditWall-Ds6vZ21E.js"),__vite__mapDeps([111,112,113,114,115,45,116,85,68,65,66,67])),"BeatBanditWall"),B8=Dt(()=>Ot(()=>import("./LandingPage-C3q8gHmw.js"),__vite__mapDeps([117,4,1,2,5,109,110,81,82,118])),"LandingPage"),ck=Dt(()=>Ot(()=>import("./AuthPage-DAbMqzUP.js"),__vite__mapDeps([119,2,4,1,5,81,82,104,66,67,68,44,43,45,36,65,64,46,41,42])),"AuthPage"),U8=Dt(()=>Ot(()=>import("./ResetPasswordPage-YeCwLIiw.js"),__vite__mapDeps([120,1,2,104,66,67,68,44,65,36,43,45,64,46,41,42])),"ResetPasswordPage"),F8=Dt(()=>Ot(()=>import("./AuthCallback-CSrJrI1F.js"),__vite__mapDeps([121,1,2,5,43,44,45,65,66,67,68,36])),"AuthCallback"),z8=Dt(()=>Ot(()=>import("./AccountPage-uYOswElr.js"),__vite__mapDeps([122,50,11,9,2,36,43,44,45,51,52,53,48,40,41,42,46,47,54,55,56,57,4,1,5,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,12,123,124,99,125,98,39,49,126,101,127,104,75,74,128,129])).then(t=>({default:t.AccountPage})),"AccountPage"),$8=Dt(()=>Ot(()=>import("./ExportDownloadPage-bIyvbj9S.js"),__vite__mapDeps([130,9,2,4,1,5,131,11,57,13,14,104,66,67,68,36,43,44,45])),"ExportDownloadPage"),H8=Dt(()=>Ot(()=>import("./AdminRoute-CvBRi6WG.js"),__vite__mapDeps([132,103,11,4,1,2,5,9,36,43,44,45])).then(t=>({default:t.AdminRoute})),"AdminRoute"),G8=Dt(()=>Ot(()=>import("./AdminDashboard-BTgZuDWN.js").then(t=>t.A),__vite__mapDeps([133,11,57,9,2,36,43,44,45,64,46,41,42,134,135,136,48,93,40,47,87,71,101,85,68,59,127,137,80,128,60,138])).then(t=>({default:t.AdminDashboard})),"AdminDashboard"),W8=Dt(()=>Ot(()=>import("./PrivacyPolicy-1P84OW15.js"),__vite__mapDeps([139,77,79,65,66,67,68,45,80,7,2,9,14,13,10,11,12,104,127,44,36])),"PrivacyPolicy"),V8=Dt(()=>Ot(()=>import("./TermsOfService-BDFXh7YT.js"),__vite__mapDeps([140,77,79,65,66,67,68,45,80,7,2,9,14,13,10,11,12,104,127,44,36])),"TermsOfService"),Y8=Dt(()=>Ot(()=>import("./CookiePolicy-BQYx7skW.js"),__vite__mapDeps([141,77,79,65,66,67,68,45,80,7,2,9,14,13,10,11,12,104,127,44,36])),"CookiePolicy"),K8=Dt(()=>Ot(()=>import("./ReturnPolicy--u4bfnNC.js"),__vite__mapDeps([142,77,79,65,66,67,68,45,80,7,2,9,14,13,10,11,12,104,127,44])),"ReturnPolicy"),Q8=Dt(()=>Ot(()=>import("./InvitationPage-vk2eT6X_.js"),__vite__mapDeps([143,9,2,104,66,67,68,36,44,144,145,137])).then(t=>({default:t.InvitationPage})),"InvitationPage"),X8=Dt(()=>Ot(()=>import("./PricingPage-BKYZ_kzT.js"),__vite__mapDeps([146,109,110,4,1,2,5,9,147])).then(t=>({default:t.PricingPage})),"PricingPage"),J8=Dt(()=>Ot(()=>import("./ProjectInvitePage-DPUOU-Z0.js"),__vite__mapDeps([148,9,2,13,14,100,4,1,5,104,66,67,68,36,44,144,145])).then(t=>({default:t.ProjectInvitePage})),"ProjectInvitePage"),Z8=Dt(()=>Ot(()=>import("./OAuthConsentPage-SD7rLqPw.js"),__vite__mapDeps([149,4,1,2,5,126,65,66,67,68,36,104,44,43,45])),"OAuthConsentPage"),eY=Dt(()=>Ot(()=>import("./McpDocsApp-Bz6XpHM_.js"),__vite__mapDeps([150,109,110,151])),"McpDocsApp"),tY=Dt(()=>Ot(()=>import("./WritePage-DuUQccFk.js"),__vite__mapDeps([152,109,110,153,154])),"WritePage"),nY=Dt(()=>Ot(()=>import("./ProducePage-CxUdYw6s.js"),__vite__mapDeps([155,109,110,153,154,156])),"ProducePage"),rY=Dt(()=>Ot(()=>import("./SamplesPage-CV62xHOc.js"),__vite__mapDeps([157,109,110,158])),"SamplesPage");function aY(){const{hash:t}=Lr();return H.jsx(zU,{replace:!0,to:{pathname:"/write",hash:t}})}const iY=()=>H.jsx("div",{style:{minHeight:"40vh",display:"flex",alignItems:"center",justifyContent:"center"},children:"Loading..."});function oY(){return H.jsx(k.Suspense,{fallback:H.jsx(iY,{}),children:H.jsxs(HU,{children:[H.jsxs(mt,{element:H.jsx(A8,{}),children:[H.jsx(mt,{path:"/",element:H.jsx(B8,{})}),H.jsx(mt,{path:"/debug/corkboard",element:H.jsx(N8,{})}),H.jsx(mt,{path:"/sign-in",element:H.jsx(ck,{view:"sign_in"})}),H.jsx(mt,{path:"/sign-up",element:H.jsx(ck,{view:"sign_up"})}),H.jsx(mt,{path:"/auth/callback",element:H.jsx(F8,{})}),H.jsx(mt,{path:"/oauth/consent",element:H.jsx(Z8,{})}),H.jsx(mt,{path:"/reset-password",element:H.jsx(U8,{})}),H.jsx(mt,{path:"/project-invite/:token",element:H.jsx(J8,{})}),H.jsx(mt,{path:"/exports/:exportId",element:H.jsx($8,{})}),H.jsx(mt,{path:"/pricing",element:H.jsx(X8,{})}),H.jsxs(mt,{element:H.jsx(L8,{}),children:[H.jsx(mt,{path:"/dashboard",element:H.jsx(M8,{})}),H.jsx(mt,{path:"/projects/:projectName",element:H.jsx(q8,{})}),H.jsx(mt,{path:"/account",element:H.jsx(z8,{})}),H.jsx(mt,{path:"/credits",element:H.jsx(I8,{})}),H.jsx(mt,{path:"/credits/success",element:H.jsx(sk,{})}),H.jsx(mt,{path:"/payment/success",element:H.jsx(sk,{})}),H.jsx(mt,{path:"/admin",element:H.jsx(H8,{children:H.jsx(G8,{})})})]})]}),H.jsx(mt,{path:"/write",element:H.jsx(tY,{})}),H.jsx(mt,{path:"/produce",element:H.jsx(nY,{})}),H.jsx(mt,{path:"/features",element:H.jsx(aY,{})}),H.jsx(mt,{path:"/samples",element:H.jsx(rY,{})}),H.jsx(mt,{path:"/library",element:H.jsx(lk,{})}),H.jsx(mt,{path:"/library/:movieId",element:H.jsx(lk,{})}),H.jsx(mt,{path:"/invite/:token",element:H.jsx(Q8,{})}),H.jsx(mt,{path:"/mcp/*",element:H.jsx(eY,{})}),H.jsx(mt,{path:"/privacy",element:H.jsx(W8,{})}),H.jsx(mt,{path:"/terms",element:H.jsx(V8,{})}),H.jsx(mt,{path:"/cookies",element:H.jsx(Y8,{})}),H.jsx(mt,{path:"/return-policy",element:H.jsx(K8,{})}),H.jsx(mt,{path:"*",element:H.jsx(P8,{})})]})})}const sY=()=>{const t=Lr();return k.useEffect(()=>{if(["/projects"].some(m=>t.pathname.startsWith(m)))return;const o="f76a2588-924a-4de0-b846-70f6037ca43f";if(document.querySelector("script[data-termly-script]"))return;const l=()=>{if(document.querySelector("script[data-termly-script]"))return;
357const m=document.createElement("script");m.type="text/javascript",m.src=`https://app.termly.io/resource-blocker/${o}?autoBlock=on`,m.setAttribute("data-termly-script","true"),m.async=!0,document.head.appendChild(m)};if(!(t.pathname==="/"||t.pathname.startsWith("/mcp"))){l();return}let d;const h=()=>{"requestIdleCallback"in window?d=window.requestIdleCallback(l,{timeout:2e3}):d=globalThis.setTimeout(l,1e3)};return document.readyState==="complete"?h():window.addEventListener("load",h,{once:!0}),()=>{window.removeEventListener("load",h),d!==void 0&&("cancelIdleCallback"in window?window.cancelIdleCallback(d):globalThis.clearTimeout(d))}},[t.pathname]),null};var uk={},lY="@vercel/analytics",cY="1.5.0",uY=()=>{window.va||(window.va=function(...r){(window.vaq=window.vaq||[]).push(r)})};function CD(){return typeof window<"u"}function RD(){try{const t="development";if(t==="development"||t==="test")return"development"}catch{}return"production"}function dY(t="auto"){if(t==="auto"){window.vam=RD();return}window.vam=t}function pY(){return(CD()?window.vam:RD())||"production"}function nw(){return pY()==="development"}function fY(t){return t.scriptSrc?t.scriptSrc:nw()?"https://va.vercel-scripts.com/v1/script.debug.js":t.basePath?`${t.basePath}/insights/script.js`:"/_vercel/insights/script.js"}function hY(t={debug:!0}){var r;if(!CD())return;dY(t.mode),uY(),t.beforeSend&&((r=window.va)==null||r.call(window,"beforeSend",t.beforeSend));const i=fY(t);if(document.head.querySelector(`script[src*="${i}"]`))return;const o=document.createElement("script");o.src=i,o.defer=!0,o.dataset.sdkn=lY+(t.framework?`/${t.framework}`:""),o.dataset.sdkv=cY,t.disableAutoTrack&&(o.dataset.disableAutoTrack="1"),t.endpoint?o.dataset.endpoint=t.endpoint:t.basePath&&(o.dataset.endpoint=`${t.basePath}/insights`),t.dsn&&(o.dataset.dsn=t.dsn),o.onerror=()=>{const l=nw()?"Please check if any ad blockers are enabled and try again.":"Be sure to enable Web Analytics for your project and deploy again. See https://vercel.com/docs/analytics/quickstart for more information.";console.log(`[Vercel Web Analytics] Failed to load script from ${i}. ${l}`)},nw()&&t.debug===!1&&(o.dataset.debug="false"),document.head.appendChild(o)}function mY({route:t,path:r}){var i;(i=window.va)==null||i.call(window,"pageview",{route:t,path:r})}function yY(){if(!(typeof process>"u"||typeof uk>"u"))return uk.REACT_APP_VERCEL_OBSERVABILITY_BASEPATH}function gY(t){return k.useEffect(()=>{var r;t.beforeSend&&((r=window.va)==null||r.call(window,"beforeSend",t.beforeSend))},[t.beforeSend]),k.useEffect(()=>{hY({framework:t.framework||"react",basePath:t.basePath??yY(),...t.route!==void 0&&{disableAutoTrack:!0},...t})},[]),k.useEffect(()=>{t.route&&t.path&&mY({route:t.route,path:t.path})},[t.route,t.path]),null}const _Y=()=>H.jsx(gY,{}),vY=1,bY="Deterministic output. Rebuild with `npm run mcp:build-docs-bundle`. Do not hand-edit.",wY=[{id:"core_project",title:"Core Project",tagline:"Discover, create, and read BeatBandit projects and templates.",tool_names:["project_mutate","project_query","template_list"]},{id:"story_graph",title:"Story Graph",tagline:"Read and mutate the story-graph primitives: cards, scenes, and the graph itself.",tool_names:["story_entity_propose","story_entity_query","story_mutate"]},{id:"screenplay",title:"Screenplay",tagline:"Read, propose, and apply changes to structured screenplay documents.",tool_names:["screenplay_draft_apply","screenplay_edit_apply","screenplay_edit_propose","screenplay_import_run","screenplay_proposal_create","screenplay_proposal_query","screenplay_read","screenplay_rewrite_run","screenplay_snapshot_apply"]},{id:"story_workflows",title:"Story Workflows",tagline:"Run backend-owned parent workflows for development, revision, review, and screenplay generation.",tool_names:["genre_contract","genre_contract_query","screenplay_generation_run","screenplay_writing_voice","screenplay_writing_voice_analyze","screenplay_writing_voice_query","story_development_run","story_review_run","story_revision_run","take_wizard_run"]},{id:"story_collaboration",title:"Story Collaboration",tagline:"Collaborate with BeatBandit through conversational guidance and persona-driven passes.",tool_names:["agent_persona_run"]},{id:"media",title:"Shot / Media / Export",tagline:"Generate shot lists, images, videos, and export artifacts.",tool_names:["asset_upload","export_create","export_query","image_generate","media_generate","shot_list_generate","shot_list_query","shot_mutate","video_generate","voice_profile"]},{id:"asset_query",title:"Asset Query",tagline:"Filter generated media and shot-element libraries without leaving the MCP surface.",tool_names:["asset_display","project_assets_query"]},{id:"jobs",title:"Jobs",tagline:"Poll async workflow progress through the canonical job surface.",tool_names:["job_get"]}],SY=[{name:"account_mutate",version:1,stability:"beta",category:"core_account",family_id:"other",auth_scope:"account:write",approval_policy:"suggest",kind:"write",description:"Update caller-scoped account preferences such as the default BeatBandit LLM identifier and default video model path.",when_to_use:["Use to change the caller's own default BeatBandit account preferences.","Use to update the saved default video model that BeatBandit should prefer when a video workflow omits `model_path`."],when_not_to_use:["Do not use for project-scoped defaults or settings; read `project_preferences` and use `project_mutate` for project-level changes instead.","Do not use to inspect which model a completed BeatBandit job actually used; use `job_get` instead."],examples:["Set my default LLM to `anthropic/claude-sonnet-4`.","Set my default video model to `fal-ai/vidu/q3/image-to-vi
357deo/turbo`.","Update my account-level defaults before starting new BeatBandit workflows."],anti_examples:["Change this project's template settings.","Tell me which model the finished screenplay generation job used."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["account_status"],capabilities:["account.mutate"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","preferences"],properties:{operation:{type:"string",enum:["preferences_update"]},if_match_updated_at:{type:"string"},preferences:{type:"object",properties:{default_llm_identifier:{type:"string",minLength:1,maxLength:300},default_video_model_path:{type:"string",minLength:1,maxLength:400}},additionalProperties:!1,anyOf:[{required:["default_llm_identifier"]},{required:["default_video_model_path"]}]}},additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","preferences_updated_at","defaults"],properties:{operation:{type:"string",enum:["preferences_update"]},preferences_updated_at:{type:"string",format:"date-time"},defaults:{type:"object",required:["default_llm_identifier","default_video_model_path"],properties:{default_llm_identifier:{type:"string"},default_video_model_path:{type:"string"}},additionalProperties:!1},resource_links:{type:"array",items:{type:"object"}}},additionalProperties:!0},schema_load_errors:[]},{name:"agent_persona_run",version:1,stability:"beta",category:"story_collaboration",family_id:"story_collaboration",auth_scope:"project:write",approval_policy:"suggest",kind:"orchestration",description:`Run personas once to propose applyable changes to existing project material. Quote and obtain acceptance before Start; reuse billing IDs on retries.
358`,when_to_use:["Quote first; show the price, then Start with billing_quote_id and a fresh billing_request_id. Reuse both on retries.","Poll job_get, finalize by job_id, then apply the proposal_id only if has_actionable_changes."],when_not_to_use:["For critique or coverage use story_review_run analysis_wizard/room_review; for mentor conversations use chat.","For missing stage content use story_development_run; for exact edits use story_mutate or screenplay_snapshot_apply."],examples:["Continuity and character revision pass."],anti_examples:["General critique; a new outline; filling one treatment card."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary","screenplay_document"],capabilities:["agent_persona.run"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["phase","project_id"],properties:{phase:{type:"string",enum:["quote","start","finalize","apply"]},project_id:{type:"integer"},roles:{type:"array",minItems:1,maxItems:10,uniqueItems:!0,items:{type:"string",enum:["writer","reviewer","character","continuity","planner","producer","dialogue","theme","format","clarity"]}},direction:{type:"string",maxLength:4e3},scope:{type:"object",properties:{scene_id:{type:"string"},sequence_code:{type:"string"},act_code:{type:"string"}},additionalProperties:!1},job_id:{type:"string"},proposal_id:{type:"string"},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},additionalProperties:!1,allOf:[{if:{properties:{phase:{enum:["quote","start"]}}},then:{required:["roles"]}},{if:{properties:{phase:{const:"finalize"}}},then:{required:["job_id"]}},{if:{properties:{phase:{const:"apply"}}},then:{required:["proposal_id"]}},{if:{properties:{phase:{const:"start"}}},then:{required:["billing_quote_id","billing_request_id"]},else:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}]},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["phase"],properties:{phase:{type:"string"},proposal_id:{type:"string"},async:{type:"boolean"},job_id:{type:"string"},status:{type:"string"},poll_after_seconds:{type:"integer"},has_actionable_changes:{type:"boolean"},roles:{type:"array",items:{type:"string"}},summary:{type:"array",items:{type:"object"}},updates:{type:"array",items:{type:"object"}},creates:{type:"array",items:{type:"object"}},notes_patch:{type:"object"},screenplay_ops:{type:["object","null"]},applied_summary:{type:"object"},snapshot_rev:{type:"integer"},credits_charged:{type:["integer","null"],minimum:0},credits_skipped_reason:{type:"string"},resource_links:{type:"array",items:{type:"object"}},quote:{type:"object",required:["quote_id","mode","allowance","expires_at"],properties:{quote_id:{type:"string",format:"uuid"},mode:{enum:["fixed","usage"]},allowance:{type:"integer",minimum:0},expires_at:{type:"string"}},additionalProperties:!0},billing_operation_id:{type:"string",format:"uuid"},billing_status:{type:"string"}},additionalProperties:!0},schema_load_errors:[]},{name:"asset_display",version:1,stability:"beta",category:"media_query",family_id:"asset_query",auth_scope:"project:read",approval_policy:"never",kind:"read",description:"Display one BeatBandit asset with inline image rendering or media-ready metadata.",when_to_use:["Use when the caller already has one exact asset and wants to show it after `image_generate`, `video_generate`, `media_generate`, or `project_assets_query`.","Use `source_type=scene_moodboard_asset` to inspect a generated Scene Moodboard.","Use `format=display` for image-friendly inline presentation plus fallback media links, and `format=json` or `format=markdown` for metadata-first inspection."],when_not_to_use:["Do not use for broad filtered asset listing; use `project_assets_query` instead.","Do not use for generation or mutation flows."],examples:["Show the storyboard asset that was just generated for this shot.","Show the scene moodboard asset that was just generated for this scene.","Show the latest generated video asset for this project.","Display one audio asset with metadata and a playback/download URL."],anti_examples:["List all music assets for this project.","Generate a new shot image."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["media_catalog","shot_element_library"],capabilities:["asset.display"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","source_type","asset_id"],properties:{project_id:{type:"integer"},source_type:{type:"string",enum:["shot_asset","shot_element_asset","scene_moodboard_asset","video_asset","media_asset"]},asset_id:{type:"integer"}
358,format:{type:"string",enum:["display","json","markdown"],default:"display"}},additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","source_type","asset_id","kind","asset_updated_at"],properties:{project_id:{type:"integer"},source_type:{type:"string",enum:["shot_asset","shot_element_asset","scene_moodboard_asset","video_asset","media_asset"]},asset_id:{type:"integer"},format:{type:"string",enum:["display","json","markdown"]},kind:{type:"string",enum:["image","video","audio","other"]},display_name:{type:"string"},status:{type:"string"},mime_type:{type:"string"},file_format:{type:["string","null"]},width:{type:["integer","null"]},height:{type:["integer","null"]},duration_seconds:{type:["number","string","null"]},download_url:{type:["string","null"]},stream_url:{type:["string","null"]},thumbnail_url:{type:["string","null"]},thumbnail_asset_id:{type:["integer","null"]},thumbnail_source_type:{type:["string","null"],enum:["shot_asset","shot_element_asset","scene_moodboard_asset","video_asset","media_asset",null]},thumbnail_mime_type:{type:["string","null"]},inline_image_included:{type:"boolean"},inline_preview_image_included:{type:"boolean"},inline_audio_included:{type:"boolean"},inline_video_resource_included:{type:"boolean"},asset_updated_at:{type:"string",format:"date-time"},resource_links:{type:"array",items:{type:"object",required:["family","uri"],properties:{family:{type:"string"},uri:{type:"string"}},additionalProperties:!1}},asset:{type:"object"}},additionalProperties:!0},schema_load_errors:[]},{name:"asset_upload",version:1,stability:"beta",category:"media_storyboard",family_id:"media",auth_scope:"project:write",approval_policy:"required",kind:"write",description:"Upload a local, public-URL, or base64 image/audio into BeatBandit as a shot image, recurring shot-element reference, scene moodboard asset, project visual-style reference, or reusable voice reference. Shot uploads default to single, preserving the whole image including composite storyboards. Correct named fields on validation errors; for unexpected failures inspect the request ID and current assets before retrying with the same idempotency key.",when_to_use:["Use when you already have a generated PNG/JPEG/WebP on disk and need it stored in BB for reuse in prompts, moodboards, shot references, or later video/image generation.","Use when you already have a WAV/MP3/PCM/Ogg voice sample that should become a reusable `reference_audio` media asset.","Use `file_path` only when the BeatBandit MCP runtime can read the same local filesystem path. If the file is visible to your shell/Codex workspace but not to MCP, read it locally and send `content_base64` with `source_filename` and `mime_type`.","Use `source_url` for Scenario/CDN-hosted images or audio when the remote BeatBandit MCP server cannot read local `file_path` values.","Use `target_type=shot_asset` with `shot_card_id` to attach an existing storyboard, first-frame, or last-frame image to one shot.","Use `target_type=shot_element_asset` with `element_id` to attach a reference image to an existing recurring character, environment, object, style, or other element.","Use `target_type=scene_moodboard_asset` with `parent_scene_code` to attach a scene-level moodboard reference board.","Use `target_type=project_visual_style_asset` to attach a master style reference image to the project default visual style, or pass `project_visual_style_id` for a specific project visual style.","Use `target_type=reference_audio_asset` with a short clean voice sample before `voice_profile(operation=add_reference)`.","Omit composition_mode or use single to preserve a complete uploaded image, including a multi-panel storyboard. Upload origin is not a layout value.","On validation_error, correct the named field using the returned allowed values. On an unexpected server error, use request_id to inspect logs and query current assets before retrying; reuse the same idempotency_key for an uncertain attempt and do not change unrelated upload arguments."],when_not_to_use:["Do not use to create the recurring element itself; use `shot_mutate(entity_type=element, operation=upsert_element)` first if the element does not exist.","Do not use to generate a new image from a prompt; use `image_generate`.","Do not use to generate scene audio; use `media_generate(workflow=scene_audio)`.","Do not use to inspect the uploaded asset after creation; use `asset_display`."],examples:["Upload a locally rendered storyboard frame to shot card 123 as `shot_asset_type=storyboard`.","Upload a Codex-local image by base64-encoding the file bytes and passing `content_base64`, `source_filename`, and `mime_type` when MCP cannot read the caller's path.","Upload `mira-origin-05-rural-north-american-outsider.png` as Mira's active recurring character reference.","Upload `mira-voice-clean.mp3` as `target_type=reference_audio_asset`, then attach it to Mira's voice profile.","Upload `clean-moodboard-02-extra-clean-surfaces.png` as a selected scene moodboard asset.","Upload `master-style-frame.png` as the project default visual-style reference so later moodboards, recurring images, and shot images inherit that look.","Upload a local generated prop reference image to an existing recurring object element."],anti_examples:["Create the missing Mira recurring element from scratch; use `shot_mutate`.","Generate a clean-surface moodboard from the shot list; use `image_generate(workflow=generate_scene_moodboard)`.","List all uploaded moodboards; use `project_assets_query(asset_kind=scene_moodboard)`.","Add the uploaded voice sample to a profile; use `voice_profile(operation=add_reference)`."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["shot_element_library","shot_list_scope","asset_content"],
358capabilities:["asset.upload"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","target_type"],properties:{project_id:{type:"integer"},target_type:{type:"string",enum:["shot_asset","shot_element_asset","scene_moodboard_asset","project_visual_style_asset","reference_audio_asset"]},file_path:{type:"string",description:"Local file path read by the BeatBandit MCP runtime process, not necessarily by the caller's shell/Codex workspace. Use only when the runtime shares that filesystem; otherwise send content_base64 with source_filename/mime_type or provide source_url."},source_url:{type:"string",description:"Public http(s) image or audio URL fetched by the BeatBandit MCP runtime/backend. Use this for Scenario/CDN-hosted assets when the MCP server cannot read local paths."},content_base64:{type:"string",description:"Base64-encoded image or audio bytes. Use this when the file is local to the caller but the BeatBandit MCP runtime cannot read the caller's file_path."},source_filename:{type:"string"},mime_type:{type:"string"},idempotency_key:{type:"string"},if_match_updated_at:{type:"string"},element_id:{type:"integer"},project_visual_style_id:{type:"integer",description:"For project_visual_style_asset uploads. Omit to attach to the current project default visual style."},asset_type:{type:"string",description:"For shot_element_asset uploads only.",enum:["reference","thumbnail"],default:"reference"},shot_card_id:{type:"integer",description:"Required for shot_asset uploads."},shot_asset_type:{type:"string",description:"For shot_asset uploads only.",enum:["storyboard","first_frame","last_frame"],default:"storyboard"},variant_label:{type:"string"},is_active:{type:"boolean"},is_additional_reference:{type:"boolean"},is_selected:{type:"boolean",description:"For shot_asset uploads, select this asset for the shot and export by default."},composition_mode:{type:"string",description:"Shot upload layout; defaults to single, preserving the complete image including composite storyboards. Canonical layouts: single, collage, split, triptych, grid, sequence, split_stack_4, split_stack_3, grid_3x2, grid_3x3, split_stack_4_firstframe, split_stack_3_firstframe. Known aliases are normalized (grid_2x3 to grid_3x2); unknown values return validation_error."},aspect_ratio:{type:"string",description:"Optional shot_asset display/generation metadata. Defaults to 16:9."},parent_scene_code:{type:"string",description:"Scene/scope code for scene moodboard uploads. Defaults to full-project moodboard scope."},prompt:{type:"object",additionalProperties:!0},title:{type:"string",description:"For reference_audio_asset uploads."},duration_seconds:{type:"number",minimum:0,maximum:30,description:"Known duration for reference_audio_asset uploads. Reference voice samples should stay within the selected model limit."}},oneOf:[{required:["file_path"],not:{anyOf:[{required:["content_base64"]},{required:["source_url"]}]}},{required:["content_base64"],not:{anyOf:[{required:["file_path"]},{required:["source_url"]}]}},{required:["source_url"],not:{anyOf:[{required:["file_path"]},{required:["content_base64"]}]}}],allOf:[{if:{properties:{target_type:{const:"shot_asset"}}},then:{required:["shot_card_id"]}},{if:{properties:{target_type:{const:"shot_element_asset"}}},then:{required:["element_id"]}},{if:{properties:{target_type:{const:"scene_moodboard_asset"}}},then:{not:{required:["element_id"]}}},{if:{properties:{target_type:{enum:["project_visual_style_asset","reference_audio_asset"]}}},then:{not:{required:["element_id"]}}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["target_type","source_type","asset"],properties:{operation:{type:"string",const:"upload"},target_type:{type:"string",enum:["shot_asset","shot_element_asset","scene_moodboard_asset","project_visual_style_asset","reference_audio_asset"]},source_type:{type:"string",enum:["shot_asset","shot_element_asset","scene_moodboard_asset","project_visual_style_asset","media_asset"]},asset_id:{type:"integer"},asset:{type:"object"},asset_updated_at:{type:"string"},project_visual_style_id:{type:"integer"},style:{type:"object"},source_asset:{type:"object"},content_resource:{type:"object"},resource_links:{type:"array",items:{type:"object"}},credits_skipped_reason:{type:"string"}},additionalProperties:!0},schema_load_errors:[]}
358,{name:"export_create",version:1,stability:"beta",category:"export",family_id:"media",auth_scope:"export:read",approval_policy:"suggest",kind:"export",description:"Start exports and retrieve export artifacts. Use readiness for screenplay and shot-list exports to discover valid template IDs before start; screenplay exports default to script-only sections.",when_to_use:["Present the returned open_url for retained document exports. It opens BeatBandit's download page with normal website sign-in; API download URLs alone are not browser links.","Use for screenplay, Novel manuscript, shot list, pitch deck, or season export workflows.","For `screenplay_export` and `shot_list_export`, call `phase=readiness` first; it returns `available_templates`, `default_template_id`, and a start payload.","For `novel_export`, call `phase=readiness` first; it reports empty/stale Chapters and the four Novel format templates. When Chapters are empty, readiness returns `options.allow_in_progress=false` and no executable start action. After the author explicitly chooses an in-progress export, rerun readiness with `payload.options.allow_in_progress=true` to receive the start action.",'Use `payload.options.sections=["screenplay"]` for a script-only screenplay PDF. The readiness start payload includes this by default for `screenplay_export`; pass `sections=["all"]` only when you intentionally want planning/bible sections included.',"Export title and author currently come from project/user metadata: title from the project name, author from `user_profiles.name` with email fallback. Do not mutate databases directly just to change export cosmetics."],when_not_to_use:["Do not use for editing or generation flows."],examples:['Check screenplay export readiness, then start the export with the returned `template_id` and `options.sections=["screenplay"]`.','Export a screenplay-only PDF with `workflow=screenplay_export`, `phase=start`, `payload.template_id` from readiness, and `payload.options={"format":"pdf_screenplay","sections":["screenplay"]}`.',"After the author confirms an in-progress Novel EPUB, rerun readiness with `payload.options.allow_in_progress=true`, then use its returned start action."],anti_examples:["Apply this screenplay edit.","Guess template IDs such as `pdf`, `fdx`, or `classic_hollywood`; use readiness to get numeric export template IDs.","Export a clean script by calling the lower-level PDF exporter directly; first fix the screenplay document with `screenplay_snapshot_apply`/`screenplay_import_run`, then use `export_create`."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"screenplay_export",phase_modes:["readiness","start"],capabilities:["export.create"]},{name:"shot_list_export",phase_modes:["readiness","start"],capabilities:["export.create"]},{name:"novel_export",phase_modes:["readiness","start"],capabilities:["export.create"]},{name:"pitch_deck_export",phase_modes:["start"],capabilities:["export.create"]},{name:"season_export",phase_modes:["start"],capabilities:["export.create"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase","project_id"],properties:{workflow:{type:"string",enum:["screenplay_export","novel_export","shot_list_export","pitch_deck_export","season_export"]},phase:{type:"string",enum:["readiness","start"],description:"Use readiness first for screenplay_export, novel_export, and shot_list_export to discover available template IDs and readiness constraints."},project_id:{type:"integer"},payload:{type:"object",properties:{template_id:{type:"integer",description:"Export template id from readiness. 0 means BeatBandit default config for the selected format."},format:{type:"string",description:"Optional export format override such as pdf_screenplay, fountain, fdx, or shot_list_pdf."},options:{type:"object",description:'Forwarded export options. For screenplay_export, use sections=["screenplay"] for a script-only exp
358ort; sections=["all"] intentionally includes planning/bible sections. Export title/author are currently resolved from project/user metadata rather than custom options.'},episode_id:{type:"string"},slides:{type:"array",items:{type:"object"},description:"Pitch deck slides to export."},structure_key:{type:"string"},include_storyline_context:{type:"boolean"},project_name:{type:"string"},idempotency_key:{type:"string"}},additionalProperties:!1}},allOf:[{if:{properties:{workflow:{enum:["pitch_deck_export","season_export"]},phase:{const:"readiness"}}},then:!1},{if:{properties:{workflow:{const:"season_export"},phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{required:["episode_id"]}}}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase"],properties:{workflow:{type:"string"},phase:{type:"string"},project_id:{type:"integer"},format:{type:"string"},available_templates:{type:"array",items:{type:"object"}},default_template_id:{type:"integer"},start_payload_template:{type:"object"},result:{type:"object"},credits_skipped_reason:{type:"string"},next_actions:{type:"array",items:{$ref:"./_common/next_action.schema.json"}}},additionalProperties:!0},schema_load_errors:[]},{name:"export_query",version:1,stability:"beta",category:"export",family_id:"media",auth_scope:"project:read",approval_policy:"automatic",kind:"read",description:"List owned project exports or reopen one retained export without regenerating it. Present the returned open_url for browser download through the user's BeatBandit website sign-in; download.url is a bearer-authenticated API reference.",when_to_use:["Reopen a previously created project export or list your retained exports.","Present open_url to the user; never ask them to paste a bearer token into a browser or chat."],when_not_to_use:["Use export_create to render a new export from current writing."],examples:["List my exports for this project, then get one by export_id."],anti_examples:["Regenerate an expired export or read another user's file."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["export.query"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",properties:{project_id:{type:"integer"},mode:{type:"string",enum:["list","get"]},export_id:{type:"string",minLength:1,maxLength:200},limit:{type:"integer",minimum:1,maximum:50}},required:["project_id","mode"],additionalProperties:!1,allOf:[{if:{properties:{mode:{const:"get"}}},then:{required:["export_id"]}}]},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","mode"],properties:{project_id:{type:"integer"},mode:{type:"string",enum:["list","get"]},count:{type:"integer",minimum:0},items:{type:"array",items:{type:"object",additionalProperties:!0}},export:{type:"object",additionalProperties:!0},next_actions:{type:"array",items:{type:"object",additionalProperties:!0}}},additionalProperties:!0},schema_load_errors:[]},{name:"genre_contract",version:1,stability:"beta",category:"story_development",family_id:"story_workflows",auth_scope:"project:write",approval_policy:"suggest",kind:"write",description:"Apply the selected Genre Movie contract. Read and preview using genre_contract_query.",when_to_use:["Apply the selected Genre Movie contract. Read and preview using genre_contract_query."],when_not_to_use:["Do not use for direct card text edits after cards are active; use story/card mutation tools for field-level edits.","Do not use for non-Genre Movie templates."],examples:["Use genre_contract operation=apply for project 123."],anti_examples:["Change dialogue in scene 5.","Generate a screenplay from an outline."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary"],capabilities:["genre.contract"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id"],properties:{operation:{type:"string",enum:["apply"]},project_id:{type:"integer"},primary_genre_id:{type:"string"},secondary_genre_ids:{type:"array",items:{type:"string"},maxItems:3},enabled_card_ids:{type:"array",items:{type:"string"}},disabled_card_ids:{type:"array",items:{type:"string"}},enabled_local_card_ids:{type:"array",items:{type:"string"}},disabled_local_card_ids:{type:"array",items:{type:"string"}},card_order_ids:{type:"array",items:{type:"string"}}
358,enabled_overlay_ids:{type:"array",items:{type:"string"}},disabled_overlay_ids:{type:"array",items:{type:"string"}},if_match_updated_at:{type:"string",description:"Reserved for optimistic concurrency. Genre contract apply currently validates through backend project access."}},allOf:[{if:{properties:{operation:{enum:["preview","apply"]}}},then:{required:["primary_genre_id"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id","result","genre_contract_updated_at"],properties:{operation:{type:"string",enum:["apply"]},project_id:{type:"integer"},genre_contract_updated_at:{type:["string","null"],description:"Updated-at value for the genre contract if available."},result:{type:"object"}},additionalProperties:!0},schema_load_errors:[]},{name:"genre_contract_query",version:1,stability:"beta",category:"story_development",family_id:"story_workflows",auth_scope:"project:read",approval_policy:"automatic",kind:"read",description:"Read, inspect the registry, or preview a Genre Movie contract without applying changes.",when_to_use:["Inspect current genre settings and registry options or preview a proposed Genre Movie configuration."],when_not_to_use:["Use genre_contract to apply the explicitly selected configuration."],examples:["Preview how changing the primary genre alters this project's planning cards."],anti_examples:["Treat preview as saving the proposed configuration."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["genre.contract_query"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id"],properties:{operation:{type:"string",enum:["read","registry","preview"]},project_id:{type:"integer"},primary_genre_id:{type:"string"},secondary_genre_ids:{type:"array",items:{type:"string"},maxItems:3},enabled_card_ids:{type:"array",items:{type:"string"}},disabled_card_ids:{type:"array",items:{type:"string"}},enabled_local_card_ids:{type:"array",items:{type:"string"}},disabled_local_card_ids:{type:"array",items:{type:"string"}},card_order_ids:{type:"array",items:{type:"string"}},enabled_overlay_ids:{type:"array",items:{type:"string"}},disabled_overlay_ids:{type:"array",items:{type:"string"}}},allOf:[{if:{properties:{operation:{enum:["preview","apply"]}}},then:{required:["primary_genre_id"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id","result","genre_contract_updated_at"],properties:{operation:{type:"string",enum:["read","registry","preview"]},project_id:{type:"integer"},genre_contract_updated_at:{type:["string","null"],description:"Updated-at value for the genre contract if available."},result:{type:"object"}},additionalProperties:!0},schema_load_errors:[]},{name:"image_generate",version:1,stability:"beta",category:"media_generation",family_id:"media",auth_scope:"media:write",approval_policy:"suggest",kind:"orchestration",description:"Generate still-image assets, with distinct workflows for per-shot storyboard/frame images, reusable shot-element references, and scene-level moodboards; fal-backed requests return an async job to poll with `job_get`.",when_to_use:["Use `workflow=generate_shot` when the caller asks for a storyboard frame, shot panel, first frame, last frame, or any image for one numbered shot.","For a normal storyboard package, omit `composition_mode` or set `composition_mode=overall_storyboard` so BeatBandit creates the preserved Overall storyboard image. Use `moments_grid_4` / `moments_grid_9` only when the caller explicitly asks for key moments.","For a first-frame candidate, set `workflow=generate_shot`, `payload.asset_type=first_frame`, and `payload.composition_mode=firstframe_grid_4` or `firstframe_grid_9`; do not use `overall_storyboard`.","For a last-frame candidate, set `workflow=generate_shot`, `payload.asset_type=last_frame`, and `payload.composition_mode=lastframe_grid_4` or `lastframe_grid_9`; do not use `overall_storyboard`.","Use `workflow=generate_scene_moodboard` only when the caller asks for a scene moodboard, visual development board, or reusable master art-direction reference for a scene/scope.","Use `workflow=generate_element` when the caller asks for a character, location, object, or prop reference image.","If `workflow=generate_element` is requested for a named character/location/object and no recurring element exists yet, first create it with `shot_mutate(entity_type=element, operation=upsert_element, token=..., element_type=...)`, then call `image_generate` with the returned element id.","Use when the caller wants BeatBandit's actual still-image generation pipeline, not manual uploads.","When `payload.provider=fal` or a fal-backed model is selected, treat `image_generate` as a parent async workflow: start it once, then call `job_get` with the returned `job_id` until completion."],when_not_to_use:["Do not use for video or audio workflows.","Do not use `generate_scene_moodboard` when the user asks for individual storyboard panels or clean single-shot frames; use `generate_shot` with a `shot_card_id` instead.","Do not expect `prompt_override` to change the selected artifact type. It only changes prompt content inside the chosen workflow.","Do not retry `image_generate` with the same fal-backed inputs while a returned `job_id` is still running; poll `job_get` instead.","Do not call `image_generate(workflow=generate_element)` with an invented or missing `element_id`; discover existing elements through `project_assets_query` / `shot_element_library`, or create the recurring element first with `shot_mutate`."],examples:["Generate a storyboard panel for shot 12 with `workflow=generate_shot`, `asset_type=storyboard`, and the shot's `shot_card_id`.","Generate the default Overall storyboard image for shot 12 by omitting `composition_mode` or passing `composition_mode=overall_storyboard`.","Generate key moments for shot 12 with `composition_mode=moments_grid_4` only if the user asks for multiple key moments.","Generate first-frame candidates for shot 12 with `asset_type=first_frame` and `composition_mode=firstframe_grid_4`.","Generate a new reference image for the","Generate a full-body photoreal reference for Anna after creating/finding her recurring element id.","Generate a scene moodboard for scene 50.10.20.","Generate a shot image using a selected scene moodboard as a reference source.","Generate a fal-backed shot image with `payload.provider=fal`, then poll `job_get(job_id=...)` and inspect `result_data` or `asset_display` after completion."],anti_examples:["Generate a video timeline export.",'Ask for "single storyboard panel" but call `workflow=generate_scene_moodboard`; use `workflow=generate_shot` instead.',"Call `image_generate` again because a fal-backed start response is still processing; use `job_get` with the original `job_id`.",'Generate an image for "Anna" without resolving or creating Anna\'s recurring element first; use `project_assets_query` / `shot_element_library` and `shot_mutate` first when needed.'],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["visual_style_effective"],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"generate_shot",phase_modes:["start"],capabilities:["image.generate"]},{name:"generate_element",phase_modes:["start"],capabilities:["image.generate"]},{name:"generate_scene_moodboard",phase_modes:["start"],capabilities:["image.generate"]}]},input_schema:{$ref:"./image.generate.input.json"},output_schema:{$ref:"./image.generate.output.json"},schema_load_errors:[]}
358,{name:"job_get",version:1,stability:"beta",category:"jobs",family_id:"jobs",auth_scope:"project:read",approval_policy:"never",kind:"orchestration",description:"Observe an accepted async job and its results. Status/result reads can advance work, publish results, rescue provider responses and settle existing billing. Observation does not start a new paid operation.",when_to_use:["Use when a previously started BeatBandit job needs progress or result inspection.","Use this to follow backend-owned workflows such as `story_bootstrap`, `screenplay_import_run`, and `screenplay_writer` instead of switching to low-level mutation tools mid-flight.","Completed Novel parents with canonical results set `finalize_required=false` and `job.result.finalized=true`, then return the saved-artifact or author-review action. Voice jobs expose the complete proposal resource and apply actions only while their source Voice revisions remain current.","Running Novel Blueprint, Chapter Outline, Voice, Writer, and Audit parents are long-running backend-owned jobs with a minimum 20-second poll cadence. Poll at the cadence in `job.progress`; the parent persists its result at completion and no client finalize call is required.","Terminal progress uses a terminal label and caps `elapsed_seconds` at `completed_at`; repeated reads do not make a completed job appear to keep running.","Trust `job.progress` and `job.client_guidance` for long-running work. Beat, scene, and screenplay jobs on feature and TV templates can legitimately take several minutes (short-format templates such as advertisement and one_scene usually finish in about a minute); keep polling `job_get` rather than restarting the workflow.","Set `include_result=true` when the job is completed and you want the final generated data rather than only progress metadata.","Terminal quoted jobs expose `job.billing` from the caller-owned ledger. Report charged/released credits only when `settlement_status=settled`; pending or absent billing is unknown, including when provider usage is null. Parent-owned children do not present their parent's receipt as a separate charge."],when_not_to_use:["Do not use to start a new async workflow."],examples:["Get the status of job_123."],anti_examples:["Start a new continuity audit."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["novel_manuscript","novel_voice_proposal"],capabilities:["job.get"],implemented_status:"v1",variants:null,input_schema:{$ref:"./job.get.input.json"},output_schema:{$ref:"./job.get.output.json"},schema_load_errors:[]},{name:"media_generate",version:1,stability:"beta",category:"media_generation",family_id:"media",auth_scope:"media:write",approval_policy:"suggest",kind:"orchestration",description:"Generate music, speech, dialogue, sound effects, or shot-scoped scene audio.",when_to_use:["Use for non-visual media generation workflows.","Use `workflow=scene_audio` for Seed Audio shot/scene mixes that may include dialogue, ambience, Foley, and selected voice references.","`phase=start` returns an async `job_id`: poll `job_get(job_id, include_result=true)` until it completes. BeatBandit stores the audio asset and settles credits automatically when the job completes, so `phase=finalize` is optional and only w
358orks on a completed job."],when_not_to_use:["Do not use for still images or videos.","Do not use to upload or attach reusable voice samples; use `asset_upload(target_type=reference_audio_asset)` and `voice_profile`.","Do not call `phase=start` again while a returned `job_id` is still pending or processing; poll `job_get` instead."],examples:["Generate suspense music for this scene.","Generate 30 seconds of shot audio for shot 101 with Mira's selected voice reference."],anti_examples:["Generate a storyboard image.","Attach an existing voice sample to a character profile."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"music",phase_modes:["readiness","start","finalize"],capabilities:["media.generate"]},{name:"speech",phase_modes:["readiness","start","finalize"],capabilities:["media.generate"]},{name:"dialogue",phase_modes:["readiness","start","finalize"],capabilities:["media.generate"]},{name:"sound_effect",phase_modes:["readiness","start","finalize"],capabilities:["media.generate"]},{name:"scene_audio",phase_modes:["readiness","start","finalize"],capabilities:["media.generate"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase","project_id"],properties:{workflow:{type:"string",enum:["music","speech","dialogue","sound_effect","scene_audio"]},phase:{type:"string",enum:["readiness","start","finalize"]},project_id:{type:"integer"},job_id:{type:"string",minLength:1},payload:{type:"object",properties:{model_id:{type:"string",minLength:1,description:"Selected media model id from readiness; required for start."}},additionalProperties:!0}},allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{required:["model_id"]}}}},{if:{properties:{phase:{const:"finalize"}}},then:{required:["job_id"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",properties:{resource_updated_at:{type:"string",format:"date-time",description:"Generic updated_at value for read/propose outputs that need a round-trippable optimistic-concurrency timestamp."},credits_charged:{type:"integer",minimum:0,description:"Credits charged for this capability call when credit_metered=true."},credits_skipped_reason:{type:"string",description:"Present instead of credits_charged when the capability intentionally skipped billing (e.g. cache hit, no-op, failed_before_llm)."},pipeline_state:{$ref:"./_common/pipeline_state.schema.json"},next_actions:{type:"array",items:{$ref:"./_common/next_action.schema.json"}}},additionalProperties:!0},schema_load_errors:[]},{name:"project_assets_query",version:1,stability:"beta",category:"media_query",family_id:"asset_query",auth_scope:"project:read",approval_policy:"never",kind:"read",description:"Filter generated media assets, recurring shot elements, or scene moodboards for one BeatBandit project.",when_to_use:["Use when the caller needs filtered asset reads instead of the broad `media_catalog` or `shot_element_library` resources.","Use `asset_kind=shot_element` for recurring element discovery before `shot_mutate(entity_type=element)` or `image_generate(workflow=generate_element)`; use the media kinds for generated audio/video assets.","Use `asset_kind=scene_audio` to find generated shot audio takes and `asset_kind=reference_audio` to find reusable uploaded voice samples.","Use `asset_kind=scene_moodboard` to discover scene-level art-direction references.","Use `asset_kind=video` to inspect primary selection separately from `continuity_checkpoint_id`, `continuity_is_stale`, `continuity_input_stale`, the accepted grid/state, and `continuity_updated_at` before continuity mutations."],when_not_to_use:["Do not use for mutations or generation flows.","Do not use for broad project canon reads.","Do not use for story-card or scene reads; use `story_entity_query`."],examples:["What music exists for scene 50.10.20?","List selected scene-audio takes for shot 101.","List reusable reference-audio voice samples.","List character shot elements for this project.","Does this project already have a recurring element for Anna?","List scene moodboards for scene 50.10.20.","List video takes and show which one is accepted for continuity or depends on stale c
358ontinuity evidence."],anti_examples:["Generate a new sound effect.","Update this wardrobe element prompt.","Attach a voice sample to a voice profile; use `voice_profile`.","Read the protagonist story card summary; use `story_entity_query`."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["media_catalog","shot_element_library"],capabilities:["project_assets.query"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","asset_kind"],properties:{project_id:{type:"integer"},asset_kind:{type:"string",enum:["video","music","speech","dialogue","sound_effect","scene_audio","reference_audio","shot_element","scene_moodboard"]},scene_code:{type:"string"},episode_code:{type:"string"},shot_id:{type:"string"},element_type:{type:"string",enum:["character","environment","object","style","other"]},tag:{type:"string"},limit:{type:"integer",minimum:1,maximum:100,default:50},cursor:{type:"string"}},additionalProperties:!1,allOf:[{if:{properties:{asset_kind:{const:"shot_element"}}},then:{not:{anyOf:[{required:["episode_code"]},{required:["shot_id"]}]}}},{if:{properties:{asset_kind:{enum:["video","music","speech","dialogue","sound_effect","scene_audio","reference_audio","scene_moodboard"]}}},then:{not:{required:["element_type"]}}}]},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["asset_kind","items"],properties:{asset_kind:{type:"string"},items:{type:"array",items:{type:"object"}},catalog_updated_at:{type:"string"},next_cursor:{type:["string","null"]},resource_links:{type:"array",items:{type:"object",required:["family","uri"],properties:{family:{type:"string"},uri:{type:"string"}},additionalProperties:!1}}},additionalProperties:!0},schema_load_errors:[]},{name:"project_mutate",version:1,stability:"beta",category:"core_project",family_id:"core_project",auth_scope:"project:write",approval_policy:"suggest",kind:"write",description:"Create or update project-level metadata, settings, and defaults, returning compact stable project identity for follow-up MCP calls. Do not request the full project scaffold during normal agent workflows.",when_to_use:["Use for project creation or project-level settings changes.","Use `operation=delete_visual_style_reference` to remove an uploaded master style reference from the project default visual style, or pass `project_visual_style_id` for a specific project visual style.","For `single_scene` projects, use `template_settings.story_format.target_duration_seconds` to set the story length at create time or before story generation (allowed values: 15, 30, 60, 90, 120).","For `micro_drama` projects, use `template_settings.story_format.target_duration_seconds` to set the canonical episode length at create time or before episode generation (allowed values: 60, 90, 120, 180, 240). These selections resolve to authored ranges rather than exact runtimes.","On create, keep the compact returned `project_id` and use `project_canon_summary` / `template_manifest` resource links for follow-up inspection."],when_not_to_use:["Do not use for story cards, scenes, or screenplay text changes.","Do not set `include_project=true` just to inspect the scaffold after create; create always returns compact identity and ignores that flag. Use resource links instead."],examples:["Create a new movie project from the movie template.","Create a new project and keep the returned project_id for later tool calls.",'Create a `single_scene` project with `template_settings: {"story_format": {"target_duration_seconds": 15}}` when the user asks for 15-second stories.','Create or update a `micro_drama` project with `template_settings: {"story_format": {"target_duration_seconds": 180}}` for an authored 150-215 second episode range.',"Create a new project and read the returned project_canon_summary resource when you need the scaffolded card library.","Delete a project visual-style reference image after inspecting `visual_style_effective`."],anti_examples:["Change dialogue in scene 4.","Upload a new style reference image; use `asset_upload(target_type=project_visual_style_asset)`.","Create a project with `include_project=true` to inspect all template cards. Create ignores that flag; use default create, keep `project_id`, then read `project_canon_summary` or `template_manifest`."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary"],capabilities:["project.mutate"],implemented_status:"v1",variants:{discriminator:"operation",values:[{name:"create"},{name:"rename"},{name:"template_settings"},{name:"delete_visual_style_reference"}]},input_schema:{$ref:"./project.mutate.input.json"},output_schema:{$ref:"./project.mutate.output.json"},schema_load_errors:[]}
358,{name:"project_query",version:1,stability:"beta",category:"core_project",family_id:"core_project",auth_scope:"project:read",approval_policy:"never",kind:"read",description:"List accessible projects, read one project by stable id, re-find a project by exact name, or inspect canonical Novel source, Adaptation Blueprint, Chapter, manuscript, Voice, audit, canon, candidate, and export-readiness state.",when_to_use:["Use when the caller wants lightweight project discovery, one project summary, or to recover a project id by exact name before follow-up mutations.","Use `mode=novel` plus `novel_mode` for read-only Novel workflow state and prose-bearing resources.","Use `novel_mode=changes` after a Novel Audit to inspect pending Chapter-plan proposals; after the full changes resource is reviewed, the query returns explicit apply and reject calls only for a revision-current pending proposal."],when_not_to_use:["Do not use for screenplay content or story-graph mutations."],examples:["List my projects.","Read the project with id 123.","Find the project named Scenario MCP Test.","Read the canonical manuscript Chapter with `mode=novel`, `novel_mode=manuscript_chapter`, and `chapter_card_id`.","Read the canonical Adaptation Blueprint with `mode=novel` and `novel_mode=blueprint`."],anti_examples:["Rewrite scene 5 in my screenplay."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary","novel_source","novel_source_unit","novel_blueprint","novel_manuscript","novel_chapter","novel_canon","novel_audits","novel_candidate","novel_voice","novel_changes"],capabilities:["project.list","project.get","novel.query"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["mode"],properties:{mode:{type:"string",enum:["list","get","name_exact","search","novel"]},project_id:{type:"integer"},name:{type:"string"},query:{type:"string"},cursor:{type:["string","null"]},limit:{type:"integer",minimum:1,maximum:200},novel_mode:{type:"string",enum:["source","blueprint","chapters","chapter_graph","manuscript","manuscript_chapter","candidates","voice","audit_runs","changes","canon","export_readiness"]},chapter_card_id:{type:"integer",minimum:1}},allOf:[{if:{properties:{mode:{const:"get"}}},then:{required:["project_id"]}},{if:{properties:{mode:{const:"name_exact"}}},then:{required:["name"]}},{if:{properties:{mode:{const:"search"}}},then:{required:["query"]}},{if:{properties:{mode:{const:"novel"}},required:["mode"]},then:{required:["project_id","novel_mode"]}},{if:{properties:{mode:{const:"novel"},novel_mode:{const:"manuscript_chapter"}},required:["mode","novel_mode"]},then:{required:["chapter_card_id"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["mode"],properties:{mode:{type:"string"},projects:{type:"array",items:{type:"object"}},project:{type:"object"},project_id:{type:["integer","null"]},project_name:{type:["string","null"]},project_mode:{type:["string","null"]},project_updated_at:{type:["string","null"],format:"date-time"},recommended_screenplay_workflow:{type:["string","null"],description:"Recommended screenplay_generation_run workflow for this project's template mode."},template_pipeline:{type:"object",description:"Compact MCP routing hints derived from the project's template pipeline."},project_summary:{type:["object","null"],description:"Compact 'what already exists' signal for a single-project get: derived `state` (empty_project | story_outline_ready | screenplay_ready | media_ready | active_job) and `card_counts` (story_cards, scenes, episodes, screenplay, shots, media). Use it to avoid re-running a stage whose output already exists.",properties:{state:{type:["string","null"]},card_counts:{type:"object"}}},match_count:{type:"integer"},next_cursor:{type:["string","null"]},resource_links:{type:"array",items:{type:"object"}}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_draft_apply",version:1,stability:"beta",category:"screenplay",family_id:"screenplay",auth_scope:"project:write",approval_policy:"suggest",kind:"write",description:"Apply a reviewed supplied-text draft through native source and permission checks. Only manual draft proposals are accepted.",when_to_use:["The user has approved the complete supplied draft returned by screenplay_proposal_create or screenplay_proposal_query."],when_not_to_use:["Follow the native Apply action for proposals produced by other writing or revision workflows."],examples:["Replace the target's current pages with the approved saved supplied draft."],anti_examples:["Apply a rewrite, structural or parent-owned proposal through this tool."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["screenplay.draft_apply"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",properties:{project_id:{type:"integer"},proposal_id:{type:"string",minLength:1,maxLength:200}},required:["project_id","proposal_id"],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","proposal_id"],properties:{project_id:{type:"integer"},proposal_id:{type:"string"},next_actions:{type:"array",items:{type:"object",additionalProperties:!0}}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_edit_apply",version:1,stability:"beta",category:"screenplay",family_id:"screenplay",auth_scope:"screenplay:write",approval_policy:"required",kind:"write",description:"Apply accepted, revision-aware screenplay edits.",when_to_use:["Use when the caller already has accepted screenplay edits and a known base revision."],when_not_to_use:["Do not use to ask the AI for edit suggestions.","Do not use while an active `screenplay_writer` parent job is still generating prose for the same project."],examples:["Apply these accepted edits to project 42."],anti_examples:["Propose improvements for this passage."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["screenplay.apply_surgical_edits"],implemented_status:"v1",variants:null,input_schema:{$ref:"./screenplay.apply_surgical_edits.input.json"},output_schema:{$ref:"./screenplay.apply_surgical_edits.output.json"},schema_load_errors:[]},{name:"screenplay_edit_propose",version:1,stability:"beta",category:"screenplay",family_id:"screenplay",auth_scope:"screenplay:write",approval_policy:"suggest",kind:"or
358chestration",description:"Quote, start accepted generation, and finalize revision-aware screenplay edits for a selected passage.",when_to_use:["Use when the caller wants suggested screenplay edits before applying them.","Call phase=quote with the captured selection and instruction, accept the returned credit allowance, then use its phase=start next action. Use phase=finalize with the job ID to retrieve the proposal; Apply remains separate."],when_not_to_use:["Do not use for direct apply or broad story-graph changes.","Do not use while an active `screenplay_writer` parent job is still generating prose for the same project."],examples:["Suggest sharper dialogue for this selected exchange."],anti_examples:["Apply these accepted edits now."],schema_pattern:"discriminated_mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["screenplay.propose_surgical_edits"],implemented_status:"v1",variants:null,input_schema:{$ref:"./screenplay.propose_surgical_edits.input.json"},output_schema:{$ref:"./screenplay.propose_surgical_edits.output.json"},schema_load_errors:[]},{name:"screenplay_generation_run",version:1,stability:"beta",category:"screenplay_generation",family_id:"story_workflows",auth_scope:"screenplay:write",approval_policy:"suggest",kind:"orchestration",description:"WRITE actual screenplay prose from existing structured story material. The verb is WRITE: turn already-built beats, scenes, or episodes into formatted screenplay text. `screenplay_writer` is chunk-scoped for feature movies and multi-act scene-oriented TV templates such as `tv_60`: call readiness first, use phase=quote to inspect its captured scope price without starting work. Start requires payload.billing_quote_id and payload.billing_request_id from the accepted quote action; reuse them unchanged on retry. Start one resolved chunk with `payload.granularity` and 1-based `payload.chunk_index`, then poll `job_get` until completion. Prefer `granularity=\"full\"` with `chunk_index=1` when readiness/model capability allows it. Without chunk fields, the backend uses the project's remembered scope, or Full when no remembered scope exists and the model/template allows it, otherwise Sequence. Short-movie and one-scene projects may omit chunk fields (BeatBandit uses section 1). `scene_screenplay` also requires quote then Start with accepted payload billing UUIDs. `episode_screenplay` also requires quote then Start with the accepted payload billing UUIDs. `episode_screenplay` is a backend-owned episode-list parent workflow for templates such as `single_scene` and `micro_drama`; start accepts 1-10 `payload.episode_ids` per call, with optional `payload.episodes_per_call` (default 10, max 10) to choose a smaller batch-size cap for that call. Split larger episode lists into batches. Use `payload.writing_voice` to opt into an exact saved Custom Voice revision. For `screenplay_writer`, `episode_screenplay`, and `scene_screenplay`, choose `preset` or `custom`. Episode Default is the visible preset whose ID is `default`. It controls page expression only and does not replace story structure, Story Style, canon, or production constraints. Use `scene_screenplay` for first-draft prose on one explicit scene or one small explicit scene batch only. `scene_screenplay` also supports `payload.revision_id` and `payload.followup_id` from a saved structural decision, instead of scene targets. This captures current source server-side and produces a shared reviewable proposal without changing pages. Run readiness, start, then follow job_get's finalize action with the revision and job IDs. For uncommitted story changes, use phase `source` with `payload.revision_id` and `payload.source_selection={proposal_id, operation_ids}`. Optional `payload.page_proposal_ids` selects existing page drafts as source for another revision; retain these IDs in readiness and start. It returns stable proposed scene or episode IDs, entity_mode and current text without changing content. Then use readiness and start with that same selection and one returned `payload.scene_id`. For episode-list sources this ID names the whole episode, including nested scenes; the native Episode Writer preserves its Voice, duration and batch-price contract. Readiness returns the actual operation_type and estimated_credits. Finalize persists dependent page candidates. Review both proposals and use `story_revision_run(workflow=scene_list_revision, phase=apply)` with the parent `proposal_id`, exact `operation_ids`, and selected `page_proposal_ids` to apply story and pages atomically. For a connected planning revision, source operation IDs are its selected suggestion IDs (card:... or block:...). Review and apply through `story_revision_run(workflow=planning_revision)` with exact accepted choices and selected page_proposal_ids. A dependent page candidate cannot be applied alone. A source_selection with empty operation_ids can continue an already accepted plan. Accepted page ancestors remain read evidence when their current pages still match; they are not selected for another write. Apply the saved draft through its parent revision, retaining the same proposal IDs and receipt-owned prerequisites. Review the saved diff_proposal before explicit apply. It is not a substitute for the full feature pipeline (`treatment_wizard` → `sequence_wizard` → `screenplay_writer`). The structured outline must already exist; this tool does not build it.\n",when_to_use:["The structured outline already exists and you want actual screenplay prose — the verb is WRITE.",'Use `screenplay_writer` for movie or `tv_60` prose with `payload.granularity="full"` and `payload.chunk_index=1` when the selected model supports that scope.',"Use smaller `screenplay_writer` chunks (`sequence`, movie `act`, or `half`) for focused reruns or when the selected model cannot support `full`.","Use `screenplay_writer` without `payload.sequence_number` for short-movie or one-scene projects; they default to section 1.","Use `episode_screenplay` for episode-list project prose generation across up to `payload.episodes_per_call` selected episodes per call (default 10, max 10).","Use `payload.writing_voice` when the draft should follow a saved Custom Voice revision instead of the mode's preset/default page expression.","Use `scene_screenplay` for first-draft prose on one scene or a small batch of up to 3 `payload.scene_codes`.","Use `scene_screenplay` with an exact saved Custom Voice revision when that scene should use the project's authored page expression.","Use `scene_screenplay` with the saved `payload.revision_
358id` and `payload.followup_id` to propose dependent pages after a structural decision."],when_not_to_use:["Do not use for precise screenplay edits.","Do not manually switch to `screenplay_edit_*` or `screenplay_snapshot_apply` while an active screenplay generation parent job is still running.","Do not use to **build** the underlying structured outline (cards, beats, scenes) — use `story_development_run` (story_bootstrap, beat_wizard, scene_wizard) first.","Do not use `scene_screenplay` to bypass missing treatment or sequence guidance for a feature screenplay; complete `treatment_wizard` and `sequence_wizard`, then use `screenplay_writer`.","Do not use to **change or polish** the story structure — use `story_revision_run` (change_wizard, polish_wizard, creative_canvas) instead.","Do not use to **read** the existing screenplay or one scene — use `screenplay_read` or the `screenplay_document` / `screenplay_scene` resources.","Do not run continuity audit before applying required scene-authoring proposals for merge survivors; author the survivor prose first, then run `story_review_run(workflow=continuity_audit)`."],examples:["Generate the full screenplay draft from this project with `screenplay_writer` full scope.","Regenerate sequence 1 of a screenplay draft from this project.","Generate a batch of up to 10 episodic screenplays for selected episodes.","Write the screenplay with saved Custom Voice revision 3 while preserving the existing outline and Story Style.",'Boundary - "Turn this finished outline into a full screenplay." Use `screenplay_writer` here because the structured outline already exists; we want prose now.','Boundary - "Write screenplay prose for one new scene I just outlined." Use `scene_screenplay` here.','Boundary - "Scene List Revision merged scenes and tells me survivor authoring is required." Use `scene_screenplay` with the saved revision/follow-up IDs, finalize its job, review the shared `diff_proposal`, then apply it.'],anti_examples:["Read one screenplay scene.","Outlining the story before any cards exist — that is `story_development_run` with `story_bootstrap`.","Writing all scenes one-by-one with `scene_screenplay` because `screenplay_writer` readiness says treatment/sequence guidance is missing — finish those development stages instead.","Sending more than 3 `scene_codes` in one `scene_screenplay` call — split into multiple focused batches.","Sending more than `payload.episodes_per_call` episode IDs in one `episode_screenplay` call — split into batches.","Polishing existing dialogue in a scene — that is `story_revision_run` with `polish_wizard`.","Making a single surgical edit to existing screenplay prose — that is `screenplay_edit_propose` then `screenplay_edit_apply`."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary","screenplay_document","project_diff_proposals","diff_proposal","episode_screenplay_result"],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"screenplay_writer",phase_modes:["readiness","quote","start"],capabilities:["screenplay_writer.start"]},{name:"episode_screenplay",phase_modes:["readiness","quote","start"],capabilities:["episode_screenplay.run"]},{name:"scene_screenplay",phase_modes:["readiness","quote","start","finalize"],capabilities:["scene_screenplay.run"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",oneOf:[{type:"object",required:["workflow","phase","project_id"],properties:{workflow:{const:"screenplay_writer"},phase:{type:"string",enum:["readiness","quote","start"]},project_id:{type:"integer"},payload:{type:"object",properties:{sequence_number:{type:"integer",minimum:1,maximum:8,description:"Legacy alias for sequence scope. New callers should use granularity plus chunk_index."},granularity:{type:"string",enum:["sequence","act","half","full"]},chunk_index:{type:"integer",minimum:1},template_id:{type:"string"},writing_voice:{description:"Optional exclusive page-expression source. Use a visible preset ID or the exact saved Custom Voice revision.",oneOf:[{type:"object",required:["kind","preset_id"],properties:{kind:{const:"preset"},preset_id:{type:"string",minLength:1,maxLength:80}},additionalProperties:!1},{type:"object",required:["kind","revision"],properties:{kind:{const:"custom"},revision:{type:"integer",minimum:1}},additionalProperties:!1}]},custom_guidance:{type:"string"},llm_identifier:{type:"string",minLength:1},options:{type:"object",properties:{indicate_scene_beats:{type:"boolean"},target_duration_seconds:{type:"integer"},screenplay_intent:{type:"string",enum:["reader_draft","low_budget","medium_budget","high_budget","genai_production"]}},additionalProperties:!1},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},allOf:[{if:{required:["writing_voice"]},then:{not:{required:["template_id"]}}}],additionalProperties:!1}},additionalProperties:!1,allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{required:["billing_quote_id","billing_request_id"]}}},else:{properties:{payload:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}}}]},{type:"object",required:["workflow","phase","project_id"],properties:{workflow:{const:"episode_screenplay"},phase:{const:"readiness"},project_id:{type:"integer"},payload:{type:"object",properties:{episode_ids:{type:"array",items:{type:"string"},minItems:1,maxItems:10,description:"For start: write a batch of 1-10 canonical episode IDs."},episodes_per_call:{type:"integer",minimum:1,maximum:10},custom_guidance:{type:"string"},writing_voice:{description:"Optional exclusive page-expression source. Use a visible preset ID or the exact saved Custom Voice revision.",oneOf:[{type:"object",required:["kind","preset_id"],properties:{kind:{const:"preset"},preset_id:{type:"string",minLength:1,maxLength:80}},additionalProperties:!1},{type:"object",required:["kind","revision"],properties:{kind:{const:"custom"},revision:{type:"integer",minimum:1}},additionalProperties:!1}]},llm_identifier:{type:"string",minLength:1},target_duration_seconds:{type:"integer"},options:{type:"object",properties:{screenplay_intent:{type:"string",enum:["reader_draft","low_budget","medium_budget","high_budget","genai_production"]}},additionalProperties:!1}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","payload"],properties:{workflow:{const:"episode_screenplay"},phase:{const:"start"},project_id:{type:"integer"},payload:{type:"object",properties:{episode_ids:{type:"array",items:{type:"string"},minItems:1,maxItems:10,description:"For start: write a batch of 1-10 canonical episode IDs."},episodes_per_call:{type:"integer",minimum:1,maximum:10},custom_guidance:{type:"string"},writing_voice:{description:"Optional exclusive page-expression source. Use a visible preset ID or the exact saved Custom Voice revision.",oneOf:[{type:"object",required:["kind","preset_id"],properties:{kind:{const:"preset"},preset_id:{type:"string",minLength:1,maxLength:80}},additionalProperties:!1},{type:"object",required:["kind","revision"],properties:{kind:{const:"custom"},revision:{type:"integer",minimum:1}},additionalProperties:!1}]},llm_identifier:{type:"string",minLength:1},target_duration_seconds:{type:"integer"},options:{type:"object",properties:{screenplay_intent:{type:"string",enum:["reader_draft","low_budget","medium_budget","high_budget","genai_production"]}},additionalProperties:!1},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},additionalProperties:!1,required:["episode_ids","billing_quote_id","billing_request_id"]}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","payload"],properties:{workflow:{const:"episode_screenplay"},phase:{const:"quote"},project_id:{type:"integer"},payload:{type:"object",properties:{episode_ids:{type:"array",items:{type:"string"},minItems:1,maxItems:10,description:"For start: write a batch of 1-10 canonical episode IDs."},episodes_per_call:{type:"integer",minimum:1,maximum:10},custom_guidance:{type:"string"},writing_voice:{description:"Optional exclusive page-expression source. Use a visible preset ID or the exact saved Custom Voice revision.",oneOf:[{type:"object",required:["kind","preset_id"],properties:{kind:{const:"preset"},preset_id:{type:"string",minLength:1,maxLength:80}},additionalProperties:!1},{type:"object",required:["kind","revision"],properties:{kind:{const:"custom"},revision:{type:"integer",minimum:1}},additionalProperties:!1}]},llm_identifier:{type:"string",minLength:1},target_duration_seconds:{type:"integer"},options:{type:"object",properties:{screenplay_intent:{type:"string",enum:["reader_draft","low_budget","medium_budget","high_budget","genai_production"]}},additionalProperties:!1}},additionalProperties:!1,required:["episode_ids"]}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","payload"],properties:{workflow:{const:"scene_screenplay"},phase:{type:"string",enum:["readiness","quote","start"]},project_id:{type:"integer"},payload:{type:"object",properties:{scene_id:{type:"string"},scene_codes:{type:"array",items:{type:"string"},minItems:1,maxItems:3},custom_guidance:{type:"string"},template_id:{type:"string"},writing_voice:{description:"Optional exclusive page-expression source. Use a visible preset ID or the exact saved Custom Voice revision.",oneOf:[{type:"object",required:["kind","preset_id"],properties:{kind:{const:"preset"},preset_id:{type:"string",minLength:1,maxLength:80}},additionalProperties:!1},{type:"object",required:["kind","revision"],properties:{kind:{const:"custom"},revision:{type:"integer",minimum:1}},additionalProperties:!1}]},llm_identifier:{type:"string",minLength:1},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},oneOf:[{required:["scene_id"],not:{required:["scene_codes"]}},{required:["scene_codes"],not:{required:["scene_id"]}}],allOf:[{not:{required:["regenerate"]}},{if:{required:["writing_voice"]},then:{not:{required:["template_id"]}}}],additionalProperties:!1}},additionalProperties:!1,allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{required:["billing_quote_id","billing_request_id"]}}},else:{properties:{payload:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}}}]},{type:"object",required:["workflow","phase","project_id","payload"],properties:{workflow:{const:"scene_screenplay"},phase:{type:"string",enum:["readiness","quote","start"]},project_id:{type:"integer"},payload:{type:"object",properties:{custom_guidance:{type:"string"},template_id:{type:"string"},writing_voice:{description:"Optional exclusive page-expression source. Use a visible preset ID or the exact saved Custom Voice revision.",oneOf:[{type:"object",required:["kind","preset_id"],properties:{kind:{const:"preset"},preset_id:{type:"string",minLength:1,maxLength:80}},additionalProperties:!1},{type:"object",required:["kind","revision"],properties:{kind:{const:"custom"},revision:{type:"integer",minimum:1}},additionalProperties:!1}]},llm_identifier:{type:"string",minLength:1}
358,revision_id:{type:"string",minLength:1,maxLength:200},followup_id:{type:"string",minLength:3,maxLength:64,pattern:"^\\d+:\\d+$"},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},allOf:[{not:{required:["regenerate"]}},{if:{required:["writing_voice"]},then:{not:{required:["template_id"]}}}],additionalProperties:!1,required:["revision_id","followup_id"]}},additionalProperties:!1,allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{required:["billing_quote_id","billing_request_id"]}}},else:{properties:{payload:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}}}]},{type:"object",required:["workflow","phase","project_id","job_id"],properties:{workflow:{const:"scene_screenplay"},phase:{const:"finalize"},project_id:{type:"integer"},job_id:{type:"string",minLength:1,maxLength:200},payload:{type:"object",properties:{revision_id:{type:"string",minLength:1,maxLength:200}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","payload"],properties:{workflow:{const:"scene_screenplay"},phase:{type:"string",enum:["readiness","quote","start"]},project_id:{type:"integer"},payload:{type:"object",properties:{custom_guidance:{type:"string"},template_id:{type:"string"},writing_voice:{description:"Optional exclusive page-expression source. Use a visible preset ID or the exact saved Custom Voice revision.",oneOf:[{type:"object",required:["kind","preset_id"],properties:{kind:{const:"preset"},preset_id:{type:"string",minLength:1,maxLength:80}},additionalProperties:!1},{type:"object",required:["kind","revision"],properties:{kind:{const:"custom"},revision:{type:"integer",minimum:1}},additionalProperties:!1}]},llm_identifier:{type:"string",minLength:1},revision_id:{type:"string",minLength:1,maxLength:200},source_selection:{type:"object",required:["proposal_id","operation_ids"],properties:{proposal_id:{type:"string",minLength:1,maxLength:200},operation_ids:{type:"array",minItems:0,maxItems:500,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:120}},edited_fields:{type:"object",maxProperties:500,additionalProperties:{type:"object",additionalProperties:!0}}},additionalProperties:!1},scene_id:{type:"string",minLength:1,maxLength:200},page_proposal_ids:{type:"array",maxItems:20,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:200}},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},allOf:[{not:{required:["regenerate"]}},{if:{required:["writing_voice"]},then:{not:{required:["template_id"]}}}
358],additionalProperties:!1,required:["revision_id","source_selection","scene_id"]}},additionalProperties:!1,allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{required:["billing_quote_id","billing_request_id"]}}},else:{properties:{payload:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}}}]},{type:"object",required:["workflow","phase","project_id","payload"],properties:{workflow:{const:"scene_screenplay"},phase:{const:"source"},project_id:{type:"integer"},payload:{type:"object",required:["revision_id","source_selection"],properties:{revision_id:{type:"string",minLength:1,maxLength:200},source_selection:{type:"object",required:["proposal_id","operation_ids"],properties:{proposal_id:{type:"string",minLength:1,maxLength:200},operation_ids:{type:"array",minItems:0,maxItems:500,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:120}},edited_fields:{type:"object",maxProperties:500,additionalProperties:{type:"object",additionalProperties:!0}}},additionalProperties:!1},page_proposal_ids:{type:"array",maxItems:20,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:200}}},additionalProperties:!1}},additionalProperties:!1}]},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase"],properties:{workflow:{type:"string"},phase:{type:"string"},async:{type:"boolean"},job_id:{type:"string"},readiness:{type:"object"},result:{type:"object"},recommended_action:{type:"string"},screenplay_stage:{type:"string"},project_id:{type:"integer"},project_name:{type:"string"},project_mode:{type:"string"},source_proposal_id:{type:"string"},source_selection:{type:"object"},source_fingerprint:{type:"string"},parent_source_fingerprint:{type:"string"},review_page_proposal_ids:{type:"array",items:{type:"string"}},scenes:{type:"array",items:{type:"object"},description:"Proposed-source targets with stable scene IDs, current text and suggested status. Read these IDs before generation; newly proposed scenes are not yet canonical."},proposal_id:{type:"string",description:"Saved shared diff proposal id when scene_screenplay targets a revision follow-up."},scene_authoring_segments:{type:"array",description:"Generated scene segments stored for review before explicit proposal apply.",items:{type:"object"}},base_screenplay_rev:{type:"integer",description:"Screenplay snapshot revision captured when the reviewable proposal was generated."},sequence_number:{type:["integer","null"]},granularity:{type:"string"},effective_granularity:{type:"string",description:"Backend-resolved generation scope; do not infer a single sequence from sequence_number."},chunk_index:{type:["integer","null"]},covered_sequence_numbers:{type:"array",items:{type:"integer"}},target_cards:{type:"array",items:{type:"object"}},writing_voice:{type:["object","null"]},total_sequences:{type:["integer","null"]},valid_sequence_numbers:{type:"array",items:{type:"integer"}},structure_key:{type:["string","null"]},template_id:{type:["string","null"],description:"Selected preset identity, or null when Custom Voice is the sole authorial-expression source."},template_name:{type:["string","null"],description:"Selected preset label, or null when Custom Voice is the sole authorial-expression source."},target_card_code:{type:["string","null"]},resource_links:{type:"array",items:{type:"object"}},pipeline_state:{$ref:"./_common/pipeline_state.schema.json"},next_actions:{type:"array",items:{$ref:"./_common/next_action.schema.json"}}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_import_run",version:1,stability:"beta",category:"screenplay",family_id:"screenplay",auth_scope:"screenplay:write",approval_policy:"suggest",kind:"orchestration",description:`Import screenplay scenes, beats and canonical pages. Quote first; after accepting use billing_quote_id, a stable billing_request_id UUID and identical source/options. Inline content supports text/FDX XML; content_base64 supports local FDX bytes. ChatGPT attachments use their verified mounted file path in file at quote; ChatGPT supplies the download object. Never use a file ID as that path or fabricate a URL. Use source_format=plain_text for TXT/Fountain or fdx for FDX, then source_handle at Start. Supports TXT/Fountain and XML/zipped FDX. Poll job_get until complete.
359`,when_to_use:["Use when the caller already has screenplay text or a local `.fdx` file and wants BeatBandit to ingest it into an existing project.","Use `content_base64` when importing a `.fdx` file from disk; the MCP server cannot read the caller's local filesystem path directly.","For a ChatGPT attachment, pass its verified host-local path in `file`; ChatGPT transfers it and supplies the required download object to MCP. This differs from asking BeatBandit to open a path on the caller's computer.","Use when the desired outcome is the same synced import result the BeatBandit website import wizard produces.","Once the import starts, poll `job_get` until completion instead of trying to drive manual finalize steps."],when_not_to_use:["Do not use to write new screenplay prose from an existing outline; use `screenplay_generation_run` instead.","Do not use for surgical edits to an already-imported screenplay; use `screenplay_edit_*`, `screenplay_snapshot_apply`, or `screenplay_rewrite_run` instead.","Do not use for raw concept-to-outline development from an idea; use `story_development_run` instead.","Do not pass a local file path string like `~/Downloads/script.fdx`; read the file locally and send its bytes through `content_base64` instead."],examples:["Import this pasted screenplay into my current BeatBandit project.","Import this raw `.fdx` XML content and rebuild the project structure.","Import the supplied base64-encoded `u
359kko1.fdx` bytes with `source_format=fdx`, `content_base64`, and `source_filename=ukko1.fdx`, then poll `job_get` until the import completes."],anti_examples:["Generate screenplay prose for this outline.","Rewrite scene 12 without re-importing the project.","Pass `/Users/me/Desktop/ukko1.fdx` as `content` and expect the server to read the file for you."],schema_pattern:"import_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary","screenplay_document"],capabilities:["screenplay_import.run","screenplay_import.quote"],implemented_status:"v1",variants:null,input_schema:{$ref:"./screenplay.import.run.input.json"},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id"],properties:{async:{type:"boolean"},job_id:{type:"string"},status:{type:"string"},project_id:{type:"integer"},project_name:{type:"string"},project_mode:{type:"string"},workflow_phase:{type:"string"},import_stage:{type:"string"},active_child_job_id:{type:"string"},source_format:{type:"string",enum:["plain_text","fdx"]},source_filename:{type:["string","null"]},estimated_credits:{type:"integer",minimum:0},reserved_credits:{type:"integer",minimum:0},credit_reservation_id:{type:"string"},credits_charged:{type:"integer",minimum:0},credits_skipped_reason:{type:"string"},steps:{type:"array",items:{type:"object"}},summary:{type:"object"},resource_links:{type:"array",items:{type:"object"}},pipeline_state:{$ref:"./_common/pipeline_state.schema.json"},next_actions:{type:"array",items:{$ref:"./_common/next_action.schema.json"}},recommended_action:{type:"string"},result:{type:"object"},phase:{type:"string",enum:["quote","start"]},quote:{type:"object"},source_handle:{type:"string",format:"uuid"}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_proposal_create",version:1,stability:"beta",category:"screenplay",family_id:"screenplay",auth_scope:"project:write",approval_policy:"automatic",kind:"write",description:"Save supplied scene or whole-episode text as a reviewable draft. Use expected_source from screenplay_read and reuse request_id on retry. No generation, credits, or canonical page change.",when_to_use:["Read the target with screenplay_read, then save supplied text using its expected_source and a stable request_id."],when_not_to_use:["Use native Writers for generation or story_mutate to create a new scene target."],examples:["Save the scene we drafted in conversation as an alternative for review."],anti_examples:["Replace current pages without reviewing and explicitly applying the returned proposal."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["screenplay.proposal_create"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",properties:{project_id:{type:"integer"},request_id:{type:"string",minLength:1,maxLength:100},target_id:{type:"string",minLength:1,maxLength:200},text:{type:"string",minLength:1,maxLength:5e5},expected_source:{type:"object",required:["snapshot_rev","target_fingerprint"],properties:{snapshot_rev:{type:"integer",minimum:0},target_fingerprint:{type:"string",pattern:"^[a-f0-9]{64}$"}},additionalProperties:!1}},required:["project_id","request_id","target_id","text","expected_source"],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","proposal"],properties:{project_id:{type:"integer"},proposal:{type:"object",additionalProperties:!0},next_actions:{type:"array",items:{type:"object",additionalProperties:!0}}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_proposal_query",version:1,stability:"beta",category:"screenplay",family_id:"screenplay",auth_scope:"project:read",approval_policy:"automatic",kind:"read",description:"List or read complete saved screenplay proposals, source evidence, and their native review or Apply authority. Reading never applies or finalizes.",when_to_use:["Recover a saved proposal or read its complete pages, changes, source evidence and native next action."],when_not_to_use:["A producing tool already returned the complete proposal needed for review."],examples:["Reopen the saved alternative scene before deciding whether to apply it."],anti_examples:["Treat a parent-owned candidate as independently applicable."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["screenplay.proposal_query"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",properties:{project_id:{type:"integer"},mode:{type:"string",enum:["list","get"]},proposal_id:{type:"string",minLength:1,maxLength:200},include_applied:{type:"boolean"},origin_tool:{type:"string",minLength:1,maxLength:200},limit:{type:"integer",minimum:1,maximum:100}},required:["project_id","mode"],additionalProperties:!1,allOf:[{if:{properties:{mode:{const:"get"}}},then:{required:["proposal_id"]}}]},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","mode"],properties:{project_id:{type:"integer"},mode:{type:"string",enum:["list","get"]},count:{type:"integer",minimum:0},items:{type:"array",items:{type:"object",additionalProperties:!0}},proposal:{type:"object",additionalProperties:!0},next_actions:{type:"array",items:{type:"object",additionalProperties:!0}}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_read",version:1,stability:"beta",category:"screenplay",family_id:"screenplay",auth_scope:"project:read",approval_policy:"never",kind:"read",description:"Read compact screenplay document context, one episodic screenplay, one movie sequence, one scene, or the explicit full document from BeatBandit's structured screenplay editor.",when_to_use:["Use compact `mode=document` for document metadata and scene/sequence links.","Use `mode=sequence` with `sequence_number` to read about one movie sequence at a time.","Use `mode=episode` with `episode_id` to read one episodic screenplay without loading the full series document.","Use `mode=document` with `document_scope=full` only when the caller explicitly needs the entire screenplay payload.","Use `mode=scene` when the caller needs one focused screenplay scene."],when_not_to_use:["Do not use for story graph reads or screenplay mutation.","Do not treat an in-flight `screenplay_writer` parent job as already persisted; poll `job_get` first if screenplay generation is still active."],examples:["Get a compact screenplay document summary for project 42.","Read sequence 3 from project 42.","Read episode episode_01 from project 42.","Read scene 50.10.20 from project 42."],anti_examples:["Apply these screenplay edits immediately."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["screenplay_document","screenplay_sequence","screenplay_sce
359ne"],capabilities:["screenplay.get_document","screenplay.get_scene"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["mode","project_id"],properties:{mode:{type:"string",enum:["document","episode","scene","sequence"]},project_id:{type:"integer"},document_scope:{type:"string",enum:["summary","full"],description:"For mode=document, summary is the compact default. Use full only when the caller explicitly needs the entire screenplay payload."},scene_id:{type:"string"},episode_id:{type:"string",description:"For mode=episode, read exactly one episodic screenplay by its canonical episode ID."},sequence_number:{type:"integer",minimum:1,maximum:8,description:"For mode=sequence, read one movie sequence at a time."}},allOf:[{if:{properties:{mode:{const:"episode"}}},then:{required:["episode_id"]}},{if:{properties:{mode:{const:"scene"}}},then:{required:["scene_id"]}},{if:{properties:{mode:{const:"sequence"}}},then:{required:["sequence_number"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["mode"],properties:{mode:{type:"string"},document:{type:"object"},document_scope:{type:"string"},document_summary:{type:"object"},sequence:{type:"object"},episode:{type:"object"},scene:{type:"object"},resource_links:{type:"array",items:{type:"object"}},expected_source:{type:"object",required:["snapshot_rev","target_fingerprint"],properties:{snapshot_rev:{type:"integer",minimum:0},target_fingerprint:{type:"string",pattern:"^[a-f0-9]{64}$"}},additionalProperties:!1}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_rewrite_run",version:1,stability:"beta",category:"screenplay_revision",family_id:"screenplay",auth_scope:"screenplay:write",approval_policy:"suggest",kind:"orchestration",description:"Propose direction-driven screenplay rewrites scoped to scenes, ranges, characters or the whole draft. Quote and obtain acceptance before Start; reuse billing IDs on retries.",when_to_use:["Readiness checks scope. Quote first, show the price, then Start with billing_quote_id and a fresh billing_request_id; reuse both on retries.","For a passage use range_rewrite with scope.block_range scene_id/start_block_id/end_block_id from screenplay_read.","Poll job_get, finalize by job_id, then apply canonical proposals by proposal_id. To keep only some changes, pass operation_ids (screenplay_ops op_ids; planning card:<code>:<field>/create:<code>); declined operations close with the proposal.","Proposed sources include revision_id, source_selection and optional page_proposal_ids in readiness/quote/Start. Finalize identifies proposal_workflow and derived_page_proposal_ids. Review/decide through story_revision_run planning_revision or scene_list_revision, retaining selected operation_ids and page_proposal_ids. Never apply a structural parent here."],when_not_to_use:["For story/page reconciliation use Sync Screenplay/project_updates, for narrow edits use screenplay_edit_*, and for exact scene or block replacement use screenplay_snapshot_apply (replace_scene_from_text for pasted scenes)."],examples:["Sharpen a scene; rewrite a passage or one character's dialogue."],anti_examples:["Reading; exact pasted replacements; new outlines."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["screenplay_document","project_canon_summary","project_updates"],capabilities:["screenplay_rewrite.run"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase","project_id"],properties:{workflow:{type:"string",enum:["scene_rewrite","range_rewrite","character_rewrite","whole_rewrite"]},phase:{type:"string",enum:["quote","readiness","start","finalize","apply"]},project_id:{type:"integer"},direction:{type:"string",minLength:1,maxLength:8e3},scope:{type:"object",properties:{scene_id:{type:"string"},scene_codes:{type:"array",items:{type:"string"}},character_name:{type:"string"},sequence_code:{type:"string"},act_code:{type:"string"},block_range:{type:"object",description:'Inclusive screenplay passage anchor for workflow=range_rewrite. Use block IDs returned by screenplay_read. Recommended shape: {"scene_id":"...","start_block_id":"...","end_block_id":"..."}; omit end_block_id for a single-block range.',properties:{scene_id:{type:"string",description:"Screenplay scene or episode ID containing the selected range."},start_block_id:{type:"string",description:"Inclusive first screenplay block ID from screenplay_read."},end_block_id:{type:"string",description:"Inclusive last screenplay block ID from screenplay_read. Omit when rewriting one block."}},additionalProperties:!0}},additionalProperties:!1},proposal_id:{type:"string"},job_id:{type:"string"},operation_ids:{type:"array",minItems:1,maxItems:500,uniqueItems:!0,description:"Apply only: selected operation IDs from the saved proposal. Screenplay edits use screenplay_ops.ops[].op_id; planning uses review change IDs card:<code>:<field> and create:<code>. Omit to apply everything. The proposal then closes and its receipt lists applied and declined IDs.",items:{type:"string",minLength:1,maxLength:200}}
359,revision_id:{type:"string",minLength:1,maxLength:200},source_selection:{type:"object",additionalProperties:!1,required:["proposal_id","operation_ids"],properties:{proposal_id:{type:"string",minLength:1,maxLength:200},operation_ids:{type:"array",maxItems:500,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:120}},edited_fields:{type:"object",maxProperties:500,additionalProperties:{type:"object",additionalProperties:!0}}}},page_proposal_ids:{type:"array",maxItems:20,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:200}},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},additionalProperties:!1,allOf:[{if:{properties:{phase:{enum:["quote","start"]}}},then:{required:["direction"]}},{if:{properties:{phase:{const:"finalize"}}},then:{required:["job_id"]}},{if:{properties:{phase:{const:"apply"}}},then:{required:["proposal_id"]}},{if:{required:["source_selection"]},then:{required:["revision_id"],properties:{phase:{enum:["readiness","start","quote"]}}}},{if:{required:["revision_
359id"]},then:{required:["source_selection"]}},{if:{required:["page_proposal_ids"],properties:{page_proposal_ids:{minItems:1}}},then:{required:["source_selection"]}},{if:{properties:{phase:{const:"start"}}},then:{required:["billing_quote_id","billing_request_id"]},else:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}},{if:{required:["operation_ids"]},then:{properties:{phase:{const:"apply"}}}}]},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["phase","workflow"],properties:{phase:{type:"string"},workflow:{type:"string"},proposal_id:{type:"string"},summary:{type:"array",items:{type:"object"}},updates:{type:"array",items:{type:"object"}},creates:{type:"array",items:{type:"object"}},notes_patch:{type:"object"},screenplay_ops:{type:"object"},readiness:{type:"object"},applied_summary:{type:"object"},snapshot_rev:{type:"integer"},credits_charged:{type:["integer","null"],minimum:0},credits_skipped_reason:{type:"string"},no_op_reason:{type:"string"},resource_links:{type:"array",items:{type:"object"}},quote:{type:"object",required:["quote_id","mode","allowance","expires_at"],properties:{quote_id:{type:"string",format:"uuid"},mode:{enum:["fixed","usage"]},allowance:{type:"integer",minimum:0},expires_at:{type:"string"}},additionalProperties:!0},billing_operation_id:{type:"string",format:"uuid"},billing_status:{type:"string"}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_snapshot_apply",version:1,stability:"beta",category:"screenplay",family_id:"screenplay",auth_scope:"screenplay:write",approval_policy:"required",kind:"write",description:"Apply structured screenplay block edits through the snapshot-save path.",when_to_use:["Use after `screenplay_read` when you know the current `base_rev`, target scene/block IDs, and the exact mutation to apply.","Use for direct block-level edits such as replacing text, inserting text, deleting text, deleting a block, inserting a new block, or updating block metadata such as dialogue character display.","Use `replace_scene_from_text` when the caller has exact Fountain/plain screenplay text and wants to replace one existing scene's editor blocks without creative rewriting."],when_not_to_use:['Do not use for natural-language requests like "make this dialogue sharper"; use `screenplay_edit_propose` then `screenplay_edit_apply`.',"Do not use `screenplay_rewrite_run` for exact known replacement text; reserve rewrite proposals for creative direction-driven changes.","Do not use raw legacy editor operation objects; use the snapshot mutation operations exposed by this tool.","Do not use while `screenplay_generation_run` is still generating screenplay prose for the same project; poll `job_get` first."],examples:["Replace block `block_abc` with this exact revised action line.","Delete block `block_abc` from snapshot revision 42.","Insert an action block after `block_abc` in scene `scene_123`.","Update dialogue block `block_abc` so its character display is `LESTRADE`.","Replace scene `scene_123` from exact Fountain text using `replace_scene_from_text`."],anti_examples:["Rewrite this whole scene in a darker tone.","Apply this raw `updateText` op."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["screenplay_document"],capabilities:["screenplay.snapshot_apply"],implemented_status:"v1",variants:null,input_schema:{$ref:"./screenplay.snapshot_apply.input.json"},output_schema:{$ref:"./screenplay.snapshot_apply.output.json"},schema_load_errors:[]},{name:"screenplay_writing_voice",version:1,stability:"beta",category:"screenplay_generation",family_id:"story_workflows",auth_scope:"project:write",approval_policy:"suggest",kind:"orchestration",description:"Save or select the project Writing Voice. Inspect with screenplay_writing_voice_query; analyze with screenplay_writing_voice_analyze.",when_to_use:["Save or select the project Writing Voice. Inspect with screenplay_writing_voice_query; analyze with screenplay_writing_voice_analyze."],when_not_to_use:["Do not use for Novel Adaptation Voice Lab; use `story_development_run(workflow=novel_adaptation)`.","Do not use for character or narrator audio references; use `voice_profile`.","Do not use for `tv_season`, which plans a season but does not write screenplay pages.","Analysis never saves. Saving Custom Voice explicitly activates its new revision."],examples:["Use screenplay_writing_voice operation=save for project 123.","Use screenplay_writing_voice operation=select for project 123."],anti_examples:["Clone a Novel Voice profile into a screenplay project.","Create a speech reference sample for a character."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["screenplay_writing_voice","screenplay_writing_voice_proposal"],capabilities:["screenplay_writing_voice.save","screenplay_writing_voice.select"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id"],properties:{operation:{type:"string",enum:["select","save"]},project_id:{type:"integer"},expected_revision:{type:"integer",minimum:0},if_match_updated_at:{type:"string",minLength:1,maxLength:100},selection:{oneOf:[{type:"object",required:["kind","preset_id"],properties:{kind:{const:"preset"},preset_id:{type:"string",minLength:1,maxLength:80}},additionalProperties:!1},{type:"object",required:["kind","revision"],properties:{kind:{const:"custom"},revision:{type:"integer",minimum:1}},additionalProperties:!1}]}
359,voice:{type:"object",required:["schema_version","label","action_style","dialogue_style","page_rhythm"],properties:{schema_version:{const:1},label:{type:"string",minLength:1,maxLength:120},action_style:{type:"string",minLength:1,maxLength:4e3},dialogue_style:{type:"string",minLength:1,maxLength:4e3},page_rhythm:{type:"string",minLength:1,maxLength:4e3},tone_and_atmosphere:{type:"string",maxLength:4e3},voice_boundaries:{type:"array",items:{type:"string",minLength:1},maxItems:8,uniqueItems:!0},samples:{type:"array",maxItems:3,items:{type:"object",required:["sample_id","label","excerpt"],properties:{sample_id:{type:"string",minLength:1,maxLength:80},label:{type:"string",minLength:1,maxLength:120},excerpt:{type:"string",minLength:1,maxLength:3e4}},additionalProperties:!1}}},additionalProperties:!1}},allOf:[{if:{properties:{operation:{const:"select"}}},then:{required:["selection"]}},{if:{properties:{operation:{const:"save"}}},then:{required:["expected_revision","voice"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id","writing_voice_updated_at"],properties:{operation:{type:"string",enum:["select","save"]},project_id:{type:"integer"},mode:{type:["string","null"]},revision:{type:"integer",minimum:0},writing_voice_updated_at:{type:["string","null"]},exists:{type:"boolean"},label:{type:["string","null"]},sample_count:{type:"integer",minimum:0,maximum:3},selection:{type:"object",additionalProperties:!0},preset_summaries:{type:"array",items:{type:"object",additionalProperties:!0}},preset:{type:"object",additionalProperties:!0},async:{type:"boolean"},job_id:{type:["string","null"]},status:{type:["string","null"]},readiness:{type:"object",additionalProperties:!0},proposal_summaries:{type:"array",items:{type:"object",additionalProperties:!0}},estimated_credits:{type:"integer",minimum:0},credits_charged:{type:["integer","null"],minimum:0},billing_pending:{type:"boolean"},billing_status:{type:"string"},billing_operation_id:{type:"string",format:"uuid"},quote:{type:"object",additionalProperties:!0},reserved_credits:{type:"integer",minimum:0},credits_skipped_reason:{type:"string"},resource_links:{type:"array",items:{type:"object",additionalProperties:!0}},next_actions:{type:"array",items:{type:"object",additionalProperties:!0}}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_writing_voice_analyze",version:1,stability:"beta",category:"screenplay_generation",family_id:"story_workflows",auth_scope:"project:write",approval_policy:"suggest",kind:"orchestration",description:"Check readiness, quote, start, or finalize Writing Voice analysis. Start consumes credits;
359 analysis does not save a Voice.",when_to_use:["Design a Voice from direction or infer it from supplied samples using the native quoted analysis lifecycle."],when_not_to_use:["Use screenplay_writing_voice_query to inspect saved content or screenplay_writing_voice to save/select it."],examples:["Quote an infer analysis from these samples, then start the accepted request with the same billing IDs."],anti_examples:["Automatically save an analysis result as the project's selected Voice."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["screenplay_writing_voice.analyze"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id"],properties:{operation:{type:"string",enum:["analysis_readiness","analysis_quote","analysis_start","analysis_finalize"]},project_id:{type:"integer"},description:{type:"string",maxLength:12e3},analysis_mode:{type:"string",enum:["design","infer"]},samples:{type:"array",maxItems:3,items:{type:"object",required:["sample_id","label","excerpt"],properties:{sample_id:{type:"string",minLength:1,maxLength:80},label:{type:"string",minLength:1,maxLength:120},excerpt:{type:"string",minLength:1,maxLength:3e4}},additionalProperties:!1}},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"},job_id:{type:"string",minLength:1}},allOf:[{if:{properties:{operation:{const:"analysis_start"}}},then:{required:["billing_quote_id","billing_request_id"]}},{if:{properties:{operation:{enum:["analysis_quote","analysis_start"]}}},then:{required:["analysis_mode"],allOf:[{if:{properties:{analysis_mode:{const:"design"}}},then:{required:["description"],properties:{description:{minLength:1,pattern:"\\S"}}}},{if:{properties:{analysis_mode:{const:"infer"}}},then:{required:["samples"],properties:{samples:{minItems:1}}}}]}},{if:{properties:{operation:{const:"analysis_finalize"}}},then:{required:["job_id"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id","writing_voice_updated_at"],properties:{operation:{type:"string",enum:["analysis_readiness","analysis_quote","analysis_start","analysis_finalize"]},project_id:{type:"integer"},mode:{type:["string","null"]},revision:{type:"integer",minimum:0},writing_voice_updated_at:{type:["string","null"]},exists:{type:"boolean"},label:{type:["string","null"]},sample_count:{type:"integer",minimum:0,maximum:3},selection:{type:"object",additionalProperties:!0},preset_summaries:{type:"array",items:{type:"object",additionalProperties:!0}},preset:{type:"object",additionalProperties:!0},async:{type:"boolean"},job_id:{type:["string","null"]},status:{type:["string","null"]},readiness:{type:"object",additionalProperties:!0},proposal_summaries:{type:"array",items:{type:"object",additionalProperties:!0}},estimated_credits:{type:"integer",minimum:0},credits_charged:{type:["integer","null"],minimum:0},billing_pending:{type:"boolean"},billing_status:{type:"string"},billing_operation_id:{type:"string",format:"uuid"},quote:{type:"object",additionalProperties:!0},reserved_credits:{type:"integer",minimum:0},credits_skipped_reason:{type:"string"},resource_links:{type:"array",items:{type:"object",additionalProperties:!0}},next_actions:{type:"array",items:{type:"object",additionalProperties:!0}}},additionalProperties:!0},schema_load_errors:[]},{name:"screenplay_writing_voice_query",version:1,stability:"beta",category:"screenplay_generation",family_id:"story_workflows",auth_scope:"project:read",approval_policy:"automatic",kind:"read",description:"Read the complete saved Writing Voice, a transparent preset, or completed analysis proposals.",when_to_use:["Inspect current Voice instructions and samples, a named preset, or a completed analysis by job_id."],when_not_to_use:["Use screenplay_writing_voice for save/select or screenplay_writing_voice_analyze for paid analysis."],examples:["Show the complete dialogue instructions and sample excerpts for this project."],anti_examples:["Finalize an unfinished analysis or select a Voice through a read."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["screenplay_writing_voice.read"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id"],properties:{operation:{type:"string",enum:["get","preset_get","proposal_get"]},project_id:{type:"integer"},preset_id:{type:"string",minLength:1,maxLength:80},job_id:{type:"string",minLength:1}},allOf:[{if:{properties:{operation:{const:"preset_get"}}},then:{required:["preset_id"]}},{if:{properties:{operation:{const:"proposal_get"}}},then:{required:["job_id"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id","writing_voice_updated_at"],properties:{operation:{type:"string",enum:["get","preset_get","proposal_get"]},project_id:{type:"integer"},mode:{type:["string","null"]},revision:{type:"integer",minimum:0},writing_voice_updated_at:{type:["string","null"]},exists:{type:"boolean"},label:{type:["string","null"]},sample_count:{type:"integer",minimum:0,maximum:3},selection:{type:"object",additionalProperties:!0},preset_summaries:{type:"array",items:{type:"object",additionalProperties:!0}},preset:{type:"object",additionalProperties:!0},async:{type:"boolean"},job_id:{type:["string","null"]},status:{type:["string","null"]},readiness:{type:"object",additionalProperties:!0},proposal_summaries:{type:"array",items:{type:"object",additionalProperties:!0}},estimated_credits:{type:"integer",minimum:0},credits_charged:{type:["integer","null"],minimum:0},billing_pending:{type:"boolean"},billing_status:{type:"string"},billing_operation_id:{type:"string",format:"uuid"},quote:{type:"object",additionalProperties:!0},reserved_credits:{type:"integer",minimum:0},credits_skipped_reason:{type:"string"},resource_links:{type:"array",items:{type:"object",additionalProperties:!0}},next_actions:{type:"array",items:{type:"object",additionalProperties:!0}}},additionalProperties:!0},schema_load_errors:[]},{name:"shot_list_generate",version:1,stability:"beta",category:"media_storyboard",family_id:"media",auth_scope:"project:write",approval_policy:"suggest",kind:"or
359chestration",description:"Run or cancel BeatBandit's backend-owned shot-list generation workflow for a project, scene, or episode scope. Get a quote, accept its billing IDs on Start, then follow progress through `job_get`.",when_to_use:["Use when the user wants BeatBandit to generate or regenerate a shot-list scope.","Use when the caller wants BeatBandit to own the full shot-list generation lifecycle instead of manually driving pass-by-pass finalize steps.","Use `phase=quote` before Start; preserve `payload.billing_quote_id` and `payload.billing_request_id` on retries.","Use `phase=cancel` with the parent `job_id` to stop further calls and settle incurred provider cost.","Use `shot_mode` as clip length / grouped generation length, not as the duration of each individual camera cut.","For modern storyboard-to-video workflows, use the default `shot_mode=length_15`, `shot_split_mode=hidden`, and `shot_field_preset=seedance_storyboard` unless the user explicitly asks for different clip lengths or formatting.","After the job completes, strongly prefer this visual-reference order unless the user explicitly skips it: query assets, create or select a Scene Moodboard with `image_generate(workflow=generate_scene_moodboard)`, then create recurring reference images with `image_generate(workflow=generate_element)` using that moodboard as a reference source when possible, and only then generate per-shot storyboard frames. If the scene is simple, skip the recurring reference images step, create just the scene moodboard and use it as the common reference source for all the shots in the scene (since it describes the key visual elements of the scene)."],when_not_to_use:["Do not use for manual shot CRUD after a scope already exists.","Do not use for image, video, or media generation."],examples:["Generate a shot list for scene 50.10.20.","Check whether this project is ready for shot-list generation before starting a scoped run.","Cancel a stale or no-longer-needed run with its parent job ID.",'Quote the default storyboard-to-video shot list with `payload={"scope_type":"project","shot_mode":"length_15","shot_split_mode":"hidden","shot_field_preset":"seedance_storyboard","also_create_compact_video_prompt":true,"auto_manage_timeline":true}`.',"Once the completed job is returned by `job_get`, inspect `shot_list_query(mode=assets)`, generate/select a Scene Moodboard, then generate recurring element references before shot frames."],anti_examples:["List shots already in the scope.","Jump straight from a completed shot-list job to per-shot `image_generate(workflow=generate_shot)` calls when no Scene Moodboard or recurring reference images exist; generate/select the moodboard and recurring references first unless the user explicitly says to skip them."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["shot_list_scope"],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"generate_scope",phase_modes:["readiness","quote","start","cancel"],capabilities:["shot_list.generate"]}]},input_schema:{$ref:"./shot_list.generate.input.json"},output_schema:{$ref:"./shot_list.generate.output.json"},schema_load_errors:[]},{name:"shot_list_query",version:1,stability:"beta",category:"media_storyboard",family_id:"media",auth_scope:"project:read",approval_policy:"never",kind:"read",description:"Read shot-list scope summaries, shots, recurring elements, and linked shot assets.",when_to_use:["Use for read-only shot-list inspection by stable project id and scope.","Use when the caller wants a scope snapshot or linked shot assets without mutating anything."],when_not_to_use:["Do not use for generation or mutations."],examples:["Show me the shots in this scene scope.","Read the recurring elements and linked assets for this shot-list scope."],anti_examples:["Generate a new image for this shot."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["shot_list_scope"],capabilities:["shot_list.query"],implemented_status:"v1",variants:null,input_schema:{$ref:"./shot_list.query.input.json"},output_schema:{$ref:"./shot_list.query.output.json"},schema_load_errors:[]},{name:"shot_mutate",version:1,stability:"beta",category:"media_storyboard",family_id:"media",auth_scope:"project:write",approval_policy:"required",kind:"write",description:"Create, update, delete, reorder, or reposition shots, recurring shot elements, scene moodboard selections, selected shot-audio takes, and reviewed video-continuity checkpoints inside an existing shot-list scope using an entity_type discriminator.",when_to_use:["Use `entity_type=shot` for direct shot mutations after a shot-list scope already exists.","Use `entity_type=element` for recurring shot-element CRUD, shot linking, and shot-element asset metadata updates, including creating a missing recurring character/location/object before image generation.","To create or update a recurring element, use the exact top-level shape `entity_type=element`, `operation=upsert_element`, numeric `project_id`, stable lowercase `token`, and `element_type` (`character`, `environment`, `object`, `style`, or `other`); include `display_name`, `description`, or `prompt` when useful.","Use `entity_type=scene_moodboard` to select, unselect, or delete existing Scene Moodboard assets.","Use `entity_type=shot_audio` and `operation=select` after `media_generate(workflow=scene_audio)` finalizes the generated audio take that should feed video generation.","Use `entity_type=video_continuity` with `accept`, `unaccept`, or `reanchor` after inspecting a succeeded generated video. Primary video selection is not continuity acceptance.","For optimistic concurrency, pass the video asset `updated_at` when accepting, or `continuity_updated_at` when unaccepting/re-anchoring, from `project_assets_query(asset_kind=video)` as `if_match_updated_at`."],when_not_to_use:["Do not use for re-running shot-list generation; use `shot_list_generate`.","Do not use for story card/scene/graph edits; use `story_mutate`.","Do not use for generating the image asset itself after an element exists; use `image_generate(workflow=generate_element)` with that element id.","Do not use to create or attach reusable voice samples; use `asset_upload(target_type=reference_audio_asset)` and `voice_profile`."],examples:["Reorder the shots in this scope.","Create Anna as a recurring character element with `entity_type=element`, `operation=upsert_element`, `project_id=1121`, `token=anna`, `element_type=c
359haracter`, and `display_name=Anna`.","Update a recurring wardrobe element prompt with `entity_type=element`, `operation=upsert_element`, and the existing element `token` or `element_id`.","Select the approved Scene Moodboard for this scope.","Select generated scene-audio media asset 9101 as the active shot audio take.","Accept generated video asset 9001 as the reviewed continuity checkpoint for its shot."],anti_examples:["Generate a new shot list for the scene.","Generate a full-body photoreal reference for Anna when her recurring element already exists; use `image_generate(workflow=generate_element)`.","Change a story beat or scene summary; use `story_mutate`.","Generate Seed Audio for a shot; use `media_generate(workflow=scene_audio)`."],schema_pattern:"discriminated_mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["shot_list_scope"],capabilities:[],implemented_status:"v1",variants:{discriminator:"entity_type",values:[{name:"shot",capabilities:["shot.mutate"]},{name:"element",capabilities:["shot_element.mutate"]},{name:"scene_moodboard",capabilities:["scene_moodboard.mutate"]},{name:"shot_audio",capabilities:["shot_audio.mutate"]},{name:"video_continuity",capabilities:["video_continuity.mutate"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["entity_type"],properties:{entity_type:{type:"string",enum:["shot","element","scene_moodboard","shot_audio","video_continuity"]}},oneOf:[{$ref:"./_common/shot_mutate_body.schema.json"},{$ref:"./_common/shot_element_mutate_body.schema.json"},{$ref:"./_common/scene_moodboard_mutate_body.schema.json"},{properties:{operation:{type:"string",enum:["select"]},project_id:{type:"integer"},asset_id:{type:"integer",description:"Generated scene_audio media asset id to select for its shot."},if_match_updated_at:{type:"string"},entity_type:{const:"shot_audio"}},type:"object",required:["operation","project_id","asset_id"],additionalProperties:!1},{properties:{operation:{type:"string",enum:["accept","unaccept","reanchor"]},project_id:{type:"integer"},asset_id:{type:"integer",description:"Succeeded generated video asset id whose continuity checkpoint should be mutated."},if_match_updated_at:{type:"string",description:"Optional video asset updated_at for accept, or continuity_updated_at for unaccept/reanchor, from project_assets_query."},entity_type:{const:"video_continuity"}},type:"object",required:["operation","project_id","asset_id"],additionalProperties:!1}],unevaluatedProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["entity_type","result"],properties:{entity_type:{type:"string",enum:["shot","element","scene_moodboard","shot_audio","video_continuity"]},result:{type:"object"}},additionalProperties:!0},schema_load_errors:[]},{name:"story_development_run",version:1,stability:"beta",category:"story_development",family_id:"story_workflows",auth_scope:"project:write",approval_policy:"suggest",kind:"orchestration",description:"Generate whole outlines, scene lists, sequences, treatments, trailers, episodes, weave plans, or Novel adaptations. Novel manuscript generation WRITES empty Chapters or REWRITES existing Chapter prose into revision-checked review candidates. For raw ideas, use `story_bootstrap` readiness to inspect styles and inputs. Quote before starting Bootstrap, Beat, Scene, Episode, Sequence, Treatment, Trailer or Weave; retain scope/model and pass accepted `billing_quote_id` and `billing_request_id`. Bootstrap owns and auto-applies its outline chain. Poll `job_get`; call `phase=finalize` when it reports `finalize_required`. `target_scene_count` is a pacing hint rather than a hard guarantee, and quoted Scene Wizard runs replace the scene list. Novel source_import is Start-only: pass ChatGPT attachments in top-level screenplay_file or story_outline_file, using their verified mounted file paths; ChatGPT supplies download objects. Never use file IDs as paths or fabricate URLs. Include payload.target_name. Text/base64 inputs remain in payload.\n",when_to_use:["Use to generate an initial outline or explicitly regenerate a whole scene list. Adding one developed sce
359ne to an existing list uses `story_mutate(entity_type=scene, operation=create)`; generating structural changes to an existing list uses `story_revision_run(workflow=scene_list_revision)`.","Use for beat, scene, sequence, treatment, trailer, episode, and weave development flows.","Use `workflow=novel_adaptation` with `payload.novel_operation` for source creation/import, Blueprint, Chapter Outline, Voice Lab, manuscript generation, or candidate review. Manuscript uses readiness, then quote for the whole operation; Start requires accepted `billing_quote_id` and stable `billing_request_id` UUIDs with the same scope, model and instructions. Existing Chapters become editable candidates; accept or reject resumes the same parent without a separate charge. Settlement rounds once for the whole operation within the accepted allowance. Accept with exact `expected_revisions` and optional complete edited `candidate_plain_texts`, or reject to leave canon unchanged.","For source-project readiness, include the intended `target_name`; readiness returns an executable start action locked to that name and the inspected source revision.","Poll Novel parent jobs through `job_get`. Completed Blueprint and Chapter Outline parents already saved their artifacts; completed Writer and Audit parents point to manuscript/candidate or audit reads. Completed Voice parents return the proposal resource and revision-current profile apply actions.","Use `story_bootstrap` when the caller has a raw idea and wants BeatBandit to turn it into initial story structure plus the template's canonical outline with sane defaults.","For `story_bootstrap`, call `phase=readiness`, then `phase=quote`, and accept its quote/request UUIDs at `start`; readiness returns `available_beat_styles`, `default_beat_style_id`, optional `suggested_beat_style_id`, `estimated_credits`, and a `start_payload_template`.","Treat `suggested_beat_style_id` as advisory. `start` uses the default style unless the caller explicitly passes `payload.options.style_template_id`.","For `treatment_wizard`, readiness discovers templates; quote with `template_id`, options and model, then start with the same payload plus accepted `billing_quote_id` and `billing_request_id` UUIDs.","For `one_scene` projects, `story_bootstrap` routes through Beat Wizard because the template already owns exactly one scene; Scene Wizard is not needed.","For episodic templates, use `episode_wizard` readiness to discover `available_approaches`, `default_approach_id`, valid episode counts, and a quote payload before generating episode lists. Accept that quote and pass billing_quote_id and billing_request_id at Start.","`beat_wizard` is always ready. Use `phase=readiness` to discover the default `template_id` and required placeholders such as `FULL_TEXT`.","For `beat_wizard` with the `free_text` template, callers may provide `payload.idea`; MCP will normalize it into `filled_text` and `placeholder_values.FULL_TEXT`."],when_not_to_use:["Do not use to add a single scene developed in conversation. Read placement with `story_entity_query`, then use `story_mutate(entity_type=scene, operation=create)` with the agreed scene data. Scene Wizard replaces the whole scene list and has no append option.","Do not use for screenplay document reads or direct story mutations.","Do not start with low-level card/scene mutation when the real intent is concept-to-outline development.","Do not manually drive the internal beat->outline chain once `story_bootstrap` is running; use `job_get` until the parent bootstrap job completes.","Do not skip `story_bootstrap` readiness before a paid bootstrap run; use readiness to choose or confirm the beat style and estimate credits.","Use `story_revision_run(workflow=scene_list_revision)` to develop additions, merges or other changes within an existing scene list, including dependent pages. Use `change_wizard` for broad story changes and `polish_wizard` for screenplay polish.","Do not use to **get editorial feedback** on existing material — use `story_review_run` (room_review, analysis_wizard, continuity_audit) instead.","Do not use to **write actual screenplay prose** from an existing outline — use `screenplay_generation_run` (screenplay_writer, episode_screenplay, scene_screenplay) instead.","Do not use Novel operations to overwrite canonical Chapter prose directly; manuscript generation produces revision-checked candidates."],examples:["Run a sequence wizard for this project.","Generate a new scene list for this project with the scene wizard.","Run the episode wizard on this project.","Run weave planning for this episodic project. After finalizing a preview, use phase=apply with payload.weave_run_id to apply the saved result without another charge.","Bootstrap a short-movie project from one idea into initial story structure and a tight scene outline.","Bootstrap a micro-drama project from one idea into series cards and a template-native episode outline.","Bootstrap a one-scene short from a raw i
359dea; BeatBandit will use Beat Wizard to populate the story cards and the single scene outline.",'Start one-scene Beat Wizard with `payload={"idea":"..."}` or with `payload={"template_id":"free_text","placeholder_values":{"FULL_TEXT":"..."}}`.','Boundary - "Generate a fresh scene outline for this project." Use `scene_wizard` here because the scenes do not exist yet; this is BUILD, not CHANGE.','Boundary - "Bootstrap a movie project from one concept." Use `story_bootstrap` here because the caller wants structured outline first, not screenplay prose.',"Check Story Bootstrap readiness with `workflow=story_bootstrap`, `phase=readiness`, and `payload.idea`; review `available_beat_styles`, then quote the returned payload and accept before Start.","For Novel Blueprint use readiness, quote, then start with accepted billing quote/request UUIDs and the same wizard settings.","Start Novel Wizard or Chapter Wizard with the exact typed `payload.wizard_settings` returned by readiness, changing only the author-directed fields requested for that run.","After a Novel Wizard or Chapter Wizard job completes, follow `job_get` to the saved Blueprint or Chapter artifacts; no caller finalize is required.","Rewrite one existing Novel Chapter with `novel_operation=manuscript_generation`, quoting the Chapter scope, model and instructions checked by readiness, then passing the accepted quote and request UUIDs into Start; poll `job_get`, then inspect candidates with `project_query(mode=novel, novel_mode=candidates)` when author review is required.","Accept an edited Novel candidate with `phase=accept`, `novel_operation=candidate_review`, its `child_job_id`, exact `expected_revisions`, and `candidate_plain_texts` keyed by Chapter card id; continue polling the returned parent job when the response is async."],anti_examples:['"Add the UFO scene we just discussed after the control-room scene." Use `story_mutate(entity_type=scene, operation=create)`; do not regenerate the scene list.',"List my projects.","Polishing dialogue rhythm in an existing scene — that is `story_revision_run` with `polish_wizard`.","Generating screenplay prose from an already-finished outline — that is `screenplay_generation_run` with `screenplay_writer`.","Asking for editorial scores or notes on the current story without changing it — that is `story_review_run` with `analysis_wizard` or `room_review`."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary","screenplay_document","sequence_wizard_result","treatment_wizard_result","weave_result","novel_source","novel_source_unit","novel_manuscript","novel_candidate","novel_voice","novel_voice_proposal"],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"story_bootstrap",phase_modes:["readiness","quote","start"],capabilities:["beat_wizard.run","scene_wizard.run","episode_wizard.run"]},{name:"beat_wizard",phase_modes:["readiness","quote","start","finalize"],capabilities:["beat_wizard.run","beat_wizard.quote"]},{name:"scene_wizard",phase_modes:["readiness","quote","start","finalize"],capabilities:["scene_wizard.run","scene_wizard.quote"]},{name:"sequence_wizard",phase_modes:["quote","start","finalize"],capabilities:["sequence_wizard.run","sequence_wizard.quote"]},{name:"treatment_wizard",phase_modes:["readiness","quote","start","finalize"],capabilities:["treatment_wizard.run","treatment_wizard.quote"]},{name:"trailer_wizard",phase_modes:["readiness","quote","start","finalize"],capabilities:["trailer_wizard.run","trailer_wizard.quote"]},{name:"episode_wizard",phase_modes:["readiness","quote","start","finalize"],capabilities:["episode_wizard.run","episode_wizard.quote"]},{name:"weave",phase_modes:["readiness","quote","start","finalize","apply"],capabilities:["weave.run","weave.quote","weave.apply"]},{name:"novel_adaptation",phase_modes:["readiness","quote","start","finalize","apply","accept","reject"],capabilities:["novel.adaptation.run","novel.writing.run"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase"],properties:{workflow:{type:"string",enum:["beat_wizard","scene_wizard","sequence_wizard","treatment_wizard","trailer_wizard","episode_wizard","weave","story_bootstrap","novel_adaptation"]},phase:{type:"string",enum:["readiness","quote","start","finalize","apply","accept","reject"],description:"For story_bootstrap, use readiness, then quote before start; start still requires payload.idea."},project_id:{type:"integer"},job_id:{type:"string"},reservation_id:{type:"string"},screenplay_file:{type:"object",properties:{download_url:{type:"string",minLength:1,maxLength:8192},file_id:{type:"string",minLength:1,maxLength:255},mime_type:{type:"string",maxLength:255},file_name:{type:"string",minLength:1,maxLength:255}},required:["download_url","file_id"],additionalProperties:!1},story_outline_file:{type:"object",properties:{download_url:{type:"string",minLength:1,maxLength:8192},file_id:{type:"string",minLength:1,maxLength:255},mime_type:{type:"string",maxLength:255},file_name:{type:"string",minLength:1,maxLength:255}},required:["download_url","file_id"],additionalProperties:!1},payload:{type:"object",properties:{billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"},weave_run_id:{type:"string",format:"uuid"},idea:{type:"string",description:"Raw story idea. Required for story_bootstrap start. For beat_wizard start, MCP normalizes this into the template's required placeholder values when possible."},template_id:{type:"string",description:"Template id for template-driven workflows. Use phase=readiness to discover available treatment templates and defaults."},filled_text:{type:"string",description:"Filled text passed to the wizard. For free_text beat_wizard templates, this can be the same story idea text used for placeholder_values.FULL_TEXT."},placeholder_values:{type:"object",description:"Placeholder values required by the selected wizard template. For one_scene/free_text Beat Wizard, provide FULL_TEXT;
359 if omitted, MCP can derive it from payload.idea or payload.filled_text.",additionalProperties:{type:"string"}},include_context:{type:"boolean"},options:{type:"object",description:"Workflow-specific options. For story_bootstrap start, set options.style_template_id only after choosing from available_beat_styles returned by readiness."},llm_identifier:{type:"string",minLength:1,maxLength:200,description:"Optional provider/model override for this run, for example openai/gpt-5.6-sol. Uses the caller's saved default when omitted."},approach_id:{type:"string"},custom_prompt:{type:"string"},target_scene_count:{type:"integer",description:"Preferred scene-count target for scene-oriented workflows. This is a pacing hint, not a strict requirement."},target_episode_count:{type:"integer"},episode_count:{type:"integer"},sequence_numbers:{type:"array",items:{type:"integer"}},locked_episode_ids:{type:"array",items:{type:"string"}},mode:{type:"string"},target_episode_id:{type:"string"},preview:{type:"boolean"},idempotency_key:{type:"string"},novel_operation:{type:"string",enum:["source_project","source_import","blueprint","chapter_outline","voice_lab","manuscript_generation","candidate_review"]},target_name:{type:"string",minLength:1,maxLength:120},source_revision:{type:"string",pattern:"^[0-9a-f]{64}$"},template_settings:{type:"object"},wizard_settings:{description:"Typed pre-generation direction for Novel Wizard or Chapter Wizard.",oneOf:[{type:"object",required:["adaptation_brief","novel_genre","prose_style","target_category","target_word_count","fidelity","pov_approach","tense"],properties:{adaptation_brief:{type:"string",maxLength:6e3},novel_genre:{type:"string",enum:["inherit_source","contemporary_drama","mystery_crime","thriller_suspense","romance","horror","fantasy","science_fiction","historical","adventure","comic_satirical"]},prose_style:{type:"string",enum:["balanced","propulsive","intimate","spare_precise","lyrical","atmospheric","comic"]},target_category:{type:"string",enum:["adult","young_adult","middle_grade"]},target_word_count:{type:"integer",enum:[45e3,6e4,75e3,9e4,105e3]},fidelity:{type:"string",enum:["wizard_decide","faithful","balanced","transformative"]},pov_approach:{type:"string",enum:["wizard_decide","single_character","multiple_character","omniscient"]},tense:{type:"string",enum:["wizard_decide","past","present"]}},additionalProperties:!1},{type:"object",required:["planning_guidance","chapter_rhythm"],properties:{planning_guidance:{type:"string",maxLength:6e3},chapter_rhythm:{type:"string",enum:["story_led","shorter_propulsive","longer_immersive"]}},additionalProperties:!1}]},screenplay_text:{type:"string",maxLength:15e5},story_outline_text:{type:"string",maxLength:15e5},screenplay_filename:{type:"string",maxLength:240},story_outline_filename:{type:"string",maxLength:240},screenplay_file:{type:"object",required:["filename","media_type","base64"],properties:{filename:{type:"string"},media_type:{type:"string"},base64:{type:"string",maxLength:2e7}},additionalProperties:!1},story_outline_file:{type:"object",required:["filename","media_type","base64"],properties:{filename:{type:"string"},media_type:{type:"string"},base64:{type:"string",maxLength:2e7}},additionalProperties:!1},representative_chapter_ids:{type:"object",additionalProperties:{type:"string"}},profile_id:{type:"string"},expected_contract_revision:{type:"integer",minimum:0},expected_proof_revision:{type:"integer",minimum:0},scope_kind:{type:"string",enum:["chapter","range","full"]},start_chapter_card_id:{type:"integer",minimum:1},end_chapter_card_id:{type:"integer",minimum:1},instructions:{type:"string",maxLength:1e4,description:"Run-specific direction for Novel manuscript generation. Readiness, quote and start must receive the same value."},child_job_id:{type:"string"},expected_revisions:{type:"object",description:"Current manuscript revisions keyed by Chapter card id. Required when accepting a Novel manuscript candidate.",propertyNames:{pattern:"^[1-9][0-9]*$"},additionalProperties:{type:"integer",minimum:0}},candidate_plain_texts:{type:"object",description:"Optional edited Chapter prose keyed by Chapter card id. Send the complete proposed prose for every edited Chapter when accepting a candidate; BeatBandit materializes the canonical manuscript document.",minProperties:1,propertyNames:{pattern:"^[1-9][0-9]*$"},additionalProperties:{type:"string",minLength:1,maxLength:1e6}}},additionalProperties:!1}},allOf:[{if:{properties:{workflow:{const:"weave"}}},then:{properties:{phase:{enum:["readiness","quote","start","finalize","apply"]}}}},{if:{properties:{workflow:{const:"weave"},phase:{const:"apply"}}},then:{required:["payload"],properties:{payload:{required:["weave_run_id"],propertyNames:{enum:["weave_run_id"]}}}},else:{properties:{payload:{not:{required:["weave_run_id"]}}}}},{if:{properties:{workflow:{const:"weave"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["episode_
359count"],propertyNames:{enum:["episode_count","locked_episode_ids","mode","target_episode_id","preview","idempotency_key","approach_id","custom_prompt","billing_quote_id","billing_request_id"]}}}}},{if:{properties:{workflow:{const:"episode_wizard"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["approach_id","custom_prompt"],propertyNames:{enum:["approach_id","custom_prompt","target_episode_count","llm_identifier","billing_quote_id","billing_request_id"]}}}}},{if:{properties:{workflow:{const:"scene_wizard"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["approach_id","custom_prompt"],propertyNames:{enum:["approach_id","custom_prompt","target_scene_count","llm_identifier","billing_quote_id","billing_request_id"]}}}}},{if:{properties:{workflow:{const:"beat_wizard"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{propertyNames:{enum:["idea","template_id","filled_text","placeholder_values","include_context","options","llm_identifier","billing_quote_id","billing_request_id"]}}}}},{if:{properties:{workflow:{const:"treatment_wizard"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["template_id"],propertyNames:{enum:["template_id","options","llm_identifier","billing_quote_id","billing_request_id"]}}}}},{if:{properties:{workflow:{const:"trailer_wizard"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["template_id"],propertyNames:{enum:["template_id","options","billing_quote_id","billing_request_id"]}}}}},{if:{properties:{phase:{const:"quote"}}},then:{anyOf:[{properties:{workflow:{enum:["sequence_wizard","treatment_wizard","trailer_wizard","beat_wizard","scene_wizard","episode_wizard","story_bootstrap","weave"]}}},{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{enum:["blueprint","chapter_outline"]}},required:["novel_operation","wizard_settings"]}},required:["payload"]},{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{const:"voice_lab"}},required:["novel_operation","representative_chapter_ids"]}},required:["payload"]},{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{const:"manuscript_generation"}},required:["novel_operation","scope_kind"]}},required:["payload"]}]}},{if:{allOf:[{properties:{phase:{const:"start"}}},{anyOf:[{properties:{workflow:{enum:["sequence_wizard","treatment_wizard","trailer_wizard","beat_wizard","scene_wizard","episode_wizard","story_bootstrap","weave"]}}},{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{enum:["blueprint","chapter_outline","voice_lab","manuscript_generation"]}},required:["novel_operation"]}},required:["payload"]}]}]},then:{required:["payload"],properties:{payload:{required:["billing_quote_id","billing_request_id"]}}},else:{properties:{payload:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}}},{if:{properties:{workflow:{const:"sequence_wizard"},phase:{enum:["quote","start"]}}},then:{properties:{payload:{propertyNames:{enum:["sequence_numbers","llm_identifier","billing_quote_id","billing_request_id"]}}}}},{if:{not:{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{const:"source_import"}},required:["novel_operation"]}},required:["workflow","payload"]}},then:{required:["project_id"]}},{if:{properties:{workflow:{const:"story_bootstrap"}}},then:{properties:{phase:{enum:["readiness","quote","start"]}}}},{if:{properties:{workflow:{const:"story_bootstrap"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{phase:{enum:["readiness","quote","start"]},payload:{type:"object",required:["idea"]}}}},{if:{properties:{workflow:{const:"sequence_wizard"}}},then:{properties:{phase:{enum:["quote","start","finalize"],description:"Quote scope/model; start with accepted quote/request UUIDs; observe/finalize."}}}},{if:{properties:{workflow:{const:"novel_adaptation"}},required:["workflow"]},then:{required:["payload"],properties:{payload:{required:["novel_operation"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{const:"source_project"}},required:["novel_operation"]}},required:["workflow","payload"]},then:{required:["project_id","payload"],properties:{payload:{required:["target_name"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{const:"start"},payload:{properties:{novel_operation:{const:"source_project"}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{properties:{payload:{required:["source_revision"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{const:"source_import"}},required:["novel_operation"]}},required:["workflow","payload"]},then:{properties:{phase:{const:"start"},payload:{required:["target_name"],allOf:[{not:{required:["screenplay_text","screenplay_file"]}},{not:{required:["story_outline_text","story_outline_file"]}}]}},anyOf:[{properties:{payload:{required:["screenplay_text"]}}},{properties:{payload:{required:["story_outline_text"]}}},{properties:{payload:{required:["screenplay_file"]}}},{properties:{payload:{required:["story_outline_file"]}}},{required:["screenplay_file"]},{required:["story_outline_file"]}],allOf:[{not:{allOf:[{required:["screenplay_file"]},{properties:{payload:{anyOf:[{required:["screenplay_text"]},{required:["screenplay_file"]}]}}}]}},{not:{allOf:[{required:["story_outline_file"]},{properties:{payload:{anyOf:[{required:["story_outline_text"]},{required:["story_outline_file"]}]}}}]}}]}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{enum:["quote","start"]},payload:{properties:{novel_operation:{const:"voice_lab"}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{required:["project_id","payload"],properties:{payload:{required:["representative_chapter_ids"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{const:"start"},payload:{properties:{novel_operation:{enum:["blueprint","chapter_outline"]}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{required:["project_id","payload"],properties:{payload:{required:["wizard_settings"]}}}},{not:{properties:{workflow:{const:"novel_adaptation"},phase:{const:"apply"},payload:{properties:{novel_operation:{enum:["blueprint","chapter_outline"]}},required:["novel_operation"]}},required:["workflow","phase","payload"]}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{const:"apply"},payload:{properties:{novel_operation:{const:"voice_lab"}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{required:["project_id","job_id","payload"],properties:{payload:{required:["profile_id","expected_contract_revision","expected_proof_revision"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{enum:["readiness","quote","start"]},payload:{properties:{novel_operation:{const:"manuscript_generation"}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{required:["project_id","payload"],properties:{payload:{required:["scope_kind"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{enum:["readiness","quote","start"]},payload:{properties:{novel_operation:{const:"manuscript_generation"},scope_kind:{enum:["chapter","range"]}},required:["novel_operation","scope_kind"]}},required:["workflow","phase","payload"]},then:{properties:{payload:{required:["start_chapter_card_id"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{enum:["readiness","quote","start"]},payload:{properties:{novel_operation:{const:"manuscript_generation"},scope_kind:{const:"range"}},required:["novel_operation","scope_kind"]}},required:["workflow","phase","payload"]},then:{properties:{payload:{required:["end_chapter_card_id"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{const:"candidate_review"}},required:["novel_operation"]}},required:["workflow","payload"]},then:{required:["project_id","payload"],properties:{phase:{enum:["accept","reject"]},payload:{required:["child_job_id"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{const:"accept"},payload:{properties:{novel_operation:{const:"candidate_review"}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{properties:{payload:{required:["expected_revisions"]}}}},{if:{properties:{workflow:{const:"novel_adaptation"},phase:{const:"finalize"},payload:{properties:{novel_operation:{enum:["blueprint","chapter_outline","voice_lab","manuscript_generation"]}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{required:["project_id","job_id"]}},{if:{properties:{phase:{const:"finalize"}}},then:{required:["job_id"]}},{if:{not:{properties:{workflow:{const:"novel_adaptation"},payload:{properties:{novel_operation:{const:"source_import"}},required:["novel_operation"]}},required:["workflow","payload"]}},then:{not:{anyOf:[{required:["screenplay_file"]},{required:["story_outline_file"]}]}}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase"],properties:{workflow:{type:"string"},phase:{type:"string"},async:{type:"boolean"},job_id:{type:"string"},reservation_id:{type:"string"},bootstrap_stage:{type:"string"},project_id:{type:"integer"},project_name:{type:"string"},project_mode:{type:"string"},append_supported:{type:"boolean"},actual_scene_count:{type:"integer"},bootstrap_context:{type:"object"},readiness:{type:"object"},result:{type:"object"},resource_links:{type:"array",items:{type:"object"}},pipeline_state:{$ref:"./_common/pipeline_state.schema.json"},next_actions:{type:"array",items:{$ref:"./_common/next_action.schema.json"}},credits_charged:{type:"number",minimum:0},credits_previously_committed:{type:"number",minimum:0},credit_status:{type:"string",enum:["quoted","reserved","committed","refunded","not_metered","unavailable"]},credits_quoted:{type:"number",minimum:0},credits_reserved:{type:"number",minimum:0},credits_refunded:{type:"number",minimum:0},credits_skipped_reason:{type:"string"}},additionalProperties:!0},schema_load_errors:[]},{name:"story_entity_propose",version:1,stability:"draft",category:"story_graph",fam
359ily_id:"story_graph",auth_scope:"project:write",approval_policy:"suggest",kind:"orchestration",description:"Quote first, then accept Start with both billing IDs. Retry with the same IDs. Generate proposed values for a supported story entity field using BeatBandit's story context, craft rules, and writing-mode awareness. Non-mutating; apply is a separate mutate call. The current live entity types are `card` and `scene` (scene support is limited to free-text scene fields).\n",when_to_use:["Use when the caller wants BeatBandit-authored field-level suggestions informed by the full story context instead of generating them locally without the template and context awareness.","Use after `story_entity_query` when the caller does not already have the exact target entity id and field name from recent tool output.","Use for both empty and filled fields on supported entities; the current value (if any) is included as seed context."],when_not_to_use:["Do not use for whole-stage regeneration — use the matching wizard (`beat_wizard.run`, `scene_wizard.run`, `treatment_wizard.run`, etc.).","Do not use as a read-only fetch — use `story_entity_query` or `project_query`.","Do not guess `field_name` values. If the field was not returned by `story_entity_query`, omit `field_name` and let BeatBandit resolve the entity's primary proposable field."],examples:["Generate three loglines that lean into a specific theme.","Propose alternative motivations for a character card.","Propose alternative scene summaries or climaxes for an existing scene card.",'Fill in an empty "Unique Element" field with options grounded in the protagonist and antagonist cards.'],anti_examples:['Do not route UI navigation ("open the creative canvas") through this capability.',"Do not route whole-screenplay rewrites through this capability."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["story.entity_propose"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","entity_type","entity_id","phase"],properties:{project_id:{type:"integer",description:"BeatBandit project id."},entity_type:{type:"string",enum:["card","scene"],description:"Supported entity family to propose against. Current live values: `card`, `scene`."},entity_id:{type:"string",description:"Stable entity identifier within the selected family. For `card`, this is the dotted card code (for example `10.10.10`). For `scene`, this is the scene card code / MCP `scene_id`.",maxLength:100,minLength:1},stage_id:{type:"string",description:"Optional. Strongly recommended when the same card can appear in multiple stages; controls stage-specific context and prompt selection.",maxLength:200},field_name:{type:"string",description:"Optional. Defaults to the entity's primary writable field. Provide only when it exactly matches a field returned by story_entity_query for this entity; otherwise omit it.",maxLength:200},instruction:{type:"string",description:"Optional free-form guidance. Defaults to 'Provide strong alternatives that fit the story.'",maxLength:4e3},writing_mode:{type:"string",description:"Optional. Mirrors the in-product chat writing_mode so stage-specific system prompts can be selected consistently.",maxLength:100},count:{type:"integer",minimum:1,maximum:5,description:"Number of proposed values to return. Defaults to 3."},phase:{enum:["quote","start"]},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},additionalProperties:!1,allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["billing_quote_id","billing_request_id"]}},{if:{properties:{phase:{const:"quote"}}},then:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}]},output_schema:{type:"object",properties:{schema_version:{const:"story.entity_propose/v1"},project_id:{type:"integer"},project_name:{type:"string"},entity_type:{type:"string",enum:["card","scene"]},entity_id:{type:"string"},field_name:{type:"string"},entity_updated_at:{type:"string",description:"Echo back as `if_match_updated_at` when calling the matching mutate tool to avoid clobbering concurrent edits."},suggestions:{type:"array",minItems:1,maxItems:5,items:{type:"object",required:["value"],properties:{value:{type:"string"},reason:{type:["string","null"]},confidence:{type:["number","null"],minimum:0,maximum:1}},additionalProperties:!1}},context_summary:{type:"object",properties:{cards_used:{type:"array",items:{type:"string"}},tokens:{type:"integer",minimum:0}},additionalProperties:!1},credits_charged:{type:["integer","null"],minimum:0},phase:{enum:["quote","start"]},current_value:{},billing_operation_id:{type:"string",format:"uuid"},billing_status:{type:"string"},quote:{type:"object",required:["quote_id","mode","allowance","expires_at"],properties:{quote_id:{type:"string",format:"uuid"},mode:{enum:["fixed","usage"]},allowance:{type:"integer",minimum:0},expires_at:{type:"string"}},additionalProperties:!0}},additionalProperties:!1,required:["phase"],$schema:"https://json-schema.org/draft/2020-12/schema"},schema_load_errors:[]}
359,{name:"story_entity_query",version:1,stability:"beta",category:"story_graph",family_id:"story_graph",auth_scope:"project:read",approval_policy:"never",kind:"read",description:"List, get, or search story graph entities such as cards, scenes, episodes, arcs, and relationships.",when_to_use:["Use when the caller needs structured story-graph state.","For scene entities, use the returned `stage_ids` / `primary_stage_id` when chaining into `story_entity_propose`.","Use for character/story-card context such as motivations, physical descriptions, or scene summaries; use media/shot tools for actual visual assets."],when_not_to_use:["Do not use for screenplay document reads.","Do not use to discover generated images, recurring shot elements, scene moodboards, or media assets; use `project_assets_query`, `shot_list_query`, or the `shot_element_library` resource."],examples:["Search for scenes involving the antagonist.","Read one scene entity and reuse its `primary_stage_id` for a follow-up proposal call.","Read Anna's story card context before preparing visual reference generation."],anti_examples:["Apply these screenplay edits.","List Anna's saved reference images or recurring shot element assets."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:["story.entity_query"],implemented_status:"v1",variants:null,input_schema:{$ref:"./story.entity_query.input.json"},output_schema:{$ref:"./story.entity_query.output.json"},schema_load_errors:[]},{name:"story_mutate",version:1,stability:"beta",category:"story_graph",fam
359ily_id:"story_graph",auth_scope:"project:write",approval_policy:"required",kind:"write",description:"Create agreed story cards or scenes, or make exact updates, reordering and deletions to story entities. Card creation requires card_code, name and stage_id; copy the stage's id and card_template.card_type from beatbandit://templates/{project_mode}. For scene creation, use entity_type=scene and operation=create with scene_data and an observed after_scene_id. This saves outline content, not generated screenplay pages.",when_to_use:["When the writer accepts a developed scene and asks to add it, read the scene list with `story_entity_query`, identify placement, then create that scene using its agreed content. Ask only if placement or content is genuinely unresolved.","For scene creation, pass a flat `scene_data` object with `title`, `summary`, `arena` (location) and any developed planning fields. Use `after_scene_id` from the scene-list read; omitting placement appends to the end.","Use when you already know the exact project id, entity_type, and entity fields you want to mutate.","Use `entity_type=card` with top-level `operation`, numeric `project_id`, `card_code`, and object `fields` for card-family CRUD.","For card creation, also supply `name` and `stage_id`. Read `beatbandit://templates/{project_mode}` and use the matching `stages[].id` and `card_template.card_type`. Micro Drama Chapters use `stage_id=season_movements`, `card_type=SEASON_CHAPTER` and `card_code=movement_*`.","Use `entity_type=scene` with top-level `operation`, numeric `project_id`, `scene_id`, and object `fields_patch` / `scene_data` for scene-family CRUD and ordering.","Use `entity_type=graph` for episodes, arcs, and relationships."],when_not_to_use:["Do not use for open-ended generation of structural changes or coordinated dependent pages; use `story_revision_run(workflow=scene_list_revision)`. A new scene inside an existing outline is a structural addition, not a reason to replace the list with Scene Wizard.","To write screenplay prose for a saved scene, use `screenplay_generation_run(workflow=scene_screenplay)` after creation returns its scene identity.","Do not use for screenplay block edits; use `screenplay_edit_*` for natural-language edits or `screenplay_snapshot_apply` for direct snapshot block mutations.","Do not start here when the user only has a raw story idea; prefer `story_development_run`.","Do not use for image, visual reference, storyboard, moodboard, recurring-image, shot, shot-element, or media-asset work; use `project_assets_query` / `shot_list_query` for reads, `shot_mutate` for shot or recurring-element mutations, and `image_generate` for still-image generation."],examples:['"Add the scene we just discussed after the control room." After reading the scene list, use entity_type=scene, operation=create, after_scene_id=<observed id>, scene_data={"title":"The hidden file","summary":"Elli finds evidence of targeted recruitment and uses it to challenge Heino.","arena":"UFO records room"}.',"Update one protagonist card summary.",'Create an agreed Micro Drama Chapter with entity_type=card, operation=create, project_id=1041, card_code=movement_06, name="Losing the Women", stage_id=season_movements, card_type=SEASON_CHAPTER, position=6, fields={"title":"Losing the Women","objective":"...","episode_count":7}, after confirming the template stage and that the code is unused.','Update treatment card 50.10.10 with `entity_type=card`, `operation=update`, `project_id=1041`, `card_code=50.10.10`, and `fields={"Treatment - Act 1":"..."}`.',"Reorder scenes inside an existing outline.","Link a scene to a storyline arc."],anti_examples:['"Develop a new scene and restructure the surrounding sequence, including affected pages." Use `story_revision_run(workflow=scene_list_revision)`.',"Generate a complete new scene list from story beats; use `story_development_run(workflow=scene_wizard)`.","Rewrite selected screenplay dialogue.","Update a card with `code` or `entity_id` instead of `card_code`; use the schema field names exactly.","Do not invent a stage key from a label or card type: `beats` is not the Micro Drama Chapter stage. Read the template manifest and use `season_movements`.","Create a recurring element for Anna or prepare character reference images; use `shot_mutate(entity_type=element)` and `image_generate(workflow=generate_element)`."],schema_pattern:"discriminated_mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:[],implemented_status:"v1",variants:{discriminator:"entity_type",values:[{name:"card",capabilities:["story.card_mutate"]},{name:"scene",capabilities:["story.scene_mutate"]},{name:"graph",capabilities:["story.graph_mutate"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["entity_type","operation","project_id"],properties:{entity_type:{type:"string",enum:["card","scene","graph"],description:"Choose which story graph family to mutate. This schema intentionally exposes all variant fields at top level so MCP clients do not need to resolve nested oneOf refs."},operation:{type:"string",enum:["create","update","delete","update_fields","reorder","update_position","update_beats","relationship_upsert","relationship_delete","episode_
359create","episode_update","episode_delete","episode_reorder","storyline_arc_create","storyline_arc_update","storyline_arc_delete"],description:"Operation for the selected entity_type. Card operations: create/update/delete. Scene operations: create/update_fields/delete/reorder/update_position/update_beats. Graph operations: relationship_*, episode_*, storyline_arc_*."},project_id:{type:"integer",description:"Numeric BeatBandit project id. Pass as a JSON number, not a string."},if_match_updated_at:{type:"string"},card_code:{type:"string",description:"Required for card create, update and delete. For create, choose an unused code matching the template, such as movement_06 for a Micro Drama Chapter; otherwise copy the exact existing card code. Use card_code, not code or entity_id."},name:{type:"string",description:"Required for card creation. The card name is separate from fields; fields.title alone does not supply name."},card_type:{type:"string",description:"For card creation, copy the selected template stage's card_template.card_type. Micro Drama Chapters use SEASON_CHAPTER."},stage_id:{type:"string",description:"Required for card creation. Exact template stage key from stages[].id in beatbandit://templates/{project_mode}; not a display label or numeric database ID. Micro Drama Chapters use season_movements, not beats."},fields:{type:"object",description:"For entity_type=card, object of card field updates. Pass as a JSON object, not a stringified JSON blob."},position:{type:"integer"},info:{type:"string"},scene_id:{type:"string",description:"For entity_type=scene, exact scene card id/code to update."},scene_data:{type:"object",description:"For operation=create, a flat scene-outline object, not screenplay prose or a nested fields object. Use title, summary and arena (location); optional planning fields include focal_character, goal, subtext, turning_point, climax, fallout, push_forward, dramatic_function, turn_type, intensity, sequence and key_beats. Preserve the agreed content and template-specific fields. Scene identity is assigned by BeatBandit.",examples:[{title:"The hidden file",summary:"Elli uses evidence of targeted recruitment to confront Heino.",arena:"UFO records room"}]},after_scene_id:{type:"string",description:"For scene creation, insert after this existing scene id/code from story_entity_query. Omit to append at the end of the current scene list. Do not invent an anchor or use a scene title as its identity."},fields_patch:{type:"object",description:"For entity_type=scene, object of scene field updates. Pass as a JSON object, not a stringified JSON blob."},scene_order:{type:"array",items:{type:"string"}},beat_codes:{type:"array",items:{type:"string"}},source_card_code:{type:"string"},target_card_code:{type:"string"},relationship_type:{type:"string"},strength:{type:"number",minimum:0,maximum:1},notes:{type:"string"},episode_id:{type:"string"},episode_name:{type:"string"},episode_fields:{type:"object"},episode_order:{type:"array",items:{type:"string"}},arc_code:{type:"string"},arc_name:{type:"string"},arc_fields:{type:"object"}},allOf:[{if:{properties:{entity_type:{const:"card"}}},then:{properties:{operation:{enum:["create","update","delete"]}}}},{if:{properties:{entity_type:{const:"scene"}}},then:{properties:{operation:{enum:["create","update_fields","delete","reorder","update_position","update_beats"]}}}},{if:{properties:{entity_type:{const:"graph"}}},then:{properties:{operation:{enum:["relationship_upsert","relationship_delete","episode_create","episode_update","episode_delete","episode_reorder","storyline_arc_create","storyline_arc_update","storyline_arc_delete"]}}}},{if:{properties:{operation:{const:"create"},entity_type:{const:"scene"}},required:["operation","entity_type"]},then:{required:["scene_data"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["entity_type","result"],properties:{entity_type:{type:"string",enum:["card","scene","graph"]},result:{type:"object"}},additionalProperties:!0},schema_load_errors:[]},{name:"story_review_run",version:1,stability:"beta",category:"story_review",family_id:"story_workflows",auth_scope:"project:write",approval_policy:"suggest",kind:"or
359chestration",description:"REVIEW existing project material and produce editorial feedback — room review (writers'-room style holistic notes), analysis wizard (scored editorial pass with rewrite guidance and comps), or continuity audit / Sync Screenplay (generate, review, and explicitly apply screenplay rewrite suggestions for pending structural-sync update tasks), or Novel audits, change proposals, and revision-checked Canon Ledger updates. For `continuity_audit`, `status` is the review surface and `apply` (or legacy `finalize`) is the selected mutating phase.\n",when_to_use:["For Novel Audit, use readiness then quote with the same audit level and Chapter scope. Present the quote before Start and preserve billing_quote_id and a stable billing_request_id in its payload; changed or expired quotes require renewed acceptance.","Room Review returns `room-review/v2` with saved review/note IDs, captured quotations, inspected coverage and suggested editorial decisions. Notes do not choose executable tools. Earlier notes are explicitly unverified and require current evidence before resolution. Keep the note and its evidence attached when continuing revision work.","You want analytical feedback first, before deciding whether to mutate — the verb is REVIEW.","Use `room_review` for showrunner-style holistic notes across the project.","Use `analysis_wizard` for a scored editorial pass with rewrite guidance and comps.","For `analysis_wizard`, call `phase=quote` after readiness, present the returned credit range/mode/allowance, then start with `payload={billing_quote_id, billing_request_id}` using that quote and a fresh UUID request ID. A changed or expired quote requires renewed acceptance; never silently reprice and resubmit.","For `room_review`, use the same quote-before-start flow with `payload.reviewer_id` on quote and start. Omitted reviewer selects Default. Start also requires the accepted billing quote ID and a fresh UUID request ID.","Use `continuity_audit` after structural updates; call readiness then quote, present its range and allowance, and accept the suggested Start with its captured update_ids and billing IDs. Retry the same accepted IDs after a lost response. Poll job_get, inspect status, and apply explicit page selections. Page application does not resolve planning/page relationships; those require a captured revision decision.","If `continuity_audit` readiness returns `scene_authoring_required`, inspect the exact saved changes. Shared references carry `revision_id` and `followup_id` even without beat links. Propose pages with `screenplay_generation_run(workflow=scene_screenplay, phase=readiness, payload.revision_id=..., payload.followup_id=...)`, or explicitly retain/defer the reviewed material. `readiness.structural_followups` preserves all states; changed evidence reopens review. Missing targets remain in saved change history without blocking other scenes; do not request generation for a deleted scene.","Use `workflow=novel_review` with `payload.novel_operation=audit`, `change_proposal`, or `canon_entry`; audit findings never mutate content until an explicit proposal apply. After Audit completion, query `project_query(mode=novel, novel_mode=changes)`, inspect the full changes resource, then choose its revision-current apply or reject call."],when_not_to_use:["Do not use for direct low-level screenplay mutation; use `screenplay_snapshot_apply` for exact block edits.","Do not use to **change or polish** the story material — use `story_revision_run` (change_wizard, polish_wizard, creative_canvas) instead.","Do not use to **build** new structured material that does not exist yet — use `story_development_run` (scene_wizard, beat_wizard, story_bootstrap) instead.","Do not use `continuity_audit` for freeform scoped prose rewrites that are unrelated to pending structural-sync updates — use `screenplay_rewrite_run` instead.","Do not use Novel review operations as a raw manuscript overwrite path."],examples:["Review this project like a showrunner.","Run Sync Screenplay readiness, quote the selected updates, accept its suggested Start, inspect status, choose suggestions, then apply explicit selections.",'Boundary - "Get a scored editorial pass on this project with rewrite guidance." Use `analysis_wizard` here because the caller wants notes and scores, not committed changes.','Boundary - "Sync screenplay after I merged scenes." Inspect the saved follow-up identities, review the affected pages and decide what to change or intentionally keep/defer, then use `continuity_audit` for ripple checks.','Run a full Novel audit with `workflow=novel_review`, `phase=readiness`, and `payload={"novel_operation":"audit","audit_level":"full"}`.'],anti_examples:["Generate a new screenplay from scratch.","Polishing dialogue in an existing scene — that is `story_revision_run` with `polish_wizard`.","Generating new beats or scenes from an idea — that is `story_development_run` with `beat_wizard` or `scene_wizard`.","Restructuring the story based on a free-form direction — that is `story_revision_run` with `change_wizard`."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary","screenplay_document","project_updates","room_review_result","analysis_wizard_result","novel_canon","novel_audits","novel_changes"],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"room_review",phase_modes:["readiness","quote","start","finalize"],capabilities:["room_review.readiness","room_review.quote","room_review.run","room_review.finalize"]},{name:"analysis_wizard",phase_modes:["readiness","quote","start","finalize"],capabilities:["analysis_wizard.readiness","analysis_wizard.quote","analysis_wizard.run","analysis_wizard.finalize"]},{name:"continuity_audit",phase_modes:["readiness","quote","start","status","apply","finalize"],capabilities:["continuity_audit.start","continuity_audit.get_job","continuity_audit.apply"]},{name:"novel_review",phase_modes:["readiness","quote","start","finalize","apply","reject","update"],capabilities:["novel.review.run"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase","project_id"],properties:{workflow:{type:"string",enum:["room_review","analysis_wizard","continuity_audit","novel_review"]},phase:{type:"string",enum:["readiness","quote","start","status","finalize","apply","reject","update"]},project_id:{type:"integer"},job_id:{type:"string"},reservation_id:{type:"string"},payload:{type:"object",properties:{billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"},reviewer_id:{type:"string",enum:["default","tough_love","character_detective","emotional_reader"],description:"Room Review start only: one reviewer focus and voice per run. Defaults to default. Readiness lists reviewer descriptions. All reviewers produce the same evidence-backed, actionable note format."},model_hint:{type:"string",description:"Optional model hint for LLM-backed review generation."},update_ids:{type:"array",description:"Explicit pending update ids for continuity_audit start. If omitted, start uses readiness' recommended structural-sync scene update ids.",items:{type:"string"}},include_global_updates:{type:"boolean",description:"For continuity_audit only: opt in to including global dirty markers alongside recommended structural-sync scene updates. Defaults to false."},structural_card_codes:{type:"array",description:"Optional structural card code filter forwarded to continuity audit generation.",items:{type:"string"}},base_rev:{type:"integer",description:"Screenplay snapshot revision used when applying selected continuity suggestions."},selections:{type:"array",description:"Explicit continuity suggestions to apply. Applying pages does not resolve planning/page relationships.",items:{type:"object",required:["suggestion_id"],properties:{suggestion_id:{type:"string"},edited_after_text:{type:"string"}},additionalProperties:!1}},novel_operation:{type:"string",enum:["audit","change_proposal","canon_entry"]},audit_level:{type:"string",enum:["blueprint","chapter","full"]},chapter_card_id:{type:"integer",minimum:1},proposal_id:{type:"string",format:"uuid"},entry_id:{type:"string",minLength:1},expected_revision:{type:"integer",minimum:0},entry:{type:"object"}},additionalProperties:!1}},allOf:[{if:{properties:{workflow:{enum:["analysis_wizard","room_review"]},phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{required:["billing_quote_id","billing_request_id"],propertyNames:{enum:["billing_quote_id","billing_request_id","reviewer_id"]}}},if:{properties:{workflow:{const:"analysis_wizard"}}},then:{properties:{payload:{propertyNames:{enum:["billing_quote_id","billing_request_id"]}}}}},else:{if:{properties:{workflow:{const:"novel_review"},phase:{const:"start"},payload:{properties:{novel_operation:{const:"audit"}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{properties:{payload:{required:["billing_quote_id","billing_request_id"]}}},else:{if:{properties:{workflow:{const:"continuity_audit"},phase:{const:"start"}},required:["workflow","phase"]},then:{required:["payload"],properties:{payload:{required:["billing_quote_id","billing_request_id","update_ids"],properties:{update_ids:{minItems:1}}}}},else:{properties:{payload:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}}}}},{if:{properties:{workflow:{const:"room_review"}}},then:{properties:{phase:{enum:["readiness","quote","start","finalize"]}}}},{if:{properties:{workflow:{const:"analysis_wizard"}}},then:{properties:{phase:{enum:["readiness","quote","start","finalize"]}}}},{if:{properties:{workflow:{const:"continuity_audit"}}},then:{properties:{phase:{enum:["readiness","quote","start","status","apply","finalize"]}}}},{if:{properties:{phase:{const:"finalize"},workflow:{enum:["room_review","analysis_wizard"]}}},then:{required:["job_id"]}},{if:{properties:{workflow:{const:"continuity_audit"},phase:{const:"readiness"}}},then:{properties:{payload:{properties:{structural_card_codes:{description:"Optional filter for continuity audit readiness/start; readiness returns the pending update_ids to use."}}}}}},{if:{properties:{workflow:{const:"continuity_audit"},phase:{const:"start"}}},then:{}},{if:{properties:{workflow:{const:"continuity_audit"},phase:{enum:["apply","finalize"]}}},then:{required:["job_id","payload"],properties:{payload:{required:["base_rev","selections"],properties:{selections:{minItems:1}}}}}},{if:{properties:{workflow:{const:"novel_review"}},required:["workflow"]},then:{required:["payload"],properties:{phase:{enum:["readiness","quote","start","finalize","apply","reject","update"]},payload:{required:["novel_operation"]}}}},{if:{properties:{workflow:{const:"novel_review"},phase:{enum:["readiness","quote","start"]},payload:{properties:{novel_operation:{const:"audit"}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{properties:{payload:{required:["audit_level"]}}}},{if:{properties:{workflow:{const:"novel_review"},phase:{const:"finalize"},payload:{properties:{novel_operation:{const:"audit"}},required:["novel_operation"]}},required:["workflow","phase","payload"]},then:{required:["job_id"]}},{if:{properties:{workflow:{const:"novel_review"},payload:{properties:{novel_operation:{const:"change_proposal"}},required:["novel_operation"]}},required:["workflow","payload"]},then:{properties:{phase:{enum:["apply","reject"]},payload:{required:["proposal_id"]}}}},{if:{properties:{workflow:{const:"novel_review"},payload:{properties:{novel_operation:{const:"canon_entry"}},required:["novel_operation"]}},required:["workflow","payload"]},then:{properties:{phase:{const:"update"},payload:{required:["entry_id","expected_revision","entry"]}}}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase"],properties:{workflow:{type:"string"},phase:{type:"string"},async:{type:"boolean"},job_id:{type:"string"},reservation_id:{type:"string"},status:{type:"string"},estimated_credits:{type:["integer","number"]},readiness:{type:"object"},update_ids:{type:"array",items:{type:"string"}},scene_authoring_required:{type:"array",description:"Saved scene-change references requiring review before continuity ripple checks. Shared references carry revision_
359id and followup_id, independently of beat links or private execution jobs. Propose pages through screenplay_generation_run(scene_screenplay), or record an intentional retain/defer decision; changed evidence reopens review.",items:{type:["string","object"]}},defaulted_update_ids:{type:"boolean"},suggestion_count:{type:"integer"},dirty_result_count:{type:"integer"},changed_scene_ids:{type:"array",items:{type:"string"}},no_change_scene_ids:{type:"array",items:{type:"string"}},conflict_count:{type:"integer"},recommended_apply_args:{type:["object","null"]},apply_candidates:{type:"array",items:{type:"object"}},result:{type:"object"},summary:{type:"string"},reviewer:{type:"object",description:"Captured reviewer identity for Room Review. Historical reviews have no attribution.",required:["id","name","description"],properties:{id:{type:"string"},name:{type:"string"},description:{type:"string"}},additionalProperties:!1},notes:{type:"array",maxItems:10,items:{additionalProperties:!1,properties:{title:{maxLength:240,minLength:1,type:"string"},priority:{maximum:10,minimum:1,type:"integer"},category:{maxLength:80,minLength:1,type:"string"},note:{maxLength:6e3,minLength:1,type:"string"},why_it_matters:{maxLength:4e3,type:"string"},evidence:{items:{additionalProperties:!1,properties:{kind:{enum:["planning","pages"],type:"string"},entity_id:{maxLength:200,minLength:1,type:"string"},field_name:{anyOf:[{maxLength:200,type:"string"},{type:"null"}]},quote:{maxLength:4e3,minLength:1,type:"string"},source_fingerprint:{maxLength:64,minLength:64,type:"string"},episode_id:{anyOf:[{type:"string"},{type:"null"}]}},required:["kind","entity_id","quote","source_fingerprint"],type:"object"},maxItems:20,type:"array"},suggested_decisions:{items:{enum:["inspect","explore","propose","defer","retain"],type:"string"},maxItems:5,minItems:1,type:"array"},id:{type:"string"},review_id:{type:["string","null"]},evidence_status:{enum:["captured","unverified"]},scope:{additionalProperties:!0,type:"object"},affected_card_codes:{items:{type:"string"},maxItems:500,type:"array"},affected_scene_codes:{items:{type:"string"},maxItems:500,type:"array"}},required:["title","priority","category","note","evidence","suggested_decisions","id","evidence_status"],type:"object"}},note_count:{type:["integer","number"]},top_note_titles:{type:"array",items:{type:"string"}},resource_links:{type:"array",items:{type:"object"}},pipeline_state:{$ref:"./_common/pipeline_state.schema.json"},next_actions:{type:"array",items:{$ref:"./_common/next_action.schema.json"}},credits_charged:{type:"number",minimum:0},credits_previously_committed:{type:"number",minimum:0},credit_status:{type:"string",enum:["quoted","reserved","committed","refunded","not_metered","unavailable"]},credits_quoted:{type:"number",minimum:0},credits_reserved:{type:"number",minimum:0},credits_refunded:{type:"number",minimum:0},credits_skipped_reason:{type:"string"},schema_version:{const:"room-review/v2"},review_id:{type:["string","null"]},coverage:{type:["object","null"]},snapshot_rev:{type:["integer","null"]},suggested_decisions:{type:"array",items:{enum:["inspect","explore","propose","retain","defer"]}}},additionalProperties:!0},schema_load_errors:[]},{name:"story_revision_run",version:1,stability:"beta",category:"story_revision",family_id:"story_workflows",auth_scope:"project:write",approval_policy:"suggest",kind:"orchestration",description:"Revise existing story structure through reviewable proposals. For scene additions, merges, reordering and their dependent screenplay pages, use scene_list_revision starting directly with readiness; it creates its own revision at Start. For connected beat/card-field changes and their page consequences, use planning_revision. For an exact scene already developed in conversation, use story_mutate instead. Editing comparison also uses quote then Start with accepted payload billing UUIDs. Polish, planning, Change Story, Scene List Revision and standalone Creative Canvas use quote then start with payload.billing_quote_id and billing_request_id. Keep both IDs and the original payload when retrying an accepted Start. Use editing_comparison to compare live or selected proposed planning and pages. Payload requires revision_
359id; readiness/start optionally take source_selection and page_proposal_ids. Review uses comparison_id. Decide records retain/defer with finding_id, request_id and an explanation for retain; it does not apply content. CHANGE or POLISH structured story material that already exists in the project. The verb is CHANGE: alter, refine, or explore alternative directions for cards, scenes, or beats that have already been built. Wraps Change Story (proposes structural changes from a free-form direction), Polish Screenplay (suggests scene-level dialogue and style refinements), Creative Canvas (generates alternative directions for selected cards without committing them), and Scene List Revision (proposes concrete scene additions, merges, deletes, reorders, beat-link updates, and scaffold reconciliation with dependent page proposals). To inspect dependent pages before committing structure, call `screenplay_generation_run(workflow=scene_screenplay, phase=source)` with the saved revision and selected source proposal. Generate page candidates from those returned targets, then pass `page_proposal_ids` on this workflow's apply alongside the matching `operation_ids`. Accepted prerequisites are resolved from the parent's receipts. Use an explicit empty `operation_ids` to apply saved dependent drafts after committing their plan; planning_revision uses `payload.choices=[]` with selected page/outline proposal IDs. These are new draft decisions under the same revision, not reapplication of planning. Include selected `outline_proposal_ids` when applying saved scene-outline follow-ups from those proposed pages. They require the exact same story/page selection and cannot be applied alone. Both structural and planning revision apply commit these outlines with their prerequisites in one transaction. `outline_reconciliation` quotes and proposes one scene outline from a saved comparison; Start requires the accepted billing quote and request UUIDs. Readiness/start require comparison_id and payload revision_id/scene_id; finalize uses job_id and payload scene_id; review uses proposal_id and scene_id. List uses payload revision_id, source_selection, optional page_proposal_ids, limit and offset to find saved alternatives and report whether their source matches. This workflow never applies content; proposed-source outlines are accepted with their parent planning_revision or scene_list_revision and selected page drafts. `planning_revision` creates a durable revision with explicit reading/editing scope, proposes connected planning and screenplay choices, and reviews/applies selected choices with optional dependent pages. Use create, readiness, start, finalize, review, then apply; create is unmetered and does not edit story content.\n",when_to_use:["Polish start accepts payload.revision_id to use an existing revision's scope, or payload.edit_scope to select scene/episode targets for a new revision. Never supply both; omit both for whole-project Polish.","planning_revision status reads the current lifecycle checkpoint. Finish/reopen require its version and review key; finish only on writer request. Set aside remaining work only with explicit authorization. These phases never apply content or spend credits.","Continue a saved Room Review note with planning_revision create and payload={request_id,note_ref:{review_id,note_id,decision}}. Decision is inspect, explore or propose; the server attaches original evidence. Inspect returns an existing comparison/decision flow; do not copy note text into a detached revision.","Use `adaptive_revision` to develop a saved revision under an explicit credit allowance. Create the revision with `planning_revision` first, then use readiness/start. The run continues on the server; list/status inspect your own runs. Answer, scope and budget resume saved decisions with their current versions; recover and stop preserve submitted work. Starting never applies proposals.","Shared editorial decisions use `adaptive_revision` phases `questions`, `question_answer` and `question_continue`. Questions lists pending shared questions, optionally filtered by proposal_id. Answer requires question_id plus payload request_id/answer; continue requires question_id and an empty payload to resume the saved answer after interruption. Current editors may answer; the original run keeps its own access and allowance. Neither phase accepts a run owner, budget or Apply permission. E
359xecution internals stay private.","The structured material already exists and you want to alter, refine, or explore alternatives — the verb is CHANGE.","Use `change_wizard` to start a whole-story connected revision from a free-form direction. It returns shared revision_id and proposal_id identities; continue with `planning_revision` review/apply phases, including partial decisions and dependent page drafts.","Use `planning_revision` for connected beat/card-field and screenplay revisions, including consequences beyond the initiating planning card. Scene-list additions, merges and reordering belong to `scene_list_revision` even when dependent pages need revision.","Supply optional payload.instruction on `planning_revision` start to develop a chosen direction or redirect the next proposal. The generator retains the original revision request and scope; it does not see your conversation unless the direction is passed explicitly.","Start `scene_list_revision` directly with readiness and payload.change_request plus optional scene_ids. It creates its own revision at accepted Start; do not call `planning_revision` create as a prerequisite. Supply revision_id only when intentionally continuing a saved revision.","Use `scene_list_revision` to generate structural additions or changes within an existing scene list, including new scenes, scene order, merges, deletions, scene-to-beat links and dependent pages. Readiness, quote and approved Start produce a reviewable proposal; they do not replace the whole scene list.","To develop an unapplied structural proposal, use `scene_list_revision` readiness/start with payload revision_id, source_selection, optional page_proposal_ids, and change_request for the next pass. It returns replacement operations with mapped native drafts; it never applies the source proposal.","Use `polish_wizard` when refining existing scene-level dialogue and style without restructuring the story.","Use `creative_canvas` when generating alternative directions or what-ifs for selected cards rather than committing changes immediately.","Use `creative_canvas` review with proposal_id and payload.revision_id to inspect saved adaptive directions after the generation job expires. Review does not choose or apply a direction."],when_not_to_use:["Do not use for direct point edits when screenplay tools fit better.","For initial whole-outline generation or an explicitly requested whole-list replacement, use `story_development_run`. Creating new scenes inside an existing outline can be a structural revision; the fact that the new scene does not exist yet does not make it a Scene Wizard task.","For an exact scene addition already developed in conversation, use `story_mutate(entity_type=scene, operation=create)` rather than generating a second version of the agreed scene.","Do not use `change_wizard` to fill empty treatment sections; use `story_development_run` with `workflow=treatment_wizard`.","Do not use to **get editorial feedback** without proposing changes — use `story_review_run` (room_review, analysis_wizard, continuity_audit) instead.","For standalone surgical prose edits use `screenplay_edit_propose` / `screenplay_edit_apply`; use `planning_revision` when planning and screenplay consequences belong in one review.","Do not use `change_wizard` for scene-list condensation or scene merges; use `scene_list_revision` so structural changes and dependent pages can be reviewed and applied together."],examples:['"Develop a new confrontation scene and adjust its surrounding scenes and dependent pages." Use `scene_list_revision`, preserving the rest of the outline for review.',"Run a change wizard over this project.","Explore new directions in Creative Canvas for selected cards.",'Boundary - "Improve the existing scene list for better flow." Use `scene_list_revision` for structural changes; `polish_wizard` is for screenplay prose.','Boundary - "Restructure act 2 around a betrayal beat." Use `change_wizard` here because the caller wants to commit changes, not just receive feedback.','Boundary - "Merge these three procedural scenes into one sharper set piece." Use `scene_list_revision` because scene structure and dependent screenplay prose need a coordinated revision.'],anti_examples:["Add the already-developed sce
359ne after an identified scene without changing surrounding scenes; use `story_mutate(entity_type=scene, operation=create)`.","Show me template manifests.","Generating a brand-new scene outline from an idea — that is `story_development_run` with `scene_wizard` or `story_bootstrap`.","Fill treatment cards 50.10.10-50.10.40 from scratch — that is `story_development_run` with `treatment_wizard`.","Asking for editorial scores or notes without applying any changes — that is `story_review_run` with `analysis_wizard` or `room_review`.","Writing screenplay prose from the existing outline — that is `screenplay_generation_run` with `screenplay_writer`."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary","screenplay_document","project_diff_proposals","diff_proposal","change_wizard_result","polish_wizard_result","creative_canvas_result"],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"outline_reconciliation",phase_modes:["readiness","quote","start","finalize","review","list"],capabilities:["outline_reconciliation.run"]},{name:"editing_comparison",phase_modes:["readiness","start","finalize","review","decide"],capabilities:["editing_comparison.run"]},{name:"planning_revision",phase_modes:["status","finish","reopen","create","readiness","start","finalize","review","apply"],capabilities:["planning_revision.run"]},{name:"adaptive_revision",phase_modes:["questions","question_answer","question_continue","readiness","start","list","status","answer","scope","budget","recover","stop"],capabilities:["adaptive_revision.run"]},{name:"change_wizard",phase_modes:["readiness","start","finalize"],capabilities:["change_wizard.run"]},{name:"scene_list_revision",phase_modes:["readiness","start","finalize","review","apply"],capabilities:["scene_list_revision.run"]},{name:"polish_wizard",phase_modes:["readiness","start","finalize"],capabilities:["polish_wizard.run"]},{name:"creative_canvas",phase_modes:["readiness","quote","start","finalize","review"],capabilities:["creative_canvas.generate_directions"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",oneOf:[{type:"object",required:["workflow","phase","project_id"],properties:{workflow:{type:"string",enum:["change_wizard","scene_list_revision","polish_wizard","creative_canvas","planning_revision"]},phase:{type:"string",enum:["readiness","start","finalize","apply","create","review","status","finish","reopen","quote"]},project_id:{type:"integer"},job_id:{type:"string"},reservation_id:{type:"string"},proposal_id:{type:"string",description:"Saved diff proposal id returned by scene_list_revision finalize; required for scene_list_revision apply."},operation_ids:{type:"array",items:{type:"string"},description:"Optional selected scene operation ids to apply from a scene_list_revision proposal. Merge/delete dependencies are enforced server-side."},payload:{type:"object",properties:{change_request:{type:"string",description:"Free-form revision direction. Required for change_wizard and scene_list_revision start."},scene_ids:{type:"array",items:{type:"string"},description:"Optional scene ids/codes to focus scene_list_revision context."},sequence_numbers:{type:"array",items:{type:"integer"},description:"Optional sequence numbers to focus scene_list_revision context."},constraints:{type:"object",description:"Scene List Revision constraints. preserve_beat_codes and preserve_scene_ids are enforced at finalize/apply; max_scene_deletions limits delete/merge absorption count.",properties:{preserve_beat_codes:{type:"array",items:{type:"string"},description:"Beat codes that must remain linked to a surviving scene after apply."},preserve_scene_ids:{type:"array",items:{type:"string"},description:"Scene ids that must not be deleted or absorbed."},max_scene_deletions:{type:"integer",description:"Maximum number of scenes that may be deleted or absorbed by merge operations."}},additionalProperties:!0},operation_ids:{type:"array",items:{type:"string"}},beat_changes:{type:"array",items:{type:"object"}},prompt:{type:"string"},preset_id:{type:"string"},model_hint:{type:"string"},snapshot_rev:{type:"integer"},selected_card_codes:{type:"array",items:{type:"string"}},canon_excluded_card_codes:{type:"array",items:{type:"string"}},visible_group_ids:{type:"array",items:{type:"string"}},refinement_text:{type:"string"},discussion_turns:{type:"array",items:{type:"object"}},current_directions:{type:"array",items:{type:"object"}}
359,revision_id:{type:"string",minLength:1,maxLength:200},request_id:{type:"string",minLength:1,maxLength:128},instruction:{type:"string",minLength:1,maxLength:8e3},read_scope:{type:"object",properties:{whole_project:{type:"boolean"},entities:{type:"array",maxItems:500,uniqueItems:!0,items:{type:"object",required:["kind","id"],properties:{kind:{enum:["card","scene","episode"]},id:{type:"string",minLength:1,maxLength:200}},additionalProperties:!1}}},additionalProperties:!1,allOf:[{if:{required:["whole_project"],properties:{whole_project:{const:!0}}},then:{properties:{entities:{maxItems:0}}}}]},edit_scope:{type:"object",properties:{whole_project:{type:"boolean"},entities:{type:"array",maxItems:500,uniqueItems:!0,items:{type:"object",required:["kind","id"],properties:{kind:{enum:["card","scene","episode"]},id:{type:"string",minLength:1,maxLength:200}},additionalProperties:!1}}},additionalProperties:!1,allOf:[{if:{required:["whole_project"],properties:{whole_project:{const:!0}}},then:{properties:{entities:{maxItems:0}}}}]},choices:{type:"array",minItems:0,maxItems:500,items:{type:"object",required:["suggestion_id","decision"],properties:{suggestion_id:{type:"string",minLength:1},decision:{enum:["accept","reject"]}},additionalProperties:!1}},source_selection:{type:"object",additionalProperties:!1,required:["proposal_id","operation_ids"],properties:{proposal_id:{type:"string",minLength:1,maxLength:200},operation_ids:{type:"array",maxItems:500,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:120}},edited_fields:{type:"object",maxProperties:500,additionalProperties:{type:"object",additionalProperties:!0}}}},page_proposal_ids:{type:"array",maxItems:20,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:200}},note_ref:{type:"object",required:["review_id","note_id","decision"],properties:{review_id:{type:"string",minLength:1,maxLength:200},note_id:{type:"string",minLength:1,maxLength:200},decision:{enum:["inspect","explore","propose"]}},additionalProperties:!1},expected_version:{type:"integer",minimum:1},expected_review_key:{type:"string",minLength:64,maxLength:64},set_aside_pending:{type:"boolean"},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},additionalProperties:!1},outline_proposal_ids:{type:"array",minItems:1,maxItems:20,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:200},description:"Scene-outline follow-ups applied with the exact story operations and page drafts used to propose them."},page_proposal_ids:{type:"array",minItems:1,maxItems:20,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:200},description:"Dependent page candidates applied with the exact selected structural operations or connected choices."},edited_fields:{type:"object",maxProperties:500,additionalProperties:{type:"object",additionalProperties:!0}}},allOf:[{if:{properties:{phase:{const:"apply"}}},then:{properties:{workflow:{enum:["scene_list_revision","planning_revision"]}}}},{if:{properties:{workflow:{const:"scene_list_revision"},phase:{const:"apply"}}},then:{required:["proposal_id"]}},{if:{properties:{phase:{const:"finalize"}}},then:{required:["job_id"]}},{if:{properties:{workflow:{const:"scene_list_revision"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["change_request"]}}}},{if:{properties:{workflow:{const:"change_wizard"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{anyOf:[{required:["change_request"]},{required:["beat_changes"],properties:{beat_changes:{minItems:1}}}]}}}},{if:{properties:{workflow:{const:"polish_wizard"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["prompt"]}}}},{if:{properties:{workflow:{const:"creative_canvas"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["selected_card_codes"],properties:{selected_card_codes:{minItems:1}}}}}},{if:{anyOf:[{required:["page_proposal_ids"]},{required:["outline_proposal_ids"]}]},then:{properties:{workflow:{enum:["scene_list_revision","planning_revision"]},phase:{const:"apply"}}}},{if:{properties:{workflow:{const:"planning_revision"}}},then:{required:["payload"],properties:{operation_ids:!1,reservation_id:!1}},else:{if:{properties:{workflow:{const:"scene_list_revision"}}},then:{properties:{phase:{not:{const:"create"}},payload:{properties:{request_id:!1,instruction:!1,read_scope:!1,edit_scope:!1,choices:!1}}}},else:{if:{properties:{workflow:{const:"creative_canvas"},phase:{const:"review"}}},then:{required:["proposal_id","payload"],properties:{payload:{required:["revision_
359id"],properties:{request_id:!1,instruction:!1,read_scope:!1,edit_scope:!1,choices:!1}}}},else:{if:{properties:{workflow:{const:"polish_wizard"},phase:{enum:["quote","start"]}}},then:{properties:{payload:{not:{required:["revision_id","edit_scope"]},properties:{request_id:!1,instruction:!1,read_scope:!1,choices:!1}}}},else:{properties:{phase:{not:{enum:["create","review"]}},payload:{properties:{request_id:!1,instruction:!1,read_scope:!1,edit_scope:!1,choices:!1}}},allOf:[{if:{properties:{workflow:{const:"creative_canvas"},phase:{enum:["readiness","quote","start"]}}},then:{},else:{properties:{payload:{properties:{revision_id:!1}}}}}]}}}}},{if:{properties:{workflow:{const:"planning_revision"},phase:{const:"create"}}},then:{required:["payload"],properties:{payload:{required:["request_id"],properties:{change_request:!1,scene_ids:!1,sequence_numbers:!1,constraints:!1,operation_ids:!1,beat_changes:!1,prompt:!1,preset_id:!1,model_hint:!1,snapshot_rev:!1,selected_card_codes:!1,canon_excluded_card_codes:!1,visible_group_ids:!1,refinement_text:!1,discussion_turns:!1,current_directions:!1,revision_id:!1,choices:!1},oneOf:[{required:["instruction","read_scope","edit_scope"],properties:{note_ref:!1}},{required:["note_ref"],properties:{instruction:!1,read_scope:!1,edit_scope:!1}}]},proposal_id:!1,job_id:!1}}},{if:{properties:{workflow:{const:"planning_revision"},phase:{const:"readiness"}}},then:{required:["payload"],properties:{payload:{required:["revision_
359id"],properties:{change_request:!1,scene_ids:!1,sequence_numbers:!1,constraints:!1,operation_ids:!1,beat_changes:!1,prompt:!1,preset_id:!1,model_hint:!1,snapshot_rev:!1,selected_card_codes:!1,canon_excluded_card_codes:!1,visible_group_ids:!1,refinement_text:!1,discussion_turns:!1,current_directions:!1,request_id:!1,instruction:!1,read_scope:!1,edit_scope:!1,choices:!1}},proposal_id:!1,job_id:!1}}},{if:{properties:{workflow:{const:"planning_revision"},phase:{enum:["quote","start"]}}},then:{required:["payload"],properties:{payload:{required:["revision_id"],properties:{change_request:!1,scene_ids:!1,sequence_numbers:!1,constraints:!1,operation_ids:!1,beat_changes:!1,prompt:!1,preset_id:!1,model_hint:!1,snapshot_rev:!1,selected_card_codes:!1,canon_excluded_card_codes:!1,visible_group_ids:!1,refinement_text:!1,discussion_turns:!1,current_directions:!1,request_id:!1,read_scope:!1,edit_scope:!1,choices:!1}},proposal_id:!1,job_id:!1}}},{if:{properties:{workflow:{const:"planning_revision"},phase:{const:"finalize"}}},then:{required:["payload"],properties:{payload:{required:["revision_
359id"],properties:{change_request:!1,scene_ids:!1,sequence_numbers:!1,constraints:!1,operation_ids:!1,beat_changes:!1,prompt:!1,preset_id:!1,model_hint:!1,snapshot_rev:!1,selected_card_codes:!1,canon_excluded_card_codes:!1,visible_group_ids:!1,refinement_text:!1,discussion_turns:!1,current_directions:!1,request_id:!1,instruction:!1,read_scope:!1,edit_scope:!1,choices:!1}},proposal_id:!1}}},{if:{properties:{workflow:{const:"planning_revision"},phase:{const:"review"}}},then:{required:["payload","proposal_id"],properties:{payload:{required:["revision_id"],properties:{change_request:!1,scene_ids:!1,sequence_numbers:!1,constraints:!1,operation_ids:!1,beat_changes:!1,prompt:!1,preset_id:!1,model_hint:!1,snapshot_rev:!1,selected_card_codes:!1,canon_excluded_card_codes:!1,visible_group_ids:!1,refinement_text:!1,discussion_turns:!1,current_directions:!1,request_id:!1,instruction:!1,read_scope:!1,edit_scope:!1,choices:!1}},job_id:!1}}},{if:{properties:{workflow:{const:"planning_revision"},phase:{const:"apply"}}},then:{required:["payload","proposal_id"],properties:{payload:{required:["revision_
359id","request_id","choices"],properties:{change_request:!1,scene_ids:!1,sequence_numbers:!1,constraints:!1,operation_ids:!1,beat_changes:!1,prompt:!1,preset_id:!1,model_hint:!1,snapshot_rev:!1,selected_card_codes:!1,canon_excluded_card_codes:!1,visible_group_ids:!1,refinement_text:!1,discussion_turns:!1,current_directions:!1,instruction:!1,read_scope:!1,edit_scope:!1}},job_id:!1},anyOf:[{properties:{payload:{properties:{choices:{minItems:1}}}}},{required:["page_proposal_ids"],properties:{page_proposal_ids:{minItems:1}}},{required:["outline_proposal_ids"],properties:{outline_proposal_ids:{minItems:1}}}]}},{if:{properties:{workflow:{const:"scene_list_revision"},phase:{const:"review"}}},then:{required:["proposal_id","payload"],properties:{payload:{required:["revision_id"]}}}},{if:{properties:{workflow:{enum:["planning_revision","creative_canvas","scene_list_revision"]},phase:{enum:["readiness","start","quote"]}}},then:{},else:{properties:{payload:{properties:{source_selection:!1,page_proposal_ids:!1}}}}},{if:{required:["payload"],properties:{payload:{required:["page_proposal_ids"]}}},then:{properties:{payload:{required:["source_selection"]}}}},{if:{properties:{workflow:{enum:["creative_canvas","scene_list_revision"]},payload:{required:["source_selection"]}},required:["payload"]}
359,then:{properties:{payload:{required:["revision_id"]}}}},{if:{properties:{workflow:{const:"planning_revision"},phase:{const:"create"}}},then:{},else:{properties:{payload:{properties:{note_ref:!1}}}}},{if:{properties:{phase:{enum:["status","finish","reopen"]}}},then:{properties:{workflow:{const:"planning_revision"},job_id:!1,reservation_id:!1,proposal_id:!1,operation_ids:!1,page_proposal_ids:!1,outline_proposal_ids:!1}},else:{properties:{payload:{properties:{expected_version:!1,expected_review_key:!1,set_aside_pending:!1}}}}},{if:{properties:{phase:{const:"status"}}},then:{required:["payload"],properties:{payload:{type:"object",required:["revision_id"],properties:{revision_id:{type:"string",minLength:1,maxLength:200}},additionalProperties:!1}}}},{if:{properties:{phase:{enum:["finish","reopen"]}}},then:{required:["payload"],properties:{payload:{type:"object",required:["revision_id","request_id","expected_version","expected_review_key","set_aside_pending"],properties:{revision_id:{type:"string",minLength:1,maxLength:200},request_id:{type:"string",minLength:1,maxLength:128},expected_version:{type:"integer",minimum:1},expected_review_key:{type:"string",minLength:64,maxLength:64},set_aside_pending:{type:"boolean"}},additionalProperties:!1}}}},{if:{properties:{phase:{const:"reopen"}}},then:{properties:{payload:{properties:{set_aside_pending:{const:!1}}}}}},{if:{properties:{phase:{const:"quote"}}},then:{properties:{workflow:{enum:["polish_wizard","planning_revision","change_wizard","scene_list_revision","creative_canvas"]}}}},{if:{properties:{workflow:{enum:["polish_wizard","planning_revision","change_wizard","scene_list_revision","creative_canvas"]},phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{required:["billing_quote_id","billing_request_id"]}}},else:{properties:{payload:{properties:{billing_quote_id:!1,billing_request_id:!1}}}}}],additionalProperties:!1},{type:"object",properties:{workflow:{const:"editing_comparison"},project_id:{type:"integer"},phase:{enum:["readiness","quote","start"]},payload:{type:"object",properties:{revision_id:{type:"string",minLength:1,maxLength:200},source_selection:{type:"object",properties:{proposal_id:{type:"string",minLength:1,maxLength:200},operation_ids:{type:"array",items:{type:"string",minLength:1,maxLength:120},minItems:0,maxItems:500,uniqueItems:!0},edited_fields:{type:"object",maxProperties:500,additionalProperties:{type:"object",additionalProperties:!0}}},required:["proposal_id","operation_ids"],additionalProperties:!1},page_proposal_ids:{type:"array",items:{type:"string",minLength:1,maxLength:200},maxItems:20,uniqueItems:!0},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}}
359,required:["revision_id"],additionalProperties:!1,allOf:[{if:{required:["page_proposal_ids"],properties:{page_proposal_ids:{minItems:1}}},then:{required:["source_selection"]}}]}},required:["workflow","project_id","phase","payload"],additionalProperties:!1,allOf:[{if:{properties:{phase:{const:"start"}}},then:{properties:{payload:{required:["billing_quote_id","billing_request_id"]}}},else:{properties:{payload:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}}}]},{type:"object",properties:{workflow:{const:"editing_comparison"},project_id:{type:"integer"},phase:{enum:["finalize"]},payload:{type:"object",properties:{revision_id:{type:"string",minLength:1,maxLength:200}},required:["revision_id"],additionalProperties:!1},job_id:{type:"string",minLength:1,maxLength:200}},required:["workflow","project_id","phase","payload","job_id"],additionalProperties:!1},{type:"object",properties:{workflow:{const:"editing_comparison"},project_id:{type:"integer"},phase:{enum:["review"]},payload:{type:"object",properties:{revision_id:{type:"string",minLength:1,maxLength:200}}
359,required:["revision_id"],additionalProperties:!1},comparison_id:{type:"string",minLength:1,maxLength:200}},required:["workflow","project_id","phase","payload","comparison_id"],additionalProperties:!1},{type:"object",properties:{workflow:{const:"editing_comparison"},project_id:{type:"integer"},phase:{enum:["decide"]},payload:{type:"object",properties:{revision_id:{type:"string",minLength:1,maxLength:200},request_id:{type:"string",minLength:1,maxLength:128},finding_id:{type:"string",minLength:1,maxLength:240},decision:{enum:["retain","defer"]},explanation:{type:"string",maxLength:4e3},expected_decision_id:{anyOf:[{type:"string",minLength:1,maxLength:200},{type:"null"}]}},required:["revision_id","request_id","finding_id","decision"],additionalProperties:!1,allOf:[{if:{properties:{decision:{const:"retain"}}},then:{required:["explanation"],properties:{explanation:{pattern:"\\S"}}}}]},comparison_id:{type:"string",minLength:1,maxLength:200}},required:["workflow","project_id","phase","payload","comparison_id"],additionalProperties:!1},{type:"object",required:["workflow","project_id","phase","comparison_id","payload"],properties:{workflow:{const:"outline_reconciliation"},project_id:{type:"integer"},phase:{enum:["readiness","quote"]},comparison_id:{type:"string",minLength:1,maxLength:200},payload:{type:"object",required:["scene_id","revision_id"],properties:{scene_id:{type:"string",minLength:1,maxLength:200},revision_id:{type:"string",minLength:1,maxLength:200}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","project_id","phase","comparison_id","payload"],properties:{workflow:{const:"outline_reconciliation"},project_id:{type:"integer"},phase:{const:"start"},comparison_id:{type:"string",minLength:1,maxLength:200},payload:{type:"object",required:["scene_id","revision_id","billing_quote_id","billing_request_id"],properties:{scene_id:{type:"string",minLength:1,maxLength:200},revision_id:{type:"string",minLength:1,maxLength:200},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","project_id","phase","job_id","payload"],properties:{workflow:{const:"outline_reconciliation"},project_id:{type:"integer"},phase:{const:"finalize"},job_id:{type:"string",minLength:1,maxLength:200},payload:{type:"object",required:["scene_id"],properties:{scene_id:{type:"string",minLength:1,maxLength:200}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","project_id","phase","proposal_id","payload"],properties:{workflow:{const:"outline_reconciliation"},project_id:{type:"integer"},phase:{const:"review"},proposal_id:{type:"string",minLength:1,maxLength:200},payload:{type:"object",required:["scene_id"],properties:{scene_id:{type:"string",minLength:1,maxLength:200}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","project_id","phase","payload"],properties:{workflow:{const:"outline_reconciliation"},project_id:{type:"integer"},phase:{const:"list"}
359,payload:{type:"object",required:["revision_id","source_selection"],properties:{revision_id:{type:"string",minLength:1,maxLength:200},source_selection:{type:"object",properties:{proposal_id:{type:"string",minLength:1,maxLength:200},operation_ids:{type:"array",items:{type:"string",minLength:1,maxLength:120},minItems:0,maxItems:500,uniqueItems:!0},edited_fields:{type:"object",maxProperties:500,additionalProperties:{type:"object",additionalProperties:!0}}},required:["proposal_id","operation_ids"],additionalProperties:!1},page_proposal_ids:{type:"array",items:{type:"string",minLength:1,maxLength:200},maxItems:20,uniqueItems:!0},limit:{type:"integer",minimum:1,maximum:100},offset:{type:"integer",minimum:0}},additionalProperties:!1}},additionalProperties:!1},{oneOf:[{type:"object",required:["workflow","phase","project_id","revision_id"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"readiness"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"list"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","run_id"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"status"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},run_id:{type:"string",format:"uuid"}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"start"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},payload:{type:"object",required:["request_id","expected_revision_version","credit_limit","billing_quote_id","billing_request_id"],properties:{request_id:{type:"string",minLength:1,maxLength:128},expected_revision_version:{type:"integer",minimum:1},credit_limit:{type:"integer",minimum:1},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","run_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"answer"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},run_id:{type:"string",format:"uuid"},payload:{type:"object",required:["request_id","expected_version","answer"],properties:{request_id:{type:"string",minLength:1,maxLength:128},expected_version:{type:"integer",minimum:1},answer:{type:"string",minLength:1,maxLength:8e3}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","run_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"scope"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},run_id:{type:"string",format:"uuid"},payload:{type:"object",required:["request_id","expected_version","approve"],properties:{request_id:{type:"string",minLength:1,maxLength:128},expected_version:{type:"integer",minimum:1},approve:{type:"boolean"}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","run_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"budget"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},run_id:{type:"string",format:"uuid"},payload:{type:"object",required:["request_id","expected_version","credit_limit"],properties:{request_id:{type:"string",minLength:1,maxLength:128},expected_version:{type:"integer",minimum:1},credit_limit:{type:"integer",minimum:1}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","run_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"recover"},project_id:{type:"integer"}
359,revision_id:{type:"string",minLength:1,maxLength:128},run_id:{type:"string",format:"uuid"},payload:{type:"object",required:["expected_version"],properties:{expected_version:{type:"integer",minimum:1}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","run_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"stop"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},run_id:{type:"string",format:"uuid"},payload:{type:"object",required:["expected_version"],properties:{expected_version:{type:"integer",minimum:1}},additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"questions"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},proposal_id:{type:"string",minLength:1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","question_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"question_answer"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},question_id:{type:"string",minLength:1,maxLength:128},payload:{type:"object",properties:{request_id:{type:"string",minLength:1,maxLength:128},answer:{type:"string",minLength:1,maxLength:8e3}},required:["request_id","answer"],additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","question_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"question_continue"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},question_id:{type:"string",minLength:1,maxLength:128},payload:{type:"object",properties:{},required:[],additionalProperties:!1}},additionalProperties:!1},{type:"object",required:["workflow","phase","project_id","revision_id","payload"],properties:{workflow:{const:"adaptive_revision"},phase:{const:"quote"},project_id:{type:"integer"},revision_id:{type:"string",minLength:1,maxLength:128},payload:{type:"object",required:["expected_revision_version","credit_limit"],properties:{expected_revision_version:{type:"integer",minimum:1},credit_limit:{type:"integer",minimum:1}},additionalProperties:!1}},additionalProperties:!1}]}]},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase"],properties:{credits_charged:{type:"number",minimum:0},credits_skipped_reason:{type:"string"},workflow:{type:"string"},phase:{type:"string"},async:{type:"boolean"},job_id:{type:"string"},reservation_id:{type:"string"},readiness:{type:"object"},result:{type:"object"},resource_links:{type:"array",items:{type:"object"}},pipeline_state:{$ref:"./_common/pipeline_state.schema.json"},next_actions:{type:"array",items:{$ref:"./_common/next_action.schema.json"}}},additionalProperties:!0},schema_load_errors:[]},{name:"take_wizard_run",version:1,stability:"beta",category:"story_development",family_id:"story_workflows",auth_scope:"project:write",approval_policy:"suggest",kind:"orchestration",description:"Quote, then explicitly start 2-5 distinct premise TAKES from raw story material before any beats exist - Faithful, More Dramatic, Wildcard, Intimate, High Concept. The user edits/picks one; then run `story_development_run` (beat_wizard) with template_id `original_plus_take`, passing ORIGINAL_TEXT (untouched original) and SELECTED_TAKE. The verb is DIVERGE: run on fresh projects before committing to one story direction. Start requires the accepted billing_quote_id and a billing_request_id UUID; reuse both IDs and the original inputs on retry.\n",when_to_use:["The caller has a raw idea and the project has no beats yet."],when_not_to_use:["Do not use after beats exist, or to build beats/scenes/prose."],examples:["Give me five takes on this premise before we outline it."],anti_examples:["Generating the beat structure itself - that is `story_development_run` with `beat_wizard`."],schema_pattern:"simple_action",returns_structured_content:!0,returns_human_content:!0,resource_families:["project_canon_summary"],capabilities:["take_wizard.run"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["phase","project_id","idea_text"],properties:{project_id:{type:"integer"},idea_text:{type:"string",minLength:1,maxLength:2e5},count:{type:"integer",minimum:2,maximum:5},phase:{enum:["quote","start"]},billing_quote_id:{type:"string",format:"uuid"},billing_request_id:{type:"string",format:"uuid"}},additionalProperties:!1,allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["billing_quote_id","billing_request_id"]},else:{not:{anyOf:[{required:["billing_quote_id"]},{required:["billing_request_id"]}]}}}]},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",properties:{success:{type:"boolean"},takes:{type:"array",items:{type:"object",required:["id","label","take"],properties:{id:{type:"string"},label:{type:"string"},take:{type:"string"}},additionalProperties:!0}},original_text_length:{type:"integer"},credits_used:{type:["integer","null"],minimum:0},recommended_next_step:{type:"string"},resource_links:{type:"array"},next_actions:{type:"array"},credits_charged:{type:["integer","null"],minimum:0},phase:{type:"string",enum:["quote","start"]},quote:{type:"object",required:["quote_id","mode","allowance","expires_at"],properties:{quote_id:{type:"string",format:"uuid"},mode:{enum:["fixed","usage"]},allowance:{type:"integer",minimum:0},expires_at:{type:"string"}},additionalProperties:!0},billing_status:{const:"pending"},billing_operation_id:{type:"string",format:"uuid"}},additionalProperties:!0,required:["phase"]},schema_load_errors:[]},{name:"template_list",version:1,stability:"beta",category:"core_project",family_id:"c
359ore_project",auth_scope:"project:read",approval_policy:"never",kind:"read",description:"List available BeatBandit templates and return a compact project creation next-action template. Use each template's `project_create_mode` (same as `mode`) when creating a new project, and pass selected `template_settings` values such as advertisement runtime and placement when the template exposes settings.",when_to_use:["Use when the caller needs to discover BeatBandit template modes.","Use when the caller needs to inspect template settings before creating a project, for example advertisement runtime or placement.","Use the returned `project_create_mode` field directly with `project_mutate(create)`.","After choosing a template, follow the returned `start_payload_template` / `next_actions` to call `project_mutate` with `operation=create`, the selected `project_create_mode`, a project name, and any desired `template_settings` from the selected template."],when_not_to_use:["Do not use for reading one project or one full screenplay.","Do not set `include_project=true` when creating from a listed template; use compact create plus resource links."],examples:["List the templates I can use for a new project.","Show the templates and tell me what settings the video advertisement template supports."],anti_examples:["Open my existing project and show its screenplay."],schema_pattern:"query_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["template_manifest"],capabilities:["template.list"],implemented_status:"v1",variants:null,input_schema:{$ref:"./template.list.input.json"},output_schema:{$ref:"./template.list.output.json"},schema_load_errors:[]},{name:"video_generate",version:1,stability:"beta",category:"media_generation",family_id:"media",auth_scope:"media:write",approval_policy:"suggest",kind:"orchestration",description:"Generate shot videos and start video timeline exports, with discoverable model constraints, reference roles, prompt/default resolution, and asset handoff metadata.",when_to_use:["Use for video generation or timeline export workflows.","Call `generate_video` with `phase=readiness` before a custom start payload when the caller needs supported models, roles, duration options, aspect ratios, resolutions, audio support, default settings, or credit estimates.","Use `generate_video` start with `payload.shot_card_id` to generate one shot; BeatBandit automatically derives the prompt, defaults, selected shot image, recurring references, and supported same-shot audio unless the caller provides explicit overrides.","`payload.autofill_from_shot=true` is accepted as an explicit signal for that same shot-derived path, but it is not required when `payload.shot_card_id` is present and prompt, references, or defaults are omitted.","Omit `payload.model_path` when the caller wants BeatBandit to use the caller's saved default video model for this workflow.","Use `payload.references[]` for explicit references. Supported reference sources are `shot_asset_id`, `shot_element_asset_id`, `video_asset_id`, `media_asset_id`, accepted `continuity_checkpoint_id`, and one-off `external_url`; supported roles depend on the selected model.","Shot autofill adds the current non-stale immediately previous accepted continuity grid first when the selected model supports image references. It never substitutes an unreviewed primary video or a stale checkpoint.","Omit `payload.duration_seconds` when the caller wants BeatBandit to use the shot card duration when present, then the selected model default.","Use `payload.no_background_music=true` when the model may generate audio but the clip should avoid score, soundtrack, or background music."],when_not_to_use:["Do not use for still-image generation.","Do not pass raw provider-specific params; BeatBandit exposes validated top-level controls such as `duration_seconds`, `aspect_ratio`, `resolution`, `audio_enabled`, `seed`, and `references`."],examples:["Generate a video from the selected shots.","Start one shot video from `shot_card_id` only, reusing the same prompt/reference/duration defaults the website would derive.","Check readiness, then start a Seedance reference-to-video shot using a storyboard image, recurring element references, `duration_seconds=15`, `aspect_ratio=16:9`, and `no_background_music=true`.","Generate a one-off test video with `references[].external_url` when the user provides a temporary HTTPS reference image.","Generate the next shot with the immediately previous accepted checkpoint as chronological evidence while allowing new coverage and action progression."],anti_examples:["Create music for this scene.","Generate an individual storyboard panel; use `image_generate(workflow=generate_shot)` instead."],schema_pattern:"workflow_runner",returns_structured_content:!0,returns_human_content:!0,resource_families:[],capabilities:[],implemented_status:"v1",variants:{discriminator:"workflow",values:[{name:"generate_video",phase_modes:["readiness","start","finalize","cancel","rescue"],capabilities:["video.generate"]},{name:"timeline_export_start",phase_modes:["start","status","cancel"],capabilities:["video.generate"]}]},input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["workflow","phase","project_id"],properties:{workflow:{type:"string",enum:["generate_video","timeline_export_start"]},phase:{type:"string"},project_id:{type:"integer"},job_id:{type:"string",minLength:1},payload:{type:"object",properties:{shot_card_id:{type:"integer"},prompt:{type:"string",minLength:1},model_path:{type:"string",minLength:1},autofill_from_shot:{type:"boolean",description:"Optional explicit request to derive prompt, references, and defaults from shot_card_id. Shot-scoped starts do this automatically when prompt, references, or defaults are omitted."},input_mode:{type:"string",enum:["text_to_video","image_to_video","text_and_image"],description:"Video input mode. Use readiness to discover what the selected model supports."},duration_seconds:{type:"number",exclusiveMinimum:0,description:"Requested video duration in seconds. Must fit the selected model's allowed durations."},aspect_ratio:{type:"string",description:"Requested output aspect ratio, such as 16:9, 9:16, 1:1, or auto when supported by the model."},resolution:{type:"string",description:"Requested output resolution, such as 480p, 720p, or 1080p when supported by the model."},audio_enabled:{type:"boolean",description:"Whether to ask the provider for generated video audio when the selected model supports audio."},no_background_music:{type:"boolean",description:"When true, BeatBandit adds explicit prompt direction to avoid score, soundtrack, and background music while still allowing diegetic scene sound."},seed:{type:"integer",description:"Optional generation seed when supported by the selected provider model."},references:{type:"array",description:"Reference inputs for the video model. Use readiness.model_summary to choose valid roles and limits.",maxItems:20,items:{type:"object",required:["input_role"],properties:{input_role:{type:"string",enum:["start_frame","end_frame","reference_image","reference_video","reference_audio"],description:"Model-facing role for this reference."},source_kind:{type:"string",enum:["image","video","audio"],description:"Reference media kind. If omitted by the backend API, it is inferred from input_role/source."},shot_asset_id:{type:"integer",description:"Existing BeatBandit shot image asset id."},shot_element_asset_id:{type:"integer",description:"Existing BeatBandit recurring element image asset id."},video_asset_id:{type:"integer",description:"Existing BeatBandit video asset id for reference-video models."},media_asset_id:{type:"integer",description:"Existing BeatBandit audio media asset id for reference-audio models."},continuity_checkpoint_id:{type:"integer",description:"Accepted, non-stale BeatBandit video-continuity checkpoint id. It resolves to that checkpoint's chronological contact grid and records exact lineage."},additional_shot_element_asset_ids:{type:"array",items:{type:"integer"},description:"Additional image references for the same recurring element, supported only for reference_image shot-element inputs."},external_url:{type:"string",format:"uri",description:"HTTPS image, video, or audio URL to pass as a one-off external reference. Prefer BeatBandit asset ids when the reference should be reusable."}},oneOf:[{required:["shot_asset_id"]},{required:["shot_element_asset_id"]},{required:["video_asset_id"]},{required:["media_asset_id"]},{required:["continuity_checkpoint_id"]},{required:["external_url"]}],additionalProperties:!1}},select_as_primary:{type:"boolean",description:"Whether the finalized video should become the selected video take for the shot."},add_to_timeline:{type:"boolean",description:"Whether to insert the finalized video asset onto the relevant video timeline."},scope_type:{type:"string",minLength:1},scope_code:{type:"string",minLength:1}},additionalProperties:!0}},allOf:[{if:{properties:{workflow:{const:"generate_video"}}},then:{properties:{phase:{enum:["readiness","start","finalize","cancel","rescue"]}},allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{type:"object",required:["shot_card_id"],properties:{shot_card_id:{type:"integer"},prompt:{type:"string",minLength:1},model_path:{type:"string",minLength:1},autofill_from_shot:{type:"boolean",description:"Optional explicit request to derive prompt, references, and defaults from shot_card_id. Shot-scoped starts do this automatically when prompt, references, or defaults are omitted."},input_mode:{type:"string",enum:["text_to_video","image_to_video","text_and_image"]},duration_seconds:{type:"number",exclusiveMinimum:0},aspect_ratio:{type:"string"},resolution:{type:"string"},audio_enabled:{type:"boolean"},no_background_music:{type:"boolean"},seed:{type:"integer"},references:{type:"array",maxItems:20,items:{type:"object",required:["input_role"],properties:{input_role:{type:"string",enum:["start_frame","end_frame","reference_image","reference_video","reference_audio"]},source_kind:{type:"string",enum:["image","video","audio"]},shot_asset_id:{type:"integer"},shot_element_asset_id:{type:"integer"},video_asset_id:{type:"integer"},media_asset_id:{type:"integer"},continuity_checkpoint_id:{type:"integer"},additional_shot_element_asset_ids:{type:"array",items:{type:"integer"}},external_url:{type:"string",format:"uri"}},oneOf:[{required:["shot_asset_id"]},{required:["shot_element_asset_id"]},{required:["video_asset_id"]},{required:["media_asset_id"]},{required:["continuity_checkpoint_id"]},{required:["external_url"]}],additionalProperties:!1}},select_as_primary:{type:"boolean"},add_to_timeline:{type:"boolean"}}}}}},{if:{properties:{phase:{enum:["finalize","cancel","rescue"]}}},then:{required:["job_id"]}}]}},{if:{properties:{workflow:{const:"timeline_export_start"}}},then:{properties:{phase:{enum:["start","status","cancel"]}},allOf:[{if:{properties:{phase:{const:"start"}}},then:{required:["payload"],properties:{payload:{type:"object",required:["scope_type","scope_code"],properties:{scope_type:{type:"string",minLength:1},scope_code:{type:"string",minLength:1}}}}}},{if:{properties:{phase:{enum:["status","cancel"]}}},then:{required:["job_id"]}}]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",properties:{resource_updated_at:{type:"string",format:"date-time",description:"Generic updated_at value for read/propose outputs that need a round-trippable optimistic-concurrency timestamp."},credits_charged:{type:"integer",minimum:0,description:"Credits charged for this capability call when credit_metered=true."},credits_skipped_reason:{type:"string",description:"Present instead of credits_charged when the capability intentionally skipped billing (e.g. cache hit, no-op, failed_before_llm)."},pipeline_state:{$ref:"./_common/pipeline_state.schema.json"},next_actions:{type:"array",items:{$ref:"./_common/next_action.schema.json"}}},additionalProperties:!0},schema_load_errors:[]},{name:"voice_profile",version:1,stability:"beta",category:"media_generation",family_id:"media",auth_scope:"project:write",approval_policy:"suggest",kind:"write",description:"List, create, update, archive, and attach reusable voice reference samples for Seed Audio workflows.",when_to_use:["Use `operation=list` or `operation=get` to inspect available character/narrator voice profiles and selected voice samples.","Use `operation=add_reference` after `asset_upload(target_type=reference_audio_asset)` to attach a clean voice sample to a profile.","Use `operation=select_reference` to choose the active sample that should guide future voice generation.","Use `operation=archive` to retire a reusable voice profile without deleting its underlying media assets."],when_not_to_use:["Do not use for generated shot audio takes; use `media_generate(workflow=scene_audio)`.","Do not use for selecting which finished shot audio should feed video generation; use `shot_mutate(entity_type=shot_audio, operation=select)`."],examples:["List reusable voice profiles for project 123.","Attach uploaded reference audio asset 456 to voice profile 12.","Select voice reference 78 for profile 12.","Archive voice profile 12 when it should no longer appear in default voice lists."],anti_examples:["Generate a 20-second line of dialogue.","Use a shot audio take as the video reference."],schema_pattern:"mutate_tool",returns_structured_content:!0,returns_human_content:!0,resource_families:["media_catalog"],capabilities:["voice_profile.manage"],implemented_status:"v1",variants:null,input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id"],properties:{operation:{type:"string",enum:["list","get","create","update","archive","add_reference","select_reference"]},project_id:{type:"integer"},voice_profile_id:{type:"integer",description:"Required for get, update, archive, add_reference, and select_reference."},reference_id:{type:"integer",description:"Required for select_reference."},include_archived:{type:"boolean",default:!1},if_match_updated_at:{type:"string"},display_name:{type:"string"},profile_kind:{type:"string",enum:["character","narrator","ambient_style","other"]},character_card_id:{type:["integer","null"]},shot_element_id:{type:["integer","null"]},cue_aliases:{type:"array",items:{type:"string"},maxItems:20},voice_description:{type:["string","null"]},provider:{type:["string","null"]},provider_voice:{type:["string","null"]},seed_audio_voice:{type:["string","null"]},prompt_guidance:{type:["string","null"]},media_asset_id:{type:"integer",description:"Required for add_reference."},reference_role:{type:"string",enum:["voice_reference","performance_reference","style_reference"],default:"voice_reference"},label:{type:["string","null"]},is_selected:{type:"boolean"}},allOf:[{if:{properties:{operation:{const:"get"}}},then:{required:["voice_profile_id"]}},{if:{properties:{operation:{const:"create"}}},then:{required:["display_name"]}},{if:{properties:{operation:{const:"update"}}},then:{required:["voice_profile_id"]}},{if:{properties:{operation:{const:"archive"}}},then:{required:["voice_profile_id"]}},{if:{properties:{operation:{const:"add_reference"}}},then:{required:["voice_profile_id","media_asset_id"]}},{if:{properties:{operation:{const:"select_reference"}}},then:{required:["voice_profile_id","reference_id"]}}],additionalProperties:!1},output_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["operation","project_id","voice_profile_updated_at"],properties:{operation:{type:"string",enum:["list","get","create","update","archive","add_reference","select_reference"]},project_id:{type:"integer"},profile:{type:["object","null"],additionalProperties:!0},profiles:{type:"array",items:{type:"object",additionalProperties:!0}},reference:{type:"object",additionalProperties:!0},voice_profile_updated_at:{type:["string","null"],description:"Updated-at value for the returned voice profile/reference, when available."},credits_skipped_reason:{type:"string"}},additionalProperties:!0},schema_load_errors:[]}],xY=[{name:"idea_to_screenplay_pipeline",title:"Idea To Screenplay Pipeline",version:1,stability:"beta",category:"writing_pipeline",auth_scope:"project:read",descriptio
359n:"Route a BeatBandit project from raw idea through outline stages into screenplay generation, branching by template mode and live readiness instead of only raw card counts.",when_to_use:["Use when the caller wants the canonical concept-to-screenplay path and wants BeatBandit to choose the next stage.","Use for movie and episodic/TV projects where the workflow should branch by template."],when_not_to_use:["Do not use when the caller only wants one known wizard step.","Do not use for direct screenplay edits or revision passes on material that already exists."],examples:["Take this movie project from idea to screenplay.","What is the next canonical writing step for this TV project?"],anti_examples:["Polish scene 7 dialogue."],tool_names:["project_query","template_list","genre_contract_query","genre_contract","story_development_run","screenplay_generation_run","story_entity_query","job_get"],resource_families:["template_manifest","project_canon_summary","screenplay_document"],implemented_status:"v1",input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id"],properties:{project_id:{type:"string",pattern:"^[0-9]+$"},target_stage:{type:"string",enum:["outline","scene_list","treatment","screenplay"]},user_goal:{type:"string"}},additionalProperties:!1},schema_load_errors:[]},{name:"review_to_revisions_pipeline",title:"Review To Revisions Pipeline",version:1,stability:"beta",category:"revision_pipeline",auth_scope:"project:read",description:"Start with BeatBandit-led diagnosis first, then route the resulting review findings into the right revision path.",when_to_use:["Use when the caller wants BeatBandit to identify what should change before choosing a revision tool.","Use when the workflow should begin with room review, analysis, or continuity checks and then continue into revisions."],when_not_to_use:["Do not use when the caller already has a concrete revision request and does not want review first; use `revision_strategy_pipeline` instead.","Do not use for pure generation or media workflows."],examples:["Review this draft and then tell me the best revision path.","Diagnose what is broken first, then route me into the right BeatBandit fix flow."],anti_examples:["Apply this known screenplay change directly."],tool_names:["story_review_run","story_revision_run","screenplay_edit_propose","screenplay_rewrite_run","story_entity_query","job_get"],resource_families:["room_review_result","analysis_wizard_result","project_updates","screenplay_document"],implemented_status:"v1",input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id"],properties:{project_id:{type:"string",pattern:"^[0-9]+$"},review_goal:{type:"string"},focus_areas:{type:"string",description:"Comma-separated list of review focus areas."}},additionalProperties:!1},schema_load_errors:[]},{name:"revision_strategy_pipeline",title:"Revision Strategy Pipeline",version:1,stability:"beta",category:"revision_pipeline",auth_scope:"project:read",description:"Route a known revision request to the right screenplay-first or story-first BeatBandit change surface, route Scene List Revision merge survivors through reviewable scene authoring, and route remaining structural-sync queues through Sync Screenplay (`story_review_run` continuity_audit) before more prose edits.",when_to_use:["Use when the caller already knows they want to change something, but has not yet chosen the right BeatBandit revision surface.","Use when the workflow may need to branch between screenplay edits, story changes, or larger rewrites.","Use when the caller provides exact Fountain/plain screenplay text and needs to decide between snapshot replacement and creative rewrite tooling.","Use when recent story or scene-structure changes may have created pending Sync Screenplay update tasks.","Use when Scene List Revision merged scenes and merge survivors may need prose authoring before continuity ripple checks."],when_not_to_use:["Do not use when the caller already knows the exact tool and phase.","Do not use when the caller wants BeatBandit to diagnose what is wrong first; use `review_to_revisions_pipeline` instead.","Do not use for idea-to-outline generation in a brand-new project."],examples:["I need to tighten dialogue without breaking structure.","Should I edit beats first or screenplay first for this change?","I have exact Fountain text for this scene and need to replace the editor scene.","I applied sce
359ne-list changes and need to sync the screenplay next.","I merged several scenes and need the survivor scene rewritten before ripple checks."],anti_examples:["Generate a brand-new shot list for this scene."],tool_names:["screenplay_read","screenplay_edit_propose","screenplay_edit_apply","screenplay_snapshot_apply","screenplay_rewrite_run","story_revision_run","story_review_run","screenplay_generation_run","story_mutate","story_entity_query"],resource_families:["project_updates","project_canon_summary","screenplay_document"],implemented_status:"v1",input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","user_intent"],properties:{project_id:{type:"string",pattern:"^[0-9]+$"},user_intent:{type:"string"},preferred_target:{type:"string",enum:["auto","screenplay","story","review"]}},additionalProperties:!1},schema_load_errors:[]},{name:"screenplay_to_novel_pipeline",title:"Screenplay To Novel Pipeline",version:1,stability:"beta",category:"writing_pipeline",auth_scope:"project:read",description:"Route an authorized Movie, Genre Movie, or existing Novel project through the canonical source → Blueprint → Chapters → Voice → manuscript → audit → export lifecycle using live readiness.",when_to_use:["Use when the caller wants the complete screenplay/story-outline to Novel Adaptation path or the next canonical Novel stage.","Use for an existing Novel project that should resume from its persisted state."],when_not_to_use:["Do not use for Novel-to-screenplay conversion.","Do not use for one direct Chapter prose overwrite; no public tool exposes that bypass."],examples:["Adapt this Movie project into a novel and show me each review boundary.","What is the next canonical step for this Novel project?"],anti_examples:["Turn this novel into a screenplay."],tool_names:["project_query","story_development_run","project_query","story_review_run","export_create","job_get"],resource_families:["project_canon_summary","novel_source","novel_source_unit","novel_manuscript","novel_chapter","novel_canon","novel_audits"],implemented_status:"v1",input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id"],properties:{project_id:{type:"string",pattern:"^[0-9]+$"},goal:{type:"string",maxLength:1e3}},additionalProperties:!1},schema_load_errors:[]},{name:"screenplay_to_video_pipeline",title:"Screenplay To Video Pipeline",version:1,stability:"beta",category:"media_pipeline",auth_scope:"project:read",description:"Guide BeatBandit through the canonical screenplay-to-video pipeline for one scene or episode scope, keeping identity/art-direction references distinct from reviewed realized-continuity checkpoints.",when_to_use:["Use when the caller wants the full storyboard-to-video workflow rather than one isolated media step.","Use the same prompt for both scene and episode scopes by switching scope_type and scope_code.","Use when the caller wants to create the recommended Scene Moodboard master reference before recurring images and per-shot reference images.","Use when the caller asks to storyboard a scene: first generate/query the shot list, then use `image_generate(workflow=generate_shot)` for individual storyboard frames.","Use when sequential generated shots should carry forward the immediately previous reviewed clip through its accepted chronological continuity grid."],when_not_to_use:["Do not use when the caller already knows the exact tool and only needs one isolated step.","Do not skip the Scene Moodboard step unless a selected Scene Moodboard already exists or the user explicitly asks to avoid it.","Do not blindly generate shot-specific reference images for every shot when a selected Scene Moodboard already gives enough character, environment, prop, and lighting continuity.","Do not jump straight to video without at least checking whether the scope has a shot list, usable recurring references, selected Scene Moodboard assets, or selected shot assets.","Do not treat `image_generate(workflow=generate_scene_moodboard)` as the way to create individual storyboard panels;
359 it creates a scene-level visual reference board.","Do not treat a primary or merely generated video take as reviewed continuity; acceptance is explicit through `shot_mutate(entity_type=video_continuity)`."],examples:["Storyboard this scene end-to-end.","Take this episode from shot list through reference frames and video.","Create the recommended scene moodboard, then generate recurring images using that moodboard as a reference, then decide which shots still need their own reference frames.","Use the existing scene moodboard as the master reference and only generate extra shot images where needed.","Generate clean storyboard panels for the first three shots."],anti_examples:["Generate one still image for shot 12.","Use a scene moodboard prompt override to force a single storyboard panel."],tool_names:["shot_list_generate","shot_list_query","project_assets_query","image_generate","asset_upload","voice_profile","media_generate","shot_mutate","video_generate","export_create","job_get"],resource_families:["shot_list_scope","shot_element_library","visual_style_effective","media_catalog"],implemented_status:"v1",input_schema:{$schema:"https://json-schema.org/draft/2020-12/schema",type:"object",required:["project_id","scope_type"],properties:{project_id:{type:"string",pattern:"^[0-9]+$"},scope_type:{type:"string",enum:["project","scene","episode"]},scope_code:{type:"string"},target_output:{type:"string"}},allOf:[{if:{properties:{scope_type:{enum:["scene","episode"]}},required:["scope_type"]},then:{required:["scope_code"]}}],additionalProperties:!1},schema_load_errors:[]}],EY=[{family:"account_status",title:"Account Status",description:"Caller-scoped BeatBandit account state including credits plus current default LLM and video model preferences.",uri_template:"beatbandit://account/status",mime_type:"application/json",auth_scope:"account:read",large_payload:!1,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"api/routers/mcp_backend.py",route_method:"GET",route_path:"/api/mcp-backend/account/status"}},{family:"analysis_wizard_result",title:"Analysis Wizard Result",description:"Read-only finalized Analysis Wizard scores, comments, and rewrite guidance.",uri_template:"beatbandit://projects/{project_id}/analysis-wizard/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/analysis_wizard_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/analysis-wizard/{job_id}"}},{family:"asset_content",title:"Asset Content",description:"Binary content for one generated BeatBandit asset, delivered through BeatBandit instead of expiring storage URLs.",uri_template:"beatbandit://projects/{project_id}/assets/{source_type}/{asset_id}/content",mime_type:"application/octet-stream",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/asset_display_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/assets/{source_type}/{asset_id}/content"}},{family:"change_wizard_result",title:"Change Story Result",description:"Read-only finalized Change Story proposed changes and summary.",uri_template:"beatbandit://projects/{project_id}/change-wizard/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/change_wizard_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/change-wizard/{job_id}"}},{family:"creative_canvas_result",title:"Creative Canvas Result",description:"Read-only finalized Creative Canvas directions.",uri_template:"beatbandit://projects/{project_id}/creative-canvas/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/creative_canvas_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/creative-canvas/{job_id}"}},{family:"diff_proposal",title:"Diff Proposal",description:"Full MCP diff proposal envelope for one saved rewrite or persona proposal.",uri_template:"beatbandit://projects/{project_id}/diff-proposals/{proposal_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/diff_proposal_store.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/diff-proposals/{proposal_id}"}},{family:"episode_screenplay_result",title:"Episode Screenplay Result",description:"Read-only episodic screenplay generation result for one parent job.",uri_template:"beatbandit://projects/{project_id}/episode-screenplay/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/screenplay_generation_job_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/episode-screenplay/{job_id}"}},{family:"export_artifact",title:"Export Artifact",description:"Read-only exp
359ort artifact metadata or links.",uri_template:"beatbandit://projects/{project_id}/exports/{export_id}",mime_type:"application/json",auth_scope:"export:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"planned",resolver:{service:"src/services",route_method:null,route_path:null}},{family:"media_catalog",title:"Media Catalog",description:"Paginated catalog of generated media assets for one project.",uri_template:"beatbandit://projects/{project_id}/media-catalog",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/media_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/media-catalog"}},{family:"mentor_decisions",title:"Story Mentor Decisions",description:"Latest durable Story Mentor decision snapshot for one project.",uri_template:"beatbandit://projects/{project_id}/mentor/decisions",mime_type:"application/json",auth_scope:"project:read",large_payload:!1,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/beat_mentor_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/mentor/decisions"}},{family:"novel_audits",title:"Novel Audit Runs",description:"Read-only history and findings for Novel continuity audit runs.",uri_template:"beatbandit://projects/{project_id}/novel/audits",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_review_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/novel-audits"}},{family:"novel_blueprint",title:"Novel Adaptation Blueprint",description:"Read-only complete Adaptation Blueprint reconstructed from canonical Novel planning cards.",uri_template:"beatbandit://projects/{project_id}/novel/blueprint",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_chapter_outline_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/novel-blueprint"}},{family:"novel_candidate",title:"Novel Manuscript Candidate",description:"Read-only complete current and proposed Chapter documents for one Writer review checkpoint.",uri_template:"beatbandit://projects/{project_id}/novel/candidates/{child_job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_generation_job_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/novel-manuscript-generation/candidates"}},{family:"novel_canon",title:"Novel Canon Ledger",description:"Read-only canonical continuity ledger for a Novel project.",uri_template:"beatbandit://projects/{project_id}/novel/canon",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_review_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/novel-canon"}},{family:"novel_changes",title:"Novel Change Proposals",description:"Read-only complete Novel review proposals and Chapter before/after detail.",uri_template:"beatbandit://projects/{project_id}/novel/changes",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_change_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/novel-changes"}},{family:"novel_chapter",title:"Novel Chapter",description:"Read-only complete plain-text prose, compact Chapter plan, and linked source-unit resources for one Novel Chapter card. Excludes editor JSON and generation-debug payloads.",uri_template:"beatbandit://projects/{project_id}/novel/chapters/{chapter_card_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_manuscript_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/manuscript/chapters/{chapter_card_id}"}},{family:"novel_manuscript",title:"Novel Manuscript",description:"Read-only canonical manuscript assembly in Chapter order.",uri_template:"beatbandit://projects/{project_id}/novel/manuscript",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_manuscript_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/manuscript/assembly"}},{family:"novel_source",title:"Novel Adaptation Source",description:"Read-only normalized source package used by a Novel adaptation project.",uri_template:"beatbandit://projects/{project_id}/novel/source",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_adaptation_source_service.py",route_method:"GET",route_path:"/api/novel-adaptations/{project_id}/source"}},{family:"novel_source_unit",title:"Novel Adaptation Source Unit",description:"Read-only canonical source text and metadata for one source unit linked from a Novel Chapter.",uri_template:"beatbandit://projects/{project_id}/novel/source/units/{source_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_adaptation_source_service.py",route_method:"GET",route_path:"/api/novel-adaptations/{project_id}/source/units/{source_id}"}},{family:"novel_voice",title:"Novel Writing Voice",description:"Read-only complete Voice Guidelines, Writing Samples, and revision state for a Novel project.",uri_template:"beatbandit://projects/{project_id}/novel/voice",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_voice_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/novel-voice"}},{family:"novel_voice_proposal",title:"Novel Voice Options Proposal",description:"Read-only complete Voice Options proposal and proof excerpts for an explicitly selected completed job.",uri_template:"beatbandit://projects/{project_id}/novel/voice/proposals/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/novel_voice_service.py",route_method:"GET",route_path:"/api/projects/{project_id}/novel-voice/proposals/{job_id}"}},{family:"polish_wizard_result",title:"Polish Screenplay Result",description:"Read-only finalized Polish Screenplay suggestions and conflicts.",uri_template:"beatbandit://projects/{project_id}/polish-wizard/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/polish_wizard_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/polish-wizard/{job_id}"}},{family:"project_canon_summary",title:"Project Canon Summary",description:"Compact read-only summary of a BeatBandit project canon.",uri_template:"beatbandit://projects/{project_id}/canon/summary",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/project_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/canon-summary"}},{family:"project_chat_history",title:"Project Chat History",description:"Paginated freeform project chat history for one project stage.",uri_template:"beatbandit://projects/{project_id}/chat-history/{stage_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/chat_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/chat-history/{stage_id}"}}
359,{family:"project_diff_proposals",title:"Diff Proposal Inbox",description:"Recent unapplied MCP diff proposals for one project, including rewrite and persona proposals that can still be applied.",uri_template:"beatbandit://projects/{project_id}/diff-proposals",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/diff_proposal_store.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/diff-proposals"}},{family:"project_preferences",title:"Project Preferences",description:"Effective chat-facing project preferences, including provider/model defaults and the default stage snapshot.",uri_template:"beatbandit://projects/{project_id}/preferences",mime_type:"application/json",auth_scope:"project:read",large_payload:!1,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/chat_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/preferences"}},{family:"project_updates",title:"Project Updates",description:"Current rewrite and structural-sync update queue for one project.",uri_template:"beatbandit://projects/{project_id}/updates",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/screenplay_updates_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/updates"}},{family:"room_review_result",title:"Room Review Result",description:"Read-only finalized Room Review summary and notes.",uri_template:"beatbandit://projects/{project_id}/room-review/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/room_review_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/room-review/{job_id}"}},{family:"screenplay_document",title:"Screenplay Document Snapshot",description:"Read-only snapshot of the structured screenplay document. Use the screenplay_sequence resource for a sequence-scoped read.",uri_template:"beatbandit://projects/{project_id}/screenplay",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/screenplay_document/service.py",route_method:"GET",route_path:"/api/screenplay-editor/{project_id}"}},{family:"screenplay_scene",title:"Screenplay Scene Snapshot",description:"Read-only snapshot of one screenplay scene.",uri_template:"beatbandit://projects/{project_id}/screenplay/scenes/{scene_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/screenplay_document/service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/screenplay/scenes/{scene_id}"}},{family:"screenplay_sequence",title:"Screenplay Sequence Snapshot",description:"Read-only movie sequence slice using the same scene membership as screenplay_read. sequence_number must be an integer from 1 to 8; episodic documents require episode reads.",uri_template:"beatbandit://projects/{project_id}/screenplay?sequence_number={sequence_number}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/screenplay_document/service.py",route_method:"GET",route_path:"/api/screenplay-editor/{project_id}"}},{family:"screenplay_writing_voice",title:"Screenplay Writing Voice",description:"Complete revisioned project Writing Voice artifact, including explicitly requested samples.",uri_template:"beatbandit://projects/{project_id}/screenplay/writing-voice",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/screenplay_writing_voice_service.py",route_method:"GET",route_path:"/api/projects/{project_name}/screenplay-writing-voice"}},{family:"screenplay_writing_voice_proposal",title:"Screenplay Writing Voice Proposal",description:"Completed editable Screenplay Writing Voice analysis proposal and its base expected revision.",uri_template:"beatbandit://projects/{project_id}/screenplay/writing-voice/proposals/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/screenplay_voice_analysis_service.py",route_method:"GET",route_path:"/api/projects/{project_name}/screenplay-writing-voice/analysis/proposals/{job_id}"}},{family:"sequence_wizard_result",title:"Sequence Wizard Result",description:"Read-only finalized Sequence Wizard update summary.",uri_template:"beatbandit://projects/{project_id}/sequence-wizard/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/sequence_wizard_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/sequence-wizard/{job_id}"}},{family:"shot_element_library",title:"Shot Element Library",description:"Paginated recurring shot-element library for one project.",uri_template:"beatbandit://projects/{project_id}/shot-element-library",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/shot_element/assets.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/shot-element-library"}},{family:"shot_list_scope",title:"Shot List Scope",description:"Read-only snapshot of a shot-list scope.",uri_template:"beatbandit://projects/{project_id}/shot-list/scopes/{scope_type}/{scope_code}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/shot_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/shot-list/scopes/{scope_type}/{scope_code}"}},{family:"story_mentor_session",title:"Story Mentor Session",description:"Story Mentor transcript, decision state, and active turn snapshot for one session.",uri_template:"beatbandit://projects/{project_id}/mentor/sessions/{session_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/beat_mentor_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/mentor/sessions/{session_id}"}},{family:"template_manifest",title:"Template Manifest",description:"Read-only BeatBandit template manifest.",uri_template:"beatbandit://templates/{template_mode}",mime_type:"application/json",auth_scope:"project:read",large_payload:!1,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/template_service.py",route_method:"GET",route_path:"/api/templates/{mode}"}},{family:"treatment_wizard_result",title:"Treatment Wizard Result",description:"Read-only finalized Treatment Wizard sections and update summary.",uri_template:"beatbandit://projects/{project_id}/treatment-wizard/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/treatment_wizard_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/treatment-wizard/{job_id}"}},{family:"visual_style_effective",title:"Effective Visual Style",description:"Read-only effective visual style resolution for a project, scene, or shot scope.",uri_template:"beatbandit://projects/{project_id}/visual-style/effective/{scope}",mime_type:"application/json",auth_scope:"project:read",large_payload:!1,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/visual_style_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/visual-style/effective/{scope}"}},{family:"weave_result",title:"Weave Result",description:"Read-only finalized Weave result with saved episodes and warnings.",uri_template:"beatbandit://projects/{project_id}/weave/{job_id}",mime_type:"application/json",auth_scope:"project:read",large_payload:!0,supports_links_from_tools:!0,implemented_status:"v1",resolver:{service:"src/services/weave_wizard_service.py",route_method:"GET",route_path:"/api/mcp-backend/projects/{project_id}/weave/{job_id}"}}
359],CY=[{id:"default_public",description:"Default public BeatBandit MCP profile.",server_name:"BeatBandit MCP",prompts:["idea_to_screenplay_pipeline","review_to_revisions_pipeline","revision_strategy_pipeline","screenplay_to_novel_pipeline","screenplay_to_video_pipeline"],tools:["account_mutate","agent_persona_run","asset_display","asset_upload","export_create","export_query","genre_contract","genre_contract_query","image_generate","job_get","media_generate","project_assets_query","project_mutate","project_query","screenplay_draft_apply","screenplay_edit_apply","screenplay_edit_propose","screenplay_generation_run","screenplay_import_run","screenplay_proposal_create","screenplay_proposal_query","screenplay_read","screenplay_rewrite_run","screenplay_snapshot_apply","screenplay_writing_voice","screenplay_writing_voice_analyze","screenplay_writing_voice_query","shot_list_generate","shot_list_query","shot_mutate","story_development_run","story_entity_propose","story_entity_query","story_mutate","story_review_run","story_revision_run","take_wizard_run","template_list","video_generate","voice_profile"],resources:["account_status","analysis_wizard_result","asset_content","change_wizard_result","creative_canvas_result","diff_proposal","episode_screenplay_result","export_artifact","media_catalog","mentor_decisions","novel_audits","novel_blueprint","novel_candidate","novel_canon","novel_changes","novel_chapter","novel_manuscript","novel_source","novel_source_unit","novel_voice","novel_voice_proposal","polish_wizard_result","project_canon_summary","project_chat_history","project_diff_proposals","project_preferences","project_updates","room_review_result","screenplay_document","screenplay_scene","screenplay_sequence","screenplay_writing_voice","screenplay_writing_voice_proposal","sequence_wizard_result","shot_element_library","shot_list_scope","story_mentor_session","template_manifest","treatment_wizard_result","visual_style_effective","weave_result"]},{id:"chatgpt_writers_room",description:"BeatBandit writing tools for ChatGPT, including every text template and Novel.",server_name:"BeatBandit Writers Room",prompts:["idea_to_screenplay_pipeline","review_to_revisions_pipeline","revision_strategy_pipeline","screenplay_to_novel_pipeline"],tools:["agent_persona_run","export_create","export_query","genre_contract","genre_contract_query","job_get","project_mutate","project_query","screenplay_draft_apply","screenplay_edit_apply","screenplay_edit_propose","screenplay_generation_run","screenplay_import_run","screenplay_proposal_create","screenplay_proposal_query","screenplay_read","screenplay_rewrite_run","screenplay_snapshot_apply","screenplay_writing_voice","screenplay_writing_voice_analyze","screenplay_writing_voice_query","story_development_run","story_entity_propose","story_entity_query","story_mutate","story_review_run","story_revision_run","take_wizard_run","template_list"],resources:["account_status","analysis_wizard_result","change_wizard_result","creative_canvas_result","diff_proposal","episode_screenplay_result","novel_audits","novel_blueprint","novel_candidate","novel_canon","novel_changes","novel_chapter","novel_manuscript","novel_source","novel_source_unit","novel_voice","novel_voice_proposal","polish_wizard_result","project_canon_summary","project_diff_proposals","project_preferences","project_updates","room_review_result","screenplay_document","screenplay_scene","screenplay_sequence","screenplay_writing_voice","screenplay_writing_voice_proposal","sequence_wizard_result","template_manifest","treatment_wizard_result","weave_result"]}],RY=[{code:"scene_authoring_required",category:"conflict",http_status:409,retryable:!1,user_message_template:"Review the saved scene changes before checking screenplay ripple effects.",structured_fields:["project_id","structural_followups","scene_authoring_required","selected_update_ids","groups"]},{code:"unauthorized",category:"auth",http_status:401,retryable:!1,user_message_template:"Authentication is required.",structured_fields:[]},{code:"forbidden",category:"auth",http_status:403,retryable:!1,user_message_template:"You do not have access to this BeatBandit resource.",structured_fields:[]},{code:"not_found",category:"not_found",http_status:404,retryable:!1,user_message_template:"The requested BeatBandit resource was not found.",structured_fields:[]}
359,{code:"validation_error",category:"validation",http_status:400,retryable:!1,user_message_template:"The request arguments were invalid.",structured_fields:["field_errors"]},{code:"unsupported_mode",category:"validation",http_status:400,retryable:!1,user_message_template:"This tool mode is not supported.",structured_fields:["mode","supported_modes","neighboring_tools"]},{code:"conflict",category:"conflict",http_status:409,retryable:!1,user_message_template:"The requested operation conflicts with current BeatBandit state.",structured_fields:["reason"]},{code:"stale_version",category:"conflict",http_status:409,retryable:!1,user_message_template:"The requested change was based on an older revision. Refresh and retry.",structured_fields:["base_rev","current_rev"]},{code:"stale_precondition",category:"conflict",http_status:409,retryable:!1,user_message_template:"The object changed since you read it. Re-read and retry.",structured_fields:["object_type","object_id","expected_updated_at","actual_updated_at","expected_revision","latest_revision","current_voice_resource"]},{code:"input_mutated_during_job",category:"conflict",http_status:409,retryable:!1,user_message_template:"One or more inputs to the async job changed while it was running. Restart the job.",structured_fields:["mutated_inputs"]},{code:"idempotency_conflict",category:"conflict",http_status:409,retryable:!1,user_message_template:"This idempotency key was already used with different inputs.",structured_fields:["idempotency_key"]},{code:"workflow_in_progress",category:"conflict",http_status:409,retryable:!0,user_message_template:"A higher-level BeatBandit workflow is still updating this project. Poll job_get and retry after it completes.",structured_fields:["operation_type","job_id","project_id","workflow_phase","bootstrap_stage","active_child_job_id","blocker_type","blocked_scene_codes","available_scene_codes","blocking_jobs","hint"]},{code:"insufficient_credits",category:"billing",http_status:402,retryable:!1,user_message_template:"The user does not have enough credits for this operation.",structured_fields:["required_credits","available_credits"]},{code:"rate_limited",category:"rate_limit",http_status:429,retryable:!0,user_message_template:"The request was rate limited. Retry later.",structured_fields:["window","limit","retry_after_seconds"]},{code:"upstream_error",category:"internal",http_status:502,retryable:!0,user_message_template:"An upstream service (LLM or provider) returned an unexpected result.",structured_fields:["provider","reason"]},{code:"content_safety_blocked",category:"validation",http_status:400,retryable:!1,user_message_template:"Image generation was blocked by the provider safety system. Retry only the failed shot with safer prompt_override wording.",structured_fields:["workflow","shot_card_id","provider","provider_request_id","safety_violations","credits_refunded"]},{code:"asset_too_large",category:"validation",http_status:413,retryable:!1,user_message_template:"The asset is too large to return as MCP blob content. Use asset_display or an export workflow instead.",structured_fields:["project_id","source_type","asset_id","size_bytes","max_bytes","hint"]},{code:"screenplay_missing",category:"not_found",http_status:404,retryable:!1,user_message_template:"This project does not have a screenplay document to sync.",structured_fields:["project_id"]},{code:"no_sync_updates",category:"validation",http_status:400,retryable:!1,user_message_template:"No Sync Screenplay update tasks are available.",structured_fields:["project_id","update_ids","groups","default_policy"]},{code:"structural_sync_required",category:"conflict",http_status:409,retryable:!0,user_message_template:"Structural Sync must complete before Sync Screenplay can generate rewrite suggestions.",structured_fields:["project_id","structural_sync_job"]},{code:"continuity_job_not_found",category:"not_found",http_status:404,retryable:!1,user_message_template:"The requested continuity audit job was not found.",structured_fields:["project_id","job_id"]}
359,{code:"continuity_job_not_complete",category:"validation",http_status:400,retryable:!0,user_message_template:"The continuity audit job is not complete yet.",structured_fields:["project_id","job_id","status"]},{code:"suggestion_not_found",category:"not_found",http_status:404,retryable:!1,user_message_template:"A selected continuity suggestion was not found.",structured_fields:["project_id","job_id","suggestion_ids"]},{code:"internal_error",category:"internal",http_status:500,retryable:!1,user_message_template:"BeatBandit failed to complete the request.",structured_fields:["request_id"]}],TY={tools:40,prompts:5,resources:41,profiles:2,errors:24},kY={schema_version:vY,generated_at_note:bY,families:wY,tools:SY,prompts:xY,resources:EY,profiles:CY,errors:RY,counts:TY},Fa=kY;function jY(t){if(t)return Fa.tools.find(r=>r.name===t)}function DY(t){if(t)return Fa.prompts.find(r=>r.name===t)}function OY(t){if(t)return Fa.resources.find(r=>r.family===t)}function PY(t){return Fa.tools.filter(r=>r.family_id===t)}const y9="https://beatbandit.ai/api/mcp",g9=(()=>{const t=Fa.families.map(o=>({id:o.id,title:o.title,tagline:o.tagline,tools:PY(o.id)})).filter(o=>o.tools.length>0),r=new Set(Fa.families.map(o=>o.id)),i=Fa.tools.filter(o=>!r.has(o.family_id));return i.length>0&&t.push({id:"other",title:"Other",tagline:"",tools:i}),t})();function _9(t){const r=t.match(/^[^.!?]+[.!?]/);return r?r[0]:t.length>160?t.slice(0,157)+"...":t}const AY="2026-07-13",LY={name:"Four-act hybrid beat map",description:"A comparative BeatBandit reading that combines useful landmarks from several story systems.",acts:[{id:"act-one",label:"Act I",title:"Setup & commitment",purpose:"Establish the story’s world, inner pressure, dramatic promise, and the choice that crosses into the central pursuit.",typicalBeats:["Opening Image","Ordinary World / Setup","Inner Pressure / Wound","Theme in Motion","Inciting Incident","Refusal / Debate","Guide / New Information","Break into Act II"]},{id:"act-two-a",label:"Act II-A",title:"Expansion & promise",purpose:"Explore the premise, develop secondary threads, test the plan, and drive toward a central reversal or revelation.",typicalBeats:["Secondary / Parallel Thread","Fun & Games","First Pinch Point","Approach to the Inmost Cave","Midpoint"]},{id:"act-two-b",label:"Act II-B",title:"Contraction & cost",purpose:"Turn early progress against the characters as pressure, reversals, consequences, and apparent defeat narrow their options.",typicalBeats:["Renewed Drive / Plan in Motion","Reversal / Betrayal","Bad Guys Close In","Second Pinch Point","Apparent Defeat / Gauntlet","All Is Lost"]},{id:"act-three",label:"Act III",title:"Choice & resolution",purpose:"Convert loss into a final choice, carry that choice through the climax, and show the resulting changed state.",typicalBeats:["Dark Night of the Soul","New Resolve / Break into Three","Final Preparations / Road Back","Final Battle / Climax","Self-Revelation / Final Choice","Denouement / Return with Elixir","Final Image"]}]},MY=[{id:"back-to-the-future",title:"Back to the Future",year:1985,genre:"Science-fiction comedy",credit:"Written by Robert Zemeckis and Bob Gale",thesis:"A time-travel comedy whose external deadline forces Marty to confront the fear and passivity he inherited from his family.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"A wall of ticking clocks and Doc's automated lab establish time as the film's governing pressure before Marty even appears."},{id:"act-one-02",label:"Ordinary World / Setup",description:"In 1985 Hill Valley, Marty's band is rejected while his defeated father George remains under Biff's thumb at work and at home."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Marty fears rejection and, more deeply, fears that he will grow into the same passivity he sees in his father."},{id:"act-one-04",label:"Theme in Motion",description:"Marty repeats the belief that people can change their future through commitment, a claim the story will test across two generations."},{id:"act-one-05",label:"Inciting Incident",description:"Doc unveils the DeLorean, the Libyan gunmen attack, and Marty escapes into 1955."},{id:"act-one-06",label:"Disorientation / Debate",description:"Stranded in 1955, Marty struggles to accept what happened and searches for the younger Doc Brown."},{id:"act-one-07",label:"Guide / New Information",description:"Marty proves his story with the flux capacitor drawing; Doc accepts that time travel is real."},{id:"act-one-08",label:"Break into Act 2",description:"Marty and Doc commit to harness the future lightning strike to send Marty home."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Young Lorraine falls for Marty, whom she knows as Calvin Klein, forcing him to repair his parents' romance to preserve his own existence."},{id:"act-two-a-02",label:"Fun & Games",description:"Marty navigates 1955 Hill Valley High, escapes Biff in a skateboard chase, and tries to coach George toward confidence."},{id:"act-two-a-03",label:"First Pinch Point",description:"Biff's gang corners Marty, turning his comic improvisation in the past into a conflict with immediate p
359hysical and temporal stakes."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Doc calculates how the clock-tower lightning can power the DeLorean while Marty secretly writes a warning about Doc's future death."},{id:"act-two-a-05",label:"Midpoint",description:"As Marty's siblings fade from the photograph and Lorraine asks him to the dance, the damaged timeline becomes impossible to ignore."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan in Motion",description:"Marty and George plan a staged confrontation at the dance so George can rescue Lorraine and finally act with confidence."},{id:"act-two-b-02",label:"Reversal / Betrayal",description:"Biff interrupts the plan, has Marty locked in a car trunk, and threatens Lorraine for real."},{id:"act-two-b-03",label:"Bad Guys Close In",description:"Marty is locked in the musicians’ car while Biff takes his place with Lorraine; George arrives expecting a staged rescue."},{id:"act-two-b-04",label:"Second Pinch Point",description:"Biff beats George, but George returns and knocks him down, choosing courage without Marty’s coaching."},{id:"act-two-b-05",label:"Apparent Defeat / Gauntlet",description:"Marty begins to vanish onstage as George and Lorraine are separated before the decisive kiss."},{id:"act-two-b-06",label:"All Is Lost",description:"Marty collapses as the photograph empties—until George kisses Lorraine and restores the future."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"With his existence restored, Marty still faces the clock-tower deadline and Doc’s refusal to hear about 1985."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Marty sets the DeLorean to arrive early, choosing to risk the plan for another chance to warn Doc."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Doc races to reconnect the severed cable while Marty times the DeLorean's run toward the clock tower."},{id:"act-three-04",label:"Final Battle / Climax",description:"Lightning strikes at the predicted instant, sending 1.21 gigawatts through the DeLorean as it reaches 88 miles per hour and returns to 1985."},{id:"act-three-05",label:"Final Choice / Payoff",description:"Back in 1985, Marty discovers Doc read the repaired letter and wore a bulletproof vest."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Doc survives, and Marty wakes to a family whose confidence and relationships were transformed by George's decisive night in 1955."},{id:"act-three-07",label:"Final Image",description:"Flying Delorean lifts off with Doc, Marty, and Jennifer—future wide open."}]}]},{id:"the-big-lebowski",title:"The Big Lebowski",year:1998,genre:"Crime comedy",credit:"Written by Ethan Coen and Joel Coen",thesis:"A deliberately shaggy detective plot keeps colliding with the Dude's refusal to become the hard-boiled hero everyone else imagines.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Tumbleweed rolls across L.A. while the Stranger narrates: a laid-back world out of joint."},{id:"act-one-02",label:"Ordinary World / Setup",description:'Jeffrey "The Dude" Lebowski: unemployed bowler, bathrobe philosopher, loves White Russians and his rug.'},{id:"act-one-03",label:"Inner Pressure / Wound",description:`Drifting since the '60s; life of low ambition hides a half-lost idealism ("I was one of the authors of the Port Huron Statement!").`},{id:"act-one-04",label:"Theme in Motion",description:`"Take it easy, man." -- The Stranger's voice-over positions abiding vs. aggression.`},{id:"act-one-05",label:"Inciting Incident",description:"Thugs mistake him for the rich Lebowski, rough him up, and pee on his rug."},{id:"act-one-06",label:"Refusal / Debate",description:"Dude just wants compensation; visits the Big Lebowski, gets stonewalled, contemplates letting it slide."},{id:"act-one-07",label:"Guide / New Information",description:'Walter Sobchak pushes Dude to confront the millionaire again for "rug restitution."'},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:`The Big Lebowski hires Dude to deliver ransom money for Bunny's "kidnappers." Dude accepts the job.`}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:'Enter Maude Lebowski: avant-garde artist who steals the rug, sparking a strange flirtation and thematic talk of "male aggression."'},{id:"act-two-a-02",label:"Fun & Games / Tests, Allies, Enemies",description:`Botched ransom drop with Walter's "ringer"; encounter with nihilists; police tow the Dude's urine-soaked car; Jackie Treehorn's porn pad; surreal drug trip.`},{id:"act-two-a-03",label:"First Pinch Point",description:`Walter's bungled hand-off loses the briefcase; Big Lebowski furious, stakes rise, threat to cut off Dude's "johnson."`},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"The homework clue sends the Dude and Walter to Larry Sellers, where Walter’s intimidation destroys the wrong car."}
359,{id:"act-two-a-05",label:"Midpoint (Reversal)",description:"Treehorn drugs the Dude; afterward Maude reveals her father has no wealth of his own, reframing the entire ransom story."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Bad Guys Close In",description:"Bunny returns unharmed, confirming the kidnapping was opportunistic theater rather than a real abduction."},{id:"act-two-b-02",label:"Reversal / Misguided Help",description:"The Dude and Walter confront the Big Lebowski; Walter’s attempt to expose fake paralysis becomes a humiliating mistake."},{id:"act-two-b-03",label:"Second Pinch Point",description:"The Dude realizes the ransom case contained no recoverable money and offers no clean justice or reward."},{id:"act-two-b-04",label:"Apparent Resolution",description:"With the con understood but nothing restored, the Dude and Walter return to the ordinary ritual of bowling."},{id:"act-two-b-05",label:"All Is Lost",description:"The mystery is effectively over, but the Dude has lost his rug, his car, and any illusion that understanding brings control."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"The Dude has no triumphant answer to the case; he simply returns to the people and routines that remain."},{id:"act-three-02",label:"Return to the Ordinary",description:"Bowling resumes, placing the characters back in their chosen world rather than launching a conventional heroic plan."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Outside the alley, Bunny’s nihilist friends burn the Dude’s car and demand the ransom they never possessed."},{id:"act-three-04",label:"Final Battle / Climax",description:`Outside bowling alley, nihilists burn Dude's car and demand "ransom"; Walter fights them, Donny suffers a fatal heart attack.`},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Funeral: Walter's eulogy turns into an as
359hes fiasco; Dude forgives him—embracing imperfection and abiding."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Back at bar, the Stranger meets Dude; Bunny safely home, world unchanged yet the Dude still abides."},{id:"act-three-07",label:"Final Image",description:"Tumbleweed rolls on, Dude bowls in contented equilibrium—easygoing mantra intact despite chaos."}]}]},{id:"donnie-darko",title:"Donnie Darko",year:2001,genre:"Science-fiction psychological drama",credit:"Written by Richard Kelly",thesis:"In the theatrical cut, a suburban coming-of-age story becomes a fatalistic time loop whose meaning remains partly unresolved by design.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Donnie wakes on a mountain road at dawn, bikes home: serene suburb hiding unease."},{id:"act-one-02",label:"Ordinary World / Setup",description:"Middlesex life: cynical teen, therapy, family tension, school ennui."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Sleep-walking, medicated for hallucinations; underlying guilt/alienation."},{id:"act-one-04",label:"Theme in Motion",description:'Classroom debate on "destructors" & fear/love spectrum hints at destiny vs. free will.'},{id:"act-one-05",label:"Inciting Incident",description:"Frank the rabbit summons Donnie from bed; jet-engine crushes his room."},{id:"act-one-06",label:"Refusal / Debate",description:'Shrinks, pills, skepticism; Donnie puzzled by "28 days … until world ends."'},{id:"act-one-07",label:"Guide / New Information",description:'Frank: eerie guide revealing destiny and "manipulated living."'},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:"Donnie resolves to follow Frank's directives to understand the coming apocalypse."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Meets Gretchen; awkward romance offers hope and human connection."},{id:"act-two-a-02",label:"Fun & Games",description:"Frank-led mischief: floods school, axes mascot, exposes hypocrisy; Donnie explores Time-Travel book from Grandma Death."},{id:"act-two-a-03",label:"First Pinch Point",description:"Jim Cunningham's motivational façade; Donnie publicly shreds him, spotlighting antagonistic forces (town conformity)."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Discussions with Professor Monnitoff & Roberta Sparrow; Donnie mulls tangent universes and predestination."},{id:"act-two-a-05",label:"Midpoint",description:"At the cinema, Frank reveals the injured human face Donnie will later create and directs him to burn Cunningham’s house."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"Donnie burns Cunningham’s house, exposing the child pornography hidden there and changing the town’s public story."},{id:"act-two-b-02",label:"Consequence / Reversal",description:"Kitty’s decision to defend Cunningham sends Rose to Los Angeles with the dance team, leaving the Darko house unsupervised."},{id:"act-two-b-03",label:"Bad Guys Close In",description:"Halloween: countdown near zero, mental state frays, storms gather."},{id:"act-two-b-04",label:"Second Pinch Point",description:"At the Halloween party, Gretchen arrives after her mother disappears; Donnie sees the countdown is nearly finished and heads for Sparrow’s house."},{id:"act-two-b-05",label:"Gate / Gauntlet",description:"Bullies attack Donnie and Gretchen outside Sparrow’s house as an approaching car turns the road into the predicted collision point."},{id:"act-two-b-06",label:"All Is Lost (Stunning Surprise #2)",description:"Car accident kills Gretchen; driver is Frank (alive teen). Donnie shoots him—ultimate failure."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Alone with Gretchen's body, Donnie grasps the causal loop and his role."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Donnie recognizes the engine, Frank, and the closing time loop as parts of one causal pattern and drives Gretchen’s body toward the ridge."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"From the ridge, Donnie watches the vortex tear an engine from Rose’s plane and send it backward through time."},{id:"act-three-04",label:"Final Battle / Climax",description:"The previous 28 days unwind; Donnie wakes on October 2 as the engine falls toward his bedroom."}
359,{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Donnie remains, knowingly dies under engine, saving Gretchen and others."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Primary timeline restored; characters wake with uneasy déjà-vu, grief ripples subtly."},{id:"act-three-07",label:"Final Image",description:"Gretchen, never having met Donnie, exchanges a puzzled wave with his mourning mother; Frank (alive) unconsciously rubs the eye he was shot in—echo of the erased timeline."}]}]},{id:"finding-nemo",title:"Finding Nemo",year:2003,genre:"Animated adventure",credit:"Screenplay by Andrew Stanton, Bob Peterson, and David Reynolds; story by Andrew Stanton",thesis:"Two parallel journeys teach an anxious father to trust his son and a sheltered child to exercise earned independence.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Peaceful reef home → sudden barracuda attack."},{id:"act-one-02",label:"Ordinary World / Setup",description:"Years later: over-protective Marlin fusses over son Nemo."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Loss of mate & eggs drives Marlin's fear of the ocean."},{id:"act-one-04",label:"Theme in Motion",description:'"If you never let anything happen to him, nothing will happen to him."'},{id:"act-one-05",label:"Inciting Incident",description:'Nemo defies Marlin, touches "butt" boat, is captured by diver.'},{id:"act-one-06",label:"Refusal / Debate",description:"Marlin panics, flounders; doesn't know how to pursue boat."},{id:"act-one-07",label:"Guide / New Information",description:"Meets forgetful but fearless Dory, who offers help."},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:"Marlin & Dory chase boat into the open ocean, leaving the reef behind."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Nemo in Sydney fish-tank meets Gill & fellow captives; parallel escape plot."},{id:"act-two-a-02",label:"Fun & Games",description:"The shark meeting, anglerfish pursuit, mask recovery, jellyfish crossing, and East Australian Current deliver the ocean-road-movie promise."},{id:"act-two-a-03",label:"First Pinch Point",description:"The jellyfish field nearly kills Dory, showing that Marlin’s fear is not baseless even when it cannot guide every decision."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Marlin awakens among Crush’s turtles, sees relaxed parenting in action, and learns that news of the search can travel farther than he can."},{id:"act-two-a-05",label:"Midpoint",description:"News of Marlin’s journey reaches Nemo, inspiring him to block the filter successfully while Marlin begins to trust the ocean and Dory."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"The dentist replaces the filter while Marlin and Dory leave the current, become lost, and are swallowed by a whale."},{id:"act-two-b-02",label:"Reversal / Setback",description:"Nemo’s escape route closes, and inside the whale Marlin must choose whether to trust Dory’s reading of an unknowable situation."},{id:"act-two-b-03",label:"Bad Guys Close In",description:"The whale releases them into Sydney Harbour; Nigel carries them through the seagulls toward the dentist’s office."},{id:"act-two-b-04",label:"Second Pinch Point",description:"Marlin sees Nemo playing dead for Darla and mistakes the performance for his son’s actual death."},{id:"act-two-b-05",label:"Apparent Defeat",description:"Believing the search ended in failure, Marlin leaves the office and says goodbye to Dory."},{id:"act-two-b-06",label:"All Is Lost (Stunning Surprise #2)",description:"Gill sends Nemo through the drain, but Marlin is already swimming home convinced that he arrived too late."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Marlin, grief-stricken, parts from Dory; Dory aimlessly adrift."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Nemo escapes down drain, bumps into Dory; she recalls address → father and son reunite; new mission to save caught fish."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Trio reaches fishing fleet; Dory snagged in massive net with hundreds of fish."},{id:"act-three-04",label:"Final Battle / Climax",description:'Nemo leads fish to "Swim down!"; collective effort snaps winch, frees everyone.'}
359,{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Marlin trusts Nemo's risky plan; Nemo proves capable hero, completing both arcs."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Back on reef, Marlin relaxed, joking with drop-off parents; Nemo heads to school, confident."},{id:"act-three-07",label:"Final Image",description:"Marlin cheerfully sends Nemo into open water, reef vibrant—fear replaced by faith."}]}]},{id:"top-gun-maverick",title:"Top Gun: Maverick",year:2022,genre:"Action drama",credit:"Screenplay by Ehren Kruger, Eric Warren Singer, and Christopher McQuarrie; story by Peter Craig and Justin Marks",thesis:"A legacy hero who survives by refusing the future must learn that leadership means preparing others to fly without him.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Carrier-deck sunrise & jet-launch montage echoing the 1986 film."},{id:"act-one-02",label:"Ordinary World / Setup",description:"Maverick the aging test-pilot, alone in Mojave, pushes the Darkstar to Mach 10."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Still haunted by Goose's death and a promise to protect Goose's son, Rooster."},{id:"act-one-04",label:"Theme in Motion",description:`"It's not the plane, it's the pilot" / "Time is your greatest enemy."`},{id:"act-one-05",label:"Inciting Incident",description:"After Darkstar is shut down, Maverick receives orders to return to Top Gun; Iceman’s influence has kept him in the Navy."},{id:"act-one-06",label:"Refusal / Debate",description:"Maverick hesitates (Rooster resentment, brass hostility) but accepts."},{id:"act-one-07",label:"Guide / New Information",description:"Cyclone explains the uranium mission and tells Maverick he must train the pilots rather than fly it himself."},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:'Maverick arrives at Top Gun; unveils the "impossible" uranium-plant mission.'}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Rekindled romance with Penny + tense surrogate-father dynamic with Rooster."},{id:"act-two-a-02",label:"Fun & Games",description:"Bar antics, beach football, training dogfights where Maverick tags every student."},{id:"act-two-a-03",label:"First Pinch Point",description:"Phoenix & Bob's jet bird-strike/fire demonstrates real mission danger."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Private visit with dying Iceman; Maverick's doubt laid bare."},{id:"act-two-a-05",label:"Midpoint",description:"Iceman dies; Cyclone tightens mission parameters, stripping away Maverick's safety net."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"Maverick accelerates training to meet harsher time window."},{id:"act-two-b-02",label:"Opponent Counter-Strike",description:"Cyclone removes him as instructor for recklessness."},{id:"act-two-b-03",label:"Gate / Gauntlet Demo",description:"Maverick steals an F/A-18 and flies the course under time, proving it's doable; brass reinstates him as mission leader."},{id:"act-two-b-04",label:"Bad Guys Close In",description:"Maverick’s demonstration forces Cyclone to appoint him mission leader, making him responsible for selecting who will face the real defenses."},{id:"act-two-b-05",label:"All Is Lost (Stunning Surprise #2)",description:"Maverick ejects after shielding Rooster; crashes behind enemy lines."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Alone in snow-covered forest, Maverick faces capture and failure."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Rooster returns, saves him; they agree to escape together."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Hijack an obsolete F-14, limp toward the carrier."},{id:"act-three-04",label:"Final Battle / Climax",description:"Outgunned F-14 dogfights two Su-57s; Hangman arrives, shoots the last bogey."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Maverick fully trusts Rooster; surrogate father-son bond sealed by mutual risk."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Safe landing; Cyclone salutes; crew celebrates success."},{id:"act-three-07",label:"Final Image",description:"Maverick and Penny soar off in his P-51 Mustang against an open sky."}]}]},{id:"fight-club",title:"Fight Club",year:1999,genre:"Psychological drama",credit:"Screenplay by Jim Uhls;
359 based on the novel by Chuck Palahniuk",thesis:"A man's revolt against consumer identity externalizes into a charismatic alter ego whose absolutism becomes another system of control.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Flash-forward: the Narrator sits with a gun in his mouth while explosives tick down in city skyscrapers."},{id:"act-one-02",label:"Ordinary World / Setup",description:'Insomniac corporate drone numb on consumer comforts ("IKEA nesting instinct").'},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Fatherless, spiritually empty; defines himself by possessions and status."},{id:"act-one-04",label:"Theme in Motion",description:`"This is your life and it's ending one minute at a time" → rejects hollow material identity.`},{id:"act-one-05",label:"Inciting Incident",description:"Marla Singer invades his support groups, ruining his cathartic sleep."},{id:"act-one-06",label:"Refusal / Debate",description:"Confronts Marla; divvies up meetings but dissatisfaction deepens."},{id:"act-one-07",label:"Guide / New Information",description:"Meets charismatic soap salesman Tyler Durden on a business flight."},{id:"act-one-08",label:"Break into Act II",description:"Condo explodes; he calls Tyler, has first bare-knuckle fight, moves into the Paper-Street house—Fight Club is born."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Tyler begins sleeping with Marla, drawing her back into the protagonist's life."},{id:"act-two-a-02",label:"Fun & Games",description:'Basement bouts, "I know this because Tyler knows this," rules of Fight Club; men reclaim primal identity.'},{id:"act-two-a-03",label:"First Pinch Point",description:"Bar owner Lou brutalizes Tyler, who laughs through the beating—raw glimpse of Tyler's extremity."},{id:"act-two-a-04",label:"Approach / Inmost Cave",description:'Chemical-burn "kiss" and backyard philosophy teach the narrator that change begins only after he lets go of control.'},{id:"act-two-a-05",label:"Midpoint (Game-Changer)",description:'Lou capitulates; "homework assignments" launch Project Mayhem—scope leaps from self-help to urban anarchy.'}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"Project Mayhem cells recruit, vandalize, and move into the house; narrator left out."},{id:"act-two-b-02",label:"Reversal / Exclusion",description:"Tyler turns Fight Club into Project Mayhem, withholds its plans, and reduces the Narrator to another follower."},{id:"act-two-b-03",label:"Pressure Escalation",description:"Tyler releases the wheel during a high-speed drive, demanding surrender while risking every life in the car."},{id:"act-two-b-04",label:"Apparent Defeat",description:"Police commissioner threat; narrator's tooth lost; sense of control slipping."},{id:"act-two-b-05",label:"All Is Lost (Stunning Surprise #2)",description:`Bob ("Robert Paulson") is shot during a mission; narrator's friend dies, project out of control.`}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Horrified, narrator tries to shut everything down; Tyler vanishes; he discovers tickets and chase begins."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Realization: he is Tyler Durden—split personality; vows to stop the bomb plot."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Tracks Project Mayhem across cities; races to skyscraper control room on detonation night."},{id:"act-three-04",label:"Final Battle / Climax",description:'Confronts hallucinatory Tyler; shoots himself through cheek, "killing" Tyler in his mind as buildings explode.'},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Accepts responsibility for chaos, relinquishes false identity, chooses authentic connection."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Holds Marla's hand amid collapsing skyline—reborn intimacy over nihilism."},{id:"act-three-07",label:"Final Image",description:"Two figures framed against imploding towers; consumer world erased, but human connection survives."}]}]},{id:"inside-out-2",title:"Inside Out 2",year:2024,genre:"Animated coming-of-age comedy",credit:"Screenplay by Meg LeFauve and Dave Holstein; story by Kelsey Mann and Meg LeFauve",thesis:"Riley's mind becomes a contest between curated confidence and anxious self-reinvention until both give way to a more complex identity.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:`Joy proudly firing "bad" memories into the back of Riley's mind, establishing the tidy new "Sense of Self" system and Joy's perfectionist mindset.`}
359,{id:"act-one-02",label:"Ordinary World / Setup",description:"13-year-old Riley preps for a three-day hockey camp with pals Bree & Grace; Headquarters hums along under the original five emotions."},{id:"act-one-03",label:"Theme in Motion",description:"Joy's mantra: only good memories belong in Riley's core—hinting the film's lesson about integrating all feelings."},{id:"act-one-04",label:"Inciting Incident",description:`The puberty alarm blares, workers "upgrade" the console, and Riley's reactions go haywire.`},{id:"act-one-05",label:"Refusal / Debate",description:"Four new emotions (Anxiety, Envy, Embarrassment, Ennui) arrive and clash with Joy; power struggle over who knows what's best."},{id:"act-one-06",label:"Break into Act II (Stunning Surprise #1)",description:"Anxiety bottles the originals, ejects Riley's existing Sense of Self, and installs an anxiety-driven replacement; Joy, Sadness, Anger, Fear & Disgust are exiled to the memory vault and must fight their way back."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Riley's social stakes at camp: impress star player Val Ortiz while friendships with Bree & Grace strain."},{id:"act-two-a-02",label:"Fun & Games (Tests/Allies/Enemies)",description:`Joy's team escapes the vault, teams with Embarrassment, navigates quirky mind lands to recover the lost Sense of Self; comedy-adventure showcases "promise of the premise."`},{id:"act-two-a-03",label:"First Pinch Point",description:"Anxiety pushes Riley to abandon Bree and Grace for Val’s approval, proving the new strategy can damage the belonging it is meant to secure."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Riley sneaks into Coach Roberts’s office while Joy’s group reaches the discarded Sense of Self atop the painful memories Joy suppressed."},{id:"act-two-a-05",label:"Midpoint (Game-Changer)",description:"Anxiety overhears Joy's plan and destroys the recall tube, stranding the originals; stakes double—Riley's core self may be lost forever."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Bad Guys Close In",description:"Anxiety builds a new identity around not being good enough, driving Riley to overperform and further alienate her friends."},{id:"act-two-b-02",label:"Second Pinch Point / Joy's Daring Gambit",description:"Joy detonates a cliff of bad memories, surfing the avalanche back toward HQ—spectacular yet risky."},{id:"act-two-b-03",label:"All Is Lost (Stunning Surprise #2)",description:"New Sense of Self mutates into crippling self-doubt; Riley crashes into Grace, lands in the penalty box, then spirals into a full-blown panic attack as Anxiety melts down."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Joy finds Anxiety frozen by guilt; both admit their control tactics failed—raw honesty in HQ's ruins."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Joy pulls the flawed first Self, letting a new, integrated Sense of Self form from good and bad memories."},{id:"act-three-03",label:"Final Preparations",description:"Emotions rally at the console; external clock ticks toward end of tryouts."},{id:"act-three-04",label:"Climax / Final Battle",description:"Joy pilots Riley through the last shifts on the ice, balancing excitement, nerves, and teamwork."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Riley reconciles with Bree & Grace, performs authentically, and earns Val's respect—proof that wholeness beats anxious self-editing."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Start of high school: nine emotions cooperate inside a calmer HQ while Riley checks Fire Hawks results with genuine confidence."},{id:"act-three-07",label:"Final Image",description:"Headquarters aglow around the balanced console—Joy now flanked, not dominant, symbolizing a mature emotional ecosystem."}]}]},{id:"requiem-for-a-dream",title:"Requiem for a Dream",year:2e3,genre:"Psychological drama",credit:"Screenplay by Hubert Selby Jr. and Darren Aronofsky;
359 based on the novel by Hubert Selby Jr.",thesis:"Four linked addiction arcs use repeated rises and crashes instead of a redemptive hero's journey, turning aspiration itself into the engine of tragedy.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Sara chains her TV while Harry drags it off to pawn; addiction already warping family love."},{id:"act-one-02",label:"Ordinary World / Setup",description:'Brooklyn summer: Harry & Tyrone shoot heroin, dream of "the big score"; Marion sketches fashion ideas; lonely Sara binges TV and sweets.'},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Each character nurses emptiness: Sara's widow-hood & son's distance, Harry's aimlessness, Marion's need for validation, Tyrone's childhood trauma."},{id:"act-one-04",label:"Theme in Motion",description:`"I'm gonna be on television!" → pursuit of hollow dreams to fill emotional void.`},{id:"act-one-05",label:"Inciting Incidents",description:"Harry and Tyrone decide to finance a future by selling heroin; Sara receives a television casting call and resolves to fit her red dress."},{id:"act-one-06",label:"Refusal / Debate",description:"Sara hesitates at diet pills; Harry wonders if dealing is smart; short-lived doubt fades under desire."},{id:"act-one-07",label:"Guide / New Information",description:'Doctors hand Sara amphetamines; local supplier Brody hooks the guys into wholesale; both "mentors" are gateways to addiction.'},{id:"act-one-08",label:"Break into Act 2 / Stunning Surprise #1",description:"Success montage: Sara drops weight, the boys flush with cash, Marion sees store-front future—everything seems possible."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:`Harry & Marion's romance: building boutique dreams, promising her "the world".`},{id:"act-two-a-02",label:"Fun-and-Games",description:'High-energy split-screen montages: diet pills buzzing, drug sales booming, beach outings, shopping sprees—euphoria of the "summer high."'},{id:"act-two-a-03",label:"First Pinch Point",description:"Tyrone is arrested during a buy; bail eats profit and reveals legal threat."},{id:"act-two-a-04",label:"Approach / Inmost Cave",description:"Sara ups dosage as dress still too tight; Harry sees supply tightening; tension under the glow."},{id:"act-two-a-05",label:"Midpoint (False Victory)",description:"Stake money secured for a huge consignment; Sara finally fits red dress; everyone thinks they're on the cusp of their dream—right before the market collapses."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"Heroin drought hits; trio scramble for new source; Sara doubles pills to fight crashing highs."},{id:"act-two-b-02",label:"Bad Guys Close In",description:"The supply vanishes, Sara hallucinates, Harry’s arm becomes infected, and every relationship contracts around obtaining the next dose."},{id:"act-two-b-03",label:"Reversal / Betrayal",description:"Marion trades sex with therapist Arnold for money and dope—shattering her bond with Harry."},{id:"act-two-b-04",label:"Second Pinch Point",description:"Sara's visions of dancing fridge & TV hosts; Tyrone flees south with sick Harry; danger now physical, legal, and psychological."},{id:"act-two-b-05",label:"Apparent Defeat / Gate",description:"Florida run fails: cops grab them; Sara wanders Coney Island delusional, neighbors call ambulance."},{id:"act-two-b-06",label:"All Is Lost (Stunning Surprise #2)",description:"Harry and Tyrone are arrested, Sara is hospitalized, and Marion goes to Big Tim—each makes or suffers a final narrowing move toward catastrophe."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Intercut despair: Sara strapped for ECT, Harry screaming for Marion, Tyrone weeping in bunk, Marion alone with drugs."},{id:"act-three-02",label:"No-Resolve (Tragic Spiral)",description:"Unlike heroic tales, there's no new plan—only surrender; each clings to a dream in fevered hallucination."},{id:"act-three-03",label:"Climax / Final Battle",description:"Rapid-fire montage: ECT jolt, amputation surgery, prison labor beat-down, Marion's orgy chant; each character's ultimate degradation."}
359,{id:"act-three-04",label:"Self-Revelation / Final Choice",description:"The intercut climax delivers amputation, prison labor, electroshock treatment, and Marion’s degrading performance for heroin."},{id:"act-three-05",label:"Denouement",description:"Their private fantasies reveal the love, recognition, and safety each pursuit promised but could never supply."},{id:"act-three-06",label:"Final Image",description:"Split-screen of dreaming faces, still longing; opening hope inverted into permanent void."}]}]},{id:"spider-man-no-way-home",title:"Spider-Man: No Way Home",year:2021,genre:"Superhero fantasy",credit:"Written by Chris McKenna and Erik Sommers",thesis:"Peter's attempt to escape the consequences of exposure expands into a moral test that ends with the anonymity he first wanted at a far greater cost.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Newsflash: Mysterio video outs Peter Parker as Spider-Man; NYC erupts"},{id:"act-one-02",label:"Ordinary World / Setup",description:"Peter, MJ, Ned, May endure legal & media siege; life at Midtown and Happy's condo under scrutiny"},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Peter’s central fear is that people he loves will keep paying for the collision between his private and heroic identities."},{id:"act-one-04",label:"Theme in Motion",description:'May: "Help them." (Responsibility over convenience.)'},{id:"act-one-05",label:"Inciting Incident",description:"MIT rejects the trio because of Peter's notoriety"},{id:"act-one-06",label:"Refusal / Debate",description:`He'll "fix it himself" until rejection crushes hope; considers living with the fallout.`},{id:"act-one-07",label:"Guide / New Information",description:"Seeks Doctor Strange; asks memory-wipe favor."},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:"Botched spell cracks the multiverse; Otto Octavius attacks on the bridge"}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"MJ & Ned become Peter's remote ops team from the Sanctum basement."},{id:"act-two-a-02",label:"Fun & Games",description:"Capture rogue villains: Ock on bridge, Electro/Sandman in power field, Lizard at sewer; fish-out-of-water banter"},{id:"act-two-a-03",label:"First Pinch Point",description:'Strange reveals they all die fighting Spider-Man; threat of "sending them to their deaths."'},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Visit May at FEAST; Norman pleads for help; Peter's moral dilemma peaks."},{id:"act-two-a-05",label:"Midpoint",description:"Peter steals Strange's box, traps him in the Mirror Dimension, vows to cure the villains instead"}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"In Happy's condo, Peter prints cures; Ock fixed, optimism high"},{id:"act-two-b-02",label:"Reversal / Betrayal",description:"The Goblin personality regains control of Norman and turns the villains against Peter’s cure plan."},{id:"act-two-b-03",label:"Bad Guys Close In",description:"Condo battle; villains escape with Stark tech; Peter badly beaten."},{id:"act-two-b-04",label:"Second Pinch Point",description:"Goblin's glider strike + pumpkin bombs wreak havoc."},{id:"act-two-b-05",label:"All Is Lost (Stunning Surprise #2)",description:'Aunt May mortally wounded; dies after "great power, great responsibility" mantra'}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Peter alone on rooftop; crushed by guilt; MJ & Ned portal in the other Spider-Men."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Trio share losses, craft cures, commit to saving everyone."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Science-montage in Midtown lab; lure villains to Statue of Liberty."},{id:"act-three-04",label:"Final Battle / Climax",description:"Three Spider-Men vs. five villains; each cured; Peter 1 duels Goblin."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Chooses ultimate spell: erase all memory of Peter Parker to seal multiverse tears"},{id:"act-three-06",label:"Victory / Conflict Resolution",description:"Strange casts spell; rifts close; villains & Spideys return home."},{id:"act-three-07",label:"Denouement / Return with Elixir",description:"Peter, now forgotten, visits MJ & Ned but lets them live free; sews classic red-blue suit."},{id:"act-three-08",label:"Final Image",description:"Lone Spider-Man swings into snowy NYC, embracing anonymous hero life"}]}]},{id:"toy-story-3",title:"Toy Story 3",year:2010,genre:"Animated adventure",credit:"Screenplay by Michael Arndt; story by John Lasseter, Andrew Stanton, and Lee Unkrich",thesis:"A prison-break adventure gives physical form to the toys' deeper task: accepting that loyalty can require letting a beloved owner go.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:`Immersive "bank-heist" play-fantasy shows toys in heroic action; snap to reality: they're boxed and dusty.`}
359,{id:"act-one-02",label:"Ordinary World / Setup",description:"Andy (now 17) packing for college; toys lament being ignored."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Fear of abandonment first planted in TS1, now acute: life without a kid."},{id:"act-one-04",label:"Theme in Motion",description:`"We're still here for Andy… right?" – loyalty vs. moving on.`},{id:"act-one-05",label:"Inciting Incident",description:"Andy puts most toys in a garbage-bag for attic; bag is mistaken for trash and ends up at the curb."},{id:"act-one-06",label:"Refusal / Debate",description:"Woody insists it was an error; rest conclude Andy trashed them and opt for daycare donation box."},{id:"act-one-07",label:"Guide / New Information",description:"Sunnyside's Lotso & Ken promise eternal playtime paradise."},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:"Group chooses to stay at Sunnyside; Woody, loyal to Andy, departs alone."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Woody meets Bonnie and her gentle toy troupe, hinting at a new home."},{id:"act-two-a-02",label:"Fun & Games",description:"Buzz's gang endure chaotic toddler play; Woody enjoys creative play with Bonnie."},{id:"act-two-a-03",label:"First Pinch Point",description:`"Caterpillar Room" mauling + Lotso's night-shift prison routine reveal real stakes.`},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Chuckles recounts Lotso's tragic backstory; Woody resolves to rescue friends."},{id:"act-two-a-05",label:"Midpoint",description:"Woody sneaks back into Sunnyside; mission to break comrades out is set."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"Woody returns and the toys execute their Sunnyside escape, accidentally switching Buzz into Spanish mode along the way."},{id:"act-two-b-02",label:"Reversal / Betrayal",description:"Lotso stops them at the dumpster; when Woody exposes his lie, Big Baby throws Lotso into the trash."},{id:"act-two-b-03",label:"Bad Guys Close In",description:"Lotso pulls Woody into the dumpster, the others follow, and the garbage truck carries everyone to the landfill, restoring Buzz on impact."},{id:"act-two-b-04",label:"Second Pinch Point",description:"The conveyor, magnet, and shredder force the toys into increasingly desperate choices with no route back to Andy."},{id:"act-two-b-05",label:"All Is Lost / Apparent Defeat",description:"Woody saves Lotso and helps him reach the emergency stop, but Lotso abandons the toys to the incinerator."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"After surviving together, the toys return to Andy’s house knowing that rescue cannot restore his childhood."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Woody leaves Bonnie's address on college box, steering Andy."},{id:"act-three-03",label:"Final Preparations / Road Back",description:'Andy, touched by the note, loads toys for a "donation drive."'},{id:"act-three-04",label:"Final Battle / Climax",description:"Front-yard handoff: Andy plays one last time with Bonnie and the gang, giving each toy a loving send-off."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Woody relinquishes lifelong bond, choosing Bonnie's room over college shelf."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Toys embraced by Bonnie's imaginative play; new purpose."},{id:"act-three-07",label:"Final Image",description:`From Bonnie's porch, Woody and Buzz watch Andy drive away, content in their new "forever" home.`}]}]},{id:"die-hard",title:"Die Hard",year:1988,genre:"Action thriller",credit:"Screenplay by Jeb Stuart and Steven E. de Souza; based on the novel by Roderick Thorp",thesis:"A contained siege strips an abrasive cop of institutional power and turns marital reconciliation into a test of vulnerability and improvisation.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:'Nervous NYPD detective John McClane gripping arm-rest on LAX flight; "Welcome to California."'}
359,{id:"act-one-02",label:"Ordinary World / Setup",description:"Arrives in L.A., limo ride with Argyle, marital tension at Nakatomi Christmas party."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Estranged from wife Holly; career vs. family regret."},{id:"act-one-04",label:"Theme in Motion",description:`Argyle: "You two'll work it out"—family over pride.`},{id:"act-one-05",label:"Inciting Incident",description:"Hans Gruber's team storms building, seizes partygoers."},{id:"act-one-06",label:"Refusal / Debate",description:"McClane barefoot, weighing escape vs. intervention."},{id:"act-one-07",label:"Guide / New Information",description:"Grabs radio & pistol; becomes lone cop inside."},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:"Ducks into service stairs, commits to fight terrorists alone."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Radio bond with Sgt. Al Powell; emotional anchor."},{id:"act-two-a-02",label:"Fun & Games",description:'Fire-alarm ruse, first henchman killed ("Now I have a machine gun"), corpse elevator message, ventilation-shaft crawl.'},{id:"act-two-a-03",label:"First Pinch Point",description:"Terrorists retaliate; Hans vows to recover detonators—stakes sharpen."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"McClane scouts C4 on roof, studies enemy layout."},{id:"act-two-a-05",label:"Midpoint",description:"Drops dead thug onto Powell's patrol car → LAPD/SWAT arrive; battle escalates from private skirmish to public siege."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"Ellis attempts to negotiate with Hans and is killed when McClane refuses to surrender the detonators."},{id:"act-two-b-02",label:"False Ally / Reversal",description:"Hans meets McClane while posing as an escaped hostage, then reveals the deception when his men arrive."},{id:"act-two-b-03",label:"Bad Guys Close In",description:"A glass-filled firefight wounds McClane and returns the detonators to Hans."},{id:"act-two-b-04",label:"Second Pinch Point",description:"The FBI cuts the building’s power exactly as Hans anticipated, opening the final vault lock."},{id:"act-two-b-05",label:"Gate / Gauntlet",description:"A television report exposes McClane’s children, allowing Hans to identify Holly as his wife and keep her behind."},{id:"act-two-b-06",label:"All Is Lost (Stunning Surprise #2)",description:"Alone in bathroom pulling glass shards, radios goodbye to Powell; believes he'll die."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Bleeding out, admits pride fault; vows to save Holly regardless."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Tapes pistol to back, decides final confrontation."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Clears roof, fights Karl, herds hostages off just before FBI gunship; roof detonates."},{id:"act-three-04",label:"Final Battle / Climax",description:"McClane bursts into vault lobby; shoots Gruber, Holly held hostage; tape-gun trick wins."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Risks own life grabbing Holly's watch; Hans plunges to death."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Reunites with Holly; Powell overcomes trauma, saves McClane from vengeful Karl."},{id:"act-three-07",label:"Final Image",description:'Husband and wife exit amid "paper snow" of bearer bonds, marriage rekindled—family restored.'}]}]},{id:"the-lord-of-the-rings-the-fellowship-of-the-ring",title:"The Lord of the Rings: The Fellowship of the Ring",year:2001,genre:"Epic fantasy",credit:"Screenplay by Fran Walsh, Philippa Boyens, and Peter Jackson; based on the novel by J. R. R. Tolkien",thesis:"The first movement of a larger epic gives its own arc to fellowship: a burden shared by many must ultimately be chosen by the bearer.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image – Prologue",description:"Forging of the Rings and Sauron's fall (dark myth vs. light of Middle-earth)."}
359,{id:"act-one-02",label:"Ordinary World / Setup",description:"Pastoral Shire; Frodo, Sam, Merry, Pippin in carefree life."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Legacy of the Ring corrupting Isildur; Bilbo's creeping obsession hints future cost."},{id:"act-one-04",label:"Theme in Motion",description:'"Even the smallest person can change the course of the future."'},{id:"act-one-05",label:"Inciting Incident",description:"Gandalf confirms Bilbo's ring is the One Ring; Sauron seeks it."},{id:"act-one-06",label:"Refusal / Debate",description:"Frodo dreads leaving home; Sam fears the outside world."},{id:"act-one-07",label:"Guide / New Information",description:"Gandalf instructs Frodo, sets Sam as sworn companion."},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:'Hobbits flee the Shire, stepping onto the Road "where it will take you."'}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Strangers become allies: Strider protects Hobbits at Bree."},{id:"act-two-a-02",label:"Fun & Games / Tests, Allies, Enemies",description:"Weathertop, flight to Rivendell, Council forms Fellowship."},{id:"act-two-a-03",label:"First Pinch Point",description:"Nazgûl wound Frodo; tangible terror of Sauron's servants."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Attempt over Caradhras fails; choose perilous Moria instead."},{id:"act-two-a-05",label:"Midpoint",description:'Gandalf vs. Balrog; "You shall not pass!" – Mentor lost, stakes doubled.'}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"Aragorn rallies Fellowship through Lórien; Galadriel's gifts."},{id:"act-two-b-02",label:"Temptation / Reversal",description:"Galadriel warns Frodo that one companion will try to take the Ring as Boromir’s desire for it intensifies."},{id:"act-two-b-03",label:"Bad Guys Close In",description:"Uruk-hai hunt Fellowship; internal tensions rise."},{id:"act-two-b-04",label:"Second Pinch Point",description:"Boromir tries to take the Ring from Frodo, confirming that the danger now exists inside the Fellowship."},{id:"act-two-b-05",label:"Apparent Defeat / Gate",description:"Frodo decides the Ring will destroy the group and resolves to leave alone as the Uruk-hai attack and capture Merry and Pippin."},{id:"act-two-b-06",label:"All Is Lost (Stunning Surprise #2)",description:"Boromir mortally wounded; Fellowship splinters."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Frodo alone wrestles with burden; considers abandoning all."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Chooses to continue to Mordor; Sam refuses to be left."},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Frodo & Sam set off across the Emyn Muil; vow to finish quest."},{id:"act-three-04",label:"Final Battle / Climax (Parallel Track)",description:"Aragorn kills Lurtz and comforts Boromir, while Frodo crosses the river and Sam follows him into the water."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Aragorn accepts leadership of the survivors; Frodo accepts the burden of continuing, and Sam chooses to share it."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Two paths: Ring-bearers head to Mordor; hunters pursue captors—hope endures."},{id:"act-three-07",label:"Final Image",description:"Frodo and Sam overlook the long, perilous road to Mordor: smallest folk against looming darkness."}]}]},{id:"the-godfather",title:"The Godfather",year:1972,genre:"Crime drama",credit:"Screenplay by Mario Puzo and Francis Ford Coppola; based on the novel by Mario Puzo",thesis:"Michael's effort to protect his family becomes the mechanism by which he inherits its violence and loses the self that stood outside it.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:`Bonasera in Don Corleone's study ("I believe in America") – power, darkness, family justice.`}
359,{id:"act-one-02",label:"Ordinary World / Setup",description:"Connie's wedding: all Corleones introduced; Michael arrives with Kay, outsider to the Mafia life."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Michael's war-hero independence & desire to stay clean; Vito's wish to keep him so."},{id:"act-one-04",label:"Theme in Motion",description:`Michael to Kay: "That's my family, Kay, it's not me." (family vs. personal identity).`},{id:"act-one-05",label:"Inciting Incident",description:"Sollozzo/Tattaglia ask Vito to bankroll the narcotics trade; Vito declines."},{id:"act-one-06",label:"Refusal / Debate",description:"Vito warns Sonny; Michael remains on sidelines, wants no part."},{id:"act-one-07",label:"Guide / New Information",description:"Vito’s refusal defines the family’s code, while Tom explains the business pressure gathering around that decision."},{id:"act-one-08",label:"Break into Act II / Stunning Surprise #1",description:"Sollozzo's hit: Vito gunned down in street."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Kay represents the legitimate life Michael still claims, a relationship he abandons when he commits the restaurant murders."},{id:"act-two-a-02",label:"Fun & Games",description:"Mob war ignites: Luca Brasi killed, family defends hospital, Clemenza's crew strikes back."},{id:"act-two-a-03",label:"First Pinch Point",description:"At hospital, corrupt Captain McCluskey and gunmen hunt Vito; Michael's first direct confrontation with danger."},{id:"act-two-a-04",label:"Inmost Cave (Planning the Hit)",description:"Back-room scene: Michael volunteers to kill Sollozzo & McCluskey; pistol taped behind toilet."},{id:"act-two-a-05",label:"Midpoint",description:"Italian restaurant assassination; Michael crosses the moral line, becomes an active combatant."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Bad Guys Close In",description:"Michael exiled to Sicily; in NY the vendetta escalates, pressures mount on Sonny-run family."},{id:"act-two-b-02",label:"Reversal / Betrayal",description:"Carlo (Connie's husband) collaborates with Barzini, setting Sonny up."},{id:"act-two-b-03",label:"Second Pinch Point",description:"Sonny massacred at tollbooth; opposite front, Apollonia car-bombed in Sicily – enemy power overwhelming."},{id:"act-two-b-04",label:"All Is Lost",description:"Corleone clan shattered: heir apparent dead, Michael widowed, war seemingly unwinnable."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Vito trades vengeance for Michael’s safe return; Michael comes home widowed and gradually assumes control of the family."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Vito warns Michael about traitor; Michael vows to take over and eliminate Barzini & partners."},{id:"act-three-03",label:"Final Preparations",description:"Move HQ to Nevada; baptism alibi arranged; Tessio revealed as traitor."},{id:"act-three-04",label:"Final Battle / Climax",description:"During and after the baptism, Michael’s orders kill the rival bosses, Greene, Tessio, and Carlo, settling every outstanding threat."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Michael fully embraces Don role, sacrificing moral soul and marriage honesty. (Tragedy.)"},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Kay questions Michael; he lies about Carlo, secures total power."},{id:"act-three-07",label:"Final Image",description:"Office door closes as capos kiss Michael's hand: outsider has become the Godfather."}]}]},{id:"the-wizard-of-oz",title:"The Wizard of Oz",year:1939,genre:"Musical fantasy",credit:"Screenplay by Noel Langley, Florence Ryerson, and Edgar Allan Woolf; based on the novel by L. Frank Baum",thesis:"A journey toward a distant authority reveals that Dorothy and her companions already possess the qualities they believe someone else must grant.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Dusty, sepia Kansas farm; Dorothy chased by Miss Gulch."}
359,{id:"act-one-02",label:"Ordinary World / Setup",description:'Life with Aunt Em & Uncle Henry; chores, loneliness, "Over the Rainbow" yearning.'},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Feels ignored, craves a place where she belongs."},{id:"act-one-04",label:"Theme in Motion",description:`"A place where there isn't any trouble… maybe it isn't someplace you can get to by a boat or a train."`},{id:"act-one-05",label:"Inciting Incident",description:"Miss Gulch takes Toto; Dorothy runs away."},{id:"act-one-06",label:"Refusal / Debate",description:"Meets Professor Marvel, re-considers leaving home, heads back."},{id:"act-one-07",label:"Guide / New Information",description:'Marvel (earth-bound mentor) urges return; metaphorically the "guiding call."'},{id:"act-one-08",label:"Break into Act II",description:"Tornado hits; house lands in Technicolor Oz, crushing Wicked Witch of the East."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Promise of help from Glinda & the Wizard; quest to Emerald City."},{id:"act-two-a-02",label:"Fun & Games",description:"Yellow-brick-road adventures: recruits Scarecrow, Tin Man, Cowardly Lion; musical set-pieces."},{id:"act-two-a-03",label:"First Pinch Point",description:"Wicked Witch appears in fireball, threatens Dorothy for the ruby slippers."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"Arrival at Emerald City, make-over, march to Wizard's chamber."},{id:"act-two-a-05",label:"Midpoint",description:"Wizard (giant head) agrees to send Dorothy home only if they bring him the Witch's broom—stakes leap."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"Quartet sets off through haunted forest toward Witch's castle."},{id:"act-two-b-02",label:"Bad Guys Close In",description:"Flying monkeys attack, tear Scarecrow apart, abduct Dorothy."},{id:"act-two-b-03",label:"Isolation / Reversal",description:"The Witch imprisons Dorothy while Toto escapes the castle to find the Scarecrow, Tin Man, and Lion."},{id:"act-two-b-04",label:"Second Pinch Point",description:`Witch shows Dorothy the hourglass: "When it empties, you'll die."`},{id:"act-two-b-05",label:"Gate / Gauntlet",description:"Friends disguise as guards, infiltrate castle, fight Winkies."},{id:"act-two-b-06",label:"All Is Lost (Stunning Surprise #2)",description:"Cornered in the tower, Dorothy can only watch as the Witch sets the Scarecrow on fire."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:"Dorothy’s water melts the Witch, but the exposed Wizard cannot truly grant the promised qualities and his balloon leaves without her."},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:`Glinda appears: Dorothy had the power all along ("There's no place like home").`},{id:"act-three-03",label:"Final Preparations / Road Back",description:"Farewells to friends; three heel-clicks."},{id:"act-three-04",label:"Final Battle / Climax",description:"Magical transit through vortex; waking in bed—Kansas restored."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Learns home's true value; willingness to leave Oz's wonders behind."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:`Grateful reunion; tells family "I'm not going to leave here ever again."`},{id:"act-three-07",label:"Final Image",description:"Close-up of Dorothy, Kansas sepia intact but now filled with wonder—echoing but transcending opening shot."}]}]},{id:"the-matrix",title:"The Matrix",year:1999,genre:"Science-fiction action",credit:"Written by Lana Wachowski and Lilly Wachowski",thesis:"A search for external proof becomes a story about acting on belief: Neo becomes capable of changing the system only after choosing whom to save.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Falling green code gives way to Trinity's impossible rooftop escape, establishing that the apparent rules of reality can bend."}
359,{id:"act-one-02",label:"Ordinary World / Setup",description:"Thomas Anderson lives as a compliant office worker by day and the questioning hacker Neo by night."},{id:"act-one-03",label:"Inner Pressure / Wound",description:"Neo's restless sense that something is wrong has isolated him and turned the truth about the Matrix into an obsession."},{id:"act-one-04",label:"Theme in Motion",description:"The messages asking what the Matrix is and telling Neo to wake up frame knowledge as a choice rather than a passive discovery."},{id:"act-one-05",label:"Inciting Incident",description:"Trinity finds Neo at a nightclub and confirms that his private question has an answer someone is actively hiding."},{id:"act-one-06",label:"Refusal / Debate",description:"Neo cannot follow Morpheus's instructions onto the scaffold; the Agents arrest him and implant a tracking device."},{id:"act-one-07",label:"Guide / New Information",description:"Morpheus offers Neo a direct choice between returning to familiar ignorance and learning the truth, whatever it costs."},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:"Neo swallows the red pill, wakes in a human power plant, and is physically expelled from the only reality he has known."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Neo's growing bond with Trinity and the Nebuchadnezzar crew gives his search for truth a human stake beyond abstract destiny."},{id:"act-two-a-02",label:"Fun & Games",description:"Combat training, the jump test, and the Woman in Red simulation let Neo test both the freedom and the danger of a programmable reality."},{id:"act-two-a-03",label:"First Pinch Point",description:"The Woman in Red simulation shows how quickly an Agent can inhabit the system and turn any unfreed person into a threat."},{id:"act-two-a-04",label:"Approach to Inmost Cave",description:"The visit to the Oracle turns Neo's desire for certainty into a more difficult question about choice and self-knowledge."},{id:"act-two-a-05",label:"Midpoint",description:"The Oracle tells Neo that he is not the One and predicts that he will have to choose between his own life and Morpheus's."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan-in-Motion",description:"After the Oracle’s prediction, the crew heads for an exit while Neo weighs what belief in the prophecy requires."},{id:"act-two-b-02",label:"Reversal / Betrayal",description:"Cypher’s betrayal triggers an ambush; Morpheus sacrifices himself so Neo and the others can reach the exit."},{id:"act-two-b-03",label:"Bad Guys Close In",description:"Cypher disconnects and kills crew members in the real world before Tank survives and stops him."},{id:"act-two-b-04",label:"Second Pinch Point",description:"Agents torture Morpheus for Zion’s codes while Sentinels begin closing on the Nebuchadnezzar."},{id:"act-two-b-05",label:"Apparent Defeat",description:"The survivors prepare to unplug Morpheus before he breaks, apparently accepting the loss of their leader."},{id:"act-two-b-06",label:"Gate / Gauntlet",description:"Neo faces the Oracle’s choice: preserve himself or risk his life for Morpheus, without proof that he is the One."},{id:"act-two-b-07",label:"Break into Act III / Rescue Plan",description:"Neo rejects the plan to unplug Morpheus and commits to a rescue with Trinity, choosing the moral action without proof that he is the One."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Final Preparations",description:"Neo and Trinity arm themselves and re-enter the Matrix, converting Neo's choice into a direct assault on the Agents' stronghold."},{id:"act-three-02",label:"Gate / Gauntlet",description:"They fight through the lobby and reach the rooftop, surviving escalating security and an Agent's intervention."},{id:"act-three-03",label:"Rescue / Road Back",description:"Neo pilots the helicopter rescue, catches Morpheus in midair, and gets him and Trinity to safety before facing the return route alone."},{id:"act-three-04",label:"Final Battle / Climax",description:"Instead of running, Neo turns to fight Agent Smith in the subway, proving that his relationship to fear and the system has changed."},{id:"act-three-05",label:"All Is Lost / Self-Revelation",description:"Smith shoots Neo at the final exit, but Trinity's declaration reaches him; he revives, sees the Matrix as code, and destroys Smith from within."},{id:"act-three-06",label:"Denouement / Return with Elixir",description:"Neo calls the machines and promises to 
359show humanity a world no longer bounded by their rules."},{id:"act-three-07",label:"Final Image",description:"Neo launches skyward, code rain replaced by a liberated flight."}]}]},{id:"star-wars-a-new-hope",title:"Star Wars: Episode IV — A New Hope",year:1977,genre:"Space fantasy",credit:"Written by George Lucas",thesis:"A farm boy's desire for adventure matures into commitment when personal loss connects him to a cause larger than himself.",acts:[{id:"act-one",beats:[{id:"act-one-01",label:"Opening Image",description:"Star Destroyer swallows a tiny Rebel cruiser: instant scope & menace of the Empire."},{id:"act-one-02",label:"Ordinary World / Setup",description:"Luke toils on a moisture farm, dreams of stars, feels stuck."},{id:"act-one-03",label:"Inner Pressure / Wound",description:'Father-mystery and restless longing ("I want to learn the ways of the Force").'},{id:"act-one-04",label:"Theme in Motion",description:`Leia's hologram plea: "Help me, Obi-Wan Kenobi — you're my only hope." (The theme of hope against overwhelming odds.)`},{id:"act-one-05",label:"Inciting Incident",description:"R2's message leads Luke to Ben Kenobi and the bigger war."},{id:"act-one-06",label:"Refusal / Debate",description:`Luke: "I can't get involved — I've got work to do."`},{id:"act-one-07",label:"Guide / New Information",description:'Ben gives Luke the lightsaber & "Force" worldview.'},{id:"act-one-08",label:"Break into Act II (Stunning Surprise #1)",description:"Aunt & Uncle murdered; Luke commits to Alderaan quest."}]},{id:"act-two-a",beats:[{id:"act-two-a-01",label:"Secondary / Parallel Thread",description:"Dynamic with Han, Chewie, Leia begins (friendship/romance thread)."},{id:"act-two-a-02",label:"Fun & Games",description:"Mos Eisley cantina, Falcon launch, remote-helmet training."},{id:"act-two-a-03",label:"First Pinch Point",description:"Empire obliterates Alderaan, showcasing Death Star power."},{id:"act-two-a-04",label:"Approach to the Inmost Cave",description:"Pulled into the Death Star; plan to disable tractor beam & rescue Leia."},{id:"act-two-a-05",label:"Midpoint (False Victory)",description:"Leia freed, but heroes are trapped; trash-compactor escape only buys time."}]},{id:"act-two-b",beats:[{id:"act-two-b-01",label:"Renewed Drive / Plan in Motion",description:"Luke, Han, and Leia fight back toward the Falcon while Obi-Wan moves alone to disable the tractor beam."},{id:"act-two-b-02",label:"Bad Guys Close In",description:"Stormtroopers close on the hangar as Vader confronts Obi-Wan beside the heroes’ escape route."},{id:"act-two-b-03",label:"Second Pinch Point",description:"Obi-Wan allows Vader to strike him down, giving the others the opening they need to board the Falcon."},{id:"act-two-b-04",label:"Apparent Defeat / Whiff of Death",description:"The Falcon escapes the station, but Luke has lost the mentor who connected him to the Force."},{id:"act-two-b-05",label:"Gate / Gauntlet",description:"Leia realizes the escape was allowed; the hidden tracker leads the Death Star directly toward Yavin 4."},{id:"act-two-b-06",label:"All Is Lost",description:"Mentor dead, Empire closing in, Luke reeling."}]},{id:"act-three",beats:[{id:"act-three-01",label:"Dark Night of the Soul",description:`"I can't believe he's gone." Brief grief as Falcon heads to Yavin.`},{id:"act-three-02",label:"New Resolve / Break-into-Three",description:"Luke joins Rebel attack force despite odds."},{id:"act-three-03",label:"Final Preparations",description:"Briefing, X-wing launch, trench-run strategy."},{id:"act-three-04",label:"Final Battle / Climax",description:"Trench run; Vader on Luke's tail; Han's return tips scales."},{id:"act-three-05",label:"Self-Revelation / Final Choice",description:"Luke shuts off targeting computer, trusts the Force; direct hit."},{id:"act-three-06",label:"Victory / Denouement",description:"Death Star destroyed, Empire thwarted. Medal ceremony."},{id:"act-three-07",label:"Final Image",description:"Luke and Han celebrated - A shift towards hope."}]}]}],qY={reviewedAt:AY,method:LY,movies:MY};function IY(t){const r=t.method.acts.map(o=>o.id),i=new Set;if(r.length!==4||new Set(r).size!==r.length)throw new Error("Beat Library method must define four unique acts.");
359t.movies.forEach(o=>{if(i.has(o.id))throw new Error(`Duplicate Beat Library movie id: ${o.id}`);i.add(o.id);const l=o.acts.map(d=>d.id);if(l.length!==r.length||l.some((d,h)=>d!==r[h]))throw new Error(`${o.title} must use all four Beat Library acts in method order.`);const u=o.acts.flatMap(d=>d.beats.map(h=>h.id));if(u.length===0||new Set(u).size!==u.length)throw new Error(`${o.title} must define unique beat ids.`);if(o.acts.some(d=>d.beats.length===0))throw new Error(`${o.title} must include beats in every act.`);if(o.acts.some(d=>d.beats.some(h=>!h.label.trim()||!h.description.trim())))throw new Error(`${o.title} contains an incomplete beat.`)})}const Fm=qY;IY(Fm);const Jw=Fm.movies,v9=Fm.method,NY=Jw.reduce((t,r)=>t+r.acts.reduce((i,o)=>i+o.beats.length,0),0);function BY(t){return Jw.find(r=>r.id===t)}const ca="https://beatbandit.ai",rw=`${ca}/social-preview.png`;function Sn(t,r,i,o={}){const l=`${ca}${t==="/"?"/":t}`;return{title:r,description:i,canonicalPath:t,robots:o.robots??"index,follow,max-image-preview:large",type:o.type??"website",image:o.image??rw,structuredData:{"@context":"https://schema.org","@type":o.structuredType??"WebPage",name:r,description:i,url:l,isPartOf:{"@type":"WebSite",name:"BeatBandit",url:ca},image:o.image??rw}}}const UY={"/":{...Sn("/","BeatBandit | You Have a Story. Turn It into a Screenplay.","BeatBandit turns your idea into a properly structured, properly formatted screenplay: story cards, a scene list where each scene causes the next, and pages written in your voice. You decide every change.",{structuredType:"SoftwareApplication"}),structuredData:{"@context":"https://schema.org","@type":"SoftwareApplication",name:"BeatBandit",applicationCategory:"MultimediaApplication",operatingSystem:"Web",description:"BeatBandit turns an idea into a structured, formatted screenplay: story development, scene lists, screenplay writing, revision, storyboards and exports.",url:`${ca}/`,offers:{"@type":"Offer",price:"0",priceCurrency:"USD",description:"Pay per use with credit packs"},creator:{"@type":"Person",name:"Roope Rainisto"}}},"/pricing":Sn("/pricing","BeatBandit Pricing | Pay Per Use, No Subscription","BeatBandit is pay per use: buy a pack of credits and spend them only when the AI works for you. No subscription, and credits never expire."),"/write":Sn("/write","Write a Screenplay with BeatBandit | How It Works","How BeatBandit turns an idea into a screenplay: story cards that remember every decision, a causal scene list, pages written in your voice, and notes you can act on."),"/produce":Sn("/produce","From Screenplay to Storyboards and Video | BeatBandit Produce","Turn a finished screenplay into a two-pass shot list, consistent character and location references, storyboards, sound and video from 27 models, then cut it on a timeline.",{image:`${ca}/samples/station-one/storyboard-scene9-shot7.webp`}),"/samples":Sn("/samples","Sample Screenplays Written with BeatBandit | Read the Pages","Read full screenplays, a TV pilot, a micro-drama and a novel made with BeatBandit, each with the short brief it started from.",{structuredType:"CollectionPage"}),"/library":Sn("/library","Movie Beat Sheets & Story Structure Examples | BeatBandit",`Study ${Jw.length} popular films through a flexible four-act beat map. Free, reviewed breakdowns trace ${NY} major story beats from opening image to resolution.`,{structuredType:"CollectionPage",image:`${ca}/library/beat-library-hero.webp`}),"/mcp":Sn("/mcp","BeatBandit MCP Server | Connect AI Agents to Your Story Engine",`Connect ChatGPT, Claude, Cursor, Codex, and other MCP clients to ${Fa.counts.tools} BeatBandit story, screenplay, media, and export tools.`,{structuredType:"TechArticle"}),"/mcp/install":Sn("/mcp/install","Install the BeatBandit MCP Server | Client Setup and OAuth","Connect BeatBandit to ChatGPT, Claude Code, Cursor, VS Code, Codex, or another Streamable HTTP MCP client using OAuth 2.1.",{structuredType:"TechArticle"}),"/mcp/support":Sn("/mcp/support","BeatBandit Support | Connections, Billing and Privacy","Get help with BeatBandit connections, billing, privacy and content reports, or revoke a connected application."),"/mcp/tools":Sn("/mcp/tools","BeatBandit MCP Tools | Complete API Reference",`Browse all ${Fa.counts.tools} BeatBandit MCP tools for projects, story structure, screenplay editing, reviews, media, and exports.`,{structuredType:"TechArticle"}),"/mcp/prompts":Sn("/mcp/prompts","BeatBandit MCP Prompts | Agent Workflow Reference",`Browse ${Fa.counts.prompts} live-state-aware BeatBandit MCP prompts for screenplay, revision, and production workflows.`,{structuredType:"TechArticle"}),"/mcp/resources":Sn("/mcp/resources","BeatBandit MCP Resources | Project and Screenplay Data Reference",`Browse ${Fa.counts.resources} BeatBandit MCP resource families for project canon, screenplays, media, review results, and workflow outputs.`,{structuredType:"TechArticle"}),"/privacy":Sn("/privacy","Privacy Policy | BeatBandit","Read the BeatBandit privacy policy, including how account, project, and service data is handled."),"/terms":Sn("/terms","Terms of Service | BeatBandit","Read the terms governing use of the BeatBandit story development and screenwriting platform."),"/cookies":Sn("/cookies","Cookie Policy | BeatBandit","Read how BeatBandit uses essential, functional, analytics, and other browser technologies."),"/return-policy":Sn("/return-policy","Return Policy | BeatBandit","Read the BeatBandit return and refund policy for digital credits and services.")},FY=["/account","/admin","/auth","/credits","/dashboard","/debug","/exports","/invite","/oauth","/payment","/project-invite","/projects","/reset-password","/sign-in","/sign-up"],zY=[["/dashboard","Projects | BeatBandit"],["/exports","Download Export | BeatBandit"],["/projects","Story Project | BeatBandit"],["/account","Account | BeatBandit"],["/credits","Credits | BeatBandit"],["/payment","Payment | BeatBandit"],["/admin","Admin | BeatBandit"],["/sign-in","Sign In | BeatBandit"],["/sign-up","Sign Up | BeatBandit"],["/reset-password","Reset Password | BeatBandit"],["/oauth","Authorization | BeatBandit"],["/auth","Signing In | BeatBandit"],["/project-invite","Project Invitation | BeatBandit"],["/invite","Invitation | BeatBandit"]];function Zw(t){return!t||t==="/"?"/":t.replace(/\/+$/,"")||"/"}function $Y(t){const r=Zw(t),i=UY[r];if(i)return i;const o=r.match(/^\/library\/([^/]+)$/);if(o){const h=BY(decodeURIComponent(o[1]));if(h){const m=`${ca}/library/${h.id}`,g=`${h.title} (${h.year}) beat sheet: a reviewed four-act structural analysis tracing the film's major story beats from setup through resolution.`;return{...Sn(`/library/${h.id}`,`${h.title} Beat Sheet & Story Structure | BeatBandit`,g,{type:"article",image:`${ca}/library/beat-library-hero.webp`}),structuredData:{"@context":"https://schema.org","@graph":[{"@type":"Article",headline:`${h.title} Beat Sheet & Story Structure`,description:g,url:m,dateModified:Fm.reviewedAt,author:{"@type":"Organization",name:"BeatBandit"},publisher:{"@type":"Organization",name:"BeatBandit",url:ca},image:`${ca}/library/beat-library-hero.webp`,about:{"@type":"Movie",name:h.title,dateCreated:String(h.year)}},{"@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Beat Library",item:`${ca}/library`},{"@type":"ListItem",position:2,name:h.title,item:m}]}]}}}}const l=r.match(/^\/mcp\/tools\/([^/]+)$/);if(l){const h=jY(decodeURIComponent(l[1]));if(h)return Sn(r,`${h.name} MCP Tool | BeatBandit`,h.description,{structuredType:"TechArticle"})}const u=r.match(/^\/mcp\/prompts\/([^/]+)$/);if(u){const h=DY(decodeURIComponent(u[1]));if(h)return Sn(r,`${h.title} MCP Prompt | BeatBandit`,h.description,{structuredType:"TechArticle"})}const d=r.match(/^\/mcp\/resources\/([^/]+)$/);if(d){const h=OY(decodeURIComponent(d[1]));if(h)return Sn(r,`${h.title} MCP Resource | BeatBandit`,h.description,{structuredType:"TechArticle"})}return null}function HY(t){const r=Zw(t);return FY.some(i=>r===i||r.startsWith(`${i}/`))}function GY(t){const r=Zw(t),i=zY.find(([o])=>r===o||r.startsWith(`${o}/`));return(i==null?void 0:i[1])??"BeatBandit"}const dk={origin:ca,image:rw};function qa(t,r,i){let o=document.head.querySelector(`meta[${t}="${r}"]`);o||(o=document.createElement("meta"),o.setAttribute(t,r),document.head.appendChild(o)),o.content=i}function pk(t){let r=document.head.querySelector('link[rel="canonical"]');r||(r=document.createElement("link"),r.rel="canonical",document.head.appendChild(r)),r.href=t}function WY(){var t;(t=document.head.querySelector('link[rel="canonical"]'))==null||t.remove()}function VY(){const t=Lr();return k.useEffect(()=>{const r=$Y(t.pathname);if(!r){qa("name","robots","noindex,nofollow"),HY(t.pathname)?(document.title=GY(t.pathname),WY()):(document.title="Page Not Found | BeatBandit",pk(`${dk.origin}${t.pathname}`));return}const i=`${dk.origin}${r.canonicalPath==="/"?"/":r.canonicalPath}`;document.title=r.title,qa("name","description",r.description),qa("name","robots",r.robots),qa("property","og:title",r.title),qa("property","og:description",r.description),qa("property","og:type",r.type),qa("property","og:url",i),qa("property","og:image",r.image),qa("name","twitter:title",r.title),qa("name","twitter:description",r.description),qa("name","twitter:image",r.image),pk(i);let o=document.getElementById("route-structured-data");o||(o=document.createElement("script"),o.id="route-structured-data",o.type="application/ld+json",document.head.appendChild(o)),o.textContent=JSON.stringify(r.structuredData)},[t.pathname]),null}
359function YY(){return H.jsxs(j8,{children:[H.jsx(VY,{}),H.jsx(sY,{}),H.jsx(_Y,{}),H.jsx(Od,{sx:{animation:"pageFadeIn 220ms ease-out","@media (prefers-reduced-motion: reduce)":{animation:"none"}},children:H.jsx(oY,{})})]})}w8();W3();xD();const KY=new GF({defaultOptions:{queries:{retry:(t,r)=>{var o,l;const i=r;return((o=i==null?void 0:i.response)==null?void 0:o.status)===401||((l=i==null?void 0:i.response)==null?void 0:l.status)===403?!1:t<2}}}});_b.createRoot(document.getElementById("root")).render(H.jsx(Ua.StrictMode,{children:H.jsx(WF,{client:KY,children:H.jsxs(s1,{theme:V3,children:[H.jsx(v1,{}),H.jsx(mF,{children:H.jsx(YY,{})})]})})}));export{d9 as $,Ec as A,Od as B,xc as C,m1 as D,y1 as E,En as F,i9 as G,Ld as H,$F as I,xr as J,SR as K,hw as L,o9 as M,zU as N,r9 as O,C as P,GF as Q,Ua as R,hm as S,Fh as T,s9 as U,p1 as V,jw as W,bm as X,gj as Y,Rw as Z,Ot as _,Jw as a,HU as a$,Y5 as a0,V5 as a1,o1 as a2,Gi as a3,u9 as a4,Dj as a5,$a as a6,c9 as a7,kw as a8,Kd as a9,Hj as aA,Dw as aB,zj as aC,p9 as aD,om as aE,c1 as aF,jm as aG,NR as aH,MF as aI,kF as aJ,gR as aK,Ia as aL,mm as aM,RF as aN,TF as aO,Wk as aP,BF as aQ,DF as aR,m9 as aS,aw as aT,Fa as aU,g9 as aV,jY as aW,y9 as aX,_9 as aY,DY as aZ,OY as a_,C5 as aa,c$ as ab,Cj as ac,m5 as ad,Xd as ae,Ro as af,Tw as ag,xH as ah,hi as ai,a1 as aj,$j as ak,Zh as al,x5 as am,im as an,Xj as ao,cR as ap,Ch as aq,R5 as ar,h1 as as,Sb as at,wm as au,I5 as av,Rk as aw,S8 as ax,qj as ay,Lo as az,v9 as b,mt as b0,_5 as b1,QH as b2,a9 as b3,f1 as b4,jH as b5,Mw as b6,s1 as b7,t9 as b8,qw as b9,pc as ba,l1 as bb,a3 as bc,h9 as bd,f9 as be,Nw as bf,NY as c,sw as d,Lr as e,_1 as f,BY as g,Lj as h,g5 as i,H as j,n3 as k,aT as l,Jh as m,l9 as n,WF as o,be as p,Rh as q,k as r,qo as s,Tc as t,n9 as u,Ln as v,Sr as w,Om as x,Y3 as y,Dt as z};
360//# sourceMappingURL=index-CzOd9Km7.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.