import{S as nr,i as or,s as ar,e as s,k as l,w as E,t as a,M as ir,c as n,d as r,m as p,a as o,x as w,h as i,b as d,G as e,g as _,y,L as dr,q as V,o as D,B as T,v as cr}from"../../../chunks/vendor-hf-doc-builder.js";import{D as te}from"../../../chunks/Docstring-hf-doc-builder.js";import{I as Ot}from"../../../chunks/IconCopyLink-hf-doc-builder.js";function lr(kt){let v,Se,S,P,re,q,Ce,se,Ne,be,b,O,ne,L,Fe,oe,Me,$e,k,qe,I,Le,Ie,xe,$,A,ae,G,Ge,ie,He,Ee,c,H,Ue,de,We,Be,z,Je,U,Re,je,u,K,ze,Ke,ce,Qe,Xe,le,Ye,Ze,pe,et,tt,Q,rt,st,X,nt,ot,Y,at,it,dt,C,W,ct,ue,lt,pt,g,B,ut,fe,ft,ht,x,mt,he,gt,_t,me,vt,St,bt,N,J,$t,ge,xt,Et,F,R,wt,_e,yt,Vt,M,j,Dt,ve,Tt,we;return q=new Ot({}),L=new Ot({}),G=new Ot({}),H=new te({props:{name:"class diffusers.ScoreSdeVeScheduler",anchor:"diffusers.ScoreSdeVeScheduler",parameters:[{name:"num_train_timesteps",val:": int = 2000"},{name:"snr",val:": float = 0.15"},{name:"sigma_min",val:": float = 0.01"},{name:"sigma_max",val:": float = 1348.0"},{name:"sampling_eps",val:": float = 1e-05"},{name:"correct_steps",val:": int = 1"}],parametersDescription:[{anchor:"diffusers.ScoreSdeVeScheduler.num_train_timesteps",description:"<strong>num_train_timesteps</strong> (<code>int</code>) &#x2014; number of diffusion steps used to train the model.",name:"num_train_timesteps"},{anchor:"diffusers.ScoreSdeVeScheduler.snr",description:`<strong>snr</strong> (<code>float</code>) &#x2014;
coefficient weighting the step from the model_output sample (from the network) to the random noise.`,name:"snr"},{anchor:"diffusers.ScoreSdeVeScheduler.sigma_min",description:`<strong>sigma_min</strong> (<code>float</code>) &#x2014;
initial noise scale for sigma sequence in sampling procedure. The minimum sigma should mirror the
distribution of the data.`,name:"sigma_min"},{anchor:"diffusers.ScoreSdeVeScheduler.sigma_max",description:"<strong>sigma_max</strong> (<code>float</code>) &#x2014; maximum value used for the range of continuous timesteps passed into the model.",name:"sigma_max"},{anchor:"diffusers.ScoreSdeVeScheduler.sampling_eps",description:`<strong>sampling_eps</strong> (<code>float</code>) &#x2014; the end value of sampling, where timesteps decrease progressively from 1 to
epsilon. &#x2014;`,name:"sampling_eps"},{anchor:"diffusers.ScoreSdeVeScheduler.correct_steps",description:"<strong>correct_steps</strong> (<code>int</code>) &#x2014; number of correction steps performed on a produced sample.",name:"correct_steps"}],source:"https://github.com/huggingface/diffusers/blob/v0.12.0/src/diffusers/schedulers/scheduling_sde_ve.py#L45"}}),W=new te({props:{name:"scale_model_input",anchor:"diffusers.ScoreSdeVeScheduler.scale_model_input",parameters:[{name:"sample",val:": FloatTensor"},{name:"timestep",val:": typing.Optional[int] = None"}],parametersDescription:[{anchor:"diffusers.ScoreSdeVeScheduler.scale_model_input.sample",description:"<strong>sample</strong> (<code>torch.FloatTensor</code>) &#x2014; input sample",name:"sample"},{anchor:"diffusers.ScoreSdeVeScheduler.scale_model_input.timestep",description:"<strong>timestep</strong> (<code>int</code>, optional) &#x2014; current timestep",name:"timestep"}],source:"https://github.com/huggingface/diffusers/blob/v0.12.0/src/diffusers/schedulers/scheduling_sde_ve.py#L89",returnDescription:`
<p>scaled input sample</p>
`,returnType:`
<p><code>torch.FloatTensor</code></p>
`}}),B=new te({props:{name:"set_sigmas",anchor:"diffusers.ScoreSdeVeScheduler.set_sigmas",parameters:[{name:"num_inference_steps",val:": int"},{name:"sigma_min",val:": float = None"},{name:"sigma_max",val:": float = None"},{name:"sampling_eps",val:": float = None"}],parametersDescription:[{anchor:"diffusers.ScoreSdeVeScheduler.set_sigmas.num_inference_steps",description:`<strong>num_inference_steps</strong> (<code>int</code>) &#x2014;
the number of diffusion steps used when generating samples with a pre-trained model.`,name:"num_inference_steps"},{anchor:"diffusers.ScoreSdeVeScheduler.set_sigmas.sigma_min",description:`<strong>sigma_min</strong> (<code>float</code>, optional) &#x2014;
initial noise scale value (overrides value given at Scheduler instantiation).`,name:"sigma_min"},{anchor:"diffusers.ScoreSdeVeScheduler.set_sigmas.sigma_max",description:"<strong>sigma_max</strong> (<code>float</code>, optional) &#x2014; final noise scale value (overrides value given at Scheduler instantiation).",name:"sigma_max"},{anchor:"diffusers.ScoreSdeVeScheduler.set_sigmas.sampling_eps",description:"<strong>sampling_eps</strong> (<code>float</code>, optional) &#x2014; final timestep value (overrides value given at Scheduler instantiation).",name:"sampling_eps"}],source:"https://github.com/huggingface/diffusers/blob/v0.12.0/src/diffusers/schedulers/scheduling_sde_ve.py#L119"}}),J=new te({props:{name:"set_timesteps",anchor:"diffusers.ScoreSdeVeScheduler.set_timesteps",parameters:[{name:"num_inference_steps",val:": int"},{name:"sampling_eps",val:": float = None"},{name:"device",val:": typing.Union[str, torch.device] = None"}],parametersDescription:[{anchor:"diffusers.ScoreSdeVeScheduler.set_timesteps.num_inference_steps",description:`<strong>num_inference_steps</strong> (<code>int</code>) &#x2014;
the number of diffusion steps used when generating samples with a pre-trained model.`,name:"num_inference_steps"},{anchor:"diffusers.ScoreSdeVeScheduler.set_timesteps.sampling_eps",description:"<strong>sampling_eps</strong> (<code>float</code>, optional) &#x2014; final timestep value (overrides value given at Scheduler instantiation).",name:"sampling_eps"}],source:"https://github.com/huggingface/diffusers/blob/v0.12.0/src/diffusers/schedulers/scheduling_sde_ve.py#L103"}}),R=new te({props:{name:"step_correct",anchor:"diffusers.ScoreSdeVeScheduler.step_correct",parameters:[{name:"model_output",val:": FloatTensor"},{name:"sample",val:": FloatTensor"},{name:"generator",val:": typing.Optional[torch._C.Generator] = None"},{name:"return_dict",val:": bool = True"}],parametersDescription:[{anchor:"diffusers.ScoreSdeVeScheduler.step_correct.model_output",description:"<strong>model_output</strong> (<code>torch.FloatTensor</code>) &#x2014; direct output from learned diffusion model.",name:"model_output"},{anchor:"diffusers.ScoreSdeVeScheduler.step_correct.sample",description:`<strong>sample</strong> (<code>torch.FloatTensor</code>) &#x2014;
current instance of sample being created by diffusion process.
generator &#x2014; random number generator.`,name:"sample"},{anchor:"diffusers.ScoreSdeVeScheduler.step_correct.return_dict",description:"<strong>return_dict</strong> (<code>bool</code>) &#x2014; option for returning tuple rather than SchedulerOutput class",name:"return_dict"}],source:"https://github.com/huggingface/diffusers/blob/v0.12.0/src/diffusers/schedulers/scheduling_sde_ve.py#L216",returnDescription:`
<p><code>SdeVeOutput</code> if
<code>return_dict</code> is True, otherwise a <code>tuple</code>. When returning a tuple, the first element is the sample tensor.</p>
`,returnType:`
<p><code>SdeVeOutput</code> or <code>tuple</code></p>
`}}),j=new te({props:{name:"step_pred",anchor:"diffusers.ScoreSdeVeScheduler.step_pred",parameters:[{name:"model_output",val:": FloatTensor"},{name:"timestep",val:": int"},{name:"sample",val:": FloatTensor"},{name:"generator",val:": typing.Optional[torch._C.Generator] = None"},{name:"return_dict",val:": bool = True"}],parametersDescription:[{anchor:"diffusers.ScoreSdeVeScheduler.step_pred.model_output",description:"<strong>model_output</strong> (<code>torch.FloatTensor</code>) &#x2014; direct output from learned diffusion model.",name:"model_output"},{anchor:"diffusers.ScoreSdeVeScheduler.step_pred.timestep",description:"<strong>timestep</strong> (<code>int</code>) &#x2014; current discrete timestep in the diffusion chain.",name:"timestep"},{anchor:"diffusers.ScoreSdeVeScheduler.step_pred.sample",description:`<strong>sample</strong> (<code>torch.FloatTensor</code>) &#x2014;
current instance of sample being created by diffusion process.
generator &#x2014; random number generator.`,name:"sample"},{anchor:"diffusers.ScoreSdeVeScheduler.step_pred.return_dict",description:"<strong>return_dict</strong> (<code>bool</code>) &#x2014; option for returning tuple rather than SchedulerOutput class",name:"return_dict"}],source:"https://github.com/huggingface/diffusers/blob/v0.12.0/src/diffusers/schedulers/scheduling_sde_ve.py#L153",returnDescription:`
<p><code>SdeVeOutput</code> if
<code>return_dict</code> is True, otherwise a <code>tuple</code>. When returning a tuple, the first element is the sample tensor.</p>
`,returnType:`
<p><code>SdeVeOutput</code> or <code>tuple</code></p>
`}}),{c(){v=s("meta"),Se=l(),S=s("h1"),P=s("a"),re=s("span"),E(q.$$.fragment),Ce=l(),se=s("span"),Ne=a("variance exploding stochastic differential equation (VE-SDE) scheduler"),be=l(),b=s("h2"),O=s("a"),ne=s("span"),E(L.$$.fragment),Fe=l(),oe=s("span"),Me=a("Overview"),$e=l(),k=s("p"),qe=a("Original paper can be found "),I=s("a"),Le=a("here"),Ie=a("."),xe=l(),$=s("h2"),A=s("a"),ae=s("span"),E(G.$$.fragment),Ge=l(),ie=s("span"),He=a("ScoreSdeVeScheduler"),Ee=l(),c=s("div"),E(H.$$.fragment),Ue=l(),de=s("p"),We=a("The variance exploding stochastic differential equation (SDE) scheduler."),Be=l(),z=s("p"),Je=a("For more information, see the original paper: "),U=s("a"),Re=a("https://arxiv.org/abs/2011.13456"),je=l(),u=s("p"),K=s("a"),ze=a("~ConfigMixin"),Ke=a(" takes care of storing all config attributes that are passed in the scheduler\u2019s "),ce=s("code"),Qe=a("__init__"),Xe=a(`
function, such as `),le=s("code"),Ye=a("num_train_timesteps"),Ze=a(". They can be accessed via "),pe=s("code"),et=a("scheduler.config.num_train_timesteps"),tt=a(`.
`),Q=s("a"),rt=a("SchedulerMixin"),st=a(" provides general loading and saving functionality via the "),X=s("a"),nt=a("SchedulerMixin.save_pretrained()"),ot=a(` and
`),Y=s("a"),at=a("from_pretrained()"),it=a(" functions."),dt=l(),C=s("div"),E(W.$$.fragment),ct=l(),ue=s("p"),lt=a(`Ensures interchangeability with schedulers that need to scale the denoising model input depending on the
current timestep.`),pt=l(),g=s("div"),E(B.$$.fragment),ut=l(),fe=s("p"),ft=a("Sets the noise scales used for the diffusion chain. Supporting function to be run before inference."),ht=l(),x=s("p"),mt=a("The sigmas control the weight of the "),he=s("code"),gt=a("drift"),_t=a(" and "),me=s("code"),vt=a("diffusion"),St=a(" components of sample update."),bt=l(),N=s("div"),E(J.$$.fragment),$t=l(),ge=s("p"),xt=a("Sets the continuous timesteps used for the diffusion chain. Supporting function to be run before inference."),Et=l(),F=s("div"),E(R.$$.fragment),wt=l(),_e=s("p"),yt=a(`Correct the predicted sample based on the output model_output of the network. This is often run repeatedly
after making the prediction for the previous timestep.`),Vt=l(),M=s("div"),E(j.$$.fragment),Dt=l(),ve=s("p"),Tt=a(`Predict the sample at the previous timestep by reversing the SDE. Core function to propagate the diffusion
process from the learned model outputs (most often the predicted noise).`),this.h()},l(t){const m=ir('[data-svelte="svelte-1phssyn"]',document.head);v=n(m,"META",{name:!0,content:!0}),m.forEach(r),Se=p(t),S=n(t,"H1",{class:!0});var ye=o(S);P=n(ye,"A",{id:!0,class:!0,href:!0});var At=o(P);re=n(At,"SPAN",{});var Ct=o(re);w(q.$$.fragment,Ct),Ct.forEach(r),At.forEach(r),Ce=p(ye),se=n(ye,"SPAN",{});var Nt=o(se);Ne=i(Nt,"variance exploding stochastic differential equation (VE-SDE) scheduler"),Nt.forEach(r),ye.forEach(r),be=p(t),b=n(t,"H2",{class:!0});var Ve=o(b);O=n(Ve,"A",{id:!0,class:!0,href:!0});var Ft=o(O);ne=n(Ft,"SPAN",{});var Mt=o(ne);w(L.$$.fragment,Mt),Mt.forEach(r),Ft.forEach(r),Fe=p(Ve),oe=n(Ve,"SPAN",{});var qt=o(oe);Me=i(qt,"Overview"),qt.forEach(r),Ve.forEach(r),$e=p(t),k=n(t,"P",{});var De=o(k);qe=i(De,"Original paper can be found "),I=n(De,"A",{href:!0,rel:!0});var Lt=o(I);Le=i(Lt,"here"),Lt.forEach(r),Ie=i(De,"."),De.forEach(r),xe=p(t),$=n(t,"H2",{class:!0});var Te=o($);A=n(Te,"A",{id:!0,class:!0,href:!0});var It=o(A);ae=n(It,"SPAN",{});var Gt=o(ae);w(G.$$.fragment,Gt),Gt.forEach(r),It.forEach(r),Ge=p(Te),ie=n(Te,"SPAN",{});var Ht=o(ie);He=i(Ht,"ScoreSdeVeScheduler"),Ht.forEach(r),Te.forEach(r),Ee=p(t),c=n(t,"DIV",{class:!0});var f=o(c);w(H.$$.fragment,f),Ue=p(f),de=n(f,"P",{});var Ut=o(de);We=i(Ut,"The variance exploding stochastic differential equation (SDE) scheduler."),Ut.forEach(r),Be=p(f),z=n(f,"P",{});var Pt=o(z);Je=i(Pt,"For more information, see the original paper: "),U=n(Pt,"A",{href:!0,rel:!0});var Wt=o(U);Re=i(Wt,"https://arxiv.org/abs/2011.13456"),Wt.forEach(r),Pt.forEach(r),je=p(f),u=n(f,"P",{});var h=o(u);K=n(h,"A",{href:!0});var Bt=o(K);ze=i(Bt,"~ConfigMixin"),Bt.forEach(r),Ke=i(h," takes care of storing all config attributes that are passed in the scheduler\u2019s "),ce=n(h,"CODE",{});var Jt=o(ce);Qe=i(Jt,"__init__"),Jt.forEach(r),Xe=i(h,`
function, such as `),le=n(h,"CODE",{});var Rt=o(le);Ye=i(Rt,"num_train_timesteps"),Rt.forEach(r),Ze=i(h,". They can be accessed via "),pe=n(h,"CODE",{});var jt=o(pe);et=i(jt,"scheduler.config.num_train_timesteps"),jt.forEach(r),tt=i(h,`.
`),Q=n(h,"A",{href:!0});var zt=o(Q);rt=i(zt,"SchedulerMixin"),zt.forEach(r),st=i(h," provides general loading and saving functionality via the "),X=n(h,"A",{href:!0});var Kt=o(X);nt=i(Kt,"SchedulerMixin.save_pretrained()"),Kt.forEach(r),ot=i(h,` and
`),Y=n(h,"A",{href:!0});var Qt=o(Y);at=i(Qt,"from_pretrained()"),Qt.forEach(r),it=i(h," functions."),h.forEach(r),dt=p(f),C=n(f,"DIV",{class:!0});var Pe=o(C);w(W.$$.fragment,Pe),ct=p(Pe),ue=n(Pe,"P",{});var Xt=o(ue);lt=i(Xt,`Ensures interchangeability with schedulers that need to scale the denoising model input depending on the
current timestep.`),Xt.forEach(r),Pe.forEach(r),pt=p(f),g=n(f,"DIV",{class:!0});var Z=o(g);w(B.$$.fragment,Z),ut=p(Z),fe=n(Z,"P",{});var Yt=o(fe);ft=i(Yt,"Sets the noise scales used for the diffusion chain. Supporting function to be run before inference."),Yt.forEach(r),ht=p(Z),x=n(Z,"P",{});var ee=o(x);mt=i(ee,"The sigmas control the weight of the "),he=n(ee,"CODE",{});var Zt=o(he);gt=i(Zt,"drift"),Zt.forEach(r),_t=i(ee," and "),me=n(ee,"CODE",{});var er=o(me);vt=i(er,"diffusion"),er.forEach(r),St=i(ee," components of sample update."),ee.forEach(r),Z.forEach(r),bt=p(f),N=n(f,"DIV",{class:!0});var Oe=o(N);w(J.$$.fragment,Oe),$t=p(Oe),ge=n(Oe,"P",{});var tr=o(ge);xt=i(tr,"Sets the continuous timesteps used for the diffusion chain. Supporting function to be run before inference."),tr.forEach(r),Oe.forEach(r),Et=p(f),F=n(f,"DIV",{class:!0});var ke=o(F);w(R.$$.fragment,ke),wt=p(ke),_e=n(ke,"P",{});var rr=o(_e);yt=i(rr,`Correct the predicted sample based on the output model_output of the network. This is often run repeatedly
after making the prediction for the previous timestep.`),rr.forEach(r),ke.forEach(r),Vt=p(f),M=n(f,"DIV",{class:!0});var Ae=o(M);w(j.$$.fragment,Ae),Dt=p(Ae),ve=n(Ae,"P",{});var sr=o(ve);Tt=i(sr,`Predict the sample at the previous timestep by reversing the SDE. Core function to propagate the diffusion
process from the learned model outputs (most often the predicted noise).`),sr.forEach(r),Ae.forEach(r),f.forEach(r),this.h()},h(){d(v,"name","hf:doc:metadata"),d(v,"content",JSON.stringify(pr)),d(P,"id","variance-exploding-stochastic-differential-equation-vesde-scheduler"),d(P,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),d(P,"href","#variance-exploding-stochastic-differential-equation-vesde-scheduler"),d(S,"class","relative group"),d(O,"id","overview"),d(O,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),d(O,"href","#overview"),d(b,"class","relative group"),d(I,"href","https://arxiv.org/abs/2011.13456"),d(I,"rel","nofollow"),d(A,"id","diffusers.ScoreSdeVeScheduler"),d(A,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),d(A,"href","#diffusers.ScoreSdeVeScheduler"),d($,"class","relative group"),d(U,"href","https://arxiv.org/abs/2011.13456"),d(U,"rel","nofollow"),d(K,"href","/docs/diffusers/v0.12.0/en/api/configuration#diffusers.ConfigMixin"),d(Q,"href","/docs/diffusers/v0.12.0/en/api/schedulers/overview#diffusers.SchedulerMixin"),d(X,"href","/docs/diffusers/v0.12.0/en/api/schedulers/overview#diffusers.SchedulerMixin.save_pretrained"),d(Y,"href","/docs/diffusers/v0.12.0/en/api/schedulers/overview#diffusers.SchedulerMixin.from_pretrained"),d(C,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),d(g,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),d(N,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),d(F,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),d(M,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),d(c,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8")},m(t,m){e(document.head,v),_(t,Se,m),_(t,S,m),e(S,P),e(P,re),y(q,re,null),e(S,Ce),e(S,se),e(se,Ne),_(t,be,m),_(t,b,m),e(b,O),e(O,ne),y(L,ne,null),e(b,Fe),e(b,oe),e(oe,Me),_(t,$e,m),_(t,k,m),e(k,qe),e(k,I),e(I,Le),e(k,Ie),_(t,xe,m),_(t,$,m),e($,A),e(A,ae),y(G,ae,null),e($,Ge),e($,ie),e(ie,He),_(t,Ee,m),_(t,c,m),y(H,c,null),e(c,Ue),e(c,de),e(de,We),e(c,Be),e(c,z),e(z,Je),e(z,U),e(U,Re),e(c,je),e(c,u),e(u,K),e(K,ze),e(u,Ke),e(u,ce),e(ce,Qe),e(u,Xe),e(u,le),e(le,Ye),e(u,Ze),e(u,pe),e(pe,et),e(u,tt),e(u,Q),e(Q,rt),e(u,st),e(u,X),e(X,nt),e(u,ot),e(u,Y),e(Y,at),e(u,it),e(c,dt),e(c,C),y(W,C,null),e(C,ct),e(C,ue),e(ue,lt),e(c,pt),e(c,g),y(B,g,null),e(g,ut),e(g,fe),e(fe,ft),e(g,ht),e(g,x),e(x,mt),e(x,he),e(he,gt),e(x,_t),e(x,me),e(me,vt),e(x,St),e(c,bt),e(c,N),y(J,N,null),e(N,$t),e(N,ge),e(ge,xt),e(c,Et),e(c,F),y(R,F,null),e(F,wt),e(F,_e),e(_e,yt),e(c,Vt),e(c,M),y(j,M,null),e(M,Dt),e(M,ve),e(ve,Tt),we=!0},p:dr,i(t){we||(V(q.$$.fragment,t),V(L.$$.fragment,t),V(G.$$.fragment,t),V(H.$$.fragment,t),V(W.$$.fragment,t),V(B.$$.fragment,t),V(J.$$.fragment,t),V(R.$$.fragment,t),V(j.$$.fragment,t),we=!0)},o(t){D(q.$$.fragment,t),D(L.$$.fragment,t),D(G.$$.fragment,t),D(H.$$.fragment,t),D(W.$$.fragment,t),D(B.$$.fragment,t),D(J.$$.fragment,t),D(R.$$.fragment,t),D(j.$$.fragment,t),we=!1},d(t){r(v),t&&r(Se),t&&r(S),T(q),t&&r(be),t&&r(b),T(L),t&&r($e),t&&r(k),t&&r(xe),t&&r($),T(G),t&&r(Ee),t&&r(c),T(H),T(W),T(B),T(J),T(R),T(j)}}}const pr={local:"variance-exploding-stochastic-differential-equation-vesde-scheduler",sections:[{local:"overview",title:"Overview"},{local:"diffusers.ScoreSdeVeScheduler",title:"ScoreSdeVeScheduler"}],title:"variance exploding stochastic differential equation (VE-SDE) scheduler"};function ur(kt){return cr(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class gr extends nr{constructor(v){super();or(this,v,ur,lr,ar,{})}}export{gr as default,pr as metadata};
