diff --git a/docs/features/CLI.md b/docs/features/CLI.md index 78f035b871..4c09142e50 100644 --- a/docs/features/CLI.md +++ b/docs/features/CLI.md @@ -283,12 +283,20 @@ Some examples: Outputs: [1] outputs/img-samples/000017.4829112.gfpgan-00.png: !fix "outputs/img-samples/0000045.4829112.png" -s 50 -S -W 512 -H 512 -C 7.5 -A k_lms -G 0.8 -# Model selection and importation +### !mask + +This command takes an image, a text prompt, and uses the `clipseg` +algorithm to automatically generate a mask of the area that matches +the text prompt. It is useful for debugging the text masking process +prior to inpainting with the `--text_mask` argument. See +[INPAINTING.md] for details. + +## Model selection and importation The CLI allows you to add new models on the fly, as well as to switch among them rapidly without leaving the script. -## !models +### !models This prints out a list of the models defined in `config/models.yaml'. The active model is bold-faced @@ -300,7 +308,7 @@ laion400m not loaded waifu-diffusion not loaded Waifu Diffusion v1.3 -## !switch +### !switch This quickly switches from one model to another without leaving the CLI script. `invoke.py` uses a memory caching system; once a model @@ -346,7 +354,7 @@ laion400m not loaded waifu-diffusion cached Waifu Diffusion v1.3 -## !import_model +### !import_model This command imports a new model weights file into InvokeAI, makes it available for image generation within the script, and writes out the @@ -398,7 +406,7 @@ OK to import [n]? y invoke> -##!edit_model +###!edit_model The `!edit_model` command can be used to modify a model that is already defined in `config/models.yaml`. Call it with the short @@ -434,20 +442,12 @@ OK to import [n]? y Outputs: [2] outputs/img-samples/000018.2273800735.embiggen-00.png: !fix "outputs/img-samples/000017.243781548.gfpgan-00.png" -s 50 -S 2273800735 -W 512 -H 512 -C 7.5 -A k_lms --embiggen 3.0 0.75 0.25 ``` -# History processing +## History processing The CLI provides a series of convenient commands for reviewing previous actions, retrieving them, modifying them, and re-running them. -```bash -invoke> !fetch 0000015.8929913.png -# the script returns the next line, ready for editing and running: -invoke> a fantastic alien landscape -W 576 -H 512 -s 60 -A plms -C 7.5 -``` -Note that this command may behave unexpectedly if given a PNG file that -was not generated by InvokeAI. - -### `!history` +### !history The invoke script keeps track of all the commands you issue during a session, allowing you to re-run them. On Mac and Linux systems, it @@ -472,20 +472,41 @@ invoke> !20 invoke> watercolor of beautiful woman sitting under tree wearing broad hat and flowing garment -v0.2 -n6 -S2878767194 ``` -## !fetch +### !fetch This command retrieves the generation parameters from a previously -generated image and either loads them into the command line. You may -provide either the name of a file in the current output directory, or -a full file path. +generated image and either loads them into the command line +(Linux|Mac), or prints them out in a comment for copy-and-paste +(Windows). You may provide either the name of a file in the current +output directory, or a full file path. Specify path to a folder with +image png files, and wildcard *.png to retrieve the dream command used +to generate the images, and save them to a file commands.txt for +further processing. -~~~ +This example loads the generation command for a single png file: + +```bash invoke> !fetch 0000015.8929913.png # the script returns the next line, ready for editing and running: invoke> a fantastic alien landscape -W 576 -H 512 -s 60 -A plms -C 7.5 +``` + +This one fetches the generation commands from a batch of files and +stores them into `selected.txt`: + +```bash +invoke> !fetch outputs\selected-imgs\*.png selected.txt +``` + +### !replay + +This command replays a text file generated by !fetch or created manually + +~~~ +invoke> !replay outputs\selected-imgs\selected.txt ~~~ -Note that this command may behave unexpectedly if given a PNG file that +Note that these commands may behave unexpectedly if given a PNG file that was not generated by InvokeAI. ### !search @@ -503,16 +524,6 @@ invoke> !search surreal This clears the search history from memory and disk. Be advised that this operation is irreversible and does not issue any warnings! -Other ! Commands - -### !mask - -This command takes an image, a text prompt, and uses the `clipseg` -algorithm to automatically generate a mask of the area that matches -the text prompt. It is useful for debugging the text masking process -prior to inpainting with the `--text_mask` argument. See -[INPAINTING.md] for details. - ## Command-line editing and completion The command-line offers convenient history tracking, editing, and diff --git a/frontend/dist/assets/index.2d646c45.js b/frontend/dist/assets/index.2d646c45.js new file mode 100644 index 0000000000..1fd272c7b0 --- /dev/null +++ b/frontend/dist/assets/index.2d646c45.js @@ -0,0 +1,690 @@ +function iY(e,t){for(var n=0;ni[o]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))i(o);new MutationObserver(o=>{for(const s of o)if(s.type==="childList")for(const u of s.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&i(u)}).observe(document,{childList:!0,subtree:!0});function n(o){const s={};return o.integrity&&(s.integrity=o.integrity),o.referrerpolicy&&(s.referrerPolicy=o.referrerpolicy),o.crossorigin==="use-credentials"?s.credentials="include":o.crossorigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function i(o){if(o.ep)return;o.ep=!0;const s=n(o);fetch(o.href,s)}})();var Dc=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function aY(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var E={exports:{}},$7={exports:{}};/** + * @license React + * react.development.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */(function(e,t){(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var n="18.2.0",i=Symbol.for("react.element"),o=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),u=Symbol.for("react.strict_mode"),p=Symbol.for("react.profiler"),m=Symbol.for("react.provider"),v=Symbol.for("react.context"),g=Symbol.for("react.forward_ref"),b=Symbol.for("react.suspense"),C=Symbol.for("react.suspense_list"),w=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),A=Symbol.for("react.offscreen"),k=Symbol.iterator,I="@@iterator";function D(S){if(S===null||typeof S!="object")return null;var L=k&&S[k]||S[I];return typeof L=="function"?L:null}var P={current:null},F={transition:null},z={current:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1},q={current:null},Y={},Q=null;function ie(S){Q=S}Y.setExtraStackFrame=function(S){Q=S},Y.getCurrentStack=null,Y.getStackAddendum=function(){var S="";Q&&(S+=Q);var L=Y.getCurrentStack;return L&&(S+=L()||""),S};var ae=!1,pe=!1,$e=!1,te=!1,ee=!1,be={ReactCurrentDispatcher:P,ReactCurrentBatchConfig:F,ReactCurrentOwner:q};be.ReactDebugCurrentFrame=Y,be.ReactCurrentActQueue=z;function Ce(S){{for(var L=arguments.length,V=new Array(L>1?L-1:0),G=1;G1?L-1:0),G=1;G1){for(var It=Array(wt),yt=0;yt1){for(var Wt=Array(yt),Ot=0;Ot is not supported and will be removed in a future major release. Did you mean to render instead?")),L.Provider},set:function(Ee){L.Provider=Ee}},_currentValue:{get:function(){return L._currentValue},set:function(Ee){L._currentValue=Ee}},_currentValue2:{get:function(){return L._currentValue2},set:function(Ee){L._currentValue2=Ee}},_threadCount:{get:function(){return L._threadCount},set:function(Ee){L._threadCount=Ee}},Consumer:{get:function(){return V||(V=!0,K("Rendering is not supported and will be removed in a future major release. Did you mean to render instead?")),L.Consumer}},displayName:{get:function(){return L.displayName},set:function(Ee){se||(Ce("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",Ee),se=!0)}}}),L.Consumer=ze}return L._currentRenderer=null,L._currentRenderer2=null,L}var hr=-1,Vi=0,qa=1,Hi=2;function X(S){if(S._status===hr){var L=S._result,V=L();if(V.then(function(ze){if(S._status===Vi||S._status===hr){var Ee=S;Ee._status=qa,Ee._result=ze}},function(ze){if(S._status===Vi||S._status===hr){var Ee=S;Ee._status=Hi,Ee._result=ze}}),S._status===hr){var G=S;G._status=Vi,G._result=V}}if(S._status===qa){var se=S._result;return se===void 0&&K(`lazy: Expected the result of a dynamic import() call. Instead received: %s + +Your code should look like: + const MyComponent = lazy(() => import('./MyComponent')) + +Did you accidentally put curly braces around the import?`,se),"default"in se||K(`lazy: Expected the result of a dynamic import() call. Instead received: %s + +Your code should look like: + const MyComponent = lazy(() => import('./MyComponent'))`,se),se.default}else throw S._result}function Ue(S){var L={_status:hr,_result:S},V={$$typeof:T,_payload:L,_init:X};{var G,se;Object.defineProperties(V,{defaultProps:{configurable:!0,get:function(){return G},set:function(ze){K("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."),G=ze,Object.defineProperty(V,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return se},set:function(ze){K("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."),se=ze,Object.defineProperty(V,"propTypes",{enumerable:!0})}}})}return V}function Xe(S){S!=null&&S.$$typeof===w?K("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof S!="function"?K("forwardRef requires a render function but was given %s.",S===null?"null":typeof S):S.length!==0&&S.length!==2&&K("forwardRef render functions accept exactly two parameters: props and ref. %s",S.length===1?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),S!=null&&(S.defaultProps!=null||S.propTypes!=null)&&K("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?");var L={$$typeof:g,render:S};{var V;Object.defineProperty(L,"displayName",{enumerable:!1,configurable:!0,get:function(){return V},set:function(G){V=G,!S.name&&!S.displayName&&(S.displayName=G)}})}return L}var Et;Et=Symbol.for("react.module.reference");function ln(S){return!!(typeof S=="string"||typeof S=="function"||S===s||S===p||ee||S===u||S===b||S===C||te||S===A||ae||pe||$e||typeof S=="object"&&S!==null&&(S.$$typeof===T||S.$$typeof===w||S.$$typeof===m||S.$$typeof===v||S.$$typeof===g||S.$$typeof===Et||S.getModuleId!==void 0))}function Cn(S,L){ln(S)||K("memo: The first argument must be a component. Instead received: %s",S===null?"null":typeof S);var V={$$typeof:w,type:S,compare:L===void 0?null:L};{var G;Object.defineProperty(V,"displayName",{enumerable:!1,configurable:!0,get:function(){return G},set:function(se){G=se,!S.name&&!S.displayName&&(S.displayName=se)}})}return V}function ot(){var S=P.current;return S===null&&K(`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: +1. You might have mismatching versions of React and the renderer (such as React DOM) +2. You might be breaking the Rules of Hooks +3. You might have more than one copy of React in the same app +See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.`),S}function Zt(S){var L=ot();if(S._context!==void 0){var V=S._context;V.Consumer===S?K("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?"):V.Provider===S&&K("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return L.useContext(S)}function Vn(S){var L=ot();return L.useState(S)}function Bn(S,L,V){var G=ot();return G.useReducer(S,L,V)}function cn(S){var L=ot();return L.useRef(S)}function Wr(S,L){var V=ot();return V.useEffect(S,L)}function Ea(S,L){var V=ot();return V.useInsertionEffect(S,L)}function Vo(S,L){var V=ot();return V.useLayoutEffect(S,L)}function Ei(S,L){var V=ot();return V.useCallback(S,L)}function go(S,L){var V=ot();return V.useMemo(S,L)}function Hu(S,L,V){var G=ot();return G.useImperativeHandle(S,L,V)}function _a(S,L){{var V=ot();return V.useDebugValue(S,L)}}function al(){var S=ot();return S.useTransition()}function Za(S){var L=ot();return L.useDeferredValue(S)}function en(){var S=ot();return S.useId()}function Ka(S,L,V){var G=ot();return G.useSyncExternalStore(S,L,V)}var _i=0,Ho,ys,Wo,xs,Ss,Go,Yo;function Cs(){}Cs.__reactDisabledLog=!0;function ol(){{if(_i===0){Ho=console.log,ys=console.info,Wo=console.warn,xs=console.error,Ss=console.group,Go=console.groupCollapsed,Yo=console.groupEnd;var S={configurable:!0,enumerable:!0,value:Cs,writable:!0};Object.defineProperties(console,{info:S,log:S,warn:S,error:S,group:S,groupCollapsed:S,groupEnd:S})}_i++}}function sl(){{if(_i--,_i===0){var S={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Le({},S,{value:Ho}),info:Le({},S,{value:ys}),warn:Le({},S,{value:Wo}),error:Le({},S,{value:xs}),group:Le({},S,{value:Ss}),groupCollapsed:Le({},S,{value:Go}),groupEnd:Le({},S,{value:Yo})})}_i<0&&K("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var Ta=be.ReactCurrentDispatcher,Br;function Wi(S,L,V){{if(Br===void 0)try{throw Error()}catch(se){var G=se.stack.trim().match(/\n( *(at )?)/);Br=G&&G[1]||""}return` +`+Br+S}}var Ti=!1,Gi;{var ws=typeof WeakMap=="function"?WeakMap:Map;Gi=new ws}function qo(S,L){if(!S||Ti)return"";{var V=Gi.get(S);if(V!==void 0)return V}var G;Ti=!0;var se=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var ze;ze=Ta.current,Ta.current=null,ol();try{if(L){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(Ut){G=Ut}Reflect.construct(S,[],Ee)}else{try{Ee.call()}catch(Ut){G=Ut}S.call(Ee.prototype)}}else{try{throw Error()}catch(Ut){G=Ut}S()}}catch(Ut){if(Ut&&G&&typeof Ut.stack=="string"){for(var Ge=Ut.stack.split(` +`),ct=G.stack.split(` +`),wt=Ge.length-1,It=ct.length-1;wt>=1&&It>=0&&Ge[wt]!==ct[It];)It--;for(;wt>=1&&It>=0;wt--,It--)if(Ge[wt]!==ct[It]){if(wt!==1||It!==1)do if(wt--,It--,It<0||Ge[wt]!==ct[It]){var yt=` +`+Ge[wt].replace(" at new "," at ");return S.displayName&&yt.includes("")&&(yt=yt.replace("",S.displayName)),typeof S=="function"&&Gi.set(S,yt),yt}while(wt>=1&&It>=0);break}}}finally{Ti=!1,Ta.current=ze,sl(),Error.prepareStackTrace=se}var Wt=S?S.displayName||S.name:"",Ot=Wt?Wi(Wt):"";return typeof S=="function"&&Gi.set(S,Ot),Ot}function Ns(S,L,V){return qo(S,!1)}function Yl(S){var L=S.prototype;return!!(L&&L.isReactComponent)}function Ri(S,L,V){if(S==null)return"";if(typeof S=="function")return qo(S,Yl(S));if(typeof S=="string")return Wi(S);switch(S){case b:return Wi("Suspense");case C:return Wi("SuspenseList")}if(typeof S=="object")switch(S.$$typeof){case g:return Ns(S.render);case w:return Ri(S.type,L,V);case T:{var G=S,se=G._payload,ze=G._init;try{return Ri(ze(se),L,V)}catch{}}}return""}var Zo={},Yi=be.ReactDebugCurrentFrame;function Ra(S){if(S){var L=S._owner,V=Ri(S.type,S._source,L?L.type:null);Yi.setExtraStackFrame(V)}else Yi.setExtraStackFrame(null)}function ll(S,L,V,G,se){{var ze=Function.call.bind(sn);for(var Ee in S)if(ze(S,Ee)){var Ge=void 0;try{if(typeof S[Ee]!="function"){var ct=Error((G||"React class")+": "+V+" type `"+Ee+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof S[Ee]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw ct.name="Invariant Violation",ct}Ge=S[Ee](L,Ee,G,V,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(wt){Ge=wt}Ge&&!(Ge instanceof Error)&&(Ra(se),K("%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).",G||"React class",V,Ee,typeof Ge),Ra(null)),Ge instanceof Error&&!(Ge.message in Zo)&&(Zo[Ge.message]=!0,Ra(se),K("Failed %s type: %s",V,Ge.message),Ra(null))}}}function fn(S){if(S){var L=S._owner,V=Ri(S.type,S._source,L?L.type:null);ie(V)}else ie(null)}var Aa;Aa=!1;function Ko(){if(q.current){var S=_t(q.current.type);if(S)return` + +Check the render method of \``+S+"`."}return""}function Ht(S){if(S!==void 0){var L=S.fileName.replace(/^.*[\\\/]/,""),V=S.lineNumber;return` + +Check your code at `+L+":"+V+"."}return""}function ul(S){return S!=null?Ht(S.__source):""}var Sr={};function Xa(S){var L=Ko();if(!L){var V=typeof S=="string"?S:S.displayName||S.name;V&&(L=` + +Check the top-level render call using <`+V+">.")}return L}function na(S,L){if(!(!S._store||S._store.validated||S.key!=null)){S._store.validated=!0;var V=Xa(L);if(!Sr[V]){Sr[V]=!0;var G="";S&&S._owner&&S._owner!==q.current&&(G=" It was passed a child from "+_t(S._owner.type)+"."),fn(S),K('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',V,G),fn(null)}}}function bo(S,L){if(typeof S=="object"){if(jt(S))for(var V=0;V",se=" Did you accidentally export a JSX literal instead of a component?"):Ee=typeof S,K("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Ee,se)}var Ge=lt.apply(this,arguments);if(Ge==null)return Ge;if(G)for(var ct=2;ct10&&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."),G._updatedFibers.clear()}}}var yo=!1,Oa=null;function cl(S){if(Oa===null)try{var L=("require"+Math.random()).slice(0,7),V=e&&e[L];Oa=V.call(e,"timers").setImmediate}catch{Oa=function(se){yo===!1&&(yo=!0,typeof MessageChannel>"u"&&K("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 ze=new MessageChannel;ze.port1.onmessage=se,ze.port2.postMessage(void 0)}}return Oa(S)}var gn=0,Fn=!1;function ql(S){{var L=gn;gn++,z.current===null&&(z.current=[]);var V=z.isBatchingLegacy,G;try{if(z.isBatchingLegacy=!0,G=S(),!V&&z.didScheduleLegacyUpdate){var se=z.current;se!==null&&(z.didScheduleLegacyUpdate=!1,ge(se))}}catch(Wt){throw qi(L),Wt}finally{z.isBatchingLegacy=V}if(G!==null&&typeof G=="object"&&typeof G.then=="function"){var ze=G,Ee=!1,Ge={then:function(Wt,Ot){Ee=!0,ze.then(function(Ut){qi(L),gn===0?W(Ut,Wt,Ot):Wt(Ut)},function(Ut){qi(L),Ot(Ut)})}};return!Fn&&typeof Promise<"u"&&Promise.resolve().then(function(){}).then(function(){Ee||(Fn=!0,K("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 () => ...);"))}),Ge}else{var ct=G;if(qi(L),gn===0){var wt=z.current;wt!==null&&(ge(wt),z.current=null);var It={then:function(Wt,Ot){z.current===null?(z.current=[],W(ct,Wt,Ot)):Wt(ct)}};return It}else{var yt={then:function(Wt,Ot){Wt(ct)}};return yt}}}}function qi(S){S!==gn-1&&K("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "),gn=S}function W(S,L,V){{var G=z.current;if(G!==null)try{ge(G),cl(function(){G.length===0?(z.current=null,L(S)):W(S,L,V)})}catch(se){V(se)}else L(S)}}var ne=!1;function ge(S){if(!ne){ne=!0;var L=0;try{for(;L0;){var Jt=vn-1>>>1,Tn=We[Jt];if(v(Tn,lt)>0)We[Jt]=lt,We[vn]=Tn,vn=Jt;else return}}function m(We,lt,At){for(var vn=At,Jt=We.length,Tn=Jt>>>1;vnAt&&(!We||Ln()));){var vn=te.callback;if(typeof vn=="function"){te.callback=null,ee=te.priorityLevel;var Jt=te.expirationTime<=At,Tn=vn(Jt);At=e.unstable_now(),typeof Tn=="function"?te.callback=Tn:te===s(ae)&&u(ae),we(At)}else u(ae);te=s(ae)}if(te!==null)return!0;var $n=s(pe);return $n!==null&&Pt(Le,$n.startTime-At),!1}function Je(We,lt){switch(We){case g:case b:case C:case w:case T:break;default:We=C}var At=ee;ee=We;try{return lt()}finally{ee=At}}function it(We){var lt;switch(ee){case g:case b:case C:lt=C;break;default:lt=ee;break}var At=ee;ee=lt;try{return We()}finally{ee=At}}function Rt(We){var lt=ee;return function(){var At=ee;ee=lt;try{return We.apply(this,arguments)}finally{ee=At}}}function Ve(We,lt,At){var vn=e.unstable_now(),Jt;if(typeof At=="object"&&At!==null){var Tn=At.delay;typeof Tn=="number"&&Tn>0?Jt=vn+Tn:Jt=vn}else Jt=vn;var $n;switch(We){case g:$n=z;break;case b:$n=q;break;case T:$n=ie;break;case w:$n=Q;break;case C:default:$n=Y;break}var Dr=Jt+$n,Mn={id:$e++,callback:lt,priorityLevel:We,startTime:Jt,expirationTime:Dr,sortIndex:-1};return Jt>vn?(Mn.sortIndex=Jt,o(pe,Mn),s(ae)===null&&Mn===s(pe)&&(K?De():K=!0,Pt(Le,Jt-vn))):(Mn.sortIndex=Dr,o(ae,Mn),!Ce&&!be&&(Ce=!0,nn(Me))),Mn}function at(){}function St(){!Ce&&!be&&(Ce=!0,nn(Me))}function Dt(){return s(ae)}function He(We){We.callback=null}function jt(){return ee}var Se=!1,tt=null,Ct=-1,nt=i,on=-1;function Ln(){var We=e.unstable_now()-on;return!(We125){console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported");return}We>0?nt=Math.floor(1e3/We):nt=i}var kn=function(){if(tt!==null){var We=e.unstable_now();on=We;var lt=!0,At=!0;try{At=tt(lt,We)}finally{At?bn():(Se=!1,tt=null)}}else Se=!1},bn;if(typeof de=="function")bn=function(){de(kn)};else if(typeof MessageChannel<"u"){var Ye=new MessageChannel,et=Ye.port2;Ye.port1.onmessage=kn,bn=function(){et.postMessage(null)}}else bn=function(){le(kn,0)};function nn(We){tt=We,Se||(Se=!0,bn())}function Pt(We,lt){Ct=le(function(){We(e.unstable_now())},lt)}function De(){ve(Ct),Ct=-1}var qt=_t,_n=null;e.unstable_IdlePriority=T,e.unstable_ImmediatePriority=g,e.unstable_LowPriority=w,e.unstable_NormalPriority=C,e.unstable_Profiling=_n,e.unstable_UserBlockingPriority=b,e.unstable_cancelCallback=He,e.unstable_continueExecution=St,e.unstable_forceFrameRate=sn,e.unstable_getCurrentPriorityLevel=jt,e.unstable_getFirstCallbackNode=Dt,e.unstable_next=it,e.unstable_pauseExecution=at,e.unstable_requestPaint=qt,e.unstable_runWithPriority=Je,e.unstable_scheduleCallback=Ve,e.unstable_shouldYield=Ln,e.unstable_wrapCallback=Rt,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)})()})(qP);(function(e){e.exports=qP})(YP);/** + * @license React + * react-dom.development.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var e=E.exports,t=YP.exports,n=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,i=!1;function o(r){i=r}function s(r){if(!i){for(var a=arguments.length,l=new Array(a>1?a-1:0),f=1;f1?a-1:0),f=1;f2&&(r[0]==="o"||r[0]==="O")&&(r[1]==="n"||r[1]==="N")}function Dr(r,a,l,f){if(l!==null&&l.type===Ye)return!1;switch(typeof a){case"function":case"symbol":return!0;case"boolean":{if(f)return!1;if(l!==null)return!l.acceptsBooleans;var h=r.toLowerCase().slice(0,5);return h!=="data-"&&h!=="aria-"}default:return!1}}function Mn(r,a,l,f){if(a===null||typeof a>"u"||Dr(r,a,l,f))return!0;if(f)return!1;if(l!==null)switch(l.type){case Pt:return!a;case De:return a===!1;case qt:return isNaN(a);case _n:return isNaN(a)||a<1}return!1}function wi(r){return Rn.hasOwnProperty(r)?Rn[r]:null}function jn(r,a,l,f,h,x,_){this.acceptsBooleans=a===nn||a===Pt||a===De,this.attributeName=f,this.attributeNamespace=h,this.mustUseProperty=l,this.propertyName=r,this.type=a,this.sanitizeURL=x,this.removeEmptyString=_}var Rn={},Ni=["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"];Ni.forEach(function(r){Rn[r]=new jn(r,Ye,!1,r,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(r){var a=r[0],l=r[1];Rn[a]=new jn(a,et,!1,l,null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(r){Rn[r]=new jn(r,nn,!1,r.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(r){Rn[r]=new jn(r,nn,!1,r,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(r){Rn[r]=new jn(r,Pt,!1,r.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(r){Rn[r]=new jn(r,Pt,!0,r,null,!1,!1)}),["capture","download"].forEach(function(r){Rn[r]=new jn(r,De,!1,r,null,!1,!1)}),["cols","rows","size","span"].forEach(function(r){Rn[r]=new jn(r,_n,!1,r,null,!1,!1)}),["rowSpan","start"].forEach(function(r){Rn[r]=new jn(r,qt,!1,r.toLowerCase(),null,!1,!1)});var xr=/[\-\:]([a-z])/g,Bo=function(r){return r[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(r){var a=r.replace(xr,Bo);Rn[a]=new jn(a,et,!1,r,null,!1,!1)}),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach(function(r){var a=r.replace(xr,Bo);Rn[a]=new jn(a,et,!1,r,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(r){var a=r.replace(xr,Bo);Rn[a]=new jn(a,et,!1,r,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(r){Rn[r]=new jn(r,et,!1,r.toLowerCase(),null,!1,!1)});var gs="xlinkHref";Rn[gs]=new jn("xlinkHref",et,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(r){Rn[r]=new jn(r,et,!1,r.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,Uo=!1;function jo(r){!Uo&&bs.test(r)&&(Uo=!0,u("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(r)))}function hr(r,a,l,f){if(f.mustUseProperty){var h=f.propertyName;return r[h]}else{on(l,a),f.sanitizeURL&&jo(""+l);var x=f.attributeName,_=null;if(f.type===De){if(r.hasAttribute(x)){var O=r.getAttribute(x);return O===""?!0:Mn(a,l,f,!1)?O:O===""+l?l:O}}else if(r.hasAttribute(x)){if(Mn(a,l,f,!1))return r.getAttribute(x);if(f.type===Pt)return l;_=r.getAttribute(x)}return Mn(a,l,f,!1)?_===null?l:_:_===""+l?l:_}}function Vi(r,a,l,f){{if(!Tn(a))return;if(!r.hasAttribute(a))return l===void 0?void 0:null;var h=r.getAttribute(a);return on(l,a),h===""+l?l:h}}function qa(r,a,l,f){var h=wi(a);if(!$n(a,h,f)){if(Mn(a,l,h,f)&&(l=null),f||h===null){if(Tn(a)){var x=a;l===null?r.removeAttribute(x):(on(l,a),r.setAttribute(x,""+l))}return}var _=h.mustUseProperty;if(_){var O=h.propertyName;if(l===null){var M=h.type;r[O]=M===Pt?!1:""}else r[O]=l;return}var U=h.attributeName,H=h.attributeNamespace;if(l===null)r.removeAttribute(U);else{var oe=h.type,re;oe===Pt||oe===De&&l===!0?re="":(on(l,U),re=""+l,h.sanitizeURL&&jo(re.toString())),H?r.setAttributeNS(H,U,re):r.setAttribute(U,re)}}}var Hi=Symbol.for("react.element"),X=Symbol.for("react.portal"),Ue=Symbol.for("react.fragment"),Xe=Symbol.for("react.strict_mode"),Et=Symbol.for("react.profiler"),ln=Symbol.for("react.provider"),Cn=Symbol.for("react.context"),ot=Symbol.for("react.forward_ref"),Zt=Symbol.for("react.suspense"),Vn=Symbol.for("react.suspense_list"),Bn=Symbol.for("react.memo"),cn=Symbol.for("react.lazy"),Wr=Symbol.for("react.scope"),Ea=Symbol.for("react.debug_trace_mode"),Vo=Symbol.for("react.offscreen"),Ei=Symbol.for("react.legacy_hidden"),go=Symbol.for("react.cache"),Hu=Symbol.for("react.tracing_marker"),_a=Symbol.iterator,al="@@iterator";function Za(r){if(r===null||typeof r!="object")return null;var a=_a&&r[_a]||r[al];return typeof a=="function"?a:null}var en=Object.assign,Ka=0,_i,Ho,ys,Wo,xs,Ss,Go;function Yo(){}Yo.__reactDisabledLog=!0;function Cs(){{if(Ka===0){_i=console.log,Ho=console.info,ys=console.warn,Wo=console.error,xs=console.group,Ss=console.groupCollapsed,Go=console.groupEnd;var r={configurable:!0,enumerable:!0,value:Yo,writable:!0};Object.defineProperties(console,{info:r,log:r,warn:r,error:r,group:r,groupCollapsed:r,groupEnd:r})}Ka++}}function ol(){{if(Ka--,Ka===0){var r={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:en({},r,{value:_i}),info:en({},r,{value:Ho}),warn:en({},r,{value:ys}),error:en({},r,{value:Wo}),group:en({},r,{value:xs}),groupCollapsed:en({},r,{value:Ss}),groupEnd:en({},r,{value:Go})})}Ka<0&&u("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var sl=n.ReactCurrentDispatcher,Ta;function Br(r,a,l){{if(Ta===void 0)try{throw Error()}catch(h){var f=h.stack.trim().match(/\n( *(at )?)/);Ta=f&&f[1]||""}return` +`+Ta+r}}var Wi=!1,Ti;{var Gi=typeof WeakMap=="function"?WeakMap:Map;Ti=new Gi}function ws(r,a){if(!r||Wi)return"";{var l=Ti.get(r);if(l!==void 0)return l}var f;Wi=!0;var h=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var x;x=sl.current,sl.current=null,Cs();try{if(a){var _=function(){throw Error()};if(Object.defineProperty(_.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(_,[])}catch(xe){f=xe}Reflect.construct(r,[],_)}else{try{_.call()}catch(xe){f=xe}r.call(_.prototype)}}else{try{throw Error()}catch(xe){f=xe}r()}}catch(xe){if(xe&&f&&typeof xe.stack=="string"){for(var O=xe.stack.split(` +`),M=f.stack.split(` +`),U=O.length-1,H=M.length-1;U>=1&&H>=0&&O[U]!==M[H];)H--;for(;U>=1&&H>=0;U--,H--)if(O[U]!==M[H]){if(U!==1||H!==1)do if(U--,H--,H<0||O[U]!==M[H]){var oe=` +`+O[U].replace(" at new "," at ");return r.displayName&&oe.includes("")&&(oe=oe.replace("",r.displayName)),typeof r=="function"&&Ti.set(r,oe),oe}while(U>=1&&H>=0);break}}}finally{Wi=!1,sl.current=x,ol(),Error.prepareStackTrace=h}var re=r?r.displayName||r.name:"",ye=re?Br(re):"";return typeof r=="function"&&Ti.set(r,ye),ye}function qo(r,a,l){return ws(r,!0)}function Ns(r,a,l){return ws(r,!1)}function Yl(r){var a=r.prototype;return!!(a&&a.isReactComponent)}function Ri(r,a,l){if(r==null)return"";if(typeof r=="function")return ws(r,Yl(r));if(typeof r=="string")return Br(r);switch(r){case Zt:return Br("Suspense");case Vn:return Br("SuspenseList")}if(typeof r=="object")switch(r.$$typeof){case ot:return Ns(r.render);case Bn:return Ri(r.type,a,l);case cn:{var f=r,h=f._payload,x=f._init;try{return Ri(x(h),a,l)}catch{}}}return""}function Zo(r){switch(r._debugOwner&&r._debugOwner.type,r._debugSource,r.tag){case w:return Br(r.type);case Q:return Br("Lazy");case z:return Br("Suspense");case pe:return Br("SuspenseList");case m:case g:case Y:return Ns(r.type);case P:return Ns(r.type.render);case v:return qo(r.type);default:return""}}function Yi(r){try{var a="",l=r;do a+=Zo(l),l=l.return;while(l);return a}catch(f){return` +Error generating stack: `+f.message+` +`+f.stack}}function Ra(r,a,l){var f=r.displayName;if(f)return f;var h=a.displayName||a.name||"";return h!==""?l+"("+h+")":l}function ll(r){return r.displayName||"Context"}function fn(r){if(r==null)return null;if(typeof r.tag=="number"&&u("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof r=="function")return r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case Ue:return"Fragment";case X:return"Portal";case Et:return"Profiler";case Xe:return"StrictMode";case Zt:return"Suspense";case Vn:return"SuspenseList"}if(typeof r=="object")switch(r.$$typeof){case Cn:var a=r;return ll(a)+".Consumer";case ln:var l=r;return ll(l._context)+".Provider";case ot:return Ra(r,r.render,"ForwardRef");case Bn:var f=r.displayName||null;return f!==null?f:fn(r.type)||"Memo";case cn:{var h=r,x=h._payload,_=h._init;try{return fn(_(x))}catch{return null}}}return null}function Aa(r,a,l){var f=a.displayName||a.name||"";return r.displayName||(f!==""?l+"("+f+")":l)}function Ko(r){return r.displayName||"Context"}function Ht(r){var a=r.tag,l=r.type;switch(a){case be:return"Cache";case I:var f=l;return Ko(f)+".Consumer";case D:var h=l;return Ko(h._context)+".Provider";case ae:return"DehydratedFragment";case P:return Aa(l,l.render,"ForwardRef");case A:return"Fragment";case w:return l;case C:return"Portal";case b:return"Root";case T:return"Text";case Q:return fn(l);case k:return l===Xe?"StrictMode":"Mode";case te:return"Offscreen";case F:return"Profiler";case $e:return"Scope";case z:return"Suspense";case pe:return"SuspenseList";case Ce:return"TracingMarker";case v:case m:case ie:case g:case q:case Y:if(typeof l=="function")return l.displayName||l.name||null;if(typeof l=="string")return l;break}return null}var ul=n.ReactDebugCurrentFrame,Sr=null,Xa=!1;function na(){{if(Sr===null)return null;var r=Sr._debugOwner;if(r!==null&&typeof r<"u")return Ht(r)}return null}function bo(){return Sr===null?"":Yi(Sr)}function Or(){ul.getCurrentStack=null,Sr=null,Xa=!1}function ar(r){ul.getCurrentStack=r===null?null:bo,Sr=r,Xa=!1}function Xo(){return Sr}function Jr(r){Xa=r}function mr(r){return""+r}function li(r){switch(typeof r){case"boolean":case"number":case"string":case"undefined":return r;case"object":return bn(r),r;default:return""}}var Wu={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0};function yo(r,a){Wu[a.type]||a.onChange||a.onInput||a.readOnly||a.disabled||a.value==null||u("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`."),a.onChange||a.readOnly||a.disabled||a.checked==null||u("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 Oa(r){var a=r.type,l=r.nodeName;return l&&l.toLowerCase()==="input"&&(a==="checkbox"||a==="radio")}function cl(r){return r._valueTracker}function gn(r){r._valueTracker=null}function Fn(r){var a="";return r&&(Oa(r)?a=r.checked?"true":"false":a=r.value),a}function ql(r){var a=Oa(r)?"checked":"value",l=Object.getOwnPropertyDescriptor(r.constructor.prototype,a);bn(r[a]);var f=""+r[a];if(!(r.hasOwnProperty(a)||typeof l>"u"||typeof l.get!="function"||typeof l.set!="function")){var h=l.get,x=l.set;Object.defineProperty(r,a,{configurable:!0,get:function(){return h.call(this)},set:function(O){bn(O),f=""+O,x.call(this,O)}}),Object.defineProperty(r,a,{enumerable:l.enumerable});var _={getValue:function(){return f},setValue:function(O){bn(O),f=""+O},stopTracking:function(){gn(r),delete r[a]}};return _}}function qi(r){cl(r)||(r._valueTracker=ql(r))}function W(r){if(!r)return!1;var a=cl(r);if(!a)return!0;var l=a.getValue(),f=Fn(r);return f!==l?(a.setValue(f),!0):!1}function ne(r){if(r=r||(typeof document<"u"?document:void 0),typeof r>"u")return null;try{return r.activeElement||r.body}catch{return r.body}}var ge=!1,ut=!1,dn=!1,zn=!1;function Kt(r){var a=r.type==="checkbox"||r.type==="radio";return a?r.checked!=null:r.value!=null}function S(r,a){var l=r,f=a.checked,h=en({},a,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:f??l._wrapperState.initialChecked});return h}function L(r,a){yo("input",a),a.checked!==void 0&&a.defaultChecked!==void 0&&!ut&&(u("%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",na()||"A component",a.type),ut=!0),a.value!==void 0&&a.defaultValue!==void 0&&!ge&&(u("%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",na()||"A component",a.type),ge=!0);var l=r,f=a.defaultValue==null?"":a.defaultValue;l._wrapperState={initialChecked:a.checked!=null?a.checked:a.defaultChecked,initialValue:li(a.value!=null?a.value:f),controlled:Kt(a)}}function V(r,a){var l=r,f=a.checked;f!=null&&qa(l,"checked",f,!1)}function G(r,a){var l=r;{var f=Kt(a);!l._wrapperState.controlled&&f&&!zn&&(u("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"),zn=!0),l._wrapperState.controlled&&!f&&!dn&&(u("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"),dn=!0)}V(r,a);var h=li(a.value),x=a.type;if(h!=null)x==="number"?(h===0&&l.value===""||l.value!=h)&&(l.value=mr(h)):l.value!==mr(h)&&(l.value=mr(h));else if(x==="submit"||x==="reset"){l.removeAttribute("value");return}a.hasOwnProperty("value")?Ge(l,a.type,h):a.hasOwnProperty("defaultValue")&&Ge(l,a.type,li(a.defaultValue)),a.checked==null&&a.defaultChecked!=null&&(l.defaultChecked=!!a.defaultChecked)}function se(r,a,l){var f=r;if(a.hasOwnProperty("value")||a.hasOwnProperty("defaultValue")){var h=a.type,x=h==="submit"||h==="reset";if(x&&(a.value===void 0||a.value===null))return;var _=mr(f._wrapperState.initialValue);l||_!==f.value&&(f.value=_),f.defaultValue=_}var O=f.name;O!==""&&(f.name=""),f.defaultChecked=!f.defaultChecked,f.defaultChecked=!!f._wrapperState.initialChecked,O!==""&&(f.name=O)}function ze(r,a){var l=r;G(l,a),Ee(l,a)}function Ee(r,a){var l=a.name;if(a.type==="radio"&&l!=null){for(var f=r;f.parentNode;)f=f.parentNode;on(l,"name");for(var h=f.querySelectorAll("input[name="+JSON.stringify(""+l)+'][type="radio"]'),x=0;x.")))}):a.dangerouslySetInnerHTML!=null&&(It||(It=!0,u("Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected.")))),a.selected!=null&&!ct&&(u("Use the `defaultValue` or `value` props on must be a scalar value if `multiple` is false.%s",l,Ai())}}}}function Dn(r,a,l,f){var h=r.options;if(a){for(var x=l,_={},O=0;O.");var f=en({},a,{value:void 0,defaultValue:void 0,children:mr(l._wrapperState.initialValue)});return f}function o0(r,a){var l=r;yo("textarea",a),a.value!==void 0&&a.defaultValue!==void 0&&!Qb&&(u("%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",na()||"A component"),Qb=!0);var f=a.value;if(f==null){var h=a.children,x=a.defaultValue;if(h!=null){u("Use the `defaultValue` or `value` props instead of setting children on