diff --git a/.gitattributes b/.gitattributes index afafe2827899588560539c50367f51bd120d3fcc..236a6d0e4b62fe110ee66a1065e248cbfe88d750 100644 --- a/.gitattributes +++ b/.gitattributes @@ -46,3 +46,4 @@ lecture-01/assets/synthetic-ecg-BNIVEI6m.jpeg filter=lfs diff=lfs merge=lfs -tex lecture-01/assets/synthetic-polyp-CIkbWMkW.jpeg filter=lfs diff=lfs merge=lfs -text lecture-02/slides.pdf filter=lfs diff=lfs merge=lfs -text lecture-01/assets/generated-faces-BvUuJNEP.jpeg filter=lfs diff=lfs merge=lfs -text +lecture-07/slides.pdf filter=lfs diff=lfs merge=lfs -text diff --git a/lecture-07/404.html b/lecture-07/404.html new file mode 100644 index 0000000000000000000000000000000000000000..cf1d3d16fc8a1661ac2d2ff845c4a1fb38a3cbab --- /dev/null +++ b/lecture-07/404.html @@ -0,0 +1,30 @@ + + + + + +Generative Models and GANs - Slidev + + + + + + + + + + + + + + + + + + + +
+
+ + + diff --git a/lecture-07/_redirects b/lecture-07/_redirects new file mode 100644 index 0000000000000000000000000000000000000000..bdc8a08e90af7526ac48238e8fbb2f0f26121fa3 --- /dev/null +++ b/lecture-07/_redirects @@ -0,0 +1 @@ +./* ./index.html 200 diff --git a/lecture-07/assets/404-bkedjYjP.css b/lecture-07/assets/404-bkedjYjP.css new file mode 100644 index 0000000000000000000000000000000000000000..0b95cae68cb7a9eeaa0fecc385b94688be2b2945 --- /dev/null +++ b/lecture-07/assets/404-bkedjYjP.css @@ -0,0 +1 @@ +.page-link[data-v-b584852f]{background-color:#9ca3af1a;border-radius:.25rem;padding:.5rem 1rem}.page-link[data-v-b584852f]:hover{background-color:#9ca3af33} diff --git a/lecture-07/assets/AdversarialGame-BC2uRAJk.js b/lecture-07/assets/AdversarialGame-BC2uRAJk.js new file mode 100644 index 0000000000000000000000000000000000000000..520ef90dbfb80b84fa574280af57de809cdc590e --- /dev/null +++ b/lecture-07/assets/AdversarialGame-BC2uRAJk.js @@ -0,0 +1 @@ +import{$ as e,S as t,St as n,V as r,_ as i,b as a,g as o,m as s,ut as c,v as l,vt as u,w as d,y as f,z as p}from"./modules/shiki-CkJq9tSf.js";import{t as m}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as h}from"./slidev/context-DnYiQGy6.js";import{D as g,O as ee,S as _,a as v,h as y,i as b,n as x}from"./useGenerative-DDHg2gzY.js";import{t as S}from"./Slider-Bf0ITYx4.js";var C={class:`dl-gan`,viewBox:`0 0 470 216`,role:`img`,"aria-label":`Real and generated probability on three modes, with the optimal discriminator under each`},te=[`x1`],ne=[`x`,`y`],w=[`x`,`y`],T=[`x`,`y`,`height`],E=[`x`,`y`],D=[`x`,`y`,`height`],O=[`x`,`y`],k=[`x`,`y`],A=[`x`,`y`],j={key:0,class:`dl-gan__out`},M={class:`dl-gan__row`},N={class:`dl-gan__num`},P={class:`dl-gan__row`},F={class:`dl-gan__num`},I={class:`dl-gan__row is-quiet`},L={class:`dl-gan__num`},R={class:`dl-gan__note`},z={key:1,class:`dl-gan__out`},B=42,V=132,H=150,U=58,W=m(d({__name:`AdversarialGame`,props:{discriminatorOnly:{type:Boolean,default:!1},collapsed:{type:Boolean,default:!1}},setup(d){let{$slidev:m,$nav:W,$clicksContext:re,$clicks:ie,$page:ae,$renderContext:oe,$frontmatter:se}=h(),G=d,K=c([...G.collapsed?b:v]),q=o(()=>y(K.value)),J=o(()=>_(x,q.value)),Y=o(()=>Math.abs(J.value.v-J.value.vTheory)<5e-6);function X(e){return Math.max(e*V*(1/.62),0)}function Z(e){return U+e*136}function Q(e){K.value=[...e]}function $(e,t=3){return Number.isFinite(e)?e.toFixed(t):`∞`}return(o,c)=>{let d=S,m=g,h=ee;return p(),l(h,{"max-width":`46rem`},{controls:e(()=>[t(d,{modelValue:K.value[0],"onUpdate:modelValue":c[0]||=e=>K.value[0]=e,label:`Q on mode 1`,min:0,max:1,step:.01},null,8,[`modelValue`]),t(d,{modelValue:K.value[1],"onUpdate:modelValue":c[1]||=e=>K.value[1]=e,label:`Q on mode 2`,min:0,max:1,step:.01},null,8,[`modelValue`]),t(d,{modelValue:K.value[2],"onUpdate:modelValue":c[2]||=e=>K.value[2]=e,label:`Q on mode 3`,min:0,max:1,step:.01},null,8,[`modelValue`]),t(m,{label:`Reset`,variant:`ghost`,onClick:c[3]||=e=>Q(u(v))}),t(m,{label:`Collapse`,variant:`ghost`,onClick:c[4]||=e=>Q(u(b))}),t(m,{label:`Perfect`,variant:`ghost`,onClick:c[5]||=e=>Q(u(x))})]),readout:e(()=>[G.discriminatorOnly?(p(),a(`div`,z,[...c[10]||=[i(`div`,{class:`dl-gan__row is-quiet`},[i(`span`,{class:`dl-gan__name`},`D* = P / (P + Q)`),i(`span`,{class:`dl-gan__note`},` nothing here was trained — this is the best any discriminator could do `)],-1)]])):(p(),a(`div`,j,[i(`div`,M,[c[7]||=i(`span`,{class:`dl-gan__name`},`V(D*, G)`,-1),i(`span`,N,n($(J.value.v,5)),1)]),i(`div`,P,[c[8]||=i(`span`,{class:`dl-gan__name`},`−log 4 + 2·JS(P‖Q)`,-1),i(`span`,F,n($(J.value.vTheory,5)),1)]),i(`div`,I,[c[9]||=i(`span`,{class:`dl-gan__name`},`JS(P‖Q)`,-1),i(`span`,L,n($(J.value.js,5)),1),i(`span`,R,n(Y.value?`the two rows above are the same number, always`:``),1)])]))]),default:e(()=>[(p(),a(`svg`,C,[f(` baseline `),i(`line`,{class:`dl-gan__axis`,x1:32,x2:446,y1:H,y2:H},null,8,te),i(`text`,{class:`dl-gan__ylab`,x:26,y:22,"text-anchor":`end`},`0.6`,8,ne),i(`text`,{class:`dl-gan__ylab`,x:26,y:154,"text-anchor":`end`},`0`,8,w),(p(!0),a(s,null,r(u(x),(e,t)=>(p(),a(`g`,{key:t},[f(` the real data: an outline, because it is fixed and not yours to move `),i(`rect`,{class:`dl-gan__real`,x:Z(t),width:B,y:H-X(e),height:X(e)},null,8,T),i(`text`,{class:`dl-gan__val`,x:Z(t)+B/2,y:H-X(e)-6,"text-anchor":`middle`},n(e.toFixed(2)),9,E),f(` the generator: solid, and the only thing that moves `),i(`rect`,{class:`dl-gan__fake`,x:Z(t)+B+4,width:B,y:H-X(q.value[t]),height:X(q.value[t])},null,8,D),i(`text`,{class:`dl-gan__val is-fake`,x:Z(t)+B*1.5+4,y:H-X(q.value[t])-6,"text-anchor":`middle`},n(q.value[t].toFixed(2)),9,O),i(`text`,{class:`dl-gan__mode`,x:Z(t)+B+2,y:168,"text-anchor":`middle`},` mode `+n(t+1),9,k),f(` the best possible discriminator on this bin `),i(`text`,{class:`dl-gan__dstar`,x:Z(t)+B+2,y:192,"text-anchor":`middle`},` D* = `+n(J.value.d[t].toFixed(3)),9,A)]))),128)),c[6]||=i(`g`,{class:`dl-gan__key`},[i(`rect`,{class:`dl-gan__real`,x:`300`,y:`10`,width:`15`,height:`11`}),i(`text`,{x:`322`,y:`20`},`real, P`),i(`rect`,{class:`dl-gan__fake`,x:`376`,y:`10`,width:`15`,height:`11`}),i(`text`,{x:`398`,y:`20`},`generated, Q`)],-1)]))]),_:1})}}}),[[`__scopeId`,`data-v-a8c333fd`]]);export{W as t}; \ No newline at end of file diff --git a/lecture-07/assets/AdversarialGame-CPtN5Ta6.css b/lecture-07/assets/AdversarialGame-CPtN5Ta6.css new file mode 100644 index 0000000000000000000000000000000000000000..ca589574a28399fda3a7b31a61bb753f1a236930 --- /dev/null +++ b/lecture-07/assets/AdversarialGame-CPtN5Ta6.css @@ -0,0 +1 @@ +.dl-gan[data-v-a8c333fd]{width:100%;height:100%;max-height:15rem;font-family:inherit}.dl-gan__axis[data-v-a8c333fd]{stroke:var(--dl-muted);stroke-width:1.5px}.dl-gan__ylab[data-v-a8c333fd],.dl-gan__key text[data-v-a8c333fd]{fill:var(--dl-muted);font-size:11px}.dl-gan__real[data-v-a8c333fd]{fill:none;stroke:var(--dl-body);stroke-width:2px;stroke-dasharray:4 3}.dl-gan__fake[data-v-a8c333fd]{fill:var(--dl-accent)}.dl-gan__val[data-v-a8c333fd]{fill:var(--dl-body);font-variant-numeric:tabular-nums;font-size:12px}.dl-gan__val.is-fake[data-v-a8c333fd]{fill:var(--dl-accent);font-weight:600}.dl-gan__mode[data-v-a8c333fd]{fill:var(--dl-body);font-size:12.5px}.dl-gan__dstar[data-v-a8c333fd]{fill:var(--dl-heading);font-variant-numeric:tabular-nums;font-size:13.5px;font-weight:600}.dl-gan__out[data-v-a8c333fd]{flex-direction:column;gap:.12rem;width:100%;display:flex}.dl-gan__row[data-v-a8c333fd]{color:var(--dl-heading);align-items:baseline;gap:.7rem;font-size:.86rem;display:flex}.dl-gan__row.is-quiet[data-v-a8c333fd]{color:var(--dl-muted);font-size:.8rem}.dl-gan__name[data-v-a8c333fd]{min-width:11.5rem}.dl-gan__num[data-v-a8c333fd]{color:var(--dl-accent);font-variant-numeric:tabular-nums;text-align:right;min-width:5rem;font-weight:700}.dl-gan__note[data-v-a8c333fd]{color:var(--dl-muted);font-size:.78rem;font-weight:400} diff --git a/lecture-07/assets/AutoencoderLab-BPSflqHA.css b/lecture-07/assets/AutoencoderLab-BPSflqHA.css new file mode 100644 index 0000000000000000000000000000000000000000..844cf04bd76f1687a162ffe3b8c4fe342bae037c --- /dev/null +++ b/lecture-07/assets/AutoencoderLab-BPSflqHA.css @@ -0,0 +1 @@ +.dl-ae[data-v-f2ff8b85]{flex-direction:column;gap:.1rem;width:100%;display:flex}.dl-ae__strip[data-v-f2ff8b85]{flex:none;width:100%;height:2.6rem;font-family:inherit}.dl-ae__axis[data-v-f2ff8b85]{stroke:var(--dl-muted);stroke-width:1.2px}.dl-ae__tick[data-v-f2ff8b85]{stroke:var(--dl-body);stroke-width:1.4px}.dl-ae__probe[data-v-f2ff8b85]{stroke:var(--dl-heading);stroke-width:2.4px}.dl-ae__probe.is-hole[data-v-f2ff8b85]{stroke:var(--dl-danger)}.dl-ae__probelab[data-v-f2ff8b85]{fill:var(--dl-heading);font-variant-numeric:tabular-nums;font-size:10.5px;font-weight:600}.dl-ae__probelab.is-hole[data-v-f2ff8b85]{fill:var(--dl-danger)}.dl-ae__striplab[data-v-f2ff8b85]{fill:var(--dl-muted);font-size:12px;font-style:italic} diff --git a/lecture-07/assets/AutoencoderLab-BmCWWAhi.js b/lecture-07/assets/AutoencoderLab-BmCWWAhi.js new file mode 100644 index 0000000000000000000000000000000000000000..0ba526ca0d70741b01c0cacbbee4dee57b38789e --- /dev/null +++ b/lecture-07/assets/AutoencoderLab-BmCWWAhi.js @@ -0,0 +1 @@ +import{$ as e,S as t,St as n,V as r,_ as i,b as a,g as o,m as s,ut as c,v as l,vt as u,w as d,y as f,yt as p,z as m}from"./modules/shiki-CkJq9tSf.js";import{t as h}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as g}from"./slidev/context-DnYiQGy6.js";import{D as _,O as v,d as y,f as b,s as x,x as S,y as C}from"./useGenerative-DDHg2gzY.js";import{t as w}from"./Plot2D-C9URVmMB.js";import{t as T}from"./PlotLabel-BilrlAqg.js";import{t as E}from"./PlotPoints-CeOGnq0p.js";import{t as D}from"./PlotCurve-CJaWe74-.js";var O={class:`dl-ae`},ee={class:`dl-ae__strip`,viewBox:`0 0 470 46`,role:`img`,"aria-label":`The latent codes of every training point, on one axis`},k=[`x1`,`x2`],A=[`x1`,`x2`],j=[`x1`,`x2`],M=[`x`],N={key:0},P={key:1},F={key:2},I={key:3},L=420,R=26,z=h(d({__name:`AutoencoderLab`,props:{latentDim:{default:1}},setup(d){let{$slidev:h,$nav:z,$clicksContext:te,$clicks:ne,$page:re,$renderContext:ie,$frontmatter:ae}=g(),B=c(d.latentDim),V=S(22),H=y(V),U=o(()=>B.value===2?V:V.map(C)),W=o(()=>{let e=[];for(let t=0;t<=80;t++)e.push(x(-1.25+2.5*t/80));return e}),G=[-1,0,...b(H)],K=c(-1),q=o(()=>K.value>=0?G[K.value%G.length]:null),J=o(()=>q.value===null?null:x(q.value)),Y=o(()=>{let e=J.value;return e?Math.sqrt(Math.min(...V.map(t=>(t.x-e.x)**2+(t.y-e.y)**2))):null}),X=o(()=>Y.value!==null&&Y.value>.6);function Z(){K.value+=1}function Q(){K.value=-1}function $(e){return R+(e+1.5)/3*L}return(o,c)=>{let d=D,h=E,g=T,y=w,b=_,x=v;return m(),l(x,{"max-width":`44rem`},{controls:e(()=>[t(b,{label:B.value===1?`latent = 1 (undercomplete)`:`latent = 2 (as wide as the input)`,variant:`ghost`,glyph:`⇆`,onClick:c[0]||=e=>B.value=B.value===1?2:1},null,8,[`label`]),t(b,{label:`Decode a fresh z`,disabled:B.value!==1,onClick:Z},null,8,[`disabled`]),K.value>=0?(m(),l(b,{key:0,label:`Clear`,variant:`ghost`,onClick:Q})):f(`v-if`,!0)]),readout:e(()=>[B.value===2?(m(),a(`span`,N,` Latent as wide as the input: the reconstruction is exact and the model has learned nothing — grey and teal are the same points. `)):q.value===null?(m(),a(`span`,P,` Latent codes sit in three clumps with two gaps. Decode a z from a gap and see what comes out. `)):X.value?(m(),a(`span`,F,` z = `+n(q.value.toFixed(2))+` fell in a gap. The nearest real example is `+n(Y.value.toFixed(2))+` away — this output is not data. `,1)):(m(),a(`span`,I,` z = `+n(q.value.toFixed(2))+` sits inside a clump, so it decodes to something plausible — nearest real example `+n(Y.value.toFixed(2))+` away. `,1))]),default:e(()=>[i(`div`,O,[t(y,{"x-domain":[-3.6,3.6],"y-domain":[-2.4,2.4],width:470,height:220,"x-ticks":[-3,0,3],"y-ticks":[-2,0,2]},{default:e(()=>[f(` everything a 1-D decoder can produce, ever `),B.value===1?(m(),l(d,{key:0,points:W.value,color:`var(--dl-accent)`,width:2,opacity:.5},null,8,[`points`])):f(`v-if`,!0),t(h,{points:u(V),radius:3.4,color:`var(--dl-muted)`,opacity:.55},null,8,[`points`]),t(h,{points:U.value,radius:3,color:`var(--dl-accent)`},null,8,[`points`]),J.value?(m(),a(s,{key:1},[t(h,{points:[{...J.value,highlight:!0}],radius:7,color:X.value?`var(--dl-danger)`:`var(--dl-heading)`},null,8,[`points`,`color`]),t(g,{at:[J.value.x,J.value.y],text:`g(${q.value.toFixed(2)})`,dy:-14,color:X.value?`var(--dl-danger)`:`var(--dl-heading)`,bold:``},null,8,[`at`,`text`,`color`])],64)):f(`v-if`,!0)]),_:1}),f(` where the training data's codes actually are `),(m(),a(`svg`,ee,[i(`line`,{class:`dl-ae__axis`,x1:$(-1.5),x2:$(1.5),y1:`26`,y2:`26`},null,8,k),(m(!0),a(s,null,r(u(H),(e,t)=>(m(),a(`line`,{key:t,class:`dl-ae__tick`,x1:$(e),x2:$(e),y1:`16`,y2:`26`},null,8,A))),128)),q.value===null?f(`v-if`,!0):(m(),a(s,{key:0},[i(`line`,{class:p([`dl-ae__probe`,{"is-hole":X.value}]),x1:$(q.value),x2:$(q.value),y1:`10`,y2:`34`},null,10,j),i(`text`,{class:p([`dl-ae__probelab`,{"is-hole":X.value}]),x:$(q.value),y:`44`,"text-anchor":`middle`},`z = `+n(q.value.toFixed(2)),11,M)],64)),c[1]||=i(`text`,{class:`dl-ae__striplab`,x:`8`,y:`30`},`z`,-1)]))])]),_:1})}}}),[[`__scopeId`,`data-v-f2ff8b85`]]);export{z as t}; \ No newline at end of file diff --git a/lecture-07/assets/Citation-BuY_RPc0.js b/lecture-07/assets/Citation-BuY_RPc0.js new file mode 100644 index 0000000000000000000000000000000000000000..debd5a9ff27ba88a665c21e5a5f1bd4b6fb6e258 --- /dev/null +++ b/lecture-07/assets/Citation-BuY_RPc0.js @@ -0,0 +1 @@ +import{H as e,St as t,b as n,m as r,w as i,x as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{t as s}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as c}from"./slidev/context-DnYiQGy6.js";var l={class:`dl-citation`},u=[`href`],d=s(i({__name:`Citation`,props:{source:{},url:{}},setup(i){let{$slidev:s,$nav:d,$clicksContext:f,$clicks:p,$page:m,$renderContext:h,$frontmatter:g}=c(),_=i;return(i,s)=>(o(),n(`span`,l,[_.url?(o(),n(`a`,{key:0,href:_.url,target:`_blank`,rel:`noopener`},t(_.source),9,u)):(o(),n(r,{key:1},[a(t(_.source),1)],64)),e(i.$slots,`default`,{},void 0,!0)]))}}),[[`__scopeId`,`data-v-11a8cabc`]]);export{d as t}; \ No newline at end of file diff --git a/lecture-07/assets/Citation-rca7ok54.css b/lecture-07/assets/Citation-rca7ok54.css new file mode 100644 index 0000000000000000000000000000000000000000..e05f98641af8c02e0c505fbe6d1239942e4d8dd3 --- /dev/null +++ b/lecture-07/assets/Citation-rca7ok54.css @@ -0,0 +1 @@ +.dl-citation[data-v-11a8cabc]{font-size:var(--dl-fs-citation);color:var(--dl-muted)}.dl-citation a[data-v-11a8cabc]{color:inherit;border-bottom:1px dotted} diff --git a/lecture-07/assets/DeckFooter-B6vKMo6W.css b/lecture-07/assets/DeckFooter-B6vKMo6W.css new file mode 100644 index 0000000000000000000000000000000000000000..bd00073f9a4233c8d949a2f8f1202003aec12052 --- /dev/null +++ b/lecture-07/assets/DeckFooter-B6vKMo6W.css @@ -0,0 +1 @@ +.dl-footer[data-v-fe908050]{letter-spacing:.04em;color:var(--dl-muted);pointer-events:none;justify-content:space-between;align-items:center;gap:1rem;font-size:.72rem;display:flex;position:absolute;bottom:1rem;left:3rem;right:3rem}.dl-footer__left[data-v-fe908050]{align-items:center;gap:.4rem;min-width:0;display:flex}.dl-footer__code[data-v-fe908050]{color:var(--dl-accent);font-weight:700}.dl-footer__sep[data-v-fe908050]{opacity:.5}.dl-footer__title[data-v-fe908050]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dl-footer__right[data-v-fe908050]{font-variant-numeric:tabular-nums;flex-shrink:0} diff --git a/lecture-07/assets/DeckFooter-tFze9YsO.js b/lecture-07/assets/DeckFooter-tFze9YsO.js new file mode 100644 index 0000000000000000000000000000000000000000..507d8e9d19c8cd95c9eaed40593eb64c01cec0ae --- /dev/null +++ b/lecture-07/assets/DeckFooter-tFze9YsO.js @@ -0,0 +1 @@ +import{St as e,_ as t,b as n,g as r,vt as i,w as a,y as o,z as s}from"./modules/shiki-CkJq9tSf.js";import{t as c}from"./useNav-DOs7c9Ie.js";import{t as l}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as u}from"./slidev/context-DnYiQGy6.js";import"./syncState-BCmj5bTl.js";import"./index-DYEUBAok.js";import"./useDrawings-dMxKslDP.js";var d={class:`dl-footer`},f={class:`dl-footer__left`},p={key:0,class:`dl-footer__code`},m={key:1,class:`dl-footer__sep`},h={key:2},g={key:3,class:`dl-footer__sep`},_={key:4,class:`dl-footer__title`},v={class:`dl-footer__right`},y=l(a({__name:`DeckFooter`,setup(a){let{$slidev:l}=u(),y=c(),b=r(()=>l?.themeConfigs??{}),x=r(()=>b.value.courseCode??``),S=r(()=>b.value.lecture??``),C=r(()=>b.value.lectureTitle??``);return(r,a)=>(s(),n(`footer`,d,[t(`div`,f,[x.value?(s(),n(`span`,p,e(x.value),1)):o(`v-if`,!0),S.value?(s(),n(`span`,m,`·`)):o(`v-if`,!0),S.value?(s(),n(`span`,h,`Lecture `+e(S.value),1)):o(`v-if`,!0),C.value?(s(),n(`span`,g,`·`)):o(`v-if`,!0),C.value?(s(),n(`span`,_,e(C.value),1)):o(`v-if`,!0)]),t(`div`,v,e(i(y).currentPage.value)+` / `+e(i(y).total.value),1)]))}}),[[`__scopeId`,`data-v-fe908050`]]);export{y as t}; \ No newline at end of file diff --git a/lecture-07/assets/DiffusionLab-CpbESuYa.css b/lecture-07/assets/DiffusionLab-CpbESuYa.css new file mode 100644 index 0000000000000000000000000000000000000000..828786dd232cf844c8c592b37ec311473f503fa9 --- /dev/null +++ b/lecture-07/assets/DiffusionLab-CpbESuYa.css @@ -0,0 +1 @@ +.dl-diff__out[data-v-22c227ee]{flex-wrap:wrap;align-items:baseline;gap:.15rem 1.2rem;display:flex}.dl-diff__out b[data-v-22c227ee]{color:var(--dl-accent);font-weight:700}.dl-diff__note[data-v-22c227ee]{color:var(--dl-muted);font-style:italic} diff --git a/lecture-07/assets/DiffusionLab-DyGhc6Y6.js b/lecture-07/assets/DiffusionLab-DyGhc6Y6.js new file mode 100644 index 0000000000000000000000000000000000000000..b4e5074967cc64cfb42d973d7d279a670cc2e3bb --- /dev/null +++ b/lecture-07/assets/DiffusionLab-DyGhc6Y6.js @@ -0,0 +1 @@ +import{$ as e,S as t,St as n,V as r,_ as i,b as a,g as o,m as s,ut as c,v as l,vt as u,w as d,x as f,z as p}from"./modules/shiki-CkJq9tSf.js";import{t as m}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as h}from"./slidev/context-DnYiQGy6.js";import{C as g,D as _,E as v,O as y,b,l as x,m as S,p as C,x as w}from"./useGenerative-DDHg2gzY.js";import{t as T}from"./Plot2D-C9URVmMB.js";import{t as E}from"./PlotPoints-CeOGnq0p.js";import{t as D}from"./Slider-Bf0ITYx4.js";import{t as O}from"./PlotLine-CjM2Thxu.js";var k={class:`dl-diff__out`},A={class:`dl-diff__note`},j=m(d({__name:`DiffusionLab`,props:{reverse:{type:Boolean,default:!1},field:{type:Boolean,default:!1}},setup(d){let{$slidev:m,$nav:j,$clicksContext:M,$clicks:N,$page:P,$renderContext:F,$frontmatter:I}=h(),L=d,{alphaBar:R,steps:z}=S(),B=c(L.reverse?`reverse`:`forward`),V=c(L.field),H=c(L.reverse?z-1:0),U=w(20),W=(()=>{let e=v(31337);return U.map(()=>({x:e(),y:e()}))})(),G=o(()=>R.map(e=>U.map((t,n)=>x(t,e,W[n])))),K=o(()=>{let e=Array(z),t=g(20);e[z-1]=t;for(let n=z-1;n>0;n--)t=t.map(e=>b(e,R[n],R[n-1])),e[n-1]=t;return e}),q=o(()=>(B.value===`forward`?G.value:K.value)[H.value]),J=o(()=>R[H.value]),Y=o(()=>{if(!V.value)return[];let e=[],t=.6;for(let n=-3;n<=3;n+=1.5)for(let r=-2;r<=2;r+=1.33){let i=C({x:n,y:r},J.value),a=Math.hypot(i.x,i.y);a<1e-9||e.push({from:[n,r],to:[n+i.x/a*t,r+i.y/a*t]})}return e});function X(e){H.value=Math.min(Math.max(e,0),z-1)}return(o,c)=>{let d=O,m=E,h=T,g=D,v=_,b=y;return p(),l(b,{"max-width":`44rem`},{controls:e(()=>[t(g,{modelValue:H.value,"onUpdate:modelValue":c[0]||=e=>H.value=e,label:B.value===`forward`?`noise level t`:`sampling step t`,min:0,max:u(z)-1,step:1,precision:0},null,8,[`modelValue`,`label`,`max`]),t(v,{label:B.value===`forward`?`forward — add noise`:`reverse — remove it`,variant:`ghost`,glyph:`⇄`,onClick:c[1]||=e=>B.value=B.value===`forward`?`reverse`:`forward`},null,8,[`label`]),t(v,{label:`t = 0`,variant:`ghost`,onClick:c[2]||=e=>X(0)}),t(v,{label:`t = ${u(z)-1}`,variant:`ghost`,onClick:c[3]||=e=>X(u(z)-1)},null,8,[`label`]),t(v,{label:V.value?`hide the field`:`show the field`,variant:`ghost`,onClick:c[4]||=e=>V.value=!V.value},null,8,[`label`])]),readout:e(()=>[i(`div`,k,[i(`span`,null,[c[5]||=f(`t = `,-1),i(`b`,null,n(H.value),1),f(` of `+n(u(z)-1),1)]),i(`span`,null,[c[6]||=f(`√ᾱ`,-1),c[7]||=i(`sub`,null,`t`,-1),c[8]||=f(` = `,-1),i(`b`,null,n(Math.sqrt(J.value).toFixed(3)),1),c[9]||=f(` of the image`,-1)]),i(`span`,null,[c[10]||=f(`√(1−ᾱ`,-1),c[11]||=i(`sub`,null,`t`,-1),c[12]||=f(`) = `,-1),i(`b`,null,n(Math.sqrt(1-J.value).toFixed(3)),1),c[13]||=f(` of noise`,-1)]),i(`span`,A,n(B.value===`forward`?`every frame computed from x₀ in one step — no chain simulated`:`each frame needs the one before it — this is why sampling is slow`),1)])]),default:e(()=>[t(h,{"x-domain":[-4,4],"y-domain":[-2.8,2.8],width:470,height:252,"x-ticks":[-4,-2,0,2,4],"y-ticks":[-2,0,2]},{default:e(()=>[(p(!0),a(s,null,r(Y.value,(e,t)=>(p(),l(d,{key:`a${t}`,from:e.from,to:e.to,color:`var(--dl-muted)`,width:1.2,opacity:.55,arrow:``},null,8,[`from`,`to`]))),128)),t(m,{points:q.value,radius:4.2,color:`var(--dl-accent)`},null,8,[`points`])]),_:1})]),_:1})}}}),[[`__scopeId`,`data-v-22c227ee`]]);export{j as t}; \ No newline at end of file diff --git a/lecture-07/assets/DrawingControls-Dhbx0szf.css b/lecture-07/assets/DrawingControls-Dhbx0szf.css new file mode 100644 index 0000000000000000000000000000000000000000..85375579327c847940a8710fedd96a5b987c16c1 --- /dev/null +++ b/lecture-07/assets/DrawingControls-Dhbx0szf.css @@ -0,0 +1 @@ +.v-popper--theme-dropdown .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/lecture-07/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 b/lecture-07/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..0acaaff03d4bb7606de02a827aeee338e5a86910 Binary files /dev/null and b/lecture-07/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 differ diff --git a/lecture-07/assets/KaTeX_AMS-Regular-DMm9YOAa.woff b/lecture-07/assets/KaTeX_AMS-Regular-DMm9YOAa.woff new file mode 100644 index 0000000000000000000000000000000000000000..b804d7b33a3fa5b2587d2d1d55006aed678e3eb2 Binary files /dev/null and b/lecture-07/assets/KaTeX_AMS-Regular-DMm9YOAa.woff differ diff --git a/lecture-07/assets/KaTeX_AMS-Regular-DRggAlZN.ttf b/lecture-07/assets/KaTeX_AMS-Regular-DRggAlZN.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c6f9a5e7c03f9e64e9c7b4773a8e37ade8eaf406 Binary files /dev/null and b/lecture-07/assets/KaTeX_AMS-Regular-DRggAlZN.ttf differ diff --git a/lecture-07/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf b/lecture-07/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9ff4a5e04421e5107f74c28e27354e0b2a4e7ef8 Binary files /dev/null and b/lecture-07/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf differ diff --git a/lecture-07/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff b/lecture-07/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff new file mode 100644 index 0000000000000000000000000000000000000000..9759710d1d3e16eb10012d56babb73f2479ba9f0 Binary files /dev/null and b/lecture-07/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff differ diff --git a/lecture-07/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 b/lecture-07/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..f390922eceffe1f6dfb81a3dc086a92d98171b02 Binary files /dev/null and b/lecture-07/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 differ diff --git a/lecture-07/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff b/lecture-07/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff new file mode 100644 index 0000000000000000000000000000000000000000..9bdd534fd2beb9b878f0219da9d63ffba56677e2 Binary files /dev/null and b/lecture-07/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff differ diff --git a/lecture-07/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 b/lecture-07/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..75344a1f98e37e2c631e178065854c3a81fb842f Binary files /dev/null and b/lecture-07/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 differ diff --git a/lecture-07/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf b/lecture-07/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f522294ff0f3f8c52dfdaef7ebfaa06ebfcfaabf Binary files /dev/null and b/lecture-07/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf differ diff --git a/lecture-07/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf b/lecture-07/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4e98259c3b54076d684bf3459baeaeae8dbce97a Binary files /dev/null and b/lecture-07/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf differ diff --git a/lecture-07/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff b/lecture-07/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff new file mode 100644 index 0000000000000000000000000000000000000000..e7730f66275c87c28f26530d89264cffecf90be0 Binary files /dev/null and b/lecture-07/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff differ diff --git a/lecture-07/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 b/lecture-07/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..395f28beac23c7b0f7f3a1e714bd8dac253dd3bc Binary files /dev/null and b/lecture-07/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 differ diff --git a/lecture-07/assets/KaTeX_Fraktur-Regular-CB_wures.ttf b/lecture-07/assets/KaTeX_Fraktur-Regular-CB_wures.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b8461b275fae76efd0d21fd0f1aaa696a5b10f9a Binary files /dev/null and b/lecture-07/assets/KaTeX_Fraktur-Regular-CB_wures.ttf differ diff --git a/lecture-07/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 b/lecture-07/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..735f6948d63c8cc7f8233735bb9c8d843c83d804 Binary files /dev/null and b/lecture-07/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 differ diff --git a/lecture-07/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff b/lecture-07/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff new file mode 100644 index 0000000000000000000000000000000000000000..acab069f90b6fe6301a004e6f8beaf6a0db48bce Binary files /dev/null and b/lecture-07/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff differ diff --git a/lecture-07/assets/KaTeX_Main-Bold-Cx986IdX.woff2 b/lecture-07/assets/KaTeX_Main-Bold-Cx986IdX.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ab2ad21da6fbe6c171bb869240954d0ead8f68fd Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Bold-Cx986IdX.woff2 differ diff --git a/lecture-07/assets/KaTeX_Main-Bold-Jm3AIy58.woff b/lecture-07/assets/KaTeX_Main-Bold-Jm3AIy58.woff new file mode 100644 index 0000000000000000000000000000000000000000..f38136ac1cc2dcdc9d9b10b8521487468b1f768c Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Bold-Jm3AIy58.woff differ diff --git a/lecture-07/assets/KaTeX_Main-Bold-waoOVXN0.ttf b/lecture-07/assets/KaTeX_Main-Bold-waoOVXN0.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4060e627dc341c1854260cbc3f7386e222a4d297 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Bold-waoOVXN0.ttf differ diff --git a/lecture-07/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 b/lecture-07/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..5931794de4a2a485fa70099bf2659b145976d043 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 differ diff --git a/lecture-07/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf b/lecture-07/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dc007977ee709a236d9e82719cf7d4e5577a81b9 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf differ diff --git a/lecture-07/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff b/lecture-07/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff new file mode 100644 index 0000000000000000000000000000000000000000..67807b0bd4f867853271f5917fb3adf377f93f53 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff differ diff --git a/lecture-07/assets/KaTeX_Main-Italic-3WenGoN9.ttf b/lecture-07/assets/KaTeX_Main-Italic-3WenGoN9.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0e9b0f354ad460202bba554359f5adcc8da666b7 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Italic-3WenGoN9.ttf differ diff --git a/lecture-07/assets/KaTeX_Main-Italic-BMLOBm91.woff b/lecture-07/assets/KaTeX_Main-Italic-BMLOBm91.woff new file mode 100644 index 0000000000000000000000000000000000000000..6f43b594b6c1d863a0e3f93b001f8dd503316464 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Italic-BMLOBm91.woff differ diff --git a/lecture-07/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 b/lecture-07/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b50920e138807f385d0b0359f4f0f09891f18406 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 differ diff --git a/lecture-07/assets/KaTeX_Main-Regular-B22Nviop.woff2 b/lecture-07/assets/KaTeX_Main-Regular-B22Nviop.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..eb24a7ba282b03d830fa6c63ee897d92a5188736 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Regular-B22Nviop.woff2 differ diff --git a/lecture-07/assets/KaTeX_Main-Regular-Dr94JaBh.woff b/lecture-07/assets/KaTeX_Main-Regular-Dr94JaBh.woff new file mode 100644 index 0000000000000000000000000000000000000000..21f5812968c42392a3eaea9b0c6320870b6b8b38 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Regular-Dr94JaBh.woff differ diff --git a/lecture-07/assets/KaTeX_Main-Regular-ypZvNtVU.ttf b/lecture-07/assets/KaTeX_Main-Regular-ypZvNtVU.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dd45e1ed2e18b32c516d9b481ebed3cb8bffa711 Binary files /dev/null and b/lecture-07/assets/KaTeX_Main-Regular-ypZvNtVU.ttf differ diff --git a/lecture-07/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf b/lecture-07/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf new file mode 100644 index 0000000000000000000000000000000000000000..728ce7a1e2cb689df32c3a6c26e1bd072dcf2acb Binary files /dev/null and b/lecture-07/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf differ diff --git a/lecture-07/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 b/lecture-07/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..29657023adc09956249f6295746c8ce4469b50d3 Binary files /dev/null and b/lecture-07/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 differ diff --git a/lecture-07/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff b/lecture-07/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff new file mode 100644 index 0000000000000000000000000000000000000000..0ae390d74c9f665cf8b1e5ea5483395da7513444 Binary files /dev/null and b/lecture-07/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff differ diff --git a/lecture-07/assets/KaTeX_Math-Italic-DA0__PXp.woff b/lecture-07/assets/KaTeX_Math-Italic-DA0__PXp.woff new file mode 100644 index 0000000000000000000000000000000000000000..eb5159d4c1ca83fb92b3190223698427df0e010c Binary files /dev/null and b/lecture-07/assets/KaTeX_Math-Italic-DA0__PXp.woff differ diff --git a/lecture-07/assets/KaTeX_Math-Italic-flOr_0UB.ttf b/lecture-07/assets/KaTeX_Math-Italic-flOr_0UB.ttf new file mode 100644 index 0000000000000000000000000000000000000000..70d559b4e937ca1b805eb39f544cbebe3c58ca6f Binary files /dev/null and b/lecture-07/assets/KaTeX_Math-Italic-flOr_0UB.ttf differ diff --git a/lecture-07/assets/KaTeX_Math-Italic-t53AETM-.woff2 b/lecture-07/assets/KaTeX_Math-Italic-t53AETM-.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..215c143fd7805a5c2b222bd7892a1a2b09610020 Binary files /dev/null and b/lecture-07/assets/KaTeX_Math-Italic-t53AETM-.woff2 differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf b/lecture-07/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2f65a8a3a6d3628d11ea9c26c9077cef672fe427 Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 b/lecture-07/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..cfaa3bda59246b49e94298478d6de3b3208066c8 Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff b/lecture-07/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff new file mode 100644 index 0000000000000000000000000000000000000000..8d47c02d9408d34b2a9d566c0fe0d42bf82fb735 Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 b/lecture-07/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..349c06dc609f896392fd5bc8b364d3bc3efc9330 Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff b/lecture-07/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff new file mode 100644 index 0000000000000000000000000000000000000000..7e02df963621a5e26d53d510f0b4992eebde1c60 Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf b/lecture-07/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d5850df98ec19de2eee9ff922ef59586efe471d0 Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf b/lecture-07/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf new file mode 100644 index 0000000000000000000000000000000000000000..537279f6bd2184ed32f1a5168850609147d58ee6 Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff b/lecture-07/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff new file mode 100644 index 0000000000000000000000000000000000000000..31b84829b42edae20d0148eeec0d922dad2108c4 Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff differ diff --git a/lecture-07/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 b/lecture-07/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a90eea85f6f7bded69ff5d40114447a6d8b48cfe Binary files /dev/null and b/lecture-07/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 differ diff --git a/lecture-07/assets/KaTeX_Script-Regular-C5JkGWo-.ttf b/lecture-07/assets/KaTeX_Script-Regular-C5JkGWo-.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fd679bf374af72f2a183b97b40c9c7e9e51fbe5e Binary files /dev/null and b/lecture-07/assets/KaTeX_Script-Regular-C5JkGWo-.ttf differ diff --git a/lecture-07/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 b/lecture-07/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b3048fc115681ee6c1bc86b0aa158cfbbf59daa3 Binary files /dev/null and b/lecture-07/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 differ diff --git a/lecture-07/assets/KaTeX_Script-Regular-D5yQViql.woff b/lecture-07/assets/KaTeX_Script-Regular-D5yQViql.woff new file mode 100644 index 0000000000000000000000000000000000000000..0e7da821eee0dd05a0a6f0b16c2c1345dc573a84 Binary files /dev/null and b/lecture-07/assets/KaTeX_Script-Regular-D5yQViql.woff differ diff --git a/lecture-07/assets/KaTeX_Size1-Regular-C195tn64.woff b/lecture-07/assets/KaTeX_Size1-Regular-C195tn64.woff new file mode 100644 index 0000000000000000000000000000000000000000..7f292d91184f257054ef77cc1cd3443db757c9cc Binary files /dev/null and b/lecture-07/assets/KaTeX_Size1-Regular-C195tn64.woff differ diff --git a/lecture-07/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf b/lecture-07/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf new file mode 100644 index 0000000000000000000000000000000000000000..871fd7d19d8658f64d8696ed9cdfc82c821ed76d Binary files /dev/null and b/lecture-07/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf differ diff --git a/lecture-07/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 b/lecture-07/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..c5a8462fbfe2c39a7c1857b9e296e62500a8a8a5 Binary files /dev/null and b/lecture-07/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 differ diff --git a/lecture-07/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf b/lecture-07/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf new file mode 100644 index 0000000000000000000000000000000000000000..7a212caf91c0007e826fee2d622bf48acbd30dde Binary files /dev/null and b/lecture-07/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf differ diff --git a/lecture-07/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 b/lecture-07/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e1bccfe2403a4ed770c1697ae7c15b9e1cd9bc4e Binary files /dev/null and b/lecture-07/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 differ diff --git a/lecture-07/assets/KaTeX_Size2-Regular-oD1tc_U0.woff b/lecture-07/assets/KaTeX_Size2-Regular-oD1tc_U0.woff new file mode 100644 index 0000000000000000000000000000000000000000..d241d9be2d317f7b39b401d96c8b18836acea0fa Binary files /dev/null and b/lecture-07/assets/KaTeX_Size2-Regular-oD1tc_U0.woff differ diff --git a/lecture-07/assets/KaTeX_Size3-Regular-CTq5MqoE.woff b/lecture-07/assets/KaTeX_Size3-Regular-CTq5MqoE.woff new file mode 100644 index 0000000000000000000000000000000000000000..e6e9b658dcf1cd031ac82b6b8f312444c55d4fc0 Binary files /dev/null and b/lecture-07/assets/KaTeX_Size3-Regular-CTq5MqoE.woff differ diff --git a/lecture-07/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf b/lecture-07/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf new file mode 100644 index 0000000000000000000000000000000000000000..00bff3495fa9d2f98c1c9ce436add6a1bcfe87fb Binary files /dev/null and b/lecture-07/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf differ diff --git a/lecture-07/assets/KaTeX_Size4-Regular-BF-4gkZK.woff b/lecture-07/assets/KaTeX_Size4-Regular-BF-4gkZK.woff new file mode 100644 index 0000000000000000000000000000000000000000..e1ec5457664f438ce5a1cc6dd8409bf60ca7804b Binary files /dev/null and b/lecture-07/assets/KaTeX_Size4-Regular-BF-4gkZK.woff differ diff --git a/lecture-07/assets/KaTeX_Size4-Regular-DWFBv043.ttf b/lecture-07/assets/KaTeX_Size4-Regular-DWFBv043.ttf new file mode 100644 index 0000000000000000000000000000000000000000..74f08921f00f71f413ca42c9d1c90202e672ef38 Binary files /dev/null and b/lecture-07/assets/KaTeX_Size4-Regular-DWFBv043.ttf differ diff --git a/lecture-07/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 b/lecture-07/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..680c13085076a2f6c5a7e695935ec3f21cddb65f Binary files /dev/null and b/lecture-07/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 differ diff --git a/lecture-07/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff b/lecture-07/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff new file mode 100644 index 0000000000000000000000000000000000000000..2432419f28936aff53ddfa2a732d027e6a6648fd Binary files /dev/null and b/lecture-07/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff differ diff --git a/lecture-07/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 b/lecture-07/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..771f1af705f5cef5f578b3a1e7d8eff66f9b76b0 Binary files /dev/null and b/lecture-07/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 differ diff --git a/lecture-07/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf b/lecture-07/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c83252c5714c71a3e0ec62195884167339a0129b Binary files /dev/null and b/lecture-07/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf differ diff --git a/lecture-07/assets/LinkCard-C5341yCL.js b/lecture-07/assets/LinkCard-C5341yCL.js new file mode 100644 index 0000000000000000000000000000000000000000..bf615b28df9caeaa05d55345296a41a50666a21d --- /dev/null +++ b/lecture-07/assets/LinkCard-C5341yCL.js @@ -0,0 +1 @@ +import{St as e,_ as t,b as n,vt as r,w as i,y as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{t as s}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as c}from"./slidev/context-DnYiQGy6.js";var l=[`href`],u={key:0,class:`dl-linkcard__icon`},d={class:`dl-linkcard__text`},f={class:`dl-linkcard__title`},p={key:0,class:`dl-linkcard__blurb`},m={class:`dl-linkcard__host`},h=s(i({__name:`LinkCard`,props:{href:{},title:{},blurb:{},icon:{}},setup(i){let{$slidev:s,$nav:h,$clicksContext:g,$clicks:_,$page:v,$renderContext:y,$frontmatter:b}=c(),x=i,S=x.href.replace(/^https?:\/\//,``).replace(/\/.*$/,``);return(i,s)=>(o(),n(`a`,{class:`dl-linkcard`,href:x.href,target:`_blank`,rel:`noopener`},[x.icon?(o(),n(`div`,u,e(x.icon),1)):a(`v-if`,!0),t(`div`,d,[t(`div`,f,e(x.title),1),x.blurb?(o(),n(`div`,p,e(x.blurb),1)):a(`v-if`,!0),t(`div`,m,e(r(S)),1)])],8,l))}}),[[`__scopeId`,`data-v-77ab5d10`]]);export{h as t}; \ No newline at end of file diff --git a/lecture-07/assets/LinkCard-DhZ23yU-.css b/lecture-07/assets/LinkCard-DhZ23yU-.css new file mode 100644 index 0000000000000000000000000000000000000000..4fa42dfcec45a8be26c0e45f16c3ef5f119f4d31 --- /dev/null +++ b/lecture-07/assets/LinkCard-DhZ23yU-.css @@ -0,0 +1 @@ +.dl-linkcard[data-v-77ab5d10]{border:1px solid var(--dl-border);border-left:3px solid var(--dl-accent);background:var(--dl-surface);border-radius:8px;align-items:flex-start;gap:.85rem;padding:.9rem 1rem;text-decoration:none;transition:transform .15s,border-color .15s;display:flex}.dl-linkcard[data-v-77ab5d10]:hover{border-color:var(--dl-accent);transform:translateY(-2px)}.dl-linkcard__icon[data-v-77ab5d10]{font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Twemoji Mozilla,sans-serif;font-size:1.6rem;line-height:1}.dl-linkcard__text[data-v-77ab5d10]{min-width:0}.dl-linkcard__title[data-v-77ab5d10]{color:var(--dl-heading);font-size:1.05rem;font-weight:600}.dl-linkcard__blurb[data-v-77ab5d10]{color:var(--dl-body);margin-top:.15rem;font-size:.9rem}.dl-linkcard__host[data-v-77ab5d10]{color:var(--dl-accent);margin-top:.3rem;font-size:.78rem} diff --git a/lecture-07/assets/NoteDisplay-DCBzjb4F.css b/lecture-07/assets/NoteDisplay-DCBzjb4F.css new file mode 100644 index 0000000000000000000000000000000000000000..249a685ef5ff9168a0e2385b2e0bb8802f138a28 --- /dev/null +++ b/lecture-07/assets/NoteDisplay-DCBzjb4F.css @@ -0,0 +1 @@ +.slidev-note :first-child{margin-top:0}.slidev-note{overflow-wrap:anywhere;word-break:break-word} diff --git a/lecture-07/assets/Plot2D-C9URVmMB.js b/lecture-07/assets/Plot2D-C9URVmMB.js new file mode 100644 index 0000000000000000000000000000000000000000..24921e31c2f73ac417d37664c4981de455b72026 --- /dev/null +++ b/lecture-07/assets/Plot2D-C9URVmMB.js @@ -0,0 +1,10 @@ +import{B as e,H as t,K as n,St as r,V as i,_ as a,b as o,g as s,ht as c,k as l,m as u,ut as d,vt as f,w as p,y as m,z as h}from"./modules/shiki-CkJq9tSf.js";import{t as g}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as _}from"./slidev/context-DnYiQGy6.js";var v=Symbol(`dl-plot`);function y(){let e=l(v,null);if(!e)throw Error(`This component must be used inside a `);return e}function b(e,t,n=6){if(!Number.isFinite(e)||!Number.isFinite(t)||e===t)return[e];let r=(t-e)/Math.max(n,1),i=10**Math.floor(Math.log10(r)),a=r/i,o=(a>=5?10:a>=2?5:a>=1?2:1)*i,s=[],c=Math.ceil(e/o)*o;for(let e=c;e<=t+o*1e-9;e+=o)s.push(Math.abs(e)=1e5||t<1e-4?e.toExponential(0):String(Number(e.toFixed(6)))}var S=[`viewBox`],C={key:0,class:`dl-plot__grid`},w=[`x1`,`x2`,`y1`,`y2`],T=[`x1`,`x2`,`y1`,`y2`],E={class:`dl-plot__axes`},D=[`x1`,`x2`,`y1`,`y2`],O=[`x1`,`x2`,`y1`,`y2`],k={class:`dl-plot__ticks`},A=[`x1`,`x2`,`y1`,`y2`],j=[`x`,`y`],M=[`x1`,`x2`,`y1`,`y2`],N=[`x`,`y`],P=[`x`,`y`,`width`,`height`],F=[`clip-path`],I=[`x`,`y`],L=[`x`],R=g(p({__name:`Plot2D`,props:{xDomain:{default:()=>[0,1]},yDomain:{default:()=>[0,1]},width:{default:520},height:{default:320},xLabel:{},yLabel:{},xTicks:{default:6},yTicks:{default:5},grid:{type:Boolean,default:!0},originAxes:{type:Boolean,default:!1},padding:{}},setup(l,{expose:p}){let{$slidev:g,$nav:y,$clicksContext:R,$clicks:z,$page:ee,$renderContext:te,$frontmatter:ne}=_(),B=l,V=s(()=>({top:B.padding?.top??14,right:B.padding?.right??16,bottom:B.padding?.bottom??(B.xLabel?42:28),left:B.padding?.left??(B.yLabel?52:40)})),H=s(()=>({x:V.value.left,y:V.value.top,width:Math.max(B.width-V.value.left-V.value.right,1),height:Math.max(B.height-V.value.top-V.value.bottom,1)})),U=e=>{let[t,n]=B.xDomain;return H.value.x+(e-t)/(n-t||1)*H.value.width},W=e=>{let[t,n]=B.yDomain;return H.value.y+(1-(e-t)/(n-t||1))*H.value.height},G=e=>{let[t,n]=B.xDomain;return t+(e-H.value.x)/H.value.width*(n-t)},K=e=>{let[t,n]=B.yDomain;return t+(1-(e-H.value.y)/H.value.height)*(n-t)};e(v,{sx:U,sy:W,ix:G,iy:K,xDomain:c(B,`xDomain`),yDomain:c(B,`yDomain`),inner:H});let q=s(()=>Array.isArray(B.xTicks)?B.xTicks:b(B.xDomain[0],B.xDomain[1],B.xTicks)),J=s(()=>Array.isArray(B.yTicks)?B.yTicks:b(B.yDomain[0],B.yDomain[1],B.yTicks)),Y=s(()=>B.originAxes?W(Math.min(Math.max(0,B.yDomain[0]),B.yDomain[1])):H.value.y+H.value.height),X=s(()=>B.originAxes?U(Math.min(Math.max(0,B.xDomain[0]),B.xDomain[1])):H.value.x),Z=d(null),Q=`dl-plot-clip-${n()}`;function $(e){let t=Z.value;if(!t)return null;let n=t.getBoundingClientRect(),r=(e.clientX-n.left)/n.width*B.width,i=(e.clientY-n.top)/n.height*B.height;return{x:G(r),y:K(i)}}return p({dataAt:$,sx:U,sy:W,ix:G,iy:K}),(e,n)=>(h(),o(`svg`,{ref_key:`svg`,ref:Z,class:`dl-plot`,viewBox:`0 0 ${B.width} ${B.height}`,preserveAspectRatio:`xMidYMid meet`,role:`img`},[B.grid?(h(),o(`g`,C,[(h(!0),o(u,null,i(q.value,e=>(h(),o(`line`,{key:`gx${e}`,x1:U(e),x2:U(e),y1:H.value.y,y2:H.value.y+H.value.height},null,8,w))),128)),(h(!0),o(u,null,i(J.value,e=>(h(),o(`line`,{key:`gy${e}`,x1:H.value.x,x2:H.value.x+H.value.width,y1:W(e),y2:W(e)},null,8,T))),128))])):m(`v-if`,!0),a(`g`,E,[a(`line`,{x1:H.value.x,x2:H.value.x+H.value.width,y1:Y.value,y2:Y.value},null,8,D),a(`line`,{x1:X.value,x2:X.value,y1:H.value.y,y2:H.value.y+H.value.height},null,8,O)]),m(` + Tick *marks* sit on the axis, which may run through the origin; tick + *labels* always sit on the frame edge. Letting labels follow a + through-origin axis buries them in the middle of the data and collides the + two zeros on top of each other. + `),a(`g`,k,[(h(!0),o(u,null,i(q.value,e=>(h(),o(u,{key:`tx${e}`},[a(`line`,{x1:U(e),x2:U(e),y1:Y.value,y2:Y.value+5},null,8,A),a(`text`,{x:U(e),y:H.value.y+H.value.height+17,"text-anchor":`middle`},r(f(x)(e)),9,j)],64))),128)),(h(!0),o(u,null,i(J.value,e=>(h(),o(u,{key:`ty${e}`},[a(`line`,{x1:X.value-5,x2:X.value,y1:W(e),y2:W(e)},null,8,M),a(`text`,{x:H.value.x-9,y:W(e)+4,"text-anchor":`end`},r(f(x)(e)),9,N)],64))),128))]),m(` + Marks are clipped to the plot area. A decision boundary or a diverging + trajectory legitimately runs off the domain, and without this it paints + straight across the rest of the slide. + `),a(`defs`,null,[a(`clipPath`,{id:Q},[a(`rect`,{x:H.value.x,y:H.value.y,width:H.value.width,height:H.value.height},null,8,P)])]),a(`g`,{"clip-path":`url(#${Q})`},[t(e.$slots,`default`,{},void 0,!0)],8,F),m(` Annotations that are allowed to sit outside the axes. `),t(e.$slots,`overlay`,{},void 0,!0),B.xLabel?(h(),o(`text`,{key:1,class:`dl-plot__label`,x:H.value.x+H.value.width/2,y:B.height-6,"text-anchor":`middle`},r(B.xLabel),9,I)):m(`v-if`,!0),B.yLabel?(h(),o(`text`,{key:2,class:`dl-plot__label`,x:-(H.value.y+H.value.height/2),y:13,"text-anchor":`middle`,transform:`rotate(-90)`},r(B.yLabel),9,L)):m(`v-if`,!0)],8,S))}}),[[`__scopeId`,`data-v-515e2759`]]);export{y as n,R as t}; \ No newline at end of file diff --git a/lecture-07/assets/Plot2D-PnRWAKXa.css b/lecture-07/assets/Plot2D-PnRWAKXa.css new file mode 100644 index 0000000000000000000000000000000000000000..6866d7862bae995baa107d646843832f738f1af2 --- /dev/null +++ b/lecture-07/assets/Plot2D-PnRWAKXa.css @@ -0,0 +1 @@ +.dl-plot[data-v-515e2759]{width:100%;height:100%;font-family:inherit;overflow:visible}.dl-plot__grid line[data-v-515e2759]{stroke:var(--dl-border);stroke-width:1px}.dl-plot__axes line[data-v-515e2759]{stroke:var(--dl-muted);stroke-width:1.5px}.dl-plot__ticks line[data-v-515e2759]{stroke:var(--dl-muted);stroke-width:1px}.dl-plot__ticks text[data-v-515e2759]{fill:var(--dl-muted);font-variant-numeric:tabular-nums;font-size:11px}.dl-plot__label[data-v-515e2759]{fill:var(--dl-body);font-size:12px} diff --git a/lecture-07/assets/PlotCurve-CJaWe74-.js b/lecture-07/assets/PlotCurve-CJaWe74-.js new file mode 100644 index 0000000000000000000000000000000000000000..8d42bb2943f7fafa35fdb2d9bf80c478b1d16f2b --- /dev/null +++ b/lecture-07/assets/PlotCurve-CJaWe74-.js @@ -0,0 +1 @@ +import{V as e,b as t,g as n,m as r,w as i,xt as a,y as o,z as s}from"./modules/shiki-CkJq9tSf.js";import{n as c}from"./slidev/context-DnYiQGy6.js";import{n as l}from"./Plot2D-C9URVmMB.js";var u={class:`dl-curve`},d=[`d`,`fill`],f=[`d`,`stroke`,`stroke-width`,`stroke-dasharray`],p=i({__name:`PlotCurve`,props:{fn:{},points:{},samples:{default:160},color:{},width:{default:2.5},dashed:{type:Boolean,default:!1},fillTo:{},opacity:{default:1}},setup(i){let{$slidev:p,$nav:m,$clicksContext:h,$clicks:g,$page:_,$renderContext:v,$frontmatter:y}=c(),b=i,x=l(),S=n(()=>{if(b.points)return b.points.map(e=>Array.isArray(e)?{x:e[0],y:e[1]}:e);if(!b.fn)return[];let[e,t]=x.xDomain.value,n=Math.max(b.samples,2),r=[];for(let i=0;i{let[e,t]=x.yDomain.value,n=(t-e)*4,r=[],i=[];for(let a of S.value){if(!(Number.isFinite(a.y)&&a.y>e-n&&a.y1&&r.push(i.join(` `)),i=[];continue}i.push(`${i.length?`L`:`M`}${x.sx(a.x).toFixed(2)},${x.sy(a.y).toFixed(2)}`)}return i.length>1&&r.push(i.join(` `)),r}),w=n(()=>{if(b.fillTo===void 0||!S.value.length)return null;let[e,t]=x.yDomain.value,n=S.value.filter(e=>Number.isFinite(e.y));if(n.length<2)return null;let r=n=>Math.min(Math.max(n,e),t),i=n.map((e,t)=>`${t?`L`:`M`}${x.sx(e.x).toFixed(2)},${x.sy(r(e.y)).toFixed(2)}`).join(` `),a=x.sy(r(b.fillTo)).toFixed(2);return`${i} L${x.sx(n[n.length-1].x).toFixed(2)},${a} L${x.sx(n[0].x).toFixed(2)},${a} Z`});return(n,i)=>(s(),t(`g`,u,[w.value?(s(),t(`path`,{key:0,d:w.value,fill:b.color??`var(--dl-accent)`,style:a({opacity:.12*b.opacity}),stroke:`none`},null,12,d)):o(`v-if`,!0),(s(!0),t(r,null,e(C.value,(e,n)=>(s(),t(`path`,{key:n,d:e,fill:`none`,stroke:b.color??`var(--dl-accent)`,"stroke-width":b.width,"stroke-dasharray":b.dashed?`6 5`:void 0,style:a({opacity:b.opacity}),"stroke-linecap":`round`,"stroke-linejoin":`round`},null,12,f))),128))]))}});export{p as t}; \ No newline at end of file diff --git a/lecture-07/assets/PlotLabel-BilrlAqg.js b/lecture-07/assets/PlotLabel-BilrlAqg.js new file mode 100644 index 0000000000000000000000000000000000000000..64afc508bcbe6dc341d5b3b27538b644c9b4c724 --- /dev/null +++ b/lecture-07/assets/PlotLabel-BilrlAqg.js @@ -0,0 +1 @@ +import{H as e,St as t,_ as n,b as r,g as i,w as a,x as o,y as s,z as c}from"./modules/shiki-CkJq9tSf.js";import{n as l}from"./slidev/context-DnYiQGy6.js";import{n as u}from"./Plot2D-C9URVmMB.js";var d={class:`dl-plot-label`},f=[`x1`,`y1`,`x2`,`y2`,`stroke`],p=[`x`,`y`,`text-anchor`,`fill`,`font-size`,`font-weight`],m=a({__name:`PlotLabel`,props:{at:{},text:{},dx:{default:8},dy:{default:-8},anchor:{default:`start`},color:{},size:{default:12},leader:{type:Boolean,default:!1},bold:{type:Boolean,default:!1}},setup(a){let{$slidev:m,$nav:h,$clicksContext:g,$clicks:_,$page:v,$renderContext:y,$frontmatter:b}=l(),x=a,S=u(),C=i(()=>({x:S.sx(x.at[0]),y:S.sy(x.at[1])})),w=i(()=>({x:C.value.x+x.dx,y:C.value.y+x.dy}));return(i,a)=>(c(),r(`g`,d,[x.leader?(c(),r(`line`,{key:0,x1:C.value.x,y1:C.value.y,x2:w.value.x-(x.anchor===`end`?-4:4),y2:w.value.y+3,stroke:x.color??`var(--dl-muted)`,"stroke-width":`1`},null,8,f)):s(`v-if`,!0),n(`text`,{x:w.value.x,y:w.value.y,"text-anchor":x.anchor,fill:x.color??`var(--dl-body)`,"font-size":x.size,"font-weight":x.bold?600:400},[e(i.$slots,`default`,{},()=>[o(t(x.text),1)])],8,p)]))}});export{m as t}; \ No newline at end of file diff --git a/lecture-07/assets/PlotLine-CjM2Thxu.js b/lecture-07/assets/PlotLine-CjM2Thxu.js new file mode 100644 index 0000000000000000000000000000000000000000..f100d3a41879a56ecb385dcb5677a095817f55d7 --- /dev/null +++ b/lecture-07/assets/PlotLine-CjM2Thxu.js @@ -0,0 +1 @@ +import{K as e,_ as t,b as n,g as r,w as i,xt as a,y as o,z as s}from"./modules/shiki-CkJq9tSf.js";import{n as c}from"./slidev/context-DnYiQGy6.js";import{n as l}from"./Plot2D-C9URVmMB.js";var u={key:0},d=[`fill`],f=[`x1`,`y1`,`x2`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`,`marker-end`],p=i({__name:`PlotLine`,props:{from:{},to:{},color:{},width:{default:2},dashed:{type:Boolean,default:!1},arrow:{type:Boolean,default:!1},opacity:{default:1}},setup(i){let{$slidev:p,$nav:m,$clicksContext:h,$clicks:g,$page:_,$renderContext:v,$frontmatter:y}=c(),b=i,x=l(),S=`dl-arrow-${e()}`,C=r(()=>({x:x.sx(b.from[0]),y:x.sy(b.from[1])})),w=r(()=>({x:x.sx(b.to[0]),y:x.sy(b.to[1])})),T=r(()=>b.color??`var(--dl-heading)`);return(e,r)=>(s(),n(`g`,{class:`dl-line`,style:a({opacity:b.opacity})},[b.arrow?(s(),n(`defs`,u,[t(`marker`,{id:S,markerWidth:`7`,markerHeight:`7`,refX:`6`,refY:`3.5`,orient:`auto`},[t(`path`,{d:`M0,0 L7,3.5 L0,7 Z`,fill:T.value},null,8,d)])])):o(`v-if`,!0),t(`line`,{x1:C.value.x,y1:C.value.y,x2:w.value.x,y2:w.value.y,stroke:T.value,"stroke-width":b.width,"stroke-dasharray":b.dashed?`6 5`:void 0,"marker-end":b.arrow?`url(#${S})`:void 0,"stroke-linecap":`round`},null,8,f)],4))}});export{p as t}; \ No newline at end of file diff --git a/lecture-07/assets/PlotPoints-CeOGnq0p.js b/lecture-07/assets/PlotPoints-CeOGnq0p.js new file mode 100644 index 0000000000000000000000000000000000000000..bb55077ad334b2561fe8e73cd7f2d82f113fb87b --- /dev/null +++ b/lecture-07/assets/PlotPoints-CeOGnq0p.js @@ -0,0 +1 @@ +import{St as e,V as t,_ as n,b as r,g as i,m as a,w as o,xt as s,y as c,yt as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{t as d}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as f}from"./slidev/context-DnYiQGy6.js";import{n as p}from"./Plot2D-C9URVmMB.js";var m={class:`dl-points`},h=[`cx`,`cy`,`r`,`fill`],g=[`d`,`fill`],_=[`x`,`y`],v=d(o({__name:`PlotPoints`,props:{points:{},radius:{default:5},color:{},colors:{},shapes:{},opacity:{default:1}},setup(o){let{$slidev:d,$nav:v,$clicksContext:y,$clicks:b,$page:x,$renderContext:S,$frontmatter:C}=f(),w=o,T=p(),E=i(()=>w.points.map((e,t)=>{let n=String(e.cls??``);return{i:t,cx:T.sx(e.x),cy:T.sy(e.y),shape:w.shapes?.[n]??`circle`,fill:w.colors?.[n]??w.color??`var(--dl-accent)`,highlight:!!e.highlight,label:e.label}}));function D(e,t,n){let r=n*.9;return`M${e-r},${t-r} h${r*2} v${r*2} h${-r*2} Z`}function O(e,t,n){let r=n*1.2;return`M${e},${t-r} L${e+r},${t+r*.8} L${e-r},${t+r*.8} Z`}return(i,o)=>(u(),r(a,null,[c('\n Opacity goes through `style`, never the SVG `opacity` attribute. UnoCSS\n attributify scans source text, so a literal `opacity="0.85"` anywhere in the\n project emits `[opacity~="0.85"]{opacity:0.0085}` — and that CSS rule beats\n the presentation attribute, silently rendering marks all but invisible.\n '),n(`g`,m,[(u(!0),r(a,null,t(E.value,t=>(u(),r(`g`,{key:t.i,style:s({opacity:w.opacity})},[t.shape===`circle`?(u(),r(`circle`,{key:0,cx:t.cx,cy:t.cy,r:w.radius,fill:t.fill,class:l({"is-highlight":t.highlight})},null,10,h)):(u(),r(`path`,{key:1,d:t.shape===`square`?D(t.cx,t.cy,w.radius):O(t.cx,t.cy,w.radius),fill:t.fill,class:l({"is-highlight":t.highlight})},null,10,g)),t.label?(u(),r(`text`,{key:2,x:t.cx+w.radius+4,y:t.cy+4},e(t.label),9,_)):c(`v-if`,!0)],4))),128))])],2112))}}),[[`__scopeId`,`data-v-c681d555`]]);export{v as t}; \ No newline at end of file diff --git a/lecture-07/assets/PlotPoints-CnDINubi.css b/lecture-07/assets/PlotPoints-CnDINubi.css new file mode 100644 index 0000000000000000000000000000000000000000..ef32ea6492ba6a7f870e25c73435123bc5954b2d --- /dev/null +++ b/lecture-07/assets/PlotPoints-CnDINubi.css @@ -0,0 +1 @@ +.dl-points .is-highlight[data-v-c681d555]{stroke:var(--dl-heading);stroke-width:2.5px;paint-order:stroke}.dl-points text[data-v-c681d555]{fill:var(--dl-body);font-size:11px} diff --git a/lecture-07/assets/PollSlide-C7CHIzYm.css b/lecture-07/assets/PollSlide-C7CHIzYm.css new file mode 100644 index 0000000000000000000000000000000000000000..b3093394de288c41a62676784455c5efe27b9a2b --- /dev/null +++ b/lecture-07/assets/PollSlide-C7CHIzYm.css @@ -0,0 +1 @@ +.dl-poll__question[data-v-743a908f]{color:var(--dl-heading);margin-bottom:1.1rem;font-size:1.7rem;font-weight:600}.dl-poll__item[data-v-743a908f]{font-size:var(--dl-fs-body);align-items:baseline;gap:.7rem;margin:.55rem 0;display:flex}.dl-poll__bullet[data-v-743a908f]{background:var(--dl-accent-soft);width:1.5rem;height:1.5rem;color:var(--dl-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:inline-flex} diff --git a/lecture-07/assets/PollSlide-Dmx53yj1.js b/lecture-07/assets/PollSlide-Dmx53yj1.js new file mode 100644 index 0000000000000000000000000000000000000000..74413844dda6d239373d04d19c97ea218bfafeca --- /dev/null +++ b/lecture-07/assets/PollSlide-Dmx53yj1.js @@ -0,0 +1 @@ +import{$ as e,S as t,St as n,V as r,_ as i,b as a,m as o,w as s,z as c}from"./modules/shiki-CkJq9tSf.js";import{t as l}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as u}from"./slidev/context-DnYiQGy6.js";import{t as d}from"./slidev/VClicks-C3WADcJq.js";var f={class:`dl-poll`},p={class:`dl-poll__question`},m=l(s({__name:`PollSlide`,props:{question:{},items:{}},setup(s){let{$slidev:l,$nav:m,$clicksContext:h,$clicks:g,$page:_,$renderContext:v,$frontmatter:y}=u(),b=s;return(s,l)=>{let u=d;return c(),a(`div`,f,[i(`div`,p,n(b.question),1),t(u,null,{default:e(()=>[(c(!0),a(o,null,r(b.items,e=>(c(),a(`div`,{key:e,class:`dl-poll__item`},[l[0]||=i(`span`,{class:`dl-poll__bullet`},`?`,-1),i(`span`,null,n(e),1)]))),128))]),_:1})])}}}),[[`__scopeId`,`data-v-743a908f`]]);export{m as t}; \ No newline at end of file diff --git a/lecture-07/assets/SlideWrapper-DkcAPxbl.js b/lecture-07/assets/SlideWrapper-DkcAPxbl.js new file mode 100644 index 0000000000000000000000000000000000000000..f376ced6bf39b5253262344fa0cf474ae5bb47a8 --- /dev/null +++ b/lecture-07/assets/SlideWrapper-DkcAPxbl.js @@ -0,0 +1 @@ +import{D as e,G as t,H as n,L as r,Q as i,R as a,S as o,X as s,Z as ee,_ as c,b as l,ct as u,g as d,ht as f,i as te,m as ne,ut as p,v as m,vt as h,w as g,xt as _,y as v,yt as y,z as b}from"./modules/shiki-CkJq9tSf.js";import{A as x,Q as S,X as C,Z as w,t as T,tt as E,z as D}from"./useNav-DOs7c9Ie.js";import{t as O}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{N as k,p as re}from"./modules/vue-Dz2ojcKF.js";import{_ as A,d as j,f as M,g as N,h as P,m as F,p as I,v as L}from"./slidev/context-DnYiQGy6.js";import{n as R,r as z,t as B}from"./syncState-BCmj5bTl.js";import{a as V,p as H}from"./index-DYEUBAok.js";import{t as U}from"./useDrawings-dMxKslDP.js";var W=[`innerHTML`],G=g({__name:`DrawingPreview`,props:{page:{}},setup(e){let{drawingState:t}=U();return(n,r)=>h(t)[e.page]?(b(),l(`svg`,{key:0,class:`w-full h-full absolute top-0 pointer-events-none`,innerHTML:h(t)[e.page]},null,8,W)):v(`v-if`,!0)}}),K=u({}),q=[],J=[];R(K,`$syncUp`,!0),R(K,`$syncDown`,!0),R(K,`$paused`,!1),R(K,`$onSet`,e=>q.push(e)),R(K,`$onPatch`,e=>J.push(e)),z(),R(K,`$patch`,async()=>!1);var Y=B(K,K,!0),X=window.navigator.userAgent.match(/Chrome\/(\d+)/)?.[1];X&&Number(X);var Z=window.navigator.userAgent.match(/Chrome\/(\d+)/)?.[1];Z&&Number(Z);var ie=new class{_screenshotSession=null;getSnapshot(e,t){let n=e+(t?`-dark`:`-light`),r=Y.state[n];if(!r)return;let i=D(e);if(i&&r?.revision===i?.meta.slide.revision)return r.image}async saveSnapshot(e,t,n){return!1}async startCapturing(e){return!1}},ae=[`id`],oe=[`id`],se={class:`slidev-slide-container w-full h-full relative`},ce=[`src`],Q=p(null),le=O(g({__name:`SlideContainer`,props:{width:{type:Number},meta:{default:()=>({})},isMain:{type:Boolean,default:!1},no:{type:Number,required:!1},useSnapshot:{type:Boolean,default:!1},contentStyle:{type:Object,default:()=>({})}},setup(e){let t=e,{isPrintMode:o}=T(),u=p(null),f=re(u),m=p(null),h=d(()=>t.width??f.width.value),g=d(()=>t.width?t.width/C.value:f.height.value),y=d(()=>x.value&&!o.value?+x.value:Math.min(h.value/S.value,g.value/w.value)),E=d(()=>({...t.contentStyle,height:`${w.value}px`,width:`${S.value}px`,"--slidev-slide-scale":y.value})),D=d(()=>t.width?{width:`${t.width}px`,height:`${t.width/C.value}px`}:{});if(t.isMain){let e=document.documentElement.style;ee(()=>e.setProperty(`--slidev-slide-scale`,y.value.toString())),a(()=>e.removeProperty(`--slidev-slide-scale`))}k(A,y),k(N,m),i(()=>{t.isMain&&(Q.value=m.value)}),r(()=>{s(()=>t.isMain&&y.value,()=>{te()})});let O=d(()=>{if(!(t.no==null||!t.useSnapshot))return ie.getSnapshot(t.no,H.value)});return(t,r)=>O.value?(b(),l(ne,{key:1},[v(` Image Snapshot `),c(`div`,se,[c(`img`,{src:O.value,class:`w-full h-full object-cover`,style:_(D.value)},null,12,ce),r[0]||=c(`div`,{absolute:``,"bottom-1":``,"right-1":``,"p0.5":``,"text-cyan:75":``,"bg-cyan:10":``,rounded:``,title:`Snapshot`},[c(`div`,{class:`i-carbon-camera`})],-1)])],2112)):(b(),l(`div`,{key:0,id:e.isMain?`slide-container`:void 0,ref_key:`container`,ref:u,class:`slidev-slide-container`,style:_(D.value)},[c(`div`,{id:e.isMain?`slide-content`:void 0,ref_key:`slideElement`,ref:m,class:`slidev-slide-content`,style:_(E.value)},[n(t.$slots,`default`,{},void 0,!0)],12,oe),n(t.$slots,`controls`,{},void 0,!0)],12,ae))}}),[[`__scopeId`,`data-v-0167a76e`]]),ue=Object.assign({}),de=Object.assign({}),fe=Object.assign({}),pe=Object.assign({}),me=Object.assign({}),he=Object.assign({}),ge=Object.assign({}),_e=Object.assign({}),ve=Object.assign({}),ye=Object.assign({}),be=Object.assign({}),$=Object.assign({}),xe=[Object.values(ue)[0],Object.values(de)[0],Object.values(fe)[0]].filter(Boolean),Se={render:()=>xe.map(t=>e(t))},Ce=[Object.values(pe)[0],Object.values(me)[0],Object.values(he)[0]].filter(Boolean),we={render:()=>Ce.map(t=>e(t))},Te=[Object.values(ge)[0],Object.values(_e)[0],Object.values(ve)[0]].filter(Boolean),Ee={render:()=>Te.map(t=>e(t))},De=[Object.values(ye)[0],Object.values(be)[0],Object.values($)[0]].filter(Boolean),Oe={render:()=>De.map(t=>e(t))},ke=[`data-slidev-no`,`lang`],Ae=O(g({__name:`SlideWrapper`,props:{clicksContext:{type:Object,required:!0},renderContext:{type:String,default:`slide`},route:{type:Object,required:!0}},setup(e){let n=e,r=d(()=>n.route.meta?.slide?.frontmatter.zoom??1);k(P,n.route),k(I,n.route.meta.slide.frontmatter),k(M,p(n.route.no)),k(F,p(n.renderContext)),k(j,f(n,`clicksContext`)),k(L,r);let i=d(()=>({"user-select":E.selectable?void 0:`none`,"--slidev-slide-zoom-scale":r.value===1?void 0:r.value}));return(r,a)=>(b(),l(`div`,{"data-slidev-no":n.route.no,class:y(h(V)(e.route,[`slide`,`presenter`].includes(n.renderContext)?``:`disable-view-transition`)),style:_(i.value),lang:n.route.meta.slide.frontmatter.lang},[o(h(Oe)),(b(),m(t(n.route.component))),o(h(Ee))],14,ke))}}),[[`__scopeId`,`data-v-a7136532`]]);export{Q as a,le as i,we as n,G as o,Se as r,Ae as t}; \ No newline at end of file diff --git a/lecture-07/assets/SlideWrapper-O3NT4xUm.css b/lecture-07/assets/SlideWrapper-O3NT4xUm.css new file mode 100644 index 0000000000000000000000000000000000000000..857655105369eb9c98106a4bee2d56e760a3cf75 --- /dev/null +++ b/lecture-07/assets/SlideWrapper-O3NT4xUm.css @@ -0,0 +1 @@ +.slidev-slide-container[data-v-0167a76e]{width:100%;height:100%;position:relative;overflow:hidden}.slidev-slide-content[data-v-0167a76e]{--slidev-slide-container-scale:var(--slidev-slide-scale);transform:translate(-50%, -50%) scale(var(--slidev-slide-scale));--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity));position:absolute;top:50%;left:50%;overflow:hidden}.dark .slidev-slide-content[data-v-0167a76e]{--un-bg-opacity:1;background-color:rgb(18 18 18/var(--un-bg-opacity))}.disable-view-transition[data-v-a7136532] *{view-transition-name:none!important}.slidev-page[data-v-a7136532]{--slidev-slide-zoom-scale:1;width:calc(100% / var(--slidev-slide-zoom-scale));height:calc(100% / var(--slidev-slide-zoom-scale));transform-origin:0 0;scale:var(--slidev-slide-zoom-scale);--slidev-slide-scale:calc(var(--slidev-slide-container-scale) * var(--slidev-slide-zoom-scale));position:absolute;inset:0} diff --git a/lecture-07/assets/Slider-BO0rW71G.css b/lecture-07/assets/Slider-BO0rW71G.css new file mode 100644 index 0000000000000000000000000000000000000000..6ac46df0c928ac6d67cf095ecd0f4a83647a6d9f --- /dev/null +++ b/lecture-07/assets/Slider-BO0rW71G.css @@ -0,0 +1 @@ +.dl-slider[data-v-b8762282]{color:var(--dl-body);grid-template-columns:1fr auto;align-items:center;gap:.15rem .6rem;font-size:.82rem;display:grid}.dl-slider.is-disabled[data-v-b8762282]{opacity:.45}.dl-slider__label[data-v-b8762282]{grid-column:1}.dl-slider__value[data-v-b8762282]{text-align:right;font-variant-numeric:tabular-nums;min-width:3.6rem;color:var(--dl-accent);grid-area:1/2/span 2;align-self:center;font-weight:600}.dl-slider__unit[data-v-b8762282]{color:var(--dl-muted);margin-left:.1rem;font-weight:400}.dl-slider input[data-v-b8762282]{width:100%;accent-color:var(--dl-accent);cursor:pointer;grid-column:1}.dl-slider input[data-v-b8762282]:disabled{cursor:not-allowed} diff --git a/lecture-07/assets/Slider-Bf0ITYx4.js b/lecture-07/assets/Slider-Bf0ITYx4.js new file mode 100644 index 0000000000000000000000000000000000000000..3727db300b1e293f8a7546686d2fc46f781cfb3c --- /dev/null +++ b/lecture-07/assets/Slider-Bf0ITYx4.js @@ -0,0 +1 @@ +import{St as e,_ as t,b as n,et as r,g as i,j as a,l as o,q as s,w as c,x as l,y as u,yt as d,z as f}from"./modules/shiki-CkJq9tSf.js";import{t as p}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as m}from"./slidev/context-DnYiQGy6.js";var h={key:0,class:`dl-slider__label`},g=[`min`,`max`,`step`,`disabled`],_={class:`dl-slider__value`},v={key:0,class:`dl-slider__unit`},y=p(c({__name:`Slider`,props:a({label:{},min:{default:0},max:{default:1},step:{default:.01},precision:{default:2},unit:{},format:{},disabled:{type:Boolean,default:!1}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(a){let{$slidev:c,$nav:p,$clicksContext:y,$clicks:b,$page:x,$renderContext:S,$frontmatter:C}=m(),w=a,T=s(a,`modelValue`),E=i(()=>w.format?w.format(T.value):T.value.toFixed(w.precision)),D=new Set([`ArrowLeft`,`ArrowRight`,`ArrowUp`,`ArrowDown`,`Home`,`End`,`PageUp`,`PageDown`,` `]);function O(e){D.has(e.key)&&e.stopPropagation()}return(i,a)=>(f(),n(`label`,{class:d([`dl-slider`,{"is-disabled":w.disabled}])},[w.label?(f(),n(`span`,h,e(w.label),1)):u(`v-if`,!0),r(t(`input`,{"onUpdate:modelValue":a[0]||=e=>T.value=e,type:`range`,min:w.min,max:w.max,step:w.step,disabled:w.disabled,onKeydown:O},null,40,g),[[o,T.value,void 0,{number:!0}]]),t(`output`,_,[l(e(E.value),1),w.unit?(f(),n(`span`,v,e(w.unit),1)):u(`v-if`,!0)])],2))}}),[[`__scopeId`,`data-v-b8762282`]]);export{y as t}; \ No newline at end of file diff --git a/lecture-07/assets/_plugin-vue_export-helper-BDNMzG2s.js b/lecture-07/assets/_plugin-vue_export-helper-BDNMzG2s.js new file mode 100644 index 0000000000000000000000000000000000000000..4374bdd01753d5b081492c755ecac84c3c86cba5 --- /dev/null +++ b/lecture-07/assets/_plugin-vue_export-helper-BDNMzG2s.js @@ -0,0 +1 @@ +var e=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};export{e as t}; \ No newline at end of file diff --git a/lecture-07/assets/default-Bp68E4h0.js b/lecture-07/assets/default-Bp68E4h0.js new file mode 100644 index 0000000000000000000000000000000000000000..ae528ff86f9d9ce899c065c1c0b8417b386a746a --- /dev/null +++ b/lecture-07/assets/default-Bp68E4h0.js @@ -0,0 +1 @@ +import{H as e,S as t,b as n,z as r}from"./modules/shiki-CkJq9tSf.js";import{t as i}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as a}from"./slidev/context-DnYiQGy6.js";import{t as o}from"./DeckFooter-tFze9YsO.js";var s={class:`slidev-layout dl-default`},c=i({__name:`default`,setup(i){let{$slidev:c,$nav:l,$clicksContext:u,$clicks:d,$page:f,$renderContext:p,$frontmatter:m}=a();return(i,a)=>{let c=o;return r(),n(`div`,s,[e(i.$slots,`default`,{},void 0,!0),t(c)])}}},[[`__scopeId`,`data-v-3f3da7ce`]]);export{c as t}; \ No newline at end of file diff --git a/lecture-07/assets/default-DFJXHcku.css b/lecture-07/assets/default-DFJXHcku.css new file mode 100644 index 0000000000000000000000000000000000000000..9701ce2820eb67acfeb00af0d66787fe99a56707 --- /dev/null +++ b/lecture-07/assets/default-DFJXHcku.css @@ -0,0 +1 @@ +.dl-default[data-v-3f3da7ce]{flex-direction:column;justify-content:flex-start;display:flex} diff --git a/lecture-07/assets/entry-Dba4BKje.css b/lecture-07/assets/entry-Dba4BKje.css new file mode 100644 index 0000000000000000000000000000000000000000..d28c41041ebb17c7aba14498b0d27b5100083a75 --- /dev/null +++ b/lecture-07/assets/entry-Dba4BKje.css @@ -0,0 +1 @@ +.page-link[data-v-966650ef]{background-color:#9ca3af1a;border-radius:.25rem;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;min-width:10rem;height:10rem;padding:1rem;display:flex}.page-link[data-v-966650ef]:hover{background-color:#9ca3af33}.page-link>svg[data-v-966650ef]{opacity:.5;font-size:3em} diff --git a/lecture-07/assets/index-DYEUBAok.js b/lecture-07/assets/index-DYEUBAok.js new file mode 100644 index 0000000000000000000000000000000000000000..b47b5aa39abc4256c8167da9f0a7e6cfd43af813 --- /dev/null +++ b/lecture-07/assets/index-DYEUBAok.js @@ -0,0 +1,46 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./modules/file-saver-BpWusTEB.js","./rolldown-runtime-hePW80VL.js","./slidev/entry-DXY6sGn2.js","./modules/shiki-CkJq9tSf.js","./modules/shiki-BrmBd2_v.css","./_plugin-vue_export-helper-BDNMzG2s.js","./entry-Dba4BKje.css","./slidev/overview-C2nc1_I5.js","./useNav-DOs7c9Ie.js","./modules/vue-Dz2ojcKF.js","./slidev/context-DnYiQGy6.js","./modules/unplugin-icons-CEvhMF8G.js","./slidev/IconButton-CfFb_8Iy.js","./slidev/NoteDisplay-0sQOScYJ.js","./NoteDisplay-DCBzjb4F.css","./SlideWrapper-DkcAPxbl.js","./syncState-BCmj5bTl.js","./useDrawings-dMxKslDP.js","./SlideWrapper-O3NT4xUm.css","./slidev/NoteEditable-Cz0lbH-c.js","./overview-BIQ10iVu.css","./slidev/notes-Cx4IkZte.js","./slidev/Modal-Bum_LA_c.js","./slidev/TimerBar-CppjXUvc.js","./slidev/notes-edit-CST45Tju.js","./slidev/presenter-CeSv1Nh0.js","./slidev/DrawingControls-7DRfiHec.js","./slidev/VerticalDivider-E2da-Zpk.js","./DrawingControls-Dhbx0szf.css","./slidev/shortcuts-BJx9p93Z.js","./shortcuts-nRB69a7e.css","./presenter-J5ibmAMh.css","./slidev/play-DqoRPRn6.js","./play-D_7yfuao.css","./slidev/404-B_Ln99xV.js","./404-bkedjYjP.css"])))=>i.map(i=>d[i]); +import{r as e}from"./rolldown-runtime-hePW80VL.js";import{F as t,I as n,O as r,P as i,S as a,T as o,U as s,X as c,Z as l,_t as u,at as d,b as f,ct as p,g as m,k as h,m as g,pt as _,rt as v,s as y,t as b,ut as x,vt as S,w as C,y as w,z as T}from"./modules/shiki-CkJq9tSf.js";import{$ as E,A as ee,B as te,G as ne,H as re,Q as D,R as ie,Z as ae,c as oe,et as O,h as se,j as k,l as ce,n as le,p as A,q as j,t as ue,tt as M,w as de,z as fe}from"./useNav-DOs7c9Ie.js";import{A as pe,L as me,R as he,S as ge,T as _e,V as ve,f as ye,g as be,i as xe,j as Se,o as Ce,x as we,z as Te}from"./modules/vue-Dz2ojcKF.js";import{a as Ee,c as De,d as Oe,f as ke,g as Ae,i as je,m as Me,o as Ne,p as Pe,r as Fe,s as Ie,u as Le,y as Re}from"./slidev/context-DnYiQGy6.js";import{n as N,r as ze,t as Be}from"./syncState-BCmj5bTl.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})(),x(!1),x(!1);var Ve=new Set([`link`,`style`,`script`,`noscript`]),He=new Set([`title`,`titleTemplate`,`script`,`style`,`noscript`]),Ue=new Set([`base`,`meta`,`link`,`style`,`script`,`noscript`]),We=new Set([`title`,`base`,`htmlAttrs`,`bodyAttrs`,`meta`,`link`,`style`,`script`,`noscript`]),Ge=new Set([`base`,`title`,`titleTemplate`,`bodyAttrs`,`htmlAttrs`,`templateParams`]),Ke=new Set([`key`,`tagPosition`,`tagPriority`,`tagDuplicateStrategy`,`innerHTML`,`textContent`,`processTemplateParams`]),qe=new Set([`templateParams`,`htmlAttrs`,`bodyAttrs`]),Je=new Set([`theme-color`,`google-site-verification`,`author`,`og:locale:alternate`,`og:image`,`og:video`,`og:audio`,`article:author`,`article:tag`,`book:author`,`book:tag`,`twitter:image`]),Ye={critical:-8,high:-1,low:2},Xe=e=>typeof e==`number`?Number.isFinite(e):e;function Ze(e){return e===`__proto__`||e===`constructor`||e===`prototype`}function Qe(e,t,n,r){for(let i=n;ie[i](...t)):e[i](...t);if(n&&typeof n.then==`function`)return Promise.resolve(n).then(()=>Qe(e,t,i+1,r))}catch(e){return Promise.reject(e)}}var $e=class{_hooks;constructor(){this._hooks={}}hook(e,t){return!e||typeof t!=`function`?()=>{}:(this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(t),()=>{t&&=(this.removeHook(e,t),void 0)})}removeHook(e,t){let n=this._hooks[e];if(n){let r=n.indexOf(t);r!==-1&&n.splice(r,1),n.length===0&&(this._hooks[e]=void 0)}}callHook(e,...t){let n=this._hooks[e];if(!(!n||n.length===0))return Qe(n,t,0)}};function et(e){let t=new $e;for(let n in e||{})t.hook(n,e[n]);return t}function tt(e,t,n){if(e.hooks?._hooks?.[t]?.length)return e.hooks?.callHook(t,n)}var nt=/^(?:viewport|description|keywords|robots)$/,rt=[`name`,`property`,`http-equiv`];function it(e){let t=e.indexOf(`:`);if(t===-1)return!1;let n=e.slice(t+1);return Je.has(n)||n.startsWith(`og:image:`)||n.startsWith(`og:video:`)||n.startsWith(`og:audio:`)||n.startsWith(`twitter:image:`)}function at(e){let{props:t,tag:n,key:r}=e;if(Ge.has(n))return n;if(n===`link`){if(t.rel===`canonical`)return`canonical`;if(t.rel===`alternate`&&t.hreflang)return`alternate:${t.hreflang}`}if(t.charset)return`charset`;if(n===`meta`)for(let e of rt){let n=t[e];if(n!==void 0)return`meta:${n}${(typeof n!=`string`||!n.includes(`:`))&&!nt.test(n)&&r?`:key:${r}`:``}`}return r?`${n}:key:${r}`:t.id?`${n}:id:${t.id}`:n===`link`&&t.rel&&t.href?`link:${t.rel}:${t.href}`:He.has(n)&&(e.textContent||e.innerHTML)?`${n}:content:${e.textContent||e.innerHTML}`:void 0}function ot(e){let t=e._h||e._d||e.textContent||e.innerHTML;if(t)return t;let n=Object.keys(e.props).sort(),r=`${e.tag}:`,i=``;for(let t of n)r+=`${i}${t}:${String(e.props[t])}`,i=`,`;return r}function st(e,t,n){if(n===`_resolver`)return e;typeof e==`function`&&(!n||n!==`titleTemplate`&&!n.startsWith(`on`))&&(e=e());let r=t?t(n,e):e;if(Array.isArray(r)){let e;for(let n=0;n/=\x00-\x1F\x7F]/;function lt(e,t){let n=e===`style`,r=n?new Map:new Set,i=e=>{if(e){if(n){let t=e.indexOf(`:`);t>0&&r.set(e.slice(0,t).trim(),e.slice(t+1).trim())}else e.split(` `).forEach(e=>e&&r.add(e))}};if(typeof t==`string`)(n?t.split(`;`):[t]).forEach(i);else if(Array.isArray(t))t.forEach(i);else if(t&&typeof t==`object`)for(let e in t){let a=t[e];a&&a!==`false`&&(n?r.set(e.trim(),String(a)):i(e))}return r}function ut(e,t){if(e.props=e.props||{},!t)return e;if(e.tag===`templateParams`)return e.props=t,e;let n=Ue.has(e.tag)||e.tag===`htmlAttrs`||e.tag===`bodyAttrs`;for(let r in t){if(Ze(r))continue;let i=r.startsWith(`data-`),a=n&&!Ke.has(r),o=a&&!i?r.toLowerCase():r;if(a&&(!o||ct.test(o)))continue;let s=t[r];if(s===null)e.props[o]=null;else if(r===`class`||r===`style`)e.props[r]=lt(r,s);else if(Ke.has(r)){if((r===`textContent`||r===`innerHTML`)&&typeof s==`object`){let n=t.type||`application/json`;(n.endsWith(`json`)||n===`speculationrules`||n===`importmap`)&&(e.props.type=t.type=n,e[r]=JSON.stringify(s))}else e[r]=s}else if(s!==void 0){let t=String(s),n=e.tag===`meta`&&o===`content`;e.props[o]=t===`true`||t===``?i||n?t:!0:!s&&i&&t===`false`?`false`:s}}return e}function dt(e,t){let n;return t.length&&(n=(e,n)=>{for(let r=0;re._w===t._w?e._p-t._p:e._w-t._w,vt=()=>100;function yt(e){for(let t in e)return!1;return!0}var bt=/^tags:|:render/;function xt(e,t){let n=(t[`entries:resolve`]?.length||0)+(t[`entries:normalize`]?.length||0);if(e._h!==n){e._h=n;for(let t of e.entries.values())delete t._tags}}function St(e){for(let t=0;t>10==i._p>>10&&n.tag===`meta`&&it(r)?(e.tagMap.set(r,Object.assign([...Array.isArray(i)?i:[i],n],n)),t=!0):(n._w===i._w?n._p>i._p:n._wt?(typeof e==`string`?e:JSON.stringify(e)).replace(ht,`\\u003C`):typeof e==`string`?e.replace(gt,`<\\/script`):e;n={...n},r&&(n.innerHTML=i(r)),n.textContent&&(n.textContent=i(n.textContent)),n._d=at(n)}e[t++]=n}}return e.length=t,e}function Dt(e,t){let n=t?.tagWeight??e.resolvedOptions._tagWeight??vt,r={tagMap:new Map,tags:[]},i=e.hooks?._hooks||{};xt(e,i);for(let t of e.entries.values())t._pending!==void 0&&(t.input=t._pending,delete t._pending,delete t._tags,delete t._precomputedTags);let a;(i[`entries:resolve`]?.length||i[`entries:normalize`]?.length)&&(a=[...e.entries.values()],i[`entries:resolve`]?.length&&tt(e,`entries:resolve`,{entries:a,...r})),xt(e,i);for(let t of a||e.entries.values()){let a=t._tags;if(!a){if(t._precomputedTags&&n===e.resolvedOptions._tagWeight&&!i[`entries:normalize`]?.length&&!i[`entries:resolve`]?.length&&(!t.options||yt(t.options)))a=t._precomputedTags;else{if(a=mt(t.input,e.resolvedOptions.propResolvers||[]),t.options&&!yt(t.options))for(let e of a)Object.assign(e,t.options);if(i[`entries:normalize`]?.length){let n={tags:a,entry:t};tt(e,`entries:normalize`,n),a=n.tags}for(let e=0;ed(t)?u(t):t,{_static:!0});function Mt(e,t={}){let n=t.head||kt();return n.ssr?n.push(e||{},t):Nt(n,e,t)}function Nt(e,r,a={}){let s=v();if(s&&!s.active)return{patch(){},dispose(){},_i:-1};let c=x(!1);if(a.onRendered&&s){let e=a.onRendered;a={...a,onRendered:t=>s.run(()=>e(t))}}let u;return l(()=>{let t=c.value?{}:st(r,jt);u?u.patch(t):u=e.push(t,a)}),o()&&(t(()=>{u.dispose()}),n(()=>{c.value=!0}),i(()=>{c.value=!1})),u}function Pt(e,t){if(typeof t==`function`&&t.key&&e.plugins.has(t.key))return;let n=typeof t==`function`?t(e):t,r=n.key||String(e.plugins.size+1);if(!e.plugins.get(r)){e.plugins.set(r,n);for(let t in n.hooks||{})e.hooks?.hook(t,n.hooks[t])}}function Ft(e,t={}){let n=!t.document,r=new Map,i={_entryCount:1,_h:0,plugins:new Map,resolvedOptions:t,ssr:n,entries:r,hooks:void 0,render:()=>e(i),use:e=>Pt(i,e),push(e,t){let a=t?._index??i._entryCount++,o=t?{...t}:{};delete o.head,delete o.onRendered,delete o._index;let s={_i:a,input:e,options:o};return r.set(a,s),{_i:a,dispose(){r.delete(a)},patch(e){n?(s.input=e,delete s._tags):s._pending=e,r.has(a)||r.set(a,s)}}}};return t.init?.forEach(e=>e&&i.push(e)),i}var It=Object.assign({}),Lt=Object.assign({}),Rt=Object.assign({}),zt=[Object.values(It)[0],Object.values(Lt)[0],Object.values(Rt)[0]].filter(Boolean),Bt=we(),Vt=be(`slidev-color-schema`,`auto`),Ht=m(()=>M.colorSchema!==`auto`),Ut=m({get(){return Ht.value?M.colorSchema===`dark`:Vt.value===`auto`?Bt.value:Vt.value===`dark`},set(e){Ht.value||(Vt.value=e===Bt.value?`auto`:e?`dark`:`light`)}}),Wt=me(Ut);Se&&c(Ut,e=>{let t=window.document.createElement(`style`);t.appendChild(document.createTextNode(`*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}`)),window.document.head.appendChild(t);let n=document.querySelector(`html`);n.classList.toggle(`dark`,e),n.classList.toggle(`light`,!e),window.getComputedStyle(t).opacity,document.head.removeChild(t)},{immediate:!0});function Gt(){let{isPrintMode:e}=ue();ge(m(()=>e.value?` +@page { + size: ${D.value}px ${ae.value}px; + margin: 0px; +} + +* { + transition: none !important; + transition-duration: 0s !important; +}`:``))}var Kt=Symbol.for(`yaml.alias`),qt=Symbol.for(`yaml.document`),Jt=Symbol.for(`yaml.map`),Yt=Symbol.for(`yaml.pair`),Xt=Symbol.for(`yaml.scalar`),Zt=Symbol.for(`yaml.seq`),P=Symbol.for(`yaml.node.type`),Qt=e=>!!e&&typeof e==`object`&&e[P]===Kt,$t=e=>!!e&&typeof e==`object`&&e[P]===qt,en=e=>!!e&&typeof e==`object`&&e[P]===Jt,F=e=>!!e&&typeof e==`object`&&e[P]===Yt,I=e=>!!e&&typeof e==`object`&&e[P]===Xt,tn=e=>!!e&&typeof e==`object`&&e[P]===Zt;function L(e){if(e&&typeof e==`object`)switch(e[P]){case Jt:case Zt:return!0}return!1}function R(e){if(e&&typeof e==`object`)switch(e[P]){case Kt:case Jt:case Xt:case Zt:return!0}return!1}var nn=e=>(I(e)||L(e))&&!!e.anchor,z=Symbol(`break visit`),rn=Symbol(`skip children`),an=Symbol(`remove node`);function on(e,t){let n=cn(t);$t(e)?sn(null,e.contents,n,Object.freeze([e]))===an&&(e.contents=null):sn(null,e,n,Object.freeze([]))}on.BREAK=z,on.SKIP=rn,on.REMOVE=an;function sn(e,t,n,r){let i=ln(e,t,n,r);if(R(i)||F(i))return un(e,r,i),sn(e,i,n,r);if(typeof i!=`symbol`){if(L(t)){r=Object.freeze(r.concat(t));for(let e=0;eB(e,String(t),n));if(e&&typeof e.toJSON==`function`){if(!n||!nn(e))return e.toJSON(t,n);let r={aliasCount:0,count:1,res:void 0};n.anchors.set(e,r),n.onCreate=e=>{r.res=e,delete n.onCreate};let i=e.toJSON(t,n);return n.onCreate&&n.onCreate(i),i}return typeof e==`bigint`&&!n?.keep?Number(e):e}var pn=class{constructor(e){Object.defineProperty(this,P,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:t,maxAliasCount:n,onAnchor:r,reviver:i}={}){if(!$t(e))throw TypeError(`A document argument is required`);let a={anchors:new Map,doc:e,keep:!0,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof n==`number`?n:100},o=B(this,``,a);if(typeof r==`function`)for(let{count:e,res:t}of a.anchors.values())r(t,e);return typeof i==`function`?fn(i,{"":o},``,o):o}},mn=class extends pn{constructor(e){super(Kt),this.source=e,Object.defineProperty(this,"tag",{set(){throw Error(`Alias nodes cannot have tags`)}})}resolve(e,t){if(t?.maxAliasCount===0)throw ReferenceError(`Alias resolution is disabled`);let n;t?.aliasResolveCache?n=t.aliasResolveCache:(n=[],on(e,{Node:(e,t)=>{(Qt(t)||nn(t))&&n.push(t)}}),t&&(t.aliasResolveCache=n));let r;for(let e of n){if(e===this)break;e.anchor===this.source&&(r=e)}return r}toJSON(e,t){if(!t)return{source:this.source};let{anchors:n,doc:r,maxAliasCount:i}=t,a=this.resolve(r,t);if(!a){let e=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(e)}let o=n.get(a);if(o||=(B(a,null,t),n.get(a)),o?.res===void 0)throw ReferenceError(`This should not happen: Alias anchor was not resolved?`);if(i>=0&&(o.count+=1,o.aliasCount===0&&(o.aliasCount=hn(r,a,n)),o.count*o.aliasCount>i))throw ReferenceError(`Excessive alias count indicates a resource exhaustion attack`);return o.res}toString(e,t,n){let r=`*${this.source}`;if(e){if(dn(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){let e=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(e)}if(e.implicitKey)return`${r} `}return r}};function hn(e,t,n){if(Qt(t)){let r=t.resolve(e),i=n&&r&&n.get(r);return i?i.count*i.aliasCount:0}if(L(t)){let r=0;for(let i of t.items){let t=hn(e,i,n);t>r&&(r=t)}return r}if(F(t)){let r=hn(e,t.key,n),i=hn(e,t.value,n);return Math.max(r,i)}return 1}var gn=e=>!e||typeof e!=`function`&&typeof e!=`object`,V=class extends pn{constructor(e){super(Xt),this.value=e}toJSON(e,t){return t?.keep?this.value:B(this.value,e,t)}toString(){return String(this.value)}};V.BLOCK_FOLDED=`BLOCK_FOLDED`,V.BLOCK_LITERAL=`BLOCK_LITERAL`,V.PLAIN=`PLAIN`,V.QUOTE_DOUBLE=`QUOTE_DOUBLE`,V.QUOTE_SINGLE=`QUOTE_SINGLE`;var _n=`tag:yaml.org,2002:`;function vn(e,t,n){if(t){let e=n.filter(e=>e.tag===t),r=e.find(e=>!e.format)??e[0];if(!r)throw Error(`Tag ${t} not found`);return r}return n.find(t=>t.identify?.(e)&&!t.format)}function yn(e,t,n){if($t(e)&&(e=e.contents),R(e))return e;if(F(e)){let t=n.schema[Jt].createNode?.(n.schema,null,n);return t.items.push(e),t}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<`u`&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:r,onAnchor:i,onTagObj:a,schema:o,sourceObjects:s}=n,c;if(r&&e&&typeof e==`object`){if(c=s.get(e),c)return c.anchor??(c.anchor=i(e)),new mn(c.anchor);c={anchor:null,node:null},s.set(e,c)}t?.startsWith(`!!`)&&(t=_n+t.slice(2));let l=vn(e,t,o.tags);if(!l){if(e&&typeof e.toJSON==`function`&&(e=e.toJSON()),!e||typeof e!=`object`){let t=new V(e);return c&&(c.node=t),t}l=e instanceof Map?o[Jt]:Symbol.iterator in Object(e)?o[Zt]:o[Jt]}a&&(a(l),delete n.onTagObj);let u=l?.createNode?l.createNode(n.schema,e,n):typeof l?.nodeClass?.from==`function`?l.nodeClass.from(n.schema,e,n):new V(e);return t?u.tag=t:l.default||(u.tag=l.tag),c&&(c.node=u),u}function bn(e,t,n){let r=n;for(let e=t.length-1;e>=0;--e){let n=t[e];if(typeof n==`number`&&Number.isInteger(n)&&n>=0){let e=[];e[n]=r,r=e}else r=new Map([[n,r]])}return yn(r,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error(`This should not happen, please report a bug.`)},schema:e,sourceObjects:new Map})}var xn=e=>e==null||typeof e==`object`&&!!e[Symbol.iterator]().next().done,Sn=class extends pn{constructor(e,t){super(e),Object.defineProperty(this,"schema",{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(t.schema=e),t.items=t.items.map(t=>R(t)||F(t)?t.clone(e):t),this.range&&(t.range=this.range.slice()),t}addIn(e,t){if(xn(e))this.add(t);else{let[n,...r]=e,i=this.get(n,!0);if(L(i))i.addIn(r,t);else if(i===void 0&&this.schema)this.set(n,bn(this.schema,r,t));else throw Error(`Expected YAML collection at ${n}. Remaining path: ${r}`)}}deleteIn(e){let[t,...n]=e;if(n.length===0)return this.delete(t);let r=this.get(t,!0);if(L(r))return r.deleteIn(n);throw Error(`Expected YAML collection at ${t}. Remaining path: ${n}`)}getIn(e,t){let[n,...r]=e,i=this.get(n,!0);return r.length===0?!t&&I(i)?i.value:i:L(i)?i.getIn(r,t):void 0}hasAllNullValues(e){return this.items.every(t=>{if(!F(t))return!1;let n=t.value;return n==null||e&&I(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(e){let[t,...n]=e;if(n.length===0)return this.has(t);let r=this.get(t,!0);return L(r)?r.hasIn(n):!1}setIn(e,t){let[n,...r]=e;if(r.length===0)this.set(n,t);else{let e=this.get(n,!0);if(L(e))e.setIn(r,t);else if(e===void 0&&this.schema)this.set(n,bn(this.schema,r,t));else throw Error(`Expected YAML collection at ${n}. Remaining path: ${r}`)}}},Cn=e=>e.replace(/^(?!$)(?: $)?/gm,`#`);function wn(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var Tn=(e,t,n)=>e.endsWith(` +`)?wn(n,t):n.includes(` +`)?` +`+wn(n,t):(e.endsWith(` `)?``:` `)+n,En=`flow`,Dn=`block`,On=`quoted`;function kn(e,t,n=`flow`,{indentAtStart:r,lineWidth:i=80,minContentWidth:a=20,onFold:o,onOverflow:s}={}){if(!i||i<0)return e;ii-Math.max(2,a)?l.push(0):d=i-r);let f,p,m=!1,h=-1,g=-1,_=-1;n===`block`&&(h=An(e,h,t.length),h!==-1&&(d=h+c));for(let r;r=e[h+=1];){if(n===`quoted`&&r===`\\`){switch(g=h,e[h+1]){case`x`:h+=3;break;case`u`:h+=5;break;case`U`:h+=9;break;default:h+=1}_=h}if(r===` +`)n===`block`&&(h=An(e,h,t.length)),d=h+t.length+c,f=void 0;else{if(r===` `&&p&&p!==` `&&p!==` +`&&p!==` `){let t=e[h+1];t&&t!==` `&&t!==` +`&&t!==` `&&(f=h)}if(h>=d){if(f)l.push(f),d=f+c,f=void 0;else if(n===`quoted`){for(;p===` `||p===` `;)p=r,r=e[h+=1],m=!0;let t=h>_+1?h-2:g-1;if(u[t])return e;l.push(t),u[t]=!0,d=t+c,f=void 0}else m=!0}}p=r}if(m&&s&&s(),l.length===0)return e;o&&o();let v=e.slice(0,l[0]);for(let r=0;r({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Mn=e=>/^(%|---|\.\.\.)/m.test(e);function Nn(e,t,n){if(!t||t<0)return!1;let r=t-n,i=e.length;if(i<=r)return!1;for(let t=0,n=0;tr)return!0;if(n=t+1,i-n<=r)return!1}return!0}function Pn(e,t){let n=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return n;let{implicitKey:r}=t,i=t.options.doubleQuotedMinMultiLineLength,a=t.indent||(Mn(e)?` `:``),o=``,s=0;for(let e=0,t=n[e];t;t=n[++e])if(t===` `&&n[e+1]===`\\`&&n[e+2]===`n`&&(o+=n.slice(s,e)+`\\ `,e+=1,s=e,t=`\\`),t===`\\`)switch(n[e+1]){case`u`:{o+=n.slice(s,e);let t=n.substr(e+2,4);switch(t){case`0000`:o+=`\\0`;break;case`0007`:o+=`\\a`;break;case`000b`:o+=`\\v`;break;case`001b`:o+=`\\e`;break;case`0085`:o+=`\\N`;break;case`00a0`:o+=`\\_`;break;case`2028`:o+=`\\L`;break;case`2029`:o+=`\\P`;break;default:t.substr(0,2)===`00`?o+=`\\x`+t.substr(2):o+=n.substr(e,6)}e+=5,s=e+1}break;case`n`:if(r||n[e+2]===`"`||n.length +`;let d,f;for(f=n.length;f>0;--f){let e=n[f-1];if(e!==` +`&&e!==` `&&e!==` `)break}let p=n.substring(f),m=p.indexOf(` +`);m===-1?d=`-`:n===p||m!==p.length-1?(d=`+`,a&&a()):d=``,p&&=(n=n.slice(0,-p.length),p[p.length-1]===` +`&&(p=p.slice(0,-1)),p.replace(Ln,`$&${l}`));let h=!1,g,_=-1;for(g=0;g{i=!0});let s=kn(`${v}${e}${p}`,l,Dn,a);if(!i)return`>${y}\n${l}${s}`}return n=n.replace(/\n+/g,`$&${l}`),`|${y}\n${l}${v}${n}${p}`}function zn(e,t,n,r){let{type:i,value:a}=e,{actualString:o,implicitKey:s,indent:c,indentStep:l,inFlow:u}=t;if(s&&a.includes(` +`)||u&&/[[\]{},]/.test(a))return In(a,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(a))return s||u||!a.includes(` +`)?In(a,t):Rn(e,t,n,r);if(!s&&!u&&i!==V.PLAIN&&a.includes(` +`))return Rn(e,t,n,r);if(Mn(a)){if(c===``)return t.forceBlockIndent=!0,Rn(e,t,n,r);if(s&&c===l)return In(a,t)}let d=a.replace(/\n+/g,`$&\n${c}`);if(o){let e=e=>e.default&&e.tag!==`tag:yaml.org,2002:str`&&e.test?.test(d),{compat:n,tags:r}=t.doc.schema;if(r.some(e)||n?.some(e))return In(a,t)}return s?d:kn(d,c,En,jn(t,!1))}function Bn(e,t,n,r){let{implicitKey:i,inFlow:a}=t,o=typeof e.value==`string`?e:Object.assign({},e,{value:String(e.value)}),{type:s}=e;s!==V.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(o.value)&&(s=V.QUOTE_DOUBLE);let c=e=>{switch(e){case V.BLOCK_FOLDED:case V.BLOCK_LITERAL:return i||a?In(o.value,t):Rn(o,t,n,r);case V.QUOTE_DOUBLE:return Pn(o.value,t);case V.QUOTE_SINGLE:return Fn(o.value,t);case V.PLAIN:return zn(o,t,n,r);default:return null}},l=c(s);if(l===null){let{defaultKeyType:e,defaultStringType:n}=t.options,r=i&&e||n;if(l=c(r),l===null)throw Error(`Unsupported default string type ${r}`)}return l}function Vn(e,t){let n=Object.assign({blockQuote:!0,commentString:Cn,defaultKeyType:null,defaultStringType:`PLAIN`,directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:`false`,flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:`null`,simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:`true`,verifyAliasOrder:!0},e.schema.toStringOptions,t),r;switch(n.collectionStyle){case`block`:r=!1;break;case`flow`:r=!0;break;default:r=null}return{anchors:new Set,doc:e,flowCollectionPadding:n.flowCollectionPadding?` `:``,indent:``,indentStep:typeof n.indent==`number`?` `.repeat(n.indent):` `,inFlow:r,options:n}}function Hn(e,t){if(t.tag){let n=e.filter(e=>e.tag===t.tag);if(n.length>0)return n.find(e=>e.format===t.format)??n[0]}let n,r;if(I(t)){r=t.value;let i=e.filter(e=>e.identify?.(r));if(i.length>1){let e=i.filter(e=>e.test);e.length>0&&(i=e)}n=i.find(e=>e.format===t.format)??i.find(e=>!e.format)}else r=t,n=e.find(e=>e.nodeClass&&r instanceof e.nodeClass);if(!n){let e=r?.constructor?.name??(r===null?`null`:typeof r);throw Error(`Tag not resolved for ${e} value`)}return n}function Un(e,t,{anchors:n,doc:r}){if(!r.directives)return``;let i=[],a=(I(e)||L(e))&&e.anchor;a&&dn(a)&&(n.add(a),i.push(`&${a}`));let o=e.tag??(t.default?null:t.tag);return o&&i.push(r.directives.tagString(o)),i.join(` `)}function Wn(e,t,n,r){if(F(e))return e.toString(t,n,r);if(Qt(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw TypeError(`Cannot stringify circular structure without alias nodes`);t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let i,a=R(e)?e:t.doc.createNode(e,{onTagObj:e=>i=e});i??=Hn(t.doc.schema.tags,a);let o=Un(a,i,t);o.length>0&&(t.indentAtStart=(t.indentAtStart??0)+o.length+1);let s=typeof i.stringify==`function`?i.stringify(a,t,n,r):I(a)?Bn(a,t,n,r):a.toString(t,n,r);return o?I(a)||s[0]===`{`||s[0]===`[`?`${o} ${s}`:`${o}\n${t.indent}${s}`:s}function Gn({key:e,value:t},n,r,i){let{allNullValues:a,doc:o,indent:s,indentStep:c,options:{commentString:l,indentSeq:u,simpleKeys:d}}=n,f=R(e)&&e.comment||null;if(d){if(f)throw Error(`With simple keys, key nodes cannot have comments`);if(L(e)||!R(e)&&typeof e==`object`)throw Error(`With simple keys, collection cannot be used as a key value`)}let p=!d&&(!e||f&&t==null&&!n.inFlow||L(e)||(I(e)?e.type===V.BLOCK_FOLDED||e.type===V.BLOCK_LITERAL:typeof e==`object`));n=Object.assign({},n,{allNullValues:!1,implicitKey:!p&&(d||!a),indent:s+c});let m=!1,h=!1,g=Wn(e,n,()=>m=!0,()=>h=!0);if(!p&&!n.inFlow&&g.length>1024){if(d)throw Error(`With simple keys, single line scalar must not span more than 1024 characters`);p=!0}if(n.inFlow){if(a||t==null)return m&&r&&r(),g===``?`?`:p?`? ${g}`:g}else if(a&&!d||t==null&&p)return g=`? ${g}`,f&&!m?g+=Tn(g,n.indent,l(f)):h&&i&&i(),g;m&&(f=null),p?(f&&(g+=Tn(g,n.indent,l(f))),g=`? ${g}\n${s}:`):(g=`${g}:`,f&&(g+=Tn(g,n.indent,l(f))));let _,v,y;R(t)?(_=!!t.spaceBefore,v=t.commentBefore,y=t.comment):(_=!1,v=null,y=null,t&&typeof t==`object`&&(t=o.createNode(t))),n.implicitKey=!1,!p&&!f&&I(t)&&(n.indentAtStart=g.length+1),h=!1,!u&&c.length>=2&&!n.inFlow&&!p&&tn(t)&&!t.flow&&!t.tag&&!t.anchor&&(n.indent=n.indent.substring(2));let b=!1,x=Wn(t,n,()=>b=!0,()=>h=!0),S=` `;if(f||_||v){if(S=_?` +`:``,v){let e=l(v);S+=`\n${wn(e,n.indent)}`}x===``&&!n.inFlow?S===` +`&&y&&(S=` + +`):S+=`\n${n.indent}`}else if(!p&&L(t)){let e=x[0],r=x.indexOf(` +`),i=r!==-1,a=n.inFlow??t.flow??t.items.length===0;if(i||!a){let t=!1;if(i&&(e===`&`||e===`!`)){let n=x.indexOf(` `);e===`&`&&n!==-1&&ne===qn||typeof e==`symbol`&&e.description===qn,default:`key`,tag:`tag:yaml.org,2002:merge`,test:/^<<$/,resolve:()=>Object.assign(new V(Symbol(qn)),{addToJSMap:Xn}),stringify:()=>qn},Yn=(e,t)=>(Jn.identify(t)||I(t)&&(!t.type||t.type===V.PLAIN)&&Jn.identify(t.value))&&e?.doc.schema.tags.some(e=>e.tag===Jn.tag&&e.default);function Xn(e,t,n){let r=Qn(e,n);if(tn(r))for(let n of r.items)Zn(e,t,n);else if(Array.isArray(r))for(let n of r)Zn(e,t,n);else Zn(e,t,r)}function Zn(e,t,n){let r=Qn(e,n);if(!en(r))throw Error(`Merge sources must be maps or map aliases`);let i=r.toJSON(null,e,Map);for(let[e,n]of i)t instanceof Map?t.has(e)||t.set(e,n):t instanceof Set?t.add(e):Object.prototype.hasOwnProperty.call(t,e)||Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!0,configurable:!0});return t}function Qn(e,t){return e&&Qt(t)?t.resolve(e.doc,e):t}function $n(e,t,{key:n,value:r}){if(R(n)&&n.addToJSMap)n.addToJSMap(e,t,r);else if(Yn(e,n))Xn(e,t,r);else{let i=B(n,``,e);if(t instanceof Map)t.set(i,B(r,i,e));else if(t instanceof Set)t.add(i);else{let a=er(n,i,e),o=B(r,a,e);a in t?Object.defineProperty(t,a,{value:o,writable:!0,enumerable:!0,configurable:!0}):t[a]=o}}return t}function er(e,t,n){if(t===null)return``;if(typeof t!=`object`)return String(t);if(R(e)&&n?.doc){let t=Vn(n.doc,{});t.anchors=new Set;for(let e of n.anchors.keys())t.anchors.add(e.anchor);t.inFlow=!0,t.inStringifyKey=!0;let r=e.toString(t);if(!n.mapKeyWarned){let e=JSON.stringify(r);e.length>40&&(e=e.substring(0,36)+`..."`),Kn(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${e}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return r}return JSON.stringify(t)}function tr(e,t,n){return new H(yn(e,void 0,n),yn(t,void 0,n))}var H=class e{constructor(e,t=null){Object.defineProperty(this,P,{value:Yt}),this.key=e,this.value=t}clone(t){let{key:n,value:r}=this;return R(n)&&(n=n.clone(t)),R(r)&&(r=r.clone(t)),new e(n,r)}toJSON(e,t){return $n(t,t?.mapAsMap?new Map:{},this)}toString(e,t,n){return e?.doc?Gn(this,e,t,n):JSON.stringify(this)}};function nr(e,t,n){return(t.inFlow??e.flow?ir:rr)(e,t,n)}function rr({comment:e,items:t},n,{blockItemPrefix:r,flowChars:i,itemIndent:a,onChompKeep:o,onComment:s}){let{indent:c,options:{commentString:l}}=n,u=Object.assign({},n,{indent:a,type:null}),d=!1,f=[];for(let e=0;eo=null,()=>d=!0);o&&(s+=Tn(s,a,l(o))),d&&o&&(d=!1),f.push(r+s)}let p;if(f.length===0)p=i.start+i.end;else{p=f[0];for(let e=1;ea=null);l||=d.length>u||o.includes(` +`),n0&&(l||=d.reduce((e,t)=>e+t.length+2,2)+(o.length+2)>t.options.lineWidth),l&&(o+=`,`)),a&&(o+=Tn(o,r,s(a))),d.push(o),u=d.length}let{start:f,end:p}=n;if(d.length===0)return f+p;if(!l){let e=d.reduce((e,t)=>e+t.length+2,2);l=t.options.lineWidth>0&&e>t.options.lineWidth}if(l){let e=f;for(let t of d)e+=t?`\n${a}${i}${t}`:` +`;return`${e}\n${i}${p}`}return`${f}${o}${d.join(` `)}${o}${p}`}function ar({indent:e,options:{commentString:t}},n,r,i){if(r&&i&&(r=r.replace(/^\n+/,``)),r){let i=wn(t(r),e);n.push(i.trimStart())}}function U(e,t){let n=I(t)?t.value:t;for(let r of e)if(F(r)&&(r.key===t||r.key===n||I(r.key)&&r.key.value===n))return r}var W=class extends Sn{static get tagName(){return`tag:yaml.org,2002:map`}constructor(e){super(Jt,e),this.items=[]}static from(e,t,n){let{keepUndefined:r,replacer:i}=n,a=new this(e),o=(e,o)=>{if(typeof i==`function`)o=i.call(t,e,o);else if(Array.isArray(i)&&!i.includes(e))return;(o!==void 0||r)&&a.items.push(tr(e,o,n))};if(t instanceof Map)for(let[e,n]of t)o(e,n);else if(t&&typeof t==`object`)for(let e of Object.keys(t))o(e,t[e]);return typeof e.sortMapEntries==`function`&&a.items.sort(e.sortMapEntries),a}add(e,t){let n;n=F(e)?e:!e||typeof e!=`object`||!(`key`in e)?new H(e,e?.value):new H(e.key,e.value);let r=U(this.items,n.key),i=this.schema?.sortMapEntries;if(r){if(!t)throw Error(`Key ${n.key} already set`);I(r.value)&&gn(n.value)?r.value.value=n.value:r.value=n.value}else if(i){let e=this.items.findIndex(e=>i(n,e)<0);e===-1?this.items.push(n):this.items.splice(e,0,n)}else this.items.push(n)}delete(e){let t=U(this.items,e);return t?this.items.splice(this.items.indexOf(t),1).length>0:!1}get(e,t){let n=U(this.items,e)?.value;return(!t&&I(n)?n.value:n)??void 0}has(e){return!!U(this.items,e)}set(e,t){this.add(new H(e,t),!0)}toJSON(e,t,n){let r=n?new n:t?.mapAsMap?new Map:{};t?.onCreate&&t.onCreate(r);for(let e of this.items)$n(t,r,e);return r}toString(e,t,n){if(!e)return JSON.stringify(this);for(let e of this.items)if(!F(e))throw Error(`Map items must all be pairs; found ${JSON.stringify(e)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),nr(this,e,{blockItemPrefix:``,flowChars:{start:`{`,end:`}`},itemIndent:e.indent||``,onChompKeep:n,onComment:t})}},or={collection:`map`,default:!0,nodeClass:W,tag:`tag:yaml.org,2002:map`,resolve(e,t){return en(e)||t(`Expected a mapping for this tag`),e},createNode:(e,t,n)=>W.from(e,t,n)},sr=class extends Sn{static get tagName(){return`tag:yaml.org,2002:seq`}constructor(e){super(Zt,e),this.items=[]}add(e){this.items.push(e)}delete(e){let t=cr(e);return typeof t==`number`&&this.items.splice(t,1).length>0}get(e,t){let n=cr(e);if(typeof n!=`number`)return;let r=this.items[n];return!t&&I(r)?r.value:r}has(e){let t=cr(e);return typeof t==`number`&&t=0?t:null}var lr={collection:`seq`,default:!0,nodeClass:sr,tag:`tag:yaml.org,2002:seq`,resolve(e,t){return tn(e)||t(`Expected a sequence for this tag`),e},createNode:(e,t,n)=>sr.from(e,t,n)};function ur(e){return typeof e==`bigint`||Number.isInteger(e)}var dr=({value:e})=>JSON.stringify(e),fr=[{identify:e=>typeof e==`string`,default:!0,tag:`tag:yaml.org,2002:str`,resolve:e=>e,stringify:dr},{identify:e=>e==null,createNode:()=>new V(null),default:!0,tag:`tag:yaml.org,2002:null`,test:/^null$/,resolve:()=>null,stringify:dr},{identify:e=>typeof e==`boolean`,default:!0,tag:`tag:yaml.org,2002:bool`,test:/^true$|^false$/,resolve:e=>e===`true`,stringify:dr},{identify:ur,default:!0,tag:`tag:yaml.org,2002:int`,test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:n})=>n?BigInt(e):parseInt(e,10),stringify:({value:e})=>ur(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e==`number`,default:!0,tag:`tag:yaml.org,2002:float`,test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:dr}];[or,lr].concat(fr,{default:!0,tag:``,test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}});function pr(e,t,n){let{replacer:r}=n,i=new sr(e);i.tag=`tag:yaml.org,2002:pairs`;let a=0;if(t&&Symbol.iterator in Object(t))for(let e of t){typeof r==`function`&&(e=r.call(t,String(a++),e));let o,s;if(Array.isArray(e)){if(e.length===2)o=e[0],s=e[1];else throw TypeError(`Expected [key, value] tuple: ${e}`)}else if(e&&e instanceof Object){let t=Object.keys(e);if(t.length===1)o=t[0],s=e[o];else throw TypeError(`Expected tuple with one key, not ${t.length} keys`)}else o=e;i.items.push(tr(o,s,n))}return i}var mr=class e extends sr{constructor(){super(),this.add=W.prototype.add.bind(this),this.delete=W.prototype.delete.bind(this),this.get=W.prototype.get.bind(this),this.has=W.prototype.has.bind(this),this.set=W.prototype.set.bind(this),this.tag=e.tag}toJSON(e,t){if(!t)return super.toJSON(e);let n=new Map;t?.onCreate&&t.onCreate(n);for(let e of this.items){let r,i;if(F(e)?(r=B(e.key,``,t),i=B(e.value,r,t)):r=B(e,``,t),n.has(r))throw Error(`Ordered maps must not include duplicate keys`);n.set(r,i)}return n}static from(e,t,n){let r=pr(e,t,n),i=new this;return i.items=r.items,i}};mr.tag=`tag:yaml.org,2002:omap`;var hr=class e extends W{constructor(t){super(t),this.tag=e.tag}add(e){let t;t=F(e)?e:e&&typeof e==`object`&&`key`in e&&`value`in e&&e.value===null?new H(e.key,null):new H(e,null),U(this.items,t.key)||this.items.push(t)}get(e,t){let n=U(this.items,e);return!t&&F(n)?I(n.key)?n.key.value:n.key:n}set(e,t){if(typeof t!=`boolean`)throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);let n=U(this.items,e);n&&!t?this.items.splice(this.items.indexOf(n),1):!n&&t&&this.items.push(new H(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,n){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,n);throw Error(`Set items must all have null values`)}static from(e,t,n){let{replacer:r}=n,i=new this(e);if(t&&Symbol.iterator in Object(t))for(let e of t)typeof r==`function`&&(e=r.call(t,e,e)),i.items.push(tr(e,null,n));return i}};hr.tag=`tag:yaml.org,2002:set`;var gr=Symbol(`break visit`),_r=Symbol(`skip children`),vr=Symbol(`remove item`);function yr(e,t){`type`in e&&e.type===`document`&&(e={start:e.start,value:e.value}),br(Object.freeze([]),e,t)}yr.BREAK=gr,yr.SKIP=_r,yr.REMOVE=vr,yr.itemAtPath=(e,t)=>{let n=e;for(let[e,r]of t){let t=n?.[e];if(t&&`items`in t)n=t.items[r];else return}return n},yr.parentCollection=(e,t)=>{let n=yr.itemAtPath(e,t.slice(0,-1)),r=t[t.length-1][0],i=n?.[r];if(i&&`items`in i)return i;throw Error(`Parent collection not found`)};function br(e,t,n){let r=n(t,e);if(typeof r==`symbol`)return r;for(let i of[`key`,`value`]){let a=t[i];if(a&&`items`in a){for(let t=0;tCr.push(e)),N(G,`$onPatch`,e=>wr.push(e)),ze(),N(G,`$patch`,async()=>!1);var{init:Tr,onPatch:Er,onUpdate:Dr,patch:Or,state:kr}=Be(G,G,!1),K=p({page:0,clicks:0,timer:{status:`stopped`,slides:{},startedAt:0,pausedAt:0}}),Ar=[],jr=[];N(K,`$syncUp`,!0),N(K,`$syncDown`,!0),N(K,`$paused`,!1),N(K,`$onSet`,e=>Ar.push(e)),N(K,`$onPatch`,e=>jr.push(e)),ze(),N(K,`$patch`,async()=>!1);var{init:Mr,onPatch:Nr,onUpdate:Pr,patch:Fr,state:Ir}=Be(K,{page:1,clicks:0,clicksTotal:0,timer:{status:`stopped`,slides:{},startedAt:0,pausedAt:0}});function Lr(){let e=o().appContext.app,t=p({nav:ue(),configs:M,themeConfigs:m(()=>M.themeConfig)});e.provide(Me,x(`none`)),e.provide(Re,t),e.provide(ke,m(()=>t.nav.currentSlideNo)),e.provide(Oe,_(ne()));for(let e of zt)e();let{clicksContext:n,currentSlideNo:r,hasPrimarySlide:i,isNotesViewer:a,isPresenter:s,isPrintMode:l}=ue();Mt({title:E,htmlAttrs:M.htmlAttrs}),Gt(),Mr(`${E} - shared`),Tr(`${E} - drawings`);let u=`${location.origin}_${xr()}`,d=m(()=>s.value?`presenter`:`viewer`);function f(){(s.value?k.value.presenterSend:k.value.viewerSend)&&(a.value||l.value||!s.value&&!Le.includes(location.host.split(`:`)[0])||(Fr(`page`,+r.value),Fr(`clicks`,n.value.current),Fr(`clicksTotal`,n.value.total),Fr(`lastUpdate`,{id:u,type:d.value,time:Date.now()})))}let h=ve();h.afterEach(f),c(n,f),Nr(e=>{(s.value?k.value.presenterReceive:k.value.viewerReceive)&&(!i.value||l.value||e.lastUpdate?.type!==d.value&&(+e.page!=+r.value||+n.value.current!=+e.clicks)&&(A.value=!1,h.replace({path:te(e.page,s.value),query:{...h.currentRoute.value.query,clicks:e.clicks||0}})))})}var Rr=C({__name:`App`,setup(e){return Lr(),l(()=>{for(let[e,t]of Object.entries(O.value))document.body.style.setProperty(e,t.toString())}),(e,t)=>{let n=s(`RouterView`);return T(),f(g,null,[a(n),w(`v-if`,!0)],64)}}});function zr(e,t,n){let r=e.push,i=e;return i.ssr=!1,i.hooks=t,i.dirty=!!i.dirty,i.use=e=>Pt(i,e),i.render=()=>n(i),i.invalidate=()=>{for(let e of i.entries.values())delete e._tags;i.dirty=!0,t.callHook(`entries:updated`,i)},i.push=(n,a)=>{let o=a?.onRendered?t.hook(`dom:rendered`,a.onRendered):void 0,s=r(n,a),c=e.entries.get(s._i);return c&&(c._o=n),i.dirty=!0,t.callHook(`entries:updated`,i),{_i:s._i,patch(e){s.patch(e),i.dirty=!0,t.callHook(`entries:updated`,i)},dispose(){o?.(),e.entries.has(s._i)&&(s.dispose(),i.invalidate())}}},t.hook(`entries:updated`,()=>{i.render()}),i}var Br=/\s+/;function Vr(e={}){return t=>Wr(t,e)}function Hr(e){for(let t of e.entries.values())if(t._pending!==void 0)return!0;return!1}function Ur(e,t){let n={_d:t,_t:t.title,_e:new Map([[`htmlAttrs`,t.documentElement],[`bodyAttrs`,t.body]]),_p:{},_s:{},_l:new Map};for(let e of[...t.body.children,...t.head.children]){let t=e.tagName.toLowerCase();if(!Ue.has(t))continue;let r={innerHTML:e.innerHTML};for(let t of e.getAttributeNames())r[t]=e.getAttribute(t);let i=ut({tag:t,props:{}},r);i.key=e.getAttribute(`data-hid`)||void 0;let a=at(i)||ot(i),o=a,s=1;for(;n._e.has(o);)o=`${a}:${s++}`;n._e.set(o,e)}for(let t of e.entries.values())if(t._o!==void 0){let e=t._o;for(let t of[`bodyAttrs`,`htmlAttrs`]){let r=e[t]?.class;if(typeof r==`string`){let e=n._e.get(t);for(let i of r.split(Br))i&&(n._p[`${t}:attr:class:${i}`]=()=>e.classList.remove(i))}}}return n}function Wr(e,t={}){let n=t.document||e.resolvedOptions.document,r=e._dom,i=!!r&&r._d!==n;if(!n||r&&!i&&!e.dirty&&!Hr(e)||e._du)return!1;let a=n.defaultView;e._du=!0;let o=!1;try{let i=function(e,t,n){d._s[e]=!n&&f[e]||t,delete f[e]},s=function(e,t,n,r,a,o){let s=`${e}:event:${t}`,c=d._l.get(s);if(c&&c[0]===o&&c[1]===n&&c[2]===r){i(s,c[4]);return}c?.[4]();let l=`data-${t}`,u=(e=>r.call(a,e)),f=()=>{o.removeEventListener(n,u),a.getAttribute(l)===``&&a.removeAttribute(l),d._l.get(s)?.[3]===u&&d._l.delete(s)};o.addEventListener(n,u),d._l.set(s,[o,n,r,u,f]),a.setAttribute(l,``),i(s,f,!0)},c=function({id:e,$el:t,tag:n}){let r=n.tag.endsWith(`Attrs`);if(d._e.set(e,t),!r){let r=n.textContent;r!=null&&r!==``&&(r!==t.textContent&&(t.textContent=r),i(`${e}:text`,()=>{t.textContent===r&&(t.textContent=``)},!0));let a=n.innerHTML;a!=null&&a!==``&&(a!==t.innerHTML&&(t.innerHTML=a),i(`${e}:html`,()=>{t.innerHTML===a&&(t.innerHTML=``)},!0));let o=`${e}:el`;i(o,f[o]||(()=>{t?.remove(),d._e.delete(e)}))}for(let r in n.props){let o=n.props[r];if(r[0]===`o`&&r[1]===`n`&&typeof o==`function`){let i=r.slice(2);t?.dataset?.[`${r}fired`]&&o.call(t,new((a?.Event)||Event)(i)),s(e,r,i,o,t,n.tag===`bodyAttrs`&&a?a:t);continue}let c=`${e}:attr:${r}`;if(r===`class`&&o)for(let e of o){let n=`${c}:${e}`;i(n,f[n]||(()=>t.classList.remove(e))),t.classList.contains(e)||t.classList.add(e)}else if(r===`style`&&o)for(let[e,n]of o){let r=`${c}:${e}`;i(r,f[r]||(()=>t.style.removeProperty(e))),t.style.setProperty(e,n)}else o!==!1&&o!==null&&(t.getAttribute(r)!==o&&t.setAttribute(r,o===!0?``:String(o)),i(c,f[c]||(()=>t.removeAttribute(r))))}},l={shouldRender:!0,tags:[]};if(tt(e,`dom:beforeRender`,l),!l.shouldRender)return!1;let u=r;if(u?._d!==n){if(u){for(let e in u._s)u._s[e]();for(let e in u._p)u._p[e]();u._s=u._p={},u._e.clear(),u._l.clear()}u=void 0}u?u._p=u._s:u=Ur(e,n),u._s={};let d=u,f=d._p,p=[],m={};e.dirty=!1;let h=Dt(e,t.tagWeight?{tagWeight:t.tagWeight}:void 0),g=[],_={};for(let e of h){let t=_[e._d]||0,r=(t?`${e._d}:${t}`:e._d)||e._h,a={tag:e,id:r,shouldRender:!0};if(e.tag===`meta`&&e._d&&it(e._d)&&(_[e._d]=t+1),g.push(a),e.tag===`title`){n.title=e.textContent,i(`title:`,()=>n.title=d._t);continue}a.$el=d._e.get(r),a.$el?c(a):Ue.has(e.tag)&&p.push(a)}for(let e of p)e.$el=n.createElement(e.tag.tag),c(e),(m[e.tag.tagPosition||`head`]??=n.createDocumentFragment()).appendChild(e.$el);m.head&&n.head.appendChild(m.head),m.bodyOpen&&n.body.insertBefore(m.bodyOpen,n.body.firstChild),m.bodyClose&&n.body.appendChild(m.bodyClose);for(let e in f)f[e]();e._dom=d,o=!0,tt(e,`dom:rendered`,{renders:g})}catch(t){throw e.dirty=!0,t}finally{e._du=!1}return o&&(e.dirty||Hr(e))&&Wr(e,t),o}var Gr=e=>typeof e.tagPriority==`number`?e.tagPriority:100+(Ye[e.tagPriority]||0);function Kr(e={}){e.document=e.document||(typeof window<`u`?document:void 0);let t=e.render||Vr({document:e.document}),n=zr(Ft(t,{document:e.document,propResolvers:e.propResolvers,_tagWeight:Gr,init:[]}),et(e.hooks),t);return e.plugins?.forEach(e=>n.use(e)),e.init?.forEach(e=>e&&n.push(e)),n}function qr(e={}){let t=Vr(),n,r=0;return n=Kr({render:()=>{let e=++r;setTimeout(()=>{e===r&&t(n)},0)},...e}),n.install=At(n),n}var Jr=Object.assign({}),Yr=Object.assign({}),Xr=Object.assign({}),Zr=[Object.values(Jr)[0],Object.values(Yr)[0],Object.values(Xr)[0]].filter(Boolean);function Qr(e,t=``){let n=[`slidev-page`,t],r=e?.meta?.slide?.no;return r!=null&&n.push(`slidev-page-${r}`),n.filter(Boolean).join(` `)}async function $r(){let{saveAs:t}=await j(async()=>{let{saveAs:t}=await import(`./modules/file-saver-BpWusTEB.js`).then(t=>e(t.t(),1));return{saveAs:t}},__vite__mapDeps([0,1]),import.meta.url);t(typeof M.download==`string`?M.download:M.exportFilename?`${M.exportFilename}.pdf`:`./slidev-exported.pdf`,`${M.title}.pdf`)}function ei(e,t,n){return(e.instance?.$).provides[t]??n}var ti=/[\s,]+/;function ni(e,t){let n=t.map(e=>`${Fe}${e}`);e.classList.forEach(t=>{t.startsWith(`slidev-vclick-anim-`)&&!n.includes(t)&&e.classList.remove(t)}),n.forEach(t=>e.classList.add(t))}function ri(){return{install(e){e.directive(`click`,{name:`v-click`,mounted(e,t){let n=ai(e,t,t.value);n!=null&&(e.classList.toggle(De,!0),e.dataset.slidevClicksStart=String(n.start),Number.isFinite(n.end)&&(e.dataset.slidevClicksEnd=String(n.end)),e.watchStopHandle=l(()=>{let t=n.isActive.value,r=n.isCurrent.value,i=t&&!r;n.flagHide?(e.classList.toggle(Ee,t),e.classList.toggle(Ne,t)):e.classList.toggle(Ee,!t),ni(e,n.flagAnimations.value),e.classList.toggle(je,r),e.classList.toggle(Ie,i)}))},unmounted:oi}),e.directive(`after`,{name:`v-after`,mounted(e,t){let n=ai(e,t,`+0`);n!=null&&(e.classList.toggle(De,!0),e.watchStopHandle=l(()=>{let t=n.isActive.value,r=n.isCurrent.value,i=t&&!r;n.flagHide?(e.classList.toggle(Ee,t),e.classList.toggle(Ne,t)):e.classList.toggle(Ee,!t),ni(e,n.flagAnimations.value),e.classList.toggle(je,r),e.classList.toggle(Ie,i)}))},unmounted:oi}),e.directive(`click-hide`,{name:`v-click-hide`,mounted(e,t){let n=ai(e,t,t.value,!0);n!=null&&(e.classList.toggle(De,!0),e.watchStopHandle=l(()=>{let t=n.isActive.value,r=n.isCurrent.value,i=t&&!r;e.classList.toggle(Ee,t),e.classList.toggle(Ne,t),ni(e,n.flagAnimations.value),e.classList.toggle(je,r),e.classList.toggle(Ie,i)}))},unmounted:oi})}}}var ii=new Map;function ai(e,t,n,r=!1){let i=ei(t,Oe)?.value,a=ei(t,Pe);if(!e||!i)return null;let o=r||t.modifiers.hide!==!1&&t.modifiers.hide!=null,s=Object.keys({...t.modifiers}).filter(e=>e!==`hide`),c=m(()=>{if(s.length>0)return s;let e=a?.clickAnimation||M.clickAnimation;return e?e.split(ti).filter(Boolean):[]}),l=i.calculate(n);if(!l)return null;i.register(e,l);let u=m(()=>o?!l.isActive.value:l.isActive.value),d=m(()=>u.value?`shown`:Number.isFinite(l.end)?i.current{setTimeout(t.update,300)},{flush:`post`,immediate:!0});return{...t,stop:n}}function ci(e){return{info:x(fe(e)?.meta.slide??null),update:async()=>{}}}var li={};function ui(e){function t(e){return li[e]??=ci(e)}return{info:m({get(){return t(S(e)).info.value},set(n){t(S(e)).info.value=n}}),update:async(n,r)=>{let i=t(r??S(e)),a=await i.update(n);return a&&(i.info.value=a),a}}}function di(e){return()=>{}}function fi(e,t,n,r=!1){function i(t){return e?ei(e,t):pe(t)}let a=i(Me),o=i(`$$slidev-fontmatter`)??{},s=i(ke),l=m(()=>di(s.value)),u=i(`$$slidev-slide-scale`)??x(1),d=i(`$$slidev-slide-zoom`)??x(1),{left:f,top:p,stop:h}=si(i(`$$slidev-slide-element`)??x()),{isPrintMode:g}=ue(),_=[`slide`,`presenter`].includes(a.value)&&!g.value,v=e?`directive`:`prop`,y=xr(),b;if(Array.isArray(t)?b=t:typeof t==`string`&&t.includes(`,`)?b=t.split(`,`).map(Number):t!=null&&(v=`frontmatter`,y=`${t}`,t=o?.dragPos?.[y],b=t?.split(`,`).map(Number)),v!==`frontmatter`&&!n)throw Error("[Slidev] Can not identify the source position of the v-drag element, please provide an explicit `id` prop.");let S=[h],C=!r&&t!=null&&!Number.isFinite(b?.[3]);b??=[NaN,NaN,0];let w=x(b[2]),T=x(b[0]+b[2]/2),E=x(r?0:b[4]??0),ee=m(()=>E.value*Math.PI/180),te=m(()=>Math.sin(ee.value)),ne=m(()=>Math.cos(ee.value)),re=x(),D=x({left:0,top:0,width:0,height:0}),ie=x(0);function ae(){if(!re.value)return;let e=re.value.getBoundingClientRect();D.value={left:e.left/d.value,top:e.top/d.value,width:e.width/d.value,height:e.height/d.value},ie.value=(D.value.width+D.value.height)/u.value/(Math.abs(te.value)+Math.abs(ne.value))-w.value}S.push(c(w,ae,{flush:`post`}));let oe=x(b[3]??0),O=C?m({get:()=>(C?ie.value:oe.value)||0,set:e=>!C&&(oe.value=e)}):oe,se=x(C?b[1]:b[1]+b[3]/2),k=C?m({get:()=>se.value+O.value/2,set:e=>se.value=e-O.value/2}):se,ce=m(()=>Number.isFinite(T.value)?{position:`absolute`,zIndex:100,left:`${T.value-w.value/2}px`,top:`${k.value-O.value/2}px`,width:`${w.value}px`,height:C?void 0:`${O.value}px`,transformOrigin:`center center`,transform:`rotate(${E.value}deg)`}:{position:`absolute`,zIndex:100});S.push(c([T,k,w,O,E],([e,t,r,i,a])=>{let o=[e-r/2,t-i/2,r].map(Math.round).join();o+=C?v===`directive`?`,NaN`:`,_`:`,${Math.round(i)}`,Math.round(a)!==0&&(o+=`,${Math.round(a)}`),v===`directive`&&(o=`[${o}]`),l.value(y,o,v,n)}));let A={dragId:y,dataSource:v,markdownSource:n,isArrow:r,zoom:d,autoHeight:C,x0:T,y0:k,width:w,height:O,rotate:E,container:re,containerStyle:ce,watchStopHandles:S,dragging:m(()=>le.value===A),mounted(){_&&(ae(),t||setTimeout(()=>{ae(),T.value=(D.value.left+D.value.width/2-f.value)/u.value,k.value=(D.value.top-p.value)/u.value,w.value=D.value.width/u.value,O.value=D.value.height/u.value},100))},unmounted(){_&&A.stopDragging()},startDragging(){_&&(ae(),le.value=A)},stopDragging(){_&&le.value===A&&(le.value=null)}};return S.push(Ce(re,e=>{let t=document.querySelector(`#drag-control-container`);t&&e.target&&t.contains(e.target)||A.stopDragging()}),c(_e(),e=>{e||A.stopDragging()})),A}function pi(){return{install(e){e.directive(`drag`,{name:`v-drag`,created(e,t,n){let r=fi(t,t.value,n.props?.markdownSource);n.props&&(n.props={...n.props},delete n.props.markdownSource),r.container.value=e,e.draggingState=r,e.dataset.dragId=r.dragId,r.watchStopHandles.push(c(r.containerStyle,t=>{for(let[n,r]of Object.entries(t))r&&(e.style[n]=r)},{immediate:!0})),e.addEventListener(`dblclick`,r.startDragging)},mounted(e){e.draggingState.mounted()},unmounted(e){let t=e.draggingState;t.unmounted(),e.removeEventListener(`dblclick`,t.startDragging),t.watchStopHandles.forEach(e=>e())}})}}}function mi(){return Math.floor(Math.random()*2**31)}var hi=class{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}};function gi(e,t,n){if(e&&e.length){let[r,i]=t,a=Math.PI/180*n,o=Math.cos(a),s=Math.sin(a);for(let t of e){let[e,n]=t;t[0]=(e-r)*o-(n-i)*s+r,t[1]=(e-r)*s+(n-i)*o+i}}}function _i(e,t,n){let r=[];e.forEach(e=>r.push(...e)),gi(r,t,n)}function vi(e,t){return e[0]===t[0]&&e[1]===t[1]}function yi(e,t,n,r=1){let i=n,a=Math.max(t,.1),o=e[0]&&e[0][0]&&typeof e[0][0]==`number`?[e]:e,s=[0,0];if(i)for(let e of o)gi(e,s,i);let c=bi(o,a,r);if(i){for(let e of o)gi(e,s,-i);_i(c,s,-i)}return c}function bi(e,t,n){let r=[];for(let t of e){let e=[...t];vi(e[0],e[e.length-1])||e.push([e[0][0],e[0][1]]),e.length>2&&r.push(e)}let i=[];t=Math.max(t,.1);let a=[];for(let e of r)for(let t=0;te.ymint.ymin?1:e.xt.x?1:e.ymax===t.ymax?0:(e.ymax-t.ymax)/Math.abs(e.ymax-t.ymax)),!a.length)return i;let o=[],s=a[0].ymin,c=0;for(;o.length||a.length;){if(a.length){let e=-1;for(let t=0;ts);t++)e=t;a.splice(0,e+1).forEach(e=>{o.push({s,edge:e})})}if(o=o.filter(e=>!(e.edge.ymax<=s)),o.sort((e,t)=>e.edge.x===t.edge.x?0:(e.edge.x-t.edge.x)/Math.abs(e.edge.x-t.edge.x)),(n!==1||c%t===0)&&o.length>1)for(let e=0;e=o.length)break;let n=o[e].edge,r=o[t].edge;i.push([[Math.round(n.x),s],[Math.round(r.x),s]])}s+=n,o.forEach(e=>{e.edge.x=e.edge.x+n*e.edge.islope}),c++}return i}function xi(e,t){let n=t.hachureAngle+90,r=t.hachureGap;r<0&&(r=t.strokeWidth*4),r=Math.round(Math.max(r,.1));let i=1;return t.roughness>=1&&(t.randomizer?.next()||Math.random())>.7&&(i=r),yi(e,r,n,i||1)}var Si=class{constructor(e){this.helper=e}fillPolygons(e,t){return this._fillPolygons(e,t)}_fillPolygons(e,t){let n=xi(e,t);return{type:`fillSketch`,ops:this.renderLines(n,t)}}renderLines(e,t){let n=[];for(let r of e)n.push(...this.helper.doubleLineOps(r[0][0],r[0][1],r[1][0],r[1][1],t));return n}};function Ci(e){let t=e[0],n=e[1];return Math.sqrt((t[0]-n[0])**2+(t[1]-n[1])**2)}var wi=class extends Si{fillPolygons(e,t){let n=t.hachureGap;n<0&&(n=t.strokeWidth*4),n=Math.max(n,.1);let r=xi(e,Object.assign({},t,{hachureGap:n})),i=Math.PI/180*t.hachureAngle,a=[],o=n*.5*Math.cos(i),s=n*.5*Math.sin(i);for(let[e,t]of r)Ci([e,t])&&a.push([[e[0]-o,e[1]+s],[...t]],[[e[0]+o,e[1]-s],[...t]]);return{type:`fillSketch`,ops:this.renderLines(a,t)}}},Ti=class extends Si{fillPolygons(e,t){let n=this._fillPolygons(e,t),r=Object.assign({},t,{hachureAngle:t.hachureAngle+90}),i=this._fillPolygons(e,r);return n.ops=n.ops.concat(i.ops),n}},Ei=class{constructor(e){this.helper=e}fillPolygons(e,t){t=Object.assign({},t,{hachureAngle:0});let n=xi(e,t);return this.dotsOnLines(n,t)}dotsOnLines(e,t){let n=[],r=t.hachureGap;r<0&&(r=t.strokeWidth*4),r=Math.max(r,.1);let i=t.fillWeight;i<0&&(i=t.strokeWidth/2);let a=r/4;for(let o of e){let e=Ci(o),s=e/r,c=Math.ceil(s)-1,l=e-c*r,u=(o[0][0]+o[1][0])/2-r/4,d=Math.min(o[0][1],o[1][1]);for(let e=0;e{let a=Ci(e),o=Math.floor(a/(n+r)),s=(a+r-o*(n+r))/2,c=e[0],l=e[1];c[0]>l[0]&&(c=e[1],l=e[0]);let u=Math.atan((l[1]-c[1])/(l[0]-c[0]));for(let e=0;e{let i=Ci(e),a=Math.round(i/(2*t)),o=e[0],s=e[1];o[0]>s[0]&&(o=e[1],s=e[0]);let c=Math.atan((s[1]-o[1])/(s[0]-o[0]));for(let e=0;er%2?e+n:e+t);a.push({key:`C`,data:e}),t=e[4],n=e[5];break}case`Q`:a.push({key:`Q`,data:[...s]}),t=s[2],n=s[3];break;case`q`:{let e=s.map((e,r)=>r%2?e+n:e+t);a.push({key:`Q`,data:e}),t=e[2],n=e[3];break}case`A`:a.push({key:`A`,data:[...s]}),t=s[5],n=s[6];break;case`a`:t+=s[5],n+=s[6],a.push({key:`A`,data:[s[0],s[1],s[2],s[3],s[4],t,n]});break;case`H`:a.push({key:`H`,data:[...s]}),t=s[0];break;case`h`:t+=s[0],a.push({key:`H`,data:[t]});break;case`V`:a.push({key:`V`,data:[...s]}),n=s[0];break;case`v`:n+=s[0],a.push({key:`V`,data:[n]});break;case`S`:a.push({key:`S`,data:[...s]}),t=s[2],n=s[3];break;case`s`:{let e=s.map((e,r)=>r%2?e+n:e+t);a.push({key:`S`,data:e}),t=e[2],n=e[3];break}case`T`:a.push({key:`T`,data:[...s]}),t=s[0],n=s[1];break;case`t`:t+=s[0],n+=s[1],a.push({key:`T`,data:[t,n]});break;case`Z`:case`z`:a.push({key:`Z`,data:[]}),t=r,n=i}return a}function Ri(e){let t=[],n=``,r=0,i=0,a=0,o=0,s=0,c=0;for(let{key:l,data:u}of e){switch(l){case`M`:t.push({key:`M`,data:[...u]}),[r,i]=u,[a,o]=u;break;case`C`:t.push({key:`C`,data:[...u]}),r=u[4],i=u[5],s=u[2],c=u[3];break;case`L`:t.push({key:`L`,data:[...u]}),[r,i]=u;break;case`H`:r=u[0],t.push({key:`L`,data:[r,i]});break;case`V`:i=u[0],t.push({key:`L`,data:[r,i]});break;case`S`:{let e=0,a=0;n===`C`||n===`S`?(e=r+(r-s),a=i+(i-c)):(e=r,a=i),t.push({key:`C`,data:[e,a,...u]}),s=u[0],c=u[1],r=u[2],i=u[3];break}case`T`:{let[e,a]=u,o=0,l=0;n===`Q`||n===`T`?(o=r+(r-s),l=i+(i-c)):(o=r,l=i);let d=r+2*(o-r)/3,f=i+2*(l-i)/3,p=e+2*(o-e)/3,m=a+2*(l-a)/3;t.push({key:`C`,data:[d,f,p,m,e,a]}),s=o,c=l,r=e,i=a;break}case`Q`:{let[e,n,a,o]=u,l=r+2*(e-r)/3,d=i+2*(n-i)/3,f=a+2*(e-a)/3,p=o+2*(n-o)/3;t.push({key:`C`,data:[l,d,f,p,a,o]}),s=e,c=n,r=a,i=o;break}case`A`:{let e=Math.abs(u[0]),n=Math.abs(u[1]),a=u[2],o=u[3],s=u[4],c=u[5],l=u[6];e===0||n===0?(t.push({key:`C`,data:[r,i,c,l,c,l]}),r=c,i=l):(r!==c||i!==l)&&(Vi(r,i,c,l,e,n,a,o,s).forEach(function(e){t.push({key:`C`,data:e})}),r=c,i=l);break}case`Z`:t.push({key:`Z`,data:[]}),r=a,i=o}n=l}return t}function zi(e){return Math.PI*e/180}function Bi(e,t,n){return[e*Math.cos(n)-t*Math.sin(n),e*Math.sin(n)+t*Math.cos(n)]}function Vi(e,t,n,r,i,a,o,s,c,l){let u=zi(o),d=[],f=0,p=0,m=0,h=0;if(l)[f,p,m,h]=l;else{[e,t]=Bi(e,t,-u),[n,r]=Bi(n,r,-u);let o=(e-n)/2,l=(t-r)/2,d=o*o/(i*i)+l*l/(a*a);d>1&&(d=Math.sqrt(d),i=d*i,a=d*a);let g=s===c?-1:1,_=i*i,v=a*a,y=_*v-_*l*l-v*o*o,b=_*l*l+v*o*o,x=g*Math.sqrt(Math.abs(y/b));m=x*i*l/a+(e+n)/2,h=x*-a*o/i+(t+r)/2,f=Math.asin(parseFloat(((t-h)/a).toFixed(9))),p=Math.asin(parseFloat(((r-h)/a).toFixed(9))),ep&&(f-=Math.PI*2),!c&&p>f&&(p-=Math.PI*2)}let g=p-f;if(Math.abs(g)>Math.PI*120/180){let e=p,t=n,s=r;p=c&&p>f?f+Math.PI*120/180*1:f+Math.PI*120/180*-1,n=m+i*Math.cos(p),r=h+a*Math.sin(p),d=Vi(n,r,t,s,i,a,o,0,c,[p,e,m,h])}g=p-f;let _=Math.cos(f),v=Math.sin(f),y=Math.cos(p),b=Math.sin(p),x=Math.tan(g/4),S=4/3*i*x,C=4/3*a*x,w=[e,t],T=[e+S*v,t-C*_],E=[n+S*b,r-C*y],ee=[n,r];if(T[0]=2*w[0]-T[0],T[1]=2*w[1]-T[1],l)return[T,E,ee].concat(d);{d=[T,E,ee].concat(d);let e=[];for(let t=0;t2){let i=[];for(let t=0;tMath.PI*2&&(p=0,m=Math.PI*2);let h=Math.PI*2/c.curveStepCount,g=Math.min(h/2,(m-p)/2),_=da(g,l,u,d,f,p,m,1,c);if(!c.disableMultiStroke){let e=da(g,l,u,d,f,p,m,1.5,c);_.push(...e)}return o&&(s?_.push(...X(l,u,l+d*Math.cos(p),u+f*Math.sin(p),c),...X(l,u,l+d*Math.cos(m),u+f*Math.sin(m),c)):_.push({op:`lineTo`,data:[l,u]},{op:`lineTo`,data:[l+d*Math.cos(p),u+f*Math.sin(p)]})),{type:`path`,ops:_}}function Zi(e,t){let n=Ri(Li(Ii(e))),r=[],i=[0,0],a=[0,0];for(let{key:e,data:o}of n)switch(e){case`M`:a=[o[0],o[1]],i=[o[0],o[1]];break;case`L`:r.push(...X(a[0],a[1],o[0],o[1],t)),a=[o[0],o[1]];break;case`C`:{let[e,n,i,s,c,l]=o;r.push(...fa(e,n,i,s,c,l,a,t)),a=[c,l];break}case`Z`:r.push(...X(a[0],a[1],i[0],i[1],t)),a=[i[0],i[1]]}return{type:`path`,ops:r}}function Qi(e,t){let n=[];for(let r of e)if(r.length){let e=t.maxRandomnessOffset||0,i=r.length;if(i>2){n.push({op:`move`,data:[r[0][0]+Y(e,t),r[0][1]+Y(e,t)]});for(let a=1;aMath.PI*2&&(d=0,f=Math.PI*2);let p=(f-d)/o.curveStepCount,m=[];for(let e=d;e<=f;e+=p)m.push([s+l*Math.cos(e),c+u*Math.sin(e)]);return m.push([s+l*Math.cos(f),c+u*Math.sin(f)]),m.push([s,c]),$i([m],o)}function ta(e,t){return Y(e,t)}function na(e,t,n){return oa(e,t,n)}function ra(e,t,n,r,i){return X(e,t,n,r,i,!0)}function ia(e){let t=Object.assign({},e);return t.randomizer=void 0,e.seed&&(t.seed=e.seed+1),t}function aa(e){return e.randomizer||=new hi(e.seed||0),e.randomizer.next()}function oa(e,t,n,r=1){return n.roughness*r*(aa(n)*(t-e)+e)}function Y(e,t,n=1){return oa(-e,e,t,n)}function X(e,t,n,r,i,a=!1){let o=a?i.disableMultiStrokeFill:i.disableMultiStroke,s=sa(e,t,n,r,i,!0,!1);if(o)return s;let c=sa(e,t,n,r,i,!0,!0);return s.concat(c)}function sa(e,t,n,r,i,a,o){let s=(e-n)**2+(t-r)**2,c=Math.sqrt(s),l=1;l=c<200?1:c>500?.4:-.0016668*c+1.233334;let u=i.maxRandomnessOffset||0;u*u*100>s&&(u=c/10);let d=u/2,f=.2+aa(i)*.2,p=i.bowing*i.maxRandomnessOffset*(r-t)/200,m=i.bowing*i.maxRandomnessOffset*(e-n)/200;p=Y(p,i,l),m=Y(m,i,l);let h=[],g=()=>Y(d,i,l),_=()=>Y(u,i,l),v=i.preserveVertices;return a&&(o?h.push({op:`move`,data:[e+(v?0:g()),t+(v?0:g())]}):h.push({op:`move`,data:[e+(v?0:Y(u,i,l)),t+(v?0:Y(u,i,l))]})),o?h.push({op:`bcurveTo`,data:[p+e+(n-e)*f+g(),m+t+(r-t)*f+g(),p+e+2*(n-e)*f+g(),m+t+2*(r-t)*f+g(),n+(v?0:g()),r+(v?0:g())]}):h.push({op:`bcurveTo`,data:[p+e+(n-e)*f+_(),m+t+(r-t)*f+_(),p+e+2*(n-e)*f+_(),m+t+2*(r-t)*f+_(),n+(v?0:_()),r+(v?0:_())]}),h}function ca(e,t,n){if(!e.length)return[];let r=[];r.push([e[0][0]+Y(t,n),e[0][1]+Y(t,n)]),r.push([e[0][0]+Y(t,n),e[0][1]+Y(t,n)]);for(let i=1;i3){let a=[],o=1-n.curveTightness;i.push({op:`move`,data:[e[1][0],e[1][1]]});for(let t=1;t+21&&i.push(n):i.push(n),i.push(e[t+3])}else{let r=.5,a=e[t+0],o=e[t+1],s=e[t+2],c=e[t+3],l=va(a,o,r),u=va(o,s,r),d=va(s,c,r),f=va(l,u,r),p=va(u,d,r),m=va(f,p,r);ba([a,l,f,m],0,n,i),ba([m,p,d,c],0,n,i)}return i}function xa(e,t){return Sa(e,0,e.length,t)}function Sa(e,t,n,r,i){let a=i||[],o=e[t],s=e[n-1],c=0,l=1;for(let r=t+1;rc&&(c=t,l=r)}return Math.sqrt(c)>r?(Sa(e,t,l+1,r,a),Sa(e,l,n,r,a)):(a.length||a.push(o),a.push(s)),a}function Ca(e,t=.15,n){let r=[],i=(e.length-1)/3;for(let n=0;n0?Sa(r,0,r.length,n):r}function wa(e,t,n){let r=Ri(Li(Ii(e))),i=[],a=[],o=[0,0],s=[],c=()=>{s.length>=4&&a.push(...Ca(s,t)),s=[]},l=()=>{c(),a.length&&(i.push(a),a=[])};for(let{key:e,data:t}of r)switch(e){case`M`:l(),o=[t[0],t[1]],a.push(o);break;case`L`:c(),a.push([t[0],t[1]]);break;case`C`:if(!s.length){let e=a.length?a[a.length-1]:o;s.push([e[0],e[1]])}s.push([t[0],t[1]]),s.push([t[2],t[3]]),s.push([t[4],t[5]]);break;case`Z`:c(),a.push([o[0],o[1]])}if(l(),!n)return i;let u=[];for(let e of i){let t=xa(e,n);t.length&&u.push(t)}return u}var Z=`none`,Ta=class{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:`#000`,strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:`hachure`,fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return mi()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,t,n){return{shape:e,sets:t||[],options:n||this.defaultOptions}}line(e,t,n,r,i){let a=this._o(i);return this._d(`line`,[J(e,t,n,r,a)],a)}rectangle(e,t,n,r,i){let a=this._o(i),o=[],s=Gi(e,t,n,r,a);if(a.fill){let i=[[e,t],[e+n,t],[e+n,t+r],[e,t+r]];a.fillStyle===`solid`?o.push(Qi([i],a)):o.push($i([i],a))}return a.stroke!==Z&&o.push(s),this._d(`rectangle`,o,a)}ellipse(e,t,n,r,i){let a=this._o(i),o=[],s=Ji(n,r,a),c=Yi(e,t,a,s);if(a.fill){if(a.fillStyle===`solid`){let n=Yi(e,t,a,s).opset;n.type=`fillPath`,o.push(n)}else o.push($i([c.estimatedPoints],a))}return a.stroke!==Z&&o.push(c.opset),this._d(`ellipse`,o,a)}circle(e,t,n,r){let i=this.ellipse(e,t,n,n,r);return i.shape=`circle`,i}linearPath(e,t){let n=this._o(t);return this._d(`linearPath`,[Ui(e,!1,n)],n)}arc(e,t,n,r,i,a,o=!1,s){let c=this._o(s),l=[],u=Xi(e,t,n,r,i,a,o,!0,c);if(o&&c.fill){if(c.fillStyle===`solid`){let o=Object.assign({},c);o.disableMultiStroke=!0;let s=Xi(e,t,n,r,i,a,!0,!1,o);s.type=`fillPath`,l.push(s)}else l.push(ea(e,t,n,r,i,a,c))}return c.stroke!==Z&&l.push(u),this._d(`arc`,l,c)}curve(e,t){let n=this._o(t),r=[],i=Ki(e,n);if(n.fill&&n.fill!==Z){if(n.fillStyle===`solid`){let t=Ki(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));r.push({type:`fillPath`,ops:this._mergedShape(t.ops)})}else{let t=[],i=e;if(i.length){let e=typeof i[0][0]==`number`?[i]:i;for(let r of e)r.length<3?t.push(...r):r.length===3?t.push(...Ca(ma([r[0],r[0],r[1],r[2]]),10,(1+n.roughness)/2)):t.push(...Ca(ma(r),10,(1+n.roughness)/2))}t.length&&r.push($i([t],n))}}return n.stroke!==Z&&r.push(i),this._d(`curve`,r,n)}polygon(e,t){let n=this._o(t),r=[],i=Ui(e,!0,n);return n.fill&&(n.fillStyle===`solid`?r.push(Qi([e],n)):r.push($i([e],n))),n.stroke!==Z&&r.push(i),this._d(`polygon`,r,n)}path(e,t){let n=this._o(t),r=[];if(!e)return this._d(`path`,r,n);e=(e||``).replace(/\n/g,` `).replace(/(-\s)/g,`-`).replace(`/(ss)/g`,` `);let i=n.fill&&n.fill!==`transparent`&&n.fill!==Z,a=n.stroke!==Z,o=!!(n.simplification&&n.simplification<1),s=o?4-4*(n.simplification||1):(1+n.roughness)/2,c=wa(e,1,s),l=Zi(e,n);if(i){if(n.fillStyle===`solid`){if(c.length===1){let t=Zi(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));r.push({type:`fillPath`,ops:this._mergedShape(t.ops)})}else r.push(Qi(c,n))}else r.push($i(c,n))}return a&&(o?c.forEach(e=>{r.push(Ui(e,!1,n))}):r.push(l)),this._d(`path`,r,n)}opsToPath(e,t){let n=``;for(let r of e.ops){let e=typeof t==`number`&&t>=0?r.data.map(e=>+e.toFixed(t)):r.data;switch(r.op){case`move`:n+=`M${e[0]} ${e[1]} `;break;case`bcurveTo`:n+=`C${e[0]} ${e[1]}, ${e[2]} ${e[3]}, ${e[4]} ${e[5]} `;break;case`lineTo`:n+=`L${e[0]} ${e[1]} `}}return n.trim()}toPaths(e){let t=e.sets||[],n=e.options||this.defaultOptions,r=[];for(let e of t){let t=null;switch(e.type){case`path`:t={d:this.opsToPath(e),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:Z};break;case`fillPath`:t={d:this.opsToPath(e),stroke:Z,strokeWidth:0,fill:n.fill||Z};break;case`fillSketch`:t=this.fillSketch(e,n)}t&&r.push(t)}return r}fillSketch(e,t){let n=t.fillWeight;return n<0&&(n=t.strokeWidth/2),{d:this.opsToPath(e),stroke:t.fill||Z,strokeWidth:n,fill:Z}}_mergedShape(e){return e.filter((e,t)=>t===0||e.op!==`move`)}},Ea=`http://www.w3.org/2000/svg`,Da=800,Oa=null;function ka(){return Oa||=new Ta().defaultOptions,Oa}function Aa(e,t,n){return{...ka(),maxRandomnessOffset:2,roughness:e===`highlight`?3:1.5,bowing:1,stroke:`#000`,strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:`hachure`,fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:e!==`double`,disableMultiStrokeFill:!1,seed:t,...n}}function ja(e){let t=e.padding;if(t||t===0){if(typeof t==`number`)return[t,t,t,t];if(Array.isArray(t)){let e=t;if(e.length)switch(e.length){case 4:return[...e];case 1:return[e[0],e[0],e[0],e[0]];case 2:return[...e,...e];case 3:return[...e,e[1]];default:return[e[0],e[1],e[2],e[3]]}}}return[5,5,5,5]}function Ma(e,t,n,r,i,a){let o=[],s=n.strokeWidth||2,c=ja(n),l=n.animate===void 0||!!n.animate,u=n.iterations||2,d=+!!n.rtl,f=Aa(`single`,a,n);switch(n.type){case`underline`:{let e=t.y+t.h+c[2];for(let n=d;ne.setAttribute(t,n);for(let r of t){let t=document.createElementNS(Ea,`path`);if(d(t,`d`,r),d(t,`fill`,`none`),d(t,`stroke`,n.color||`currentColor`),d(t,`stroke-width`,`${s}`),n.opacity!==void 0&&d(t,`style`,`opacity:${n.opacity}`),l){let e=t.getTotalLength();a.push(e),u+=e}e.appendChild(t),c.push(t)}if(l){let e=0;for(let t=0;tsetTimeout(t,e))}function Pa(e){let t=[];for(let n of e){let e=``;for(let r of n.ops){let n=r.data;switch(r.op){case`move`:e.trim()&&t.push(e.trim()),e=`M${n[0]} ${n[1]} `;break;case`bcurveTo`:e+=`C${n[0]} ${n[1]}, ${n[2]} ${n[3]}, ${n[4]} ${n[5]} `;break;case`lineTo`:e+=`L${n[0]} ${n[1]} `}}e.trim()&&t.push(e.trim())}return t}function Fa(){if(!window.__rno_kf_s){let e=window.__rno_kf_s=document.createElement(`style`);e.textContent=`@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }`,document.head.appendChild(e)}}var Ia=Object.defineProperty,La=(e,t,n)=>t in e?Ia(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Q=(e,t,n)=>(La(e,typeof t==`symbol`?t:t+``,n),n),Ra=class{constructor(e,t){Q(this,`_state`,`unattached`),Q(this,`_config`),Q(this,`_resizing`,!1),Q(this,`_ro`),Q(this,`_seed`,mi()),Q(this,`_e`),Q(this,`_svg`),Q(this,`_lastSizes`,[]),Q(this,`_animationDelay`,0),Q(this,`_resizeListener`,()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state===`showing`&&this.haveRectsChanged()&&this.show()},400))}),Q(this,`pendingRefresh`),this._e=e,this._config=JSON.parse(JSON.stringify(t)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,t){this._config[e]!==t&&(this._config[e]=t,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute(`class`,[`rough-annotation`,this._config.class||``].filter(Boolean).join(` `)))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state===`unattached`&&this._e.parentElement){Fa();let e=this._svg=document.createElementNS(Ea,`svg`);e.setAttribute(`class`,[`rough-annotation`,this._config.class||``].filter(Boolean).join(` `));let t=e.style;t.position=`absolute`,t.top=`0`,t.left=`0`,t.overflow=`visible`,t.pointerEvents=`none`,t.width=`100px`,t.height=`100px`;let n=this._config.type===`highlight`;if(this._e.insertAdjacentElement(n?`beforebegin`:`afterend`,e),this._state=`not-showing`,n){let e=window.getComputedStyle(this._e).position;(!e||e===`static`)&&(this._e.style.position=`relative`)}this.attachListeners()}}detachListeners(){window.removeEventListener(`resize`,this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener(`resize`,this._resizeListener,{passive:!0}),!this._ro&&`ResizeObserver`in window&&(this._ro=new window.ResizeObserver(e=>{for(let t of e)t.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){let e=this.rects();if(e.length===this._lastSizes.length){for(let t=0;tMath.round(e)===Math.round(t);return n(e.x,t.x)&&n(e.y,t.y)&&n(e.w,t.w)&&n(e.h,t.h)}isShowing(){return this._state!==`not-showing`}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case`unattached`:break;case`showing`:this.hide(),this._svg&&await this.render(this._svg,!0);break;case`not-showing`:this.attach(),this._svg&&await this.render(this._svg,!1)}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state=`not-showing`}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state=`unattached`,this.detachListeners()}async render(e,t){let n=this._config;t&&(n=JSON.parse(JSON.stringify(this._config)),n.animate=!1);let r=this.rects(),i=0;r.forEach(e=>i+=e.w);let a=n.animationDuration||Da,o=0,s=[];for(let t=0;tObject.assign(e,{type:`box`}),circle:e=>Object.assign(e,{type:`circle`}),underline:e=>Object.assign(e,{type:`underline`}),highlight:e=>Object.assign(e,{type:`highlight`}),"strike-through":e=>Object.assign(e,{type:`strike-through`}),"crossed-off":e=>Object.assign(e,{type:`crossed-off`}),bracket:e=>Object.assign(e,{type:`bracket`}),strike:e=>Object.assign(e,{type:`strike-through`}),cross:e=>Object.assign(e,{type:`crossed-off`}),crossed:e=>Object.assign(e,{type:`crossed-off`}),linethrough:e=>Object.assign(e,{type:`strike-through`}),"line-through":e=>Object.assign(e,{type:`strike-through`}),black:e=>$(e,`text-black`),blue:e=>$(e,`text-blue`),cyan:e=>$(e,`text-cyan`),gray:e=>$(e,`text-gray`),green:e=>$(e,`text-green`),indigo:e=>$(e,`text-indigo`),lime:e=>$(e,`text-lime`),orange:e=>$(e,`text-orange`),pink:e=>$(e,`text-pink`),purple:e=>$(e,`text-purple`),red:e=>$(e,`text-red`),teal:e=>$(e,`text-teal`),white:e=>$(e,`text-white`),yellow:e=>$(e,`text-yellow`)},Va=[[/^delay-?(\d+)?$/,(e,t,n)=>(t.delay=(e[1]?Number.parseInt(e[1]):n)||300,t)],[/^(?:op|opacity)-?(\d+)?$/,(e,t,n)=>(t.opacity=((e[1]?Number.parseInt(e[1]):n)||100)/100,t)]];function Ha(){return{install(e){e.directive(`mark`,{name:`v-mark`,mounted:(e,t)=>{let{isPrintMode:n}=ue(),r=m(()=>{let e=typeof t.value==`object`&&!Array.isArray(t.value)?{...t.value}:{at:t.value},r={at:e.at},i=Object.entries(t.modifiers).filter(([e,t])=>{if(Ba[e])return r=Ba[e](r,t),!1;for(let[n,i]of Va){let a=e.match(n);if(a)return r=i(a,r,t),!1}return!0});i.length&&console.warn(`[Slidev] Invalid modifiers for v-mark:`,i);let a={...r,...e};return a.type||=`underline`,n.value&&(a.animationDuration=1),a}),i=za(e,r.value),a=ai(e,t,r.value.at);if(!a){i.show();return}e.watchStopHandle=l(()=>{let e;r.value.class&&(i.class=r.value.class),r.value.color&&(i.color=r.value.color);let t=r.value.at;e=t===!0||t!==!1&&a.isActive.value,e!=null&&(e?i.show():i.hide())})},unmounted:e=>{e.watchStopHandle?.()}})}}}function Ua(){return{install(e){let t=xe();e.directive(`motion`,{name:`v-motion`,mounted(e,n,r,i){let a=ei(n,Oe),o=ei(n,ke),s=ei(n,Me),{currentPage:l,clicks:u,isPrintMode:d}=ue(),f=r.props={...r.props},p={...f.initial,...f.variants?.[`slidev-initial`]},m={...f.enter,...f.variants?.[`slidev-enter`]},h={...f.leave,...f.variants?.[`slidev-leave`]};delete f.initial,delete f.enter,delete f.leave;let g=`${xr()}-`,_=[];for(let e of Object.keys(f))if(e.startsWith(`click-`)){let t=e.slice(6),n=t.includes(`-`)?t.split(`-`).map(Number):+t,r=g+t;_.push({id:r,at:n,variant:{...f[e]},info:a?.value.calculate(n)}),delete f[e]}_.sort((e,t)=>(Array.isArray(e.at)?e.at[0]:e.at)-(Array.isArray(t.at)?t.at[0]:t.at)),t.created(e,n,r,i),t.mounted(e,n,r,i);let v=e.motionInstance;v.clickIds=_.map(e=>e.id),v.set(p),v.watchStopHandle=c([o,l,u].filter(Boolean),()=>{let t=ii.get(e)?.visibilityState.value??`shown`;if(!a?.value||![`slide`,`presenter`].includes(s?.value??``)){let e={...p,...m};for(let{variant:t}of _)Object.assign(e,t);v.set(e)}else if(d.value||o?.value===l.value){if(t===`shown`){let e={...p,...m};for(let{variant:t,info:n}of _)(!n||n.isActive.value)&&Object.assign(e,t);d.value?v.set(e):v.apply(e)}else v.apply(t===`before`?p:h)}else v.apply((o?.value??-1)>l.value?p:h)},{immediate:!0})},unmounted(e){e.motionInstance.watchStopHandle()}})}}}var Wa=Object.assign({}),Ga=Object.assign({}),Ka=Object.assign({}),qa=[Object.values(Wa)[0],Object.values(Ga)[0],Object.values(Ka)[0]].filter(Boolean);function Ja(){let e=[];function t(e){if(!M.remote||M.remote===e.query.password)return!0;if(M.remote&&e.query.password===void 0){let e=prompt(`Enter password`);if(M.remote===e)return!0}return e.params.no?{path:`/${e.params.no}`}:{path:``}}return e.push({name:`entry`,path:`/entry`,component:()=>j(()=>import(`./slidev/entry-DXY6sGn2.js`),__vite__mapDeps([2,3,1,4,5,6]),import.meta.url),beforeEnter:t},{name:`overview`,path:`/overview`,component:()=>j(()=>import(`./slidev/overview-C2nc1_I5.js`),__vite__mapDeps([7,3,1,4,8,5,9,10,11,12,13,14,15,16,17,18,19,20]),import.meta.url),beforeEnter:t},{name:`notes`,path:`/notes`,component:()=>j(()=>import(`./slidev/notes-Cx4IkZte.js`),__vite__mapDeps([21,3,1,4,8,5,9,10,12,22,13,14,23]),import.meta.url),beforeEnter:t},{name:`notes-edit`,path:`/notes-edit`,component:()=>j(()=>import(`./slidev/notes-edit-CST45Tju.js`),__vite__mapDeps([24,3,1,4,8,5,9,10,12,22]),import.meta.url),beforeEnter:t},{name:`presenter`,path:`/presenter/:no`,component:()=>j(()=>import(`./slidev/presenter-CeSv1Nh0.js`),__vite__mapDeps([25,3,1,4,8,5,9,10,17,26,12,27,28,13,14,23,15,16,18,19,29,30,31]),import.meta.url),beforeEnter:t},{path:`/presenter`,redirect:{path:`/presenter/1`}}),e.push({name:`play`,path:`/:no`,component:()=>j(()=>import(`./slidev/play-DqoRPRn6.js`),__vite__mapDeps([32,3,1,4,8,5,9,10,17,11,22,15,16,18,29,12,27,30,33]),import.meta.url)},{path:``,redirect:{path:`/1`}},{path:`/:pathMatch(.*)*`,name:`NotFound`,component:()=>j(()=>import(`./slidev/404-B_Ln99xV.js`),__vite__mapDeps([34,3,1,4,8,5,9,10,35]),import.meta.url)}),qa.reduce((e,t)=>t(e),e)}async function Ya(e){function t(){document.documentElement.style.setProperty(`--vh`,`${window.innerHeight*.01}px`)}t(),window.addEventListener(`resize`,t);let n=he({history:Te(`./`),routes:Ja()});e.use(n),e.use(qr()),e.use(ri()),e.use(Ha()),e.use(pi()),e.use(Ua()),e.use(b,{container:`#twoslash-container`});let r={app:e,router:n};for(let e of Zr)await e(r)}async function Xa(){let e=y(Rr);await Ya(e),e.mount(`#app`)}Xa();export{Qr as a,Er as c,Sr as d,Ht as f,Mt as h,$r as i,Or as l,Wt as m,ci as n,Ir as o,Ut as p,si as r,kr as s,ui as t,xr as u}; \ No newline at end of file diff --git a/lecture-07/assets/index-DrfYeVie.css b/lecture-07/assets/index-DrfYeVie.css new file mode 100644 index 0000000000000000000000000000000000000000..2e62e5b76345efcc8e79246c44f4f5fde5f27298 --- /dev/null +++ b/lecture-07/assets/index-DrfYeVie.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-style:solid;border-width:0;border-color:var(--un-default-border-color,#e5e7eb)}:before,:after{--un-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*,:before,:after,::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose,[prose=""]{color:var(--un-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--un-prose-counters);font-weight:400}[prose=""] :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--un-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--un-prose-bullets)}[prose=""] :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--un-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--un-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--un-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before,[prose=""] :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after,[prose=""] :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-kbd);box-shadow:0 0 0 1px rgb(var(--un-prose-kbd-shadows) / 10%), 0 3px 0 rgb(var(--un-prose-kbd-shadows) / 10%);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,[prose=""] :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after,[prose=""] :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-pre-code);background-color:var(--un-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,[prose=""] :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after,[prose=""] :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--un-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--un-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--un-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--un-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose,[prose=""]{font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where():not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where():not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where():not(:where([class~=not-prose],[class~=not-prose] *)),[prose=""] :where():not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose,[prose=""]{--un-prose-body:#374151;--un-prose-invert-body:#d1d5db;--un-prose-headings:#111827;--un-prose-invert-headings:white;--un-prose-lead:#4b5563;--un-prose-invert-lead:#9ca3af;--un-prose-links:#111827;--un-prose-invert-links:white;--un-prose-bold:#111827;--un-prose-invert-bold:white;--un-prose-counters:#6b7280;--un-prose-invert-counters:#9ca3af;--un-prose-bullets:#d1d5db;--un-prose-invert-bullets:#4b5563;--un-prose-hr:#e5e7eb;--un-prose-invert-hr:#374151;--un-prose-quotes:#111827;--un-prose-invert-quotes:#f3f4f6;--un-prose-quote-borders:#e5e7eb;--un-prose-invert-quote-borders:#374151;--un-prose-captions:#6b7280;--un-prose-invert-captions:#9ca3af;--un-prose-kbd:#111827;--un-prose-invert-kbd:white;--un-prose-kbd-shadows:#111827;--un-prose-invert-kbd-shadows:white;--un-prose-code:#111827;--un-prose-invert-code:white;--un-prose-pre-code:#e5e7eb;--un-prose-invert-pre-code:#d1d5db;--un-prose-pre-bg:#1f2937;--un-prose-invert-pre-bg:#00000080;--un-prose-th-borders:#d1d5db;--un-prose-invert-th-borders:#4b5563;--un-prose-td-borders:#e5e7eb;--un-prose-invert-td-borders:#374151}.dark .dark\:prose-invert{--un-prose-body:var(--un-prose-invert-body);--un-prose-headings:var(--un-prose-invert-headings);--un-prose-lead:var(--un-prose-invert-lead);--un-prose-links:var(--un-prose-invert-links);--un-prose-bold:var(--un-prose-invert-bold);--un-prose-counters:var(--un-prose-invert-counters);--un-prose-bullets:var(--un-prose-invert-bullets);--un-prose-hr:var(--un-prose-invert-hr);--un-prose-quotes:var(--un-prose-invert-quotes);--un-prose-quote-borders:var(--un-prose-invert-quote-borders);--un-prose-captions:var(--un-prose-invert-captions);--un-prose-kbd:var(--un-prose-invert-kbd);--un-prose-kbd-shadows:var(--un-prose-invert-kbd-shadows);--un-prose-code:var(--un-prose-invert-code);--un-prose-pre-code:var(--un-prose-invert-pre-code);--un-prose-pre-bg:var(--un-prose-invert-pre-bg);--un-prose-th-borders:var(--un-prose-invert-th-borders);--un-prose-td-borders:var(--un-prose-invert-td-borders)}.container{width:100%}.z-context-menu{z-index:60}.z-label{z-index:40}.z-menu{z-index:20}.z-modal{z-index:70}.z-nav{z-index:50}.slidev-glass-effect{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color,#0000001a),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);border-width:1px;border-color:#9ca3af33;--un-bg-opacity:.75!important}.border-main,.dark [border~=dark\:main],.dark [dark\:border~=main],[border-main=""],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.dark .bg-main,.dark .slidev-glass-effect{--un-bg-opacity:1;background-color:rgb(18 18 18/var(--un-bg-opacity))}.bg-primary,[bg-primary=""]{background-color:var(--slidev-theme-primary)}.hover\:bg-active:hover,[hover\:bg-active=""]:hover{background-color:#9ca3af1a}.dark .text-main{--un-text-opacity:1;color:rgb(221 221 221/var(--un-text-opacity))}.text-main{--un-text-opacity:1;color:rgb(24 24 24/var(--un-text-opacity))}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}:root{--color-note:#0969da;--color-tip:#1a7f37;--color-warning:#9a6700;--color-severe:#bc4c00;--color-caution:#d1242f;--color-important:#8250df}@media (prefers-color-scheme:dark){:root{--color-note:#2f81f7;--color-tip:#3fb950;--color-warning:#d29922;--color-severe:#db6d28;--color-caution:#f85149;--color-important:#a371f7}}.markdown-alert{color:inherit;border-left:.25em solid #888;margin-bottom:16px;padding:.5rem 1rem}.markdown-alert>:first-child{margin-top:0}.markdown-alert>:last-child{margin-bottom:0}.markdown-alert .markdown-alert-title{align-items:center;font-weight:500;line-height:1;display:flex}.markdown-alert .markdown-alert-title .octicon{vertical-align:text-bottom;fill:currentColor;margin-right:.5rem;display:inline-block;overflow:visible!important}.markdown-alert.markdown-alert-note{border-left-color:var(--color-note)}.markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--color-note)}.markdown-alert.markdown-alert-important{border-left-color:var(--color-important)}.markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--color-important)}.markdown-alert.markdown-alert-warning{border-left-color:var(--color-warning)}.markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--color-warning)}.markdown-alert.markdown-alert-tip{border-left-color:var(--color-tip)}.markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--color-tip)}.markdown-alert.markdown-alert-caution{border-left-color:var(--color-caution)}.markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--color-caution)}:root{--slidev-code-background:#f5f5f5;--slidev-code-foreground:#1b1b1b;--slidev-code-font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding:8px;--slidev-code-font-size:12px;--slidev-code-line-height:18px;--slidev-code-radius:4px;--slidev-code-margin:4px 0;--slidev-theme-primary:#3ab9d5;--slidev-transition-duration:.5s;--slidev-slide-container-background:black;--slidev-controls-foreground:white;--slidev-code-tab-divider:#e5e5e5;--slidev-code-tab-text-color:#67676c;--slidev-code-tab-font-size:12px;--slidev-code-tab-active-text-color:#3c3c43}html.dark{--slidev-code-background:#1b1b1b;--slidev-code-foreground:#eee;--slidev-code-tab-divider:#222;--slidev-code-tab-text-color:#98989f;--slidev-code-tab-active-text-color:#dfdfd6}html,body,#app,#page-root{width:100%;height:100vh;height:calc(var(--vh,1vh) * 100);-webkit-print-color-adjust:exact;print-color-adjust:exact;--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity));margin:0;padding:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;overflow:hidden}.dark html,.dark body,.dark #app,.dark #page-root{--un-bg-opacity:1;background-color:rgb(18 18 18/var(--un-bg-opacity))}html{background:0 0}.slidev-icon-btn{aspect-ratio:1;-webkit-user-select:none;user-select:none;cursor:pointer;vertical-align:middle;opacity:.75;border-radius:.25rem;outline:none;justify-content:center;align-items:center;padding:.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative}@media (width>=768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:.1;background-color:rgb(156 163 175/var(--un-bg-opacity))}.slidev-icon-btn:focus-visible{opacity:1;--un-outline-color-opacity:1;outline-width:2px;outline-color:rgb(0 0 0/var(--un-outline-color-opacity));outline-offset:2px;outline-style:solid}.dark .slidev-icon-btn:focus-visible{--un-outline-color-opacity:1;outline-color:rgb(255 255 255/var(--un-outline-color-opacity))}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-layout a.slidev-icon-btn{border-style:none}.slidev-layout a.slidev-icon-btn:hover{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity));border-style:none}.slidev-icon{vertical-align:sub;line-height:1em;display:inline-block}.slidev-page{width:100%;position:relative;top:0;left:0;right:0}.slidev-note-with-clicks .slidev-note-fade{color:#888c}.dark .slidev-note-with-clicks .slidev-note-fade{color:#a1a1a1cc}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;--un-text-opacity:1;color:rgb(167 139 250/var(--un-text-opacity));background-color:#a78bfa1a;border-width:1px;border-color:#0000;border-radius:.25rem;align-items:center;padding-left:.25rem;padding-right:.25rem;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.7em;display:inline-flex}.slidev-note-click-mark.slidev-note-click-mark-active{--un-border-opacity:1;border-width:1px;border-color:rgb(167 139 250/var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;opacity:.8;background-color:currentColor;width:1.2em;height:1.2em;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.slidev-form-button{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity));--un-border-opacity:1;border-bottom-width:2px;border-color:rgb(55 65 81/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(107 114 128/var(--un-bg-opacity));border-radius:.25rem;padding:.25rem 1rem}.slidev-form-button:hover{--un-border-opacity:1;border-color:rgb(75 85 99/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(156 163 175/var(--un-bg-opacity))}.slidev-form-button.primary{--un-border-opacity:1;border-color:rgb(17 94 89/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(13 148 136/var(--un-bg-opacity))}.slidev-form-button.primary:hover{--un-border-opacity:1;border-color:rgb(15 118 110/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(20 184 166/var(--un-bg-opacity))}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}#twoslash-container{position:fixed}#twoslash-container .v-popper__wrapper:not(.no-slide-scale>*){zoom:var(--slidev-slide-scale)}#twoslash-container .v-popper__popper:not(.no-slide-scale>*){translate:calc(10px * (1 - var(--slidev-slide-scale))) 0;width:max-content}.slidev-note ul{margin:0}html.dark:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.dark .shiki{color:var(--shiki-dark,inherit);--twoslash-popup-bg:var(--shiki-dark-bg,inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light,inherit);--twoslash-popup-bg:var(--shiki-light-bg,inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{scroll-padding:var(--slidev-code-padding);margin:var(--slidev-code-margin)!important}.slidev-code-wrapper:-webkit-scrollbar{width:0}.slidev-code{background:var(--slidev-code-background);overflow:auto;font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important}.slidev-code-block-title,.slidev-code-group-tabs{background:var(--slidev-code-background);color:var(--slidev-code-tab-text-color);padding-left:var(--slidev-code-padding);padding-right:var(--slidev-code-padding);font-size:var(--slidev-code-tab-font-size);border-radius:var(--slidev-code-radius) var(--slidev-code-radius) 0 0;box-shadow:inset 0 -1px var(--slidev-code-tab-divider);align-items:center;gap:8px;display:flex}.slidev-code-block-title{padding:var(--slidev-code-padding)}.slidev-code-tab{font-size:var(--slidev-code-tab-font-size);white-space:nowrap;cursor:pointer;padding:var(--slidev-code-padding);color:var(--slidev-code-tab-text-color);border-bottom:2px solid #0000;align-items:center;gap:8px;transition:color .25s;display:flex;position:relative}.slidev-code-tab:hover{color:var(--slidev-code-tab-active-text-color)!important}.slidev-code-group-blocks .slidev-code-wrapper{margin:0!important}.slidev-code-group-blocks .slidev-code{border-radius:0 0 var(--slidev-code-radius) var(--slidev-code-radius)!important}.slidev-code-group-blocks .slidev-code-wrapper.active{display:block}.slidev-code-group-blocks .slidev-code-wrapper{display:none}.slidev-code-block-title+.slidev-code,.slidev-code-group-tabs+.slidev-code{border-top-left-radius:0!important;border-top-right-radius:0!important}.slidev-code .slidev-code-dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start,1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;text-align:right;--un-text-opacity:1;width:1rem;color:rgb(156 163 175/var(--un-text-opacity));margin-right:1.5rem;display:inline-block}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99/var(--un-text-opacity))}.slidev-note :not(pre)>code,.slidev-layout :not(pre)>code{background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-size:.9em;font-weight:300}.slidev-note :not(pre)>code:after,.slidev-note :not(pre)>code:before{content:""}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{translate:100%}.slide-left-leave-to,.slide-right-enter-from{translate:-100%}.slide-up-enter-from,.slide-down-leave-to{translate:0 100%}.slide-up-leave-to,.slide-down-enter-from{translate:0 -100%}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}:root{--twoslash-popup-bg:var(--slidev-code-background);--twoslash-popup-color:var(--slidev-code-foreground);--twoslash-docs-color:inherit;--twoslash-docs-font:inherit;--twoslash-code-font:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color:#8888;--twoslash-border-color:#8888;--twoslash-cursor-color:var(--slidev-theme-primary);--twoslash-matched-color:var(--slidev-theme-primary)}.twoslash-popup-container{font-size:13px}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.slidev-vclick-target{transition:all .1s}.slidev-vclick-target.slidev-vclick-anim-none{transition:none}.slidev-vclick-target.slidev-vclick-anim-fade-in{transition:all .3s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-hidden.slidev-vclick-anim-fade{opacity:.5!important}.slidev-vclick-hidden.slidev-vclick-anim-fade-in{opacity:0!important}.slidev-vclick-hidden.slidev-vclick-anim-up{translate:0 20px}.slidev-vclick-hidden.slidev-vclick-anim-down{translate:0 -20px}.slidev-vclick-hidden.slidev-vclick-anim-left{translate:20px}.slidev-vclick-hidden.slidev-vclick-anim-right{translate:-20px}.slidev-vclick-hidden.slidev-vclick-anim-scale{scale:.9}.slidev-vclick-display-none{display:none!important}.slidev-vclick-fade{opacity:.5}:root{--dl-bg:#fff;--dl-surface:#f7f9fa;--dl-border:#e3e8ea;--dl-heading:#111;--dl-body:#595959;--dl-muted:#8a8a8a;--dl-accent:#0097a7;--dl-accent-soft:#e0f4f6;--dl-accent-strong:#00707c;--dl-danger:#d32f2f;--dl-table-header:#eee;--dl-code-bg:#f6f8fa;--dl-fs-title:4.4rem;--dl-fs-section:3rem;--dl-fs-heading:2.1rem;--dl-fs-body:1.5rem;--dl-fs-secondary:1.17rem;--dl-fs-citation:.85rem}html.dark{--dl-bg:#0d1117;--dl-surface:#161b22;--dl-border:#2a323d;--dl-heading:#f2f5f7;--dl-body:#c2cad2;--dl-muted:#8b949e;--dl-accent:#2ec9d8;--dl-accent-soft:#123236;--dl-accent-strong:#7fe3ee;--dl-danger:#ff7b72;--dl-table-header:#1c2530;--dl-code-bg:#161b22}.slidev-layout{--slidev-code-background:var(--dl-code-bg);background:var(--dl-bg);height:100%;color:var(--dl-body);font-size:var(--dl-fs-body);padding:2.6rem 3rem 3.2rem;line-height:1.5;position:relative}.slidev-layout h1,.slidev-layout h2,.slidev-layout h3,.slidev-layout h4{color:var(--dl-heading);letter-spacing:-.01em;font-weight:600}.slidev-layout h1{font-size:var(--dl-fs-heading);margin-bottom:1.2rem}.slidev-layout h2{margin-bottom:.8rem;font-size:1.7rem}.slidev-layout h3{margin-bottom:.6rem;font-size:1.35rem}.slidev-layout p{margin:.5rem 0}.slidev-layout ul{margin:.4rem 0;padding-left:1.35rem;list-style:outside}.slidev-layout ol{margin:.4rem 0;padding-left:1.6rem;list-style:decimal}.slidev-layout ul ul{list-style:circle}.slidev-layout li{margin:.42rem 0}.slidev-layout li::marker{color:var(--dl-accent)}.slidev-layout a{color:var(--dl-accent);border-bottom:1px solid color-mix(in srgb, var(--dl-accent) 40%, transparent);text-decoration:none;transition:border-color .15s}.slidev-layout a:hover{border-bottom-color:var(--dl-accent)}.slidev-layout strong{color:var(--dl-heading);font-weight:600}.dl-wrong{color:var(--dl-danger);font-weight:600}.dl-secondary{font-size:var(--dl-fs-secondary);color:var(--dl-muted)}.slidev-layout table{border-collapse:collapse;font-size:var(--dl-fs-secondary);width:100%}.slidev-layout table th{background:var(--dl-table-header);color:var(--dl-heading);text-align:left;font-weight:600}.slidev-layout table th,.slidev-layout table td{border:1px solid var(--dl-border);padding:.4rem .7rem}.slidev-layout blockquote{border-left:3px solid var(--dl-accent);background:var(--dl-accent-soft);color:var(--dl-body);margin:.8rem 0;padding:.6rem 1rem}.dl-rule{background:var(--dl-accent);border-radius:2px;width:4.5rem;height:3px}.dl-callout{border-left:3px solid var(--dl-accent);background:var(--dl-accent-soft);border-radius:0 6px 6px 0;padding:.7rem 1rem;font-size:1.05rem}.dl-card{border:1px solid var(--dl-border);background:var(--dl-surface);border-radius:8px;overflow:hidden}.dl-card img{object-fit:cover;width:100%;height:6.2rem;display:block}.dl-card.is-contain img{object-fit:contain;background:var(--dl-bg);padding:.5rem}.dl-card__cap{color:var(--dl-body);padding:.35rem .55rem;font-size:.78rem}.dl-tight{font-size:1.06rem;line-height:1.45}.dl-tight li{margin:.34rem 0}.dl-tight .dl-callout{font-size:1rem}.dl-ledger table{font-size:1.02rem}.dl-ledger table th,.dl-ledger table td{padding:.24rem .6rem}.dl-prompt{color:var(--dl-heading);border-left:3px solid var(--dl-accent);padding-left:.8rem;font-size:1.05rem;font-style:italic}.dl-reveal{color:var(--dl-accent);font-size:1.8rem;font-weight:700}.slidev-layout .katex{color:var(--dl-heading)}.slidev-layout .katex-display>.katex{font-size:1em}.dl-math-sm .katex{font-size:.84em}.dl-math-xs .katex{font-size:.72em}.slidev-code-wrapper{border:1px solid var(--dl-border);border-radius:6px;flex-shrink:0;overflow:hidden}.slidev-layout pre.shiki{font-size:.76rem;line-height:1.38}.dl-ledger table .katex{font-size:.95em;line-height:1}.dl-ledger--formula table td:nth-child(2){white-space:nowrap;width:55%}.dl-ledger--formula table th{display:none}.dl-ledger--compare table{font-size:.92em}.dl-ledger--compare table td:not(:first-child),.dl-ledger--compare table th:not(:first-child){text-align:center}.dl-tight code{white-space:nowrap}.dl-diagram{width:100%;max-width:41rem;height:auto;font-family:inherit}.dl-dg-box{fill:var(--dl-surface);stroke:var(--dl-border);stroke-width:1.5px}.dl-dg-box.is-accent{fill:var(--dl-accent-soft);stroke:var(--dl-accent)}.dl-dg-box.is-bad{fill:none;stroke:var(--dl-danger);stroke-dasharray:4 3}.dl-dg-net{fill:var(--dl-accent-soft);stroke:var(--dl-accent);stroke-width:1.6px}.dl-dg-net.is-critic{fill:var(--dl-surface);stroke:var(--dl-body)}.dl-dg-op{fill:var(--dl-bg);stroke:var(--dl-heading);stroke-width:1.6px}.dl-dg-lab{fill:var(--dl-heading);font-size:17px;font-style:italic;font-weight:600}.dl-dg-lab.is-sm{font-size:13px;font-style:normal}.dl-dg-in{fill:var(--dl-accent-strong);font-size:13px;font-weight:700}.dl-dg-net.is-critic+.dl-dg-in,.dl-dg-in.is-critic{fill:var(--dl-body)}.dl-dg-small{fill:var(--dl-muted);font-size:11px}.dl-dg-small.is-bad{fill:var(--dl-danger)}.dl-dg-small.is-good{fill:var(--dl-accent-strong)}.dl-dg-arrow{fill:none;stroke:var(--dl-body);stroke-width:1.8px}.dl-dg-head{fill:var(--dl-body)}.dl-dg-loss,.dl-dg-grad{fill:none;stroke:var(--dl-muted);stroke-width:1.4px;stroke-dasharray:3 3}.dl-dg-grad.is-bad{stroke:var(--dl-danger)}.dl-dg-grad.is-good{stroke:var(--dl-accent);stroke-dasharray:none}.dl-dg-split{stroke:var(--dl-border);stroke-width:1px}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(./KaTeX_AMS-Regular-BQhdFMY1.woff2)format("woff2"),url(./KaTeX_AMS-Regular-DMm9YOAa.woff)format("woff"),url(./KaTeX_AMS-Regular-DRggAlZN.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(./KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2)format("woff2"),url(./KaTeX_Caligraphic-Bold-BEiXGLvX.woff)format("woff"),url(./KaTeX_Caligraphic-Bold-ATXxdsX0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(./KaTeX_Caligraphic-Regular-Di6jR-x-.woff2)format("woff2"),url(./KaTeX_Caligraphic-Regular-CTRA-rTL.woff)format("woff"),url(./KaTeX_Caligraphic-Regular-wX97UBjC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(./KaTeX_Fraktur-Bold-CL6g_b3V.woff2)format("woff2"),url(./KaTeX_Fraktur-Bold-BsDP51OF.woff)format("woff"),url(./KaTeX_Fraktur-Bold-BdnERNNW.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(./KaTeX_Fraktur-Regular-CTYiF6lA.woff2)format("woff2"),url(./KaTeX_Fraktur-Regular-Dxdc4cR9.woff)format("woff"),url(./KaTeX_Fraktur-Regular-CB_wures.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(./KaTeX_Main-Bold-Cx986IdX.woff2)format("woff2"),url(./KaTeX_Main-Bold-Jm3AIy58.woff)format("woff"),url(./KaTeX_Main-Bold-waoOVXN0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(./KaTeX_Main-BoldItalic-DxDJ3AOS.woff2)format("woff2"),url(./KaTeX_Main-BoldItalic-SpSLRI95.woff)format("woff"),url(./KaTeX_Main-BoldItalic-DzxPMmG6.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(./KaTeX_Main-Italic-NWA7e6Wa.woff2)format("woff2"),url(./KaTeX_Main-Italic-BMLOBm91.woff)format("woff"),url(./KaTeX_Main-Italic-3WenGoN9.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(./KaTeX_Main-Regular-B22Nviop.woff2)format("woff2"),url(./KaTeX_Main-Regular-Dr94JaBh.woff)format("woff"),url(./KaTeX_Main-Regular-ypZvNtVU.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(./KaTeX_Math-BoldItalic-CZnvNsCZ.woff2)format("woff2"),url(./KaTeX_Math-BoldItalic-iY-2wyZ7.woff)format("woff"),url(./KaTeX_Math-BoldItalic-B3XSjfu4.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(./KaTeX_Math-Italic-t53AETM-.woff2)format("woff2"),url(./KaTeX_Math-Italic-DA0__PXp.woff)format("woff"),url(./KaTeX_Math-Italic-flOr_0UB.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(./KaTeX_SansSerif-Bold-D1sUS0GD.woff2)format("woff2"),url(./KaTeX_SansSerif-Bold-DbIhKOiC.woff)format("woff"),url(./KaTeX_SansSerif-Bold-CFMepnvq.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(./KaTeX_SansSerif-Italic-C3H0VqGB.woff2)format("woff2"),url(./KaTeX_SansSerif-Italic-DN2j7dab.woff)format("woff"),url(./KaTeX_SansSerif-Italic-YYjJ1zSn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(./KaTeX_SansSerif-Regular-DDBCnlJ7.woff2)format("woff2"),url(./KaTeX_SansSerif-Regular-CS6fqUqJ.woff)format("woff"),url(./KaTeX_SansSerif-Regular-BNo7hRIc.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(./KaTeX_Script-Regular-D3wIWfF6.woff2)format("woff2"),url(./KaTeX_Script-Regular-D5yQViql.woff)format("woff"),url(./KaTeX_Script-Regular-C5JkGWo-.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(./KaTeX_Size1-Regular-mCD8mA8B.woff2)format("woff2"),url(./KaTeX_Size1-Regular-C195tn64.woff)format("woff"),url(./KaTeX_Size1-Regular-Dbsnue_I.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(./KaTeX_Size2-Regular-Dy4dx90m.woff2)format("woff2"),url(./KaTeX_Size2-Regular-oD1tc_U0.woff)format("woff"),url(./KaTeX_Size2-Regular-B7gKUWhC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC)format("woff2"),url(./KaTeX_Size3-Regular-CTq5MqoE.woff)format("woff"),url(./KaTeX_Size3-Regular-DgpXs0kz.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(./KaTeX_Size4-Regular-Dl5lxZxV.woff2)format("woff2"),url(./KaTeX_Size4-Regular-BF-4gkZK.woff)format("woff"),url(./KaTeX_Size4-Regular-DWFBv043.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(./KaTeX_Typewriter-Regular-CO6r4hn1.woff2)format("woff2"),url(./KaTeX_Typewriter-Regular-C0xS9mPB.woff)format("woff"),url(./KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.18.4"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{white-space:nowrap;width:min-content;position:relative}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .katex-vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .katex-thinbox{flex-direction:row;width:0;max-width:0;display:inline-flex}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.katex-root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .katex-stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}.i-carbon-camera{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M29 26H3a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h6.46l1.71-2.55A1 1 0 0 1 12 4h8a1 1 0 0 1 .83.45L22.54 7H29a1 1 0 0 1 1 1v17a1 1 0 0 1-1 1M4 24h24V9h-6a1 1 0 0 1-.83-.45L19.46 6h-6.92l-1.71 2.55A1 1 0 0 1 10 9H4Z'/%3E%3Cpath fill='currentColor' d='M16 22a6 6 0 1 1 6-6a6 6 0 0 1-6 6m0-10a4 4 0 1 0 4 4a4 4 0 0 0-4-4'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon-magic-wand{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M29.414 24L12 6.586a2.05 2.05 0 0 0-2.828 0L6.586 9.172a2 2 0 0 0 0 2.828l17.413 17.414a2 2 0 0 0 2.828 0l2.587-2.586a2 2 0 0 0 0-2.828M8 10.586L10.586 8l5 5l-2.587 2.587zM25.413 28l-11-10.999L17 14.414l11 11ZM2 16l2-2l2 2l-2 2zM14 4l2-2l2 2l-2 2zM2 4l2-2l2 2l-2 2z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon-magic-wand-filled{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M29.414 24L12 6.586a2.05 2.05 0 0 0-2.828 0L6.586 9.172a2 2 0 0 0 0 2.828l17.413 17.414a2 2 0 0 0 2.828 0l2.587-2.586a2 2 0 0 0 0-2.828M8 10.586L10.586 8l5 5l-2.587 2.587zM2 16l2-2l2 2l-2 2zM14 4l2-2l2 2l-2 2zM2 4l2-2l2 2l-2 2z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon-moon{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.1 11.1 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1 1 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.07 13.07 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon-sun{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:apps{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:arrow-down{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M24.59 16.59L17 24.17V4h-2v20.17l-7.59-7.58L6 18l10 10l10-10z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:arrow-left{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:arrow-right{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:arrow-up{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16 4L6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:arrow-up-right{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:catalog{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M26 2H8a2 2 0 0 0-2 2v4H4v2h2v5H4v2h2v5H4v2h2v4a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2m0 26H8v-4h2v-2H8v-5h2v-2H8v-5h2V8H8V4h18Z'/%3E%3Cpath fill='currentColor' d='M14 8h8v2h-8zm0 7h8v2h-8zm0 7h8v2h-8z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:checkbox{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M26 4H6a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M6 26V6h20v20Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:checkmark{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:close{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:close-outline{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16 2C8.2 2 2 8.2 2 16s6.2 14 14 14s14-6.2 14-14S23.8 2 16 2m0 26C9.4 28 4 22.6 4 16S9.4 4 16 4s12 5.4 12 12s-5.4 12-12 12'/%3E%3Cpath fill='currentColor' d='M21.4 23L16 17.6L10.6 23L9 21.4l5.4-5.4L9 10.6L10.6 9l5.4 5.4L21.4 9l1.6 1.6l-5.4 5.4l5.4 5.4z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:cursor-1,[i-carbon\:cursor-1=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:document-pdf{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M30 18v-2h-6v10h2v-4h3v-2h-3v-2zm-11 8h-4V16h4a3.003 3.003 0 0 1 3 3v4a3.003 3.003 0 0 1-3 3m-2-2h2a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1h-2Zm-6-8H6v10h2v-3h3a2.003 2.003 0 0 0 2-2v-3a2 2 0 0 0-2-2m-3 5v-3h3l.001 3Z'/%3E%3Cpath fill='currentColor' d='M22 14v-4a.91.91 0 0 0-.3-.7l-7-7A.9.9 0 0 0 14 2H4a2.006 2.006 0 0 0-2 2v24a2 2 0 0 0 2 2h16v-2H4V4h8v6a2.006 2.006 0 0 0 2 2h6v2Zm-8-4V4.4l5.6 5.6Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:download{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4Zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:drop-photo{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19 26a4 4 0 1 1 4-4a4.005 4.005 0 0 1-4 4m0-6a2 2 0 1 0 2 2a2 2 0 0 0-2-2'/%3E%3Cpath fill='currentColor' d='M27 29H11a2 2 0 0 1-2-2v-9a2 2 0 0 1 2-2h3.28l.543-1.632A2 2 0 0 1 16.721 13h4.558a2 2 0 0 1 1.898 1.368L23.72 16H27a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2m-16-2h16v-9h-4.72l-1-3h-4.56l-1 3H11Zm16-16h2v2h-2zm0-4h2v2h-2zm0-4h2v2h-2zm-4 0h2v2h-2zm-4 0h2v2h-2zm-4 0h2v2h-2zm-4 0h2v2h-2zM7 3h2v2H7zM3 3h2v2H3zm0 4h2v2H3zm0 4h2v2H3zm0 4h2v2H3zm0 4h2v2H3zm0 4h2v2H3zm0 4h2v2H3z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:edit{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M2 26h28v2H2zM25.4 9c.8-.8.8-2 0-2.8l-3.6-3.6c-.8-.8-2-.8-2.8 0l-15 15V24h6.4zm-5-5L24 7.6l-3 3L17.4 7zM6 22v-3.6l10-10l3.6 3.6l-10 10z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:erase{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92Zm3.76-3.76l-7.92-7.93L18 4l8 7.93Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:error{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M2 16A14 14 0 1 0 16 2A14 14 0 0 0 2 16m23.15 7.75L8.25 6.85a12 12 0 0 1 16.9 16.9M8.24 25.16a12 12 0 0 1-1.4-16.89l16.89 16.89a12 12 0 0 1-15.49 0'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:help{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16 2a14 14 0 1 0 14 14A14 14 0 0 0 16 2m0 26a12 12 0 1 1 12-12a12 12 0 0 1-12 12'/%3E%3Ccircle cx='16' cy='23.5' r='1.5' fill='currentColor'/%3E%3Cpath fill='currentColor' d='M17 8h-1.5a4.49 4.49 0 0 0-4.5 4.5v.5h2v-.5a2.5 2.5 0 0 1 2.5-2.5H17a2.5 2.5 0 0 1 0 5h-2v4.5h2V17a4.5 4.5 0 0 0 0-9'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:information{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8'/%3E%3Cpath fill='currentColor' d='M16 30a14 14 0 1 1 14-14a14 14 0 0 1-14 14m0-26a12 12 0 1 0 12 12A12 12 0 0 0 16 4'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:list-boxes{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2M4 6v6h6.001L10 6Zm6 22H4a2 2 0 0 1-2-2v-6a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2m-6-8v6h6.001L10 20Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:maximize{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:minimize{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:pause{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 8v16H8V8zm0-2H8a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2m12 2v16h-4V8zm0-2h-4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:pen{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:pin{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M28.59 13.31L30 11.9L20 2l-1.31 1.42l1.18 1.18l-11.49 9.72l-1.72-1.71L5.25 14l5.66 5.68L2 28.58L3.41 30l8.91-8.91L18 26.75l1.39-1.42l-1.71-1.71l9.72-11.49ZM16.26 22.2L9.8 15.74L21.29 6L26 10.71Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:pin-filled{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M28.586 13.314L30 11.9L20 2l-1.314 1.415l1.186 1.186L8.38 14.322l-1.716-1.715L5.25 14l5.657 5.677L2 28.583L3.41 30l8.911-8.909L18 26.748l1.393-1.414l-1.716-1.716l9.724-11.49Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:play{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M7 28a1 1 0 0 1-1-1V5a1 1 0 0 1 1.482-.876l20 11a1 1 0 0 1 0 1.752l-20 11A1 1 0 0 1 7 28M8 6.69v18.62L24.925 16Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:presentation-file{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z'/%3E%3Cpath fill='currentColor' d='M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:radio-button{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16 2a14 14 0 1 0 14 14A14 14 0 0 0 16 2m0 26a12 12 0 1 1 12-12a12 12 0 0 1-12 12'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:redo{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 10h12.185l-3.587-3.586L22 5l6 6l-6 6l-1.402-1.415L24.182 12H12a6 6 0 0 0 0 12h8v2h-8a8 8 0 0 1 0-16'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:renew{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 10H6.78A11 11 0 0 1 27 16h2A13 13 0 0 0 6 7.68V4H4v8h8Zm8 12h5.22A11 11 0 0 1 5 16H3a13 13 0 0 0 23 8.32V28h2v-8h-8Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:settings-adjust{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:template{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:text-annotation-toggle{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath d='M29.537 13.76l-3.297-3.297a1.586 1.586 0 0 0-2.24 0L10 24.467V30h5.533l14.004-14a1.586 1.586 0 0 0 0-2.24zM14.704 28H12v-2.704l9.44-9.441l2.705 2.704zM25.56 17.145l-2.704-2.704l2.267-2.267l2.704 2.704z' fill='currentColor'/%3E%3Cpath d='M11 17h2v-7h3V8H8v2h3v7z' fill='currentColor'/%3E%3Cpath d='M8 20H4V4h16v4h2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4z' fill='currentColor'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:time{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16 30a14 14 0 1 1 14-14a14 14 0 0 1-14 14m0-26a12 12 0 1 0 12 12A12 12 0 0 0 16 4'/%3E%3Cpath fill='currentColor' d='M20.59 22L15 16.41V7h2v8.58l5 5.01z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:timer{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M15 11h2v9h-2zm-2-9h6v2h-6z'/%3E%3Cpath fill='currentColor' d='m28 9l-1.42-1.41l-2.25 2.25a10.94 10.94 0 1 0 1.18 1.65ZM16 26a9 9 0 1 1 9-9a9 9 0 0 1-9 9'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:trash-can{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 12h2v12h-2zm6 0h2v12h-2z'/%3E%3Cpath fill='currentColor' d='M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6Zm4 22V8h16v20Zm4-26h8v2h-8z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:undo{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M20 10H7.815l3.587-3.586L10 5l-6 6l6 6l1.402-1.415L7.818 12H20a6 6 0 0 1 0 12h-8v2h8a8 8 0 0 0 0-16'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:user-speaker{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M29.415 19L27.7 17.285A3 3 0 0 0 28 16a3 3 0 1 0-3 3a3 3 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.01 7.01 0 0 0-7-7H9a7.01 7.01 0 0 0-7 7v5h28v-9.586A2 2 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z'/%3E%3Cpath fill='currentColor' d='M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:zoom-in{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z'/%3E%3Cpath fill='currentColor' d='M21.448 20A10.86 10.86 0 0 0 24 13a11 11 0 1 0-11 11a10.86 10.86 0 0 0 7-2.552L27.586 29L29 27.586ZM13 22a9 9 0 1 1 9-9a9.01 9.01 0 0 1-9 9'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-carbon\:zoom-out{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M8 12h10v2H8z'/%3E%3Cpath fill='currentColor' d='M21.448 20A10.86 10.86 0 0 0 24 13a11 11 0 1 0-11 11a10.86 10.86 0 0 0 7-2.552L27.586 29L29 27.586ZM13 22a9 9 0 1 1 9-9a9.01 9.01 0 0 1-9 9'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-ph-cursor-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 256 256' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='currentColor'%3E%3Cpath d='M213.66 201L201 213.66a8 8 0 0 1-11.31 0l-51.31-51.31a8 8 0 0 0-13 2.46l-17.82 46.41a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85l-46.41 17.82a8 8 0 0 0-2.46 13l51.31 51.31a8 8 0 0 1 0 11.34' opacity='.2'/%3E%3Cpath d='M168 132.69L214.08 115l.33-.13a16 16 0 0 0-1.41-29.8L52.92 32.8A15.95 15.95 0 0 0 32.8 52.92L85.07 213a15.82 15.82 0 0 0 14.41 11h.78a15.84 15.84 0 0 0 14.61-9.59l.13-.33L132.69 168L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63ZM195.31 208L144 156.69a16 16 0 0 0-26 4.93c0 .11-.09.22-.13.32l-17.65 46L48 48l159.85 52.2l-45.95 17.64l-.32.13a16 16 0 0 0-4.93 26L208 195.31Z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-ph-cursor-fill{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 256 256' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-ph\:arrow-down-bold{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 256 256' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m208.49 152.49l-72 72a12 12 0 0 1-17 0l-72-72a12 12 0 0 1 17-17L116 187V40a12 12 0 0 1 24 0v147l51.51-51.52a12 12 0 0 1 17 17Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-ph\:arrow-up-bold{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 256 256' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M208.49 120.49a12 12 0 0 1-17 0L140 69v147a12 12 0 0 1-24 0V69l-51.51 51.49a12 12 0 0 1-17-17l72-72a12 12 0 0 1 17 0l72 72a12 12 0 0 1 0 17'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-svg-spinners-90-ring-with-bg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z' opacity='.25'/%3E%3Cpath fill='currentColor' d='M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z'%3E%3CanimateTransform attributeName='transform' dur='0.75s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1em;height:1em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pointer-events-none,[pointer-events-none=""]{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{inset:0}.inset-y-0,[inset-y-0=""]{top:0;bottom:0}.-top-15px{top:-15px}.-top-20{top:-5rem}.bottom-\[-6px\]{bottom:-6px}.bottom-0,[bottom-0=""]{bottom:0}.bottom-1,[bottom-1=""]{bottom:.25rem}.bottom-10{bottom:2.5rem}.bottom-5{bottom:1.25rem}.left-0,[left-0=""]{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-110\%{left:110%}.right--2,[right--2=""]{right:-.5rem}.right-\[-6px\]{right:-6px}.right-0,[right-0=""]{right:0}.right-0\.5,[right-0\.5=""]{right:.125rem}.right-1,[right-1=""]{right:.25rem}.right-4{right:1rem}.right-5,[right-5=""]{right:1.25rem}.top-\[-6px\]{top:-6px}.top-0,[top-0=""]{top:0}.top-0\.5,[top-0\.5=""]{top:.125rem}.top-1\/2,.top-50\%{top:50%}.top-10{top:2.5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1,[z~="-1"]{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-2{z-index:2}.grid,[grid=""]{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-cols-\[35px_1fr\]{grid-template-columns:35px 1fr}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-rows-\[auto_max-content\]{grid-template-rows:auto max-content}.grid-rows-\[max-content_1fr\]{grid-template-rows:max-content 1fr}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.m--1,[m--1=""]{margin:-.25rem}.m-1{margin:.25rem}.m-auto,.ma{margin:auto}.m0,[m0=""]{margin:0}.children\:my-auto>*,.my-auto,.mya{margin-top:auto;margin-bottom:auto}.mx--1\.2{margin-left:-.3rem;margin-right:-.3rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my{margin-top:1rem;margin-bottom:1rem}.my-1,.my1{margin-top:.25rem;margin-bottom:.25rem}.my2{margin-top:.5rem;margin-bottom:.5rem}.my5{margin-top:1.25rem;margin-bottom:1.25rem}.-mt-0\.5{margin-top:-.125rem}.mb-4{margin-bottom:1rem}.mb2{margin-bottom:.5rem}.ml-1{margin-left:.25rem}.ml-auto{margin-left:auto}.mr--14px{margin-right:-14px}.mr--4{margin-right:-1rem}.mr-2{margin-right:.5rem}.mr0{margin-right:0}.mr1{margin-right:.25rem}.ms{margin-inline-start:1rem}.mt-1,.mt1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-px{margin-top:1px}.block{display:block}.inline-block,[inline-block=""]{display:inline-block}.hidden,.group:hover .group-hover\:hidden,.group:not(:hover) .group-not-hover\:hidden{display:none}.aspect-ratio-initial{aspect-ratio:initial}.h-\[22px\],.h-22px,[h-22px=""]{height:22px}.h-\[40px\]{height:40px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-1\.5,[h-1\.5=""]{height:.375rem}.h-1px{height:1px}.h-2,[h-2=""]{height:.5rem}.h-3\.5{height:.875rem}.h-40{height:10rem}.h-4px{height:4px}.h-5,.h5,[h-5=""]{height:1.25rem}.h-6{height:1.5rem}.h-8,[h-8=""]{height:2rem}.h-full,[h-full=""]{height:100%}.h-max{height:max-content}.h-screen{height:100vh}.h1,[h1=""]{height:.25rem}.h3{height:.75rem}.max-h-full{max-height:100%}.max-h-full\!{max-height:100%!important}.max-w-\[calc\(100\%-3rem\)\]{max-width:calc(100% - 3rem)}.max-w-150{max-width:37.5rem}.max-w-250{max-width:62.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.max-w-full\!{max-width:100%!important}.max-w-xs{max-width:20rem}.min-h-50{min-height:12.5rem}.min-h-full\!{min-height:100%!important}.min-w-\[70\%\]{min-width:70%}.min-w-0{min-width:0}.min-w-16{min-width:4rem}.min-w-30,[min-w-30=""]{min-width:7.5rem}.min-w-40{min-width:10rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.min-w-full\!{min-width:100%!important}.w-\[40px\]{width:40px}.w-\[calc\(100\%-0\.25rem\)\]{width:calc(100% - .25rem)}.w-0{width:0}.w-0\.5,[w-0\.5=""]{width:.125rem}.w-1\.5,[w-1\.5=""]{width:.375rem}.w-13{width:3.25rem}.w-1px,[w-1px=""]{width:1px}.w-2,[w-2=""]{width:.5rem}.w-20,[w-20=""]{width:5rem}.w-200{width:50rem}.w-22px{width:22px}.w-250{width:62.5rem}.w-3\.5{width:.875rem}.w-30,[w-30=""]{width:7.5rem}.w-5,[w-5=""]{width:1.25rem}.w-6{width:1.5rem}.w-60,[w-60=""]{width:15rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-88{width:22rem}.w-9{width:2.25rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.w-full\!{width:100%!important}.w-screen{width:100vw}.w1,[w1=""]{width:.25rem}.w3{width:.75rem}.flex,[flex=""],[flex~=\~]{display:flex}.inline-flex{display:inline-flex}.flex-1{flex:1}.flex-auto,[flex-auto=""]{flex:auto}.flex-none{flex:none}.flex-shrink,.shrink{flex-shrink:1}.flex-grow{flex-grow:1}[flex~=row]{flex-direction:row}.flex-col,[flex~=col]{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.table,[table=""]{display:table}.table-cell,[table-cell=""]{display:table-cell}.table-row,[table-row=""]{display:table-row}.border-collapse,[border-collapse=""]{border-collapse:collapse}.translate-y--50\%{--un-translate-y:-50%;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-x-80{--un-scale-x:.8;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:1s linear fade-in}.animate-duration-100{animation-duration:.1s}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none,[touch-none=""]{touch-action:none}.important\:\[\&_\*\]\:select-none *{-webkit-user-select:none!important;user-select:none!important}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.items-end{align-items:flex-end}.items-center,[flex~=items-center],[items-center=""]{align-items:center}.self-center{align-self:center}.justify-center,[flex~=justify-center],[justify-center=""]{justify-content:center}.justify-between{justify-content:space-between}.justify-items-start{justify-items:start}.gap-0{gap:0}.gap-0\.2{gap:.05rem}.gap-0\.5{gap:.125rem}.gap-1,[flex~=gap-1],[gap-1=""]{gap:.25rem}.gap-10{gap:2.5rem}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-4,[flex~=gap-4]{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-px{gap:1px}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""]{overflow:hidden}.of-x-visible{overflow-x:visible}.of-y-auto,.overflow-y-auto{overflow-y:auto}.whitespace-nowrap,.ws-nowrap,[ws-nowrap=""]{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~=\~],[b=""],[b~="1"],[border=""],[border~=\~]{border-width:1px}.border-2,[b~="2"]{border-width:2px}[b~="100%"]{border-width:100%}[b~="16"]{border-width:16px}[b~="50%"]{border-width:50%}[b~="64"]{border-width:64px}[border~="0"]{border-width:0}.border-x,[b~=x]{border-left-width:1px;border-right-width:1px}[b~=y],[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b,[b~=b],[border~=b]{border-bottom-width:1px}.border-b-0{border-bottom-width:0}.border-l{border-left-width:1px}.border-r,[border~=r]{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border-t=""],[border~=t]{border-top-width:1px}.b-dark{--un-border-opacity:1;border-color:rgb(34 34 34/var(--un-border-opacity))}.border-gray,.dark .dark\:b-gray-400,[border-gray=""]{--un-border-opacity:1;border-color:rgb(156 163 175/var(--un-border-opacity))}.border-gray-300\/50{border-color:#d1d5db80}.border-transparent,[border~=transparent]{border-color:#0000}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255/var(--un-border-opacity))}.dark .dark\:border-gray-500,.dark [dark\:border-gray-500=""]{--un-border-opacity:1;border-color:rgb(107 114 128/var(--un-border-opacity))}[b-dark~="1"]{--un-border-opacity:1;border-color:rgb(60 60 60/var(--un-border-opacity))}.dark [b~=dark\:b-gray-400]{--un-border-opacity:1;--un-border-bottom-opacity:var(--un-border-opacity);border-bottom-color:rgb(156 163 175/var(--un-border-bottom-opacity))}[b~=b-dark]{--un-border-opacity:1;--un-border-bottom-opacity:var(--un-border-opacity);border-bottom-color:rgb(34 34 34/var(--un-border-bottom-opacity))}.rounded,[border~=rounded],[rounded=""]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-md,[border~=rounded-md]{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-lb{border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.rounded-tr{border-top-right-radius:.25rem}.rounded-tr-0{border-top-right-radius:0}.\!border-none{border-style:none!important}.b-dashed{border-style:dashed}[b~=b-dashed]{border-bottom-style:dashed}.bg-blue{--un-bg-opacity:1;background-color:rgb(96 165 250/var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-cyan\:10,[bg-cyan\:10=""]{background-color:#22d3ee1a}.bg-gray,[bg-gray=""]{--un-bg-opacity:1;background-color:rgb(156 163 175/var(--un-bg-opacity))}.bg-gray\:10,.bg-gray\/10{background-color:#9ca3af1a}.bg-gray\:4,[bg-gray\:4=""]{background-color:#9ca3af0a}.bg-gray\:5,.bg-gray\/5,[bg-gray\:5=""]{background-color:#9ca3af0d}.bg-gray\/20{background-color:#9ca3af33}.bg-green{--un-bg-opacity:1;background-color:rgb(74 222 128/var(--un-bg-opacity))}.bg-red{--un-bg-opacity:1;background-color:rgb(248 113 113/var(--un-bg-opacity))}.bg-transparent{background-color:#0000}.bg-yellow{--un-bg-opacity:1;background-color:rgb(250 204 21/var(--un-bg-opacity))}.dark .dark\:bg-gray-800,.dark [dark\:bg-gray-800=""]{--un-bg-opacity:1;background-color:rgb(31 41 55/var(--un-bg-opacity))}[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175/var(--un-bg-opacity))}.hover\:bg-gray\/20:hover{background-color:#9ca3af33}[bg-transparent~=placeholder\:]::placeholder{background-color:#0000}.\!bg-opacity-75{--un-bg-opacity:.75!important}.bg-opacity-30,[bg-opacity-30=""]{--un-bg-opacity:.3}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.dark .dark\:stroke-black{--un-stroke-opacity:1;stroke:rgb(0 0 0/var(--un-stroke-opacity))}.stroke-white{--un-stroke-opacity:1;stroke:rgb(255 255 255/var(--un-stroke-opacity))}[stroke~=none]{stroke:none}.object-cover{object-fit:cover}.object-contain{object-fit:contain}.\!p-4{padding:1rem!important}.p-1,.p1,[p1=""]{padding:.25rem}.p-16{padding:4rem}.p-2,.p2,[p2=""]{padding:.5rem}.p-6px{padding:6px}.p\[1\]{padding:1px}.p0\.5,[p0\.5=""]{padding:.125rem}.p3{padding:.75rem}.p4{padding:1rem}.p5{padding:1.25rem}.px,.px-4,.px4,[p~=x-4],[px=""],[px4=""]{padding-left:1rem;padding-right:1rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2,.px2,[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-3,.px3,[px3=""]{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px1{padding-left:.25rem;padding-right:.25rem}.py,.py-4{padding-top:1rem;padding-bottom:1rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2,.py2,[p~=y-2],[py-2=""],[py2=""]{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py0\.5{padding-top:.125rem;padding-bottom:.125rem}.py1\.5{padding-top:.375rem;padding-bottom:.375rem}.pb2{padding-bottom:.5rem}.pl-0{padding-left:0}.pl-1,.pl1{padding-left:.25rem}.pl-4,[pl-4=""]{padding-left:1rem}.pl2,[pl2=""]{padding-left:.5rem}.pr-3,[pr-3=""]{padding-right:.75rem}.pr-4,[pr-4=""]{padding-right:1rem}.pt-\.5{padding-top:.125rem}.pt-15\%{padding-top:15%}.pt2{padding-top:.5rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-nowrap{text-wrap:nowrap}.align-top,[align-top=""]{vertical-align:top}.vertical-middle,[vertical-middle=""]{vertical-align:middle}.text-1\.2em{font-size:1.2em}.text-11px{font-size:11px}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3em{font-size:3em}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-9xl,[text-9xl=""]{font-size:8rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}.\!text-current{color:currentColor!important}.dark .dark\:text-blue3{--un-text-opacity:1;color:rgb(147 197 253/var(--un-text-opacity))}.dark .dark\:text-green,.text-green{--un-text-opacity:1;color:rgb(74 222 128/var(--un-text-opacity))}.dark .dark\:text-green3{--un-text-opacity:1;color:rgb(134 239 172/var(--un-text-opacity))}.dark .dark\:text-red-500{--un-text-opacity:1;color:rgb(239 68 68/var(--un-text-opacity))}.dark .dark\:text-red3{--un-text-opacity:1;color:rgb(252 165 165/var(--un-text-opacity))}.dark .dark\:text-yellow3{--un-text-opacity:1;color:rgb(253 224 71/var(--un-text-opacity))}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250/var(--un-text-opacity))}.text-blue6{--un-text-opacity:1;color:rgb(37 99 235/var(--un-text-opacity))}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238/var(--un-text-opacity))}.text-cyan\:75,[text-cyan\:75=""]{color:#22d3eebf}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175/var(--un-text-opacity))}.text-gray-500{--un-text-opacity:1;color:rgb(107 114 128/var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94/var(--un-text-opacity))}.text-green6{--un-text-opacity:1;color:rgb(22 163 74/var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248/var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53/var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60/var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182/var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252/var(--un-text-opacity))}.dark .dark\:color-red-400,.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113/var(--un-text-opacity))}.text-red-700{--un-text-opacity:1;color:rgb(185 28 28/var(--un-text-opacity))}.color-red-600,.text-red6{--un-text-opacity:1;color:rgb(220 38 38/var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191/var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21/var(--un-text-opacity))}.text-yellow6{--un-text-opacity:1;color:rgb(202 138 4/var(--un-text-opacity))}.important-text-op-50,.text-opacity-50\!{--un-text-opacity:.5!important}.font-bold,[font-bold=""]{font-weight:700}.font-light{font-weight:300}.leading-1\.6em{line-height:1.6em}.leading-1em{line-height:1em}.leading-tight{line-height:1.25}.font-mono,[font-mono=""]{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline,.hover\:underline:hover{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.tab{tab-size:4}.\!opacity-0{opacity:0!important}.\!opacity-100{opacity:1!important}.op-60,.op60{opacity:.6}.op-80,.op80,.opacity-80{opacity:.8}.op0,.opacity-0{opacity:0}.op100,.group:hover .group-hover\:op100{opacity:1}.op15{opacity:.15}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op25,.opacity-25,[op25=""]{opacity:.25}.op30{opacity:.3}.op35{opacity:.35}.op40,.opacity-40,[op40=""]{opacity:.4}.op50,.opacity-50,[op50=""]{opacity:.5}.op75,[op75=""]{opacity:.75}.opacity-10,[opacity-10=""]{opacity:.1}.opacity-5{opacity:.05}[opacity~="0.5"]{opacity:.005}[opacity~="0.55"]{opacity:.0055}.focus-within\:opacity-100:focus-within{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:op-100:hover,.hover\:op100:hover{opacity:1}.hover\:op90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}[hover~=op100]:hover,.focus-visible\:opacity-100:focus-visible{opacity:1}.placeholder\:op25::placeholder{opacity:.25}.shadow,[shadow~=\~]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color,#0000001a),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow)}.shadow-xl{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color,#0000001a),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow)}.outline,[outline=""]{outline-style:solid}.outline-none,[outline-none=""]{outline-offset:2px;outline:2px solid #0000}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px)!important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.blur{--un-blur:blur(8px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.filter{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}[transition-all~="0"]{transition-property:all;transition-duration:0s;transition-timing-function:cubic-bezier(.4,0,.2,1)}[transition-all~="4"]{transition-property:all;transition-duration:4ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-400{transition-duration:.4s}.ease{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.view-transition-name{view-transition-name:name}@media (width<=767.9px){.lt-md\:hidden{display:none}.lt-md\:flex-col{flex-direction:column}}@media (width>=768px){.md\:p-10px{padding:10px}}@media (width>=1024px){.lg\:m-2{margin:.5rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}} diff --git a/lecture-07/assets/interactive-BcxwnYg4.js b/lecture-07/assets/interactive-BcxwnYg4.js new file mode 100644 index 0000000000000000000000000000000000000000..211c2b73a7b09f77f7db06f77e79672a565b852a --- /dev/null +++ b/lecture-07/assets/interactive-BcxwnYg4.js @@ -0,0 +1 @@ +import{H as e,S as t,St as n,_ as r,b as i,w as a,xt as o,y as s,yt as c,z as l}from"./modules/shiki-CkJq9tSf.js";import{t as u}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as d}from"./slidev/context-DnYiQGy6.js";import{t as f}from"./DeckFooter-tFze9YsO.js";var p={class:`slidev-layout dl-interactive`},m={key:0,class:`dl-interactive__title`},h={class:`dl-interactive__stage`},g=u(a({__name:`interactive`,props:{heading:{},asideWidth:{},asideLeft:{type:Boolean}},setup(a){let{$slidev:u,$nav:g,$clicksContext:_,$clicks:v,$page:y,$renderContext:b,$frontmatter:x}=d(),S=a;return(a,u)=>{let d=f;return l(),i(`div`,p,[S.heading?(l(),i(`h1`,m,n(S.heading),1)):s(`v-if`,!0),r(`div`,{class:c([`dl-interactive__grid`,{"is-aside-left":S.asideLeft}])},[r(`div`,h,[e(a.$slots,`default`,{},void 0,!0)]),r(`div`,{class:`dl-interactive__aside`,style:o({flexBasis:S.asideWidth??`17rem`})},[e(a.$slots,`aside`,{},void 0,!0)],4)],2),t(d)])}}}),[[`__scopeId`,`data-v-0c449bbd`]]);export{g as t}; \ No newline at end of file diff --git a/lecture-07/assets/interactive-D_LX0oud.css b/lecture-07/assets/interactive-D_LX0oud.css new file mode 100644 index 0000000000000000000000000000000000000000..a4eed7fee12ae099d6a367e7a22fac5070cd9430 --- /dev/null +++ b/lecture-07/assets/interactive-D_LX0oud.css @@ -0,0 +1 @@ +.dl-interactive[data-v-0c449bbd]{flex-direction:column;display:flex}.dl-interactive__title[data-v-0c449bbd]{margin-bottom:.7rem}.dl-interactive__grid[data-v-0c449bbd]{flex:auto;align-items:stretch;gap:1.6rem;min-height:0;display:flex}.dl-interactive__grid.is-aside-left[data-v-0c449bbd]{flex-direction:row-reverse}.dl-interactive__stage[data-v-0c449bbd]{flex:auto;justify-content:center;align-items:center;min-width:0;display:flex}.dl-interactive__aside[data-v-0c449bbd]{font-size:var(--dl-fs-secondary);flex-grow:0;flex-shrink:0;overflow-y:auto}.dl-interactive__aside[data-v-0c449bbd]:empty{display:none} diff --git a/lecture-07/assets/logo-BYkHSa_O.png b/lecture-07/assets/logo-BYkHSa_O.png new file mode 100644 index 0000000000000000000000000000000000000000..f5b8660126125a3c1b259857293439f9959a3688 Binary files /dev/null and b/lecture-07/assets/logo-BYkHSa_O.png differ diff --git a/lecture-07/assets/md-0AKOvJ4E2.js b/lecture-07/assets/md-0AKOvJ4E2.js new file mode 100644 index 0000000000000000000000000000000000000000..5df59650051e6020636c103394a30e4352b42f44 --- /dev/null +++ b/lecture-07/assets/md-0AKOvJ4E2.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./slidev/KaTexBlockWrapper-CzyNOCHB.js";var _={class:`mt-4 dl-math-sm`},v={class:`dl-tight mt-4`},y={class:`mt-4 dl-callout`},b={__name:`slides.md__slidev_32`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=g,S=h,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),31))),{default:e(()=>[b[3]||=i(`h1`,null,[u(`Put `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msup`,null,[i(`mi`,null,`D`),i(`mo`,null,`∗`)])]),i(`annotation`,{encoding:`application/x-tex`},`D^*`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6887em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.6887em`}},[i(`span`,{style:{top:`-3.063em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mbin mtight`},`∗`)])])])])])])])])])]),u(` back in`)],-1),b[4]||=i(`p`,null,[u(`Substitute the optimal discriminator into `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`V`)]),i(`annotation`,{encoding:`application/x-tex`},`V`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`)])])]),u(` and the expression collapses:`)],-1),i(`div`,_,[n(x,{ranges:[]},{default:e(()=>[...b[0]||=[i(`p`,null,[i(`span`,{class:`katex-display`},[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`V`),i(`mo`,{stretchy:`false`},`(`),i(`msup`,null,[i(`mi`,null,`D`),i(`mo`,null,`∗`)]),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`G`),i(`mo`,{stretchy:`false`},`)`),i(`mtext`,null,`  `),i(`mo`,null,`=`),i(`mtext`,null,`  `),i(`mo`,null,`−`),i(`mi`,null,`log`),i(`mo`,null,`⁡`),i(`mn`,null,`4`),i(`mtext`,null,`  `),i(`mo`,null,`+`),i(`mtext`,null,`  `),i(`mn`,null,`2`),i(`mo`,null,`⋅`),i(`mrow`,null,[i(`mi`,{mathvariant:`normal`},`J`),i(`mi`,{mathvariant:`normal`},`S`)]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`(`),i(`msub`,null,[i(`mi`,null,`p`),i(`mtext`,null,`data`)]),i(`mtext`,null,` `),i(`mi`,{mathvariant:`normal`},`∥`),i(`mtext`,null,` `),i(`msub`,null,[i(`mi`,null,`p`),i(`mi`,null,`g`)]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`V(D^*, G) \\;=\\; -\\log 4 \\;+\\; 2 \\cdot \\mathrm{JS}\\big(p_{\\text{data}} \\,\\Vert\\, p_g\\big) `)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.7387em`}},[i(`span`,{style:{top:`-3.113em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mbin mtight`},`∗`)])])])])])])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`},`G`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mop`},[u(`lo`),i(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},`4`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`+`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`2`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`⋅`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.2em`,"vertical-align":`-0.35em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathrm`},`JS`)]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`(`)]),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord text mtight`},[i(`span`,{class:`mord mtight`},`data`)])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},`∥`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1514em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0359em`}},`g`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2861em`}},[i(`span`)])])])])]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`)`)])])])])])],-1)]]),_:1})]),i(`div`,v,[n(S,null,{default:e(()=>[...b[1]||=[i(`ul`,null,[i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`normal`},`J`),i(`mi`,{mathvariant:`normal`},`S`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathrm{JS}`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathrm`},`JS`)])])])]),u(` is the `),i(`strong`,null,`Jensen–Shannon divergence`),u(` — a symmetric measure of how far apart two distributions are`)]),i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mo`,null,`−`),i(`mi`,null,`log`),i(`mo`,null,`⁡`),i(`mn`,null,`4`)]),i(`annotation`,{encoding:`application/x-tex`},`-\\log 4`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mop`},[u(`lo`),i(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},`4`)])])]),u(` is a constant. The only thing `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])]),u(` can move is the second term`)]),i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`normal`},`J`),i(`mi`,{mathvariant:`normal`},`S`)]),i(`mo`,null,`=`),i(`mn`,null,`0`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathrm{JS} = 0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathrm`},`JS`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0`)])])]),u(` only when the two distributions are `),i(`strong`,null,`identical`)])],-1)]]),_:1})]),s((d(),a(`div`,y,[...b[2]||=[i(`p`,null,[u(`A trained discriminator is not a classifier you happen to need. It is a `),i(`strong`,null,`measurement of a divergence`),u(`, and `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])]),u(` is minimising the thing it measures.`)],-1)]])),[[C]])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-2F27eRHi.js b/lecture-07/assets/md-2F27eRHi.js new file mode 100644 index 0000000000000000000000000000000000000000..f81d2963ce65beb7a8d5dd74a887adb7f2e359ec --- /dev/null +++ b/lecture-07/assets/md-2F27eRHi.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`grid grid-cols-2 gap-10 mt-4 dl-tight`},_={class:`dl-callout`},v={class:`mt-3 dl-secondary`},y={__name:`slides.md__slidev_5`,setup(y){let{$slidev:b,$nav:x,$clicksContext:S,$clicks:C,$page:w,$renderContext:T,$frontmatter:E}=f();return S.setup(),(f,y)=>{let b=h,x=r(`click`);return d(),c(m,o(t(l(p)(l(E),4))),{default:e(()=>[y[4]||=i(`h1`,null,`Now do it for a picture`,-1),y[5]||=i(`p`,null,`Same recipe, one different output. A 256 × 256 colour image.`,-1),i(`div`,g,[i(`div`,null,[y[1]||=i(`h3`,null,`What breaks`,-1),n(b,null,{default:e(()=>[...y[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`196 608 numbers`),u(`, not one`)]),i(`li`,null,[u(`Each is `),i(`strong`,null,`continuous`),u(`. There is no vocabulary to put a softmax over`)]),i(`li`,null,`No natural order, so "the next one" means nothing`)],-1)]]),_:1})]),i(`div`,null,[s((d(),a(`div`,_,[...y[2]||=[i(`p`,null,[u(`You `),i(`em`,null,`could`),u(` discretise and go pixel by pixel — PixelRNN did, in 2016. That is 196 608 sequential forward passes for one image.`)],-1)]])),[[x]]),s((d(),a(`div`,v,[...y[3]||=[i(`p`,null,[u(`So: produce the whole thing `),i(`strong`,null,`at once`),u(`, and find a loss you can compute.`)],-1)]])),[[x]])])])]),_:1},16)}}};export{y as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-9UAmvp1c.js b/lecture-07/assets/md-9UAmvp1c.js new file mode 100644 index 0000000000000000000000000000000000000000..31c0d42bf6e8b7b26a1cd69e4a5c2a835efdadbb --- /dev/null +++ b/lecture-07/assets/md-9UAmvp1c.js @@ -0,0 +1 @@ +import{$ as e,E as t,_ as n,bt as r,v as i,vt as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{n as s,t as c}from"./slidev/context-DnYiQGy6.js";import{t as l}from"./section-CLxRKQ9Y.js";var u={__name:`slides.md__slidev_65`,setup(u){let{$slidev:d,$nav:f,$clicksContext:p,$clicks:m,$page:h,$renderContext:g,$frontmatter:_}=s();return p.setup(),(s,u)=>(o(),i(l,r(t(a(c)(a(_),64))),{default:e(()=>[...u[0]||=[n(`h1`,null,`Choosing one`,-1)]]),_:1},16))}};export{u as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-9mrU8hdt.js b/lecture-07/assets/md-9mrU8hdt.js new file mode 100644 index 0000000000000000000000000000000000000000..fe44fc2f1554afe97e693b9db2f36888b556b9bf --- /dev/null +++ b/lecture-07/assets/md-9mrU8hdt.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-4 dl-callout`},h={__name:`slides.md__slidev_49`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),48))),{default:e(()=>[h[1]||=r(`h1`,null,`What this is actually used for`,-1),h[2]||=r(`p`,null,`Synthetic data, where the real thing cannot be shared — this group’s own research area.`,-1),h[3]||=r(`div`,{class:`dl-ledger mt-3`},[r(`table`,null,[r(`thead`,null,[r(`tr`,null,[r(`th`),r(`th`,null,`the problem`),r(`th`,null,`what a generator gives you`)])]),r(`tbody`,null,[r(`tr`,null,[r(`td`,null,[r(`strong`,null,`privacy`)]),r(`td`,null,`a scan identifies its patient`),r(`td`,null,`data that can leave the hospital`)]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`scarcity`)]),r(`td`,null,`rare conditions, few examples`),r(`td`,null,`more of the rare one`)]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`balance`)]),r(`td`,null,`one class swamps the rest`),r(`td`,null,`the small class, generated`)]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`labels`)]),r(`td`,null,`masks are expensive to draw`),r(`td`,null,[l(`image `),r(`strong`,null,`and`),l(` mask, together`)])])])])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,`A synthetic sample too close to a training example has leaked the very thing it was meant to protect.`,-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-B85egCC3.js b/lecture-07/assets/md-B85egCC3.js new file mode 100644 index 0000000000000000000000000000000000000000..9b5930626c8b9c16a08ed5543e46cc7edff93f1d --- /dev/null +++ b/lecture-07/assets/md-B85egCC3.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-2 dl-callout`},h={__name:`slides.md__slidev_11`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),10))),{default:e(()=>[h[1]||=r(`h1`,null,`The autoencoder`,-1),h[2]||=r(`p`,null,[l(`Two networks, back to back, trained to do `),r(`strong`,null,`nothing`),l(` — as accurately as possible.`)],-1),h[3]||=r(`div`,{class:`mt-2 flex justify-center`},[r(`svg`,{viewBox:`0 0 640 150`,class:`dl-diagram`,role:`img`,"aria-label":`An encoder narrows an input to a latent vector, a decoder widens it back`},[r(`defs`,null,[r(`marker`,{id:`ae-arrow`,markerWidth:`7`,markerHeight:`7`,refX:`6`,refY:`3.5`,orient:`auto`},[r(`path`,{class:`dl-dg-head`,d:`M0 0 L7 3.5 L0 7 z`})])]),r(`rect`,{class:`dl-dg-box`,x:`8`,y:`42`,width:`52`,height:`66`,rx:`4`}),r(`text`,{class:`dl-dg-lab`,x:`34`,y:`80`,"text-anchor":`middle`},`x`),r(`polygon`,{class:`dl-dg-net`,points:`96,30 210,58 210,92 96,120`}),r(`text`,{class:`dl-dg-in`,x:`150`,y:`80`,"text-anchor":`middle`},`encoder f`),r(`rect`,{class:`dl-dg-box is-accent`,x:`248`,y:`58`,width:`36`,height:`34`,rx:`4`}),r(`text`,{class:`dl-dg-lab`,x:`266`,y:`80`,"text-anchor":`middle`},`z`),r(`polygon`,{class:`dl-dg-net`,points:`322,58 436,30 436,120 322,92`}),r(`text`,{class:`dl-dg-in`,x:`380`,y:`80`,"text-anchor":`middle`},`decoder g`),r(`rect`,{class:`dl-dg-box`,x:`472`,y:`42`,width:`52`,height:`66`,rx:`4`}),r(`text`,{class:`dl-dg-lab`,x:`498`,y:`80`,"text-anchor":`middle`},`x̂`),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#ae-arrow)`,d:`M60 75 H92`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#ae-arrow)`,d:`M212 75 H244`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#ae-arrow)`,d:`M286 75 H318`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#ae-arrow)`,d:`M438 75 H468`}),r(`path`,{class:`dl-dg-loss`,d:`M34 118 V140 H498 V112`}),r(`text`,{class:`dl-dg-small`,x:`266`,y:`136`,"text-anchor":`middle`},`loss compares these two`),r(`text`,{class:`dl-dg-small`,x:`266`,y:`50`,"text-anchor":`middle`},`the bottleneck`)])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`bold`},`z`),r(`mo`,null,`=`),r(`mi`,null,`f`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,{mathvariant:`bold`},`x`),r(`mo`,{stretchy:`false`},`)`)]),r(`annotation`,{encoding:`application/x-tex`},`\\mathbf{z} = f(\\mathbf{x})`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),r(`span`,{class:`mord mathbf`},`z`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`=`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1076em`}},`f`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathbf`},`x`),r(`span`,{class:`mclose`},`)`)])])]),l(`, `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mover`,{accent:`true`},[r(`mi`,{mathvariant:`bold`},`x`),r(`mo`,null,`^`)]),r(`mo`,null,`=`),r(`mi`,null,`g`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,{mathvariant:`bold`},`z`),r(`mo`,{stretchy:`false`},`)`)]),r(`annotation`,{encoding:`application/x-tex`},`\\hat{\\mathbf{x}} = g(\\mathbf{z})`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.7079em`}}),r(`span`,{class:`mord katex-accent`},[r(`span`,{class:`vlist-t`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.7079em`}},[r(`span`,{style:{top:`-3em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`mord mathbf`},`x`)]),r(`span`,{style:{top:`-3.0134em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`accent-body`,style:{left:`-0.25em`}},[r(`span`,{class:`mord`},`^`)])])])])])]),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`=`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`g`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathbf`},`z`),r(`span`,{class:`mclose`},`)`)])])]),l(`, and the loss is `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mo`,{stretchy:`false`},`∥`),r(`mi`,{mathvariant:`bold`},`x`),r(`mo`,null,`−`),r(`mover`,{accent:`true`},[r(`mi`,{mathvariant:`bold`},`x`),r(`mo`,null,`^`)]),r(`msup`,null,[r(`mo`,{stretchy:`false`},`∥`),r(`mn`,null,`2`)])]),r(`annotation`,{encoding:`application/x-tex`},`\\lVert \\mathbf{x} - \\hat{\\mathbf{x}} \\rVert^2`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mopen`},`∥`),r(`span`,{class:`mord mathbf`},`x`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),r(`span`,{class:`mbin`},`−`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1.0641em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord katex-accent`},[r(`span`,{class:`vlist-t`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.7079em`}},[r(`span`,{style:{top:`-3em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`mord mathbf`},`x`)]),r(`span`,{style:{top:`-3.0134em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`accent-body`,style:{left:`-0.25em`}},[r(`span`,{class:`mord`},`^`)])])])])])]),r(`span`,{class:`mclose`},[r(`span`,{class:`mclose`},`∥`),r(`span`,{class:`msupsub`},[r(`span`,{class:`vlist-t`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.8141em`}},[r(`span`,{style:{top:`-3.063em`,"margin-right":`0.05em`}},[r(`span`,{class:`pstrut`,style:{height:`2.7em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},`2`)])])])])])])])])])]),l(`. `),r(`strong`,null,`The label is the input.`)],-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BBXgzUns.js b/lecture-07/assets/md-BBXgzUns.js new file mode 100644 index 0000000000000000000000000000000000000000..89bb1694b7935d025829053bc5a4b04087e99189 --- /dev/null +++ b/lecture-07/assets/md-BBXgzUns.js @@ -0,0 +1 @@ +import{$ as e,E as t,_ as n,bt as r,v as i,vt as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{n as s,t as c}from"./slidev/context-DnYiQGy6.js";import{t as l}from"./section-CLxRKQ9Y.js";var u={__name:`slides.md__slidev_25`,setup(u){let{$slidev:d,$nav:f,$clicksContext:p,$clicks:m,$page:h,$renderContext:g,$frontmatter:_}=s();return p.setup(),(s,u)=>(o(),i(l,r(t(a(c)(a(_),24))),{default:e(()=>[...u[0]||=[n(`h1`,null,`The adversarial game`,-1)]]),_:1},16))}};export{u as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BFLTYNWq.js b/lecture-07/assets/md-BFLTYNWq.js new file mode 100644 index 0000000000000000000000000000000000000000..13180fdd1e77b1725d8f1c0253d798ca5a2e4bfa --- /dev/null +++ b/lecture-07/assets/md-BFLTYNWq.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";var _={class:`dl-tight mt-3`},v={class:`mt-4 dl-callout`},y={class:`mt-3`},b={__name:`slides.md__slidev_61`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=h,S=g,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),60))),{default:e(()=>[b[2]||=i(`h1`,null,`Do it somewhere cheaper`,-1),b[3]||=i(`p`,null,`A 512 × 512 image is 786 432 numbers, and the sampler visits it fifty times. Most of that is detail no diffusion model needs to be deciding.`,-1),i(`div`,_,[n(x,null,{default:e(()=>[...b[0]||=[i(`ul`,null,[i(`li`,null,[u(`Train an autoencoder first. Encode to a `),i(`strong`,null,`64 × 64 × 4`),u(` latent — 48× smaller`)]),i(`li`,null,[u(`Run the `),i(`strong`,null,`entire`),u(` diffusion process in there`)]),i(`li`,null,`Decode once, at the very end`)],-1)]]),_:1})]),s((d(),a(`div`,v,[...b[1]||=[i(`p`,null,`Section 01’s autoencoder, section 05’s diffusion model, running inside it. That is Stable Diffusion, and it is why image generation runs on a laptop.`,-1)]])),[[C]]),i(`div`,y,[n(S,{source:`Rombach, Blattmann, Lorenz, Esser & Ommer, High-Resolution Image Synthesis with Latent Diffusion Models (2021)`,url:`https://arxiv.org/abs/2112.10752`})])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BFky_As4.js b/lecture-07/assets/md-BFky_As4.js new file mode 100644 index 0000000000000000000000000000000000000000..7ba00be3977419e4b167bd53b189958d2ad51ac7 --- /dev/null +++ b/lecture-07/assets/md-BFky_As4.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,St as r,V as i,W as a,_ as o,b as s,bt as c,et as l,g as u,m as d,ut as f,v as p,vt as m,w as h,x as g,xt as _,y as v,yt as y,z as b}from"./modules/shiki-CkJq9tSf.js";import{t as x}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as S,t as C}from"./slidev/context-DnYiQGy6.js";import{t as w}from"./slidev/VClicks-C3WADcJq.js";import{D as T,O as E,w as D}from"./useGenerative-DDHg2gzY.js";import{t as O}from"./interactive-BcxwnYg4.js";import{t as k}from"./Slider-Bf0ITYx4.js";var A=[`viewBox`],j=[`x`],M=[`x`,`y`,`width`,`height`],N=[`x`],P=[`x`,`y`,`width`,`height`],F=[`x`],I=[`x`,`y`,`width`,`height`],L=[`x`,`y`],R=[`x`,`y`],z=[`x`,`y`],B=[`x`,`y`],V={class:`dl-tc__formula`,x:`8`,y:`180`},H={key:0},U={key:1},W=3,G=13,K=46,q=26,J=x(h({__name:`TransposeConvLab`,setup(t){let{$slidev:a,$nav:c,$clicksContext:l,$clicks:m,$page:h,$renderContext:g,$frontmatter:x}=S(),C=f(4),w=f(2),O=u(()=>D(W,C.value,w.value)),J=u(()=>{let e=2*w.value+1,t=[];for(let n=0;nY(2)+O.value.outSize*G+10);function Z(e){let{min:t,max:n}=O.value;return n===t?e>=t?.62:.3:Math.min(Math.max(.2+.72*((e-t)/(n-t)),.12),.95)}let Q=u(()=>q+Math.max(W,J.value.n,O.value.outSize)*G/2);return(t,a)=>{let c=k,l=T,u=E;return b(),p(u,{"max-width":`44rem`},{controls:e(()=>[n(c,{modelValue:C.value,"onUpdate:modelValue":a[0]||=e=>C.value=e,label:`kernel`,min:2,max:5,step:1,precision:0},null,8,[`modelValue`]),n(c,{modelValue:w.value,"onUpdate:modelValue":a[1]||=e=>w.value=e,label:`stride`,min:1,max:3,step:1,precision:0},null,8,[`modelValue`]),n(l,{label:`DCGAN (4, 2)`,variant:`ghost`,onClick:a[2]||=e=>{C.value=4,w.value=2}}),n(l,{label:`The bad one (3, 2)`,variant:`ghost`,onClick:a[3]||=e=>{C.value=3,w.value=2}})]),readout:e(()=>[O.value.even?(b(),s(`span`,H,` Stride `+r(w.value)+` divides kernel `+r(C.value)+`: every interior cell gets `+r(O.value.min)+` taps. No checkerboard. `,1)):(b(),s(`span`,U,` Interior cells get between `+r(O.value.min)+` and `+r(O.value.max)+` taps — a `+r((O.value.max/O.value.min).toFixed(0))+`× difference, laid out in a grid. That is the checkerboard, and no weight has been learned yet. `,1))]),default:e(()=>[(b(),s(`svg`,{class:`dl-tc`,viewBox:`0 0 ${X.value} 186`,role:`img`,"aria-label":`A transposed convolution as zero insertion followed by an ordinary convolution`},[v(` 1. the input `),o(`text`,{class:`dl-tc__cap`,x:Y(0),y:`16`},`input `+r(W)+`×`+r(W),8,j),(b(!0),s(d,null,i(9,e=>(b(),s(`rect`,{key:`i${e}`,class:`dl-tc__in`,x:Y(0)+(e-1)%W*G,y:q+Math.floor((e-1)/W)*G,width:11.5,height:11.5},null,8,M))),128)),v(` 2. the same input with zeros between it `),o(`text`,{class:`dl-tc__cap`,x:Y(1),y:`16`},` zeros inserted `+r(J.value.n)+`×`+r(J.value.n),9,N),(b(!0),s(d,null,i(J.value.cells,(e,t)=>(b(),s(`rect`,{key:`s${t}`,class:y([`dl-tc__spread`,{"is-live":e.live}]),x:Y(1)+e.j*G,y:q+e.i*G,width:11.5,height:11.5},null,10,P))),128)),v(` 3. the result, shaded by how many taps reached each cell `),o(`text`,{class:`dl-tc__cap`,x:Y(2),y:`16`},` output `+r(O.value.outSize)+`×`+r(O.value.outSize),9,F),(b(!0),s(d,null,i(O.value.counts,(e,t)=>(b(),s(d,{key:`r${t}`},[(b(!0),s(d,null,i(e,(e,n)=>(b(),s(`rect`,{key:`o${t}-${n}`,class:`dl-tc__out`,x:Y(2)+n*G,y:q+t*G,width:11.5,height:11.5,style:_({opacity:Z(e)})},null,12,I))),128))],64))),128)),o(`text`,{class:`dl-tc__arrow`,x:Y(1)-K/2,y:Q.value,"text-anchor":`middle`},`→`,8,L),o(`text`,{class:`dl-tc__arrow`,x:Y(2)-K/2,y:Q.value,"text-anchor":`middle`},`→`,8,R),o(`text`,{class:`dl-tc__sub`,x:Y(1)-K/2,y:Q.value+15,"text-anchor":`middle`},` stride `+r(w.value),9,z),o(`text`,{class:`dl-tc__sub`,x:Y(2)-K/2,y:Q.value+15,"text-anchor":`middle`},` conv `+r(C.value)+`×`+r(C.value),9,B),o(`text`,V,` (`+r(W)+` − 1)·`+r(w.value)+` + `+r(C.value)+` = `+r(O.value.outSize),1)],8,A))]),_:1})}}}),[[`__scopeId`,`data-v-04b43cc2`]]),Y={class:`mt-2 dl-callout`},X={__name:`slides.md__slidev_41`,setup(r){let{$slidev:i,$nav:u,$clicksContext:d,$clicks:f,$page:h,$renderContext:_,$frontmatter:v}=S();return d.setup(),(r,i)=>{let u=J,d=w,f=a(`click`);return b(),p(O,c(t(m(C)(m(v),40))),{aside:e(t=>[i[2]||=o(`p`,null,`Not a new operation: insert zeros between the inputs, then convolve.`,-1),n(d,null,{default:e(()=>[...i[0]||=[o(`ul`,null,[o(`li`,null,[g(`Output is `),o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mo`,{stretchy:`false`},`(`),o(`mi`,null,`n`),o(`mo`,null,`−`),o(`mn`,null,`1`),o(`mo`,{stretchy:`false`},`)`),o(`mi`,null,`s`),o(`mo`,null,`+`),o(`mi`,null,`k`)]),o(`annotation`,{encoding:`application/x-tex`},`(n-1)s + k`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),o(`span`,{class:`mopen`},`(`),o(`span`,{class:`mord mathnormal`},`n`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),o(`span`,{class:`mbin`},`−`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),o(`span`,{class:`mord`},`1`),o(`span`,{class:`mclose`},`)`),o(`span`,{class:`mord mathnormal`},`s`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),o(`span`,{class:`mbin`},`+`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6944em`}}),o(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0315em`}},`k`)])])])]),o(`li`,null,[g(`Shading is `),o(`strong`,null,`how many taps`),g(` reach each cell`)]),o(`li`,null,[g(`Try `),o(`strong`,null,`(3, 2)`)])],-1)]]),_:1}),l((b(),s(`div`,Y,[...i[1]||=[o(`p`,null,`Kernel 3, stride 2: a 4× difference between neighbours.`,-1)]])),[[f]])]),default:e(()=>[n(u)]),_:1},16)}}};export{X as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BGJMzTO82.js b/lecture-07/assets/md-BGJMzTO82.js new file mode 100644 index 0000000000000000000000000000000000000000..70c748a6caf5f82fb63fca35e03648f6dee427ee --- /dev/null +++ b/lecture-07/assets/md-BGJMzTO82.js @@ -0,0 +1,11 @@ +import{$ as e,E as t,M as n,S as r,_ as i,bt as a,v as o,vt as s,x as c,z as l}from"./modules/shiki-CkJq9tSf.js";import{n as u,t as d}from"./slidev/context-DnYiQGy6.js";import{t as f}from"./default-Bp68E4h0.js";import{t as p}from"./slidev/VClicks-C3WADcJq.js";import{t as m}from"./slidev/CodeBlockWrapper-DfjXYRxv.js";var h={class:`dl-tight mt-2`},g={__name:`slides.md__slidev_36`,setup(g){let{$slidev:_,$nav:v,$clicksContext:y,$clicks:b,$page:x,$renderContext:S,$frontmatter:C}=u();return y.setup(),(u,g)=>{let _=m,v=p;return l(),o(f,a(t(s(d)(s(C),35))),{default:e(()=>[g[2]||=i(`h1`,null,`The training loop`,-1),r(_,n({lines:!0},{title:``,ranges:[`all`,`1-2`,`5-8`,`11-13`,`all`]}),{default:e(()=>[...g[0]||=[i(`pre`,{class:`shiki shiki-themes vitesse-dark vitesse-light slidev-code`,style:{"--shiki-dark":`#dbd7caee`,"--shiki-light":`#393a34`,"--shiki-dark-bg":`#121212`,"--shiki-light-bg":`#ffffff`}},[i(`code`,{class:`language-python`},[i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`opt_d `),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` torch`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`optim`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Adam`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`D`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`parameters`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(),`),i(`span`,{style:{"--shiki-dark":`#BD976A`,"--shiki-light":`#B07D48`}},` lr`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`2e-4`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),i(`span`,{style:{"--shiki-dark":`#BD976A`,"--shiki-light":`#B07D48`}},` betas`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=(`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0.5`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},` 0.999`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`))`)]),c(` +`),i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`opt_g `),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` torch`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`optim`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Adam`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`G`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`parameters`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(),`),i(`span`,{style:{"--shiki-dark":`#BD976A`,"--shiki-light":`#B07D48`}},` lr`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`2e-4`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),i(`span`,{style:{"--shiki-dark":`#BD976A`,"--shiki-light":`#B07D48`}},` betas`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=(`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0.5`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},` 0.999`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`))`)]),c(` +`),i(`span`,{class:`line`}),c(` +`),i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#4D9375`,"--shiki-light":`#1E754F`}},`for`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` real `),i(`span`,{style:{"--shiki-dark":`#4D9375`,"--shiki-light":`#1E754F`}},`in`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` loader`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`:`)]),c(` +`),i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` fake `),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` G`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`torch`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`randn`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`real`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`size`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},` 100`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),i(`span`,{style:{"--shiki-dark":`#BD976A`,"--shiki-light":`#B07D48`}},` device`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`dev`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`))`),i(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # steps 1–3`)]),c(` +`),i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` loss_d `),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` bce`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`D`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`real`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` ones`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),i(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` +`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` bce`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`D`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`fake`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`detach`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()),`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` zeros`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`)]),c(` +`),i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` opt_d`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`zero_grad`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`; loss_d`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`backward`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`; opt_d`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`step`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`)]),c(` +`),i(`span`,{class:`line`}),c(` +`),i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` fake `),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` G`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`torch`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`randn`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`real`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`size`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),i(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},` 100`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),i(`span`,{style:{"--shiki-dark":`#BD976A`,"--shiki-light":`#B07D48`}},` device`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`dev`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`))`),i(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # step 4`)]),c(` +`),i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` loss_g `),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` bce`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`D`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`fake`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` ones`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),i(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # label 1 — the non-saturating form`)]),c(` +`),i(`span`,{class:`line`},[i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` opt_g`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`zero_grad`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`; loss_g`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`backward`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`; opt_g`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),i(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`step`),i(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`)])])],-1)]]),_:1},16),i(`div`,h,[r(v,null,{default:e(()=>[...g[1]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`Two optimisers`),c(`, each holding only its own parameters`)]),i(`li`,null,[i(`code`,null,`fake.detach()`),c(` on line 6 — update `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),c(` without pushing gradient back into `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])])]),i(`li`,null,[c(`Line 10 has no `),i(`code`,null,`detach`),c(`: that gradient `),i(`strong`,null,`must`),c(` cross `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),c(` to reach `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])])])],-1)]]),_:1})])]),_:1},16)}}};export{g as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BGN9zmKq.js b/lecture-07/assets/md-BGN9zmKq.js new file mode 100644 index 0000000000000000000000000000000000000000..d5357c864c38417eb1f5a840ee140562fa37e471 --- /dev/null +++ b/lecture-07/assets/md-BGN9zmKq.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-4 dl-callout`},h={__name:`slides.md__slidev_34`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),33))),{default:e(()=>[h[1]||=r(`h1`,null,`The four steps`,-1),h[2]||=r(`p`,null,[l(`One iteration. Two forward passes for `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`)]),r(`annotation`,{encoding:`application/x-tex`},`D`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),l(`, one for `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`G`)]),r(`annotation`,{encoding:`application/x-tex`},`G`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`},`G`)])])]),l(`, and a label flip.`)],-1),h[3]||=r(`div`,{class:`dl-ledger mt-3`},[r(`table`,null,[r(`thead`,null,[r(`tr`,null,[r(`th`),r(`th`,null,`pass`),r(`th`,null,`what goes in`),r(`th`,null,`label it is trained against`)])]),r(`tbody`,null,[r(`tr`,null,[r(`td`,null,`1`),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,{mathvariant:`bold`},`x`),r(`mo`,{stretchy:`false`},`)`)]),r(`annotation`,{encoding:`application/x-tex`},`D(\\mathbf{x})`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathbf`},`x`),r(`span`,{class:`mclose`},`)`)])])])]),r(`td`,null,`a real batch`),r(`td`,null,[r(`strong`,null,`1`)])]),r(`tr`,null,[r(`td`,null,`2`),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`G`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,{mathvariant:`bold`},`z`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,{stretchy:`false`},`)`)]),r(`annotation`,{encoding:`application/x-tex`},`D(G(\\mathbf{z}))`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`},`G`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathbf`},`z`),r(`span`,{class:`mclose`},`))`)])])])]),r(`td`,null,`a fake batch`),r(`td`,null,[r(`strong`,null,`0`)])]),r(`tr`,null,[r(`td`,null,`3`),r(`td`,null,[l(`update `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`)]),r(`annotation`,{encoding:`application/x-tex`},`D`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])])]),r(`td`,null,`both of the above`),r(`td`,null,`—`)]),r(`tr`,null,[r(`td`,null,`4`),r(`td`,null,[l(`update `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`G`)]),r(`annotation`,{encoding:`application/x-tex`},`G`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`},`G`)])])])]),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`G`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,{mathvariant:`bold`},`z`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,{stretchy:`false`},`)`)]),r(`annotation`,{encoding:`application/x-tex`},`D(G(\\mathbf{z}))`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`},`G`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathbf`},`z`),r(`span`,{class:`mclose`},`))`)])])]),l(` again`)]),r(`td`,null,[r(`strong`,null,`1`)])])])])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,[l(`Step 4 uses the label `),r(`strong`,null,`1`),l(` on data it knows is fake. That single lie is the generator’s entire training signal.`)],-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BHDP04KT.js b/lecture-07/assets/md-BHDP04KT.js new file mode 100644 index 0000000000000000000000000000000000000000..e94253bbb41e8d46f1a3c50142705a46dda4c929 --- /dev/null +++ b/lecture-07/assets/md-BHDP04KT.js @@ -0,0 +1,13 @@ +import{$ as e,E as t,M as n,S as r,W as i,_ as a,b as o,bt as s,et as c,v as l,vt as u,x as d,z as f}from"./modules/shiki-CkJq9tSf.js";import{n as p,t as m}from"./slidev/context-DnYiQGy6.js";import{t as h}from"./default-Bp68E4h0.js";import{t as g}from"./slidev/CodeBlockWrapper-DfjXYRxv.js";var _={class:`mt-3 dl-secondary`},v={__name:`slides.md__slidev_16`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=p();return x.setup(),(p,v)=>{let y=g,b=i(`click`);return f(),l(h,s(t(u(m)(u(T),15))),{default:e(()=>[v[2]||=a(`h1`,null,`An autoencoder in PyTorch`,-1),r(y,n({lines:!0},{title:``,ranges:[`all`,`1-5`,`7-11`,`14-16`,`all`]}),{default:e(()=>[...v[0]||=[a(`pre`,{class:`shiki shiki-themes vitesse-dark vitesse-light slidev-code`,style:{"--shiki-dark":`#dbd7caee`,"--shiki-light":`#393a34`,"--shiki-dark-bg":`#121212`,"--shiki-light-bg":`#ffffff`}},[a(`code`,{class:`language-python`},[a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`enc `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Sequential`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # 784 → 2`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Linear`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`784`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},` 128`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`ReLU`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(),`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Linear`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`128`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},` 2`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`dec `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Sequential`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # 2 → 784`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Linear`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`2`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},` 128`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`ReLU`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(),`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Linear`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`128`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},` 784`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` nn`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`Sigmoid`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(),`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`)]),d(` +`),a(`span`,{class:`line`}),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#4D9375`,"--shiki-light":`#1E754F`}},`for`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` x`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` _ `),a(`span`,{style:{"--shiki-dark":`#4D9375`,"--shiki-light":`#1E754F`}},`in`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` loader`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`:`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # the label is thrown away`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` z `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` enc`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`x`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`flatten`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`1`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`))`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # (B, 784) → (B, 2)`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` loss `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` F`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`mse_loss`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`dec`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`z`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` x`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`flatten`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`1`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`))`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # the input IS the target`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` loss`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`backward`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`; opt`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`step`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`; opt`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`zero_grad`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`)])])],-1)]]),_:1},16),c((f(),o(`div`,_,[...v[1]||=[a(`p`,null,[a(`code`,null,`for x, _ in loader`),d(` — the underscore is the point. No labels were used.`)],-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BIX3o5PQ.js b/lecture-07/assets/md-BIX3o5PQ.js new file mode 100644 index 0000000000000000000000000000000000000000..122863297783bc24b315cd31af95b4aa559edb94 --- /dev/null +++ b/lecture-07/assets/md-BIX3o5PQ.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./Citation-BuY_RPc0.js";var g={class:`grid grid-cols-2 gap-10 mt-4 dl-tight`},_={class:`mt-5 dl-callout`},v={class:`mt-3`},y={__name:`slides.md__slidev_19`,setup(y){let{$slidev:b,$nav:x,$clicksContext:S,$clicks:C,$page:w,$renderContext:T,$frontmatter:E}=f();return S.setup(),(f,y)=>{let b=h,x=r(`click`);return d(),c(m,o(t(l(p)(l(E),18))),{default:e(()=>[y[3]||=i(`h1`,null,`Two changes, and only two`,-1),y[4]||=i(`p`,null,`The variational autoencoder is the autoencoder with the previous slide fixed.`,-1),i(`div`,g,[s((d(),a(`div`,null,[...y[0]||=[i(`h3`,null,`1 — encode a distribution`,-1),i(`p`,null,[u(`The encoder outputs `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`bold-italic`},`μ`)]),i(`annotation`,{encoding:`application/x-tex`},`\\boldsymbol\\mu`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6389em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`μ`)])])])])]),u(),i(`strong`,null,`and`),u(),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`bold-italic`},`σ`)]),i(`annotation`,{encoding:`application/x-tex`},`\\boldsymbol\\sigma`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`,style:{"margin-right":`0.037em`}},`σ`)])])])])]),u(`, not a point. Each example now claims a `),i(`em`,null,`region`),u(` of the latent, not a spot.`)],-1)]])),[[x]]),s((d(),a(`div`,null,[...y[1]||=[i(`h3`,null,`2 — pull it toward a prior`,-1),i(`p`,null,[u(`Add a term that punishes each encoded distribution for straying from `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`script`},`N`),i(`mo`,{stretchy:`false`},`(`),i(`mn`,{mathvariant:`bold`},`0`),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`I`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathcal{N}(\\mathbf{0}, I)`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathcal`,style:{"margin-right":`0.1474em`}},`N`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`0`),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0785em`}},`I`),i(`span`,{class:`mclose`},`)`)])])]),u(` — the thing you will sample from later.`)],-1)]])),[[x]])]),s((d(),a(`div`,_,[...y[2]||=[i(`p`,null,`Regions overlap and fill; points do not. That is the whole idea, and everything else is bookkeeping.`,-1)]])),[[x]]),i(`div`,v,[n(b,{source:`Kingma & Welling, Auto-Encoding Variational Bayes (2013)`,url:`https://arxiv.org/abs/1312.6114`})])]),_:1},16)}}};export{y as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BKRLR2qT2.js b/lecture-07/assets/md-BKRLR2qT2.js new file mode 100644 index 0000000000000000000000000000000000000000..fd63e29a0c72948af106a617ebb4b3956d3d6d04 --- /dev/null +++ b/lecture-07/assets/md-BKRLR2qT2.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./PollSlide-Dmx53yj1.js";var g={class:`mt-6 dl-reveal`},_={class:`mt-2 dl-secondary`},v={__name:`slides.md__slidev_37`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),36))),{default:e(()=>[n(y,{question:`You delete .detach() on line 6. What happens?`,items:[`A shape error on the next line`,`Nothing — G has its own optimiser, so it is unaffected`,`D's update also computes gradients into G, which opt_g then applies`,`The discriminator stops learning`]}),s((d(),a(`div`,g,[...v[0]||=[i(`p`,null,`G accumulates gradient from D’s loss`,-1)]])),[[b]]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,[i(`code`,null,`opt_g`),u(` only `),i(`em`,null,`applies`),u(` gradients; it does not decide who computed them. G’s `),i(`code`,null,`.grad`),u(` now carries a term from the discriminator’s objective, and `),i(`code`,null,`opt_g.step()`),u(` will happily use it.`)],-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BMdZT-Nb.js b/lecture-07/assets/md-BMdZT-Nb.js new file mode 100644 index 0000000000000000000000000000000000000000..b64281d623f0be489825a29afcefded76c19fed7 --- /dev/null +++ b/lecture-07/assets/md-BMdZT-Nb.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,St as r,V as i,W as a,_ as o,b as s,bt as c,et as l,g as u,m as d,ut as f,v as p,vt as m,w as h,x as g,z as _}from"./modules/shiki-CkJq9tSf.js";import{t as v}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as y,t as b}from"./slidev/context-DnYiQGy6.js";import{t as x}from"./slidev/VClicks-C3WADcJq.js";import{C as S,D as C,O as w,b as T,m as E,t as D,u as O}from"./useGenerative-DDHg2gzY.js";import{t as k}from"./Plot2D-C9URVmMB.js";import{t as A}from"./PlotLabel-BilrlAqg.js";import{t as j}from"./PlotPoints-CeOGnq0p.js";import{t as M}from"./interactive-BcxwnYg4.js";import{t as N}from"./Slider-Bf0ITYx4.js";var P={class:`dl-cfg__out`},F={class:`dl-cfg__ref`},I={class:`dl-cfg__note`},L=.389,R=v(h({__name:`GuidanceLab`,setup(t){let{$slidev:a,$nav:c,$clicksContext:l,$clicks:h,$page:v,$renderContext:b,$frontmatter:x}=y(),{alphaBar:M,steps:R}=E(),z=f(0),B=f(1),V=S(36,8080),H=u(()=>{let e=V;for(let t=R-1;t>0;t--)e=e.map(e=>T(e,M[t],M[t-1],O(e,M[t],z.value,B.value)));return e}),U=u(()=>{let e=0,t=0,n=D[z.value];for(let r of H.value){let i=D.map(e=>(e.x-r.x)**2+(e.y-r.y)**2);i.indexOf(Math.min(...i))===z.value&&(e+=1),t+=Math.hypot(r.x-n.x,r.y-n.y)}return{onPrompt:e,total:H.value.length,spread:t/H.value.length}}),W=u(()=>H.value.map(e=>{let t=D.map(t=>(t.x-e.x)**2+(t.y-e.y)**2);return{...e,cls:t.indexOf(Math.min(...t))===z.value?`asked`:`other`}})),G=u(()=>D.map((e,t)=>({...e,cls:t===z.value?`asked`:`other`})));return(t,a)=>{let c=j,l=A,u=k,f=N,h=C,v=w;return _(),p(v,{"max-width":`44rem`},{controls:e(()=>[n(f,{modelValue:B.value,"onUpdate:modelValue":a[0]||=e=>B.value=e,label:`guidance scale w`,min:0,max:8,step:.25,precision:2},null,8,[`modelValue`]),(_(!0),s(d,null,i(m(D),(e,t)=>(_(),p(h,{key:t,label:`prompt: mode ${t+1}`,variant:t===z.value?`primary`:`ghost`,onClick:e=>z.value=t},null,8,[`label`,`variant`,`onClick`]))),128))]),readout:e(()=>[o(`div`,P,[o(`span`,null,[a[1]||=g(`on the mode you asked for: `,-1),o(`b`,null,r(U.value.onPrompt)+`/`+r(U.value.total),1)]),o(`span`,null,[a[2]||=g(`spread around it: `,-1),o(`b`,null,r(U.value.spread.toFixed(3)),1),o(`span`,F,`real data: `+r(L.toFixed(3)),1)]),o(`span`,I,r(B.value<.5?`w ≈ 0 — the prompt is barely being used`:B.value<=1.5?`w ≈ 1 — conditional sampling, and the spread the real data has`:`w > 1 — following a field no data ever had: on-prompt, wrong shape`),1)])]),default:e(()=>[n(u,{"x-domain":[-4,4],"y-domain":[-2.6,2.4],width:470,height:224,"x-ticks":[-4,-2,0,2,4],"y-ticks":[-2,0,2]},{default:e(()=>[n(c,{points:G.value,radius:14,colors:{asked:`var(--dl-accent-soft)`,other:`var(--dl-surface)`}},null,8,[`points`]),n(c,{points:W.value,radius:4.2,colors:{asked:`var(--dl-accent)`,other:`var(--dl-danger)`}},null,8,[`points`]),n(l,{at:[m(D)[z.value].x,m(D)[z.value].y],text:`asked for`,dy:-34,anchor:`middle`,dx:0,color:`var(--dl-accent-strong)`,bold:``},null,8,[`at`])]),_:1})]),_:1})}}}),[[`__scopeId`,`data-v-9b028896`]]),z={class:`mt-2 dl-callout`},B={__name:`slides.md__slidev_60`,setup(r){let{$slidev:i,$nav:u,$clicksContext:d,$clicks:f,$page:h,$renderContext:v,$frontmatter:S}=y();return d.setup(),(r,i)=>{let u=R,d=x,f=a(`click`);return _(),p(M,c(t(m(b)(m(S),59))),{aside:e(t=>[i[2]||=o(`p`,null,[g(`The prompt is `),o(`em`,null,`which mode do you want`),g(`. Drag `),o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mi`,null,`w`)]),o(`annotation`,{encoding:`application/x-tex`},`w`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.4306em`}}),o(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0269em`}},`w`)])])]),g(` from 0 to 8.`)],-1),n(d,null,{default:e(()=>[...i[0]||=[o(`ul`,null,[o(`li`,null,[o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mi`,null,`w`),o(`mo`,null,`=`),o(`mn`,null,`0`)]),o(`annotation`,{encoding:`application/x-tex`},`w = 0`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.4306em`}}),o(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0269em`}},`w`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),o(`span`,{class:`mrel`},`=`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),o(`span`,{class:`mord`},`0`)])])]),g(` — ignored; samples on all three modes`)]),o(`li`,null,[o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mi`,null,`w`),o(`mo`,null,`=`),o(`mn`,null,`1`)]),o(`annotation`,{encoding:`application/x-tex`},`w = 1`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.4306em`}}),o(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0269em`}},`w`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),o(`span`,{class:`mrel`},`=`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),o(`span`,{class:`mord`},`1`)])])]),g(` — on-prompt, real data’s spread`)]),o(`li`,null,[o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mi`,null,`w`),o(`mo`,null,`=`),o(`mn`,null,`7`)]),o(`annotation`,{encoding:`application/x-tex`},`w = 7`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.4306em`}}),o(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0269em`}},`w`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),o(`span`,{class:`mrel`},`=`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),o(`span`,{class:`mord`},`7`)])])]),g(` — on-prompt, `),o(`strong`,null,`twice`),g(` that spread`)])],-1)]]),_:1}),l((_(),s(`div`,z,[...i[1]||=[o(`p`,null,[g(`Past `),o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mi`,null,`w`),o(`mo`,null,`=`),o(`mn`,null,`1`)]),o(`annotation`,{encoding:`application/x-tex`},`w = 1`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.4306em`}}),o(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0269em`}},`w`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),o(`span`,{class:`mrel`},`=`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),o(`span`,{class:`mord`},`1`)])])]),g(`: a field no data ever had.`)],-1)]])),[[f]])]),default:e(()=>[n(u)]),_:1},16)}}};export{B as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BNjxTD9b.js b/lecture-07/assets/md-BNjxTD9b.js new file mode 100644 index 0000000000000000000000000000000000000000..4a2884752a6a133b02974d98ecff84c961bb36be --- /dev/null +++ b/lecture-07/assets/md-BNjxTD9b.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`dl-tight mt-3`},_={class:`mt-4 dl-callout`},v={__name:`slides.md__slidev_44`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),43))),{default:e(()=>[v[2]||=i(`h1`,null,`The failure that defines GANs`,-1),v[3]||=i(`p`,null,[i(`strong`,null,`Mode collapse.`),u(` The generator finds one output the discriminator accepts, and produces only that.`)],-1),i(`div`,g,[n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[u(`Nothing in `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`V`)]),i(`annotation`,{encoding:`application/x-tex`},`V`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`)])])]),u(` rewards `),i(`strong`,null,`variety`),u(`. It rewards each individual sample looking real`)]),i(`li`,null,`A single convincing face is a perfectly good local solution`),i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(` eventually learns to reject it — so `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])]),u(` moves to `),i(`em`,null,`another`),u(` single output. The two chase each other forever`)])],-1)]]),_:1})]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,`The samples look excellent and the model is worthless. Loss curves show nothing — they were never going to converge anyway.`,-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BTICBx02.js b/lecture-07/assets/md-BTICBx02.js new file mode 100644 index 0000000000000000000000000000000000000000..be5c148950f7133314412173345e739e99376fc8 --- /dev/null +++ b/lecture-07/assets/md-BTICBx02.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`grid grid-cols-2 gap-8 mt-1 dl-tight`},h={__name:`slides.md__slidev_27`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),26))),{default:e(()=>[h[2]||=r(`h1`,null,`Two networks, opposite jobs`,-1),h[3]||=r(`div`,{class:`mt-1 flex justify-center`},[r(`svg`,{viewBox:`0 0 660 200`,class:`dl-diagram`,role:`img`,"aria-label":`A generator turns noise into a fake sample; a discriminator scores real and fake samples`},[r(`defs`,null,[r(`marker`,{id:`gan-arrow`,markerWidth:`7`,markerHeight:`7`,refX:`6`,refY:`3.5`,orient:`auto`},[r(`path`,{class:`dl-dg-head`,d:`M0 0 L7 3.5 L0 7 z`})])]),r(`rect`,{class:`dl-dg-box is-accent`,x:`8`,y:`26`,width:`34`,height:`48`,rx:`4`}),r(`text`,{class:`dl-dg-lab`,x:`25`,y:`56`,"text-anchor":`middle`},`z`),r(`text`,{class:`dl-dg-small`,x:`25`,y:`88`,"text-anchor":`middle`},`noise`),r(`polygon`,{class:`dl-dg-net`,points:`78,18 190,36 190,64 78,82`}),r(`text`,{class:`dl-dg-in`,x:`134`,y:`55`,"text-anchor":`middle`},`generator G`),r(`rect`,{class:`dl-dg-box`,x:`228`,y:`26`,width:`52`,height:`48`,rx:`4`}),r(`text`,{class:`dl-dg-lab`,x:`254`,y:`56`,"text-anchor":`middle`},`x̃`),r(`text`,{class:`dl-dg-small`,x:`254`,y:`16`,"text-anchor":`middle`},`fake`),r(`rect`,{class:`dl-dg-box`,x:`228`,y:`126`,width:`52`,height:`48`,rx:`4`}),r(`text`,{class:`dl-dg-lab`,x:`254`,y:`156`,"text-anchor":`middle`},`x`),r(`text`,{class:`dl-dg-small`,x:`254`,y:`192`,"text-anchor":`middle`},`real, from the dataset`),r(`polygon`,{class:`dl-dg-net is-critic`,points:`380,72 492,90 492,112 380,130`}),r(`text`,{class:`dl-dg-in`,x:`436`,y:`105`,"text-anchor":`middle`},`discriminator D`),r(`text`,{class:`dl-dg-small`,x:`580`,y:`96`},`1 → real`),r(`text`,{class:`dl-dg-small`,x:`580`,y:`114`},`0 → fake`),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#gan-arrow)`,d:`M42 50 H74`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#gan-arrow)`,d:`M192 50 H224`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#gan-arrow)`,d:`M282 50 H330 V88 H376`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#gan-arrow)`,d:`M282 150 H330 V114 H376`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#gan-arrow)`,d:`M494 101 H556`})])],-1),r(`div`,m,[o((u(),i(`div`,null,[...h[0]||=[r(`p`,null,[r(`strong`,null,`D wants`),l(` to output 1 on real and 0 on fake.`)],-1)]])),[[g]]),o((u(),i(`div`,null,[...h[1]||=[r(`p`,null,[r(`strong`,null,`G wants`),l(` D to output 1 on fake. It never sees a real image.`)],-1)]])),[[g]])])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BUfIr-Xh.js b/lecture-07/assets/md-BUfIr-Xh.js new file mode 100644 index 0000000000000000000000000000000000000000..98c7bf2812957b92c66f6ca855745beeb471b4d2 --- /dev/null +++ b/lecture-07/assets/md-BUfIr-Xh.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";var _={class:`dl-tight mt-3`},v={class:`mt-4 dl-callout`},y={class:`mt-4`},b={__name:`slides.md__slidev_26`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=h,S=g,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),25))),{default:e(()=>[b[2]||=i(`h1`,null,`Stop specifying the loss`,-1),b[3]||=i(`p`,null,[u(`Pixel error is the problem. So do not write a loss at all — `),i(`strong`,null,`train one`),u(`.`)],-1),i(`div`,_,[n(x,null,{default:e(()=>[...b[0]||=[i(`ul`,null,[i(`li`,null,[u(`Put a second network in the room whose only job is to say `),i(`em`,null,`real`),u(` or `),i(`em`,null,`fake`)]),i(`li`,null,`Train the generator to make that network wrong`),i(`li`,null,`If the best available critic cannot tell, in what sense is the output not realistic?`)],-1)]]),_:1})]),s((d(),a(`div`,v,[...b[1]||=[i(`p`,null,[u(`The loss is no longer a formula you chose. It is a network that `),i(`strong`,null,`improves`),u(` as the generator does.`)],-1)]])),[[C]]),i(`div`,y,[n(S,{source:`Goodfellow, Pouget-Abadie, Mirza, Xu, Warde-Farley, Ozair, Courville & Bengio, Generative Adversarial Nets (2014)`,url:`https://arxiv.org/abs/1406.2661`})])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BV7tqBmU.css b/lecture-07/assets/md-BV7tqBmU.css new file mode 100644 index 0000000000000000000000000000000000000000..67f85c5f2326299dedb7e9fc1e8c02baff6695a2 --- /dev/null +++ b/lecture-07/assets/md-BV7tqBmU.css @@ -0,0 +1 @@ +.dl-syllabus[data-v-45e850fb]{width:100%}.dl-syllabus__track[data-v-45e850fb]{align-items:stretch;gap:4px;display:grid;position:relative}.dl-syllabus__block[data-v-45e850fb]{border:1px solid var(--dl-border);background:var(--dl-surface);cursor:pointer;border-radius:5px;height:2.6rem;padding:0;transition:background .15s,border-color .15s,transform .15s;position:relative}.dl-syllabus__block[data-v-45e850fb]:hover{border-color:var(--dl-accent);transform:translateY(-2px)}.dl-syllabus__block.is-selected[data-v-45e850fb]{background:var(--dl-accent);border-color:var(--dl-accent-strong)}.dl-syllabus__num[data-v-45e850fb]{color:var(--dl-muted);font-size:.8rem;font-weight:700}.dl-syllabus__block.is-selected .dl-syllabus__num[data-v-45e850fb]{color:#fff}.dl-syllabus__now[data-v-45e850fb]{border:2px solid var(--dl-danger);pointer-events:none;border-radius:5px;grid-row:1}.dl-syllabus__weeks[data-v-45e850fb]{color:var(--dl-muted);text-align:center;font-variant-numeric:tabular-nums;gap:4px;margin-top:.3rem;font-size:.7rem;display:grid}.dl-syllabus__detail[data-v-45e850fb]{min-height:6.5rem;margin-top:1.2rem}.dl-syllabus__heading[data-v-45e850fb]{align-items:baseline;gap:.8rem;display:flex}.dl-syllabus__weeklabel[data-v-45e850fb]{letter-spacing:.08em;text-transform:uppercase;color:var(--dl-accent);flex-shrink:0;font-size:.78rem;font-weight:700}.dl-syllabus__detail h3[data-v-45e850fb]{margin:0;font-size:1.45rem}.dl-syllabus__detail p[data-v-45e850fb]{max-width:68ch;margin:.45rem 0 0;font-size:1.05rem;line-height:1.5} diff --git a/lecture-07/assets/md-BVmdu-Rl.js b/lecture-07/assets/md-BVmdu-Rl.js new file mode 100644 index 0000000000000000000000000000000000000000..d5e27cfbb89af7dbffeefeca40e1902cf7faf6d8 --- /dev/null +++ b/lecture-07/assets/md-BVmdu-Rl.js @@ -0,0 +1 @@ +import{$ as e,E as t,H as n,St as r,_ as i,b as a,bt as o,v as s,vt as c,w as l,y as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{t as f}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as p,t as m}from"./slidev/context-DnYiQGy6.js";var h={class:`slidev-layout dl-end`},g={class:`dl-end__body`},_={class:`dl-end__meta`},v={key:0,class:`dl-end__next`},y=[`href`],b=f(l({__name:`end`,props:{email:{},next:{}},setup(e){let{$slidev:t,$nav:o,$clicksContext:s,$clicks:c,$page:l,$renderContext:f,$frontmatter:m}=p(),b=e;return(e,t)=>(d(),a(`div`,h,[i(`div`,g,[n(e.$slots,`default`,{},void 0,!0)]),t[0]||=i(`div`,{class:`dl-rule`},null,-1),i(`div`,_,[b.next?(d(),a(`span`,v,`Next: `+r(b.next),1)):u(`v-if`,!0),b.email?(d(),a(`a`,{key:1,href:`mailto:${b.email}`},r(b.email),9,y)):u(`v-if`,!0)])]))}}),[[`__scopeId`,`data-v-f8d31aa3`]]),x={__name:`slides.md__slidev_71`,setup(n){let{$slidev:r,$nav:a,$clicksContext:l,$clicks:u,$page:f,$renderContext:h,$frontmatter:g}=p();return l.setup(),(n,r)=>(d(),s(b,o(t(c(m)(c(g),70))),{default:e(()=>[...r[0]||=[i(`h1`,null,`To be continued…`,-1)]]),_:1},16))}};export{x as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BXat7wCC.js b/lecture-07/assets/md-BXat7wCC.js new file mode 100644 index 0000000000000000000000000000000000000000..c721096d708cdff2a750f232ac98eace364db70c --- /dev/null +++ b/lecture-07/assets/md-BXat7wCC.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`dl-tight mt-3`},_={class:`mt-4 dl-callout`},v={class:`mt-3 dl-secondary`},y={__name:`slides.md__slidev_23`,setup(y){let{$slidev:b,$nav:x,$clicksContext:S,$clicks:C,$page:w,$renderContext:T,$frontmatter:E}=f();return S.setup(),(f,y)=>{let b=h,x=r(`click`);return d(),c(m,o(t(l(p)(l(E),22))),{default:e(()=>[y[3]||=i(`h1`,null,`Why VAE samples are soft`,-1),y[4]||=i(`p`,null,`Not a bug, not a lack of capacity. It follows from the loss in one step.`,-1),i(`div`,g,[n(b,null,{default:e(()=>[...y[0]||=[i(`ul`,null,[i(`li`,null,[u(`The decoder is scored by `),i(`strong`,null,`squared error on pixels`)]),i(`li`,null,`A jittered code could have meant several different images`),i(`li`,null,[u(`The output minimising expected squared error over all of them is their `),i(`strong`,null,`average`)])],-1)]]),_:1})]),s((d(),a(`div`,_,[...y[1]||=[i(`p`,null,`Average of several sharp images = one blurry image. The model is not failing. It is succeeding.`,-1)]])),[[x]]),s((d(),a(`div`,v,[...y[2]||=[i(`p`,null,`So to get sharpness, stop scoring pixels against pixels. That is the next section.`,-1)]])),[[x]])]),_:1},16)}}};export{y as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BY6-u_L9.js b/lecture-07/assets/md-BY6-u_L9.js new file mode 100644 index 0000000000000000000000000000000000000000..369628da5d5ff8b52a4c29d43808c0388bedbdf7 --- /dev/null +++ b/lecture-07/assets/md-BY6-u_L9.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./slidev/VClicks-C3WADcJq.js";import{t as h}from"./interactive-BcxwnYg4.js";import{t as g}from"./AdversarialGame-BC2uRAJk.js";var _={class:`mt-2 dl-callout`},v={__name:`slides.md__slidev_33`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=g,b=m,x=r(`click`);return d(),c(h,o(t(l(p)(l(T),32))),{aside:e(t=>[v[2]||=i(`p`,null,`Two rows, computed two completely different ways.`,-1),n(b,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`V(D*, G)`),u(` — sum the logs over three bins, by hand`)]),i(`li`,null,[i(`strong`,null,`−log 4 + 2·JS`),u(` — never touches `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(` at all`)]),i(`li`,null,[u(`Move any slider. They `),i(`strong`,null,`never`),u(` disagree`)])],-1)]]),_:1}),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,[u(`At `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`Q`),i(`mo`,null,`=`),i(`mi`,null,`P`)]),i(`annotation`,{encoding:`application/x-tex`},`Q = P`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8778em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord mathnormal`},`Q`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`)])])]),u(`: `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`V`),i(`mo`,null,`=`),i(`mo`,null,`−`),i(`mn`,null,`1.38629`),i(`mo`,null,`=`),i(`mo`,null,`−`),i(`mi`,null,`log`),i(`mo`,null,`⁡`),i(`mn`,null,`4`)]),i(`annotation`,{encoding:`application/x-tex`},`V = -1.38629 = -\\log 4`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.7278em`,"vertical-align":`-0.0833em`}}),i(`span`,{class:`mord`},`−`),i(`span`,{class:`mord`},`1.38629`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mop`},[u(`lo`),i(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},`4`)])])]),u(`, and JS is 0.`)],-1)]])),[[x]])]),default:e(()=>[n(y)]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BbGXczPu.js b/lecture-07/assets/md-BbGXczPu.js new file mode 100644 index 0000000000000000000000000000000000000000..1d6567e39d50b9828727df1bf2a2d22610463272 --- /dev/null +++ b/lecture-07/assets/md-BbGXczPu.js @@ -0,0 +1,23 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./slidev/KaTexBlockWrapper-CzyNOCHB.js";var _={class:`mt-3 dl-math-sm`},v={class:`dl-tight mt-4`},y={class:`mt-4 dl-callout`},b={__name:`slides.md__slidev_53`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=g,S=h,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),52))),{default:e(()=>[b[3]||=i(`h1`,null,`The forward process, in one step`,-1),b[4]||=i(`p`,null,`Adding noise a thousand times is a chain. But because Gaussians compose, the whole chain has a closed form:`,-1),i(`div`,_,[n(x,{ranges:[]},{default:e(()=>[...b[0]||=[i(`p`,null,[i(`span`,{class:`katex-display`},[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mi`,null,`t`)]),i(`mtext`,null,`  `),i(`mo`,null,`=`),i(`mtext`,null,`  `),i(`msqrt`,null,[i(`msub`,null,[i(`mover`,{accent:`true`},[i(`mi`,null,`α`),i(`mo`,null,`ˉ`)]),i(`mi`,null,`t`)])]),i(`mtext`,null,` `),i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mn`,null,`0`)]),i(`mtext`,null,`  `),i(`mo`,null,`+`),i(`mtext`,null,`  `),i(`msqrt`,null,[i(`mrow`,null,[i(`mn`,null,`1`),i(`mo`,null,`−`),i(`msub`,null,[i(`mover`,{accent:`true`},[i(`mi`,null,`α`),i(`mo`,null,`ˉ`)]),i(`mi`,null,`t`)])])]),i(`mtext`,null,` `),i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mo`,{separator:`true`},`,`),i(`mspace`,{width:`2em`}),i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mo`,null,`∼`),i(`mi`,{mathvariant:`script`},`N`),i(`mo`,{stretchy:`false`},`(`),i(`mn`,{mathvariant:`bold`},`0`),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`I`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathbf{x}_t \\;=\\; \\sqrt{\\bar\\alpha_t}\\,\\mathbf{x}_0 \\;+\\; \\sqrt{1 - \\bar\\alpha_t}\\,\\boldsymbol\\epsilon, \\qquad \\boldsymbol\\epsilon \\sim \\mathcal{N}(\\mathbf{0}, I) `)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.5944em`,"vertical-align":`-0.15em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.04em`,"vertical-align":`-0.1972em`}}),i(`span`,{class:`mord sqrt`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8428em`}},[i(`span`,{class:`svg-align`,style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`,style:{"padding-left":`0.833em`}},[i(`span`,{class:`mord`},[i(`span`,{class:`mord katex-accent`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.5678em`}},[i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0037em`}},`α`)]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`accent-body`,style:{left:`-0.2222em`}},[i(`span`,{class:`mord`},`ˉ`)])])])])])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`-0.0037em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])]),i(`span`,{style:{top:`-2.8028em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`hide-tail`,style:{"min-width":`0.853em`,height:`1.08em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`1.08em`,viewBox:`0 0 400000 1080`,preserveAspectRatio:`xMinYMin slice`},[i(`path`,{d:`M95,702 +c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14 +c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54 +c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10 +s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429 +c69,-144,104.5,-217.7,106.5,-221 +l0 -0 +c5.3,-9.3,12,-14,20,-14 +H400000v40H845.2724 +s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7 +c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z +M834 80h400000v40h-400000z`})])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1972em`}},[i(`span`)])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3011em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},`0`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`+`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.0755em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord sqrt`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8811em`}},[i(`span`,{class:`svg-align`,style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`,style:{"padding-left":`0.833em`}},[i(`span`,{class:`mord`},`1`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord katex-accent`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.5678em`}},[i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0037em`}},`α`)]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`accent-body`,style:{left:`-0.2222em`}},[i(`span`,{class:`mord`},`ˉ`)])])])])])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`-0.0037em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])]),i(`span`,{style:{top:`-2.8411em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`hide-tail`,style:{"min-width":`0.853em`,height:`1.08em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`1.08em`,viewBox:`0 0 400000 1080`,preserveAspectRatio:`xMinYMin slice`},[i(`path`,{d:`M95,702 +c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14 +c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54 +c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10 +s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429 +c69,-144,104.5,-217.7,106.5,-221 +l0 -0 +c5.3,-9.3,12,-14,20,-14 +H400000v40H845.2724 +s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7 +c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z +M834 80h400000v40h-400000z`})])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1589em`}},[i(`span`)])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`2em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`∼`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathcal`,style:{"margin-right":`0.1474em`}},`N`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`0`),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0785em`}},`I`),i(`span`,{class:`mclose`},`)`)])])])])],-1)]]),_:1})]),i(`div`,v,[n(S,null,{default:e(()=>[...b[1]||=[i(`ul`,null,[i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`)]),i(`annotation`,{encoding:`application/x-tex`},`t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`)])])]),u(` is a `),i(`strong`,null,`noise level`),u(` here, not week 6’s position in a sequence`)]),i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mover`,{accent:`true`},[i(`mi`,null,`α`),i(`mo`,null,`ˉ`)]),i(`mi`,null,`t`)])]),i(`annotation`,{encoding:`application/x-tex`},`\\bar\\alpha_t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.7178em`,"vertical-align":`-0.15em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord katex-accent`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.5678em`}},[i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0037em`}},`α`)]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`accent-body`,style:{left:`-0.2222em`}},[i(`span`,{class:`mord`},`ˉ`)])])])])])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`-0.0037em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])]),u(` falls from `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mo`,null,`≈`),i(`mn`,null,`1`)]),i(`annotation`,{encoding:`application/x-tex`},`\\approx 1`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.4831em`}}),i(`span`,{class:`mrel`},`≈`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`1`)])])]),u(` to `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mo`,null,`≈`),i(`mn`,null,`0`)]),i(`annotation`,{encoding:`application/x-tex`},`\\approx 0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.4831em`}}),i(`span`,{class:`mrel`},`≈`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0`)])])]),u(` — a mixing dial between image and noise`)]),i(`li`,null,[u(`A training example at level `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`)]),i(`annotation`,{encoding:`application/x-tex`},`t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`)])])]),u(` costs `),i(`strong`,null,`one`),u(` multiply-add`)]),i(`li`,null,[u(`No chain is ever simulated. Pick a random `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`)]),i(`annotation`,{encoding:`application/x-tex`},`t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`)])])]),u(`, corrupt, train, repeat`)])],-1)]]),_:1})]),s((d(),a(`div`,y,[...b[2]||=[i(`p`,null,[u(`This is why training is affordable. Otherwise one example at `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`),i(`mo`,null,`=`),i(`mn`,null,`900`)]),i(`annotation`,{encoding:`application/x-tex`},`t = 900`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`900`)])])]),u(` costs 900 sequential steps.`)],-1)]])),[[C]])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Bc0pPnzk.js b/lecture-07/assets/md-Bc0pPnzk.js new file mode 100644 index 0000000000000000000000000000000000000000..5e652f3624aece7a23cef37b39f94705283ebbfa --- /dev/null +++ b/lecture-07/assets/md-Bc0pPnzk.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`grid grid-cols-2 gap-10 mt-5 dl-tight`},_={class:`dl-callout`},v={__name:`slides.md__slidev_7`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),6))),{default:e(()=>[v[2]||=i(`h1`,null,`The deal every model today makes`,-1),v[3]||=i(`p`,null,`Every model in this lecture is the same two-part arrangement.`,-1),v[4]||=i(`div`,{class:`dl-prompt mt-3`},[i(`p`,null,`a simple distribution you can sample from, and a learned map from it to the data`)],-1),i(`div`,g,[i(`div`,null,[n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[u(`Draw a `),i(`strong`,null,`latent`),u(),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,null,`∼`),i(`mi`,{mathvariant:`script`},`N`),i(`mo`,{stretchy:`false`},`(`),i(`mn`,{mathvariant:`bold`},`0`),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`I`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathbf{z} \\sim \\mathcal{N}(\\mathbf{0}, I)`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),i(`span`,{class:`mord mathbf`},`z`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`∼`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathcal`,style:{"margin-right":`0.1474em`}},`N`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`0`),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0785em`}},`I`),i(`span`,{class:`mclose`},`)`)])])]),u(` — free, and with no structure at all`)]),i(`li`,null,[u(`Push it through a network `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,null,`g`),i(`mi`,null,`θ`)])]),i(`annotation`,{encoding:`application/x-tex`},`g_\\theta`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.625em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`g`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`-0.0359em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`θ`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])])]),i(`li`,null,`Call the result a sample`)],-1)]]),_:1})]),i(`div`,null,[s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,[u(`Autoencoder, VAE, GAN, diffusion — `),i(`strong`,null,`all four`),u(` do exactly this. They differ only in `),i(`strong`,null,[u(`how `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,null,`g`),i(`mi`,null,`θ`)])]),i(`annotation`,{encoding:`application/x-tex`},`g_\\theta`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.625em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`g`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`-0.0359em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`θ`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])]),u(` is trained`)]),u(`.`)],-1)]])),[[b]])])])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BnpqSKpS.js b/lecture-07/assets/md-BnpqSKpS.js new file mode 100644 index 0000000000000000000000000000000000000000..54ad2db048fe324c9f2f5ded5de7aec428115d66 --- /dev/null +++ b/lecture-07/assets/md-BnpqSKpS.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./Citation-BuY_RPc0.js";var g={class:`mt-3 dl-secondary`},_={class:`mt-2`},v={__name:`slides.md__slidev_48`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),47))),{default:e(()=>[v[1]||=i(`h1`,null,`The zoo, and the six that mattered`,-1),v[2]||=i(`div`,{class:`dl-ledger mt-1`},[i(`table`,null,[i(`thead`,null,[i(`tr`,null,[i(`th`),i(`th`,null,`year`),i(`th`,null,`what it added`)])]),i(`tbody`,null,[i(`tr`,null,[i(`td`,null,[i(`strong`,null,`cGAN`)]),i(`td`,null,`2014`),i(`td`,null,`condition both networks on a label`)]),i(`tr`,null,[i(`td`,null,[i(`strong`,null,`DCGAN`)]),i(`td`,null,`2015`),i(`td`,null,`convolutions, and rules that made training work`)]),i(`tr`,null,[i(`td`,null,[i(`strong`,null,`pix2pix`)]),i(`td`,null,`2016`),i(`td`,null,[u(`image to image, from `),i(`strong`,null,`paired`),u(` data`)])]),i(`tr`,null,[i(`td`,null,[i(`strong`,null,`CycleGAN`)]),i(`td`,null,`2017`),i(`td`,null,[u(`image to image with `),i(`strong`,null,`no pairs`)])]),i(`tr`,null,[i(`td`,null,[i(`strong`,null,`WGAN-GP`)]),i(`td`,null,`2017`),i(`td`,null,`a loss whose value means something`)]),i(`tr`,null,[i(`td`,null,[i(`strong`,null,`StyleGAN`)]),i(`td`,null,`2018`),i(`td`,null,`1024² faces, and a steerable latent`)])])])],-1),s((d(),a(`div`,g,[...v[0]||=[i(`p`,null,[u(`Over 500 named variants exist — `),i(`em`,null,`the GAN zoo`),u(` lists them. Almost all are a change to the loss, the conditioning, or the normalisation.`)],-1)]])),[[b]]),i(`div`,_,[n(y,{source:`Hindupur, The GAN Zoo`,url:`https://github.com/hindupuravinash/the-gan-zoo`})])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BpMil6cJ.js b/lecture-07/assets/md-BpMil6cJ.js new file mode 100644 index 0000000000000000000000000000000000000000..d80f6989c38db99c3d4cb3cbc1341867b52238b9 --- /dev/null +++ b/lecture-07/assets/md-BpMil6cJ.js @@ -0,0 +1,11 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./slidev/KaTexBlockWrapper-CzyNOCHB.js";var _={class:`mt-3 dl-math-sm`},v={class:`dl-tight mt-4`},y={class:`mt-4 dl-callout`},b={__name:`slides.md__slidev_55`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=g,S=h,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),54))),{default:e(()=>[b[3]||=i(`h1`,null,`What the network is asked to do`,-1),b[4]||=i(`p`,null,[u(`Given a noisy image and the noise level, `),i(`strong`,null,`predict the noise that was added`),u(`.`)],-1),i(`div`,_,[n(x,{ranges:[]},{default:e(()=>[...b[0]||=[i(`p`,null,[i(`span`,{class:`katex-display`},[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`script`},`L`),i(`mtext`,null,`  `),i(`mo`,null,`=`),i(`mtext`,null,`  `),i(`msub`,null,[i(`mi`,{mathvariant:`double-struck`},`E`),i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mn`,null,`0`)]),i(`mo`,{separator:`true`},`,`),i(`mtext`,null,` `),i(`mi`,null,`t`),i(`mo`,{separator:`true`},`,`),i(`mtext`,null,` `),i(`mi`,{mathvariant:`bold-italic`},`ϵ`)])]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.8em`,maxsize:`1.8em`},`[`),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`∥`),i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mo`,null,`−`),i(`msub`,null,[i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mi`,null,`θ`)]),i(`mo`,{stretchy:`false`},`(`),i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mi`,null,`t`)]),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`t`),i(`mo`,{stretchy:`false`},`)`),i(`msup`,null,[i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`∥`),i(`mn`,null,`2`)]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.8em`,maxsize:`1.8em`},`]`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathcal{L} \\;=\\; \\mathbb{E}_{\\mathbf{x}_0,\\, t,\\, \\boldsymbol\\epsilon}\\Big[\\big\\lVert \\boldsymbol\\epsilon - \\boldsymbol\\epsilon_\\theta(\\mathbf{x}_t, t) \\big\\rVert^2\\Big] `)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathcal`},`L`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.8em`,"vertical-align":`-0.65em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbb`},`E`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mathbf mtight`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3173em`}},[i(`span`,{style:{top:`-2.357em`,"margin-left":`0em`,"margin-right":`0.0714em`}},[i(`span`,{class:`pstrut`,style:{height:`2.5em`}}),i(`span`,{class:`katex-sizing reset-size3 size1 mtight`},[i(`span`,{class:`mord mtight`},`0`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.143em`}},[i(`span`)])])])])]),i(`span`,{class:`mpunct mtight`},`,`),i(`span`,{class:`mspace mtight`,style:{"margin-right":`0.1952em`}}),i(`span`,{class:`mord mathnormal mtight`},`t`),i(`span`,{class:`mpunct mtight`},`,`),i(`span`,{class:`mspace mtight`,style:{"margin-right":`0.1952em`}}),i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord boldsymbol mtight`},`ϵ`)])])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2861em`}},[i(`span`)])])])])]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size2`},`[`)]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing mult`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.85em`}},[i(`span`,{style:{top:`-2.85em`}},[i(`span`,{class:`pstrut`,style:{height:`3.2em`}}),i(`span`,{style:{width:`0.556em`,height:`1.2em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`0.556em`,height:`1.2em`,viewBox:`0 0 556 1200`},[i(`path`,{d:`M145 15 v585 v0 v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v0 v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v0 v585 h43z +M367 15 v585 v0 v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v0 v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v0 v585 h43z`})])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.35em`}},[i(`span`)])])])])]),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.8em`,"vertical-align":`-0.65em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`θ`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing mult`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.85em`}},[i(`span`,{style:{top:`-2.85em`}},[i(`span`,{class:`pstrut`,style:{height:`3.2em`}}),i(`span`,{style:{width:`0.556em`,height:`1.2em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`0.556em`,height:`1.2em`,viewBox:`0 0 556 1200`},[i(`path`,{d:`M145 15 v585 v0 v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v0 v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v0 v585 h43z +M367 15 v585 v0 v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v0 v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v0 v585 h43z`})])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.35em`}},[i(`span`)])])])])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`1.054em`}},[i(`span`,{style:{top:`-3.3029em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},`2`)])])])])])])]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size2`},`]`)])])])])])],-1)]]),_:1})]),i(`div`,v,[n(S,null,{default:e(()=>[...b[1]||=[i(`ul`,null,[i(`li`,null,[u(`A `),i(`strong`,null,`mean squared error`),u(`. On noise, rather than on pixels`)]),i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`)]),i(`annotation`,{encoding:`application/x-tex`},`t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`)])])]),u(` goes in as an input, so `),i(`strong`,null,`one`),u(` network covers every noise level`)]),i(`li`,null,[u(`Subtract the prediction and you have an estimate of `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mn`,null,`0`)])]),i(`annotation`,{encoding:`application/x-tex`},`\\mathbf{x}_0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.5944em`,"vertical-align":`-0.15em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3011em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},`0`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])]),u(` — and therefore of one step back`)])],-1)]]),_:1})]),s((d(),a(`div`,y,[...b[2]||=[i(`p`,null,[u(`Predicting `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`bold-italic`},`ϵ`)]),i(`annotation`,{encoding:`application/x-tex`},`\\boldsymbol\\epsilon`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])])])])]),u(` rather than `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mn`,null,`0`)])]),i(`annotation`,{encoding:`application/x-tex`},`\\mathbf{x}_0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.5944em`,"vertical-align":`-0.15em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3011em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},`0`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])]),u(` is a `),i(`em`,null,`reparameterisation`),u(` of the same problem — and it is the change that made this work in 2020.`)],-1)]])),[[C]])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Bq1hVJQX.js b/lecture-07/assets/md-Bq1hVJQX.js new file mode 100644 index 0000000000000000000000000000000000000000..2e96da37188d9cc4e6f44c9e8cb90fcca7d37172 --- /dev/null +++ b/lecture-07/assets/md-Bq1hVJQX.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";var _={class:`dl-tight mt-3`},v={class:`mt-4 dl-callout`},y={class:`mt-2`},b={__name:`slides.md__slidev_67`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=h,S=g,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),66))),{default:e(()=>[b[2]||=i(`h1`,null,`How do you know it is any good?`,-1),b[3]||=i(`p`,null,[u(`There is no held-out accuracy here. The standard answer is a `),i(`strong`,null,`distance between two sets of statistics`),u(`.`)],-1),i(`div`,_,[n(x,null,{default:e(()=>[...b[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`FID`),u(` — features from a fixed pretrained network, a Gaussian fitted to each set, the distance between them. Lower is better`)]),i(`li`,null,[u(`It sees `),i(`strong`,null,`variety`),u(` as well as quality: a collapsed GAN scores badly however good its samples look`)]),i(`li`,null,`It is also biased by sample count, and gameable`)],-1)]]),_:1})]),s((d(),a(`div`,v,[...b[1]||=[i(`p`,null,`Every number in every table in this field is FID, and nobody fully trusts it. Look at samples too.`,-1)]])),[[C]]),i(`div`,y,[n(S,{source:`Heusel, Ramsauer, Unterthiner, Nessler & Hochreiter, GANs Trained by a Two Time-Scale Update Rule Converge to a Local Nash Equilibrium (2017)`,url:`https://arxiv.org/abs/1706.08500`})])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BqtlsPCt.css b/lecture-07/assets/md-BqtlsPCt.css new file mode 100644 index 0000000000000000000000000000000000000000..ab5a96d6cdc6dc5bdbd3e40ee86353fd2fec895d --- /dev/null +++ b/lecture-07/assets/md-BqtlsPCt.css @@ -0,0 +1 @@ +.dl-vae[data-v-1aaf2554]{flex-direction:column;gap:0;width:100%;display:flex}.dl-vae__strip[data-v-1aaf2554]{flex:none;width:100%;height:3.2rem;font-family:inherit}.dl-vae__axis[data-v-1aaf2554]{stroke:var(--dl-muted);stroke-width:1.2px}.dl-vae__prior[data-v-1aaf2554]{fill:none;stroke:var(--dl-body);stroke-width:1.5px;stroke-dasharray:4 3}.dl-vae__post[data-v-1aaf2554]{fill:none;stroke:var(--dl-accent);stroke-width:2.2px}.dl-vae__lab[data-v-1aaf2554]{fill:var(--dl-muted);font-size:9.5px}.dl-vae__out[data-v-1aaf2554]{flex-wrap:wrap;gap:.2rem 1.4rem;display:flex}.dl-vae__out b[data-v-1aaf2554]{color:var(--dl-accent);font-weight:700} diff --git a/lecture-07/assets/md-BrcdwIir.js b/lecture-07/assets/md-BrcdwIir.js new file mode 100644 index 0000000000000000000000000000000000000000..414278d0eac524179f1b1d880ad9daf08ad72163 --- /dev/null +++ b/lecture-07/assets/md-BrcdwIir.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-4 dl-callout`},h={__name:`slides.md__slidev_14`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),13))),{default:e(()=>[h[1]||=r(`h1`,null,`What autoencoders are actually for`,-1),h[2]||=r(`p`,null,[l(`Not generation. The useful outputs are the `),r(`strong`,null,`middle`),l(` and the `),r(`strong`,null,`error`),l(`.`)],-1),h[3]||=r(`div`,{class:`dl-ledger mt-3`},[r(`table`,null,[r(`thead`,null,[r(`tr`,null,[r(`th`),r(`th`,null,`what you use`),r(`th`,null,`why`)])]),r(`tbody`,null,[r(`tr`,null,[r(`td`,null,`compression, denoising`),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mover`,{accent:`true`},[r(`mi`,{mathvariant:`bold`},`x`),r(`mo`,null,`^`)])]),r(`annotation`,{encoding:`application/x-tex`},`\\hat{\\mathbf{x}}`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.7079em`}}),r(`span`,{class:`mord katex-accent`},[r(`span`,{class:`vlist-t`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.7079em`}},[r(`span`,{style:{top:`-3em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`mord mathbf`},`x`)]),r(`span`,{style:{top:`-3.0134em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`accent-body`,style:{left:`-0.25em`}},[r(`span`,{class:`mord`},`^`)])])])])])])])])])]),r(`td`,null,`keeps structure, drops noise`)]),r(`tr`,null,[r(`td`,null,`representation learning`),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`bold`},`z`)]),r(`annotation`,{encoding:`application/x-tex`},`\\mathbf{z}`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),r(`span`,{class:`mord mathbf`},`z`)])])])]),r(`td`,null,`features for a small labelled task`)]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`anomaly detection`)]),r(`td`,null,[l(`the `),r(`strong`,null,`error`)]),r(`td`,null,`train on normal only; odd things rebuild badly`)]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`a space to work in`)]),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`f`)]),r(`annotation`,{encoding:`application/x-tex`},`f`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1076em`}},`f`)])])]),l(` and `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`g`)]),r(`annotation`,{encoding:`application/x-tex`},`g`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.625em`,"vertical-align":`-0.1944em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`g`)])])])]),r(`td`,null,`remember this one for section 05`)])])])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,[l(`Every one of these uses `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`f`)]),r(`annotation`,{encoding:`application/x-tex`},`f`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1076em`}},`f`)])])]),l(`, or the loss. None of them uses `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`g`)]),r(`annotation`,{encoding:`application/x-tex`},`g`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.625em`,"vertical-align":`-0.1944em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`g`)])])]),l(` on its own.`)],-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-BriWe-Uw2.js b/lecture-07/assets/md-BriWe-Uw2.js new file mode 100644 index 0000000000000000000000000000000000000000..25e9a38ad95657ebc83d6699f23febe03289a234 --- /dev/null +++ b/lecture-07/assets/md-BriWe-Uw2.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,St as r,_ as i,b as a,bt as o,g as s,ut as c,v as l,vt as u,w as d,x as f,z as p}from"./modules/shiki-CkJq9tSf.js";import{t as m}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as h,t as g}from"./slidev/context-DnYiQGy6.js";import{t as _}from"./slidev/VClicks-C3WADcJq.js";import{D as v,E as y,O as b,T as x,_ as S,c as C,d as w,g as T,o as E,v as D,x as ee}from"./useGenerative-DDHg2gzY.js";import{t as te}from"./Plot2D-C9URVmMB.js";import{t as ne}from"./PlotPoints-CeOGnq0p.js";import{t as re}from"./interactive-BcxwnYg4.js";import{t as ie}from"./Slider-Bf0ITYx4.js";var O={class:`dl-vae`},k={class:`dl-vae__strip`,viewBox:`0 0 470 58`,role:`img`,"aria-label":`The aggregate posterior over latent codes, against the standard normal prior`},A=[`d`],j=[`d`],M=[`x2`],N=[`x`],P={class:`dl-vae__out`},F=404,I=32,L=46,R=3.4,z=m(d({__name:`VaeLatentLab`,setup(t){let{$slidev:o,$nav:d,$clicksContext:m,$clicks:g,$page:_,$renderContext:re,$frontmatter:z}=h(),B=c(0),V=ee(22),H=w(V),U=[...H].sort((e,t)=>e-t),W=s(()=>x(H,B.value)),G=s(()=>S(B.value)),K=s(()=>T(W.value,G.value)),q=(()=>{let e=y(4242);return H.map(()=>e())})(),J=s(()=>W.value.map((e,t)=>C(U,e+G.value*q[t],B.value))),Y=s(()=>{let e=0;for(let t=0;tD((t+.5)/24)),X=s(()=>ae.map(e=>{let t=C(U,e,B.value),n=Math.sqrt(Math.min(...V.map(e=>(e.x-t.x)**2+(e.y-t.y)**2)));return{...t,cls:n>.6?`off`:`on`}})),oe=s(()=>X.value.filter(e=>e.cls===`on`).length),Z=Array.from({length:120},(e,t)=>-3.4+2*R*t/119);function Q(e){return I+(e+R)/(2*R)*F}function $(e,t){return`M${Z.map((n,r)=>`${Q(n).toFixed(1)},${(L-Math.min(e[r]*t,42)).toFixed(1)}`).join(`L`)}`}let se=s(()=>$(Z.map(e=>Math.exp(-e*e/2)/Math.sqrt(2*Math.PI)),92)),ce=s(()=>$(E(W.value,G.value,Z),92));return(t,o)=>{let s=ne,c=te,d=ie,m=v,h=b;return p(),l(h,{"max-width":`45rem`},{controls:e(()=>[n(d,{modelValue:B.value,"onUpdate:modelValue":o[0]||=e=>B.value=e,label:`β — how hard the KL term pulls`,min:0,max:1,step:.02},null,8,[`modelValue`]),n(m,{label:`β = 0 · an autoencoder`,variant:`ghost`,onClick:o[1]||=e=>B.value=0}),n(m,{label:`β = 1 · a VAE`,variant:`ghost`,onClick:o[2]||=e=>B.value=1})]),readout:e(()=>[i(`div`,P,[i(`span`,null,[o[4]||=f(`codes vs N(0, 1): `,-1),i(`b`,null,r(K.value.toFixed(3)),1)]),i(`span`,null,[o[5]||=f(`sampled z landing on real data: `,-1),i(`b`,null,r(oe.value)+`/24`,1)]),i(`span`,null,[o[6]||=f(`reconstruction error: `,-1),i(`b`,null,r(Y.value.toFixed(3)),1)])])]),default:e(()=>[i(`div`,O,[n(c,{"x-domain":[-4.2,4.2],"y-domain":[-2.4,2.6],width:470,height:188,"x-ticks":[-4,-2,0,2,4],"y-ticks":[-2,0,2]},{default:e(()=>[n(s,{points:u(V),radius:3.2,color:`var(--dl-muted)`,opacity:.5},null,8,[`points`]),n(s,{points:X.value,radius:4.4,colors:{on:`var(--dl-accent)`,off:`var(--dl-danger)`}},null,8,[`points`])]),_:1}),(p(),a(`svg`,k,[i(`path`,{class:`dl-vae__prior`,d:se.value},null,8,A),i(`path`,{class:`dl-vae__post`,d:ce.value},null,8,j),i(`line`,{class:`dl-vae__axis`,x1:I,x2:436,y1:L,y2:L},null,8,M),o[3]||=i(`text`,{class:`dl-vae__lab`,x:`6`,y:`50`},`z`,-1),i(`text`,{class:`dl-vae__lab`,x:Q(0),y:`56`,"text-anchor":`middle`},` dashed: the N(0, 1) we sample from · solid: where the codes actually are `,8,N)]))])]),_:1})}}}),[[`__scopeId`,`data-v-1aaf2554`]]),B={__name:`slides.md__slidev_22`,setup(r){let{$slidev:a,$nav:s,$clicksContext:c,$clicks:d,$page:m,$renderContext:v,$frontmatter:y}=h();return c.setup(),(r,a)=>{let s=z,c=_;return p(),l(re,o(t(u(g)(u(y),21))),{aside:e(t=>[a[1]||=i(`p`,null,`The curve is where codes actually are; the dashed line is what we will sample. Red dots are samples that landed on nothing.`,-1),n(c,null,{default:e(()=>[...a[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`β = 0`),f(` — three spikes, two holes, 16 of 24 samples usable`)]),i(`li`,null,[i(`strong`,null,`β = 1`),f(` — the curve matches the prior, and `),i(`strong`,null,`24 of 24`),f(` land on data`)]),i(`li`,null,[f(`And reconstruction error nearly `),i(`strong`,null,`triples`)])],-1)]]),_:1})]),default:e(()=>[n(s)]),_:1},16)}}};export{B as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Bvit_-kG.js b/lecture-07/assets/md-Bvit_-kG.js new file mode 100644 index 0000000000000000000000000000000000000000..2a778404e903fedef42d04338f69df7875a03365 --- /dev/null +++ b/lecture-07/assets/md-Bvit_-kG.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";import{t as _}from"./slidev/KaTexBlockWrapper-CzyNOCHB.js";var v={class:`dl-tight mt-3`},y={class:`mt-3 dl-math-sm`},b={class:`mt-2 dl-callout`},x={class:`mt-2`},S={__name:`slides.md__slidev_59`,setup(S){let{$slidev:C,$nav:w,$clicksContext:T,$clicks:E,$page:D,$renderContext:O,$frontmatter:k}=f();return T.setup(),(f,S)=>{let C=h,w=_,T=g,E=r(`click`);return d(),c(m,o(t(l(p)(l(k),58))),{default:e(()=>[S[3]||=i(`h1`,null,`How the prompt gets in`,-1),S[4]||=i(`p`,null,[u(`The network already takes `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`)]),i(`annotation`,{encoding:`application/x-tex`},`t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`)])])]),u(`. Give it the text too, and it becomes `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mi`,null,`θ`)]),i(`mo`,{stretchy:`false`},`(`),i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mi`,null,`t`)]),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`t`),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`c`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\boldsymbol\\epsilon_\\theta(\\mathbf{x}_t, t, c)`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`θ`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`},`c`),i(`span`,{class:`mclose`},`)`)])])]),u(`.`)],-1),i(`div`,v,[n(C,null,{default:e(()=>[...S[0]||=[i(`ul`,null,[i(`li`,null,[u(`Encode the prompt once; every block `),i(`strong`,null,`cross-attends`),u(` to it — week 7’s cross-attention, in exactly that role`)]),i(`li`,null,[u(`Drop the caption `),i(`strong`,null,`10% of the time`),u(` in training, so one network learns both predictions`)]),i(`li`,null,[u(`At sampling time, push `),i(`strong`,null,`away`),u(` from the unconditional one:`)])],-1)]]),_:1})]),s((d(),a(`div`,y,[n(w,{ranges:[]},{default:e(()=>[...S[1]||=[i(`p`,null,[i(`span`,{class:`katex-display`},[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`},[i(`semantics`,null,[i(`mrow`,null,[i(`mover`,{accent:`true`},[i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mo`,null,`~`)]),i(`mtext`,null,`  `),i(`mo`,null,`=`),i(`mtext`,null,`  `),i(`msub`,null,[i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mi`,null,`θ`)]),i(`mo`,{stretchy:`false`},`(`),i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mi`,null,`t`)]),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`t`),i(`mo`,{stretchy:`false`},`)`),i(`mtext`,null,`  `),i(`mo`,null,`+`),i(`mtext`,null,`  `),i(`mi`,null,`w`),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`(`),i(`msub`,null,[i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mi`,null,`θ`)]),i(`mo`,{stretchy:`false`},`(`),i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mi`,null,`t`)]),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`t`),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`c`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,null,`−`),i(`msub`,null,[i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mi`,null,`θ`)]),i(`mo`,{stretchy:`false`},`(`),i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mi`,null,`t`)]),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`t`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\tilde{\\boldsymbol\\epsilon} \\;=\\; \\boldsymbol\\epsilon_\\theta(\\mathbf{x}_t, t) \\;+\\; w\\big(\\boldsymbol\\epsilon_\\theta(\\mathbf{x}_t, t, c) - \\boldsymbol\\epsilon_\\theta(\\mathbf{x}_t, t)\\big) `)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6813em`}}),i(`span`,{class:`mord katex-accent`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.6813em`}},[i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])])]),i(`span`,{style:{top:`-3.3634em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`accent-body`,style:{left:`-0.25em`}},[i(`span`,{class:`mord`},`~`)])])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`θ`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`+`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.2em`,"vertical-align":`-0.35em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0269em`}},`w`),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`(`)]),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`θ`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`},`c`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.2em`,"vertical-align":`-0.35em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`θ`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`)`)])])])])])],-1)]]),_:1})])),[[E]]),s((d(),a(`div`,b,[...S[2]||=[i(`p`,null,[i(`strong`,null,`Classifier-free guidance.`),u(),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`w`)]),i(`annotation`,{encoding:`application/x-tex`},`w`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.4306em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0269em`}},`w`)])])]),u(` here is the guidance scale — the field’s letter for it, not week 2’s weight vector `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`bold`},`w`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathbf{w}`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),i(`span`,{class:`mord mathbf`,style:{"margin-right":`0.016em`}},`w`)])])]),u(`. It is the "follow my prompt" slider in every image tool you have used.`)],-1)]])),[[E]]),i(`div`,x,[n(T,{source:`Ho & Salimans, Classifier-Free Diffusion Guidance (2022)`,url:`https://arxiv.org/abs/2207.12598`})])]),_:1},16)}}};export{S as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Bxxii7Y8.js b/lecture-07/assets/md-Bxxii7Y8.js new file mode 100644 index 0000000000000000000000000000000000000000..1b2250f5a4829b51f48ce7b2ea76431c8182a606 --- /dev/null +++ b/lecture-07/assets/md-Bxxii7Y8.js @@ -0,0 +1 @@ +import{$ as e,E as t,_ as n,bt as r,v as i,vt as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{n as s,t as c}from"./slidev/context-DnYiQGy6.js";import{t as l}from"./section-CLxRKQ9Y.js";var u={__name:`slides.md__slidev_10`,setup(u){let{$slidev:d,$nav:f,$clicksContext:p,$clicks:m,$page:h,$renderContext:g,$frontmatter:_}=s();return p.setup(),(s,u)=>(o(),i(l,r(t(a(c)(a(_),9))),{default:e(()=>[...u[0]||=[n(`h1`,null,`Compress first: autoencoders`,-1)]]),_:1},16))}};export{u as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-C-Dzt09w.js b/lecture-07/assets/md-C-Dzt09w.js new file mode 100644 index 0000000000000000000000000000000000000000..60b72062dc3202e16c69989b6f5fc0feb8d8b910 --- /dev/null +++ b/lecture-07/assets/md-C-Dzt09w.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./slidev/VClicks-C3WADcJq.js";import{t as h}from"./AutoencoderLab-BmCWWAhi.js";import{t as g}from"./interactive-BcxwnYg4.js";var _={class:`mt-2 dl-callout`},v={__name:`slides.md__slidev_13`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=m,x=r(`click`);return d(),c(g,o(t(l(p)(l(T),12))),{aside:e(t=>[v[2]||=i(`p`,null,`Three clusters of data. Grey is the input, teal is what comes back out.`,-1),n(b,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`latent = 2`),u(` — output sits exactly on input. Perfect, and useless`)]),i(`li`,null,[i(`strong`,null,`latent = 1`),u(` — every output must lie on `),i(`strong`,null,`one curve`),u(` the decoder can draw`)])],-1)]]),_:1}),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,`That curve is the model’s whole idea of what data is.`,-1)]])),[[x]])]),default:e(()=>[n(y)]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-C0aHXLHj.js b/lecture-07/assets/md-C0aHXLHj.js new file mode 100644 index 0000000000000000000000000000000000000000..13d4bfb87caa7f7c4b26175c6a483c2070f300a2 --- /dev/null +++ b/lecture-07/assets/md-C0aHXLHj.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`dl-tight mt-3`},_={class:`mt-4 dl-callout`},v={__name:`slides.md__slidev_43`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),42))),{default:e(()=>[v[2]||=i(`h1`,null,`One more piece from week 4`,-1),v[3]||=i(`p`,null,`Batch normalisation, in both networks, and it is doing more work here than usual.`,-1),i(`div`,g,[n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,`Usual benefit, from week 4: gradients stay in a workable range`),i(`li`,null,[i(`strong`,null,`New here`),u(` — it keeps one network’s activations from drifting while the other is chasing them`)])],-1)]]),_:1})]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,[u(`Not in `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(`’s first layer, and not in `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])]),u(`’s last. Both touch real pixel statistics.`)],-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-C2C3LePM.js b/lecture-07/assets/md-C2C3LePM.js new file mode 100644 index 0000000000000000000000000000000000000000..4fd89a55bdd4486072b1552fdd0f21d0aa2263fd --- /dev/null +++ b/lecture-07/assets/md-C2C3LePM.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";var _={class:`dl-tight mt-3`},v={class:`mt-4 dl-callout`},y={class:`mt-2`},b={__name:`slides.md__slidev_52`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=h,S=g,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),51))),{default:e(()=>[b[2]||=i(`h1`,null,`Destroying an image is easy`,-1),b[3]||=i(`p`,null,`The adversarial game exists because we could not write down a loss. Diffusion finds one, by going backwards.`,-1),i(`div`,_,[n(x,null,{default:e(()=>[...b[0]||=[i(`ul`,null,[i(`li`,null,`Take an image, add a little Gaussian noise, repeat a thousand times. Pure noise`),i(`li`,null,[u(`That direction needs `),i(`strong`,null,`no network and no training`),u(`. It is arithmetic`)]),i(`li`,null,[u(`So generate by learning to undo `),i(`strong`,null,`one step`),u(` of it`)]),i(`li`,null,[u(`Undoing a `),i(`em`,null,`little`),u(` noise is plain regression — week 2 material`)])],-1)]]),_:1})]),s((d(),a(`div`,v,[...b[1]||=[i(`p`,null,`The hard problem — noise to image — is a thousand easy ones stacked.`,-1)]])),[[C]]),i(`div`,y,[n(S,{source:`Ho, Jain & Abbeel, Denoising Diffusion Probabilistic Models (2020)`,url:`https://arxiv.org/abs/2006.11239`})])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-C77LyuEc2.js b/lecture-07/assets/md-C77LyuEc2.js new file mode 100644 index 0000000000000000000000000000000000000000..56c561570603e7d4c630882a145c4cb1e40f12ac --- /dev/null +++ b/lecture-07/assets/md-C77LyuEc2.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./LinkCard-C5341yCL.js";var g={class:`grid grid-cols-2 gap-6 mt-4`},_={class:`mt-5 dl-tight`},v={class:`mt-2 dl-secondary`},y={__name:`slides.md__slidev_38`,setup(y){let{$slidev:b,$nav:x,$clicksContext:S,$clicks:C,$page:w,$renderContext:T,$frontmatter:E}=f();return S.setup(),(f,y)=>{let b=h,x=r(`click`);return d(),c(m,o(t(l(p)(l(E),37))),{default:e(()=>[y[2]||=i(`h1`,null,`Watch it happen`,-1),i(`div`,g,[s((d(),a(`div`,null,[n(b,{href:`https://poloclub.github.io/ganlab/`,title:`GAN Lab`,blurb:`Kahng et al., Georgia Tech. A GAN training in your browser, with the discriminator's decision surface drawn live. The 2025 deck pointed here and it is still the best thing of its kind.`,icon:`🎮`})])),[[x]]),s((d(),a(`div`,null,[n(b,{href:`https://arxiv.org/abs/1406.2661`,title:`Generative Adversarial Nets`,blurb:`Goodfellow et al., 2014. Nine pages. Everything in this section is in section 3 and the proof of the D* result is four lines.`,icon:`📄`})])),[[x]])]),s((d(),a(`div`,_,[...y[0]||=[i(`p`,null,[i(`strong`,null,`In GAN Lab, watch two things.`),u(` The background shading is `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(` — that is the `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msup`,null,[i(`mi`,null,`D`),i(`mo`,null,`∗`)])]),i(`annotation`,{encoding:`application/x-tex`},`D^*`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6887em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.6887em`}},[i(`span`,{style:{top:`-3.063em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mbin mtight`},`∗`)])])])])])])])])])]),u(` picture from slide 30, live. And the green samples pulling toward the data are the generator following `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(`’s gradient.`)],-1)]])),[[x]]),s((d(),a(`div`,v,[...y[1]||=[i(`p`,null,`Try the "two rings" dataset and wait. It collapses, most times, and that is the next section.`,-1)]])),[[x]])]),_:1},16)}}};export{y as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-C8nzfcA7.js b/lecture-07/assets/md-C8nzfcA7.js new file mode 100644 index 0000000000000000000000000000000000000000..9ec87fe1017e757b7be2181a0a06d639dbdb0369 --- /dev/null +++ b/lecture-07/assets/md-C8nzfcA7.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`dl-tight mt-2`},_={class:`mt-4 dl-callout`},v={__name:`slides.md__slidev_69`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),68))),{default:e(()=>[v[2]||=i(`h1`,null,`What comes with the capability`,-1),i(`div`,g,[n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`Memorisation is measurable.`),u(` These models can be made to reproduce training images, and "it looks different" is not a test`)]),i(`li`,null,[i(`strong`,null,`Provenance is infrastructure now`),u(` — C2PA, watermarking. Both removable`)]),i(`li`,null,[i(`strong`,null,`The asymmetry is the problem.`),u(` Faking is one forward pass; proving something real is an open question`)]),i(`li`,null,[i(`strong`,null,`Say what is synthetic`),u(` — in a paper, a tool, a dataset card`)])],-1)]]),_:1})]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,`The first line is a measurement you run, not an opinion you hold.`,-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-C9jeKeVn.js b/lecture-07/assets/md-C9jeKeVn.js new file mode 100644 index 0000000000000000000000000000000000000000..6d4d1bd39b58f502003c445eaa13db6068065f93 --- /dev/null +++ b/lecture-07/assets/md-C9jeKeVn.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-4 dl-callout`},h={__name:`slides.md__slidev_8`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),7))),{default:e(()=>[h[1]||=r(`h1`,null,`Which loss can you even compute?`,-1),h[2]||=r(`p`,null,`You cannot write down "make it look like real data" and differentiate it. Each family is a different answer to that.`,-1),h[3]||=r(`div`,{class:`dl-ledger mt-3`},[r(`table`,null,[r(`thead`,null,[r(`tr`,null,[r(`th`),r(`th`,null,`the loss it trains on`),r(`th`,null,`what that costs`)])]),r(`tbody`,null,[r(`tr`,null,[r(`td`,null,`autoencoder`),r(`td`,null,[l(`pixel error against `),r(`strong`,null,`its own input`)]),r(`td`,null,`not generative at all`)]),r(`tr`,null,[r(`td`,null,`VAE`),r(`td`,null,[l(`pixel error `),r(`strong`,null,`+ a leash on the latent`)]),r(`td`,null,`blurry`)]),r(`tr`,null,[r(`td`,null,`GAN`),r(`td`,null,[r(`strong`,null,`a second network’s opinion`)]),r(`td`,null,`sharp, and unstable`)]),r(`tr`,null,[r(`td`,null,`diffusion`),r(`td`,null,[l(`pixel error on `),r(`strong`,null,`noise`),l(`, at every level`)]),r(`td`,null,`sharp and stable`)])])])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,`Four rows, one lecture. The last column is the plot.`,-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-COiO5zpQ.js b/lecture-07/assets/md-COiO5zpQ.js new file mode 100644 index 0000000000000000000000000000000000000000..b0e365cbb50a221f5301782b6b914b63172e038e --- /dev/null +++ b/lecture-07/assets/md-COiO5zpQ.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-3 dl-callout`},h={__name:`slides.md__slidev_21`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),20))),{default:e(()=>[h[1]||=r(`h1`,null,`You cannot backpropagate through a sample`,-1),h[2]||=r(`p`,null,[l(`The encoder produces `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`bold-italic`},`μ`),r(`mo`,{separator:`true`},`,`),r(`mi`,{mathvariant:`bold-italic`},`σ`)]),r(`annotation`,{encoding:`application/x-tex`},`\\boldsymbol\\mu, \\boldsymbol\\sigma`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6389em`,"vertical-align":`-0.1944em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord`},[r(`span`,{class:`mord boldsymbol`},`μ`)])]),r(`span`,{class:`mpunct`},`,`),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord`},[r(`span`,{class:`mord boldsymbol`,style:{"margin-right":`0.037em`}},`σ`)])])])])]),l(`; the decoder needs an actual `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`bold`},`z`)]),r(`annotation`,{encoding:`application/x-tex`},`\\mathbf{z}`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),r(`span`,{class:`mord mathbf`},`z`)])])]),l(`. Drawing one is not a differentiable operation.`)],-1),h[3]||=r(`div`,{class:`mt-3 flex justify-center`},[r(`svg`,{viewBox:`0 0 660 132`,class:`dl-diagram`,role:`img`,"aria-label":`Sampling inside the graph blocks the gradient; adding scaled external noise does not`},[r(`defs`,null,[r(`marker`,{id:`rp-arrow`,markerWidth:`7`,markerHeight:`7`,refX:`6`,refY:`3.5`,orient:`auto`},[r(`path`,{class:`dl-dg-head`,d:`M0 0 L7 3.5 L0 7 z`})])]),r(`text`,{class:`dl-dg-small is-bad`,x:`8`,y:`14`},`sampling inside the graph`),r(`rect`,{class:`dl-dg-box`,x:`8`,y:`34`,width:`66`,height:`30`,rx:`4`}),r(`text`,{class:`dl-dg-lab is-sm`,x:`41`,y:`54`,"text-anchor":`middle`},`μ, σ`),r(`rect`,{class:`dl-dg-box is-bad`,x:`122`,y:`34`,width:`72`,height:`30`,rx:`4`}),r(`text`,{class:`dl-dg-lab is-sm`,x:`158`,y:`54`,"text-anchor":`middle`},`sample`),r(`rect`,{class:`dl-dg-box is-accent`,x:`242`,y:`34`,width:`44`,height:`30`,rx:`4`}),r(`text`,{class:`dl-dg-lab is-sm`,x:`264`,y:`54`,"text-anchor":`middle`},`z`),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#rp-arrow)`,d:`M74 49 H118`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#rp-arrow)`,d:`M196 49 H238`}),r(`path`,{class:`dl-dg-grad is-bad`,d:`M264 74 V96 H158 V70`}),r(`text`,{class:`dl-dg-small is-bad`,x:`196`,y:`112`},`gradient stops here`),r(`line`,{class:`dl-dg-split`,x1:`330`,y1:`6`,x2:`330`,y2:`126`}),r(`text`,{class:`dl-dg-small is-good`,x:`356`,y:`14`},`noise as an input`),r(`rect`,{class:`dl-dg-box`,x:`356`,y:`34`,width:`66`,height:`30`,rx:`4`}),r(`text`,{class:`dl-dg-lab is-sm`,x:`389`,y:`54`,"text-anchor":`middle`},`μ, σ`),r(`circle`,{class:`dl-dg-op`,cx:`486`,cy:`49`,r:`15`}),r(`text`,{class:`dl-dg-lab is-sm`,x:`486`,y:`55`,"text-anchor":`middle`},`+`),r(`rect`,{class:`dl-dg-box`,x:`456`,y:`94`,width:`60`,height:`26`,rx:`4`}),r(`text`,{class:`dl-dg-lab is-sm`,x:`486`,y:`112`,"text-anchor":`middle`},`ε`),r(`rect`,{class:`dl-dg-box is-accent`,x:`574`,y:`34`,width:`44`,height:`30`,rx:`4`}),r(`text`,{class:`dl-dg-lab is-sm`,x:`596`,y:`54`,"text-anchor":`middle`},`z`),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#rp-arrow)`,d:`M424 49 H468`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#rp-arrow)`,d:`M486 92 V66`}),r(`path`,{class:`dl-dg-arrow`,"marker-end":`url(#rp-arrow)`,d:`M503 49 H570`}),r(`path`,{class:`dl-dg-grad is-good`,d:`M596 74 V84 H389 V70`})])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`bold`},`z`),r(`mo`,null,`=`),r(`mi`,{mathvariant:`bold-italic`},`μ`),r(`mo`,null,`+`),r(`mi`,{mathvariant:`bold-italic`},`σ`),r(`mo`,null,`⊙`),r(`mi`,{mathvariant:`bold-italic`},`ϵ`)]),r(`annotation`,{encoding:`application/x-tex`},`\\mathbf{z} = \\boldsymbol\\mu + \\boldsymbol\\sigma \\odot \\boldsymbol\\epsilon`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),r(`span`,{class:`mord mathbf`},`z`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`=`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.7778em`,"vertical-align":`-0.1944em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord`},[r(`span`,{class:`mord boldsymbol`},`μ`)])]),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),r(`span`,{class:`mbin`},`+`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6667em`,"vertical-align":`-0.0833em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord`},[r(`span`,{class:`mord boldsymbol`,style:{"margin-right":`0.037em`}},`σ`)])]),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),r(`span`,{class:`mbin`},`⊙`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord`},[r(`span`,{class:`mord boldsymbol`},`ϵ`)])])])])]),l(`, `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mtext`,null,`  `),r(`mi`,{mathvariant:`bold-italic`},`ϵ`),r(`mo`,null,`∼`),r(`mi`,{mathvariant:`script`},`N`),r(`mo`,{stretchy:`false`},`(`),r(`mn`,{mathvariant:`bold`},`0`),r(`mo`,{separator:`true`},`,`),r(`mi`,null,`I`),r(`mo`,{stretchy:`false`},`)`)]),r(`annotation`,{encoding:`application/x-tex`},`\\;\\boldsymbol\\epsilon \\sim \\mathcal{N}(\\mathbf{0}, I)`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord`},[r(`span`,{class:`mord boldsymbol`},`ϵ`)])]),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`∼`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord mathcal`,style:{"margin-right":`0.1474em`}},`N`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathbf`},`0`),r(`span`,{class:`mpunct`},`,`),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0785em`}},`I`),r(`span`,{class:`mclose`},`)`)])])]),l(` — identical distribution, and now `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`bold-italic`},`μ`)]),r(`annotation`,{encoding:`application/x-tex`},`\\boldsymbol\\mu`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6389em`,"vertical-align":`-0.1944em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord`},[r(`span`,{class:`mord boldsymbol`},`μ`)])])])])]),l(` and `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`bold-italic`},`σ`)]),r(`annotation`,{encoding:`application/x-tex`},`\\boldsymbol\\sigma`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord`},[r(`span`,{class:`mord boldsymbol`,style:{"margin-right":`0.037em`}},`σ`)])])])])]),l(` sit on a differentiable path.`)],-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-CTs0jG3T.js b/lecture-07/assets/md-CTs0jG3T.js new file mode 100644 index 0000000000000000000000000000000000000000..1b6d2ec2a5a621c5262481660c6f34c9d1bad396 --- /dev/null +++ b/lecture-07/assets/md-CTs0jG3T.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./slidev/VClicks-C3WADcJq.js";import{t as h}from"./AutoencoderLab-BmCWWAhi.js";import{t as g}from"./interactive-BcxwnYg4.js";var _={class:`mt-2 dl-callout`},v={__name:`slides.md__slidev_15`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=m,x=r(`click`);return d(),c(g,o(t(l(p)(l(T),14))),{aside:e(t=>[v[2]||=i(`p`,null,[u(`Press `),i(`strong`,null,`Decode a fresh z`),u(`, four times. The strip shows every training point’s code.`)],-1),n(b,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[u(`The first two land `),i(`strong`,null,`inside a clump`),u(` and decode to something plausible`)]),i(`li`,null,[u(`The last two land `),i(`strong`,null,`in a gap`),u(` — and decode to a point no data ever occupied`)])],-1)]]),_:1}),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,[u(`The loss asked `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`f`)]),i(`annotation`,{encoding:`application/x-tex`},`f`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1076em`}},`f`)])])]),u(` to be `),i(`strong`,null,`invertible`),u(`. It never asked it to `),i(`strong`,null,`fill`),u(` anything.`)],-1)]])),[[x]])]),default:e(()=>[n(y)]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-CYXxUBJM.css b/lecture-07/assets/md-CYXxUBJM.css new file mode 100644 index 0000000000000000000000000000000000000000..61e9e4648f6d8b40762f4b0525b8efe486b5c232 --- /dev/null +++ b/lecture-07/assets/md-CYXxUBJM.css @@ -0,0 +1 @@ +.dl-title[data-v-dc59a472]{flex-direction:column;justify-content:center;padding-left:4rem;padding-right:4rem;display:flex}.dl-title__eyebrow[data-v-dc59a472]{font-size:var(--dl-fs-secondary);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:.9rem;margin-bottom:1.1rem;display:flex}.dl-title__code[data-v-dc59a472]{color:var(--dl-accent);font-weight:700}.dl-title__lecture[data-v-dc59a472]{color:var(--dl-muted)}.dl-title__body[data-v-dc59a472] h1{font-size:var(--dl-fs-title);margin:0;line-height:1.05}.dl-title__body[data-v-dc59a472] p{font-size:var(--dl-fs-body);color:var(--dl-muted);max-width:34ch;margin-top:.7rem}.dl-title__rule[data-v-dc59a472]{margin:1.6rem 0 1.2rem}.dl-title__meta[data-v-dc59a472]{font-size:var(--dl-fs-secondary);line-height:1.7}.dl-title__author[data-v-dc59a472]{color:var(--dl-heading);font-weight:600}.dl-title__email[data-v-dc59a472]{color:var(--dl-accent)}.dl-title__date[data-v-dc59a472]{color:var(--dl-muted)} diff --git a/lecture-07/assets/md-Cn3jb9pa.js b/lecture-07/assets/md-Cn3jb9pa.js new file mode 100644 index 0000000000000000000000000000000000000000..29cf665a14463305ac3426616ae4a22dea3e1239 --- /dev/null +++ b/lecture-07/assets/md-Cn3jb9pa.js @@ -0,0 +1 @@ +import{$ as e,E as t,_ as n,bt as r,v as i,vt as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{n as s,t as c}from"./slidev/context-DnYiQGy6.js";import{t as l}from"./section-CLxRKQ9Y.js";var u={__name:`slides.md__slidev_51`,setup(u){let{$slidev:d,$nav:f,$clicksContext:p,$clicks:m,$page:h,$renderContext:g,$frontmatter:_}=s();return p.setup(),(s,u)=>(o(),i(l,r(t(a(c)(a(_),50))),{default:e(()=>[...u[0]||=[n(`h1`,null,`What replaced them: diffusion`,-1)]]),_:1},16))}};export{u as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-CoMuAN0N.js b/lecture-07/assets/md-CoMuAN0N.js new file mode 100644 index 0000000000000000000000000000000000000000..e6f1ba8b04450f0a76a9bb661079a048a0be4287 --- /dev/null +++ b/lecture-07/assets/md-CoMuAN0N.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`dl-tight mt-3`},_={class:`mt-5 dl-callout`},v={__name:`slides.md__slidev_4`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),3))),{default:e(()=>[v[2]||=i(`h1`,null,`What last week left you holding`,-1),v[3]||=i(`p`,null,`A language model generates. Nobody calls it a generative model in the lecture that builds it, but that is exactly what it is.`,-1),i(`div`,g,[n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[u(`It defines `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`p`),i(`mo`,{stretchy:`false`},`(`),i(`mtext`,null,`next\xA0token`),i(`mo`,null,`∣`),i(`mtext`,null,`everything\xA0so\xA0far`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`p(\\text{next token} \\mid \\text{everything so far})`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord text`},[i(`span`,{class:`mord`},`next\xA0token`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`∣`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord text`},[i(`span`,{class:`mord`},`everything\xA0so\xA0far`)]),i(`span`,{class:`mclose`},`)`)])])]),u(` — an honest probability distribution`)]),i(`li`,null,[u(`The distribution is a `),i(`strong`,null,`softmax over a vocabulary`),u(`: 50 257 numbers that are positive and sum to one`)]),i(`li`,null,[u(`To generate, you `),i(`strong`,null,`sample`),u(` one, append it, and go again`)])],-1)]]),_:1})]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,[u(`Two things make that work: the output is `),i(`strong`,null,`discrete`),u(`, and the set of possibilities is `),i(`strong`,null,`small enough to list`),u(`.`)],-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Cvuj_RiT2.js b/lecture-07/assets/md-Cvuj_RiT2.js new file mode 100644 index 0000000000000000000000000000000000000000..e0c43db8f7daf28231eb8b00ea67fa01a16b0d97 --- /dev/null +++ b/lecture-07/assets/md-Cvuj_RiT2.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./slidev/VClicks-C3WADcJq.js";import{t as h}from"./interactive-BcxwnYg4.js";import{t as g}from"./AdversarialGame-BC2uRAJk.js";var _={class:`mt-2 dl-callout`},v={__name:`slides.md__slidev_31`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=g,b=m,x=r(`click`);return d(),c(h,o(t(l(p)(l(T),30))),{aside:e(t=>[v[2]||=i(`p`,null,[u(`Write `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`P`)]),i(`annotation`,{encoding:`application/x-tex`},`P`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`)])])]),u(` for `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,null,`p`),i(`mtext`,null,`data`)])]),i(`annotation`,{encoding:`application/x-tex`},`p_{\\text{data}}`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.625em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord text mtight`},[i(`span`,{class:`mord mtight`},`data`)])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])]),u(` and `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`Q`)]),i(`annotation`,{encoding:`application/x-tex`},`Q`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8778em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord mathnormal`},`Q`)])])]),u(` for `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,null,`p`),i(`mi`,null,`g`)])]),i(`annotation`,{encoding:`application/x-tex`},`p_g`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.7167em`,"vertical-align":`-0.2861em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1514em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0359em`}},`g`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2861em`}},[i(`span`)])])])])])])])]),u(`. `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`P`)]),i(`annotation`,{encoding:`application/x-tex`},`P`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`)])])]),u(` is uniform over three modes; `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`Q`)]),i(`annotation`,{encoding:`application/x-tex`},`Q`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8778em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord mathnormal`},`Q`)])])]),u(` over-produces mode 2.`)],-1),n(b,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[u(`Mode 1: `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[i(`mfrac`,null,[i(`mrow`,null,[i(`mn`,null,`1`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`3`)]),i(`mrow`,null,[i(`mn`,null,`1`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`3`),i(`mo`,null,`+`),i(`mn`,null,`1`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`5`)])])]),i(`mo`,null,`=`),i(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[i(`mfrac`,null,[i(`mn`,null,`5`),i(`mn`,null,`8`)])]),i(`mo`,null,`=`),i(`mn`,null,`0.625`)]),i(`annotation`,{encoding:`application/x-tex`},`\\tfrac{1/3}{1/3 + 1/5} = \\tfrac{5}{8} = 0.625`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.53em`,"vertical-align":`-0.52em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mopen nulldelimiter`}),i(`span`,{class:`mfrac`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`1.01em`}},[i(`span`,{style:{top:`-2.655em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`1/3`),i(`span`,{class:`mbin mtight`},`+`),i(`span`,{class:`mord mtight`},`1/5`)])])]),i(`span`,{style:{top:`-3.23em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),i(`span`,{style:{top:`-3.485em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`1/3`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.52em`}},[i(`span`)])])])]),i(`span`,{class:`mclose nulldelimiter`})]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.1901em`,"vertical-align":`-0.345em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mopen nulldelimiter`}),i(`span`,{class:`mfrac`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8451em`}},[i(`span`,{style:{top:`-2.655em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`8`)])])]),i(`span`,{style:{top:`-3.23em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),i(`span`,{style:{top:`-3.394em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`5`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.345em`}},[i(`span`)])])])]),i(`span`,{class:`mclose nulldelimiter`})]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0.625`)])])])]),i(`li`,null,[u(`Mode 2: `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[i(`mfrac`,null,[i(`mrow`,null,[i(`mn`,null,`1`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`3`)]),i(`mrow`,null,[i(`mn`,null,`1`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`3`),i(`mo`,null,`+`),i(`mn`,null,`1`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`2`)])])]),i(`mo`,null,`=`),i(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[i(`mfrac`,null,[i(`mn`,null,`2`),i(`mn`,null,`5`)])]),i(`mo`,null,`=`),i(`mn`,null,`0.400`)]),i(`annotation`,{encoding:`application/x-tex`},`\\tfrac{1/3}{1/3 + 1/2} = \\tfrac{2}{5} = 0.400`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.53em`,"vertical-align":`-0.52em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mopen nulldelimiter`}),i(`span`,{class:`mfrac`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`1.01em`}},[i(`span`,{style:{top:`-2.655em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`1/3`),i(`span`,{class:`mbin mtight`},`+`),i(`span`,{class:`mord mtight`},`1/2`)])])]),i(`span`,{style:{top:`-3.23em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),i(`span`,{style:{top:`-3.485em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`1/3`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.52em`}},[i(`span`)])])])]),i(`span`,{class:`mclose nulldelimiter`})]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.1901em`,"vertical-align":`-0.345em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mopen nulldelimiter`}),i(`span`,{class:`mfrac`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8451em`}},[i(`span`,{style:{top:`-2.655em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`5`)])])]),i(`span`,{style:{top:`-3.23em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),i(`span`,{style:{top:`-3.394em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`2`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.345em`}},[i(`span`)])])])]),i(`span`,{class:`mclose nulldelimiter`})]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0.400`)])])])]),i(`li`,null,[u(`Mode 3: `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[i(`mfrac`,null,[i(`mrow`,null,[i(`mn`,null,`1`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`3`)]),i(`mrow`,null,[i(`mn`,null,`1`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`3`),i(`mo`,null,`+`),i(`mn`,null,`3`),i(`mi`,{mathvariant:`normal`},`/`),i(`mn`,null,`10`)])])]),i(`mo`,null,`=`),i(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[i(`mfrac`,null,[i(`mn`,null,`10`),i(`mn`,null,`19`)])]),i(`mo`,null,`=`),i(`mn`,null,`0.526`)]),i(`annotation`,{encoding:`application/x-tex`},`\\tfrac{1/3}{1/3 + 3/10} = \\tfrac{10}{19} = 0.526`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.53em`,"vertical-align":`-0.52em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mopen nulldelimiter`}),i(`span`,{class:`mfrac`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`1.01em`}},[i(`span`,{style:{top:`-2.655em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`1/3`),i(`span`,{class:`mbin mtight`},`+`),i(`span`,{class:`mord mtight`},`3/10`)])])]),i(`span`,{style:{top:`-3.23em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),i(`span`,{style:{top:`-3.485em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`1/3`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.52em`}},[i(`span`)])])])]),i(`span`,{class:`mclose nulldelimiter`})]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.1901em`,"vertical-align":`-0.345em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mopen nulldelimiter`}),i(`span`,{class:`mfrac`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8451em`}},[i(`span`,{style:{top:`-2.655em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`19`)])])]),i(`span`,{style:{top:`-3.23em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),i(`span`,{style:{top:`-3.394em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`10`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.345em`}},[i(`span`)])])])]),i(`span`,{class:`mclose nulldelimiter`})]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0.526`)])])])])],-1)]]),_:1}),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,`Under 0.5 exactly where the generator is over-producing.`,-1)]])),[[x]])]),default:e(()=>[n(y,{"discriminator-only":``})]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Cw50yTfR.js b/lecture-07/assets/md-Cw50yTfR.js new file mode 100644 index 0000000000000000000000000000000000000000..3896fddd9e9b9dc353c5feedfbdc49918b0981fb --- /dev/null +++ b/lecture-07/assets/md-Cw50yTfR.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";var _={class:`dl-tight mt-3`},v={class:`mt-3 dl-callout`},y={class:`mt-2`},b={__name:`slides.md__slidev_47`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=h,S=g,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),46))),{default:e(()=>[b[2]||=i(`h1`,null,`Wasserstein, and what came after`,-1),b[3]||=i(`p`,null,`Swap the divergence. Keep everything else.`,-1),i(`div`,_,[n(x,null,{default:e(()=>[...b[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`WGAN`),u(` (2017) — a `),i(`em`,null,`critic`),u(` returning a real number, no sigmoid. Its loss estimates earth-mover distance`)]),i(`li`,null,[u(`The critic must be `),i(`strong`,null,`Lipschitz`),u(`-bounded or the estimate is meaningless`)]),i(`li`,null,[i(`strong`,null,`WGAN-GP`),u(` enforces that with a gradient penalty. This is the one people use`)]),i(`li`,null,[i(`strong`,null,`Spectral normalisation`),u(` does it per layer — cheaper, and now the default`)])],-1)]]),_:1})]),s((d(),a(`div`,v,[...b[1]||=[i(`p`,null,[u(`And the critic’s loss finally `),i(`strong`,null,`correlates with sample quality`),u(`, so for the first time the training curve means something.`)],-1)]])),[[C]]),i(`div`,y,[n(S,{source:`Arjovsky, Chintala & Bottou, Wasserstein GAN (2017)`,url:`https://arxiv.org/abs/1701.07875`})])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-CyZorWsj.js b/lecture-07/assets/md-CyZorWsj.js new file mode 100644 index 0000000000000000000000000000000000000000..26ca659ff5cd616ef635514d4cf93cee68bf8a93 --- /dev/null +++ b/lecture-07/assets/md-CyZorWsj.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`dl-tight mt-4`},_={class:`mt-3 dl-callout`},v={__name:`slides.md__slidev_6`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),5))),{default:e(()=>[v[2]||=i(`h1`,null,`Two kinds of model`,-1),v[3]||=i(`div`,{class:`dl-ledger mt-2`},[i(`table`,null,[i(`thead`,null,[i(`tr`,null,[i(`th`),i(`th`,null,`learns`),i(`th`,null,`asks`),i(`th`,null,`what you get`)])]),i(`tbody`,null,[i(`tr`,null,[i(`td`,null,[i(`strong`,null,`discriminative`)]),i(`td`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`p`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,null,`y`),i(`mo`,null,`∣`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`p(y \\mid \\mathbf{x})`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`y`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`∣`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`)])])])]),i(`td`,null,[i(`em`,null,`given this, which class?`)]),i(`td`,null,`a label, a box, a mask`)]),i(`tr`,null,[i(`td`,null,[i(`strong`,null,`generative`)]),i(`td`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`p`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`p(\\mathbf{x})`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`)])])])]),i(`td`,null,[i(`em`,null,`what does data look like at all?`)]),i(`td`,null,`new examples`)])])])],-1),i(`div`,g,[n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,`Weeks 1–5 were all the top row. The classifier never has to know what a cat looks like, only what separates cats from dogs`),i(`li`,null,[u(`The bottom row is strictly harder: a boundary can ignore everything either side of it, a `),i(`strong`,null,`density cannot`)])],-1)]]),_:1})]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,`A discriminative model can be right about a picture it could never have imagined.`,-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DDm_qmaS2.js b/lecture-07/assets/md-DDm_qmaS2.js new file mode 100644 index 0000000000000000000000000000000000000000..98000c8e163ffc20e313230849795f52a5da94ed --- /dev/null +++ b/lecture-07/assets/md-DDm_qmaS2.js @@ -0,0 +1,14 @@ +import{$ as e,E as t,M as n,S as r,W as i,_ as a,b as o,bt as s,et as c,v as l,vt as u,x as d,z as f}from"./modules/shiki-CkJq9tSf.js";import{n as p,t as m}from"./slidev/context-DnYiQGy6.js";import{t as h}from"./default-Bp68E4h0.js";import{t as g}from"./slidev/CodeBlockWrapper-DfjXYRxv.js";var _={class:`mt-2 dl-secondary`},v={__name:`slides.md__slidev_24`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=p();return x.setup(),(p,v)=>{let y=g,b=i(`click`);return f(),l(h,s(t(u(m)(u(T),23))),{default:e(()=>[v[2]||=a(`h1`,null,`A VAE in PyTorch`,-1),r(y,n({lines:!0},{title:``,ranges:[`all`,`2-4`,`6-8`,`11-13`,`all`]}),{default:e(()=>[...v[0]||=[a(`pre`,{class:`shiki shiki-themes vitesse-dark vitesse-light slidev-code`,style:{"--shiki-dark":`#dbd7caee`,"--shiki-light":`#393a34`,"--shiki-dark-bg":`#121212`,"--shiki-light-bg":`#ffffff`}},[a(`code`,{class:`language-python`},[a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},`def`),a(`span`,{style:{"--shiki-dark":`#80A665`,"--shiki-light":`#59873A`}},` forward`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`self`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` x`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`):`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` h `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#C99076`,"--shiki-light":`#A65E2B`}},` self`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`enc`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`x`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # (B, 784) → (B, 256)`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` mu `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#C99076`,"--shiki-light":`#A65E2B`}},` self`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`fc_mu`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`h`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # (B, 2)`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` logvar `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#C99076`,"--shiki-light":`#A65E2B`}},` self`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`fc_logvar`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`h`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # (B, 2) — log, so σ > 0 free`)]),d(` +`),a(`span`,{class:`line`}),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` std `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},` (`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0.5`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` *`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` logvar`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`).`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`exp`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # σ`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` eps `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` torch`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`randn_like`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`std`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # the noise, as an INPUT`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` z `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` mu `),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},`+`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` std `),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},`*`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` eps `),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},`# reparameterised`)]),d(` +`),a(`span`,{class:`line`}),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#4D9375`,"--shiki-light":`#1E754F`}},` return`),a(`span`,{style:{"--shiki-dark":`#C99076`,"--shiki-light":`#A65E2B`}},` self`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`dec`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`z`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` mu`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` logvar`)]),d(` +`),a(`span`,{class:`line`}),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`recon`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` mu`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` logvar `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` model`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`x`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`kl `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` -`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0.5`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` *`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},` (`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`1`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` +`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` logvar `),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},`-`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` mu`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`pow`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`2`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` -`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` logvar`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`exp`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()).`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`sum`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`1`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`).`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`mean`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`loss `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` F`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`mse_loss`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`recon`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` x`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#BD976A`,"--shiki-light":`#B07D48`}},` reduction`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#C98A7D77`,"--shiki-light":`#B5695977`}},`'`),a(`span`,{style:{"--shiki-dark":`#C98A7D`,"--shiki-light":`#B56959`}},`sum`),a(`span`,{style:{"--shiki-dark":`#C98A7D77`,"--shiki-light":`#B5695977`}},`'`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` /`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` x`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`size`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` +`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` beta `),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},`*`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` kl`)])])],-1)]]),_:1},16),c((f(),o(`div`,_,[...v[1]||=[a(`p`,null,[d(`Line 4 predicts `),a(`span`,{class:`katex`},[a(`span`,{class:`katex-mathml`},[a(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[a(`semantics`,null,[a(`mrow`,null,[a(`mi`,null,`log`),a(`mo`,null,`⁡`),a(`msup`,null,[a(`mi`,null,`σ`),a(`mn`,null,`2`)])]),a(`annotation`,{encoding:`application/x-tex`},`\\log \\sigma^2`)])])]),a(`span`,{class:`katex-html`,"aria-hidden":`true`},[a(`span`,{class:`katex-base`},[a(`span`,{class:`katex-strut`,style:{height:`1.0085em`,"vertical-align":`-0.1944em`}}),a(`span`,{class:`mop`},[d(`lo`),a(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),a(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),a(`span`,{class:`mord`},[a(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`σ`),a(`span`,{class:`msupsub`},[a(`span`,{class:`vlist-t`},[a(`span`,{class:`vlist-r`},[a(`span`,{class:`vlist`,style:{height:`0.8141em`}},[a(`span`,{style:{top:`-3.063em`,"margin-right":`0.05em`}},[a(`span`,{class:`pstrut`,style:{height:`2.7em`}}),a(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[a(`span`,{class:`mord mtight`},`2`)])])])])])])])])])]),d(`, not `),a(`span`,{class:`katex`},[a(`span`,{class:`katex-mathml`},[a(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[a(`semantics`,null,[a(`mrow`,null,[a(`mi`,null,`σ`)]),a(`annotation`,{encoding:`application/x-tex`},`\\sigma`)])])]),a(`span`,{class:`katex-html`,"aria-hidden":`true`},[a(`span`,{class:`katex-base`},[a(`span`,{class:`katex-strut`,style:{height:`0.4306em`}}),a(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`σ`)])])]),d(`: it can come out negative and `),a(`code`,null,`.exp()`),d(` still gives a positive standard deviation, with no clamp needed.`)],-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DE2QGCpb.css b/lecture-07/assets/md-DE2QGCpb.css new file mode 100644 index 0000000000000000000000000000000000000000..5cc79e1fa351b99f8fdea52a83ab73fdc12822e1 --- /dev/null +++ b/lecture-07/assets/md-DE2QGCpb.css @@ -0,0 +1 @@ +.dl-end[data-v-f8d31aa3]{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1.2rem;display:flex}.dl-end__body[data-v-f8d31aa3] h1{font-size:var(--dl-fs-section);margin:0}.dl-end__meta[data-v-f8d31aa3]{font-size:var(--dl-fs-secondary);color:var(--dl-muted);gap:1.4rem;display:flex} diff --git a/lecture-07/assets/md-DFt8Fkb-.js b/lecture-07/assets/md-DFt8Fkb-.js new file mode 100644 index 0000000000000000000000000000000000000000..1c3f68b0fb801fd9586a4bbc509e6e7cdf086604 --- /dev/null +++ b/lecture-07/assets/md-DFt8Fkb-.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-4 dl-callout`},h={__name:`slides.md__slidev_29`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),28))),{default:e(()=>[h[1]||=r(`h1`,null,`Freeze one, look at the other`,-1),h[2]||=r(`div`,{class:`dl-ledger mt-3`},[r(`table`,null,[r(`thead`,null,[r(`tr`,null,[r(`th`),r(`th`,null,[l(`freeze `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`G`)]),r(`annotation`,{encoding:`application/x-tex`},`G`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`},`G`)])])]),l(`, train `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`)]),r(`annotation`,{encoding:`application/x-tex`},`D`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])])]),r(`th`,null,[l(`freeze `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`)]),r(`annotation`,{encoding:`application/x-tex`},`D`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),l(`, train `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`G`)]),r(`annotation`,{encoding:`application/x-tex`},`G`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`},`G`)])])])])])]),r(`tbody`,null,[r(`tr`,null,[r(`td`,null,`the other one is`),r(`td`,null,`a second dataset of fakes`),r(`td`,null,`a fixed, differentiable loss`)]),r(`tr`,null,[r(`td`,null,`the task is`),r(`td`,null,`binary classification`),r(`td`,null,[l(`make `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`)]),r(`annotation`,{encoding:`application/x-tex`},`D`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),l(` say `),r(`em`,null,`real`)])]),r(`tr`,null,[r(`td`,null,[l(`it does to `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`V`)]),r(`annotation`,{encoding:`application/x-tex`},`V`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`)])])])]),r(`td`,null,[r(`strong`,null,`maximise`)]),r(`td`,null,[r(`strong`,null,`minimise`)])]),r(`tr`,null,[r(`td`,null,`which term matters`),r(`td`,null,`both`),r(`td`,null,`the second only`)]),r(`tr`,null,[r(`td`,null,`gradients`),r(`td`,null,[l(`into `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`)]),r(`annotation`,{encoding:`application/x-tex`},`D`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])])]),r(`td`,null,[l(`through `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`D`)]),r(`annotation`,{encoding:`application/x-tex`},`D`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),l(`, into `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`G`)]),r(`annotation`,{encoding:`application/x-tex`},`G`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`},`G`)])])])])])])])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,`Two ordinary supervised problems, alternated. That is all a training loop is.`,-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DHWj4zwl.js b/lecture-07/assets/md-DHWj4zwl.js new file mode 100644 index 0000000000000000000000000000000000000000..e9661a792c4ee3d34224790c801298664a784786 --- /dev/null +++ b/lecture-07/assets/md-DHWj4zwl.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./Citation-BuY_RPc0.js";var g={class:`mt-3 dl-callout`},_={class:`mt-3`},v={__name:`slides.md__slidev_40`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),39))),{default:e(()=>[v[1]||=i(`h1`,null,`DCGAN — a CNN, run backwards`,-1),v[2]||=i(`p`,null,`Week 4 built a network that turns a big image into a small vector. The generator needs the opposite.`,-1),v[3]||=i(`div`,{class:`dl-ledger mt-3`},[i(`table`,null,[i(`thead`,null,[i(`tr`,null,[i(`th`),i(`th`,null,`discriminator`),i(`th`,null,`generator`)])]),i(`tbody`,null,[i(`tr`,null,[i(`td`,null,`direction`),i(`td`,null,[u(`image `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mo`,null,`→`)]),i(`annotation`,{encoding:`application/x-tex`},`\\to`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.3669em`}}),i(`span`,{class:`mrel`},`→`)])])]),u(` one number`)]),i(`td`,null,[u(`vector `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mo`,null,`→`)]),i(`annotation`,{encoding:`application/x-tex`},`\\to`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.3669em`}}),i(`span`,{class:`mrel`},`→`)])])]),u(` image`)])]),i(`tr`,null,[i(`td`,null,`layer`),i(`td`,null,`strided convolution`),i(`td`,null,[i(`strong`,null,`transposed`),u(` convolution`)])]),i(`tr`,null,[i(`td`,null,`spatial size`),i(`td`,null,`halves each block`),i(`td`,null,`doubles each block`)]),i(`tr`,null,[i(`td`,null,`activation`),i(`td`,null,`LeakyReLU`),i(`td`,null,[u(`ReLU, then `),i(`code`,null,`tanh`),u(` out`)])])])])],-1),s((d(),a(`div`,g,[...v[0]||=[i(`p`,null,[u(`No pooling in either. Down is a stride, up is a transposed convolution — both `),i(`strong`,null,`learned`),u(`.`)],-1)]])),[[b]]),i(`div`,_,[n(y,{source:`Radford, Metz & Chintala, Unsupervised Representation Learning with Deep Convolutional GANs (2015)`,url:`https://arxiv.org/abs/1511.06434`})])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DLLIksG72.js b/lecture-07/assets/md-DLLIksG72.js new file mode 100644 index 0000000000000000000000000000000000000000..a738e2f28bc225634c0eb95f537f093ba2c39ec8 --- /dev/null +++ b/lecture-07/assets/md-DLLIksG72.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./PollSlide-Dmx53yj1.js";var g={class:`mt-6 dl-reveal`},_={class:`mt-2 dl-secondary`},v={__name:`slides.md__slidev_9`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),8))),{default:e(()=>[n(y,{question:`Which of these can tell you the probability it assigns to a picture you hand it?`,items:[`A GAN`,`A VAE`,`A diffusion model`,`A language model, for text`]}),s((d(),a(`div`,g,[...v[0]||=[i(`p`,null,`Only the last one, exactly`,-1)]])),[[b]]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,[u(`A GAN has no likelihood at all. A VAE and a diffusion model give a `),i(`strong`,null,`lower bound`),u(` on it, not the number. Sampling and scoring are separate abilities, and most of these models only have the first.`)],-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DOVS_NHz.js b/lecture-07/assets/md-DOVS_NHz.js new file mode 100644 index 0000000000000000000000000000000000000000..68915f6ee34b58ef4874fa8697e78d133bbb950d --- /dev/null +++ b/lecture-07/assets/md-DOVS_NHz.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./slidev/KaTexBlockWrapper-CzyNOCHB.js";var _={class:`dl-tight mt-4`},v={class:`mt-4 dl-callout`},y={class:`mt-2 dl-secondary`},b={__name:`slides.md__slidev_28`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=g,S=h,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),27))),{default:e(()=>[b[4]||=i(`h1`,null,`The value function`,-1),n(x,{ranges:[]},{default:e(()=>[...b[0]||=[i(`p`,null,[i(`span`,{class:`katex-display`},[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`V`),i(`mo`,{stretchy:`false`},`(`),i(`msup`,null,[i(`mi`,null,`θ`),i(`mrow`,null,[i(`mo`,{stretchy:`false`},`(`),i(`mi`,null,`D`),i(`mo`,{stretchy:`false`},`)`)])]),i(`mo`,{separator:`true`},`,`),i(`msup`,null,[i(`mi`,null,`θ`),i(`mrow`,null,[i(`mo`,{stretchy:`false`},`(`),i(`mi`,null,`G`),i(`mo`,{stretchy:`false`},`)`)])]),i(`mo`,{stretchy:`false`},`)`),i(`mtext`,null,`  `),i(`mo`,null,`=`),i(`mtext`,null,`  `),i(`msub`,null,[i(`mi`,{mathvariant:`double-struck`},`E`),i(`mrow`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,null,`∼`),i(`msub`,null,[i(`mi`,null,`p`),i(`mtext`,null,`data`)])])]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`[`),i(`mi`,null,`log`),i(`mo`,null,`⁡`),i(`mi`,null,`D`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`]`),i(`mtext`,null,`  `),i(`mo`,null,`+`),i(`mtext`,null,`  `),i(`msub`,null,[i(`mi`,{mathvariant:`double-struck`},`E`),i(`mrow`,null,[i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,null,`∼`),i(`msub`,null,[i(`mi`,null,`p`),i(`mi`,{mathvariant:`bold`},`z`)])])]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`[`),i(`mi`,null,`log`),i(`mo`,null,`⁡`),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`(`),i(`mn`,null,`1`),i(`mo`,null,`−`),i(`mi`,null,`D`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,null,`G`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`)`),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`]`)]),i(`annotation`,{encoding:`application/x-tex`},`V(\\theta^{(D)}, \\theta^{(G)}) \\;=\\; \\mathbb{E}_{\\mathbf{x} \\sim p_{\\text{data}}}\\big[\\log D(\\mathbf{x})\\big] \\;+\\; \\mathbb{E}_{\\mathbf{z} \\sim p_{\\mathbf{z}}}\\big[\\log\\big(1 - D(G(\\mathbf{z}))\\big)\\big] `)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.188em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`θ`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.938em`}},[i(`span`,{style:{top:`-3.113em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mopen mtight`},`(`),i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mclose mtight`},`)`)])])])])])])])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`θ`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.938em`}},[i(`span`,{style:{top:`-3.113em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mopen mtight`},`(`),i(`span`,{class:`mord mathnormal mtight`},`G`),i(`span`,{class:`mclose mtight`},`)`)])])])])])])])]),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.2em`,"vertical-align":`-0.35em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbb`},`E`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1611em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mathbf mtight`},`x`),i(`span`,{class:`mrel mtight`},`∼`),i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mathnormal mtight`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3448em`}},[i(`span`,{style:{top:`-2.3488em`,"margin-left":`0em`,"margin-right":`0.0714em`}},[i(`span`,{class:`pstrut`,style:{height:`2.5em`}}),i(`span`,{class:`katex-sizing reset-size3 size1 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord text mtight`},[i(`span`,{class:`mord mtight`},`data`)])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1512em`}},[i(`span`)])])])])])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2861em`}},[i(`span`)])])])])]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`[`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mop`},[u(`lo`),i(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`]`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`+`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.2em`,"vertical-align":`-0.35em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbb`},`E`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1611em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mathbf mtight`},`z`),i(`span`,{class:`mrel mtight`},`∼`),i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mathnormal mtight`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1745em`}},[i(`span`,{style:{top:`-2.357em`,"margin-left":`0em`,"margin-right":`0.0714em`}},[i(`span`,{class:`pstrut`,style:{height:`2.5em`}}),i(`span`,{class:`katex-sizing reset-size3 size1 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mathbf mtight`},`z`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.143em`}},[i(`span`)])])])])])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2861em`}},[i(`span`)])])])])]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`[`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mop`},[u(`lo`),i(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`(`)]),i(`span`,{class:`mord`},`1`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.2em`,"vertical-align":`-0.35em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathnormal`},`G`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`z`),i(`span`,{class:`mclose`},`))`),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`)`)]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`]`)])])])])])],-1)]]),_:1}),i(`div`,_,[n(S,null,{default:e(()=>[...b[1]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`First term`),u(` — D’s score on real data. Large when `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,null,`→`),i(`mn`,null,`1`)]),i(`annotation`,{encoding:`application/x-tex`},`D(\\mathbf{x}) \\to 1`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`→`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`1`)])])])]),i(`li`,null,[i(`strong`,null,`Second term`),u(` — D’s score on fakes. Large when `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,null,`G`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,null,`→`),i(`mn`,null,`0`)]),i(`annotation`,{encoding:`application/x-tex`},`D(G(\\mathbf{z})) \\to 0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathnormal`},`G`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`z`),i(`span`,{class:`mclose`},`))`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`→`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0`)])])])]),i(`li`,null,[u(`So `),i(`strong`,null,[u(`D wants `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`V`)]),i(`annotation`,{encoding:`application/x-tex`},`V`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`)])])]),u(` big`)]),u(`. Both terms are exactly binary cross-entropy`)])],-1)]]),_:1})]),s((d(),a(`div`,v,[n(x,{ranges:[]},{default:e(()=>[...b[2]||=[i(`p`,null,[i(`span`,{class:`katex-display`},[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`},[i(`semantics`,null,[i(`mrow`,null,[i(`munder`,null,[i(`mrow`,null,[i(`mi`,null,`min`),i(`mo`,null,`⁡`)]),i(`mi`,null,`G`)]),i(`munder`,null,[i(`mrow`,null,[i(`mi`,null,`max`),i(`mo`,null,`⁡`)]),i(`mi`,null,`D`)]),i(`mtext`,null,`  `),i(`mi`,null,`V`),i(`mo`,{stretchy:`false`},`(`),i(`msup`,null,[i(`mi`,null,`θ`),i(`mrow`,null,[i(`mo`,{stretchy:`false`},`(`),i(`mi`,null,`D`),i(`mo`,{stretchy:`false`},`)`)])]),i(`mo`,{separator:`true`},`,`),i(`msup`,null,[i(`mi`,null,`θ`),i(`mrow`,null,[i(`mo`,{stretchy:`false`},`(`),i(`mi`,null,`G`),i(`mo`,{stretchy:`false`},`)`)])]),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\min_G \\max_D \\; V(\\theta^{(D)}, \\theta^{(G)})`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.6823em`,"vertical-align":`-0.7443em`}}),i(`span`,{class:`mop op-limits`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.6679em`}},[i(`span`,{style:{top:`-2.3557em`,"margin-left":`0em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`G`)])]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,null,[i(`span`,{class:`mop`},`min`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.7443em`}},[i(`span`)])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mop op-limits`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.4306em`}},[i(`span`,{style:{top:`-2.3557em`,"margin-left":`0em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`D`)])]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,null,[i(`span`,{class:`mop`},`max`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.7443em`}},[i(`span`)])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`θ`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.938em`}},[i(`span`,{style:{top:`-3.113em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mopen mtight`},`(`),i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mclose mtight`},`)`)])])])])])])])]),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`θ`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.938em`}},[i(`span`,{style:{top:`-3.113em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mopen mtight`},`(`),i(`span`,{class:`mord mathnormal mtight`},`G`),i(`span`,{class:`mclose mtight`},`)`)])])])])])])])]),i(`span`,{class:`mclose`},`)`)])])])])],-1)]]),_:1})])),[[C]]),s((d(),a(`div`,y,[...b[3]||=[i(`p`,null,[u(`One objective, two players, opposite signs. Nobody is minimising a loss here — they are looking for a `),i(`strong`,null,`saddle point`),u(`.`)],-1)]])),[[C]])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DOwcMoZw.js b/lecture-07/assets/md-DOwcMoZw.js new file mode 100644 index 0000000000000000000000000000000000000000..16aec68c30acd7dfd2f39ce44cabf1f1b66ab666 --- /dev/null +++ b/lecture-07/assets/md-DOwcMoZw.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";var _={class:`grid grid-cols-2 gap-10 mt-3 dl-tight`},v={class:`mt-4 dl-callout`},y={class:`mt-3`},b={__name:`slides.md__slidev_42`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=h,S=g,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),41))),{default:e(()=>[b[5]||=i(`h1`,null,`The checkerboard, and what to do instead`,-1),i(`div`,_,[i(`div`,null,[b[1]||=i(`h3`,null,`Why it happens`,-1),n(x,null,{default:e(()=>[...b[0]||=[i(`ul`,null,[i(`li`,null,[u(`Cells get `),i(`strong`,null,`uneven numbers`),u(` of taps whenever `),i(`code`,null,`stride`),u(` does not divide `),i(`code`,null,`kernel`)]),i(`li`,null,`The pattern is periodic, so it reads as a grid`),i(`li`,null,`It is there at initialisation, before any training`)],-1)]]),_:1})]),i(`div`,null,[b[3]||=i(`h3`,null,`Two fixes`,-1),n(x,null,{default:e(()=>[...b[2]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`Make stride divide kernel.`),u(` 4 with stride 2 is DCGAN’s choice, and it is even`)]),i(`li`,null,[i(`strong`,null,`Upsample, then convolve`),u(` — a resize, then an ordinary `),i(`code`,null,`Conv2d`),u(`. What modern code does, and what section 05’s U-Net does`)])],-1)]]),_:1})])]),s((d(),a(`div`,v,[...b[4]||=[i(`p`,null,`An artefact you can predict from arithmetic is one you can design out.`,-1)]])),[[C]]),i(`div`,y,[n(S,{source:`Odena, Dumoulin & Olah, Deconvolution and Checkerboard Artifacts, Distill (2016)`,url:`https://distill.pub/2016/deconv-checkerboard/`})])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DPMtzxVq.js b/lecture-07/assets/md-DPMtzxVq.js new file mode 100644 index 0000000000000000000000000000000000000000..05716ccf838a6e3ce8b805f63cca22a1e4f3aefe --- /dev/null +++ b/lecture-07/assets/md-DPMtzxVq.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";var _={class:`dl-tight mt-3`},v={class:`mt-4 dl-callout`},y={class:`mt-3`},b={__name:`slides.md__slidev_63`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=h,S=g,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),62))),{default:e(()=>[b[2]||=i(`h1`,null,`What actually gets trained in 2026`,-1),b[3]||=i(`p`,null,`Diffusion’s thousand-step chain was never essential. The current framing is simpler.`,-1),i(`div`,_,[n(x,null,{default:e(()=>[...b[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`Flow matching`),u(` — regress a velocity field that carries noise to data along a path `),i(`em`,null,`you`),u(` choose. Same shape of loss, no chain`)]),i(`li`,null,[i(`strong`,null,`Rectified flow`),u(` — choose the `),i(`em`,null,`straight`),u(` path, `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mi`,null,`t`)]),i(`mo`,null,`=`),i(`mo`,{stretchy:`false`},`(`),i(`mn`,null,`1`),i(`mo`,null,`−`),i(`mi`,null,`t`),i(`mo`,{stretchy:`false`},`)`),i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mn`,null,`0`)]),i(`mo`,null,`+`),i(`mi`,null,`t`),i(`mi`,{mathvariant:`bold-italic`},`ϵ`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathbf{x}_t = (1-t)\\mathbf{x}_0 + t\\boldsymbol\\epsilon`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.5944em`,"vertical-align":`-0.15em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},`1`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3011em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},`0`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`+`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])])])])]),u(`, and few steps are needed`)]),i(`li`,null,`Diffusion is one particular choice of path in this family`)],-1)]]),_:1})]),s((d(),a(`div`,v,[...b[1]||=[i(`p`,null,`Stable Diffusion 3 and Flux are rectified-flow transformers. The objective on slide 55 is still, recognisably, the objective.`,-1)]])),[[C]]),i(`div`,y,[n(S,{source:`Lipman, Chen, Ben-Hamu, Nickel & Le, Flow Matching for Generative Modeling (2022)`,url:`https://arxiv.org/abs/2210.02747`})])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DQlueVD9.css b/lecture-07/assets/md-DQlueVD9.css new file mode 100644 index 0000000000000000000000000000000000000000..1109f7902b9173b9330cd1f55d000f7887f9ac00 --- /dev/null +++ b/lecture-07/assets/md-DQlueVD9.css @@ -0,0 +1 @@ +.dl-tc[data-v-04b43cc2]{width:100%;height:100%;max-height:14rem;font-family:inherit}.dl-tc__cap[data-v-04b43cc2]{fill:var(--dl-body);font-size:10.5px;font-weight:600}.dl-tc__in[data-v-04b43cc2]{fill:var(--dl-accent)}.dl-tc__spread[data-v-04b43cc2]{fill:var(--dl-border)}.dl-tc__spread.is-live[data-v-04b43cc2]{fill:var(--dl-accent)}.dl-tc__out[data-v-04b43cc2]{fill:var(--dl-accent-strong)}.dl-tc__arrow[data-v-04b43cc2]{fill:var(--dl-muted);font-size:17px}.dl-tc__sub[data-v-04b43cc2]{fill:var(--dl-muted);font-size:9px}.dl-tc__formula[data-v-04b43cc2]{fill:var(--dl-heading);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600} diff --git a/lecture-07/assets/md-DUV80Lpm.js b/lecture-07/assets/md-DUV80Lpm.js new file mode 100644 index 0000000000000000000000000000000000000000..05f883c7549ff076e502e326cc4d2df3bd884421 --- /dev/null +++ b/lecture-07/assets/md-DUV80Lpm.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`dl-tight mt-3`},_={class:`mt-3 dl-callout`},v={__name:`slides.md__slidev_58`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),57))),{default:e(()=>[v[2]||=i(`h1`,null,`The cost is at the other end`,-1),v[3]||=i(`p`,null,[u(`GANs are one forward pass per sample. Diffusion is `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`T`)]),i(`annotation`,{encoding:`application/x-tex`},`T`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`T`)])])]),u(` of them.`)],-1),v[4]||=i(`div`,{class:`dl-ledger mt-3`},[i(`table`,null,[i(`thead`,null,[i(`tr`,null,[i(`th`),i(`th`,null,`forward passes to make one sample`)])]),i(`tbody`,null,[i(`tr`,null,[i(`td`,null,`GAN`),i(`td`,null,[i(`strong`,null,`1`)])]),i(`tr`,null,[i(`td`,null,`DDPM, as published (2020)`),i(`td`,null,`1000`)]),i(`tr`,null,[i(`td`,null,`DDIM, deterministic sampler`),i(`td`,null,`20–50`)]),i(`tr`,null,[i(`td`,null,`Distilled or consistency models`),i(`td`,null,[i(`strong`,null,`1–4`)])])])])],-1),i(`div`,g,[n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`DDIM`),u(` drops the per-step noise and takes bigger strides. Same trained model, a fiftieth of the work`)]),i(`li`,null,[i(`strong`,null,`Distillation`),u(` trains a student to take in one step what the teacher took many to do`)])],-1)]]),_:1})]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,`Sampling cost turned out to be an engineering problem. Training stability did not.`,-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DYpBtpdH.js b/lecture-07/assets/md-DYpBtpdH.js new file mode 100644 index 0000000000000000000000000000000000000000..09efa6620cec0822ed2ca78cd17e6c21b003b2ab --- /dev/null +++ b/lecture-07/assets/md-DYpBtpdH.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Citation-BuY_RPc0.js";var _={class:`grid grid-cols-2 gap-10 mt-3 dl-tight`},v={class:`mt-3 dl-callout`},y={class:`mt-2`},b={__name:`slides.md__slidev_62`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=h,S=g,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),61))),{default:e(()=>[b[5]||=i(`h1`,null,`What the denoiser is made of`,-1),b[6]||=i(`p`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`bold-italic`},`ϵ`),i(`mi`,null,`θ`)])]),i(`annotation`,{encoding:`application/x-tex`},`\\boldsymbol\\epsilon_\\theta`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.5944em`,"vertical-align":`-0.15em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord boldsymbol`},`ϵ`)])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0278em`}},`θ`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])]),u(` takes an image and returns one. Two popular choices.`)],-1),i(`div`,_,[i(`div`,null,[b[1]||=i(`h3`,null,`U-Net — 2015, and still fine`,-1),n(x,null,{default:e(()=>[...b[0]||=[i(`ul`,null,[i(`li`,null,[u(`Encoder down, decoder up, `),i(`strong`,null,`skips`),u(` across`)]),i(`li`,null,`The skips keep detail a bottleneck loses`),i(`li`,null,`Upsample-then-convolve`)],-1)]]),_:1})]),i(`div`,null,[b[3]||=i(`h3`,null,`DiT — a transformer instead`,-1),n(x,null,{default:e(()=>[...b[2]||=[i(`ul`,null,[i(`li`,null,`Patches as tokens, then week 7’s blocks`),i(`li`,null,`No convolutions anywhere`),i(`li`,null,[i(`strong`,null,`Scales like a transformer`),u(` — the reason`)])],-1)]]),_:1})])]),s((d(),a(`div`,v,[...b[4]||=[i(`p`,null,`Every current large image and video model is the transformer one.`,-1)]])),[[C]]),i(`div`,y,[n(S,{source:`Peebles & Xie, Scalable Diffusion Models with Transformers (2022)`,url:`https://arxiv.org/abs/2212.09748`})])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-D_LV_cWf.js b/lecture-07/assets/md-D_LV_cWf.js new file mode 100644 index 0000000000000000000000000000000000000000..6c8d2c41a8190485a0c917f63a9d1a2f499d8847 --- /dev/null +++ b/lecture-07/assets/md-D_LV_cWf.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,St as r,V as i,W as a,_ as o,b as s,bt as c,et as l,g as u,m as d,ut as f,v as p,vt as m,w as h,x as g,y as ee,yt as _,z as v}from"./modules/shiki-CkJq9tSf.js";import{t as y}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as b,t as x}from"./slidev/context-DnYiQGy6.js";import{t as S}from"./slidev/VClicks-C3WADcJq.js";import{D as C,O as w,S as T,a as E,i as D,n as O,r as k}from"./useGenerative-DDHg2gzY.js";import{t as A}from"./interactive-BcxwnYg4.js";var j={class:`dl-div`},M=[`aria-label`],N=[`x1`],P=[`x`,`y`,`height`],F=[`x`,`y`,`height`],I=[`x`,`y`],L={class:`dl-div__cap`,x:`116`,y:`116`,"text-anchor":`middle`},R={class:`dl-div__table`},z={scope:`row`},B={class:`dl-div__note`},V={key:0},H=26,U=76,W=94,G=22,K=y(h({__name:`DivergenceLab`,setup(t){let{$slidev:a,$nav:c,$clicksContext:l,$clicks:h,$page:y,$renderContext:x,$frontmatter:S}=b(),A=[{key:`start`,label:`early training`,q:E},{key:`mid`,label:`collapsed → mode 2`,q:D},{key:`end`,label:`collapsed → mode 3`,q:k}],K=f(0),q=u(()=>A.map(e=>({...e,s:T(O,e.q)}))),J=u(()=>q.value[K.value]),Y=u(()=>Math.abs(q.value[1].s.js-q.value[2].s.js)<1e-9),X=[{key:`tv`,name:`TV`,note:`largest single-bin gap`},{key:`klPQ`,name:`KL(P‖Q)`,note:`infinite if a mode is missed`},{key:`js`,name:`JS(P‖Q)`,note:`what a GAN minimises`},{key:`em`,name:`EM(P, Q)`,note:`what a WGAN minimises`}];function Z(e,t){let n=e[t];return Number.isFinite(n)?n.toFixed(4):`∞`}function Q(e){return Math.max(e*U,0)}function $(e){return G+e*70}return(t,a)=>{let c=C,l=w;return v(),p(l,{"max-width":`31rem`,"controls-first":``},{controls:e(()=>[(v(),s(d,null,i(A,(e,t)=>n(c,{key:e.key,label:e.label,variant:t===K.value?`primary`:`ghost`,onClick:e=>K.value=t},null,8,[`label`,`variant`,`onClick`])),64))]),readout:e(()=>[Y.value?(v(),s(`span`,V,` JS gives the two collapsed generators the same score. EM does not — and the one it calls worse is the one whose mass has further to travel. `)):ee(`v-if`,!0)]),default:e(()=>[o(`div`,j,[(v(),s(`svg`,{class:`dl-div__chart`,viewBox:`0 0 232 120`,preserveAspectRatio:`xMidYMid meet`,role:`img`,"aria-label":`Real data against the generator: ${J.value.label}`},[o(`line`,{class:`dl-div__axis`,x1:14,x2:224,y1:W,y2:W},null,8,N),(v(!0),s(d,null,i(m(O),(e,t)=>(v(),s(`g`,{key:t},[o(`rect`,{class:`dl-div__real`,x:$(t),width:H,y:W-Q(e),height:Q(e)},null,8,P),o(`rect`,{class:`dl-div__fake`,x:$(t)+H+3,width:H,y:W-Q(J.value.q[t]),height:Q(J.value.q[t])},null,8,F),o(`text`,{class:`dl-div__mode`,x:$(t)+H+1,y:108,"text-anchor":`middle`},r(t+1),9,I)]))),128)),o(`text`,L,` dashed: real P · solid: `+r(J.value.label),1)],8,M)),o(`table`,R,[o(`thead`,null,[o(`tr`,null,[a[0]||=o(`th`,null,null,-1),(v(!0),s(d,null,i(q.value,(e,t)=>(v(),s(`th`,{key:e.key,class:_({"is-shown":t===K.value})},r(e.label),3))),128))])]),o(`tbody`,null,[(v(),s(d,null,i(X,e=>o(`tr`,{key:e.key,class:_({"is-blind":Y.value&&e.key===`js`})},[o(`th`,z,[g(r(e.name)+` `,1),o(`span`,B,r(e.note),1)]),(v(!0),s(d,null,i(q.value,(t,n)=>(v(),s(`td`,{key:t.key,class:_({"is-shown":n===K.value})},r(Z(t.s,e.key)),3))),128))],2)),64))])])])]),_:1})}}}),[[`__scopeId`,`data-v-d03c43c0`]]),q={class:`mt-2 dl-callout`},J={__name:`slides.md__slidev_46`,setup(r){let{$slidev:i,$nav:u,$clicksContext:d,$clicks:f,$page:h,$renderContext:ee,$frontmatter:_}=b();return d.setup(),(r,i)=>{let u=K,d=S,f=a(`click`);return v(),p(A,c(t(m(x)(m(_),45))),{aside:e(t=>[i[2]||=o(`p`,null,`Three generators, four measures. Read the highlighted row across.`,-1),n(d,null,{default:e(()=>[...i[0]||=[o(`ul`,null,[o(`li`,null,[g(`Both collapsed generators score `),o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mrow`,null,[o(`mi`,{mathvariant:`normal`},`J`),o(`mi`,{mathvariant:`normal`},`S`)]),o(`mo`,null,`=`),o(`mn`,null,`0.3183`)]),o(`annotation`,{encoding:`application/x-tex`},`\\mathrm{JS} = 0.3183`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),o(`span`,{class:`mord`},[o(`span`,{class:`mord mathrm`},`JS`)]),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),o(`span`,{class:`mrel`},`=`),o(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),o(`span`,{class:`mord`},`0.3183`)])])]),g(`. `),o(`strong`,null,`Identical`)]),o(`li`,null,[o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mi`,{mathvariant:`normal`},`E`),o(`mi`,{mathvariant:`normal`},`M`)]),o(`annotation`,{encoding:`application/x-tex`},`\\mathrm{EM}`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),o(`span`,{class:`mord`},[o(`span`,{class:`mord mathrm`},`EM`)])])])]),g(` says `),o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mn`,null,`2`),o(`mi`,{mathvariant:`normal`},`/`),o(`mn`,null,`3`)]),o(`annotation`,{encoding:`application/x-tex`},`2/3`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),o(`span`,{class:`mord`},`2/3`)])])]),g(` and `),o(`span`,{class:`katex`},[o(`span`,{class:`katex-mathml`},[o(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[o(`semantics`,null,[o(`mrow`,null,[o(`mn`,null,`1`)]),o(`annotation`,{encoding:`application/x-tex`},`1`)])])]),o(`span`,{class:`katex-html`,"aria-hidden":`true`},[o(`span`,{class:`katex-base`},[o(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),o(`span`,{class:`mord`},`1`)])])]),g(` — mode 3 is `),o(`em`,null,`two`),g(` steps from mode 1`)])],-1)]]),_:1}),l((v(),s(`div`,q,[...i[1]||=[o(`p`,null,`JS cannot tell these two apart, so there is no gradient between them.`,-1)]])),[[f]])]),default:e(()=>[n(u)]),_:1},16)}}};export{J as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DbnFiBew.js b/lecture-07/assets/md-DbnFiBew.js new file mode 100644 index 0000000000000000000000000000000000000000..d03a6716459a085f28650a117b9ae0c0a6a93625 --- /dev/null +++ b/lecture-07/assets/md-DbnFiBew.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./slidev/KaTexBlockWrapper-CzyNOCHB.js";var _={class:`mt-4 dl-math-sm`},v={class:`dl-tight mt-4`},y={class:`mt-3 dl-callout`},b={__name:`slides.md__slidev_30`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=f();return C.setup(),(f,b)=>{let x=g,S=h,C=r(`click`);return d(),c(m,o(t(l(p)(l(D),29))),{default:e(()=>[b[3]||=i(`h1`,null,`The best discriminator that could exist`,-1),b[4]||=i(`p`,null,[u(`Freeze `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])]),u(`. For a `),i(`strong`,null,`fixed`),u(` pair of distributions `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,null,`p`),i(`mtext`,null,`data`)])]),i(`annotation`,{encoding:`application/x-tex`},`p_{\\text{data}}`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.625em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord text mtight`},[i(`span`,{class:`mord mtight`},`data`)])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])]),u(` and `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,null,`p`),i(`mi`,null,`g`)])]),i(`annotation`,{encoding:`application/x-tex`},`p_g`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.7167em`,"vertical-align":`-0.2861em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1514em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0359em`}},`g`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2861em`}},[i(`span`)])])])])])])])]),u(`, the `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(` that maximises `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`V`)]),i(`annotation`,{encoding:`application/x-tex`},`V`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.2222em`}},`V`)])])]),u(` can be written down:`)],-1),i(`div`,_,[n(x,{ranges:[]},{default:e(()=>[...b[0]||=[i(`p`,null,[i(`span`,{class:`katex-display`},[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`},[i(`semantics`,null,[i(`mrow`,null,[i(`msup`,null,[i(`mi`,null,`D`),i(`mo`,null,`∗`)]),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`),i(`mtext`,null,`  `),i(`mo`,null,`=`),i(`mtext`,null,`  `),i(`mfrac`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,null,`p`),i(`mtext`,null,`data`)]),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`)]),i(`mrow`,null,[i(`msub`,null,[i(`mi`,null,`p`),i(`mtext`,null,`data`)]),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,null,`+`),i(`msub`,null,[i(`mi`,null,`p`),i(`mi`,null,`g`)]),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`)])])]),i(`annotation`,{encoding:`application/x-tex`},`D^*(\\mathbf{x}) \\;=\\; \\frac{p_{\\text{data}}(\\mathbf{x})}{p_{\\text{data}}(\\mathbf{x}) + p_g(\\mathbf{x})} `)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.7387em`}},[i(`span`,{style:{top:`-3.113em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mbin mtight`},`∗`)])])])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`2.3991em`,"vertical-align":`-0.9721em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mopen nulldelimiter`}),i(`span`,{class:`mfrac`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`1.427em`}},[i(`span`,{style:{top:`-2.314em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord text mtight`},[i(`span`,{class:`mord mtight`},`data`)])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`+`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.1514em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0359em`}},`g`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2861em`}},[i(`span`)])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`)])]),i(`span`,{style:{top:`-3.23em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),i(`span`,{style:{top:`-3.677em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`},`p`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3361em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord text mtight`},[i(`span`,{class:`mord mtight`},`data`)])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.9721em`}},[i(`span`)])])])]),i(`span`,{class:`mclose nulldelimiter`})])])])])])],-1)]]),_:1})]),i(`div`,v,[n(S,null,{default:e(()=>[...b[1]||=[i(`ul`,null,[i(`li`,null,[u(`Nothing is trained here. It is a `),i(`strong`,null,`ratio of two densities`),u(`, point by point`)]),i(`li`,null,[u(`Where only real data lives, `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msup`,null,[i(`mi`,null,`D`),i(`mo`,null,`∗`)]),i(`mo`,null,`=`),i(`mn`,null,`1`)]),i(`annotation`,{encoding:`application/x-tex`},`D^* = 1`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6887em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.6887em`}},[i(`span`,{style:{top:`-3.063em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mbin mtight`},`∗`)])])])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`1`)])])]),u(`. Where only fakes live, `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msup`,null,[i(`mi`,null,`D`),i(`mo`,null,`∗`)]),i(`mo`,null,`=`),i(`mn`,null,`0`)]),i(`annotation`,{encoding:`application/x-tex`},`D^* = 0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6887em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.6887em`}},[i(`span`,{style:{top:`-3.063em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mbin mtight`},`∗`)])])])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0`)])])])]),i(`li`,null,[u(`Where the two are equal, `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msup`,null,[i(`mi`,null,`D`),i(`mo`,null,`∗`)]),i(`mo`,null,`=`),i(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[i(`mfrac`,null,[i(`mn`,null,`1`),i(`mn`,null,`2`)])])]),i(`annotation`,{encoding:`application/x-tex`},`D^* = \\tfrac{1}{2}`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6887em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.6887em`}},[i(`span`,{style:{top:`-3.063em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mbin mtight`},`∗`)])])])])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.1901em`,"vertical-align":`-0.345em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mopen nulldelimiter`}),i(`span`,{class:`mfrac`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8451em`}},[i(`span`,{style:{top:`-2.655em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`2`)])])]),i(`span`,{style:{top:`-3.23em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),i(`span`,{style:{top:`-3.394em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mtight`},`1`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.345em`}},[i(`span`)])])])]),i(`span`,{class:`mclose nulldelimiter`})])])])]),u(` — and that is the goal`)])],-1)]]),_:1})]),s((d(),a(`div`,y,[...b[2]||=[i(`p`,null,`A perfect generator makes the best possible discriminator useless. Coin-flip everywhere.`,-1)]])),[[C]])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DhaIudi0.js b/lecture-07/assets/md-DhaIudi0.js new file mode 100644 index 0000000000000000000000000000000000000000..1719cc78ef2755fceaa10317963aae22580cf05c --- /dev/null +++ b/lecture-07/assets/md-DhaIudi0.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`grid grid-cols-2 gap-10 mt-2 dl-tight`},_={class:`mt-3 dl-callout`},v={__name:`slides.md__slidev_68`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),67))),{default:e(()=>[v[3]||=i(`h1`,null,`Where that leaves us`,-1),i(`div`,g,[i(`div`,null,[n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[u(`All of today: `),i(`strong`,null,`sample something simple, learn a map`)]),i(`li`,null,[u(`An `),i(`strong`,null,`autoencoder`),u(` gives the map and nothing to feed it`)]),i(`li`,null,[u(`A `),i(`strong`,null,`VAE`),u(` adds a leash, and pays in blur`)]),i(`li`,null,[u(`A `),i(`strong`,null,`GAN`),u(` makes the loss a network — sharpness and instability at once`)])],-1)]]),_:1})]),i(`div`,null,[n(y,null,{default:e(()=>[...v[1]||=[i(`ul`,null,[i(`li`,null,[u(`A trained discriminator is a `),i(`strong`,null,`divergence estimate`),u(`. That is what `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msup`,null,[i(`mi`,null,`D`),i(`mo`,null,`∗`)])]),i(`annotation`,{encoding:`application/x-tex`},`D^*`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6887em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.6887em`}},[i(`span`,{style:{top:`-3.063em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mbin mtight`},`∗`)])])])])])])])])])]),u(` meant`)]),i(`li`,null,[u(`Which divergence you pick decides what `),i(`em`,null,`worse`),u(` means. JS cannot see distance`)]),i(`li`,null,[i(`strong`,null,`Diffusion`),u(` makes the loss a regression again — and the curve goes down`)])],-1)]]),_:1})])]),s((d(),a(`div`,_,[...v[2]||=[i(`p`,null,`Four families, one difference: which loss you could actually compute.`,-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DmMWZOcj.js b/lecture-07/assets/md-DmMWZOcj.js new file mode 100644 index 0000000000000000000000000000000000000000..d31d48d4856fb34d77345937f69fbae7cc465acc --- /dev/null +++ b/lecture-07/assets/md-DmMWZOcj.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./PollSlide-Dmx53yj1.js";var g={class:`mt-6 dl-reveal`},_={class:`mt-2 dl-secondary`},v={__name:`slides.md__slidev_64`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),63))),{default:e(()=>[n(y,{question:`Why does diffusion's MSE loss not blur, when the VAE's did?`,items:[`Because it uses a U-Net rather than fully-connected layers`,`Because the loss is on noise, not on pixels`,`Because each step removes only a little noise — one plausible answer`,`Because the adversarial term in the autoencoder fixes it`]}),s((d(),a(`div`,g,[...v[0]||=[i(`p`,null,`One small step has one plausible answer`,-1)]])),[[b]]),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,[u(`A VAE averages over genuinely different images and gets their smear. One denoising step is nearly unambiguous, and fresh randomness enters at each of the fifty — ambiguity is resolved by `),i(`em`,null,`sampling`),u(`, not averaging.`)],-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DokPaWjQ.js b/lecture-07/assets/md-DokPaWjQ.js new file mode 100644 index 0000000000000000000000000000000000000000..81e182f273857b06564355793445bb9a4bd9634b --- /dev/null +++ b/lecture-07/assets/md-DokPaWjQ.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-3 dl-callout`},h={__name:`slides.md__slidev_66`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),65))),{default:e(()=>[h[1]||=r(`h1`,null,`Five families, side by side`,-1),h[2]||=r(`div`,{class:`dl-ledger dl-ledger--compare mt-1`},[r(`table`,null,[r(`thead`,null,[r(`tr`,null,[r(`th`),r(`th`,null,`quality`),r(`th`,null,`sampling`),r(`th`,null,`training`),r(`th`,null,`likelihood`),r(`th`,null,`editable latent`)])]),r(`tbody`,null,[r(`tr`,null,[r(`td`,null,[r(`strong`,null,`autoencoder`)]),r(`td`,null,`—`),r(`td`,null,`1 pass`),r(`td`,null,`easy`),r(`td`,null,`no`),r(`td`,null,`with holes`)]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`VAE`)]),r(`td`,null,`soft`),r(`td`,null,`1 pass`),r(`td`,null,`easy`),r(`td`,null,`bound`),r(`td`,null,[r(`strong`,null,`yes`)])]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`GAN`)]),r(`td`,null,`sharp`),r(`td`,null,[r(`strong`,null,`1 pass`)]),r(`td`,null,[r(`strong`,null,`fragile`)]),r(`td`,null,`none`),r(`td`,null,`yes`)]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`diffusion / flow`)]),r(`td`,null,[r(`strong`,null,`sharp`)]),r(`td`,null,`20–50`),r(`td`,null,[r(`strong`,null,`stable`)]),r(`td`,null,`bound`),r(`td`,null,`partly`)]),r(`tr`,null,[r(`td`,null,[r(`strong`,null,`autoregressive`)]),r(`td`,null,`sharp`),r(`td`,null,[l(`1 `),r(`strong`,null,`per token`)]),r(`td`,null,`stable`),r(`td`,null,[r(`strong`,null,`exact`)]),r(`td`,null,`no`)])])])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,`No row wins. Pick the column you cannot compromise on, then read across.`,-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Ds7b42QT.js b/lecture-07/assets/md-Ds7b42QT.js new file mode 100644 index 0000000000000000000000000000000000000000..4f923665e75cd0db568014074769f1c56543b343 --- /dev/null +++ b/lecture-07/assets/md-Ds7b42QT.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";import{t as m}from"./PollSlide-Dmx53yj1.js";var h={class:`mt-6 dl-reveal`},g={class:`mt-2 dl-secondary`},_={__name:`slides.md__slidev_50`,setup(_){let{$slidev:v,$nav:y,$clicksContext:b,$clicks:x,$page:S,$renderContext:C,$frontmatter:w}=d();return b.setup(),(d,_)=>{let v=m,y=r(`click`);return u(),c(p,o(t(l(f)(l(w),49))),{default:e(()=>[n(v,{question:`Your GAN's samples look sharp and realistic, and the loss curves are flat and noisy. What should you check first?`,items:[`Lower the learning rate — the losses should be decreasing`,`Whether the samples are all the same`,`Train the discriminator for more steps per generator step`,`Nothing — flat adversarial losses are expected and sharp samples are the goal`]}),s((u(),a(`div`,h,[..._[0]||=[i(`p`,null,`Look at a grid of samples`,-1)]])),[[y]]),s((u(),a(`div`,g,[..._[1]||=[i(`p`,null,`Flat noisy losses are normal — there is no minimum to descend to. Sharp samples with no variety is mode collapse, and it is invisible in every number you are currently logging.`,-1)]])),[[y]])]),_:1},16)}}};export{_ as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DulRHtU2.js b/lecture-07/assets/md-DulRHtU2.js new file mode 100644 index 0000000000000000000000000000000000000000..a5ec387d4383cca1b7ac11de8267f0e94f060aff --- /dev/null +++ b/lecture-07/assets/md-DulRHtU2.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";var g={class:`grid grid-cols-2 gap-10 mt-3 dl-tight`},_={class:`mt-4 dl-callout`},v={__name:`slides.md__slidev_12`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=h,b=r(`click`);return d(),c(m,o(t(l(p)(l(T),11))),{default:e(()=>[v[7]||=i(`h1`,null,`How wide is the middle?`,-1),i(`div`,g,[i(`div`,null,[v[1]||=i(`h3`,null,`Undercomplete`,-1),v[2]||=i(`p`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`dim`),i(`mo`,null,`⁡`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,null,`<`),i(`mi`,null,`dim`),i(`mo`,null,`⁡`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\dim(\\mathbf{z}) < \\dim(\\mathbf{x})`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mop`},`dim`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`z`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`<`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mop`},`dim`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`)])])])],-1),n(y,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,`There is not room to keep everything, so the network must choose`),i(`li`,null,`What it keeps is what the data actually varies along`),i(`li`,null,`This is where the useful representation comes from`)],-1)]]),_:1})]),i(`div`,null,[v[4]||=i(`h3`,null,`Overcomplete`,-1),v[5]||=i(`p`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`dim`),i(`mo`,null,`⁡`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,null,`≥`),i(`mi`,null,`dim`),i(`mo`,null,`⁡`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\dim(\\mathbf{z}) \\ge \\dim(\\mathbf{x})`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mop`},`dim`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`z`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`≥`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mop`},`dim`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`)])])])],-1),n(y,null,{default:e(()=>[...v[3]||=[i(`ul`,null,[i(`li`,null,`Nothing forces any compression at all`),i(`li`,null,`The identity map is available, scores a perfect loss, and teaches you nothing`),i(`li`,null,[u(`Useful only once something `),i(`em`,null,`else`),u(` constrains it — noise, sparsity, dropout`)])],-1)]]),_:1})])]),s((d(),a(`div`,_,[...v[6]||=[i(`p`,null,`The bottleneck is not a limitation you tolerate. It is the entire mechanism.`,-1)]])),[[b]])]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-DuvAI-RI.css b/lecture-07/assets/md-DuvAI-RI.css new file mode 100644 index 0000000000000000000000000000000000000000..6f8a91da512117fa0d0dadbb80315aea71f05f59 --- /dev/null +++ b/lecture-07/assets/md-DuvAI-RI.css @@ -0,0 +1 @@ +.dl-div[data-v-d03c43c0]{flex-direction:column;align-items:stretch;gap:.35rem;width:100%;max-width:100%;display:flex}.dl-div__chart[data-v-d03c43c0]{flex:none;width:100%;height:5.6rem;font-family:inherit}.dl-div__axis[data-v-d03c43c0]{stroke:var(--dl-muted);stroke-width:1.2px}.dl-div__real[data-v-d03c43c0]{fill:none;stroke:var(--dl-body);stroke-width:1.8px;stroke-dasharray:3 3}.dl-div__fake[data-v-d03c43c0]{fill:var(--dl-accent)}.dl-div__mode[data-v-d03c43c0]{fill:var(--dl-body);font-size:11px}.dl-div__cap[data-v-d03c43c0]{fill:var(--dl-muted);font-size:9.5px}.dl-div__table[data-v-d03c43c0]{border-collapse:collapse;font-variant-numeric:tabular-nums;flex:none;width:100%;font-size:.74rem}.dl-div__table th[data-v-d03c43c0],.dl-div__table td[data-v-d03c43c0]{text-align:right;border-bottom:1px solid var(--dl-border);padding:.16rem .45rem}.dl-div__table thead th[data-v-d03c43c0]{color:var(--dl-muted);text-align:right;font-size:.72rem;font-weight:600}.dl-div__table tbody th[data-v-d03c43c0]{text-align:left;color:var(--dl-heading);white-space:nowrap;font-weight:600}.dl-div__table td[data-v-d03c43c0]{color:var(--dl-body)}.dl-div__table .is-shown[data-v-d03c43c0]{color:var(--dl-accent);font-weight:700}.dl-div__table tr.is-blind td[data-v-d03c43c0]:nth-child(3),.dl-div__table tr.is-blind td[data-v-d03c43c0]:nth-child(4){background:var(--dl-accent-soft)}.dl-div__note[data-v-d03c43c0]{color:var(--dl-muted);font-size:.68rem;font-weight:400;display:block} diff --git a/lecture-07/assets/md-Dv-9RHof.js b/lecture-07/assets/md-Dv-9RHof.js new file mode 100644 index 0000000000000000000000000000000000000000..126331f245cf96cf72e2dc618b876537fc0cf0d9 --- /dev/null +++ b/lecture-07/assets/md-Dv-9RHof.js @@ -0,0 +1,19 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./slidev/KaTexBlockWrapper-CzyNOCHB.js";var _={class:`dl-tight mt-4`},v={class:`mt-3 dl-callout`},y={__name:`slides.md__slidev_20`,setup(y){let{$slidev:b,$nav:x,$clicksContext:S,$clicks:C,$page:w,$renderContext:T,$frontmatter:E}=f();return S.setup(),(f,y)=>{let b=g,x=h,S=r(`click`);return d(),c(m,o(t(l(p)(l(E),19))),{default:e(()=>[y[3]||=i(`h1`,null,`The objective, in two terms`,-1),n(b,{ranges:[]},{default:e(()=>[...y[0]||=[i(`p`,null,[i(`span`,{class:`katex-display`},[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`script`},`L`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`),i(`mtext`,null,`  `),i(`mo`,null,`=`),i(`mtext`,null,`  `),i(`munder`,null,[i(`munder`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`double-struck`},`E`),i(`mrow`,null,[i(`mi`,null,`q`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,null,`∣`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`)])]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`[`),i(`mo`,{stretchy:`false`},`∥`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,null,`−`),i(`mi`,null,`g`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,{stretchy:`false`},`)`),i(`msup`,null,[i(`mo`,{stretchy:`false`},`∥`),i(`mn`,null,`2`)]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`]`)]),i(`mo`,{stretchy:`true`},`⏟`)]),i(`mtext`,null,`rebuild\xA0it`)]),i(`mtext`,null,`  `),i(`mo`,null,`+`),i(`mtext`,null,`  `),i(`mi`,null,`β`),i(`munder`,null,[i(`munder`,null,[i(`mrow`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`normal`},`K`),i(`mi`,{mathvariant:`normal`},`L`)]),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`(`),i(`mi`,null,`q`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,null,`∣`),i(`mi`,{mathvariant:`bold`},`x`),i(`mo`,{stretchy:`false`},`)`),i(`mtext`,null,` `),i(`mi`,{mathvariant:`normal`},`∥`),i(`mtext`,null,` `),i(`mi`,{mathvariant:`script`},`N`),i(`mo`,{stretchy:`false`},`(`),i(`mn`,{mathvariant:`bold`},`0`),i(`mo`,{separator:`true`},`,`),i(`mi`,null,`I`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`)`)]),i(`mo`,{stretchy:`true`},`⏟`)]),i(`mtext`,null,`stay\xA0near\xA0the\xA0prior`)])]),i(`annotation`,{encoding:`application/x-tex`},`\\mathcal{L}(\\mathbf{x}) \\;=\\; \\underbrace{\\mathbb{E}_{q(\\mathbf{z}\\mid\\mathbf{x})}\\big[\\lVert \\mathbf{x} - g(\\mathbf{z}) \\rVert^2\\big]}_{\\text{rebuild it}} \\;+\\; \\beta \\underbrace{\\mathrm{KL}\\big(q(\\mathbf{z}\\mid\\mathbf{x}) \\,\\Vert\\, \\mathcal{N}(\\mathbf{0}, I)\\big)}_{\\text{stay near the prior}} `)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathcal`},`L`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`2.5534em`,"vertical-align":`-1.6893em`}}),i(`span`,{class:`minner munder`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8641em`}},[i(`span`,{style:{top:`-1.3107em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord text mtight`},[i(`span`,{class:`mord mtight`},`rebuild\xA0it`)])])])]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`minner munder`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8641em`}},[i(`span`,{class:`svg-align`,style:{top:`-1.9968em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-stretchy`,style:{height:`0.548em`,"min-width":`1.6em`}},[i(`span`,{class:`brace-left`,style:{height:`0.548em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`0.548em`,viewBox:`0 0 400000 548`,preserveAspectRatio:`xMinYMin slice`},[i(`path`,{d:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13 + 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688 + 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7 +-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`})])]),i(`span`,{class:`brace-center`,style:{height:`0.548em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`0.548em`,viewBox:`0 0 400000 548`,preserveAspectRatio:`xMidYMin slice`},[i(`path`,{d:`M199572 214 +c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14 + 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3 + 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0 +-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`})])]),i(`span`,{class:`brace-right`,style:{height:`0.548em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`0.548em`,viewBox:`0 0 400000 548`,preserveAspectRatio:`xMaxYMin slice`},[i(`path`,{d:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3 + 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237 +-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`})])])])]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbb`},`E`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3448em`}},[i(`span`,{style:{top:`-2.5198em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0359em`}},`q`),i(`span`,{class:`mopen mtight`},`(`),i(`span`,{class:`mord mathbf mtight`},`z`),i(`span`,{class:`mrel mtight`},`∣`),i(`span`,{class:`mord mathbf mtight`},`x`),i(`span`,{class:`mclose mtight`},`)`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3552em`}},[i(`span`)])])])])]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`[`)]),i(`span`,{class:`mopen`},`∥`),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`g`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`z`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mclose`},[i(`span`,{class:`mclose`},`∥`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8641em`}},[i(`span`,{style:{top:`-3.113em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},`2`)])])])])])])]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`]`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`1.0032em`}},[i(`span`)])])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`1.6893em`}},[i(`span`)])])])]),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`+`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`2.6702em`,"vertical-align":`-1.8202em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0528em`}},`β`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`minner munder`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.85em`}},[i(`span`,{style:{top:`-1.3159em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},[i(`span`,{class:`mord text mtight`},[i(`span`,{class:`mord mtight`},`stay\xA0near\xA0the\xA0prior`)])])])]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`minner munder`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.85em`}},[i(`span`,{class:`svg-align`,style:{top:`-2.002em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`katex-stretchy`,style:{height:`0.548em`,"min-width":`1.6em`}},[i(`span`,{class:`brace-left`,style:{height:`0.548em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`0.548em`,viewBox:`0 0 400000 548`,preserveAspectRatio:`xMinYMin slice`},[i(`path`,{d:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13 + 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688 + 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7 +-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`})])]),i(`span`,{class:`brace-center`,style:{height:`0.548em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`0.548em`,viewBox:`0 0 400000 548`,preserveAspectRatio:`xMidYMin slice`},[i(`path`,{d:`M199572 214 +c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14 + 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3 + 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0 +-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`})])]),i(`span`,{class:`brace-right`,style:{height:`0.548em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`0.548em`,viewBox:`0 0 400000 548`,preserveAspectRatio:`xMaxYMin slice`},[i(`path`,{d:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3 + 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237 +-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`})])])])]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord`},[i(`span`,{class:`mord mathrm`},`KL`)]),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`(`)]),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`q`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`z`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`∣`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord`},`∥`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathcal`,style:{"margin-right":`0.1474em`}},`N`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`0`),i(`span`,{class:`mpunct`},`,`),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0785em`}},`I`),i(`span`,{class:`mclose`},`)`),i(`span`,{class:`mord`},[i(`span`,{class:`delimsizing size1`},`)`)])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.998em`}},[i(`span`)])])])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`1.8202em`}},[i(`span`)])])])])])])])])],-1)]]),_:1}),i(`div`,_,[n(x,null,{default:e(()=>[...y[1]||=[i(`ul`,null,[i(`li`,null,[i(`strong`,null,`Left`),u(`: the autoencoder loss, but decoded from a `),i(`em`,null,`sampled`),u(),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,{mathvariant:`bold`},`z`)]),i(`annotation`,{encoding:`application/x-tex`},`\\mathbf{z}`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.4444em`}}),i(`span`,{class:`mord mathbf`},`z`)])])])]),i(`li`,null,[i(`strong`,null,`Right`),u(`: a leash. For a Gaussian encoder it is a closed form — two lines of code, no integral`)]),i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`β`)]),i(`annotation`,{encoding:`application/x-tex`},`\\beta`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0528em`}},`β`)])])]),u(` sets the tension. `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`β`),i(`mo`,null,`=`),i(`mn`,null,`0`)]),i(`annotation`,{encoding:`application/x-tex`},`\\beta = 0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0528em`}},`β`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0`)])])]),u(` is exactly last section’s autoencoder`)])],-1)]]),_:1})]),s((d(),a(`div`,v,[...y[2]||=[i(`p`,null,`Two terms that want opposite things. Everything a VAE does is the compromise.`,-1)]])),[[S]])]),_:1},16)}}};export{y as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Dwx-gmJ3.js b/lecture-07/assets/md-Dwx-gmJ3.js new file mode 100644 index 0000000000000000000000000000000000000000..e721130b30d4d13a896a5517af93a91371d468b8 --- /dev/null +++ b/lecture-07/assets/md-Dwx-gmJ3.js @@ -0,0 +1 @@ +import{$ as e,E as t,_ as n,bt as r,v as i,vt as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{n as s,t as c}from"./slidev/context-DnYiQGy6.js";import{t as l}from"./section-CLxRKQ9Y.js";var u={__name:`slides.md__slidev_3`,setup(u){let{$slidev:d,$nav:f,$clicksContext:p,$clicks:m,$page:h,$renderContext:g,$frontmatter:_}=s();return p.setup(),(s,u)=>(o(),i(l,r(t(a(c)(a(_),2))),{default:e(()=>[...u[0]||=[n(`h1`,null,`You already have a generative model`,-1)]]),_:1},16))}};export{u as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Dy_e3Bqp.js b/lecture-07/assets/md-Dy_e3Bqp.js new file mode 100644 index 0000000000000000000000000000000000000000..396fd7a84ad44b8c3242e3bbce25e1755fca8206 --- /dev/null +++ b/lecture-07/assets/md-Dy_e3Bqp.js @@ -0,0 +1,23 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./slidev/VClicks-C3WADcJq.js";import{t as h}from"./interactive-BcxwnYg4.js";import{t as g}from"./DiffusionLab-DyGhc6Y6.js";var _={class:`mt-2 dl-callout`},v={__name:`slides.md__slidev_54`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=g,b=m,x=r(`click`);return d(),c(h,o(t(l(p)(l(T),53))),{aside:e(t=>[v[2]||=i(`p`,null,[u(`The three modes again, as blobs. Drag `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`)]),i(`annotation`,{encoding:`application/x-tex`},`t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`)])])]),u(` from 0 to 47.`)],-1),n(b,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msqrt`,null,[i(`msub`,null,[i(`mover`,{accent:`true`},[i(`mi`,null,`α`),i(`mo`,null,`ˉ`)]),i(`mi`,null,`t`)])])]),i(`annotation`,{encoding:`application/x-tex`},`\\sqrt{\\bar\\alpha_t}`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.04em`,"vertical-align":`-0.2461em`}}),i(`span`,{class:`mord sqrt`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.7939em`}},[i(`span`,{class:`svg-align`,style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`,style:{"padding-left":`0.833em`}},[i(`span`,{class:`mord`},[i(`span`,{class:`mord katex-accent`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.5678em`}},[i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0037em`}},`α`)]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`accent-body`,style:{left:`-0.2222em`}},[i(`span`,{class:`mord`},`ˉ`)])])])])])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`-0.0037em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])]),i(`span`,{style:{top:`-2.7539em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`hide-tail`,style:{"min-width":`0.853em`,height:`1.08em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`1.08em`,viewBox:`0 0 400000 1080`,preserveAspectRatio:`xMinYMin slice`},[i(`path`,{d:`M95,702 +c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14 +c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54 +c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10 +s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429 +c69,-144,104.5,-217.7,106.5,-221 +l0 -0 +c5.3,-9.3,12,-14,20,-14 +H400000v40H845.2724 +s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7 +c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z +M834 80h400000v40h-400000z`})])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2461em`}},[i(`span`)])])])])])])]),u(` is image left, `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msqrt`,null,[i(`mrow`,null,[i(`mn`,null,`1`),i(`mo`,null,`−`),i(`msub`,null,[i(`mover`,{accent:`true`},[i(`mi`,null,`α`),i(`mo`,null,`ˉ`)]),i(`mi`,null,`t`)])])])]),i(`annotation`,{encoding:`application/x-tex`},`\\sqrt{1-\\bar\\alpha_t}`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1.04em`,"vertical-align":`-0.2078em`}}),i(`span`,{class:`mord sqrt`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.8322em`}},[i(`span`,{class:`svg-align`,style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord`,style:{"padding-left":`0.833em`}},[i(`span`,{class:`mord`},`1`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord katex-accent`},[i(`span`,{class:`vlist-t`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.5678em`}},[i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0037em`}},`α`)]),i(`span`,{style:{top:`-3em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`accent-body`,style:{left:`-0.2222em`}},[i(`span`,{class:`mord`},`ˉ`)])])])])])]),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2806em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`-0.0037em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mathnormal mtight`},`t`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])]),i(`span`,{style:{top:`-2.7922em`}},[i(`span`,{class:`pstrut`,style:{height:`3em`}}),i(`span`,{class:`hide-tail`,style:{"min-width":`0.853em`,height:`1.08em`}},[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`400em`,height:`1.08em`,viewBox:`0 0 400000 1080`,preserveAspectRatio:`xMinYMin slice`},[i(`path`,{d:`M95,702 +c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14 +c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54 +c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10 +s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429 +c69,-144,104.5,-217.7,106.5,-221 +l0 -0 +c5.3,-9.3,12,-14,20,-14 +H400000v40H845.2724 +s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7 +c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z +M834 80h400000v40h-400000z`})])])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.2078em`}},[i(`span`)])])])])])])]),u(` is noise`)]),i(`li`,null,[u(`By `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`),i(`mo`,null,`=`),i(`mn`,null,`47`)]),i(`annotation`,{encoding:`application/x-tex`},`t = 47`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`=`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`47`)])])]),u(` the clusters are gone`)]),i(`li`,null,[u(`Every frame comes from `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`msub`,null,[i(`mi`,{mathvariant:`bold`},`x`),i(`mn`,null,`0`)])]),i(`annotation`,{encoding:`application/x-tex`},`\\mathbf{x}_0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.5944em`,"vertical-align":`-0.15em`}}),i(`span`,{class:`mord`},[i(`span`,{class:`mord mathbf`},`x`),i(`span`,{class:`msupsub`},[i(`span`,{class:`vlist-t vlist-t2`},[i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.3011em`}},[i(`span`,{style:{top:`-2.55em`,"margin-left":`0em`,"margin-right":`0.05em`}},[i(`span`,{class:`pstrut`,style:{height:`2.7em`}}),i(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[i(`span`,{class:`mord mtight`},`0`)])])]),i(`span`,{class:`vlist-s`},`​`)]),i(`span`,{class:`vlist-r`},[i(`span`,{class:`vlist`,style:{height:`0.15em`}},[i(`span`)])])])])])])])]),u(),i(`strong`,null,`directly`)])],-1)]]),_:1}),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,`Nothing was trained.`,-1)]])),[[x]])]),default:e(()=>[n(y)]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-Fb6ry1ve.css b/lecture-07/assets/md-Fb6ry1ve.css new file mode 100644 index 0000000000000000000000000000000000000000..8bdc4b8bbe34f49bacee4cf7234229d8d2b12eea --- /dev/null +++ b/lecture-07/assets/md-Fb6ry1ve.css @@ -0,0 +1 @@ +.dl-cfg__out[data-v-9b028896]{flex-wrap:wrap;align-items:baseline;gap:.15rem 1.3rem;display:flex}.dl-cfg__out b[data-v-9b028896]{color:var(--dl-accent);font-weight:700}.dl-cfg__ref[data-v-9b028896]{color:var(--dl-muted);margin-left:.35rem;font-weight:400}.dl-cfg__note[data-v-9b028896]{color:var(--dl-muted);font-style:italic} diff --git a/lecture-07/assets/md-KGQRTtLp.js b/lecture-07/assets/md-KGQRTtLp.js new file mode 100644 index 0000000000000000000000000000000000000000..bc8021fa71cda7939c3342d70b5bd9e49b2e0291 --- /dev/null +++ b/lecture-07/assets/md-KGQRTtLp.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./slidev/VClicks-C3WADcJq.js";import{t as g}from"./Plot2D-C9URVmMB.js";import{t as _}from"./PlotLabel-BilrlAqg.js";import{t as v}from"./PlotCurve-CJaWe74-.js";import{t as y}from"./PlotLine-CjM2Thxu.js";var b={class:`grid grid-cols-2 gap-6 mt-1`},x={class:`dl-tight`},S={class:`mt-3 dl-callout`},C={class:`mt-2 dl-secondary`},w={__name:`slides.md__slidev_35`,setup(w){let{$slidev:T,$nav:E,$clicksContext:D,$clicks:O,$page:k,$renderContext:A,$frontmatter:j}=f();return D.setup(),(f,w)=>{let T=v,E=_,D=y,O=g,k=h,A=r(`click`);return d(),c(m,o(t(l(p)(l(j),34))),{default:e(()=>[w[3]||=i(`h1`,null,`The trick that makes it train`,-1),w[4]||=i(`p`,null,[u(`Early on, `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(` catches every fake — so the generator sits at the `),i(`strong`,null,`left`),u(` of this plot.`)],-1),i(`div`,b,[i(`div`,null,[n(O,{"x-domain":[0,1],"y-domain":[-4,.5],width:420,height:215,"x-label":`D(G(z))`,"x-ticks":[0,.25,.5,.75,1],"y-ticks":[-4,-3,-2,-1,0]},{default:e(()=>[n(T,{fn:e=>Math.log(1-e),color:`var(--dl-danger)`,width:2.6},null,8,[`fn`]),n(T,{fn:e=>Math.log(e),color:`var(--dl-accent)`,width:2.6},null,8,[`fn`]),n(E,{at:[.42,-.62],text:`log(1 − D)`,color:`var(--dl-danger)`,dx:4,dy:-4,bold:``}),n(E,{at:[.42,-.95],text:`log D`,color:`var(--dl-accent)`,dx:4,dy:12,bold:``}),n(D,{from:[.08,-4],to:[.08,.5],color:`var(--dl-muted)`,width:1.2,dashed:``}),n(E,{at:[.08,.5],text:`G starts here`,color:`var(--dl-muted)`,dx:6,dy:10})]),_:1})]),i(`div`,x,[n(k,null,{default:e(()=>[...w[0]||=[i(`ul`,null,[i(`li`,null,[u(`At `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`),i(`mo`,null,`≈`),i(`mn`,null,`0`)]),i(`annotation`,{encoding:`application/x-tex`},`D \\approx 0`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),i(`span`,{class:`mrel`},`≈`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6444em`}}),i(`span`,{class:`mord`},`0`)])])]),u(`, `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`log`),i(`mo`,null,`⁡`),i(`mo`,{stretchy:`false`},`(`),i(`mn`,null,`1`),i(`mo`,null,`−`),i(`mi`,null,`D`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\log(1-D)`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mop`},[u(`lo`),i(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord`},`1`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),i(`span`,{class:`mbin`},`−`),i(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mclose`},`)`)])])]),u(` is `),i(`strong`,null,`flat`),u(`. Almost no gradient`)]),i(`li`,null,[i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`log`),i(`mo`,null,`⁡`),i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`\\log D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.8889em`,"vertical-align":`-0.1944em`}}),i(`span`,{class:`mop`},[u(`lo`),i(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(` is `),i(`em`,null,`steepest`),u(` in exactly that place`)])],-1)]]),_:1}),s((d(),a(`div`,S,[...w[1]||=[i(`p`,null,[u(`So `),i(`strong`,null,[u(`maximise `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`log`),i(`mo`,null,`⁡`),i(`mi`,null,`D`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,null,`G`),i(`mo`,{stretchy:`false`},`(`),i(`mi`,{mathvariant:`bold`},`z`),i(`mo`,{stretchy:`false`},`)`),i(`mo`,{stretchy:`false`},`)`)]),i(`annotation`,{encoding:`application/x-tex`},`\\log D(G(\\mathbf{z}))`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),i(`span`,{class:`mop`},[u(`lo`),i(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),i(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathnormal`},`G`),i(`span`,{class:`mopen`},`(`),i(`span`,{class:`mord mathbf`},`z`),i(`span`,{class:`mclose`},`))`)])])])]),u(` instead. Same fixed point, usable gradient.`)],-1)]])),[[A]]),s((d(),a(`div`,C,[...w[2]||=[i(`p`,null,[u(`One argument in code: train `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])]),u(` with BCE against a label of `),i(`strong`,null,`1`),u(`.`)],-1)]])),[[A]])])])]),_:1},16)}}};export{w as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-M85UnOeN.js b/lecture-07/assets/md-M85UnOeN.js new file mode 100644 index 0000000000000000000000000000000000000000..9158fbcf2bbdb2368c0e123580ee5d19025493e9 --- /dev/null +++ b/lecture-07/assets/md-M85UnOeN.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";import{t as m}from"./PollSlide-Dmx53yj1.js";var h={class:`mt-6 dl-reveal`},g={class:`mt-2 dl-secondary`},_={__name:`slides.md__slidev_17`,setup(_){let{$slidev:v,$nav:y,$clicksContext:b,$clicks:x,$page:S,$renderContext:C,$frontmatter:w}=d();return b.setup(),(d,_)=>{let v=m,y=r(`click`);return u(),c(p,o(t(l(f)(l(w),16))),{default:e(()=>[n(v,{question:`A trained autoencoder rebuilds every test image beautifully. You feed the decoder a random z and get noise. Why?`,items:[`The decoder is undertrained`,`The latent is too small to hold an image`,`The encoder never put any codes where that z is`,`You need a bigger dataset`]}),s((u(),a(`div`,h,[..._[0]||=[i(`p`,null,`Nothing ever lives at that z`,-1)]])),[[y]]),s((u(),a(`div`,g,[..._[1]||=[i(`p`,null,`The decoder is only defined, in any meaningful sense, on the region the encoder actually used. Everywhere else it is extrapolating, and it was never penalised for what it does there.`,-1)]])),[[y]])]),_:1},16)}}};export{_ as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-NIRaBBmF.js b/lecture-07/assets/md-NIRaBBmF.js new file mode 100644 index 0000000000000000000000000000000000000000..279fa26c0d7636511dca8db4c8eda34a83fdc971 --- /dev/null +++ b/lecture-07/assets/md-NIRaBBmF.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./slidev/VClicks-C3WADcJq.js";import{t as h}from"./interactive-BcxwnYg4.js";import{t as g}from"./DiffusionLab-DyGhc6Y6.js";var _={class:`mt-2 dl-callout`},v={__name:`slides.md__slidev_56`,setup(v){let{$slidev:y,$nav:b,$clicksContext:x,$clicks:S,$page:C,$renderContext:w,$frontmatter:T}=f();return x.setup(),(f,v)=>{let y=g,b=m,x=r(`click`);return d(),c(h,o(t(l(p)(l(T),55))),{aside:e(t=>[v[2]||=i(`p`,null,[u(`Press `),i(`strong`,null,`show the field`),u(`: the arrows are what the network is trained to output.`)],-1),n(b,null,{default:e(()=>[...v[0]||=[i(`ul`,null,[i(`li`,null,[u(`High `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`)]),i(`annotation`,{encoding:`application/x-tex`},`t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`)])])]),u(` — vaguely inward, no mode chosen`)]),i(`li`,null,[u(`Low `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`t`)]),i(`annotation`,{encoding:`application/x-tex`},`t`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6151em`}}),i(`span`,{class:`mord mathnormal`},`t`)])])]),u(` — it sharpens, samples commit`)])],-1)]]),_:1}),s((d(),a(`div`,_,[...v[1]||=[i(`p`,null,`Each step needs the one before. Hence slow.`,-1)]])),[[x]])]),default:e(()=>[n(y,{reverse:``,field:``})]),_:1},16)}}};export{v as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-SmsURr7k.js b/lecture-07/assets/md-SmsURr7k.js new file mode 100644 index 0000000000000000000000000000000000000000..5a2737e0610907803a6e62f8bc5bb92d68544691 --- /dev/null +++ b/lecture-07/assets/md-SmsURr7k.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,W as r,_ as i,b as a,bt as o,et as s,v as c,vt as l,x as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{n as f,t as p}from"./slidev/context-DnYiQGy6.js";import{t as m}from"./default-Bp68E4h0.js";import{t as h}from"./LinkCard-C5341yCL.js";var g={class:`grid grid-cols-3 gap-4 mt-4`},_={class:`mt-4 dl-tight`},v={class:`mt-2 dl-secondary`},y={__name:`slides.md__slidev_70`,setup(y){let{$slidev:b,$nav:x,$clicksContext:S,$clicks:C,$page:w,$renderContext:T,$frontmatter:E}=f();return S.setup(),(f,y)=>{let b=h,x=r(`click`);return d(),c(m,o(t(l(p)(l(E),69))),{default:e(()=>[y[2]||=i(`h1`,null,`Reading, and the lab`,-1),i(`div`,g,[s((d(),a(`div`,null,[n(b,{href:`https://lilianweng.github.io/posts/2021-07-11-diffusion-models/`,title:`What are Diffusion Models?`,blurb:`Weng, 2021. The derivation this lecture skipped, done properly and readably. Do this one before the lab.`,icon:`📘`})])),[[x]]),s((d(),a(`div`,null,[n(b,{href:`https://github.com/lucidrains/denoising-diffusion-pytorch`,title:`denoising-diffusion-pytorch`,blurb:`A complete, trainable DDPM in readable PyTorch. The 2025 deck's link, and still the one to start from.`,icon:`💻`})])),[[x]]),s((d(),a(`div`,null,[n(b,{href:`https://github.com/soumith/ganhacks`,title:`ganhacks`,blurb:`Chintala's list of what actually makes a GAN train. Unglamorous, undertheorised, and the reason your first one will work.`,icon:`🔧`})])),[[x]])]),s((d(),a(`div`,_,[...y[0]||=[i(`p`,null,[i(`strong`,null,`In the lab.`),u(` Train a DCGAN on one dataset, then a small diffusion model on the same one, and compare. Then break the GAN on purpose — remove `),i(`code`,null,`detach`),u(`, use the saturating loss, train `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`D`)]),i(`annotation`,{encoding:`application/x-tex`},`D`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0278em`}},`D`)])])]),u(` five steps per `),i(`span`,{class:`katex`},[i(`span`,{class:`katex-mathml`},[i(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[i(`semantics`,null,[i(`mrow`,null,[i(`mi`,null,`G`)]),i(`annotation`,{encoding:`application/x-tex`},`G`)])])]),i(`span`,{class:`katex-html`,"aria-hidden":`true`},[i(`span`,{class:`katex-base`},[i(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),i(`span`,{class:`mord mathnormal`},`G`)])])]),u(` step — and report what each does.`)],-1)]])),[[x]]),s((d(),a(`div`,v,[...y[1]||=[i(`p`,null,`Predict which break is worst before you run it. Log a fixed grid of samples every epoch, not just the losses.`,-1)]])),[[x]])]),_:1},16)}}};export{y as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-VE4VM-5-2.js b/lecture-07/assets/md-VE4VM-5-2.js new file mode 100644 index 0000000000000000000000000000000000000000..13b789426f3a02c3261545d241c11f3afe468c93 --- /dev/null +++ b/lecture-07/assets/md-VE4VM-5-2.js @@ -0,0 +1 @@ +import{$ as e,E as t,_ as n,bt as r,v as i,vt as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{n as s,t as c}from"./slidev/context-DnYiQGy6.js";import{t as l}from"./section-CLxRKQ9Y.js";var u={__name:`slides.md__slidev_39`,setup(u){let{$slidev:d,$nav:f,$clicksContext:p,$clicks:m,$page:h,$renderContext:g,$frontmatter:_}=s();return p.setup(),(s,u)=>(o(),i(l,r(t(a(c)(a(_),38))),{default:e(()=>[...u[0]||=[n(`h1`,null,`Why GANs are hard`,-1)]]),_:1},16))}};export{u as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-VGUgNMSa.js b/lecture-07/assets/md-VGUgNMSa.js new file mode 100644 index 0000000000000000000000000000000000000000..a14c0eef78657f9af45f0e92b02c8290edb69705 --- /dev/null +++ b/lecture-07/assets/md-VGUgNMSa.js @@ -0,0 +1 @@ +import{$ as e,E as t,_ as n,bt as r,v as i,vt as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{n as s,t as c}from"./slidev/context-DnYiQGy6.js";import{t as l}from"./section-CLxRKQ9Y.js";var u={__name:`slides.md__slidev_18`,setup(u){let{$slidev:d,$nav:f,$clicksContext:p,$clicks:m,$page:h,$renderContext:g,$frontmatter:_}=s();return p.setup(),(s,u)=>(o(),i(l,r(t(a(c)(a(_),17))),{default:e(()=>[...u[0]||=[n(`h1`,null,`Make the latent behave: VAEs`,-1)]]),_:1},16))}};export{u as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-a2kumTRc.js b/lecture-07/assets/md-a2kumTRc.js new file mode 100644 index 0000000000000000000000000000000000000000..e951201ae7e9f11c0ab6e33635dfd60f971f485f --- /dev/null +++ b/lecture-07/assets/md-a2kumTRc.js @@ -0,0 +1 @@ +import{$ as e,E as t,S as n,St as r,V as i,_ as a,b as o,bt as s,g as c,m as l,ut as u,v as d,vt as f,w as p,xt as m,y as h,yt as g,z as _}from"./modules/shiki-CkJq9tSf.js";import{t as v}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as y,t as b}from"./slidev/context-DnYiQGy6.js";import{t as x}from"./interactive-BcxwnYg4.js";var S={class:`dl-syllabus`},C=[`title`,`onClick`],w={class:`dl-syllabus__num`},T={class:`dl-syllabus__detail`},E={class:`dl-syllabus__heading`},D={class:`dl-syllabus__weeklabel`},O=v(p({__name:`SyllabusTimeline`,props:{entries:{default:()=>[{section:`Introduction to DL`,description:`Course content, evaluation and exams. What is deep learning, where it is applied, the frameworks, and getting a environment running in Colab or Jupyter.`,weeks:[1]},{section:`Basics of Neural Networks`,description:`Artificial neurons and neural networks; implementing and training a multilayer network from scratch.`,weeks:[2]},{section:`PyTorch for DL`,description:`What PyTorch is and why. Tensors for data representation, the PyTorch training pipeline, and an ANN built with it.`,weeks:[3]},{section:`Deep Convolutional Neural Networks`,description:`What a CNN is and where it applies. Telling classification, detection and segmentation apart. Implementing CNN models in PyTorch.`,weeks:[4,5]},{section:`Recurrent Networks, Transformers and LLMs`,description:`What an RNN is and where it applies; the mechanism, and an implementation in PyTorch. What a transformer is, and the original architecture. Then large language models: how one is trained, how one is adapted, and how to build on top of one.`,weeks:[6,7,8]},{section:`Generative Adversarial Networks`,description:`Generative models and autoencoders. Implementing a GAN in Colab, improving synthetic data quality, and the main GAN variants and applications.`,weeks:[9,10]},{section:`Deep Reinforcement Learning`,description:`What reinforcement learning is and why. RL algorithm basics, implementations, and deep Q-learning in PyTorch.`,weeks:[11,12]}]},totalWeeks:{default:12},currentWeek:{default:null}},setup(e){let{$slidev:t,$nav:n,$clicksContext:s,$clicks:d,$page:f,$renderContext:p,$frontmatter:v}=y(),b=e,x=u(Math.max(0,b.entries.findIndex(e=>e.weeks.includes(b.currentWeek??0)))),O=c(()=>b.entries[x.value]);function k(e){return e.weeks.length===1?`Week ${e.weeks[0]}`:`Weeks ${e.weeks[0]}–${e.weeks[e.weeks.length-1]}`}return(e,t)=>(_(),o(`div`,S,[a(`div`,{class:`dl-syllabus__track`,style:m({gridTemplateColumns:`repeat(${b.totalWeeks}, 1fr)`})},[(_(!0),o(l,null,i(b.entries,(e,t)=>(_(),o(`button`,{key:e.section,type:`button`,class:g([`dl-syllabus__block`,{"is-selected":t===x.value}]),style:m({gridColumn:`${e.weeks[0]} / span ${e.weeks.length}`}),title:e.section,onClick:e=>x.value=t},[a(`span`,w,r(t+1),1)],14,C))),128)),b.currentWeek?(_(),o(`div`,{key:0,class:`dl-syllabus__now`,style:m({gridColumn:`${b.currentWeek} / span 1`})},null,4)):h(`v-if`,!0)],4),a(`div`,{class:`dl-syllabus__weeks`,style:m({gridTemplateColumns:`repeat(${b.totalWeeks}, 1fr)`})},[(_(!0),o(l,null,i(b.totalWeeks,e=>(_(),o(`span`,{key:e},r(e),1))),128))],4),a(`div`,T,[a(`div`,E,[a(`span`,D,r(k(O.value)),1),a(`h3`,null,r(O.value.section),1)]),a(`p`,null,r(O.value.description),1)])]))}}),[[`__scopeId`,`data-v-45e850fb`]]),k={__name:`slides.md__slidev_2`,setup(r){let{$slidev:i,$nav:o,$clicksContext:c,$clicks:l,$page:u,$renderContext:p,$frontmatter:m}=y();return c.setup(),(r,i)=>{let o=O;return _(),d(x,s(t(f(b)(f(m),1))),{aside:e(e=>[...i[0]||=[a(`p`,null,`Weeks 6 to 8 built sequence models and ended on the large language model.`,-1),a(`p`,null,`Today starts the block on generative models — and the first thing to notice is that we finished the last block holding one.`,-1)]]),default:e(()=>[n(o,{"current-week":9})]),_:1},16)}}};export{k as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-f1cjOFpN.js b/lecture-07/assets/md-f1cjOFpN.js new file mode 100644 index 0000000000000000000000000000000000000000..9114c016432ff41724d7d48596a76b196cbbb485 --- /dev/null +++ b/lecture-07/assets/md-f1cjOFpN.js @@ -0,0 +1 @@ +import{$ as e,E as t,W as n,_ as r,b as i,bt as a,et as o,v as s,vt as c,x as l,z as u}from"./modules/shiki-CkJq9tSf.js";import{n as d,t as f}from"./slidev/context-DnYiQGy6.js";import{t as p}from"./default-Bp68E4h0.js";var m={class:`mt-3 dl-callout`},h={__name:`slides.md__slidev_45`,setup(h){let{$slidev:g,$nav:_,$clicksContext:v,$clicks:y,$page:b,$renderContext:x,$frontmatter:S}=d();return v.setup(),(d,h)=>{let g=n(`click`);return u(),s(p,a(t(c(f)(c(S),44))),{default:e(()=>[h[1]||=r(`h1`,null,`Four ways to say two distributions differ`,-1),h[2]||=r(`div`,{class:`dl-ledger dl-ledger--formula mt-1`},[r(`table`,null,[r(`thead`,null,[r(`tr`,null,[r(`th`),r(`th`),r(`th`)])]),r(`tbody`,null,[r(`tr`,null,[r(`td`,null,`total variation`),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`normal`},`T`),r(`mi`,{mathvariant:`normal`},`V`)]),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`P`),r(`mo`,{separator:`true`},`,`),r(`mi`,null,`Q`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,null,`=`),r(`msub`,null,[r(`mrow`,null,[r(`mi`,null,`sup`),r(`mo`,null,`⁡`)]),r(`mi`,null,`x`)]),r(`mo`,{stretchy:`false`},`∣`),r(`mi`,null,`P`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`x`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,null,`−`),r(`mi`,null,`Q`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`x`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,{stretchy:`false`},`∣`)]),r(`annotation`,{encoding:`application/x-tex`},`\\mathrm{TV}(P,Q) = \\sup_x \\lvert P(x) - Q(x) \\rvert`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord mathrm`,style:{"margin-right":`0.0139em`}},`TV`)]),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mpunct`},`,`),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord mathnormal`},`Q`),r(`span`,{class:`mclose`},`)`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`=`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mop`},[r(`span`,{class:`mop`},`sup`),r(`span`,{class:`msupsub`},[r(`span`,{class:`vlist-t vlist-t2`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.0573em`}},[r(`span`,{style:{top:`-2.4559em`,"margin-right":`0.05em`}},[r(`span`,{class:`pstrut`,style:{height:`2.7em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mathnormal mtight`},`x`)])])]),r(`span`,{class:`vlist-s`},`​`)]),r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.2441em`}},[r(`span`)])])])])]),r(`span`,{class:`mopen`},`∣`),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`},`x`),r(`span`,{class:`mclose`},`)`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),r(`span`,{class:`mbin`},`−`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord mathnormal`},`Q`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`},`x`),r(`span`,{class:`mclose`},`)∣`)])])])]),r(`td`,null,`biggest single gap`)]),r(`tr`,null,[r(`td`,null,`Kullback–Leibler`),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`normal`},`K`),r(`mi`,{mathvariant:`normal`},`L`)]),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`P`),r(`mi`,{mathvariant:`normal`},`∥`),r(`mi`,null,`Q`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,null,`=`),r(`mo`,null,`∫`),r(`mi`,null,`P`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`x`),r(`mo`,{stretchy:`false`},`)`),r(`mi`,null,`log`),r(`mo`,null,`⁡`),r(`mfrac`,null,[r(`mrow`,null,[r(`mi`,null,`P`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`x`),r(`mo`,{stretchy:`false`},`)`)]),r(`mrow`,null,[r(`mi`,null,`Q`),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`x`),r(`mo`,{stretchy:`false`},`)`)])]),r(`mtext`,null,` `),r(`mi`,null,`d`),r(`mi`,null,`x`)]),r(`annotation`,{encoding:`application/x-tex`},`\\mathrm{KL}(P \\Vert Q) = \\int P(x) \\log \\frac{P(x)}{Q(x)}\\,dx`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord mathrm`},`KL`)]),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mord`},`∥`),r(`span`,{class:`mord mathnormal`},`Q`),r(`span`,{class:`mclose`},`)`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`=`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1.53em`,"vertical-align":`-0.52em`}}),r(`span`,{class:`mop op-symbol small-op`,style:{"margin-right":`0.1945em`,position:`relative`,top:`-0.0006em`}},`∫`),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`},`x`),r(`span`,{class:`mclose`},`)`),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mop`},[l(`lo`),r(`span`,{style:{"margin-right":`0.0139em`}},`g`)]),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mopen nulldelimiter`}),r(`span`,{class:`mfrac`},[r(`span`,{class:`vlist-t vlist-t2`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`1.01em`}},[r(`span`,{style:{top:`-2.655em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},[r(`span`,{class:`mord mathnormal mtight`},`Q`),r(`span`,{class:`mopen mtight`},`(`),r(`span`,{class:`mord mathnormal mtight`},`x`),r(`span`,{class:`mclose mtight`},`)`)])])]),r(`span`,{style:{top:`-3.23em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),r(`span`,{style:{top:`-3.485em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},[r(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mopen mtight`},`(`),r(`span`,{class:`mord mathnormal mtight`},`x`),r(`span`,{class:`mclose mtight`},`)`)])])])]),r(`span`,{class:`vlist-s`},`​`)]),r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.52em`}},[r(`span`)])])])]),r(`span`,{class:`mclose nulldelimiter`})]),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord mathnormal`},`d`),r(`span`,{class:`mord mathnormal`},`x`)])])])]),r(`td`,null,[l(`asymmetric; `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`normal`},`∞`)]),r(`annotation`,{encoding:`application/x-tex`},`\\infty`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.4306em`}}),r(`span`,{class:`mord`},`∞`)])])]),l(` if `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`Q`)]),r(`annotation`,{encoding:`application/x-tex`},`Q`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.8778em`,"vertical-align":`-0.1944em`}}),r(`span`,{class:`mord mathnormal`},`Q`)])])]),l(` misses`)])]),r(`tr`,null,[r(`td`,null,`Jensen–Shannon`),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`normal`},`J`),r(`mi`,{mathvariant:`normal`},`S`)]),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`P`),r(`mo`,{separator:`true`},`,`),r(`mi`,null,`Q`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,null,`=`),r(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[r(`mfrac`,null,[r(`mn`,null,`1`),r(`mn`,null,`2`)])]),r(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`(`),r(`mrow`,null,[r(`mi`,{mathvariant:`normal`},`K`),r(`mi`,{mathvariant:`normal`},`L`)]),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`P`),r(`mi`,{mathvariant:`normal`},`∥`),r(`mi`,null,`M`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,null,`+`),r(`mrow`,null,[r(`mi`,{mathvariant:`normal`},`K`),r(`mi`,{mathvariant:`normal`},`L`)]),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`Q`),r(`mi`,{mathvariant:`normal`},`∥`),r(`mi`,null,`M`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,{fence:`false`,stretchy:`true`,minsize:`1.2em`,maxsize:`1.2em`},`)`)]),r(`annotation`,{encoding:`application/x-tex`},`\\mathrm{JS}(P,Q) = \\tfrac{1}{2}\\big(\\mathrm{KL}(P\\Vert M) + \\mathrm{KL}(Q\\Vert M)\\big)`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord mathrm`},`JS`)]),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mpunct`},`,`),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord mathnormal`},`Q`),r(`span`,{class:`mclose`},`)`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`=`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1.2em`,"vertical-align":`-0.35em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mopen nulldelimiter`}),r(`span`,{class:`mfrac`},[r(`span`,{class:`vlist-t vlist-t2`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.8451em`}},[r(`span`,{style:{top:`-2.655em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},[r(`span`,{class:`mord mtight`},`2`)])])]),r(`span`,{style:{top:`-3.23em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),r(`span`,{style:{top:`-3.394em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},[r(`span`,{class:`mord mtight`},`1`)])])])]),r(`span`,{class:`vlist-s`},`​`)]),r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.345em`}},[r(`span`)])])])]),r(`span`,{class:`mclose nulldelimiter`})]),r(`span`,{class:`mord`},[r(`span`,{class:`delimsizing size1`},`(`)]),r(`span`,{class:`mord`},[r(`span`,{class:`mord mathrm`},`KL`)]),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mord`},`∥`),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.109em`}},`M`),r(`span`,{class:`mclose`},`)`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),r(`span`,{class:`mbin`},`+`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1.2em`,"vertical-align":`-0.35em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord mathrm`},`KL`)]),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`},`Q`),r(`span`,{class:`mord`},`∥`),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.109em`}},`M`),r(`span`,{class:`mclose`},`)`),r(`span`,{class:`mord`},[r(`span`,{class:`delimsizing size1`},`)`)])])])])]),r(`td`,null,[l(`symmetric, `),r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mi`,null,`M`),r(`mo`,null,`=`),r(`mstyle`,{scriptlevel:`0`,displaystyle:`false`},[r(`mfrac`,null,[r(`mrow`,null,[r(`mi`,null,`P`),r(`mo`,null,`+`),r(`mi`,null,`Q`)]),r(`mn`,null,`2`)])])]),r(`annotation`,{encoding:`application/x-tex`},`M = \\tfrac{P+Q}{2}`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`0.6833em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.109em`}},`M`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`=`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1.2694em`,"vertical-align":`-0.345em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mopen nulldelimiter`}),r(`span`,{class:`mfrac`},[r(`span`,{class:`vlist-t vlist-t2`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.9244em`}},[r(`span`,{style:{top:`-2.655em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},[r(`span`,{class:`mord mtight`},`2`)])])]),r(`span`,{style:{top:`-3.23em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`frac-line`,style:{"border-bottom-width":`0.04em`}})]),r(`span`,{style:{top:`-3.4461em`}},[r(`span`,{class:`pstrut`,style:{height:`3em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},[r(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mbin mtight`},`+`),r(`span`,{class:`mord mathnormal mtight`},`Q`)])])])]),r(`span`,{class:`vlist-s`},`​`)]),r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.345em`}},[r(`span`)])])])]),r(`span`,{class:`mclose nulldelimiter`})])])])])])]),r(`tr`,null,[r(`td`,null,`earth-mover`),r(`td`,null,[r(`span`,{class:`katex`},[r(`span`,{class:`katex-mathml`},[r(`math`,{xmlns:`http://www.w3.org/1998/Math/MathML`},[r(`semantics`,null,[r(`mrow`,null,[r(`mrow`,null,[r(`mi`,{mathvariant:`normal`},`E`),r(`mi`,{mathvariant:`normal`},`M`)]),r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`P`),r(`mo`,{separator:`true`},`,`),r(`mi`,null,`Q`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,null,`=`),r(`msub`,null,[r(`mrow`,null,[r(`mi`,null,`inf`),r(`mo`,null,`⁡`)]),r(`mi`,null,`γ`)]),r(`msub`,null,[r(`mi`,{mathvariant:`double-struck`},`E`),r(`mrow`,null,[r(`mo`,{stretchy:`false`},`(`),r(`mi`,null,`u`),r(`mo`,{separator:`true`},`,`),r(`mi`,null,`v`),r(`mo`,{stretchy:`false`},`)`),r(`mo`,null,`∼`),r(`mi`,null,`γ`)])]),r(`mo`,{stretchy:`false`},`∥`),r(`mi`,null,`u`),r(`mo`,null,`−`),r(`mi`,null,`v`),r(`mo`,{stretchy:`false`},`∥`)]),r(`annotation`,{encoding:`application/x-tex`},`\\mathrm{EM}(P,Q) = \\inf_{\\gamma} \\mathbb{E}_{(u,v)\\sim\\gamma} \\lVert u - v \\rVert`)])])]),r(`span`,{class:`katex-html`,"aria-hidden":`true`},[r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord mathrm`},`EM`)]),r(`span`,{class:`mopen`},`(`),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.1389em`}},`P`),r(`span`,{class:`mpunct`},`,`),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord mathnormal`},`Q`),r(`span`,{class:`mclose`},`)`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}}),r(`span`,{class:`mrel`},`=`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2778em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1.1052em`,"vertical-align":`-0.3552em`}}),r(`span`,{class:`mop`},[r(`span`,{class:`mop`},[l(`in`),r(`span`,{style:{"margin-right":`0.0778em`}},`f`)]),r(`span`,{class:`msupsub`},[r(`span`,{class:`vlist-t vlist-t2`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.1514em`}},[r(`span`,{style:{top:`-2.55em`,"margin-right":`0.05em`}},[r(`span`,{class:`pstrut`,style:{height:`2.7em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},[r(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0556em`}},`γ`)])])])]),r(`span`,{class:`vlist-s`},`​`)]),r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.2861em`}},[r(`span`)])])])])]),r(`span`,{class:`mspace`,style:{"margin-right":`0.1667em`}}),r(`span`,{class:`mord`},[r(`span`,{class:`mord mathbb`},`E`),r(`span`,{class:`msupsub`},[r(`span`,{class:`vlist-t vlist-t2`},[r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.3448em`}},[r(`span`,{style:{top:`-2.5198em`,"margin-left":`0em`,"margin-right":`0.05em`}},[r(`span`,{class:`pstrut`,style:{height:`2.7em`}}),r(`span`,{class:`katex-sizing reset-size6 size3 mtight`},[r(`span`,{class:`mord mtight`},[r(`span`,{class:`mopen mtight`},`(`),r(`span`,{class:`mord mathnormal mtight`},`u`),r(`span`,{class:`mpunct mtight`},`,`),r(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0359em`}},`v`),r(`span`,{class:`mclose mtight`},`)`),r(`span`,{class:`mrel mtight`},`∼`),r(`span`,{class:`mord mathnormal mtight`,style:{"margin-right":`0.0556em`}},`γ`)])])])]),r(`span`,{class:`vlist-s`},`​`)]),r(`span`,{class:`vlist-r`},[r(`span`,{class:`vlist`,style:{height:`0.3552em`}},[r(`span`)])])])])]),r(`span`,{class:`mopen`},`∥`),r(`span`,{class:`mord mathnormal`},`u`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}}),r(`span`,{class:`mbin`},`−`),r(`span`,{class:`mspace`,style:{"margin-right":`0.2222em`}})]),r(`span`,{class:`katex-base`},[r(`span`,{class:`katex-strut`,style:{height:`1em`,"vertical-align":`-0.25em`}}),r(`span`,{class:`mord mathnormal`,style:{"margin-right":`0.0359em`}},`v`),r(`span`,{class:`mclose`},`∥`)])])])]),r(`td`,null,`cheapest way to move the mass`)])])])],-1),o((u(),i(`div`,m,[...h[0]||=[r(`p`,null,[l(`Only the last one knows about `),r(`strong`,null,`distance`),l(`. The other three ask how much mass is misplaced, never how far it has to go.`)],-1)]])),[[g]])]),_:1},16)}}};export{h as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-kcPGYvYV.js b/lecture-07/assets/md-kcPGYvYV.js new file mode 100644 index 0000000000000000000000000000000000000000..016b93d8f3f46d6609bb9095462c638a34f907fe --- /dev/null +++ b/lecture-07/assets/md-kcPGYvYV.js @@ -0,0 +1,7 @@ +import{$ as e,E as t,M as n,S as r,W as i,_ as a,b as o,bt as s,et as c,v as l,vt as u,x as d,z as f}from"./modules/shiki-CkJq9tSf.js";import{n as p,t as m}from"./slidev/context-DnYiQGy6.js";import{t as h}from"./default-Bp68E4h0.js";import{t as g}from"./slidev/VClicks-C3WADcJq.js";import{t as _}from"./slidev/CodeBlockWrapper-DfjXYRxv.js";var v={class:`dl-tight mt-3`},y={class:`mt-3 dl-callout`},b={__name:`slides.md__slidev_57`,setup(b){let{$slidev:x,$nav:S,$clicksContext:C,$clicks:w,$page:T,$renderContext:E,$frontmatter:D}=p();return C.setup(),(p,b)=>{let x=_,S=g,C=i(`click`);return f(),l(h,s(t(u(m)(u(D),56))),{default:e(()=>[b[3]||=a(`h1`,null,`Three lines, and no adversary`,-1),r(x,n({lines:!0},{title:``,ranges:[`all`,`2-4`,`6-7`,`all`]}),{default:e(()=>[...b[0]||=[a(`pre`,{class:`shiki shiki-themes vitesse-dark vitesse-light slidev-code`,style:{"--shiki-dark":`#dbd7caee`,"--shiki-light":`#393a34`,"--shiki-dark-bg":`#121212`,"--shiki-light-bg":`#ffffff`}},[a(`code`,{class:`language-python`},[a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#4D9375`,"--shiki-light":`#1E754F`}},`for`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` x0 `),a(`span`,{style:{"--shiki-dark":`#4D9375`,"--shiki-light":`#1E754F`}},`in`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` loader`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`:`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` t `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` torch`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`randint`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` T`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},` (`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`x0`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`size`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`0`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),),`),a(`span`,{style:{"--shiki-dark":`#BD976A`,"--shiki-light":`#B07D48`}},` device`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`dev`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # a level per example`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` eps `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` torch`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`randn_like`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`x0`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` xt `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` ab`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`[`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`t`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`].`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`sqrt`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` *`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` x0 `),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},`+`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},` (`),a(`span`,{style:{"--shiki-dark":`#4C9A91`,"--shiki-light":`#2F798A`}},`1`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` -`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` ab`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`[`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`t`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`]).`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`sqrt`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),a(`span`,{style:{"--shiki-dark":`#CB7676`,"--shiki-light":`#AB5959`}},` *`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` eps `),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},`# the closed form`)]),d(` +`),a(`span`,{class:`line`}),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` loss `),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`=`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` F`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`mse_loss`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`model`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`(`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`xt`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`,`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` t`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`),`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` eps`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`)`),a(`span`,{style:{"--shiki-dark":`#758575DD`,"--shiki-light":`#A0ADA0`}},` # that is the whole loss`)]),d(` +`),a(`span`,{class:`line`},[a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},` opt`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`zero_grad`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`; loss`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`backward`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`; opt`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`.`),a(`span`,{style:{"--shiki-dark":`#DBD7CAEE`,"--shiki-light":`#393A34`}},`step`),a(`span`,{style:{"--shiki-dark":`#666666`,"--shiki-light":`#999999`}},`()`)])])],-1)]]),_:1},16),a(`div`,v,[r(S,null,{default:e(()=>[...b[1]||=[a(`ul`,null,[a(`li`,null,[a(`strong`,null,`One`),d(` network, `),a(`strong`,null,`one`),d(` optimiser, `),a(`strong`,null,`one`),d(` regression loss`)]),a(`li`,null,[d(`Compare with slide 36: no second model, no label flip, no `),a(`code`,null,`detach`),d(`, no alternation`)]),a(`li`,null,[d(`And the loss `),a(`strong`,null,`goes down`),d(`. It means something, and you can stop when it stops`)])],-1)]]),_:1})]),c((f(),o(`div`,y,[...b[2]||=[a(`p`,null,`This is the answer to the whole of section 04. Not a better adversary — no adversary.`,-1)]])),[[C]])]),_:1},16)}}};export{b as default}; \ No newline at end of file diff --git a/lecture-07/assets/md-ta7B1P6z.js b/lecture-07/assets/md-ta7B1P6z.js new file mode 100644 index 0000000000000000000000000000000000000000..152b6870ecdda893fdfe1182fe21c44abbd8a159 --- /dev/null +++ b/lecture-07/assets/md-ta7B1P6z.js @@ -0,0 +1 @@ +import{$ as e,E as t,H as n,St as r,_ as i,b as a,bt as o,v as s,vt as c,w as l,y as u,z as d}from"./modules/shiki-CkJq9tSf.js";import{t as f}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as p,t as m}from"./slidev/context-DnYiQGy6.js";var h={class:`slidev-layout dl-title`},g={class:`dl-title__eyebrow`},_={key:0,class:`dl-title__code`},v={key:1,class:`dl-title__lecture`},y={class:`dl-title__body`},b={class:`dl-title__meta`},x={key:0,class:`dl-title__author`},S=[`href`],C={key:2,class:`dl-title__date`},w=f(l({__name:`title`,props:{courseCode:{},lecture:{},author:{},email:{},date:{}},setup(e){let{$slidev:t,$nav:o,$clicksContext:s,$clicks:c,$page:l,$renderContext:f,$frontmatter:m}=p(),w=e;return(e,t)=>(d(),a(`div`,h,[i(`div`,g,[w.courseCode?(d(),a(`span`,_,r(w.courseCode),1)):u(`v-if`,!0),w.lecture?(d(),a(`span`,v,`Lecture `+r(w.lecture),1)):u(`v-if`,!0)]),i(`div`,y,[n(e.$slots,`default`,{},void 0,!0)]),t[0]||=i(`div`,{class:`dl-rule dl-title__rule`},null,-1),i(`div`,b,[w.author?(d(),a(`div`,x,r(w.author),1)):u(`v-if`,!0),w.email?(d(),a(`a`,{key:1,href:`mailto:${w.email}`,class:`dl-title__email`},r(w.email),9,S)):u(`v-if`,!0),w.date?(d(),a(`div`,C,r(w.date),1)):u(`v-if`,!0)])]))}}),[[`__scopeId`,`data-v-dc59a472`]]),T={__name:`slides.md__slidev_1`,setup(n){let{$slidev:r,$nav:a,$clicksContext:l,$clicks:u,$page:f,$renderContext:h,$frontmatter:g}=p();return l.setup(),(n,r)=>(d(),s(w,o(t(c(m)(c(g),0))),{default:e(()=>[...r[0]||=[i(`h1`,null,`Generative Models and GANs`,-1),i(`p`,null,`Everything so far has answered questions about data it was handed. Today the model has to produce the data — and the whole story is which loss you can actually compute.`,-1)]]),_:1},16))}};export{T as default}; \ No newline at end of file diff --git a/lecture-07/assets/modules/file-saver-BpWusTEB.js b/lecture-07/assets/modules/file-saver-BpWusTEB.js new file mode 100644 index 0000000000000000000000000000000000000000..d51ba687ddb2a77bc46265ef5845f6be048ed538 --- /dev/null +++ b/lecture-07/assets/modules/file-saver-BpWusTEB.js @@ -0,0 +1 @@ +import{t as e}from"../rolldown-runtime-hePW80VL.js";var t=e(((e,t)=>{(function(t,n){typeof define==`function`&&define.amd?define([],n):e===void 0?(n(),t.FileSaver={exports:{}}.exports):n()})(e,function(){function e(e,t){return t===void 0?t={autoBom:!1}:typeof t!=`object`&&(console.warn(`Deprecated: Expected third argument to be a object`),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function n(e,t,n){var r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){s(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function r(e){var t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function i(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{var t=document.createEvent(`MouseEvents`);t.initMouseEvent(`click`,!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:void 0,o=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=a.saveAs||(typeof window!=`object`||window!==a?function(){}:`download`in HTMLAnchorElement.prototype&&!o?function(e,t,o){var s=a.URL||a.webkitURL,c=document.createElement(`a`);t=t||e.name||`download`,c.download=t,c.rel=`noopener`,typeof e==`string`?(c.href=e,c.origin===location.origin?i(c):r(c.href)?n(e,t,o):i(c,c.target=`_blank`)):(c.href=s.createObjectURL(e),setTimeout(function(){s.revokeObjectURL(c.href)},4e4),setTimeout(function(){i(c)},0))}:`msSaveOrOpenBlob`in navigator?function(t,a,o){if(a=a||t.name||`download`,typeof t!=`string`)navigator.msSaveOrOpenBlob(e(t,o),a);else if(r(t))n(t,a,o);else{var s=document.createElement(`a`);s.href=t,s.target=`_blank`,setTimeout(function(){i(s)})}}:function(e,t,r,i){if(i||=open(``,`_blank`),i&&(i.document.title=i.document.body.innerText=`downloading...`),typeof e==`string`)return n(e,t,r);var s=e.type===`application/octet-stream`,c=/constructor/i.test(a.HTMLElement)||a.safari,l=/CriOS\/[\d]+/.test(navigator.userAgent);if((l||s&&c||o)&&typeof FileReader<`u`){var u=new FileReader;u.onloadend=function(){var e=u.result;e=l?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),i?i.location.href=e:location=e,i=null},u.readAsDataURL(e)}else{var d=a.URL||a.webkitURL,f=d.createObjectURL(e);i?i.location=f:location.href=f,i=null,setTimeout(function(){d.revokeObjectURL(f)},4e4)}});a.saveAs=s.saveAs=s,t!==void 0&&(t.exports=s)})}));export{t}; \ No newline at end of file diff --git a/lecture-07/assets/modules/shiki-BrmBd2_v.css b/lecture-07/assets/modules/shiki-BrmBd2_v.css new file mode 100644 index 0000000000000000000000000000000000000000..be27a11806f53e2a186afcc8baba6c680d0e3ce3 --- /dev/null +++ b/lecture-07/assets/modules/shiki-BrmBd2_v.css @@ -0,0 +1 @@ +.shiki-magic-move-container{white-space:pre;position:relative}.shiki-magic-move-line-number{opacity:.3;-webkit-user-select:none;user-select:none}.shiki-magic-move-item{transition:color var(--smm-duration,.5s) var(--smm-easing,"ease");display:inline-block}.shiki-magic-move-enter-active,.shiki-magic-move-leave-active,.shiki-magic-move-move{transition:all var(--smm-duration,.5s) var(--smm-easing,"ease")}.shiki-magic-move-container-resize,.shiki-magic-move-container-restyle{transition:all var(--smm-duration,.5s) var(--smm-easing,"ease");transition-delay:calc(var(--smm-duration,.5s)*var(--smm-delay-container,1))}.shiki-magic-move-move{transition-delay:calc(var(--smm-duration,.5s)*var(--smm-delay-move,1) + var(--smm-stagger,0));z-index:1}.shiki-magic-move-enter-active{transition-delay:calc(var(--smm-duration,.5s)*var(--smm-delay-enter,1) + var(--smm-stagger,0));z-index:1}.shiki-magic-move-leave-active{transition-delay:calc(var(--smm-duration,.5s)*var(--smm-delay-leave,1) + var(--smm-stagger,0))}.shiki-magic-move-enter-from,.shiki-magic-move-leave-to{opacity:0}br.shiki-magic-move-leave-active{display:none}.resize-observer[data-v-b329ee4c]{z-index:-1;pointer-events:none;opacity:0;background-color:#0000;border:none;width:100%;height:100%;display:block;position:absolute;top:0;left:0;overflow:hidden}.resize-observer[data-v-b329ee4c] object{pointer-events:none;z-index:-1;width:100%;height:100%;display:block;position:absolute;top:0;left:0;overflow:hidden}.v-popper__popper{z-index:10000;outline:none;top:0;left:0}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;pointer-events:none;transition:opacity .15s,visibility .15s}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{width:100%;height:100%;display:none;position:absolute;top:0;left:0}.v-popper__inner{box-sizing:border-box;position:relative;overflow-y:auto}.v-popper__inner>div{z-index:1;max-width:inherit;max-height:inherit;position:relative}.v-popper__arrow-container{width:10px;height:10px;position:absolute}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;width:0;height:0;position:absolute;top:0;left:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-bottom-color:#0000!important;border-left-color:#0000!important;border-right-color:#0000!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-top-color:#0000!important;border-left-color:#0000!important;border-right-color:#0000!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-top-color:#0000!important;border-bottom-color:#0000!important;border-left-color:#0000!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:#0000!important;border-bottom-color:#0000!important;border-right-color:#0000!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{color:#fff;background:#000c;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{color:#000;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}:root{--twoslash-border-color:#8888;--twoslash-underline-color:currentColor;--twoslash-highlighted-border:#c37d0d50;--twoslash-highlighted-bg:#c37d0d20;--twoslash-popup-bg:#f8f8f8;--twoslash-popup-color:inherit;--twoslash-popup-shadow:#00000014 0px 1px 4px;--twoslash-docs-color:#888;--twoslash-docs-font:sans-serif;--twoslash-code-font:inherit;--twoslash-code-font-size:1em;--twoslash-matched-color:inherit;--twoslash-unmatched-color:#888;--twoslash-cursor-color:#8888;--twoslash-error-color:#d45656;--twoslash-error-bg:#d4565620;--twoslash-warn-color:#c37d0d;--twoslash-warn-bg:#c37d0d20;--twoslash-tag-color:#3772cf;--twoslash-tag-bg:#3772cf20;--twoslash-tag-warn-color:var(--twoslash-warn-color);--twoslash-tag-warn-bg:var(--twoslash-warn-bg);--twoslash-tag-annotate-color:#1ba673;--twoslash-tag-annotate-bg:#1ba67320}@media (prefers-reduced-motion:reduce){.twoslash *{transition:none!important}}.twoslash:hover .twoslash-hover{border-color:var(--twoslash-underline-color)}.twoslash .twoslash-hover{border-bottom:1px dotted #0000;transition:border-color .3s;position:relative}.twoslash .twoslash-popup-container{opacity:0;background:var(--twoslash-popup-bg);color:var(--twoslash-popup-color);border:1px solid var(--twoslash-border-color);pointer-events:none;z-index:10;-webkit-user-select:none;user-select:none;text-align:left;box-shadow:var(--twoslash-popup-shadow);border-radius:4px;flex-direction:column;transition:opacity .3s;display:inline-flex;position:absolute;transform:translateY(1.1em)}.twoslash .twoslash-query-persisted .twoslash-popup-container{z-index:9;transform:translateY(1.5em)}.twoslash .twoslash-hover:hover .twoslash-popup-container,.twoslash .twoslash-error-hover:hover .twoslash-popup-container,.twoslash .twoslash-query-persisted .twoslash-popup-container,.twoslash .twoslash-query-line .twoslash-popup-container{opacity:1;pointer-events:auto}.twoslash .twoslash-popup-container:hover{-webkit-user-select:auto;user-select:auto}.twoslash .twoslash-popup-arrow{border-top:1px solid var(--twoslash-border-color);border-right:1px solid var(--twoslash-border-color);background:var(--twoslash-popup-bg);pointer-events:none;width:6px;height:6px;position:absolute;top:-4px;left:1em;transform:rotate(-45deg)}.twoslash .twoslash-popup-code,.twoslash .twoslash-popup-error,.twoslash .twoslash-popup-docs{padding:6px 8px!important}.twoslash .twoslash-popup-code{font-family:var(--twoslash-code-font);font-size:var(--twoslash-code-font-size)}.twoslash .twoslash-popup-docs{color:var(--twoslash-docs-color);font-family:var(--twoslash-docs-font);border-top:1px solid var(--twoslash-border-color);font-size:.8em}.twoslash .twoslash-popup-error{color:var(--twoslash-error-color);background-color:var(--twoslash-error-bg);font-family:var(--twoslash-docs-font);font-size:.8em}.twoslash .twoslash-popup-docs-tags{font-family:var(--twoslash-docs-font);flex-direction:column;display:flex}.twoslash .twoslash-popup-docs-tags,.twoslash .twoslash-popup-docs-tag-name{margin-right:.5em}.twoslash .twoslash-popup-docs-tag-name{font-family:var(--twoslash-code-font)}.twoslash .twoslash-query-line .twoslash-popup-container{margin-bottom:1.4em;position:relative;transform:translateY(.6em)}.twoslash .twoslash-error-line{background-color:var(--twoslash-error-bg);border-left:3px solid var(--twoslash-error-color);color:var(--twoslash-error-color);width:max-content;min-width:100%;margin:.2em 0;padding:6px 12px;position:relative}.twoslash .twoslash-error-line.twoslash-error-level-warning{background-color:var(--twoslash-warn-bg);border-left:3px solid var(--twoslash-warn-color);color:var(--twoslash-warn-color)}.twoslash .twoslash-error{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%206%203'%20enable-background%3D'new%200%200%206%203'%20height%3D'3'%20width%3D'6'%3E%3Cg%20fill%3D'%23c94824'%3E%3Cpolygon%20points%3D'5.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0'%2F%3E%3Cpolygon%20points%3D'4%2C0%206%2C2%206%2C0.6%205.4%2C0'%2F%3E%3Cpolygon%20points%3D'0%2C2%201%2C3%202.4%2C3%200%2C0.6'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 0 100% repeat-x;padding-bottom:2px}.twoslash .twoslash-error.twoslash-error-level-warning{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%206%203'%20enable-background%3D'new%200%200%206%203'%20height%3D'3'%20width%3D'6'%3E%3Cg%20fill%3D'%23c37d0d'%3E%3Cpolygon%20points%3D'5.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0'%2F%3E%3Cpolygon%20points%3D'4%2C0%206%2C2%206%2C0.6%205.4%2C0'%2F%3E%3Cpolygon%20points%3D'0%2C2%201%2C3%202.4%2C3%200%2C0.6'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 0 100% repeat-x;padding-bottom:2px}.twoslash .twoslash-completion-cursor{position:relative}.twoslash .twoslash-completion-cursor .twoslash-completion-list{-webkit-user-select:none;user-select:none;z-index:8;box-shadow:var(--twoslash-popup-shadow);background:var(--twoslash-popup-bg);border:1px solid var(--twoslash-border-color);margin:3px 0 0 -1px;display:inline-block;position:absolute;top:0;left:0;transform:translateY(1.2em)}.twoslash-completion-list{flex-direction:column;gap:4px;width:240px;padding:4px;font-size:.8rem;display:flex}.twoslash-completion-list:hover{-webkit-user-select:auto;user-select:auto}.twoslash-completion-list:before{background-color:var(--twoslash-cursor-color);content:" ";width:2px;height:1.4em;position:absolute;top:-1.6em;left:-1px}.twoslash-completion-list li{align-items:center;gap:.25em;line-height:1em;display:flex;overflow:hidden}.twoslash-completion-list li span.twoslash-completions-unmatched{color:var(--twoslash-unmatched-color)}.twoslash-completion-list .deprecated{opacity:.5;text-decoration:line-through}.twoslash-completion-list li span.twoslash-completions-matched{color:var(--twoslash-matched-color)}.twoslash-highlighted{background-color:var(--twoslash-highlighted-bg);border:1px solid var(--twoslash-highlighted-border);border-radius:4px;margin:-1px -3px;padding:1px 2px}.twoslash-completion-list .twoslash-completions-icon{color:var(--twoslash-unmatched-color);flex:none;width:1em}.twoslash .twoslash-tag-line{background-color:var(--twoslash-tag-bg);border-left:3px solid var(--twoslash-tag-color);color:var(--twoslash-tag-color);align-items:center;gap:.3em;width:max-content;min-width:100%;margin:.2em 0;padding:6px 10px;display:flex;position:relative}.twoslash .twoslash-tag-line .twoslash-tag-icon{width:1.1em;color:inherit}.twoslash .twoslash-tag-line.twoslash-tag-error-line{background-color:var(--twoslash-error-bg);border-left:3px solid var(--twoslash-error-color);color:var(--twoslash-error-color)}.twoslash .twoslash-tag-line.twoslash-tag-warn-line{background-color:var(--twoslash-tag-warn-bg);border-left:3px solid var(--twoslash-tag-warn-color);color:var(--twoslash-tag-warn-color)}.twoslash .twoslash-tag-line.twoslash-tag-annotate-line{background-color:var(--twoslash-tag-annotate-bg);border-left:3px solid var(--twoslash-tag-annotate-color);color:var(--twoslash-tag-annotate-color)}:root{--twoslash-popup-bg:var(--vp-c-bg,inherit);--twoslash-popup-color:var(--vp-c-text-1);--twoslash-docs-color:var(--vp-c-text-1);--twoslash-docs-font:var(--vp-font-family-base);--twoslash-code-font:var(--vp-font-family-mono);--twoslash-code-size:var(--vp-code-font-size);--twoslash-underline-color:#8888;--twoslash-border-color:var(--vp-c-border);--twoslash-cursor-color:var(--vp-c-brand);--twoslash-matched-color:var(--vp-c-brand);--twoslash-unmatched-color:var(--vp-c-text-2)}.v-popper--theme-twoslash{z-index:calc(var(--vp-z-index-local-nav) - 1)}.v-popper--theme-twoslash .v-popper__inner{background:var(--twoslash-popup-bg);color:var(--twoslash-popup-color);border-color:var(--twoslash-border-color)}.v-popper--theme-twoslash .v-popper__arrow-outer{border-color:var(--twoslash-border-color)}.v-popper--theme-twoslash .v-popper__arrow-inner{border-color:var(--twoslash-popup-bg)}.twoslash-popup-container{transform:translateY(1.5em)}.twoslash-query-persisted .twoslash-popup-container{transform:translateY(1.8em)}.twoslash .v-popper{display:inline-block}.twoslash-completion-list .twoslash-completions-icon{color:var(--twoslash-unmatched-color)!important}.twoslash-floating .twoslash-popup-code{width:fit-content;min-width:100%;max-width:600px;line-height:var(--vp-code-line-height);font-size:var(--twoslash-code-size);white-space:pre-wrap;padding:6px 12px;transition:color .5s;display:block}.twoslash-floating .twoslash-popup-docs,.twoslash-floating .twoslash-popup-error{font-family:var(--twoslash-docs-font);text-wrap:balance;max-width:700px;max-height:500px;font-size:.9em;overflow:hidden auto;padding:12px!important}.twoslash-floating .twoslash-popup-docs p:first-child,.twoslash-floating .twoslash-popup-error p:first-child{margin-top:0}.twoslash-floating .twoslash-popup-docs p:last-child,.twoslash-floating .twoslash-popup-error p:last-child{margin-bottom:0}.twoslash-floating .twoslash-popup-docs{border-top:1px solid var(--twoslash-border-color);color:var(--twoslash-docs-color)}.twoslash-floating .twoslash-popup-error{color:var(--twoslash-error-color)}.twoslash-floating .twoslash-popup-error.twoslash-error-level-warning{color:var(--twoslash-warn-color)}.twoslash-floating .twoslash-popup-docs p,.twoslash-floating .twoslash-popup-error p{text-wrap:balance;margin:6px 0}.twoslash-floating .twoslash-popup-docs pre .twoslash-floating .twoslash-popup-error pre{background-color:var(--vp-code-block-bg);border-radius:8px;margin:6px -2px;padding:12px;overflow-x:auto}.twoslash-floating .twoslash-popup-docs-tags{flex-direction:column;display:flex;padding:8px 12px!important}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{font-family:var(--twoslash-code-font);color:var(--twoslash-unmatched-color);margin-right:.5em}.twoslash-completion-cursor{background:var(--twoslash-cursor-color);-webkit-user-select:none;user-select:none;width:2px;height:1.2em;margin-bottom:-.2em;display:inline-block}.twoslash-floating.twoslash-completion .v-popper__arrow-container{display:none}.twoslash-floating.twoslash-completion .twoslash-completion-list{font-family:var(--twoslash-code-font);padding:6px;font-size:var(--twoslash-code-size)!important}.twoslash-floating.twoslash-completion .twoslash-completion-list li{padding:3px 0}.twoslash-error:empty,.twoslash-error-empty{vertical-align:middle;min-width:.55em;min-height:1.2em;display:inline-block} diff --git a/lecture-07/assets/modules/shiki-CkJq9tSf.js b/lecture-07/assets/modules/shiki-CkJq9tSf.js new file mode 100644 index 0000000000000000000000000000000000000000..66bba9a2b31ebbb407582bf32182f39de642607f --- /dev/null +++ b/lecture-07/assets/modules/shiki-CkJq9tSf.js @@ -0,0 +1,10 @@ +import{n as e}from"../rolldown-runtime-hePW80VL.js";function t(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return e=>e in t}var n={},r=[],i=()=>{},a=()=>!1,o=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),s=e=>e.startsWith(`onUpdate:`),c=Object.assign,l=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},u=Object.prototype.hasOwnProperty,d=(e,t)=>u.call(e,t),f=Array.isArray,p=e=>C(e)===`[object Map]`,m=e=>C(e)===`[object Set]`,h=e=>C(e)===`[object Date]`,g=e=>C(e)===`[object RegExp]`,_=e=>typeof e==`function`,v=e=>typeof e==`string`,y=e=>typeof e==`symbol`,b=e=>typeof e==`object`&&!!e,x=e=>(b(e)||_(e))&&_(e.then)&&_(e.catch),S=Object.prototype.toString,C=e=>S.call(e),w=e=>C(e).slice(8,-1),T=e=>C(e)===`[object Object]`,E=e=>v(e)&&e!==`NaN`&&e[0]!==`-`&&``+parseInt(e,10)===e,D=t(`,key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted`),ee=t(`bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo`),te=e=>{let t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},O=/-\w/g,k=te(e=>e.replace(O,e=>e.slice(1).toUpperCase())),ne=/\B([A-Z])/g,A=te(e=>e.replace(ne,`-$1`).toLowerCase()),re=te(e=>e.charAt(0).toUpperCase()+e.slice(1)),j=te(e=>e?`on${re(e)}`:``),M=(e,t)=>!Object.is(e,t),ie=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},oe=e=>{let t=parseFloat(e);return isNaN(t)?e:t},se=e=>{let t=v(e)?Number(e):NaN;return isNaN(t)?e:t},ce,le=()=>ce||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{};function ue(e,t){return e+JSON.stringify(t,(e,t)=>typeof t==`function`?t.toString():t)}var de=t(`Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol`);function fe(e){if(f(e)){let t={};for(let n=0;n{if(e){let n=e.split(me);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function _e(e){let t=``;if(v(e))t=e;else if(f(e))for(let n=0;nje(e,t))}var Ne=e=>!!(e&&e.__v_isRef===!0),Pe=e=>v(e)?e:e==null?``:f(e)||b(e)&&(e.toString===S||!_(e.toString))?Ne(e)?Pe(e.value):JSON.stringify(e,Fe,2):String(e),Fe=(e,t)=>Ne(t)?Fe(e,t.value):p(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[Ie(t,r)+` =>`]=n,e),{})}:m(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>Ie(e))}:y(t)?Ie(t):b(t)&&!f(t)&&!T(t)?String(t):t,Ie=(e,t=``)=>y(e)?`Symbol(${e.description??t})`:e;function Le(e){return e==null?`initial`:typeof e==`string`?e===``?` `:e:String(e)}var N,Re=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!e&&N&&(N.active?(this.parent=N,this.index=(N.scopes||(N.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes){let n=this.scopes.slice();for(e=0,t=n.length;e0&&--this._on===0){if(N===this)N=this.prevScope;else{let e=N;for(;e;){if(e.prevScope===this){e.prevScope=this.prevScope;break}e=e.prevScope}}this.prevScope=void 0}}stop(e){if(this._active){this._active=!1;let t,n;for(t=0,n=this.effects.length;t0)return;if(Ke){let e=Ke;for(Ke=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;Ge;){let t=Ge;for(Ge=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(t){e||=t}t=n}}if(e)throw e}function Xe(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ze(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;r.version===-1?(r===n&&(n=e),et(r),tt(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function Qe(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&($e(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function $e(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===lt)||(e.globalVersion=lt,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Qe(e))))return;e.flags|=2;let t=e.dep,n=P,r=it;P=e,it=!0;try{Xe(e);let n=e.fn(e._value);(t.version===0||M(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{P=n,it=r,Ze(e),e.flags&=-3}}function et(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)et(e,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function tt(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}function nt(e,t){e.effect instanceof Ue&&(e=e.effect.fn);let n=new Ue(e);t&&c(n,t);try{n.run()}catch(e){throw n.stop(),e}let r=n.run.bind(n);return r.effect=n,r}function rt(e){e.effect.stop()}var it=!0,at=[];function ot(){at.push(it),it=!1}function st(){let e=at.pop();it=e===void 0||e}function ct(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=P;P=void 0;try{t()}finally{P=e}}}var lt=0,ut=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},dt=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!P||!it||P===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==P)t=this.activeLink=new ut(P,this),P.deps?(t.prevDep=P.depsTail,P.depsTail.nextDep=t,P.depsTail=t):P.deps=P.depsTail=t,ft(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=P.depsTail,t.nextDep=void 0,P.depsTail.nextDep=t,P.depsTail=t,P.deps===t&&(P.deps=e)}return t}trigger(e){this.version++,lt++,this.notify(e)}notify(e){Je();try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{Ye()}}};function ft(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)ft(e)}let n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}var pt=new WeakMap,mt=Symbol(``),ht=Symbol(``),gt=Symbol(``);function _t(e,t,n){if(it&&P){let t=pt.get(e);t||pt.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new dt),r.map=t,r.key=n),r.track()}}function vt(e,t,n,r,i,a){let o=pt.get(e);if(!o){lt++;return}let s=e=>{e&&e.trigger()};if(Je(),t===`clear`)o.forEach(s);else{let i=f(e),a=i&&E(n);if(i&&n===`length`){let e=Number(r);o.forEach((t,n)=>{(n===`length`||n===gt||!y(n)&&n>=e)&&s(t)})}else switch((n!==void 0||o.has(void 0))&&s(o.get(n)),a&&s(o.get(gt)),t){case`add`:i?a&&s(o.get(`length`)):(s(o.get(mt)),p(e)&&s(o.get(ht)));break;case`delete`:i||(s(o.get(mt)),p(e)&&s(o.get(ht)));break;case`set`:p(e)&&s(o.get(mt))}}Ye()}function yt(e,t){let n=pt.get(e);return n&&n.get(t)}function bt(e){let t=F(e);return t===e?t:(_t(t,`iterate`,gt),ln(e)?t:t.map(fn))}function xt(e){return _t(e=F(e),`iterate`,gt),e}function St(e,t){return cn(e)?pn(sn(e)?fn(t):t):fn(t)}var Ct={__proto__:null,[Symbol.iterator](){return wt(this,Symbol.iterator,e=>St(this,e))},concat(...e){return bt(this).concat(...e.map(e=>f(e)?bt(e):e))},entries(){return wt(this,`entries`,e=>(e[1]=St(this,e[1]),e))},every(e,t){return Et(this,`every`,e,t,void 0,arguments)},filter(e,t){return Et(this,`filter`,e,t,e=>e.map(e=>St(this,e)),arguments)},find(e,t){return Et(this,`find`,e,t,e=>St(this,e),arguments)},findIndex(e,t){return Et(this,`findIndex`,e,t,void 0,arguments)},findLast(e,t){return Et(this,`findLast`,e,t,e=>St(this,e),arguments)},findLastIndex(e,t){return Et(this,`findLastIndex`,e,t,void 0,arguments)},forEach(e,t){return Et(this,`forEach`,e,t,void 0,arguments)},includes(...e){return Ot(this,`includes`,e)},indexOf(...e){return Ot(this,`indexOf`,e)},join(e){return bt(this).join(e)},lastIndexOf(...e){return Ot(this,`lastIndexOf`,e)},map(e,t){return Et(this,`map`,e,t,void 0,arguments)},pop(){return kt(this,`pop`)},push(...e){return kt(this,`push`,e)},reduce(e,...t){return Dt(this,`reduce`,e,t)},reduceRight(e,...t){return Dt(this,`reduceRight`,e,t)},shift(){return kt(this,`shift`)},some(e,t){return Et(this,`some`,e,t,void 0,arguments)},splice(...e){return kt(this,`splice`,e)},toReversed(){return bt(this).toReversed()},toSorted(e){return bt(this).toSorted(e)},toSpliced(...e){return bt(this).toSpliced(...e)},unshift(...e){return kt(this,`unshift`,e)},values(){return wt(this,`values`,e=>St(this,e))}};function wt(e,t,n){let r=xt(e),i=r[t]();return r!==e&&!ln(e)&&(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}var Tt=Array.prototype;function Et(e,t,n,r,i,a){let o=xt(e),s=o!==e&&!ln(e),c=o[t];if(c!==Tt[t]){let t=c.apply(e,a);return s?fn(t):t}let l=n;o!==e&&(s?l=function(t,r){return n.call(this,St(e,t),r,e)}:n.length>2&&(l=function(t,r){return n.call(this,t,r,e)}));let u=c.call(o,l,r);return s&&i?i(u):u}function Dt(e,t,n,r){let i=xt(e),a=i!==e&&!ln(e),o=n,s=!1;i!==e&&(a?(s=r.length===0,o=function(t,r,i){return s&&(s=!1,t=St(e,t)),n.call(this,t,St(e,r),i,e)}):n.length>3&&(o=function(t,r,i){return n.call(this,t,r,i,e)}));let c=i[t](o,...r);return s?St(e,c):c}function Ot(e,t,n){let r=F(e);_t(r,`iterate`,gt);let i=r[t](...n);return(i===-1||i===!1)&&un(n[0])?(n[0]=F(n[0]),r[t](...n)):i}function kt(e,t,n=[]){ot(),Je();let r=F(e)[t].apply(e,n);return Ye(),st(),r}var At=t(`__proto__,__v_isRef,__isVue`),jt=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!==`arguments`&&e!==`caller`).map(e=>Symbol[e]).filter(y));function Mt(e){y(e)||(e=String(e));let t=F(this);return _t(t,`has`,e),t.hasOwnProperty(e)}var Nt=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if(t===`__v_skip`)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if(t===`__v_isReactive`)return!r;if(t===`__v_isReadonly`)return r;if(t===`__v_isShallow`)return i;if(t===`__v_raw`)return n===(r?i?$t:Qt:i?Zt:Xt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let a=f(e);if(!r){let e;if(a&&(e=Ct[t]))return e;if(t===`hasOwnProperty`)return Mt}let o=Reflect.get(e,t,I(e)?e:n);if((y(t)?jt.has(t):At(t))||(r||_t(e,`get`,t),i))return o;if(I(o)){let e=a&&E(t)?o:o.value;return r&&b(e)?rn(e):e}return b(o)?r?rn(o):tn(o):o}},Pt=class extends Nt{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],a=f(e)&&E(t);if(!this._isShallow){let e=cn(i);if(!ln(n)&&!cn(n)&&(i=F(i),n=F(n)),!a&&I(i)&&!I(n))return e||(i.value=n),!0}let o=a?Number(t)e,Vt=e=>Reflect.getPrototypeOf(e);function Ht(e,t,n){return function(...r){let i=this.__v_raw,a=F(i),o=p(a),s=e===`entries`||e===Symbol.iterator&&o,l=e===`keys`&&o,u=i[e](...r),d=n?Bt:t?pn:fn;return!t&&_t(a,`iterate`,l?ht:mt),c(Object.create(u),{next(){let{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:s?[d(e[0]),d(e[1])]:d(e),done:t}}})}}function Ut(e){return function(...t){return e===`delete`?!1:e===`clear`?void 0:this}}function Wt(e,t){let n={get(n){let r=this.__v_raw,i=F(r),a=F(n);e||(M(n,a)&&_t(i,`get`,n),_t(i,`get`,a));let{has:o}=Vt(i),s=t?Bt:e?pn:fn;if(o.call(i,n))return s(r.get(n));if(o.call(i,a))return s(r.get(a));r!==i&&r.get(n)},get size(){let t=this.__v_raw;return!e&&_t(F(t),`iterate`,mt),t.size},has(t){let n=this.__v_raw,r=F(n),i=F(t);return e||(M(t,i)&&_t(r,`has`,t),_t(r,`has`,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,a=i.__v_raw,o=F(a),s=t?Bt:e?pn:fn;return!e&&_t(o,`iterate`,mt),a.forEach((e,t)=>n.call(r,s(e),s(t),i))}};return c(n,e?{add:Ut(`add`),set:Ut(`set`),delete:Ut(`delete`),clear:Ut(`clear`)}:{add(e){let n=F(this),r=Vt(n),i=F(e),a=!t&&!ln(e)&&!cn(e)?i:e;return r.has.call(n,a)||M(e,a)&&r.has.call(n,e)||M(i,a)&&r.has.call(n,i)||(n.add(a),vt(n,`add`,a,a)),this},set(e,n){!t&&!ln(n)&&!cn(n)&&(n=F(n));let r=F(this),{has:i,get:a}=Vt(r),o=i.call(r,e);o||=(e=F(e),i.call(r,e));let s=a.call(r,e);return r.set(e,n),o?M(n,s)&&vt(r,`set`,e,n,s):vt(r,`add`,e,n),this},delete(e){let t=F(this),{has:n,get:r}=Vt(t),i=n.call(t,e);i||=(e=F(e),n.call(t,e));let a=r?r.call(t,e):void 0,o=t.delete(e);return i&&vt(t,`delete`,e,void 0,a),o},clear(){let e=F(this),t=e.size!==0,n=e.clear();return t&&vt(e,`clear`,void 0,void 0,void 0),n}}),[`keys`,`values`,`entries`,Symbol.iterator].forEach(r=>{n[r]=Ht(r,e,t)}),n}function Gt(e,t){let n=Wt(e,t);return(t,r,i)=>r===`__v_isReactive`?!e:r===`__v_isReadonly`?e:r===`__v_raw`?t:Reflect.get(d(n,r)&&r in t?n:t,r,i)}var Kt={get:Gt(!1,!1)},qt={get:Gt(!1,!0)},Jt={get:Gt(!0,!1)},Yt={get:Gt(!0,!0)},Xt=new WeakMap,Zt=new WeakMap,Qt=new WeakMap,$t=new WeakMap;function en(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 2;default:return 0}}function tn(e){return cn(e)?e:on(e,!1,It,Kt,Xt)}function nn(e){return on(e,!1,Rt,qt,Zt)}function rn(e){return on(e,!0,Lt,Jt,Qt)}function an(e){return on(e,!0,zt,Yt,$t)}function on(e,t,n,r,i){if(!b(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;let a=i.get(e);if(a)return a;let o=en(w(e));if(o===0)return e;let s=new Proxy(e,o===2?r:n);return i.set(e,s),s}function sn(e){return cn(e)?sn(e.__v_raw):!!(e&&e.__v_isReactive)}function cn(e){return!!(e&&e.__v_isReadonly)}function ln(e){return!!(e&&e.__v_isShallow)}function un(e){return e?!!e.__v_raw:!1}function F(e){let t=e&&e.__v_raw;return t?F(t):e}function dn(e){return!d(e,`__v_skip`)&&Object.isExtensible(e)&&ae(e,`__v_skip`,!0),e}var fn=e=>b(e)?tn(e):e,pn=e=>b(e)?rn(e):e;function I(e){return e?e.__v_isRef===!0:!1}function mn(e){return gn(e,!1)}function hn(e){return gn(e,!0)}function gn(e,t){return I(e)?e:new _n(e,t)}var _n=class{constructor(e,t){this.dep=new dt,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:F(e),this._value=t?e:fn(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||ln(e)||cn(e);e=n?e:F(e),M(e,t)&&(this._rawValue=e,this._value=n?e:fn(e),this.dep.trigger())}};function vn(e){e.dep&&e.dep.trigger()}function yn(e){return I(e)?e.value:e}function bn(e){return _(e)?e():yn(e)}var xn={get:(e,t,n)=>t===`__v_raw`?e:yn(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return I(i)&&!I(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function Sn(e){return sn(e)?e:new Proxy(e,xn)}var Cn=class{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new dt,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}};function wn(e){return new Cn(e)}function Tn(e){let t=f(e)?Array(e.length):{};for(let n in e)t[n]=kn(e,n);return t}var En=class{constructor(e,t,n){this._object=e,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=y(t)?t:String(t),this._raw=F(e);let r=!0,i=e;if(!f(e)||y(this._key)||!E(this._key))do r=!un(i)||ln(i);while(r&&(i=i.__v_raw));this._shallow=r}get value(){let e=this._object[this._key];return this._shallow&&(e=yn(e)),this._value=e===void 0?this._defaultValue:e}set value(e){if(this._shallow&&I(this._raw[this._key])){let t=this._object[this._key];if(I(t)){t.value=e;return}}this._object[this._key]=e}get dep(){return yt(this._raw,this._key)}},Dn=class{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}};function On(e,t,n){return I(e)?e:_(e)?new Dn(e):b(e)&&arguments.length>1?kn(e,t,n):mn(e)}function kn(e,t,n){return new En(e,t,n)}var An=class{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new dt(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=lt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&P!==this)return qe(this,!0),!0}get value(){let e=this.dep.track();return $e(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function jn(e,t,n=!1){let r,i;return _(e)?r=e:(r=e.get,i=e.set),new An(r,i,n)}var Mn={GET:`get`,HAS:`has`,ITERATE:`iterate`},Nn={SET:`set`,ADD:`add`,DELETE:`delete`,CLEAR:`clear`},Pn={},Fn=new WeakMap,In=void 0;function Ln(){return In}function Rn(e,t=!1,n=In){if(n){let t=Fn.get(n);t||Fn.set(n,t=[]),t.push(e)}}function zn(e,t,r=n){let{immediate:a,deep:o,once:s,scheduler:c,augmentJob:u,call:d}=r,p=e=>o?e:ln(e)||o===!1||o===0?Bn(e,1):Bn(e),m,h,g,v,y=!1,b=!1;if(I(e)?(h=()=>e.value,y=ln(e)):sn(e)?(h=()=>p(e),y=!0):f(e)?(b=!0,y=e.some(e=>sn(e)||ln(e)),h=()=>e.map(e=>{if(I(e))return e.value;if(sn(e))return p(e);if(_(e))return d?d(e,2):e()})):h=_(e)?t?d?()=>d(e,2):e:()=>{if(g){ot();try{g()}finally{st()}}let t=In;In=m;try{return d?d(e,3,[v]):e(v)}finally{In=t}}:i,t&&o){let e=h,t=o===!0?1/0:o;h=()=>Bn(e(),t)}let x=Be(),S=()=>{m.stop(),x&&x.active&&l(x.effects,m)};if(s&&t){let e=t;t=(...t)=>{let n=e(...t);return S(),n}}let C=b?Array(e.length).fill(Pn):Pn,w=e=>{if(!(!(m.flags&1)||!m.dirty&&!e)){if(t){let n=m.run();if(e||o||y||(b?n.some((e,t)=>M(e,C[t])):M(n,C))){g&&g();let e=In;In=m;try{let e=[n,C===Pn?void 0:b&&C[0]===Pn?[]:C,v];C=n,d?d(t,3,e):t(...e)}finally{In=e}}}else m.run()}};return u&&u(w),m=new Ue(h),m.scheduler=c?()=>c(w,!1):w,v=e=>Rn(e,!1,m),g=m.onStop=()=>{let e=Fn.get(m);if(e){if(d)d(e,4);else for(let t of e)t();Fn.delete(m)}},t?a?w(!0):C=m.run():c?c(w.bind(null,!0),!0):m.run(),S.pause=m.pause.bind(m),S.resume=m.resume.bind(m),S.stop=S,S}function Bn(e,t=1/0,n){if(t<=0||!b(e)||e.__v_skip||(n||=new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,I(e))Bn(e.value,t,n);else if(f(e))for(let r=0;r{Bn(e,t,n)});else if(T(e)){for(let r in e)Bn(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Bn(e[r],t,n)}return e}var Vn=[];function Hn(e){Vn.push(e)}function Un(){Vn.pop()}function Wn(e,t){}var Gn={SETUP_FUNCTION:0,0:`SETUP_FUNCTION`,RENDER_FUNCTION:1,1:`RENDER_FUNCTION`,NATIVE_EVENT_HANDLER:5,5:`NATIVE_EVENT_HANDLER`,COMPONENT_EVENT_HANDLER:6,6:`COMPONENT_EVENT_HANDLER`,VNODE_HOOK:7,7:`VNODE_HOOK`,DIRECTIVE_HOOK:8,8:`DIRECTIVE_HOOK`,TRANSITION_HOOK:9,9:`TRANSITION_HOOK`,APP_ERROR_HANDLER:10,10:`APP_ERROR_HANDLER`,APP_WARN_HANDLER:11,11:`APP_WARN_HANDLER`,FUNCTION_REF:12,12:`FUNCTION_REF`,ASYNC_COMPONENT_LOADER:13,13:`ASYNC_COMPONENT_LOADER`,SCHEDULER:14,14:`SCHEDULER`,COMPONENT_UPDATE:15,15:`COMPONENT_UPDATE`,APP_UNMOUNT_CLEANUP:16,16:`APP_UNMOUNT_CLEANUP`},Kn={sp:`serverPrefetch hook`,bc:`beforeCreate hook`,c:`created hook`,bm:`beforeMount hook`,m:`mounted hook`,bu:`beforeUpdate hook`,u:`updated`,bum:`beforeUnmount hook`,um:`unmounted hook`,a:`activated hook`,da:`deactivated hook`,ec:`errorCaptured hook`,rtc:`renderTracked hook`,rtg:`renderTriggered hook`,0:`setup function`,1:`render function`,2:`watcher getter`,3:`watcher callback`,4:`watcher cleanup function`,5:`native event handler`,6:`component event handler`,7:`vnode hook`,8:`directive hook`,9:`transition hook`,10:`app errorHandler`,11:`app warnHandler`,12:`ref function`,13:`async component loader`,14:`scheduler flush`,15:`component update`,16:`app unmount cleanup function`};function qn(e,t,n,r){try{return r?e(...r):e()}catch(e){Yn(e,t,n)}}function Jn(e,t,n,r){if(_(e)){let i=qn(e,t,n,r);return i&&x(i)&&i.catch(e=>{Yn(e,t,n)}),i}if(f(e)){let i=[];for(let a=0;a>>1,i=Zn[r],a=dr(i);a=dr(n)?Zn.push(e):Zn.splice(ar(t),0,e),e.flags|=1,sr()}}function sr(){rr||=nr.then(fr)}function cr(e){if(!f(e))er&&e.id===-1?er.splice(tr+1,0,e):e.flags&1||($n.push(e),e.flags|=1);else for(let t=0;tdr(e)-dr(t));if($n.length=0,er){for(let t=0;te.id==null?e.flags&2?-1:1/0:e.id;function fr(e){try{for(Qn=0;Qnpr.emit(e,...t)),mr=[]):typeof window<`u`&&window.HTMLElement&&!(window.navigator?.userAgent)?.includes(`jsdom`)?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(e=>{hr(e,t)}),setTimeout(()=>{pr||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,mr=[])},3e3)):mr=[]}var L=null,gr=null;function _r(e){let t=L;return L=e,gr=e&&e.type.__scopeId||null,t}function vr(e){gr=e}function yr(){gr=null}var br=e=>xr;function xr(e,t=L,n){if(!t||e._n)return e;let r=(...n)=>{r._d&&xs(-1);let i=_r(t),a=gs.length,o;try{o=e(...n)}finally{for(let e=gs.length;e>a;e--)ys();_r(i),r._d&&xs(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function Sr(e,t){if(L===null)return e;let r=cc(L),i=e.dirs||=[];for(let e=0;e1)return n&&_(t)?t.call(r&&r.proxy):t}}function Er(){return!!(Gs()||uo)}var Dr=Symbol.for(`v-scx`),Or=()=>Tr(Dr);function kr(e,t){return Nr(e,null,t)}function Ar(e,t){return Nr(e,null,{flush:`post`})}function jr(e,t){return Nr(e,null,{flush:`sync`})}function Mr(e,t,n){return Nr(e,t,n)}function Nr(e,t,r=n){let{immediate:a,deep:o,flush:s,once:l}=r,u=c({},r),d=t&&a||!t&&s!==`post`,f;if(Zs){if(s===`sync`){let e=Or();f=e.__watcherHandles||=[]}else if(!d){let e=()=>{};return e.stop=i,e.resume=i,e.pause=i,e}}let p=H;u.call=(e,t,n)=>Jn(e,p,t,n);let m=!1;s===`post`?u.scheduler=e=>{R(e,p&&p.suspense)}:s!==`sync`&&(m=!0,u.scheduler=(e,t)=>{t?e():or(e)}),u.augmentJob=e=>{t&&(e.flags|=4),m&&(e.flags|=2,p&&(e.id=p.uid,e.i=p))};let h=zn(e,t,u);return Zs&&(f?f.push(h):d&&h()),h}function Pr(e,t,n){let r=this.proxy,i=v(e)?e.includes(`.`)?Fr(r,e):()=>r[e]:e.bind(r,r),a;_(t)?a=t:(a=t.handler,n=t);let o=Js(this),s=Nr(i,a.bind(r),n);return o(),s}function Fr(e,t){let n=t.split(`.`);return()=>{let t=e;for(let e=0;ee.__isTeleport,zr=e=>e&&(e.disabled||e.disabled===``),Br=e=>e&&(e.defer||e.defer===``),Vr=e=>typeof SVGElement<`u`&&e instanceof SVGElement,Hr=e=>typeof MathMLElement==`function`&&e instanceof MathMLElement,Ur=(e,t)=>{let n=e&&e.to;return v(n)?t?t(n):null:n},Wr={name:`Teleport`,__isTeleport:!0,process(e,t,n,r,i,a,o,s,c,l){let{mc:u,pc:d,pbc:f,o:{insert:p,querySelector:m,createText:h,createComment:g,parentNode:_}}=l,v=zr(t.props),{dynamicChildren:y}=t,b=(e,t,n)=>{e.shapeFlag&16&&u(e.children,t,n,i,a,o,s,c)},x=(e=t)=>{let n=zr(e.props),r=e.target=Ur(e.props,m),a=Yr(r,e,h,p);r&&(o!==`svg`&&Vr(r)?o=`svg`:o!==`mathml`&&Hr(r)&&(o=`mathml`),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(r),n||(b(e,r,a),Jr(e,!1)))},S=e=>{let t=()=>{if(Ir.get(e)===t){if(Ir.delete(e),zr(e.props)){let t=_(e.el)||n;b(e,t,e.anchor),Jr(e,!0)}x(e)}};Ir.set(e,t),R(t,a)};if(e==null){let e=t.el=h(``),i=t.anchor=h(``);if(p(e,n,r),p(i,n,r),Br(t.props)||a&&a.pendingBranch){S(t);return}v&&(b(t,n,i),Jr(t,!0)),x()}else{t.el=e.el;let r=t.anchor=e.anchor,u=Ir.get(e);if(u){u.flags|=8,Ir.delete(e),S(t);return}t.targetStart=e.targetStart;let p=t.target=e.target,h=t.targetAnchor=e.targetAnchor,g=zr(e.props),_=g?n:p,b=g?r:h;if(o===`svg`||Vr(p)?o=`svg`:(o===`mathml`||Hr(p))&&(o=`mathml`),y?(f(e.dynamicChildren,y,_,i,a,o,s),Xo(e,t,!0)):c||d(e,t,_,b,i,a,o,s,!1),v)g?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Gr(t,n,r,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=Ur(t.props,m);e&&(t.target=e,Gr(t,e,null,l,0))}else g&&Gr(t,p,h,l,1);Jr(t,v)}},remove(e,t,n,{um:r,o:{remove:i}},a){let{shapeFlag:o,children:s,anchor:c,targetStart:l,targetAnchor:u,target:d,props:f}=e,p=zr(f),m=a||!p,h=Ir.get(e);if(h&&(h.flags|=8,Ir.delete(e)),d&&(i(l),i(u)),a&&i(c),!h&&(p||d)&&o&16)for(let e=0;e{e.isMounted=!0}),sa(()=>{e.isUnmounting=!0}),e}var $r=[Function,Array],ei={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:$r,onEnter:$r,onAfterEnter:$r,onEnterCancelled:$r,onBeforeLeave:$r,onLeave:$r,onAfterLeave:$r,onLeaveCancelled:$r,onBeforeAppear:$r,onAppear:$r,onAfterAppear:$r,onAppearCancelled:$r},ti=e=>{let t=e.subTree;return t.component?ti(t.component):t},ni={name:`BaseTransition`,props:ei,setup(e,{slots:t}){let n=Gs(),r=Qr();return()=>{let i=t.default&&ui(t.default(),!0),a=i&&i.length?ri(i):n.subTree?Is():void 0;if(!a)return;let o=F(e),{mode:s}=o;if(r.isLeaving)return si(a);let c=ci(a);if(!c)return si(a);let l=oi(c,o,r,n,e=>l=e);c.type!==B&&li(c,l);let u=n.subTree&&ci(n.subTree);if(u&&u.type!==B&&!Es(u,c)&&ti(n).type!==B){let e=oi(u,o,r,n);if(li(u,e),s===`out-in`&&c.type!==B)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete e.afterLeave,u=void 0},si(a);s===`in-out`&&c.type!==B?e.delayLeave=(e,t,n)=>{let i=ai(r,u);i[String(u.key)]=u,e[Xr]=()=>{t(),e[Xr]=void 0,delete l.delayedLeave,u=void 0},l.delayedLeave=()=>{n(),delete l.delayedLeave,u=void 0}}:u=void 0}else u&&=void 0;return a}}};function ri(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==B){t=n;break}}return t}var ii=ni;function ai(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function oi(e,t,n,r,i){let{appear:a,mode:o,persisted:s=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:p,onLeave:m,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:_,onAppear:v,onAfterAppear:y,onAppearCancelled:b}=t,x=String(e.key),S=ai(n,e),C=(e,t)=>{e&&Jn(e,r,9,t)},w=(e,t)=>{let n=t[1];C(e,t),f(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},T={mode:o,persisted:s,beforeEnter(t){let r=c;if(!n.isMounted){if(a)r=_||c;else return}t[Xr]&&t[Xr](!0);let i=S[x];i&&Es(e,i)&&i.el[Xr]&&i.el[Xr](),C(r,[t])},enter(t){if(S[x]===e)return;let r=l,i=u,o=d;if(!n.isMounted){if(a)r=v||l,i=y||u,o=b||d;else return}let s=!1;t[Zr]=e=>{s||(s=!0,C(e?o:i,[t]),T.delayedLeave&&T.delayedLeave(),t[Zr]=void 0)};let c=t[Zr].bind(null,!1);r?w(r,[t,c]):c()},leave(t,r){let i=String(e.key);if(t[Zr]&&t[Zr](!0),n.isUnmounting)return r();C(p,[t]);let a=!1;t[Xr]=n=>{a||(a=!0,r(),C(n?g:h,[t]),t[Xr]=void 0,S[i]===e&&delete S[i])};let o=t[Xr].bind(null,!1);S[i]=e,m?w(m,[t,o]):o()},clone(e){let a=oi(e,t,n,r,i);return i&&i(a),a}};return T}function si(e){if(Ki(e))return e=Ns(e),e.children=null,e}function ci(e){if(!Ki(e))return Rr(e.type)&&e.children?ri(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&_(n.default))return n.default()}}function li(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;let n=e.component.subTree;li(Rr(n.type)&&ci(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ui(e,t=!1,n){let r=[],i=0;for(let a=0;a1)for(let e=0;er.value,set:e=>r.value=e})}return r}function hi(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}var gi=new WeakMap;function _i(e,t,r,i,o=!1){if(f(e)){e.forEach((e,n)=>_i(e,t&&(f(t)?t[n]:t),r,i,o));return}if(Ui(i)&&!o){i.shapeFlag&512&&i.type.__asyncResolved&&i.component.subTree.component&&_i(e,t,r,i.component.subTree);return}let s=i.shapeFlag&4?cc(i.component):i.el,c=o?null:s,{i:u,r:p}=e,m=t&&t.r,h=u.refs===n?u.refs={}:u.refs,g=u.setupState,y=F(g),b=g===n?a:e=>!hi(h,e)&&d(y,e),x=(e,t)=>!(t&&hi(h,t));if(m!=null&&m!==p){if(vi(t),v(m))h[m]=null,b(m)&&(g[m]=null);else if(I(m)){let e=t;x(m,e.k)&&(m.value=null),e.k&&(h[e.k]=null)}}if(_(p))qn(p,u,12,[c,h]);else{let t=v(p),n=I(p);if(t||n){let i=()=>{if(e.f){let n=t?b(p)?g[p]:h[p]:x(p)||!e.k?p.value:h[e.k];if(o)f(n)&&l(n,s);else if(f(n))n.includes(s)||n.push(s);else if(t)h[p]=[s],b(p)&&(g[p]=h[p]);else{let t=[s];x(p,e.k)&&(p.value=t),e.k&&(h[e.k]=t)}}else t?(h[p]=c,b(p)&&(g[p]=c)):n&&(x(p,e.k)&&(p.value=c),e.k&&(h[e.k]=c))};if(c){let t=()=>{i(),gi.delete(e)};t.id=-1,gi.set(e,t),R(t,r)}else vi(e),i()}}}function vi(e){let t=gi.get(e);t&&(t.flags|=8,gi.delete(e))}var yi=!1,bi=()=>{yi||=(console.error(`Hydration completed but contains mismatches.`),!0)},xi=e=>e.namespaceURI.includes(`svg`)&&e.tagName!==`foreignObject`,Si=e=>e.namespaceURI.includes(`MathML`),Ci=e=>{if(e.nodeType===1){if(xi(e))return`svg`;if(Si(e))return`mathml`}},wi=e=>e.nodeType===8;function Ti(e){let{mt:t,p:n,o:{patchProp:r,createText:i,nextSibling:a,parentNode:s,remove:c,insert:l,createComment:u}}=e,d=(e,t)=>{if(!t.hasChildNodes()){n(null,e,t),ur(),t._vnode=e;return}f(t.firstChild,e,null,null,null),ur(),t._vnode=e},f=(n,r,o,c,u,d=!1)=>{d||=!!r.dynamicChildren;let b=wi(n)&&n.data===`[`,x=()=>g(n,r,o,c,u,b),{type:S,ref:C,shapeFlag:w,patchFlag:T}=r,E=n.nodeType;r.el=n,T===-2&&(d=!1,r.dynamicChildren=null);let D=null;switch(S){case ms:E===3?(n.data!==r.children&&(bi(),n.data=r.children),D=a(n)):r.children===``?(l(r.el=i(``),s(n),n),D=n):D=x();break;case B:y(n)?(D=a(n),v(r.el=n.content.firstChild,n,o)):D=E!==8||b?x():a(n);break;case hs:if(b&&(n=a(n),E=n.nodeType),E===1||E===3){D=n;let e=!r.children.length;for(let t=0;t{s||=!!t.dynamicChildren;let{type:l,dynamicProps:u,props:d,patchFlag:f,shapeFlag:p,dirs:h,transition:g}=t,_=l===`input`||l===`option`,b=!!u;if(_||b||f!==-1){h&&Cr(t,null,n,`created`);let l=!1;if(y(e)){l=Yo(null,g)&&n&&n.vnode.props&&n.vnode.props.appear;let r=e.content.firstChild;if(l){let e=r.getAttribute(`class`);e&&(r.$cls=e),g.beforeEnter(r)}v(r,e,n),t.el=e=r}if(p&16&&!(d&&(d.innerHTML||d.textContent))){let r=m(e.firstChild,t,e,n,i,a,s);for(r&&!Ai(e,1)&&bi();r;){let e=r;r=r.nextSibling,c(e)}}else if(p&8){let n=t.children;n[0]===` +`&&(e.tagName===`PRE`||e.tagName===`TEXTAREA`)&&(n=n.slice(1));let{textContent:r}=e;r!==n&&r!==n.replace(/\r\n|\r/g,` +`)&&(Ai(e,0)||bi(),e.textContent=t.children)}if(d){if(_||b||!s||f&48){let t=e.tagName.includes(`-`),i=e.namespaceURI.includes(`svg`)?`svg`:e.namespaceURI.includes(`MathML`)?`mathml`:void 0;for(let a in d)if(_&&(a.endsWith(`value`)||a===`indeterminate`)||o(a)&&!D(a)||a[0]===`.`||t&&!D(a)||u&&u.includes(a)){if(Di(e,a,d[a]))continue;r(e,a,null,d[a],i,n)}}else if(d.onClick)r(e,`onClick`,null,d.onClick,void 0,n);else if(f&4&&sn(d.style))for(let e in d.style)d.style[e]}let x;(x=d&&d.onVnodeBeforeMount)&&Vs(x,n,t),h&&Cr(t,null,n,`beforeMount`),((x=d&&d.onVnodeMounted)||h||l)&&ds(()=>{x&&Vs(x,n,t),l&&g.enter(e),h&&Cr(t,null,n,`mounted`)},i)}return e.nextSibling},m=(e,t,r,o,s,c,u)=>{u||=!!t.dynamicChildren;let d=t.children,p=d.length,m=!1;for(let t=0;t{let{slotScopeIds:c}=t;c&&(i=i?i.concat(c):c);let d=s(e),f=m(a(e),t,d,n,r,i,o);return f&&wi(f)&&f.data===`]`?a(t.anchor=f):(bi(),l(t.anchor=u(`]`),d,f),f)},g=(e,t,r,i,o,l)=>{if(Mi(e,t)||bi(),t.el=null,l){let t=_(e);for(;;){let n=a(e);if(n&&n!==t)c(n);else break}}let u=a(e),d=s(e);return c(e),n(null,t,d,u,r,i,Ci(d),o),r&&(r.vnode.el=t.el,To(r,t.el)),u},_=(e,t=`[`,n=`]`)=>{let r=0;for(;e;)if(e=a(e),e&&wi(e)&&(e.data===t&&r++,e.data===n)){if(r===0)return a(e);r--}return e},v=(e,t,n)=>{let r=t.parentNode;r&&r.replaceChild(e,t);let i=n;for(;i;)i.vnode.el===t&&(i.vnode.el=i.subTree.el=e),i=i.parent},y=e=>e.nodeType===1&&e.tagName===`TEMPLATE`;return[d,f]}var Ei=new Set([`src`,`srcset`,`href`,`poster`]);function Di(e,t,n){return Ei.has(t)?e.getAttribute(t)===(n==null?null:`${n}`):!1}var Oi=`data-allow-mismatch`,ki={0:`text`,1:`children`,2:`class`,3:`style`,4:`attribute`};function Ai(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(Oi);)e=e.parentElement;return ji(e&&e.getAttribute(Oi),t)}function ji(e,t){if(e==null)return!1;if(e===``)return!0;{let n=e.split(`,`);return t===0&&n.includes(`children`)?!0:n.includes(ki[t])}}function Mi(e,t){return Ai(e.parentElement,1)||Ni(e)||Pi(t)}function Ni(e){return e.nodeType===1&&ji(e.getAttribute(Oi),1)}function Pi({props:e}){let t=e&&e[Oi];return typeof t==`string`&&ji(t,1)}var Fi=le().requestIdleCallback||(e=>setTimeout(e,1)),Ii=le().cancelIdleCallback||(e=>clearTimeout(e)),Li=(e=1e4)=>t=>{let n=Fi(t,{timeout:e});return()=>Ii(n)};function Ri(e){let{top:t,left:n,bottom:r,right:i}=e.getBoundingClientRect(),{innerHeight:a,innerWidth:o}=window;return(t>0&&t0&&r0&&n0&&i(t,n)=>{let r=new IntersectionObserver(e=>{for(let n of e)if(n.isIntersecting){r.disconnect(),t();break}},e);return n(e=>{if(e instanceof Element){if(Ri(e))return t(),r.disconnect(),!1;r.observe(e)}}),()=>r.disconnect()},Bi=e=>t=>{if(e){let n=matchMedia(e);if(n.matches)t();else return n.addEventListener(`change`,t,{once:!0}),()=>n.removeEventListener(`change`,t)}},Vi=(e=[])=>(t,n)=>{v(e)&&(e=[e]);let r=!1,i=e=>{r||(r=!0,a(),t(),e.target.dispatchEvent(new e.constructor(e.type,e)))},a=()=>{n(t=>{for(let n of e)t.removeEventListener(n,i)})};return n(t=>{for(let n of e)t.addEventListener(n,i,{once:!0})}),a};function Hi(e,t){if(wi(e)&&e.data===`[`){let n=1,r=e.nextSibling;for(;r;){if(r.nodeType===1){if(t(r)===!1)break}else if(wi(r)){if(r.data===`]`){if(--n===0)break}else r.data===`[`&&n++}r=r.nextSibling}}else t(e)}var Ui=e=>!!e.type.__asyncLoader;function Wi(e){_(e)&&(e={loader:e});let{loader:t,loadingComponent:n,errorComponent:r,delay:i=200,hydrate:a,timeout:o,suspensible:s=!0,onError:c}=e,l=null,u,d=0,f=()=>(d++,l=null,p()),p=()=>{let e;return l||(e=l=t().catch(e=>{if(e=e instanceof Error?e:Error(String(e)),c)return new Promise((t,n)=>{c(e,()=>t(f()),()=>n(e),d+1)});throw e}).then(t=>e!==l&&l?l:(t&&(t.__esModule||t[Symbol.toStringTag]===`Module`)&&(t=t.default),u=t,t)))};return di({name:`AsyncComponentWrapper`,__asyncLoader:p,__asyncHydrate(e,t,n){let r=e.isConnected,i=!1;(t.bu||=[]).push(()=>i=!0);let o=()=>{i||!e.parentNode||r&&!e.isConnected||n()},s=a?()=>{let n=a(o,t=>Hi(e,t));n&&(t.bum||=[]).push(n)}:o;u?s():p().then(()=>!t.isUnmounted&&s())},get __asyncResolved(){return u},setup(){let e=H;if(pi(e),u)return()=>Gi(u,e);let t=t=>{l=null,Yn(t,e,13,!r)};if(s&&e.suspense||Zs)return p().then(t=>()=>Gi(t,e)).catch(e=>(t(e),()=>r?V(r,{error:e}):null));let a=mn(!1),c=mn(),d=mn(!!i),f,m;return ca(()=>{f!=null&&clearTimeout(f),m!=null&&clearTimeout(m)}),i&&(m=setTimeout(()=>{e.isUnmounted||(d.value=!1)},i)),o!=null&&(f=setTimeout(()=>{if(!e.isUnmounted&&!a.value&&!c.value){let e=Error(`Async component timed out after ${o}ms.`);t(e),c.value=e}},o)),p().then(()=>{e.isUnmounted||(a.value=!0,e.parent&&Ki(e.parent.vnode)&&e.parent.update())}).catch(n=>{if(e.isUnmounted){l=null;return}t(n),c.value=n}),()=>{if(a.value&&u)return Gi(u,e);if(c.value&&r)return V(r,{error:c.value});if(n&&!d.value)return Gi(n,e)}}})}function Gi(e,t){let{ref:n,props:r,children:i,ce:a}=t.vnode,o=V(e,r,i);return o.ref=n,o.ce=a,delete t.vnode.ce,o}var Ki=e=>e.type.__isKeepAlive,qi={name:`KeepAlive`,__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){let n=Gs(),r=n.ctx;if(!r.renderer)return()=>{let e=t.default&&t.default();return e&&e.length===1?e[0]:e};let i=new Map,a=new Set,o=null,s=n.suspense,{renderer:{p:c,m:l,um:u,o:{createElement:d}}}=r,f=d(`div`);r.activate=(e,t,n,r,i)=>{let a=e.component;l(e,t,n,0,s),c(a.vnode,e,t,n,a,s,r,e.slotScopeIds,i),R(()=>{a.isDeactivated=!1,a.a&&ie(a.a);let t=e.props&&e.props.onVnodeMounted;t&&Vs(t,a.parent,e)},s)},r.deactivate=e=>{let t=e.component;$o(t.m),$o(t.a),l(e,f,null,1,s),R(()=>{t.da&&ie(t.da);let n=e.props&&e.props.onVnodeUnmounted;n&&Vs(n,t.parent,e),t.isDeactivated=!0},s)};function p(e){$i(e),u(e,n,s,!0)}function m(e){i.forEach((t,n)=>{let r=lc(Ui(t)?t.type.__asyncResolved||{}:t.type);r&&!e(r)&&h(n)})}function h(e){let t=i.get(e);t&&(!o||!Es(t,o))?p(t):o&&$i(o),i.delete(e),a.delete(e)}Mr(()=>[e.include,e.exclude],([e,t])=>{e&&m(t=>Ji(e,t)),t&&m(e=>!Ji(t,e))},{flush:`post`,deep:!0});let g=null,_=()=>{g!=null&&(ts(n.subTree.type)?R(()=>{i.set(g,ea(n.subTree))},n.subTree.suspense):i.set(g,ea(n.subTree)))};return ia(_),oa(_),sa(()=>{i.forEach(e=>{let{subTree:t,suspense:r}=n,i=ea(t);if(e.type===i.type&&e.key===i.key){$i(i);let e=i.component.da;e&&R(e,r);return}p(e)})}),()=>{if(g=null,!t.default)return o=null;let n=t.default(),r=n[0];if(n.length>1)return o=null,n;if(!Ts(r)||!(r.shapeFlag&4)&&!(r.shapeFlag&128))return o=null,r;let s=ea(r);if(s.type===B)return o=null,s;let c=s.type,l=lc(Ui(s)?s.type.__asyncResolved||{}:c),{include:u,exclude:d,max:f}=e;if(u&&(!l||!Ji(u,l))||d&&l&&Ji(d,l))return s.shapeFlag&=-257,o=s,r;let p=s.key==null?c:s.key,m=i.get(p);return s.el&&(s=Ns(s),r.shapeFlag&128&&(r.ssContent=s)),g=p,m?(s.el=m.el,s.component=m.component,s.transition&&li(s,s.transition),s.shapeFlag|=512,a.delete(p),a.add(p)):(a.add(p),f&&a.size>parseInt(f,10)&&h(a.values().next().value)),s.shapeFlag|=256,o=s,ts(r.type)?r:s}}};function Ji(e,t){return f(e)?e.some(e=>Ji(e,t)):v(e)?e.split(`,`).includes(t):g(e)?(e.lastIndex=0,e.test(t)):!1}function Yi(e,t){Zi(e,`a`,t)}function Xi(e,t){Zi(e,`da`,t)}function Zi(e,t,n=H){let r=e.__wdc||=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()};if(ta(t,r,n),n){let e=n.parent;for(;e&&e.parent;)Ki(e.parent.vnode)&&Qi(r,t,n,e),e=e.parent}}function Qi(e,t,n,r){let i=ta(t,e,r,!0);ca(()=>{l(r[t],i)},n)}function $i(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function ea(e){return e.shapeFlag&128?e.ssContent:e}function ta(e,t,n=H,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{ot();let i=Js(n),a=Jn(t,n,e,r);return i(),st(),a};return r?i.unshift(a):i.push(a),a}}var na=e=>(t,n=H)=>{(!Zs||e===`sp`)&&ta(e,(...e)=>t(...e),n)},ra=na(`bm`),ia=na(`m`),aa=na(`bu`),oa=na(`u`),sa=na(`bum`),ca=na(`um`),la=na(`sp`),ua=na(`rtg`),da=na(`rtc`);function fa(e,t=H){ta(`ec`,e,t)}var pa=`components`,ma=`directives`;function ha(e,t){return ya(pa,e,!0,t)||e}var ga=Symbol.for(`v-ndc`);function _a(e){return v(e)?ya(pa,e,!1)||e:e||ga}function va(e){return ya(ma,e)}function ya(e,t,n=!0,r=!1){let i=L||H;if(i){let n=i.type;if(e===pa){let e=lc(n,!1);if(e&&(e===t||e===k(t)||e===re(k(t))))return n}let a=ba(i[e]||n[e],t)||ba(i.appContext[e],t);return!a&&r?n:a}}function ba(e,t){return e&&(e[t]||e[k(t)]||e[re(k(t))])}function xa(e,t,n,r){let i,a=n&&n[r],o=f(e);if(o||v(e)){let n=o&&sn(e),r=!1,s=!1;n&&(r=!ln(e),s=cn(e),e=xt(e)),i=Array(e.length);for(let n=0,o=e.length;nt(e,n,void 0,a&&a[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,o=n.length;r{let t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e}function Ca(e,t,n,r,i,a){if(n??={},L.ce||L.parent&&Ui(L.parent)&&L.parent.ce){let e=a!=null&&n.key==null?c({},n,{key:a}):n,i=Object.keys(e).length>0;return t!=="default"&&(e.name=t),vs(),ws(z,null,[V(`slot`,e,r&&r())],i?-2:64)}let o=e[t];o&&o._c&&(o._d=!1);let s=gs.length;vs();let l;try{let i=o&&wa(o(n)),s=n.key||a||i&&i.key;l=ws(z,{key:(s&&!y(s)?s:`_${t}`)+(!i&&r?`_fb`:``)},i||(r?r():[]),i&&e._===1?64:-2)}catch(e){for(let e=gs.length;e>s;e--)ys();throw e}finally{o&&o._c&&(o._d=!0)}return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+`-s`]),l}function wa(e){return e.some(e=>!Ts(e)||!(e.type===B||e.type===z&&!wa(e.children)))?e:null}function Ta(e,t){let n={};for(let r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:j(r)]=e[r];return n}var Ea=e=>e?Xs(e)?cc(e):Ea(e.parent):null,Da=c(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ea(e.parent),$root:e=>Ea(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Za(e),$forceUpdate:e=>e.f||=()=>{or(e.update)},$nextTick:e=>e.n||=ir.bind(e.proxy),$watch:e=>Pr.bind(e)}),Oa=(e,t)=>e!==n&&!e.__isScriptSetup&&d(e,t),ka={get({_:e},t){if(t===`__v_skip`)return!0;let{ctx:r,setupState:i,data:a,props:o,accessCache:s,type:c,appContext:l}=e;if(t[0]!==`$`){let e=s[t];if(e!==void 0)switch(e){case 1:return i[t];case 2:return a[t];case 4:return r[t];case 3:return o[t]}else if(Oa(i,t))return s[t]=1,i[t];else if(a!==n&&d(a,t))return s[t]=2,a[t];else if(d(o,t))return s[t]=3,o[t];else if(r!==n&&d(r,t))return s[t]=4,r[t];else Ka&&(s[t]=0)}let u=Da[t],f,p;if(u)return t===`$attrs`&&_t(e.attrs,`get`,``),u(e);if((f=c.__cssModules)&&(f=f[t]))return f;if(r!==n&&d(r,t))return s[t]=4,r[t];if(p=l.config.globalProperties,d(p,t))return p[t]},set({_:e},t,r){let{data:i,setupState:a,ctx:o}=e;return Oa(a,t)?(a[t]=r,!0):i!==n&&d(i,t)?(i[t]=r,!0):d(e.props,t)||t[0]===`$`&&t.slice(1)in e?!1:(o[t]=r,!0)},has({_:{data:e,setupState:t,accessCache:r,ctx:i,appContext:a,props:o,type:s}},c){let l;return!!(r[c]||e!==n&&c[0]!==`$`&&d(e,c)||Oa(t,c)||d(o,c)||d(i,c)||d(Da,c)||d(a.config.globalProperties,c)||(l=s.__cssModules)&&l[c])},defineProperty(e,t,n){return n.get==null?d(n,`value`)&&this.set(e,t,n.value,null):e._.accessCache[t]=0,Reflect.defineProperty(e,t,n)}},Aa=c({},ka,{get(e,t){if(t!==Symbol.unscopables)return ka.get(e,t,e)},has(e,t){return t[0]!==`_`&&!de(t)}});function ja(){return null}function Ma(){return null}function Na(e){}function Pa(e){}function Fa(){return null}function Ia(){}function La(e,t){return null}function Ra(){return Ba(`useSlots`).slots}function za(){return Ba(`useAttrs`).attrs}function Ba(e){let t=Gs();return t.setupContext||=sc(t)}function Va(e){return f(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}function Ha(e,t){let n=Va(e);for(let e in t){if(e.startsWith(`__skip`))continue;let r=n[e];r?f(r)||_(r)?r=n[e]={type:r,default:t[e]}:r.default=t[e]:r===null&&(r=n[e]={default:t[e]}),r&&t[`__skip_${e}`]&&(r.skipFactory=!0)}return n}function Ua(e,t){return!e||!t?e||t:f(e)&&f(t)?e.concat(t):c({},Va(e),Va(t))}function Wa(e,t){let n={};for(let r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n}function Ga(e){let t=Gs(),n=Zs,r=e();Ys(),n&&qs(!1);let i=()=>{Js(t),n&&qs(!0)},a=()=>{Gs()!==t&&t.scope.off(),Ys(),n&&qs(!1)};return x(r)&&(r=r.catch(e=>{throw i(),Promise.resolve().then(()=>Promise.resolve().then(a)),e})),[r,()=>{i(),Promise.resolve().then(a)}]}var Ka=!0;function qa(e){let t=Za(e),n=e.proxy,r=e.ctx;Ka=!1,t.beforeCreate&&Ya(t.beforeCreate,e,`bc`);let{data:a,computed:o,methods:s,watch:c,provide:l,inject:u,created:d,beforeMount:p,mounted:m,beforeUpdate:h,updated:g,activated:v,deactivated:y,beforeDestroy:x,beforeUnmount:S,destroyed:C,unmounted:w,render:T,renderTracked:E,renderTriggered:D,errorCaptured:ee,serverPrefetch:te,expose:O,inheritAttrs:k,components:ne,directives:A,filters:re}=t;if(u&&Ja(u,r,null),s)for(let e in s){let t=s[e];_(t)&&(r[e]=t.bind(n))}if(a){let t=a.call(n,n);b(t)&&(e.data=tn(t))}if(Ka=!0,o)for(let e in o){let t=o[e],a=dc({get:_(t)?t.bind(n,n):_(t.get)?t.get.bind(n,n):i,set:!_(t)&&_(t.set)?t.set.bind(n):i});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(c)for(let e in c)Xa(c[e],r,n,e);if(l){let e=_(l)?l.call(n):l;Reflect.ownKeys(e).forEach(t=>{wr(t,e[t])})}d&&Ya(d,e,`c`);function j(e,t){f(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(j(ra,p),j(ia,m),j(aa,h),j(oa,g),j(Yi,v),j(Xi,y),j(fa,ee),j(da,E),j(ua,D),j(sa,S),j(ca,w),j(la,te),f(O)){if(O.length){let t=e.exposed||={};O.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||={}}T&&e.render===i&&(e.render=T),k!=null&&(e.inheritAttrs=k),ne&&(e.components=ne),A&&(e.directives=A),te&&pi(e)}function Ja(e,t,n=i){f(e)&&(e=no(e));for(let n in e){let r=e[n],i;i=b(r)?`default`in r?Tr(r.from||n,r.default,!0):Tr(r.from||n):Tr(r),I(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[n]=i}}function Ya(e,t,n){Jn(f(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function Xa(e,t,n,r){let i=r.includes(`.`)?Fr(n,r):()=>n[r];if(v(e)){let n=t[e];_(n)&&Mr(i,n)}else if(_(e))Mr(i,e.bind(n));else if(b(e)){if(f(e))e.forEach(e=>Xa(e,t,n,r));else{let r=_(e.handler)?e.handler.bind(n):t[e.handler];_(r)&&Mr(i,r,e)}}}function Za(e){let t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:a,config:{optionMergeStrategies:o}}=e.appContext,s=a.get(t),c;return s?c=s:!i.length&&!n&&!r?c=t:(c={},i.length&&i.forEach(e=>Qa(c,e,o,!0)),Qa(c,t,o)),b(t)&&a.set(t,c),c}function Qa(e,t,n,r=!1){let{mixins:i,extends:a}=t;a&&Qa(e,a,n,!0),i&&i.forEach(t=>Qa(e,t,n,!0));for(let i in t)if(!(r&&i===`expose`)){let r=$a[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}var $a={data:eo,props:ao,emits:ao,methods:io,computed:io,beforeCreate:ro,created:ro,beforeMount:ro,mounted:ro,beforeUpdate:ro,updated:ro,beforeDestroy:ro,beforeUnmount:ro,destroyed:ro,unmounted:ro,activated:ro,deactivated:ro,errorCaptured:ro,serverPrefetch:ro,components:io,directives:io,watch:oo,provide:eo,inject:to};function eo(e,t){return t?e?function(){return c(_(e)?e.call(this,this):e,_(t)?t.call(this,this):t)}:t:e}function to(e,t){return io(no(e),no(t))}function no(e){if(f(e)){let t={};for(let n=0;n{let l,u=n,d;return jr(()=>{let t=e[a];M(l,t)&&(l=t,c())}),{get(){return s(),r.get?r.get(l):l},set(e){let s=r.set?r.set(e):e;if(!M(s,l)&&!(u!==n&&M(e,u)))return;let f=i.vnode.props,p=!!(f&&(t in f||a in f||o in f)&&(`onUpdate:${t}`in f||`onUpdate:${a}`in f||`onUpdate:${o}`in f));p||(l=e,c()),i.emit(`update:${t}`,s),M(e,u)&&(M(e,s)&&!M(s,d)||p&&u!==n&&!M(s,l))&&c(),u=e,d=s}}});return c[Symbol.iterator]=()=>{let e=0;return{next(){return e<2?{value:e++?s||n:c,done:!1}:{done:!0}}}},c}var po=(e,t)=>t===`modelValue`||t===`model-value`?e.modelModifiers:e[`${t}Modifiers`]||e[`${k(t)}Modifiers`]||e[`${A(t)}Modifiers`];function mo(e,t,...r){if(e.isUnmounted)return;let i=e.vnode.props||n,a=r,o=t.startsWith(`update:`),s=o&&po(i,t.slice(7));s&&(s.trim&&(a=r.map(e=>v(e)?e.trim():e)),s.number&&(a=r.map(oe)));let c,l=i[c=j(t)]||i[c=j(k(t))];!l&&o&&(l=i[c=j(A(t))]),l&&Jn(l,e,6,a);let u=i[c+`Once`];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[c])return;e.emitted[c]=!0,Jn(u,e,6,a)}}var ho=new WeakMap;function go(e,t,n=!1){let r=n?ho:t.emitsCache,i=r.get(e);if(i!==void 0)return i;let a=e.emits,o={},s=!1;if(!_(e)){let r=e=>{let n=go(e,t,!0);n&&(s=!0,c(o,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!a&&!s?(b(e)&&r.set(e,null),null):(f(a)?a.forEach(e=>o[e]=null):c(o,a),b(e)&&r.set(e,o),o)}function _o(e,t){return!e||!o(t)?!1:(t=t.slice(2),t=t===`Once`?t:t.replace(/Once$/,``),d(e,t[0].toLowerCase()+t.slice(1))||d(e,A(t))||d(e,t))}function vo(e){let{type:t,vnode:n,proxy:r,withProxy:i,propsOptions:[a],slots:o,attrs:c,emit:l,render:u,renderCache:d,props:f,data:p,setupState:m,ctx:h,inheritAttrs:g}=e,_=_r(e),v,y;try{if(n.shapeFlag&4){let e=i||r,t=e;v=Ls(u.call(t,e,d,f,m,p,h)),y=c}else{let e=t;v=Ls(e.length>1?e(f,{attrs:c,slots:o,emit:l}):e(f,null)),y=t.props?c:bo(c)}}catch(t){gs.length=0,Yn(t,e,1),v=V(B)}let b=v;if(y&&g!==!1){let e=Object.keys(y),{shapeFlag:t}=b;e.length&&t&7&&(a&&e.some(s)&&(y=xo(y,a)),b=Ns(b,y,!1,!0))}return n.dirs&&(b=Ns(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&li(Rr(b.type)&&ci(b)||b,n.transition),v=b,_r(_),v}function yo(e,t=!0){let n;for(let t=0;t{let t;for(let n in e)(n===`class`||n===`style`||o(n))&&((t||={})[n]=e[n]);return t},xo=(e,t)=>{let n={};for(let r in e)(!s(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function So(e,t,n){let{props:r,children:i,component:a}=e,{props:o,children:s,patchFlag:c}=t,l=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?Co(r,o,l):!!o;if(c&8){let e=t.dynamicProps;for(let t=0;tObject.create(Eo),Oo=e=>Object.getPrototypeOf(e)===Eo;function ko(e,t,n,r=!1){let i={},a=Do();e.propsDefaults=Object.create(null),jo(e,t,i,a);for(let t in e.propsOptions[0])t in i||(i[t]=void 0);e.props=n?r?i:nn(i):e.type.props?i:a,e.attrs=a}function Ao(e,t,n,r){let{props:i,attrs:a,vnode:{patchFlag:o}}=e,s=F(i),[c]=e.propsOptions,l=!1;if((r||o>0)&&!(o&16)){if(o&8){let n=e.vnode.dynamicProps;for(let r=0;r{p=!0;let[n,r]=Po(e,t,!0);c(l,n),r&&u.push(...r)};!i&&t.mixins.length&&t.mixins.forEach(n),e.extends&&n(e.extends),e.mixins&&e.mixins.forEach(n)}if(!s&&!p)return b(e)&&a.set(e,r),r;if(f(s))for(let e=0;ee===`_`||e===`_ctx`||e===`$stable`,Lo=e=>f(e)?e.map(Ls):[Ls(e)],Ro=(e,t,n)=>{if(t._n)return t;let r=xr((...e)=>Lo(t(...e)),n);return r._c=!1,r},zo=(e,t,n)=>{let r=e._ctx;for(let n in e){if(Io(n))continue;let i=e[n];if(_(i))t[n]=Ro(n,i,r);else if(i!=null){let e=Lo(i);t[n]=()=>e}}},Bo=(e,t)=>{let n=Lo(t);e.slots.default=()=>n},Vo=(e,t,n)=>{for(let r in t)(n||!Io(r))&&(e[r]=t[r])},Ho=(e,t,n)=>{let r=e.slots=Do();if(e.vnode.shapeFlag&32){let e=t._;e?(Vo(r,t,n),n&&ae(r,`_`,e,!0)):zo(t,r)}else t&&Bo(e,t)},Uo=(e,t,r)=>{let{vnode:i,slots:a}=e,o=!0,s=n;if(i.shapeFlag&32){let e=t._;e?r&&e===1?o=!1:Vo(a,t,r):(o=!t.$stable,zo(t,a)),s=t}else t&&(Bo(e,t),s={default:1});if(o)for(let e in a)!Io(e)&&s[e]==null&&delete a[e]},R=ds;function Wo(e){return Ko(e)}function Go(e){return Ko(e,Ti)}function Ko(e,t){let a=le();a.__VUE__=!0;let{insert:o,remove:s,patchProp:c,createElement:l,createText:u,createComment:d,setText:f,setElementText:p,parentNode:m,nextSibling:h,setScopeId:g=i,insertStaticContent:_}=e,v=(e,t,n,r=null,i=null,a=null,o=void 0,s=null,c=!!t.dynamicChildren)=>{if(e===t)return;e&&!Es(e,t)&&(r=ge(e),de(e,i,a,!0),e=null),t.patchFlag===-2&&(c=!1,t.dynamicChildren=null);let{type:l,ref:u,shapeFlag:d}=t;switch(l){case ms:y(e,t,n,r);break;case B:b(e,t,n,r);break;case hs:e??x(t,n,r,o);break;case z:ne(e,t,n,r,i,a,o,s,c);break;default:d&1?w(e,t,n,r,i,a,o,s,c):d&6?A(e,t,n,r,i,a,o,s,c):(d&64||d&128)&&l.process(e,t,n,r,i,a,o,s,c,ye)}u!=null&&i?_i(u,e&&e.ref,a,t||e,!t):u==null&&e&&e.ref!=null&&_i(e.ref,null,a,e,!0)},y=(e,t,n,r)=>{if(e==null)o(t.el=u(t.children),n,r);else{let n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},b=(e,t,n,r)=>{e==null?o(t.el=d(t.children||``),n,r):t.el=e.el},x=(e,t,n,r)=>{[e.el,e.anchor]=_(e.children,t,n,r,e.el,e.anchor)},S=({el:e,anchor:t},n,r)=>{let i;for(;e&&e!==t;)i=h(e),o(e,n,r),e=i;o(t,n,r)},C=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=h(e),s(e),e=n;s(t)},w=(e,t,n,r,i,a,o,s,c)=>{if(t.type===`svg`?o=`svg`:t.type===`math`&&(o=`mathml`),e==null)T(t,n,r,i,a,o,s,c);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),te(e,t,i,a,o,s,c)}finally{n&&n._endPatch()}}},T=(e,t,n,r,i,a,s,u)=>{let d,f,{props:m,shapeFlag:h,transition:g,dirs:_}=e;if(d=e.el=l(e.type,a,m&&m.is,m),h&8?p(d,e.children):h&16&&ee(e.children,d,null,r,i,qo(e,a),s,u),_&&Cr(e,null,r,`created`),E(d,e,e.scopeId,s,r),m){for(let e in m)e!==`value`&&!D(e)&&c(d,e,null,m[e],a,r);`value`in m&&c(d,`value`,null,m.value,a),(f=m.onVnodeBeforeMount)&&Vs(f,r,e)}_&&Cr(e,null,r,`beforeMount`);let v=Yo(i,g);v&&g.beforeEnter(d),o(d,t,n),((f=m&&m.onVnodeMounted)||v||_)&&R(()=>{try{f&&Vs(f,r,e),v&&g.enter(d),_&&Cr(e,null,r,`mounted`)}finally{}},i)},E=(e,t,n,r,i)=>{if(n&&g(e,n),r)for(let t=0;t{for(let l=c;l{let l=t.el=e.el,{patchFlag:u,dynamicChildren:d,dirs:f}=t;u|=e.patchFlag&16;let m=e.props||n,h=t.props||n,g;if(r&&Jo(r,!1),(g=h.onVnodeBeforeUpdate)&&Vs(g,r,t,e),f&&Cr(t,e,r,`beforeUpdate`),r&&Jo(r,!0),d&&(!e.dynamicChildren||e.dynamicChildren.length!==d.length)&&(u=0,s=!1,d=null),(m.innerHTML&&h.innerHTML==null||m.textContent&&h.textContent==null)&&p(l,``),d?O(e.dynamicChildren,d,l,r,i,qo(t,a),o):s||oe(e,t,l,null,r,i,qo(t,a),o,!1),u>0){if(u&16)k(l,m,h,r,a);else if(u&2&&m.class!==h.class&&c(l,`class`,null,h.class,a),u&4&&c(l,`style`,m.style,h.style,a),u&8){let e=t.dynamicProps;for(let t=0;t{g&&Vs(g,r,t,e),f&&Cr(t,e,r,`updated`)},i)},O=(e,t,n,r,i,a,o)=>{for(let s=0;s{if(t!==r){if(t!==n)for(let n in t)!D(n)&&!(n in r)&&c(e,n,t[n],null,a,i);for(let n in r){if(D(n))continue;let o=r[n],s=t[n];o!==s&&n!==`value`&&c(e,n,s,o,a,i)}`value`in r&&c(e,`value`,t.value,r.value,a)}},ne=(e,t,n,r,i,a,s,c,l)=>{let d=t.el=e?e.el:u(``),f=t.anchor=e?e.anchor:u(``),{patchFlag:p,dynamicChildren:m,slotScopeIds:h}=t;h&&(c=c?c.concat(h):h),e==null?(o(d,n,r),o(f,n,r),ee(t.children||[],n,f,i,a,s,c,l)):p>0&&p&64&&m&&e.dynamicChildren&&e.dynamicChildren.length===m.length?(O(e.dynamicChildren,m,n,i,a,s,c),(t.key!=null||i&&t===i.subTree)&&Xo(e,t,!0)):oe(e,t,n,f,i,a,s,c,l)},A=(e,t,n,r,i,a,o,s,c)=>{t.slotScopeIds=s,e==null?t.shapeFlag&512?i.ctx.activate(t,n,r,o,c):re(t,n,r,i,a,o,c):j(e,t,c)},re=(e,t,n,r,i,a,o)=>{let s=e.component=Ws(e,r,i);if(Ki(e)&&(s.ctx.renderer=ye),Qs(s,!1,o),s.asyncDep){if(i&&i.registerDep(s,M,o),!e.el){let r=s.subTree=V(B);b(null,r,t,n),e.placeholder=r.el}}else M(s,e,t,n,i,a,o)},j=(e,t,n)=>{let r=t.component=e.component;if(So(e,t,n)){if(r.asyncDep&&!r.asyncResolved){ae(r,t,n);return}r.next=t,r.update()}else t.el=e.el,r.vnode=t},M=(e,t,n,r,i,a,o)=>{let s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:s,vnode:c}=e;{let n=Qo(e);if(n){t&&(t.el=c.el,ae(e,t,o)),n.asyncDep.then(()=>{R(()=>{e.isUnmounted||l()},i)});return}}let u=t,d;Jo(e,!1),t?(t.el=c.el,ae(e,t,o)):t=c,n&&ie(n),(d=t.props&&t.props.onVnodeBeforeUpdate)&&Vs(d,s,t,c),Jo(e,!0);let f=vo(e),p=e.subTree;e.subTree=f,v(p,f,m(p.el),ge(p),e,i,a),t.el=f.el,u===null&&To(e,f.el),r&&R(r,i),(d=t.props&&t.props.onVnodeUpdated)&&R(()=>Vs(d,s,t,c),i)}else{let o,{el:s,props:c}=t,{bm:l,m:u,parent:d,root:f,type:p}=e,m=Ui(t);if(Jo(e,!1),l&&ie(l),!m&&(o=c&&c.onVnodeBeforeMount)&&Vs(o,d,t),Jo(e,!0),s&&xe){let t=()=>{e.subTree=vo(e),xe(s,e.subTree,e,i,null)};m&&p.__asyncHydrate?p.__asyncHydrate(s,e,t):t()}else{f.ce&&f.ce._hasShadowRoot()&&f.ce._injectChildStyle(p,e.parent?e.parent.type:void 0);let o=e.subTree=vo(e);v(null,o,n,r,e,i,a),t.el=o.el}if(u&&R(u,i),!m&&(o=c&&c.onVnodeMounted)){let e=t;R(()=>Vs(o,d,e),i)}(t.shapeFlag&256||d&&Ui(d.vnode)&&d.vnode.shapeFlag&256)&&e.a&&R(e.a,i),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new Ue(s);e.scope.off();let l=e.update=c.run.bind(c),u=e.job=c.runIfDirty.bind(c);u.i=e,u.id=e.uid,c.scheduler=()=>or(u),Jo(e,!0),l()},ae=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,Ao(e,t.props,r,n),Uo(e,t.children,n),ot(),lr(e),st()},oe=(e,t,n,r,i,a,o,s,c=!1)=>{let l=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:m}=t;if(f>0){if(f&128){ce(l,d,n,r,i,a,o,s,c);return}if(f&256){se(l,d,n,r,i,a,o,s,c);return}}m&8?(u&16&&he(l,i,a),d!==l&&p(n,d)):u&16?m&16?ce(l,d,n,r,i,a,o,s,c):he(l,i,a,!0):(u&8&&p(n,``),m&16&&ee(d,n,r,i,a,o,s,c))},se=(e,t,n,i,a,o,s,c,l)=>{e||=r,t||=r;let u=e.length,d=t.length,f=Math.min(u,d),p;for(p=0;pd?he(e,a,o,!0,!1,f):ee(t,n,i,a,o,s,c,l,f)},ce=(e,t,n,i,a,o,s,c,l)=>{let u=0,d=t.length,f=e.length-1,p=d-1;for(;u<=f&&u<=p;){let r=e[u],i=t[u]=l?Rs(t[u]):Ls(t[u]);if(Es(r,i))v(r,i,n,null,a,o,s,c,l);else break;u++}for(;u<=f&&u<=p;){let r=e[f],i=t[p]=l?Rs(t[p]):Ls(t[p]);if(Es(r,i))v(r,i,n,null,a,o,s,c,l);else break;f--,p--}if(u>f){if(u<=p){let e=p+1,r=ep)for(;u<=f;)de(e[u],a,o,!0),u++;else{let m=u,h=u,g=new Map;for(u=h;u<=p;u++){let e=t[u]=l?Rs(t[u]):Ls(t[u]);e.key!=null&&g.set(e.key,u)}let _,y=0,b=p-h+1,x=!1,S=0,C=Array(b);for(u=0;u=b){de(r,a,o,!0);continue}let i;if(r.key!=null)i=g.get(r.key);else for(_=h;_<=p;_++)if(C[_-h]===0&&Es(r,t[_])){i=_;break}i===void 0?de(r,a,o,!0):(C[i-h]=u+1,i>=S?S=i:x=!0,v(r,t[i],n,null,a,o,s,c,l),y++)}let w=x?Zo(C):r;for(_=w.length-1,u=b-1;u>=0;u--){let e=h+u,r=t[e],f=t[e+1],p=e+1{let{el:a,type:c,transition:l,children:u,shapeFlag:d}=e;if(d&6){ue(e.component.subTree,t,n,r);return}if(d&128){e.suspense.move(t,n,r);return}if(d&64){c.move(e,t,n,ye);return}if(c===z){o(a,t,n);for(let e=0;el.enter(a),i));else{let{leave:r,delayLeave:i,afterLeave:c}=l,u=()=>{e.ctx.isUnmounted?s(a):o(a,t,n)},d=()=>{let e=a._isLeaving||!!a[Xr];a._isLeaving&&a[Xr](!0),l.persisted&&!e?u():r(a,()=>{u(),c&&c()})};i?i(a,u,d):d()}}else o(a,t,n)},de=(e,t,n,r=!1,i=!1)=>{let{type:a,props:o,ref:s,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:f,cacheIndex:p,memo:m}=e;if(d===-2&&(i=!1),s!=null&&(ot(),_i(s,null,n,e,!0),st()),p!=null&&(t.renderCache[p]=void 0),u&256){t.ctx.deactivate(e);return}let h=u&1&&f,g=!Ui(e),_;if(g&&(_=o&&o.onVnodeBeforeUnmount)&&Vs(_,t,e),u&6)me(e.component,n,r);else{if(u&128){e.suspense.unmount(n,r);return}h&&Cr(e,null,t,`beforeUnmount`),u&64?e.type.remove(e,t,n,ye,r):l&&!l.hasOnce&&(a!==z||d>0&&d&64)?he(l,t,n,!1,!0):(a===z&&d&384||!i&&u&16)&&he(c,t,n),r&&fe(e)}let v=m!=null&&p==null;(g&&(_=o&&o.onVnodeUnmounted)||h||v)&&R(()=>{_&&Vs(_,t,e),h&&Cr(e,null,t,`unmounted`),v&&(e.el=null)},n)},fe=e=>{let{type:t,el:n,anchor:r,transition:i}=e;if(t===z){pe(n,r);return}if(t===hs){C(e);return}let a=()=>{s(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(e.shapeFlag&1&&i&&!i.persisted){let{leave:t,delayLeave:r}=i,o=()=>t(n,a);r?r(e.el,a,o):o()}else a()},pe=(e,t)=>{let n;for(;e!==t;)n=h(e),s(e),e=n;s(t)},me=(e,t,n)=>{let{bum:r,scope:i,job:a,subTree:o,um:s,m:c,a:l}=e;$o(c),$o(l),r&&ie(r),i.stop(),a&&(a.flags|=8,de(o,e,t,n)),s&&R(s,t),R(()=>{e.isUnmounted=!0},t)},he=(e,t,n,r=!1,i=!1,a=0)=>{for(let o=a;o{if(e.shapeFlag&6)return ge(e.component.subTree);if(e.shapeFlag&128)return e.suspense.next();let t=h(e.anchor||e.el),n=t&&t[Lr];return n?h(n):t},_e=!1,ve=(e,t,n)=>{let r;e==null?t._vnode&&(de(t._vnode,null,null,!0),r=t._vnode.component):v(t._vnode||null,e,t,null,null,null,n),t._vnode=e,_e||=(_e=!0,lr(r),ur(),!1)},ye={p:v,um:de,m:ue,r:fe,mt:re,mc:ee,pc:oe,pbc:O,n:ge,o:e},be,xe;return t&&([be,xe]=t(ye)),{render:ve,hydrate:be,createApp:lo(ve,be)}}function qo({type:e,props:t},n){return n===`svg`&&e===`foreignObject`||n===`mathml`&&e===`annotation-xml`&&t&&t.encoding&&t.encoding.includes(`html`)?void 0:n}function Jo({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Yo(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Xo(e,t,n=!1){let r=e.children,i=t.children;if(f(r)&&f(i))for(let e=0;e>1,e[n[s]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,o=n[a-1];a-->0;)n[a]=o,o=t[o];return n}function Qo(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Qo(t)}function $o(e){if(e)for(let t=0;te.__isSuspense,ns=0,rs={name:`Suspense`,__isSuspense:!0,process(e,t,n,r,i,a,o,s,c,l){if(e==null)as(t,n,r,i,a,o,s,c,l);else{if(a&&a.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}os(e,t,n,r,i,o,s,c,l)}},hydrate:cs,normalize:ls};function is(e,t){let n=e.props&&e.props[t];_(n)&&n()}function as(e,t,n,r,i,a,o,s,c){let{p:l,o:{createElement:u}}=c,d=u(`div`),f=e.suspense=ss(e,i,r,t,d,n,a,o,s,c);l(null,f.pendingBranch=e.ssContent,d,null,r,f,a,o),f.deps>0?(is(e,`onPending`),is(e,`onFallback`),l(null,e.ssFallback,t,n,r,null,a,o),fs(f,e.ssFallback)):f.resolve(!1,!0)}function os(e,t,n,r,i,a,o,s,{p:c,um:l,o:{createElement:u}}){let d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;let f=t.ssContent,p=t.ssFallback,{activeBranch:m,pendingBranch:h,isInFallback:g,isHydrating:_}=d;if(h)d.pendingBranch=f,Es(h,f)?(c(h,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0?d.resolve():g&&(_||(c(m,p,n,r,i,null,a,o,s),fs(d,p)))):(d.pendingId=ns++,_?(d.isHydrating=!1,d.activeBranch=h):l(h,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u(`div`),g?(c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0?d.resolve():(c(m,p,n,r,i,null,a,o,s),fs(d,p))):m&&Es(m,f)?(c(m,f,n,r,i,d,a,o,s),d.resolve(!0)):(c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0&&d.resolve()));else if(m&&Es(m,f))c(m,f,n,r,i,d,a,o,s),fs(d,f);else if(is(t,`onPending`),d.pendingBranch=f,d.pendingId=f.shapeFlag&512?f.component.suspenseId:ns++,c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0)d.resolve();else{let{timeout:e,pendingId:t}=d;e>0?setTimeout(()=>{d.pendingId===t&&d.fallback(p)},e):e===0&&d.fallback(p)}}function ss(e,t,n,r,i,a,o,s,c,l,u=!1){let{p:d,m:f,um:p,n:m,o:{parentNode:h,remove:g}}=l,_,v=ps(e);v&&t&&t.pendingBranch&&(_=t.pendingId,t.deps++);let y=e.props?se(e.props.timeout):void 0,b=a,x={vnode:e,parent:t,parentComponent:n,namespace:o,container:r,hiddenContainer:i,deps:0,pendingId:ns++,timeout:typeof y==`number`?y:-1,activeBranch:null,isFallbackMountPending:!1,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){let{vnode:r,activeBranch:i,pendingBranch:o,pendingId:s,effects:c,parentComponent:l,container:u,isInFallback:d}=x,g=!1;if(x.isHydrating)x.isHydrating=!1;else if(!e){g=i&&o.transition&&o.transition.mode===`out-in`;let e=!1;g&&(i.transition.afterLeave=()=>{s===x.pendingId&&(f(o,u,a===b&&!e?m(i):a,0),cr(c),d&&r.ssFallback&&(r.ssFallback.el=null))}),i&&!x.isFallbackMountPending&&(h(i.el)===u&&(a=m(i),e=!0),p(i,l,x,!0),!g&&d&&r.ssFallback&&R(()=>r.ssFallback.el=null,x)),g||f(o,u,a,0)}x.isFallbackMountPending=!1,fs(x,o),x.pendingBranch=null,x.isInFallback=!1;let y=x.parent,S=!1;for(;y;){if(y.pendingBranch){for(let e=0;e{x.isFallbackMountPending=!1,x.isInFallback&&(d(null,e,i,o,r,null,a,s,c),fs(x,e))},u=e.transition&&e.transition.mode===`out-in`;u&&(x.isFallbackMountPending=!0,n.transition.afterLeave=l),x.isInFallback=!0,p(n,r,null,!0),u||l()},move(e,t,n){x.activeBranch&&f(x.activeBranch,e,t,n),x.container=e},next(){return x.activeBranch&&m(x.activeBranch)},registerDep(e,t,n){let r=!!x.pendingBranch;r&&x.deps++;let i=e.vnode.el;e.asyncDep.catch(t=>{Yn(t,e,0)}).then(a=>{if(e.isUnmounted||x.isUnmounted||x.pendingId!==e.suspenseId)return;Ys(),e.asyncResolved=!0;let{vnode:s}=e;ec(e,a,!1),i&&(s.el=i);let c=!i&&e.subTree.el;t(e,s,h(i||e.subTree.el),i?null:m(e.subTree),x,o,n),c&&(s.placeholder=null,g(c)),To(e,s.el),r&&--x.deps===0&&x.resolve()})},unmount(e,t){x.isUnmounted=!0,x.activeBranch&&p(x.activeBranch,n,e,t),x.pendingBranch&&p(x.pendingBranch,n,e,t)}};return x}function cs(e,t,n,r,i,a,o,s,c){let l=t.suspense=ss(t,r,n,e.parentNode,document.createElement(`div`),null,i,a,o,s,!0),u=c(e,l.pendingBranch=t.ssContent,n,l,a,o);return l.deps===0&&l.resolve(!1,!0),u}function ls(e){let{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=us(r?n.default:n),e.ssFallback=r?us(n.fallback):V(B)}function us(e){let t;if(_(e)){let n=bs&&e._c;n&&(e._d=!1,vs()),e=e(),n&&(e._d=!0,t=_s,ys())}return f(e)&&(e=yo(e)),e=Ls(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(t=>t!==e)),e}function ds(e,t){t&&t.pendingBranch?f(e)?t.effects.push(...e):t.effects.push(e):cr(e)}function fs(e,t){e.activeBranch=t;let{vnode:n,parentComponent:r}=e,i=t.el;for(;!i&&t.component;)t=t.component.subTree,i=t.el;n.el=i,r&&r.subTree===n&&(r.vnode.el=i,To(r,i))}function ps(e){let t=e.props&&e.props.suspensible;return t!=null&&t!==!1}var z=Symbol.for(`v-fgt`),ms=Symbol.for(`v-txt`),B=Symbol.for(`v-cmt`),hs=Symbol.for(`v-stc`),gs=[],_s=null;function vs(e=!1){gs.push(_s=e?null:[])}function ys(){gs.pop(),_s=gs[gs.length-1]||null}var bs=1;function xs(e,t=!1){bs+=e,e<0&&_s&&t&&(_s.hasOnce=!0)}function Ss(e){return e.dynamicChildren=bs>0?_s||r:null,ys(),bs>0&&_s&&_s.push(e),e}function Cs(e,t,n,r,i,a){return Ss(As(e,t,n,r,i,a,!0))}function ws(e,t,n,r,i){return Ss(V(e,t,n,r,i,!0))}function Ts(e){return e?e.__v_isVNode===!0:!1}function Es(e,t){return e.type===t.type&&e.key===t.key}function Ds(e){}var Os=({key:e})=>e??null,ks=({ref:e,ref_key:t,ref_for:n})=>(typeof e==`number`&&(e=``+e),e==null?null:v(e)||I(e)||_(e)?{i:L,r:e,k:t,f:!!n}:e);function As(e,t=null,n=null,r=0,i=null,a=e===z?0:1,o=!1,s=!1){let c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Os(t),ref:t&&ks(t),scopeId:gr,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:L};return s?(zs(c,n),a&128&&e.normalize(c)):n&&(c.shapeFlag|=v(n)?8:16),bs>0&&!o&&_s&&(c.patchFlag>0||a&6)&&c.patchFlag!==32&&_s.push(c),c}var V=js;function js(e,t=null,n=null,r=0,i=null,a=!1){if((!e||e===ga)&&(e=B),Ts(e)){let r=Ns(e,t,!0);return n&&zs(r,n),bs>0&&!a&&_s&&(r.shapeFlag&6?_s[_s.indexOf(e)]=r:_s.push(r)),r.patchFlag=-2,r}if(uc(e)&&(e=e.__vccOpts),t){t=Ms(t);let{class:e,style:n}=t;e&&!v(e)&&(t.class=_e(e)),b(n)&&(un(n)&&!f(n)&&(n=c({},n)),t.style=fe(n))}let o=v(e)?1:ts(e)?128:Rr(e)?64:b(e)?4:_(e)?2:0;return As(e,t,n,r,i,o,a,!0)}function Ms(e){return e?un(e)||Oo(e)?c({},e):e:null}function Ns(e,t,n=!1,r=!1){let{props:i,ref:a,patchFlag:o,children:s,transition:c}=e,l=t?Bs(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&Os(l),ref:t&&t.ref?n&&a?f(a)?a.concat(ks(t)):[a,ks(t)]:ks(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==z?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ns(e.ssContent),ssFallback:e.ssFallback&&Ns(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&li(u,c.clone(u)),u}function Ps(e=` `,t=0){return V(ms,null,e,t)}function Fs(e,t){let n=V(hs,null,e);return n.staticCount=t,n}function Is(e=``,t=!1){return t?(vs(),ws(B,null,e)):V(B,null,e)}function Ls(e){return e==null||typeof e==`boolean`?V(B):f(e)?V(z,null,e.slice()):Ts(e)?Rs(e):V(ms,null,String(e))}function Rs(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ns(e)}function zs(e,t){let n=0,{shapeFlag:r}=e;if(t==null)t=null;else if(f(t))n=16;else if(typeof t==`object`){if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),zs(e,n()),n._c&&(n._d=!0));return}{n=32;let r=t._;!r&&!Oo(t)?t._ctx=L:r===3&&L&&(L.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}}else if(_(t)){if(r&65){zs(e,{default:t});return}t={default:t,_ctx:L},n=32}else t=String(t),r&64?(n=16,t=[Ps(t)]):n=8;e.children=t,e.shapeFlag|=n}function Bs(...e){let t={};for(let n=0;nH||L,Ks,qs;{let e=le(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach(t=>t(e)):r[0](e)}};Ks=t(`__VUE_INSTANCE_SETTERS__`,e=>H=e),qs=t(`__VUE_SSR_SETTERS__`,e=>Zs=e)}var Js=e=>{let t=H;return Ks(e),e.scope.on(),()=>{e.scope.off(),Ks(t)}},Ys=()=>{H&&H.scope.off(),Ks(null)};function Xs(e){return e.vnode.shapeFlag&4}var Zs=!1;function Qs(e,t=!1,n=!1){t&&qs(t);let{props:r,children:i}=e.vnode,a=Xs(e);ko(e,r,a,t),Ho(e,i,n||t);let o=a?$s(e,t):void 0;return t&&qs(!1),o}function $s(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,ka);let{setup:r}=n;if(r){ot();let n=e.setupContext=r.length>1?sc(e):null,i=Js(e),a=qn(r,e,0,[e.props,n]),o=x(a);if(st(),i(),(o||e.sp)&&!Ui(e)&&pi(e),o){if(a.then(Ys,Ys),t)return a.then(n=>{qs(!0);try{ec(e,n,t)}finally{qs(!1)}}).catch(t=>{Yn(t,e,0)});e.asyncDep=a}else ec(e,a,t)}else ac(e,t)}function ec(e,t,n){_(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:b(t)&&(e.setupState=Sn(t)),ac(e,n)}var tc,nc;function rc(e){tc=e,nc=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,Aa))}}var ic=()=>!tc;function ac(e,t,n){let r=e.type;if(!e.render){if(!t&&tc&&!r.render){let t=r.template||Za(e).template;if(t){let{isCustomElement:n,compilerOptions:i}=e.appContext.config,{delimiters:a,compilerOptions:o}=r,s=c(c({isCustomElement:n,delimiters:a},i),o);r.render=tc(t,s)}}e.render=r.render||i,nc&&nc(e)}{let t=Js(e);ot();try{qa(e)}finally{st(),t()}}}var oc={get(e,t){return _t(e,`get`,``),e[t]}};function sc(e){return{attrs:new Proxy(e.attrs,oc),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function cc(e){return e.exposed?e.exposeProxy||=new Proxy(Sn(dn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Da)return Da[n](e)},has(e,t){return t in e||t in Da}}):e.proxy}function lc(e,t=!0){return _(e)?e.displayName||e.name:e.name||t&&e.__name}function uc(e){return _(e)&&`__vccOpts`in e}var dc=(e,t)=>jn(e,t,Zs);function fc(e,t,n){try{xs(-1);let r=arguments.length;return r===2?b(t)&&!f(t)?Ts(t)?V(e,null,[t]):V(e,t):V(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Ts(n)&&(n=[n]),V(e,t,n))}finally{xs(1)}}function pc(){}function mc(e,t,n,r){let i=n[r];if(i&&hc(i,e))return i;let a=t();return a.memo=e.slice(),a.cacheIndex=r,n[r]=a}function hc(e,t){let n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&_s&&_s.push(e),!0}var gc=`3.5.41`,_c=i,vc=Kn,yc=pr,bc=hr,xc={createComponentInstance:Ws,setupComponent:Qs,renderComponentRoot:vo,setCurrentRenderingInstance:_r,isVNode:Ts,normalizeVNode:Ls,getComponentPublicInstance:cc,ensureValidVNode:wa,pushWarningContext:Hn,popWarningContext:Un},Sc=e({BaseTransition:()=>ii,BaseTransitionPropsValidators:()=>ei,Comment:()=>B,DeprecationTypes:()=>null,EffectScope:()=>Re,ErrorCodes:()=>Gn,ErrorTypeStrings:()=>vc,Fragment:()=>z,KeepAlive:()=>qi,ReactiveEffect:()=>Ue,Static:()=>hs,Suspense:()=>rs,Teleport:()=>qr,Text:()=>ms,TrackOpTypes:()=>Mn,Transition:()=>Ic,TransitionGroup:()=>Gl,TriggerOpTypes:()=>Nn,VueElement:()=>Ll,assertNumber:()=>Wn,callWithAsyncErrorHandling:()=>Jn,callWithErrorHandling:()=>qn,camelize:()=>k,capitalize:()=>re,cloneVNode:()=>Ns,compatUtils:()=>null,computed:()=>dc,createApp:()=>Du,createBlock:()=>ws,createCommentVNode:()=>Is,createElementBlock:()=>Cs,createElementVNode:()=>As,createHydrationRenderer:()=>Go,createPropsRestProxy:()=>Wa,createRenderer:()=>Wo,createSSRApp:()=>Ou,createSlots:()=>Sa,createStaticVNode:()=>Fs,createTextVNode:()=>Ps,createVNode:()=>V,customRef:()=>wn,defineAsyncComponent:()=>Wi,defineComponent:()=>di,defineCustomElement:()=>Pl,defineEmits:()=>Ma,defineExpose:()=>Na,defineModel:()=>Ia,defineOptions:()=>Pa,defineProps:()=>ja,defineSSRCustomElement:()=>Fl,defineSlots:()=>Fa,devtools:()=>yc,effect:()=>nt,effectScope:()=>ze,getCurrentInstance:()=>Gs,getCurrentScope:()=>Be,getCurrentWatcher:()=>Ln,getTransitionRawChildren:()=>ui,guardReactiveProps:()=>Ms,h:()=>fc,handleError:()=>Yn,hasInjectionContext:()=>Er,hydrate:()=>Eu,hydrateOnIdle:()=>Li,hydrateOnInteraction:()=>Vi,hydrateOnMediaQuery:()=>Bi,hydrateOnVisible:()=>zi,initCustomFormatter:()=>pc,initDirectivesForSSR:()=>Mu,inject:()=>Tr,isMemoSame:()=>hc,isProxy:()=>un,isReactive:()=>sn,isReadonly:()=>cn,isRef:()=>I,isRuntimeOnly:()=>ic,isShallow:()=>ln,isVNode:()=>Ts,markRaw:()=>dn,mergeDefaults:()=>Ha,mergeModels:()=>Ua,mergeProps:()=>Bs,nextTick:()=>ir,nodeOps:()=>Ac,normalizeClass:()=>_e,normalizeProps:()=>ve,normalizeStyle:()=>fe,onActivated:()=>Yi,onBeforeMount:()=>ra,onBeforeUnmount:()=>sa,onBeforeUpdate:()=>aa,onDeactivated:()=>Xi,onErrorCaptured:()=>fa,onMounted:()=>ia,onRenderTracked:()=>da,onRenderTriggered:()=>ua,onScopeDispose:()=>Ve,onServerPrefetch:()=>la,onUnmounted:()=>ca,onUpdated:()=>oa,onWatcherCleanup:()=>Rn,openBlock:()=>vs,patchProp:()=>Al,popScopeId:()=>yr,provide:()=>wr,proxyRefs:()=>Sn,pushScopeId:()=>vr,queuePostFlushCb:()=>cr,reactive:()=>tn,readonly:()=>rn,ref:()=>mn,registerRuntimeCompiler:()=>rc,render:()=>Tu,renderList:()=>xa,renderSlot:()=>Ca,resolveComponent:()=>ha,resolveDirective:()=>va,resolveDynamicComponent:()=>_a,resolveFilter:()=>null,resolveTransitionHooks:()=>oi,setBlockTracking:()=>xs,setDevtoolsHook:()=>bc,setTransitionHooks:()=>li,shallowReactive:()=>nn,shallowReadonly:()=>an,shallowRef:()=>hn,ssrContextKey:()=>Dr,ssrUtils:()=>xc,stop:()=>rt,toDisplayString:()=>Pe,toHandlerKey:()=>j,toHandlers:()=>Ta,toRaw:()=>F,toRef:()=>On,toRefs:()=>Tn,toValue:()=>bn,transformVNodeArgs:()=>Ds,triggerRef:()=>vn,unref:()=>yn,useAttrs:()=>za,useCssModule:()=>Bl,useCssVars:()=>il,useHost:()=>Rl,useId:()=>fi,useModel:()=>fo,useSSRContext:()=>Or,useShadowRoot:()=>zl,useSlots:()=>Ra,useTemplateRef:()=>mi,useTransitionState:()=>Qr,vModelCheckbox:()=>iu,vModelDynamic:()=>du,vModelRadio:()=>ou,vModelSelect:()=>su,vModelText:()=>ru,vShow:()=>el,version:()=>gc,warn:()=>_c,watch:()=>Mr,watchEffect:()=>kr,watchPostEffect:()=>Ar,watchSyncEffect:()=>jr,withAsyncContext:()=>Ga,withCtx:()=>xr,withDefaults:()=>La,withDirectives:()=>Sr,withKeys:()=>yu,withMemo:()=>mc,withModifiers:()=>_u,withScopeId:()=>br}),Cc=void 0,wc=typeof window<`u`&&window.trustedTypes;if(wc)try{Cc=wc.createPolicy(`vue`,{createHTML:e=>e})}catch{}var Tc=Cc?e=>Cc.createHTML(e):e=>e,Ec=`http://www.w3.org/2000/svg`,Dc=`http://www.w3.org/1998/Math/MathML`,Oc=typeof document<`u`?document:null,kc=Oc&&Oc.createElement(`template`),Ac={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?Oc.createElementNS(Ec,e):t===`mathml`?Oc.createElementNS(Dc,e):n?Oc.createElement(e,{is:n}):Oc.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>Oc.createTextNode(e),createComment:e=>Oc.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Oc.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),!(i===a||!(i=i.nextSibling)););else{kc.innerHTML=Tc(r===`svg`?`${e}`:r===`mathml`?`${e}`:e);let i=kc.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},jc=`transition`,Mc=`animation`,Nc=Symbol(`_vtc`),Pc={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Fc=c({},ei,Pc),Ic=(e=>(e.displayName=`Transition`,e.props=Fc,e))((e,{slots:t})=>fc(ii,zc(e),t)),Lc=(e,t=[])=>{f(e)?e.forEach(e=>e(...t)):e&&e(...t)},Rc=e=>e?f(e)?e.some(e=>e.length>1):e.length>1:!1;function zc(e){let t={};for(let n in e)n in Pc||(t[n]=e[n]);if(e.css===!1)return t;let{name:n=`v`,type:r,duration:i,enterFromClass:a=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:l=a,appearActiveClass:u=o,appearToClass:d=s,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,h=Bc(i),g=h&&h[0],_=h&&h[1],{onBeforeEnter:v,onEnter:y,onEnterCancelled:b,onLeave:x,onLeaveCancelled:S,onBeforeAppear:C=v,onAppear:w=y,onAppearCancelled:T=b}=t,E=(e,t,n,r)=>{e._enterCancelled=r,Uc(e,t?d:s),Uc(e,t?u:o),n&&n()},D=(e,t)=>{e._isLeaving=!1,Uc(e,f),Uc(e,m),Uc(e,p),t&&t()},ee=e=>(t,n)=>{let i=e?w:y,o=()=>E(t,e,n);Lc(i,[t,o]),Wc(()=>{Uc(t,e?l:a),Hc(t,e?d:s),Rc(i)||Kc(t,r,g,o)})};return c(t,{onBeforeEnter(e){Lc(v,[e]),Hc(e,a),Hc(e,o)},onBeforeAppear(e){Lc(C,[e]),Hc(e,l),Hc(e,u)},onEnter:ee(!1),onAppear:ee(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>D(e,t);Hc(e,f),e._enterCancelled?(Hc(e,p),Xc(e)):(Xc(e),Hc(e,p)),Wc(()=>{e._isLeaving&&(Uc(e,f),Hc(e,m),Rc(x)||Kc(e,r,_,n))}),Lc(x,[e,n])},onEnterCancelled(e){E(e,!1,void 0,!0),Lc(b,[e])},onAppearCancelled(e){E(e,!0,void 0,!0),Lc(T,[e])},onLeaveCancelled(e){D(e),Lc(S,[e])}})}function Bc(e){if(e==null)return null;if(b(e))return[Vc(e.enter),Vc(e.leave)];{let t=Vc(e);return[t,t]}}function Vc(e){return se(e)}function Hc(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[Nc]||(e[Nc]=new Set)).add(t)}function Uc(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[Nc];n&&(n.delete(t),n.size||(e[Nc]=void 0))}function Wc(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var Gc=0;function Kc(e,t,n,r){let i=e._endId=++Gc,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=qc(e,t);if(!o)return r();let l=o+`end`,u=0,d=()=>{e.removeEventListener(l,f),a()},f=t=>{t.target===e&&++u>=c&&d()};setTimeout(()=>{u(n[e]||``).split(`, `),i=r(`${jc}Delay`),a=r(`${jc}Duration`),o=Jc(i,a),s=r(`${Mc}Delay`),c=r(`${Mc}Duration`),l=Jc(s,c),u=null,d=0,f=0;t===jc?o>0&&(u=jc,d=o,f=a.length):t===Mc?l>0&&(u=Mc,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?jc:Mc:null,f=u?u===jc?a.length:c.length:0);let p=u===jc&&/\b(?:transform|all)(?:,|$)/.test(r(`${jc}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Jc(e,t){for(;e.lengthYc(t)+Yc(e[n])))}function Yc(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function Xc(e){return(e?e.ownerDocument:document).body.offsetHeight}function Zc(e,t,n){let r=e[Nc];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var Qc=Symbol(`_vod`),$c=Symbol(`_vsh`),el={name:`show`,beforeMount(e,{value:t},{transition:n}){e[Qc]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):tl(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),tl(e,!0),r.enter(e)):r.leave(e,()=>{tl(e,!1)}):tl(e,t))},beforeUnmount(e,{value:t}){tl(e,t)}};function tl(e,t){e.style.display=t?e[Qc]:`none`,e[$c]=!t}function nl(){el.getSSRProps=({value:e})=>{if(!e)return{style:{display:`none`}}}}var rl=Symbol(``);function il(e){let t=Gs();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>ol(e,n))},r=()=>{let r=e(t.proxy);t.ce?ol(t.ce,r):al(t.subTree,r),n(r)};aa(()=>{cr(r)}),ia(()=>{Mr(r,i,{flush:`post`});let e=new MutationObserver(r);e.observe(t.subTree.el.parentNode,{childList:!0}),ca(()=>e.disconnect())})}function al(e,t){if(e.shapeFlag&128){let n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{al(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)ol(e.el,t);else if(e.type===z)e.children.forEach(e=>al(e,t));else if(e.type===hs){let{el:n,anchor:r}=e;for(;n&&(ol(n,t),n!==r);)n=n.nextSibling}}function ol(e,t){if(e.nodeType===1){let n=e.style,r=``;for(let e in t){let i=Le(t[e]);n.setProperty(`--${e}`,i),r+=`--${e}: ${i};`}n[rl]=r}}var sl=/(?:^|;)\s*display\s*:/;function cl(e,t,n){let r=e.style,i=v(n),a=!1;if(n&&!i){if(t){if(v(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??ul(r,t,``)}else for(let e in t)n[e]??ul(r,e,``)}for(let i in n){i===`display`&&(a=!0);let o=n[i];o==null?ul(r,i,``):ml(e,i,!v(t)&&t?t[i]:void 0,o)||ul(r,i,o)}}else if(i){if(t!==n){let e=r[rl];e&&(n+=`;`+e),r.cssText=n,a=sl.test(n)}}else t&&e.removeAttribute(`style`);Qc in e&&(e[Qc]=a?r.display:``,e[$c]&&(r.display=`none`))}var ll=/\s*!important$/;function ul(e,t,n){if(f(n))n.forEach(n=>ul(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=pl(e,t);ll.test(n)?e.setProperty(A(r),n.replace(ll,``),`important`):e[r]=n}}var dl=[`Webkit`,`Moz`,`ms`],fl={};function pl(e,t){let n=fl[t];if(n)return n;let r=k(t);if(r!==`filter`&&r in e)return fl[t]=r;r=re(r);for(let n=0;nTl||=(El.then(()=>Tl=0),Date.now());function Ol(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;let r=n.value;if(f(r)){let n=e.stopImmediatePropagation;e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0};let i=r.slice(),a=[e];for(let n=0;ne.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Al=(e,t,n,r,i,a)=>{let c=i===`svg`;t===`class`?Zc(e,r,c):t===`style`?cl(e,n,r):o(t)?s(t)||xl(e,t,n,r,a):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):jl(e,t,r,c))?(_l(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&gl(e,t,r,c,a,t!==`value`)):e._isVueCE&&(Ml(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!v(r)))?_l(e,k(t),r,a,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),gl(e,t,r,c))};function jl(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&kl(t)&&_(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return kl(t)&&v(n)?!1:t in e}function Ml(e,t){let n=e._def.props;if(!n)return!1;let r=k(t);return Array.isArray(n)?n.some(e=>k(e)===r):Object.keys(n).some(e=>k(e)===r)}var Nl={};function Pl(e,t,n){let r=di(e,t);T(r)&&(r=c({},r,t));class i extends Ll{constructor(e){super(r,e,n)}}return i.def=r,i}var Fl=((e,t)=>Pl(e,t,Ou)),Il=typeof HTMLElement<`u`?HTMLElement:class{},Ll=class e extends Il{constructor(e,t={},n=Du){super(),this._def=e,this._props=t,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==Du?this._root=this.shadowRoot:e.shadowRoot===!1?this._root=this:(this.attachShadow(c({},e.shadowRootOptions,{mode:`open`})),this._root=this.shadowRoot)}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t&&=t.assignedSlot||t.parentNode||t.host;)if(t instanceof e){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._inheritParentContext(e))}_inheritParentContext(e=this._parent){e&&this._app&&Object.setPrototypeOf(this._app._context.provides,e._instance.provides)}disconnectedCallback(){this._connected=!1,ir(()=>{this._connected||(this._ob&&=(this._ob.disconnect(),null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&=(this._teleportTargets.clear(),void 0))})}_processMutations(e){for(let t of e)this._setAttr(t.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let e=0;e{this._resolved=!0,this._pendingResolve=void 0;let{props:n,styles:r}=e,i;if(n&&!f(n))for(let e in n){let t=n[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=se(this._props[e])),(i||=Object.create(null))[k(e)]=!0)}this._numberProps=i,this._resolveProps(e),this.shadowRoot&&this._applyStyles(r),this._mount(e)},t=this._def.__asyncLoader;if(t)return this._pendingResolve=t().then(t=>{t.configureApp=this._def.configureApp,e(this._def=t,!0)}),this._pendingResolve;e(this._def)}_mount(e){this._app=this._createApp(e),this._inheritParentContext(),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);let t=this._instance&&this._instance.exposed;if(t)for(let e in t)d(this,e)||Object.defineProperty(this,e,{get:()=>yn(t[e])})}_resolveProps(e){let{props:t}=e,n=f(t)?t:Object.keys(t||{});for(let e of Object.keys(this))e[0]!==`_`&&n.includes(e)&&this._setProp(e,this[e]);for(let e of n.map(k))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t,!0,!this._patching)}})}_setAttr(e){if(e.startsWith(`data-v-`))return;let t=this.hasAttribute(e),n=t?this.getAttribute(e):Nl,r=k(e);t&&this._numberProps&&this._numberProps[r]&&(n=se(n)),this._setProp(r,n,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,r=!1){if(t!==this._props[e]&&(this._dirty=!0,t===Nl?delete this._props[e]:(this._props[e]=t,e===`key`&&this._app&&(this._app._ceVNode.key=t)),r&&this._instance&&this._update(),n)){let n=this._ob;n&&(this._processMutations(n.takeRecords()),n.disconnect()),t===!0?this.setAttribute(A(e),``):typeof t==`string`||typeof t==`number`?this.setAttribute(A(e),t+``):t||this.removeAttribute(A(e)),n&&n.observe(this,{attributes:!0})}}_update(){let e=this._createVNode();this._app&&(e.appContext=this._app._context),Tu(e,this._root)}_createVNode(){let e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));let t=V(this._def,c(e,this._props));return this._instance||(t.ce=e=>{this._instance=e,e.ce=this,e.isCE=!0;let t=(e,t)=>{this.dispatchEvent(new CustomEvent(e,T(t[0])?c({detail:t},t[0]):{detail:t}))};e.emit=(e,...n)=>{t(e,n),A(e)!==e&&t(A(e),n)},this._setParent()}),t}_applyStyles(e,t,n){if(!e)return;if(t){if(t===this._def||this._styleChildren.has(t))return;this._styleChildren.add(t)}let r=this._nonce,i=this.shadowRoot,a=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(i),o=null;for(let s=e.length-1;s>=0;s--){let c=document.createElement(`style`);r&&c.setAttribute(`nonce`,r),c.textContent=e[s],i.insertBefore(c,o||a),o=c,s===0&&(n||this._styleAnchors.set(this._def,c),t&&this._styleAnchors.set(t,c))}}_getStyleAnchor(e){if(!e)return null;let t=this._styleAnchors.get(e);return t&&t.parentNode===this.shadowRoot?t:(t&&this._styleAnchors.delete(e),null)}_getRootStyleInsertionAnchor(e){for(let t=0;t(delete e.props.mode,e))({name:`TransitionGroup`,props:c({},Fc,{tag:String,moveClass:String}),setup(e,{slots:t}){let n=Gs(),r=Qr(),i,a;return oa(()=>{if(!i.length)return;let t=e.moveClass||`${e.name||`v`}-move`;if(!Xl(i[0].el,n.vnode.el,t)){i=[];return}i.forEach(Kl),i.forEach(ql);let r=i.filter(Jl);Xc(n.vnode.el),r.forEach(e=>{let n=e.el,r=n.style;Hc(n,t),r.transform=r.webkitTransform=r.transitionDuration=``;let i=n[Ul]=e=>{e&&e.target!==n||(!e||e.propertyName.endsWith(`transform`))&&(n.removeEventListener(`transitionend`,i),n[Ul]=null,Uc(n,t))};n.addEventListener(`transitionend`,i)}),i=[]}),()=>{let o=F(e),s=zc(o),c=o.tag||z;if(i=[],a)for(let e=0;e{e.split(/\s+/).forEach(e=>e&&r.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&r.classList.add(e)),r.style.display=`none`;let a=t.nodeType===1?t:t.parentNode;a.appendChild(r);let{hasTransform:o}=qc(r);return a.removeChild(r),o}var Zl=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return f(t)?e=>ie(t,e):t};function Ql(e){e.target.composing=!0}function $l(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var eu=Symbol(`_assign`),tu=Symbol(`_initialValue`);function nu(e,t,n){return t&&(e=e.trim()),n&&(e=oe(e)),e}var ru={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e.parentNode&&(e.type===`text`?e[tu]=e.defaultValue.replace(/[\r\n]/g,``):e.type===`textarea`&&(e[tu]=e.defaultValue.replace(/\r\n?/g,` +`))),e[eu]=Zl(i);let a=r||i.props&&i.props.type===`number`;vl(e,t?`change`:`input`,t=>{t.target.composing||e[eu](nu(e.value,n,a))}),(n||a)&&vl(e,`change`,()=>{e.value=nu(e.value,n,a)}),t||(vl(e,`compositionstart`,Ql),vl(e,`compositionend`,$l),vl(e,`change`,$l))},mounted(e,{value:t,modifiers:{trim:n,number:r}}){let i=t??``,a=e[tu];delete e[tu],a!==void 0&&(e.type===`text`||e.type===`textarea`)&&e.value!==a?e[eu](nu(e.value,n,r)):e.value=i},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[eu]=Zl(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?oe(e.value):e.value,c=t??``;if(s===c)return;let l=e.getRootNode();(l instanceof Document||l instanceof ShadowRoot)&&l.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===c)||(e.value=c)}},iu={deep:!0,created(e,t,n){e[eu]=Zl(n),vl(e,`change`,()=>{let t=e._modelValue,n=lu(e),r=e.checked,i=e[eu];if(f(t)){let e=Me(t,n),a=e!==-1;if(r&&!a)i(t.concat(n));else if(!r&&a){let n=[...t];n.splice(e,1),i(n)}}else if(m(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(uu(e,r))})},mounted:au,beforeUpdate(e,t,n){e[eu]=Zl(n),au(e,t,n)}};function au(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(f(t))i=Me(t,r.props.value)>-1;else if(m(t))i=t.has(r.props.value);else{if(t===n)return;i=je(t,uu(e,!0))}e.checked!==i&&(e.checked=i)}var ou={created(e,{value:t},n){e.checked=je(t,n.props.value),e[eu]=Zl(n),vl(e,`change`,()=>{e[eu](lu(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e[eu]=Zl(r),t!==n&&(e.checked=je(t,r.props.value))}},su={deep:!0,created(e,{value:t,modifiers:{number:n}},r){e._modelValue=t,vl(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?oe(lu(e)):lu(e));e[eu](e.multiple?m(e._modelValue)?new Set(t):t:t[0]),e._assigning=!0,ir(()=>{e._assigning=!1})}),e[eu]=Zl(r)},mounted(e,{value:t}){cu(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[eu]=Zl(n)},updated(e,{value:t}){e._assigning||cu(e,t)}};function cu(e,t){let n=e.multiple,r=f(t);if(!(n&&!r&&!m(t))){for(let i=0,a=e.options.length;iString(e)===String(o)):Me(t,o)>-1}else a.selected=t.has(o)}else if(je(lu(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function lu(e){return`_value`in e?e._value:e.value}function uu(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var du={created(e,t,n){pu(e,t,n,null,`created`)},mounted(e,t,n){pu(e,t,n,null,`mounted`)},beforeUpdate(e,t,n,r){pu(e,t,n,r,`beforeUpdate`)},updated(e,t,n,r){pu(e,t,n,r,`updated`)}};function fu(e,t){switch(e){case`SELECT`:return su;case`TEXTAREA`:return ru;default:switch(t){case`checkbox`:return iu;case`radio`:return ou;default:return ru}}}function pu(e,t,n,r,i){let a=fu(e.tagName,n.props&&n.props.type)[i];a&&a(e,t,n,r)}function mu(){ru.getSSRProps=({value:e})=>({value:e}),ou.getSSRProps=({value:e},t)=>{if(t.props&&je(t.props.value,e))return{checked:!0}},iu.getSSRProps=({value:e},t)=>{if(f(e)){if(t.props&&Me(e,t.props.value)>-1)return{checked:!0}}else if(m(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},du.getSSRProps=(e,t)=>{if(typeof t.type!=`string`)return;let n=fu(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}var hu=[`ctrl`,`shift`,`alt`,`meta`],gu={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>hu.some(n=>e[`${n}Key`]&&!t.includes(n))},_u=(e,t)=>{if(!e)return e;let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e{let n=e._withKeys||={},r=t.join(`.`);return n[r]||(n[r]=(n=>{if(!(`key`in n))return;let r=A(n.key);if(t.some(e=>e===r||vu[e]===r))return e(n)}))},bu=c({patchProp:Al},Ac),xu,Su=!1;function Cu(){return xu||=Wo(bu)}function wu(){return xu=Su?xu:Go(bu),Su=!0,xu}var Tu=((...e)=>{Cu().render(...e)}),Eu=((...e)=>{wu().hydrate(...e)}),Du=((...e)=>{let t=Cu().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=Au(e);if(!r)return;let i=t._component;!_(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,ku(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t}),Ou=((...e)=>{let t=wu().createApp(...e),{mount:n}=t;return t.mount=e=>{let t=Au(e);if(t)return n(t,!0,ku(t))},t});function ku(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function Au(e){return v(e)?document.querySelector(e):e}var ju=!1,Mu=()=>{ju||(ju=!0,mu(),nl())},Nu=Symbol(``),Pu=Symbol(``),Fu=Symbol(``),Iu=Symbol(``),Lu=Symbol(``),Ru=Symbol(``),zu=Symbol(``),Bu=Symbol(``),Vu=Symbol(``),Hu=Symbol(``),Uu=Symbol(``),Wu=Symbol(``),Gu=Symbol(``),Ku=Symbol(``),qu=Symbol(``),Ju=Symbol(``),Yu=Symbol(``),Xu=Symbol(``),Zu=Symbol(``),Qu=Symbol(``),$u=Symbol(``),ed=Symbol(``),td=Symbol(``),nd=Symbol(``),rd=Symbol(``),id=Symbol(``),ad=Symbol(``),od=Symbol(``),sd=Symbol(``),cd=Symbol(``),ld=Symbol(``),ud=Symbol(``),dd=Symbol(``),fd=Symbol(``),pd=Symbol(``),md=Symbol(``),hd=Symbol(``),gd=Symbol(``),_d=Symbol(``),vd={[Nu]:`Fragment`,[Pu]:`Teleport`,[Fu]:`Suspense`,[Iu]:`KeepAlive`,[Lu]:`BaseTransition`,[Ru]:`openBlock`,[zu]:`createBlock`,[Bu]:`createElementBlock`,[Vu]:`createVNode`,[Hu]:`createElementVNode`,[Uu]:`createCommentVNode`,[Wu]:`createTextVNode`,[Gu]:`createStaticVNode`,[Ku]:`resolveComponent`,[qu]:`resolveDynamicComponent`,[Ju]:`resolveDirective`,[Yu]:`resolveFilter`,[Xu]:`withDirectives`,[Zu]:`renderList`,[Qu]:`renderSlot`,[$u]:`createSlots`,[ed]:`toDisplayString`,[td]:`mergeProps`,[nd]:`normalizeClass`,[rd]:`normalizeStyle`,[id]:`normalizeProps`,[ad]:`guardReactiveProps`,[od]:`toHandlers`,[sd]:`camelize`,[cd]:`capitalize`,[ld]:`toHandlerKey`,[ud]:`setBlockTracking`,[dd]:`pushScopeId`,[fd]:`popScopeId`,[pd]:`withCtx`,[md]:`unref`,[hd]:`isRef`,[gd]:`withMemo`,[_d]:`isMemoSame`};function yd(e){Object.getOwnPropertySymbols(e).forEach(t=>{vd[t]=e[t]})}var bd={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:``};function xd(e,t=``){return{type:0,source:t,children:e,helpers:new Set,components:[],directives:[],hoists:[],imports:[],cached:[],temps:0,codegenNode:void 0,loc:bd}}function Sd(e,t,n,r,i,a,o,s=!1,c=!1,l=!1,u=bd){return e&&(s?(e.helper(Ru),e.helper(jd(e.inSSR,l))):e.helper(Ad(e.inSSR,l)),o&&e.helper(Xu)),{type:13,tag:t,props:n,children:r,patchFlag:i,dynamicProps:a,directives:o,isBlock:s,disableTracking:c,isComponent:l,loc:u}}function Cd(e,t=bd){return{type:17,loc:t,elements:e}}function wd(e,t=bd){return{type:15,loc:t,properties:e}}function U(e,t){return{type:16,loc:bd,key:v(e)?W(e,!0):e,value:t}}function W(e,t=!1,n=bd,r=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:r}}function Td(e,t=bd){return{type:8,loc:t,children:e}}function G(e,t=[],n=bd){return{type:14,loc:n,callee:e,arguments:t}}function Ed(e,t=void 0,n=!1,r=!1,i=bd){return{type:18,params:e,returns:t,newline:n,isSlot:r,loc:i}}function Dd(e,t,n,r=!0){return{type:19,test:e,consequent:t,alternate:n,newline:r,loc:bd}}function Od(e,t,n=!1,r=!1){return{type:20,index:e,value:t,needPauseTracking:n,inVOnce:r,needArraySpread:!1,loc:bd}}function kd(e){return{type:21,body:e,loc:bd}}function Ad(e,t){return e||t?Vu:Hu}function jd(e,t){return e||t?zu:Bu}function Md(e,{helper:t,removeHelper:n,inSSR:r}){e.isBlock||(e.isBlock=!0,n(Ad(r,e.isComponent)),t(Ru),t(jd(r,e.isComponent)))}var Nd=new Uint8Array([123,123]),Pd=new Uint8Array([125,125]);function Fd(e){return e>=97&&e<=122||e>=65&&e<=90}function Id(e){return e===32||e===10||e===9||e===12||e===13}function Ld(e){return e===47||e===62||Id(e)}function Rd(e){let t=new Uint8Array(e.length);for(let n=0;n100){let t=-1,n=r;for(;t+1>>1;this.newlines[r]=0;t--)if(e>this.newlines[t]){i=t;break}return i>=0&&(t=i+2,n=e-this.newlines[i]),{column:n,line:t,offset:e}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(e){e===60?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):!this.inVPre&&e===this.delimiterOpen[0]&&(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(e))}stateInterpolationOpen(e){if(e===this.delimiterOpen[this.delimiterIndex]){if(this.delimiterIndex===this.delimiterOpen.length-1){let e=this.index+1-this.delimiterOpen.length;e>this.sectionStart&&this.cbs.ontext(this.sectionStart,e),this.state=3,this.sectionStart=e}else this.delimiterIndex++}else this.inRCDATA?(this.state=32,this.stateInRCDATA(e)):(this.state=1,this.stateText(e))}stateInterpolation(e){e===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(e))}stateInterpolationClose(e){e===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.state=this.inRCDATA?32:1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(e))}stateSpecialStartSequence(e){let t=this.sequenceIndex===this.currentSequence.length;if(!(t?Ld(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.inRCDATA=!1;else if(!t){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=6,this.stateInTagName(e)}stateInRCDATA(e){if(this.sequenceIndex===this.currentSequence.length){if(e===62||Id(e)){let t=this.index-this.currentSequence.length;if(this.sectionStart=e||(this.state===28?this.currentSequence===zd.CdataEnd?this.cbs.oncdata(this.sectionStart,e):this.cbs.oncomment(this.sectionStart,e):this.state===6||this.state===11||this.state===18||this.state===17||this.state===12||this.state===13||this.state===14||this.state===15||this.state===16||this.state===20||this.state===19||this.state===21||this.state===9||this.cbs.ontext(this.sectionStart,e))}emitCodePoint(e,t){}};function Vd(e,{compatConfig:t}){let n=t&&t[e];return e===`MODE`?n||3:n}function Hd(e,t){let n=Vd(`MODE`,t),r=Vd(e,t);return n===3?r===!0:r!==!1}function Ud(e,t,n,...r){return Hd(e,t)}function Wd(e){throw e}function Gd(e){}function K(e,t,n,r){let i=`https://vuejs.org/error-reference/#compiler-${e}`,a=SyntaxError(String(i));return a.code=e,a.loc=t,a}var Kd=e=>e.type===4&&e.isStatic;function qd(e){switch(e){case`Teleport`:case`teleport`:return Pu;case`Suspense`:case`suspense`:return Fu;case`KeepAlive`:case`keep-alive`:return Iu;case`BaseTransition`:case`base-transition`:return Lu}}var Jd=/^$|^\d|[^\$\w\xA0-\uFFFF]/,Yd=e=>!Jd.test(e),Xd=/[A-Za-z_$\xA0-\uFFFF]/,Zd=/[\.\?\w$\xA0-\uFFFF]/,Qd=/\s+[.[]\s*|\s*[.[]\s+/g,$d=e=>e.type===4?e.content:e.loc.source,ef=e=>{let t=$d(e).trim().replace(Qd,e=>e.trim()),n=0,r=[],i=0,a=0,o=null;for(let e=0;e|^\s*(?:async\s+)?function(?:\s+[\w$]+)?\s*\(/,nf=e=>tf.test($d(e));function rf(e,t,n=!1){for(let r=0;re.type===7&&e.name===`bind`&&(!e.arg||e.arg.type!==4||!e.arg.isStatic))}function cf(e){return e.type===5||e.type===2}function lf(e){return e.type===7&&e.name===`pre`}function uf(e){return e.type===7&&e.name===`slot`}function df(e){return e.type===1&&e.tagType===3}function ff(e){return e.type===1&&e.tagType===2}var pf=new Set([id,ad]);function mf(e,t=[]){if(e&&!v(e)&&e.type===14){let n=e.callee;if(!v(n)&&pf.has(n))return mf(e.arguments[0],t.concat(e))}return[e,t]}function hf(e,t,n){if(e.type!==13&&gf(e,t))return;let r,i=e.type===13?e.props:e.arguments[2],a=[],o;if(i&&!v(i)&&i.type===14){let e=mf(i);i=e[0],a=e[1],o=a[a.length-1]}if(i==null||v(i))r=wd([t]);else if(i.type===14){let e=i.arguments[0];!v(e)&&e.type===15?_f(t,e)||e.properties.unshift(t):i.callee===od?r=G(n.helper(td),[wd([t]),i]):i.arguments.unshift(wd([t])),!r&&(r=i)}else i.type===15?(_f(t,i)||i.properties.unshift(t),r=i):(r=G(n.helper(td),[wd([t]),i]),o&&o.callee===ad&&(o=a[a.length-2]));e.type===13?o?o.arguments[0]=r:e.props=r:o?o.arguments[0]=r:e.arguments[2]=r}function gf(e,t){var n,r,i;if(t.key.type!==4||t.key.content!==`key`)return!1;let a=e.arguments[2];if(a&&!v(a)){let[e]=mf(a);if(e&&!v(e)&&e.type===15&&_f(t,e))return!0}return(n=e.arguments)[2]||(n[2]=`{}`),(r=e.arguments)[3]||(r[3]=`undefined`),(i=e.arguments)[4]||(i[4]=`undefined`),e.arguments[5]=t.value,!0}function _f(e,t){let n=!1;if(e.key.type===4){let r=e.key.content;n=t.properties.some(e=>e.key.type===4&&e.key.content===r)}return n}function vf(e,t){return`_${t}_${e.replace(/[^\w]/g,(t,n)=>t===`-`?`_`:e.charCodeAt(n).toString())}`}function yf(e){return e.type===14&&e.callee===gd?e.arguments[1].returns:e}var bf=/([\s\S]*?)\s+(?:in|of)\s+(\S[\s\S]*)/;function xf(e){for(let t=0;t0,isVoidTag:a,isPreTag:a,isIgnoreNewlineTag:a,isCustomElement:a,onError:Wd,onWarn:Gd,comments:!1,prefixIdentifiers:!1},q=wf,Tf=null,Ef=``,Df=null,J=null,Of=``,kf=-1,Af=-1,jf=0,Mf=!1,Nf=null,Y=[],X=new Bd(Y,{onerr:tp,ontext(e,t){Rf(Z(e,t),e,t)},ontextentity(e,t,n){Rf(e,t,n)},oninterpolation(e,t){if(Mf)return Rf(Z(e,t),e,t);let n=e+X.delimiterOpen.length,r=t-X.delimiterClose.length;for(;Id(Ef.charCodeAt(n));)n++;for(;Id(Ef.charCodeAt(r-1));)r--;let i=Z(n,r);i.includes(`&`)&&(i=q.decodeEntities(i,!1)),Xf({type:5,content:ep(i,!1,Q(n,r)),loc:Q(e,t)})},onopentagname(e,t){let n=Z(e,t);Df={type:1,tag:n,ns:q.getNamespace(n,Y[0],q.ns),tagType:0,props:[],children:[],loc:Q(e-1,t),codegenNode:void 0}},onopentagend(e){Lf(e)},onclosetag(e,t){let n=Z(e,t);if(!q.isVoidTag(n)){let r=!1;for(let e=0;e0&&tp(24,Y[0].loc.start.offset);for(let n=0;n<=e;n++)zf(Y.shift(),t,n(e.type===7?e.rawName:e.name)===n)&&tp(2,t)},onattribend(e,t){if(Df&&J){if(Qf(J.loc,t),e!==0){if(Of.includes(`&`)&&(Of=q.decodeEntities(Of,!0)),J.type===6)J.name===`class`&&(Of=Yf(Of).trim()),e===1&&!Of&&tp(13,t),J.value={type:2,content:Of,loc:e===1?Q(kf,Af):Q(kf-1,Af+1)},X.inSFCRoot&&Df.tag===`template`&&J.name===`lang`&&Of&&Of!==`html`&&X.enterRCDATA(Rd(`e.content===`sync`))>-1&&Ud(`COMPILER_V_BIND_SYNC`,q,J.loc,J.arg.loc.source)&&(J.name=`model`,J.modifiers.splice(e,1))}}(J.type!==7||J.name!==`pre`)&&Df.props.push(J)}Of=``,kf=Af=-1},oncomment(e,t){q.comments&&Xf({type:3,content:Z(e,t),loc:Q(e-4,t+3)})},onend(){let e=Ef.length;for(let t=0;t{let i=t.start.offset+n;return ep(e,!1,Q(i,i+e.length),0,+!!r)},s={source:o(a.trim(),n.indexOf(a,i.length)),value:void 0,key:void 0,index:void 0,finalized:!1},c=i.trim().replace(Ff,``).trim(),l=i.indexOf(c),u=c.match(Pf);if(u){c=c.replace(Pf,``).trim();let e=u[1].trim(),t;if(e&&(t=n.indexOf(e,l+c.length),s.key=o(e,t,!0)),u[2]){let r=u[2].trim();r&&(s.index=o(r,n.indexOf(r,s.key?t+e.length:l+c.length),!0))}}return c&&(s.value=o(c,l,!0)),s}function Z(e,t){return Ef.slice(e,t)}function Lf(e){X.inSFCRoot&&(Df.innerLoc=Q(e+1,e+1)),Xf(Df);let{tag:t,ns:n}=Df;n===0&&q.isPreTag(t)&&jf++,q.isVoidTag(t)?zf(Df,e):(Y.unshift(Df),(n===1||n===2)&&(X.inXML=!0)),Df=null}function Rf(e,t,n){{let t=Y[0]&&Y[0].tag;t!==`script`&&t!==`style`&&e.includes(`&`)&&(e=q.decodeEntities(e,!1))}let r=Y[0]||Tf,i=r.children[r.children.length-1];i&&i.type===2?(i.content+=e,Qf(i.loc,n)):r.children.push({type:2,content:e,loc:Q(t,n)})}function zf(e,t,n=!1){n?Qf(e.loc,Vf(t,60)):Qf(e.loc,Bf(t,62)+1),X.inSFCRoot&&(e.children.length?e.innerLoc.end=c({},e.children[e.children.length-1].loc.end):e.innerLoc.end=c({},e.innerLoc.start),e.innerLoc.source=Z(e.innerLoc.start.offset,e.innerLoc.end.offset));let{tag:r,ns:i,children:a}=e;if(Mf||(r===`slot`?e.tagType=2:Uf(e)?e.tagType=3:Wf(e)&&(e.tagType=1)),X.inRCDATA||(e.children=qf(a)),i===0&&q.isIgnoreNewlineTag(r)){let e=a[0];e&&e.type===2&&(e.content=e.content.replace(/^\r?\n/,``))}i===0&&q.isPreTag(r)&&jf--,Nf===e&&(Mf=X.inVPre=!1,Nf=null),X.inXML&&(Y[0]?Y[0].ns:q.ns)===0&&(X.inXML=!1);{let t=e.props;if(!X.inSFCRoot&&Hd(`COMPILER_NATIVE_TEMPLATE`,q)&&e.tag===`template`&&!Uf(e)){let t=Y[0]||Tf,n=t.children.indexOf(e);t.children.splice(n,1,...e.children)}let n=t.find(e=>e.type===6&&e.name===`inline-template`);n&&Ud(`COMPILER_INLINE_TEMPLATE`,q,n.loc)&&e.children.length&&(n.value={type:2,content:Z(e.children[0].loc.start.offset,e.children[e.children.length-1].loc.end.offset),loc:n.loc})}}function Bf(e,t){let n=e;for(;Ef.charCodeAt(n)!==t&&n=0;)n--;return n}var Hf=new Set([`if`,`else`,`else-if`,`for`,`slot`]);function Uf({tag:e,props:t}){if(e===`template`){for(let e=0;e64&&e<91}var Kf=/\r\n/g;function qf(e){let t=q.whitespace!==`preserve`,n=!1;for(let r=0;re.type!==3);return t.length===1&&t[0].type===1&&!ff(t[0])?t[0]:null}function op(e,t,n,r=!1,i=!1){let{children:a}=e,o=[];for(let t=0;t0){if(e>=2){s.codegenNode.patchFlag=-1,o.push(s);continue}}else{let e=s.codegenNode;if(e.type===13){let t=e.patchFlag;if((t===void 0||t===512||t===1)&&up(s,n)>=2){let t=dp(s);t&&(e.props=n.hoist(t))}e.dynamicProps&&=n.hoist(e.dynamicProps)}}}else if(s.type===12&&(r?0:sp(s,n))>=2){s.codegenNode.type===14&&s.codegenNode.arguments.length>0&&s.codegenNode.arguments.push(`-1`),o.push(s);continue}if(s.type===1){let t=s.tagType===1;t&&n.scopes.vSlot++,op(s,e,n,!1,i),t&&n.scopes.vSlot--}else if(s.type===11)op(s,e,n,s.children.length===1,!0);else if(s.type===9)for(let t=0;te.key===t||e.key.content===t);return n&&n.value}}o.length&&n.transformHoist&&n.transformHoist(a,n,e)}function sp(e,t){let{constantCache:n}=t;switch(e.type){case 1:if(e.tagType!==0)return 0;let r=n.get(e);if(r!==void 0)return r;let i=e.codegenNode;if(i.type!==13||i.isBlock&&e.tag!==`svg`&&e.tag!==`foreignObject`&&e.tag!==`math`)return 0;if(i.patchFlag===void 0){let r=3,a=up(e,t);if(a===0)return n.set(e,0),0;a1)for(let i=0;in&&(D.childIndex--,D.onNodeRemoved()),D.parent.children.splice(n,1)},onNodeRemoved:i,addIdentifiers(e){},removeIdentifiers(e){},hoist(e){v(e)&&(e=W(e)),D.hoists.push(e);let t=W(`_hoisted_${D.hoists.length}`,!1,e.loc,2);return t.hoisted=e,t},cache(e,t=!1,n=!1){let r=Od(D.cached.length,e,t,n);return D.cached.push(r),r}};return D.filters=new Set,D}function pp(e,t){let n=fp(e,t);gp(e,n),t.hoistStatic&&ip(e,n),t.ssr||mp(e,n),e.helpers=new Set([...n.helpers.keys()]),e.components=[...n.components],e.directives=[...n.directives],e.imports=n.imports,e.hoists=n.hoists,e.temps=n.temps,e.cached=n.cached,e.transformed=!0,e.filters=[...n.filters]}function mp(e,t){let{helper:n}=t,{children:r}=e;if(r.length===1){let n=ap(e);if(n&&n.codegenNode){let r=n.codegenNode;r.type===13&&Md(r,t),e.codegenNode=r}else e.codegenNode=r[0]}else r.length>1&&(e.codegenNode=Sd(t,n(Nu),void 0,e.children,64,void 0,void 0,!0,void 0,!1))}function hp(e,t){let n=0,r=()=>{n--};for(;nt===e:t=>e.test(t);return(e,r)=>{if(e.type===1){let{props:i}=e;if(e.tagType===3&&i.some(uf))return;let a=[];for(let o=0;o`${vd[e]}: _${vd[e]}`;function bp(e,{mode:t=`function`,prefixIdentifiers:n=t===`module`,sourceMap:r=!1,filename:i=`template.vue.html`,scopeId:a=null,optimizeImports:o=!1,runtimeGlobalName:s=`Vue`,runtimeModuleName:c=`vue`,ssrRuntimeModuleName:l=`vue/server-renderer`,ssr:u=!1,isTS:d=!1,inSSR:f=!1}){let p={mode:t,prefixIdentifiers:n,sourceMap:r,filename:i,scopeId:a,optimizeImports:o,runtimeGlobalName:s,runtimeModuleName:c,ssrRuntimeModuleName:l,ssr:u,isTS:d,inSSR:f,source:e.source,code:``,column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper(e){return`_${vd[e]}`},push(e,t=-2,n){p.code+=e},indent(){m(++p.indentLevel)},deindent(e=!1){e?--p.indentLevel:m(--p.indentLevel)},newline(){m(p.indentLevel)}};function m(e){p.push(` +`+` `.repeat(e),0)}return p}function xp(e,t={}){let n=bp(e,t);t.onContextCreated&&t.onContextCreated(n);let{mode:r,push:i,prefixIdentifiers:a,indent:o,deindent:s,newline:c,scopeId:l,ssr:u}=n,d=Array.from(e.helpers),f=d.length>0,p=!a&&r!==`module`;if(Sp(e,n),i(`function ${u?`ssrRender`:`render`}(${(u?[`_ctx`,`_push`,`_parent`,`_attrs`]:[`_ctx`,`_cache`]).join(`, `)}) {`),o(),p&&(i(`with (_ctx) {`),o(),f&&(i(`const { ${d.map(yp).join(`, `)} } = _Vue +`,-1),c())),e.components.length&&(Cp(e.components,`component`,n),(e.directives.length||e.temps>0)&&c()),e.directives.length&&(Cp(e.directives,`directive`,n),e.temps>0&&c()),e.filters&&e.filters.length&&(c(),Cp(e.filters,`filter`,n),c()),e.temps>0){i(`let `);for(let t=0;t0?`, `:``}_temp${t}`)}return(e.components.length||e.directives.length||e.temps)&&(i(` +`,0),c()),u||i(`return `),e.codegenNode?Dp(e.codegenNode,n):i(`null`),p&&(s(),i(`}`)),s(),i(`}`),{ast:e,code:n.code,preamble:``,map:n.map?n.map.toJSON():void 0}}function Sp(e,t){let{ssr:n,prefixIdentifiers:r,push:i,newline:a,runtimeModuleName:o,runtimeGlobalName:s,ssrRuntimeModuleName:c}=t,l=s,u=Array.from(e.helpers);u.length>0&&(i(`const _Vue = ${l} +`,-1),e.hoists.length&&i(`const { ${[Vu,Hu,Uu,Wu,Gu].filter(e=>u.includes(e)).map(yp).join(`, `)} } = _Vue +`,-1)),wp(e.hoists,t),a(),i(`return `)}function Cp(e,t,{helper:n,push:r,newline:i,isTS:a}){let o=n(t===`filter`?Yu:t===`component`?Ku:Ju);for(let n=0;n3||!1;t.push(`[`),n&&t.indent(),Ep(e,t,n),n&&t.deindent(),t.push(`]`)}function Ep(e,t,n=!1,r=!0){let{push:i,newline:a}=t;for(let o=0;oe||`null`)}function Ip(e,t){let{push:n,helper:r,pure:i}=t,a=v(e.callee)?e.callee:r(e.callee);i&&n(vp),n(a+`(`,-2,e),Ep(e.arguments,t),n(`)`)}function Lp(e,t){let{push:n,indent:r,deindent:i,newline:a}=t,{properties:o}=e;if(!o.length){n(`{}`,-2,e);return}let s=o.length>1||!1;n(s?`{`:`{ `),s&&r();for(let e=0;e `),(c||s)&&(n(`{`),r()),o?(c&&n(`return `),f(o)?Tp(o,t):Dp(o,t)):s&&Dp(s,t),(c||s)&&(i(),n(`}`)),l&&(e.isNonScopedSlot&&n(`, undefined, true`),n(`)`))}function Bp(e,t){let{test:n,consequent:r,alternate:i,newline:a}=e,{push:o,indent:s,deindent:c,newline:l}=t;if(n.type===4){let e=!Yd(n.content);e&&o(`(`),kp(n,t),e&&o(`)`)}else o(`(`),Dp(n,t),o(`)`);a&&s(),t.indentLevel++,a||o(` `),o(`? `),Dp(r,t),t.indentLevel--,a&&l(),a||o(` `),o(`: `);let u=i.type===19;u||t.indentLevel++,Dp(i,t),u||t.indentLevel--,a&&c(!0)}function Vp(e,t){let{push:n,helper:r,indent:i,deindent:a,newline:o}=t,{needPauseTracking:s,needArraySpread:c}=e;c&&n(`[...(`),n(`_cache[${e.index}] || (`),s&&(i(),n(`${r(ud)}(-1`),e.inVOnce&&n(`, true`),n(`),`),o(),n(`(`)),n(`_cache[${e.index}] = `),Dp(e.value,t),s&&(n(`).cacheIndex = ${e.index},`),o(),n(`${r(ud)}(1),`),o(),n(`_cache[${e.index}]`),a()),n(`)`),c&&n(`)]`)}RegExp(`\\b`+`arguments,await,break,case,catch,class,const,continue,debugger,default,delete,do,else,export,extends,finally,for,function,if,import,let,new,return,super,switch,throw,try,var,void,while,with,yield`.split(`,`).join(`\\b|\\b`)+`\\b`);var Hp=_p(/^(?:if|else|else-if)$/,(e,t,n)=>Up(e,t,n,(e,t,r)=>{let i=n.parent.children,a=i.indexOf(e),o=0;for(;a-->=0;){let e=i[a];e&&e.type===9&&(o+=e.branches.length)}return()=>{if(r)e.codegenNode=Gp(t,o,n);else{let r=qp(e.codegenNode);r.alternate=Gp(t,o+e.branches.length-1,n)}}}));function Up(e,t,n,r){if(t.name!==`else`&&(!t.exp||!t.exp.content.trim())){let r=t.exp?t.exp.loc:e.loc;n.onError(K(28,t.loc)),t.exp=W(`true`,!1,r)}if(t.name===`if`){let i=Wp(e,t),a={type:9,loc:Zf(e.loc),branches:[i]};if(n.replaceNode(a),r)return r(a,i,!0)}else{let i=n.parent.children,a=i.indexOf(e);for(;a-->=-1;){let o=i[a];if(o&&Cf(o)){n.removeNode(o);continue}if(o&&o.type===9){(t.name===`else-if`||t.name===`else`)&&o.branches[o.branches.length-1].condition===void 0&&n.onError(K(30,e.loc)),n.removeNode();let i=Wp(e,t);o.branches.push(i);let a=r&&r(o,i,!1);gp(i,n),a&&a(),n.currentNode=null}else n.onError(K(30,e.loc));break}}}function Wp(e,t){let n=e.tagType===3;return{type:10,loc:e.loc,condition:t.name===`else`?void 0:t.exp,children:n&&!rf(e,`for`)?e.children:[e],userKey:af(e,`key`),isTemplateIf:n}}function Gp(e,t,n){return e.condition?Dd(e.condition,Kp(e,t,n),G(n.helper(Uu),[`""`,`true`])):Kp(e,t,n)}function Kp(e,t,n){let{helper:r}=n,i=U(`key`,W(`${t}`,!1,bd,2)),{children:a}=e,o=a[0];if(a.length!==1||o.type!==1){if(a.length===1&&o.type===11){let e=o.codegenNode;return hf(e,i,n),e}return Sd(n,r(Nu),wd([i]),a,64,void 0,void 0,!0,!1,!1,e.loc)}{let e=o.codegenNode,t=yf(e);return t.type===13&&Md(t,n),hf(t,i,n),e}}function qp(e){for(;;)if(e.type===19){if(e.alternate.type===19)e=e.alternate;else return e}else e.type===20&&(e=e.value)}var Jp=_p(`for`,(e,t,n)=>{let{helper:r,removeHelper:i}=n;return Yp(e,t,n,t=>{let a=G(r(Zu),[t.source]),o=df(e),s=rf(e,`memo`),c=af(e,`key`,!1,!0);c&&c.type;let l=c&&(c.type===6?c.value?W(c.value.content,!0):void 0:c.exp),u=l?U(`key`,l):null,d=t.source.type===4&&t.source.constType>0,f=d?64:c?128:256;return t.codegenNode=Sd(n,r(Nu),void 0,a,f,void 0,void 0,!0,!d,!1,e.loc),()=>{let c,{children:f}=t,p=f.length!==1||f[0].type!==1,m=ff(e)?e:o&&e.children.length===1&&ff(e.children[0])?e.children[0]:null;if(m)c=m.codegenNode,o&&u&&hf(c,u,n);else if(p)c=Sd(n,r(Nu),u?wd([u]):void 0,e.children,64,void 0,void 0,!0,void 0,!1);else{c=f[0].codegenNode,o&&u&&hf(c,u,n);let e=!d||c.isBlockRequired===!0;c.isBlock!==e&&(c.isBlock?(i(Ru),i(jd(n.inSSR,c.isComponent))):i(Ad(n.inSSR,c.isComponent))),c.isBlock=e,c.isBlock?(r(Ru),r(jd(n.inSSR,c.isComponent))):(r(Ad(n.inSSR,c.isComponent)),c.needsPatch&&(c.patchFlag=(c.patchFlag??0)|512))}if(s){let e=Ed(Zp(t.parseResult,[W(`_cached`)]));e.body=kd([Td([`const _memo = (`,s.exp,`)`]),Td([`if (_cached && _cached.el`,...l?[` && _cached.key === `,l]:[],` && ${n.helperString(_d)}(_cached, _memo)) return _cached`]),Td([`const _item = `,c]),W(`_item.memo = _memo`),W(`return _item`)]),a.arguments.push(e,W(`_cache`),W(String(n.cached.length))),n.cached.push(null)}else a.arguments.push(Ed(Zp(t.parseResult),c,!0))}})});function Yp(e,t,n,r){if(!t.exp){n.onError(K(31,t.loc));return}let i=t.forParseResult;if(!i){n.onError(K(32,t.loc));return}Xp(i,n);let{addIdentifiers:a,removeIdentifiers:o,scopes:s}=n,{source:c,value:l,key:u,index:d}=i,f={type:11,loc:t.loc,source:c,valueAlias:l,keyAlias:u,objectIndexAlias:d,parseResult:i,children:df(e)?e.children:[e]};n.replaceNode(f),s.vFor++;let p=r&&r(f);return()=>{s.vFor--,p&&p()}}function Xp(e,t){e.finalized||=!0}function Zp({value:e,key:t,index:n},r=[]){return Qp([e,t,n,...r])}function Qp(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map((e,t)=>e||W(`_`.repeat(t+1),!1))}var $p=W(`undefined`,!1),em=(e,t)=>{if(e.type===1&&(e.tagType===1||e.tagType===3)){let n=rf(e,`slot`);if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},tm=(e,t,n,r)=>Ed(e,n,!1,!0,n.length?n[0].loc:r);function nm(e,t,n=tm){t.helper(pd);let{children:r,loc:i}=e,a=[],o=[],s=t.scopes.vSlot>0||t.scopes.vFor>0,c=rf(e,`slot`,!0);if(c){let{arg:e,exp:t}=c;e&&!Kd(e)&&(s=!0),a.push(U(e||W(`default`,!0),n(t,void 0,r,i)))}let l=!1,u=!1,d=[],f=new Set,p=0;for(let e=0;e{let a=n(e,void 0,r,i);return t.compatConfig&&(a.isNonScopedSlot=!0),U(`default`,a)};l?d.length&&!d.every(Sf)&&(u?t.onError(K(39,d[0].loc)):a.push(e(void 0,d))):a.push(e(void 0,r))}let m=s?2:im(e.children)?3:1,h=wd(a.concat(U(`_`,W(m+``,!1))),i);return o.length&&(h=G(t.helper($u),[h,Cd(o)])),{slots:h,hasDynamicSlots:s}}function rm(e,t,n){let r=[U(`name`,e),U(`fn`,t)];return n!=null&&r.push(U(`key`,W(String(n),!0))),wd(r)}function im(e){for(let t=0;tfunction(){if(e=t.currentNode,e.type!==1||e.tagType!==0&&e.tagType!==1)return;let{tag:n,props:r}=e,i=e.tagType===1,a=i?sm(e,t):`"${n}"`,o=b(a)&&a.callee===qu,s,c,l=0,u,d,f,p=!1,m=!1,h=o||a===Pu||a===Fu||!i&&(n===`svg`||n===`foreignObject`||n===`math`);if(r.length>0){let n=cm(e,t,void 0,i,o);s=n.props,l=n.patchFlag,d=n.dynamicPropNames,p=n.needsPatch,m=n.isBlockRequired;let r=n.directives;f=r&&r.length?Cd(r.map(e=>dm(e,t))):void 0,n.shouldUseBlock&&(h=!0)}if(e.children.length>0){if(a===Iu&&(h=!0,l|=1024),i&&a!==Pu&&a!==Iu){let{slots:n,hasDynamicSlots:r}=nm(e,t);c=n,r&&(l|=1024)}else if(e.children.length===1&&a!==Pu){let n=e.children[0],r=n.type,i=r===5||r===8;i&&sp(n,t)===0&&(l|=1),c=i||r===2?n:e.children}else c=e.children}d&&d.length&&(u=fm(d));let g=e.codegenNode=Sd(t,a,s,c,l===0?void 0:l,u,f,!!h,!1,i,e.loc);p&&=l===0||l===32,p&&(g.needsPatch=!0),m&&(g.isBlockRequired=!0)};function sm(e,t,n=!1){let{tag:r}=e,i=pm(r),a=af(e,`is`,!1,!0);if(a){if(i||Hd(`COMPILER_IS_ON_ELEMENT`,t)){let e;if(a.type===6?e=a.value&&W(a.value.content,!0):(e=a.exp,e||=W(`is`,!1,a.arg.loc)),e)return G(t.helper(qu),[e])}else a.type===6&&a.value.content.startsWith(`vue:`)&&(r=a.value.content.slice(4))}let o=qd(r)||t.isBuiltInComponent(r);return o?(n||t.helper(o),o):(t.helper(Ku),t.components.add(r),vf(r,`component`))}function cm(e,t,n=e.props,r,i,a=!1){let{tag:s,loc:c,children:l}=e,u=[],d=[],f=[],p=l.length>0,m=!1,h=!1,g=0,_=!1,v=!1,b=!1,x=!1,S=!1,C=!1,w=[],T=e=>{u.length&&(d.push(wd(lm(u),c)),u=[]),e&&d.push(e)},E=()=>{t.scopes.vFor>0&&u.push(U(W(`ref_for`,!0),W(`true`)))},te=({key:e,value:n})=>{if(Kd(e)){let a=e.content,s=o(a);if(s&&(!r||i)&&a.toLowerCase()!==`onclick`&&a!==`onUpdate:modelValue`&&!D(a)&&(x=!0),s&&D(a)&&(C=!0),a===`ref`&&(_=!0),s&&n.type===14&&(n=n.arguments[0]),n.type===20||(n.type===4||n.type===8)&&sp(n,t)>0)return;a===`class`?v=!0:a===`style`?b=!0:a!==`ref`&&a!==`key`&&!w.includes(a)&&w.push(a),r&&(a===`class`||a===`style`)&&!w.includes(a)&&w.push(a)}else S=!0};for(let i=0;ie.content===`prop`)&&(g|=32);let C=t.directiveTransforms[n];if(C){let{props:n,needRuntime:r}=C(o,e,t);!a&&n.forEach(te),x&&i&&!Kd(i)?T(wd(n,c)):u.push(...n),r&&(f.push(o),y(r)&&am.set(o,r))}else ee(n)||(f.push(o),p&&(m=!0,h=!0))}}let O;d.length?(T(),O=d.length>1?G(t.helper(td),d,c):d[0]):u.length&&(O=wd(lm(u),c)),S?g|=16:(v&&!r&&(g|=2),b&&!r&&(g|=4),w.length&&(g|=8),x&&(g|=32));let ne=(g===0||g===32)&&(_||C||f.length>0);if(!m&&ne&&(g|=512),!t.inSSR&&O)switch(O.type){case 15:let e=-1,n=-1,r=!1;for(let t=0;tU(e,t)),i))}return Cd(n,e.loc)}function fm(e){let t=`[`;for(let n=0,r=e.length;n{if(ff(e)){let{children:n,loc:r}=e,{slotName:i,slotProps:a}=hm(e,t),o=[t.prefixIdentifiers?`_ctx.$slots`:`$slots`,i,`{}`,`undefined`,`true`],s=2;a&&(o[2]=a,s=3),n.length&&(o[3]=Ed([],n,!1,!1,r),s=4),t.scopeId&&!t.slotted&&(s=5),o.splice(s),e.codegenNode=G(t.helper(Qu),o,r)}};function hm(e,t){let n=`"default"`,r,i=[];for(let t=0;t0){let{props:n,directives:a}=cm(e,t,i,!1,!1);r=n,a.length&&t.onError(K(36,a[0].loc))}return{slotName:n,slotProps:r}}var gm=(e,t,n,r)=>{let{loc:i,modifiers:a,arg:o}=e;!e.exp&&!a.length&&n.onError(K(35,i));let s;if(o.type===4){if(o.isStatic){let e=o.content;e.startsWith(`vue:`)&&(e=`vnode-${e.slice(4)}`),s=W(t.tagType!==0||e.startsWith(`vnode`)||!/[A-Z]/.test(e)?j(k(e)):`on:${e}`,!0,o.loc)}else s=Td([`${n.helperString(ld)}(`,o,`)`])}else s=o,s.children.unshift(`${n.helperString(ld)}(`),s.children.push(`)`);let c=e.exp;c&&!c.content.trim()&&(c=void 0);let l=n.cacheHandlers&&!c&&!n.inVOnce;if(c){let e=ef(c),t=!(e||nf(c)),n=c.content.includes(`;`);(t||l&&e)&&(c=Td([`${t?`$event`:`(...args)`} => ${n?`{`:`(`}`,c,n?`}`:`)`]))}let u={props:[U(s,c||W(`() => {}`,!1,i))]};return r&&(u=r(u)),l&&(u.props[0].value=n.cache(u.props[0].value)),u.props.forEach(e=>e.key.isHandlerKey=!0),u},_m=(e,t,n)=>{let{modifiers:r,loc:i}=e,a=e.arg,{exp:o}=e;return o&&o.type===4&&!o.content.trim()&&(o=void 0),a.type===4?a.isStatic||(a.content=a.content?`${a.content} || ""`:`""`):(a.children.unshift(`(`),a.children.push(`) || ""`)),r.some(e=>e.content===`camel`)&&(a.type===4?a.content=a.isStatic?k(a.content):`${n.helperString(sd)}(${a.content})`:(a.children.unshift(`${n.helperString(sd)}(`),a.children.push(`)`))),n.inSSR||(r.some(e=>e.content===`prop`)&&vm(a,`.`),r.some(e=>e.content===`attr`)&&vm(a,`^`)),{props:[U(a,o)]}},vm=(e,t)=>{e.type===4?e.content=e.isStatic?t+e.content:`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(`)`))},ym=(e,t)=>{if(e.type===0||e.type===1||e.type===11||e.type===10)return()=>{let n=e.children,r,i=!1;for(let e=0;ee.type===7&&!t.directiveTransforms[e.name])&&e.tag!==`template`)))for(let e=0;e{if(e.type===1&&rf(e,`once`,!0))return bm.has(e)||t.inVOnce||t.inSSR?void 0:(bm.add(e),t.inVOnce=!0,t.helper(ud),()=>{t.inVOnce=!1;let e=t.currentNode;e.codegenNode&&=t.cache(e.codegenNode,!0,!0)})},Sm=(e,t,n)=>{let{exp:r,arg:i}=e;if(!r)return n.onError(K(41,e.loc)),Cm();let a=r.loc.source.trim(),o=r.type===4?r.content:a,s=n.bindingMetadata[a];if(s===`props`||s===`props-aliased`)return n.onError(K(44,r.loc)),Cm();if(s===`literal-const`||s===`setup-const`)return n.onError(K(45,r.loc)),Cm();if(!o.trim()||!ef(r))return n.onError(K(42,r.loc)),Cm();let c=i||W(`modelValue`,!0),l=i?Kd(i)?`onUpdate:${k(i.content)}`:Td([`"onUpdate:" + `,i]):`onUpdate:modelValue`,u;u=Td([`${n.isTS?`($event: any)`:`$event`} => ((`,r,`) = $event)`]);let d=[U(c,e.exp),U(l,u)];if(e.modifiers.length&&t.tagType===1){let t=e.modifiers.map(e=>e.content).map(e=>(Yd(e)?e:JSON.stringify(e))+`: true`).join(`, `),n=i?Kd(i)?`${i.content}Modifiers`:Td([i,` + "Modifiers"`]):`modelModifiers`;d.push(U(n,W(`{ ${t} }`,!1,e.loc,2)))}return Cm(d)};function Cm(e=[]){return{props:e}}var wm=/[\w).+\-_$\]]/,Tm=(e,t)=>{Hd(`COMPILER_FILTERS`,t)&&(e.type===5?Em(e.content,t):e.type===1&&e.props.forEach(e=>{e.type===7&&e.name!==`for`&&e.exp&&Em(e.exp,t)}))};function Em(e,t){if(e.type===4)Dm(e,t);else for(let n=0;n=0&&(t=n.charAt(e),t===` `);e--);(!t||!wm.test(t))&&(o=!0)}}m===void 0?m=n.slice(0,p).trim():u!==0&&g();function g(){h.push(n.slice(u,p).trim()),u=p+1}if(h.length){for(p=0;p{if(e.type===1){let n=rf(e,`memo`);return!n||km.has(e)||t.inSSR?void 0:(km.add(e),()=>{let r=e.codegenNode||t.currentNode.codegenNode;r&&r.type===13&&(e.tagType!==1&&Md(r,t),e.codegenNode=G(t.helper(gd),[n.exp,Ed(void 0,r),`_cache`,String(t.cached.length)]),t.cached.push(null))})}},jm=(e,t)=>{if(e.type===1){for(let n of e.props)if(n.type===7&&n.name===`bind`&&(!n.exp||n.exp.type===4&&!n.exp.content.trim())&&n.arg){let e=n.arg;if(e.type!==4||!e.isStatic)t.onError(K(53,e.loc)),n.exp=W(``,!0,e.loc);else{let t=k(e.content);(Xd.test(t[0])||t[0]===`-`)&&(n.exp=W(t,!1,e.loc))}}}};function Mm(e){return[[jm,xm,Hp,Am,Jp,Tm,mm,om,em,ym],{on:gm,bind:_m,model:Sm}]}function Nm(e,t={}){let n=t.onError||Wd,r=t.mode===`module`;t.prefixIdentifiers===!0?n(K(48)):r&&n(K(49)),t.cacheHandlers&&n(K(50)),t.scopeId&&!r&&n(K(51));let i=c({},t,{prefixIdentifiers:!1}),a=v(e)?rp(e,i):e,[o,s]=Mm();return pp(a,c({},i,{nodeTransforms:[...o,...t.nodeTransforms||[]],directiveTransforms:c({},s,t.directiveTransforms||{})})),xp(a,i)}var Pm=()=>({props:[]}),Fm=Symbol(``),Im=Symbol(``),Lm=Symbol(``),Rm=Symbol(``),zm=Symbol(``),Bm=Symbol(``),Vm=Symbol(``),Hm=Symbol(``),Um=Symbol(``),Wm=Symbol(``);yd({[Fm]:`vModelRadio`,[Im]:`vModelCheckbox`,[Lm]:`vModelText`,[Rm]:`vModelSelect`,[zm]:`vModelDynamic`,[Bm]:`withModifiers`,[Vm]:`withKeys`,[Hm]:`vShow`,[Um]:`Transition`,[Wm]:`TransitionGroup`});var Gm;function Km(e,t=!1){return Gm||=document.createElement(`div`),t?(Gm.innerHTML=`
`,Gm.children[0].getAttribute(`foo`)):(Gm.innerHTML=e,Gm.textContent)}var qm={parseMode:`html`,isVoidTag:Ee,isNativeTag:e=>Ce(e)||we(e)||Te(e),isPreTag:e=>e===`pre`,isIgnoreNewlineTag:e=>e===`pre`||e===`textarea`,decodeEntities:Km,isBuiltInComponent:e=>{if(e===`Transition`||e===`transition`)return Um;if(e===`TransitionGroup`||e===`transition-group`)return Wm},getNamespace(e,t,n){let r=t?t.ns:n;if(t&&r===2){if(t.tag===`annotation-xml`){if(e===`svg`)return 1;t.props.some(e=>e.type===6&&e.name===`encoding`&&e.value!=null&&(e.value.content===`text/html`||e.value.content===`application/xhtml+xml`))&&(r=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&e!==`mglyph`&&e!==`malignmark`&&(r=0)}else t&&r===1&&(t.tag===`foreignObject`||t.tag===`desc`||t.tag===`title`)&&(r=0);if(r===0){if(e===`svg`)return 1;if(e===`math`)return 2}return r}},Jm=e=>{e.type===1&&e.props.forEach((t,n)=>{t.type===6&&t.name===`style`&&t.value&&(e.props[n]={type:7,name:`bind`,arg:W(`style`,!0,t.loc),exp:Ym(t.value.content,t.loc),modifiers:[],loc:t.loc})})},Ym=(e,t)=>{let n=ge(e);return W(JSON.stringify(n),!1,t,3)};function Xm(e,t){return K(e,t,void 0)}var Zm=(e,t,n)=>{let{exp:r,loc:i}=e;return r||n.onError(Xm(54,i)),t.children.length&&(n.onError(Xm(55,i)),t.children.length=0),{props:[U(W(`innerHTML`,!0,i),r||W(``,!0))]}},Qm=(e,t,n)=>{let{exp:r,loc:i}=e;return r||n.onError(Xm(56,i)),t.children.length&&(n.onError(Xm(57,i)),t.children.length=0),{props:[U(W(`textContent`,!0),r?sp(r,n)>0?r:G(n.helperString(ed),[r],i):W(``,!0))]}},$m=(e,t,n)=>{let r=Sm(e,t,n);if(!r.props.length||t.tagType===1)return r;e.arg&&n.onError(Xm(59,e.arg.loc));let{tag:i}=t,a=n.isCustomElement(i);if(i===`input`||i===`textarea`||i===`select`||a){let o=Lm,s=!1;if(i===`input`||a){let r=af(t,`type`);if(r){if(r.type===7)o=zm;else if(r.value)switch(r.value.content){case`radio`:o=Fm;break;case`checkbox`:o=Im;break;case`file`:s=!0,n.onError(Xm(60,e.loc))}}else sf(t)&&(o=zm)}else i===`select`&&(o=Rm);s||(r.needRuntime=n.helper(o))}else n.onError(Xm(58,e.loc));return r.props=r.props.filter(e=>e.key.type!==4||e.key.content!==`modelValue`),r},eh=t(`passive,once,capture`),th=t(`stop,prevent,self,ctrl,shift,alt,meta,exact,middle`),nh=t(`left,right`),rh=t(`onkeyup,onkeydown,onkeypress`),ih=(e,t,n,r)=>{let i=[],a=[],o=[];for(let s=0;sKd(e)&&e.content.toLowerCase()===`onclick`?W(t,!0):e.type===4?e:Td([`(`,e,`) === "onClick" ? "${t}" : (`,e,`)`]),oh=(e,t,n)=>gm(e,t,n,t=>{let{modifiers:r}=e;if(!r.length)return t;let{key:i,value:a}=t.props[0],{keyModifiers:o,nonKeyModifiers:s,eventOptionModifiers:c}=ih(i,r,n,e.loc);if(s.includes(`right`)&&(i=ah(i,`onContextmenu`)),s.includes(`middle`)&&(i=ah(i,`onMouseup`)),s.length&&(a=G(n.helper(Bm),[a,JSON.stringify(s)])),o.length&&(!Kd(i)||rh(i.content.toLowerCase()))&&(a=G(n.helper(Vm),[a,JSON.stringify(o)])),c.length){let e=c.map(re).join(``);i=Kd(i)?W(`${i.content}${e}`,!0):Td([`(`,i,`) + "${e}"`])}return{props:[U(i,a)]}}),sh=(e,t,n)=>{let{exp:r,loc:i}=e;return r||n.onError(Xm(62,i)),{props:[],needRuntime:n.helper(Hm)}},ch=(e,t)=>{e.type===1&&e.tagType===0&&(e.tag===`script`||e.tag===`style`)&&t.removeNode()},lh=[Jm],uh={cloak:Pm,html:Zm,text:Qm,model:$m,on:oh,show:sh};function dh(e,t={}){return Nm(e,c({},qm,t,{nodeTransforms:[ch,...lh,...t.nodeTransforms||[]],directiveTransforms:c({},uh,t.directiveTransforms||{}),transformHoist:null}))}var fh=Object.create(null);function ph(e,t){if(!v(e)){if(e.nodeType)e=e.innerHTML;else return i}let n=ue(e,t),r=fh[n];if(r)return r;if(e[0]===`#`){let t=document.querySelector(e);e=t?t.innerHTML:``}let a=c({hoistStatic:!0,onError:void 0,onWarn:i},t);!a.isCustomElement&&typeof customElements<`u`&&(a.isCustomElement=e=>!!customElements.get(e));let{code:o}=dh(e,a),s=Function(`Vue`,o)(Sc);return s._rc=!0,fh[n]=s}rc(ph);var mh=[`top`,`right`,`bottom`,`left`],hh=[`start`,`end`],gh=mh.reduce((e,t)=>e.concat(t,t+`-`+hh[0],t+`-`+hh[1]),[]),_h=Math.min,vh=Math.max,yh={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function bh(e,t,n){return vh(e,_h(t,n))}function xh(e,t){return typeof e==`function`?e(t):e}function Sh(e){return e.split(`-`)[0]}function Ch(e){return e.split(`-`)[1]}function wh(e){return e===`x`?`y`:`x`}function Th(e){return e===`y`?`height`:`width`}function Eh(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Dh(e){return wh(Eh(e))}function Oh(e,t,n){n===void 0&&(n=!1);let r=Ch(e),i=Dh(e),a=Th(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Lh(o)),[o,Lh(o)]}function kh(e){let t=Lh(e);return[Ah(e),t,Ah(t)]}function Ah(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var jh=[`left`,`right`],Mh=[`right`,`left`],Nh=[`top`,`bottom`],Ph=[`bottom`,`top`];function Fh(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Mh:jh:t?jh:Mh;case`left`:case`right`:return t?Nh:Ph;default:return[]}}function Ih(e,t,n,r){let i=Ch(e),a=Fh(Sh(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Ah)))),a}function Lh(e){let t=Sh(e);return yh[t]+e.slice(t.length)}function Rh(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function zh(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Rh(e)}function Bh(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function Vh(e,t,n){let{reference:r,floating:i}=e,a=Eh(t),o=Dh(t),s=Th(o),c=Sh(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=Ch(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function Hh(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=xh(t,e),p=zh(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=Bh(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=Bh(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var Uh=50,Wh=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:Hh},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=Vh(l,r,c),f=r,p=0,m={};for(let n=0;n({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=xh(e,t)||{};if(l==null)return{};let d=zh(u),f={x:n,y:r},p=Dh(i),m=Th(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=_h(d[_],T),D=_h(d[v],T),ee=C-h[m]-D,te=C/2-h[m]/2+w,O=bh(E,te,ee),k=!c.arrow&&Ch(i)!=null&&te!==O&&a.reference[m]/2-(teCh(t)===e),...n.filter(t=>Ch(t)!==e)]:n.filter(e=>Sh(e)===e)).filter(n=>!e||Ch(n)===e||(t?Ah(n)!==n:!1))}var qh=function(e){return e===void 0&&(e={}),{name:`autoPlacement`,options:e,async fn(t){let{rects:n,middlewareData:r,placement:i,platform:a,elements:o}=t,{crossAxis:s=!1,alignment:c,allowedPlacements:l=gh,autoAlignment:u=!0,...d}=xh(e,t),f=c!==void 0||l===gh?Kh(c||null,u,l):l,p=r.autoPlacement?.index||0,m=f[p];if(m==null)return{};if(i!==m)return{reset:{placement:f[0]}};let h=await a.detectOverflow(t,d),g=Oh(m,n,await(a.isRTL==null?void 0:a.isRTL(o.floating))),_=[h[Sh(m)],h[g[0]],h[g[1]]],v=[...r.autoPlacement?.overflows||[],{placement:m,overflows:_}],y=f[p+1];if(y)return{data:{index:p+1,overflows:v},reset:{placement:y}};let b=v.map(e=>{let t=Ch(e.placement);return[e.placement,t&&s?e.overflows.slice(0,2).reduce((e,t)=>e+t,0):e.overflows[0],e.overflows]}).sort((e,t)=>e[1]-t[1]),x=b.filter(e=>e[2].slice(0,Ch(e[0])?2:3).every(e=>e<=0))[0]?.[0]||b[0][0];return x===i?{}:{data:{index:p+1,overflows:v},reset:{placement:x}}}}},Jh=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=xh(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=Sh(r),_=Eh(o),v=Sh(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Lh(o)]:kh(o)),x=p!==`none`;!d&&x&&b.push(...Ih(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=Oh(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===Eh(t)||T.every(e=>Eh(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=Eh(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}},Yh=new Set([`left`,`top`]);async function Xh(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Sh(n),s=Ch(n),c=Eh(n)===`y`,l=Yh.has(o)?-1:1,u=a&&c?-1:1,d=xh(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var Zh=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await Xh(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},Qh=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=xh(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=Eh(i),p=wh(f),m=u[p],h=u[f],g=(e,t)=>bh(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},$h=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=xh(e,t),c=await i.detectOverflow(t,s),l=Sh(n),u=Ch(n),d=Eh(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let g=p-c.top-c.bottom,_=f-c.left-c.right,v=_h(p-c[m],g),y=_h(f-c[h],_),b=t.middlewareData.shift,x=!b,S=v,C=y;b!=null&&b.enabled.x&&(C=_),b!=null&&b.enabled.y&&(S=g),x&&!u&&(d?C=f-2*vh(c.left,c.right):S=p-2*vh(c.top,c.bottom)),await o({...t,availableWidth:C,availableHeight:S});let w=await i.getDimensions(a.floating);return f!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function eg(e){return e.ownerDocument?.defaultView||window}function tg(e){return eg(e).getComputedStyle(e)}var ng=Math.min,rg=Math.max,ig=Math.round;function ag(e){let t=tg(e),n=parseFloat(t.width),r=parseFloat(t.height),i=e.offsetWidth,a=e.offsetHeight,o=ig(n)!==i||ig(r)!==a;return o&&(n=i,r=a),{width:n,height:r,fallback:o}}function og(e){return dg(e)?(e.nodeName||``).toLowerCase():``}var sg;function cg(){if(sg)return sg;let e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(sg=e.brands.map((e=>e.brand+`/`+e.version)).join(` `),sg):navigator.userAgent}function lg(e){return e instanceof eg(e).HTMLElement}function ug(e){return e instanceof eg(e).Element}function dg(e){return e instanceof eg(e).Node}function fg(e){return typeof ShadowRoot>`u`?!1:e instanceof eg(e).ShadowRoot||e instanceof ShadowRoot}function pg(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=tg(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&![`inline`,`contents`].includes(i)}function mg(e){return[`table`,`td`,`th`].includes(og(e))}function hg(e){let t=/firefox/i.test(cg()),n=tg(e),r=n.backdropFilter||n.WebkitBackdropFilter;return n.transform!==`none`||n.perspective!==`none`||!!r&&r!==`none`||t&&n.willChange===`filter`||t&&!!n.filter&&n.filter!==`none`||[`transform`,`perspective`].some((e=>n.willChange.includes(e)))||[`paint`,`layout`,`strict`,`content`].some((e=>{let t=n.contain;return t!=null&&t.includes(e)}))}function gg(){return!/^((?!chrome|android).)*safari/i.test(cg())}function _g(e){return[`html`,`body`,`#document`].includes(og(e))}function vg(e){return ug(e)?e:e.contextElement}var yg={x:1,y:1};function bg(e){let t=vg(e);if(!lg(t))return yg;let n=t.getBoundingClientRect(),{width:r,height:i,fallback:a}=ag(t),o=(a?ig(n.width):n.width)/r,s=(a?ig(n.height):n.height)/i;return o&&Number.isFinite(o)||(o=1),s&&Number.isFinite(s)||(s=1),{x:o,y:s}}function xg(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=vg(e),o=yg;t&&(r?ug(r)&&(o=bg(r)):o=bg(e));let s=a?eg(a):window,c=!gg()&&n,l=(i.left+(c&&s.visualViewport?.offsetLeft||0))/o.x,u=(i.top+(c&&s.visualViewport?.offsetTop||0))/o.y,d=i.width/o.x,f=i.height/o.y;if(a){let e=eg(a),t=r&&ug(r)?eg(r):r,n=e.frameElement;for(;n&&r&&t!==e;){let e=bg(n),t=n.getBoundingClientRect(),r=getComputedStyle(n);t.x+=(n.clientLeft+parseFloat(r.paddingLeft))*e.x,t.y+=(n.clientTop+parseFloat(r.paddingTop))*e.y,l*=e.x,u*=e.y,d*=e.x,f*=e.y,l+=t.x,u+=t.y,n=eg(n).frameElement}}return{width:d,height:f,top:u,right:l+d,bottom:u+f,left:l,x:l,y:u}}function Sg(e){return((dg(e)?e.ownerDocument:e.document)||window.document).documentElement}function Cg(e){return ug(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wg(e){return xg(Sg(e)).left+Cg(e).scrollLeft}function Tg(e){if(og(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||fg(e)&&e.host||Sg(e);return fg(t)?t.host:t}function Eg(e){let t=Tg(e);return _g(t)?t.ownerDocument.body:lg(t)&&pg(t)?t:Eg(t)}function Dg(e,t){t===void 0&&(t=[]);let n=Eg(e),r=n===e.ownerDocument?.body,i=eg(n);return r?t.concat(i,i.visualViewport||[],pg(n)?n:[]):t.concat(n,Dg(n))}function Og(e,t,n){return t===`viewport`?Bh(function(e,t){let n=eg(e),r=Sg(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=gg();(e||!e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:a,height:o,x:s,y:c}}(e,n)):ug(t)?Bh(function(e,t){let n=xg(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=lg(e)?bg(e):{x:1,y:1};return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}(t,n)):Bh(function(e){let t=Sg(e),n=Cg(e),r=e.ownerDocument.body,i=rg(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=rg(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+wg(e),s=-n.scrollTop;return tg(r).direction===`rtl`&&(o+=rg(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}(Sg(e)))}function kg(e){return lg(e)&&tg(e).position!==`fixed`?e.offsetParent:null}function Ag(e){let t=eg(e),n=kg(e);for(;n&&mg(n)&&tg(n).position===`static`;)n=kg(n);return n&&(og(n)===`html`||og(n)===`body`&&tg(n).position===`static`&&!hg(n))?t:n||function(e){let t=Tg(e);for(;lg(t)&&!_g(t);){if(hg(t))return t;t=Tg(t)}return null}(e)||t}function jg(e,t,n){let r=lg(t),i=Sg(t),a=xg(e,!0,n===`fixed`,t),o={scrollLeft:0,scrollTop:0},s={x:0,y:0};if(r||!r&&n!==`fixed`){if((og(t)!==`body`||pg(i))&&(o=Cg(t)),lg(t)){let e=xg(t,!0);s.x=e.x+t.clientLeft,s.y=e.y+t.clientTop}else i&&(s.x=wg(i))}return{x:a.left+o.scrollLeft-s.x,y:a.top+o.scrollTop-s.y,width:a.width,height:a.height}}var Mg={getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?function(e,t){let n=t.get(e);if(n)return n;let r=Dg(e).filter((e=>ug(e)&&og(e)!==`body`)),i=null,a=tg(e).position===`fixed`,o=a?Tg(e):e;for(;ug(o)&&!_g(o);){let e=tg(o),t=hg(o);(a?t||i:t||e.position!==`static`||!i||![`absolute`,`fixed`].includes(i.position))?i=e:r=r.filter((e=>e!==o)),o=Tg(o)}return t.set(e,r),r}(t,this._c):[].concat(n),r],o=a[0],s=a.reduce(((e,n)=>{let r=Og(t,n,i);return e.top=rg(r.top,e.top),e.right=ng(r.right,e.right),e.bottom=ng(r.bottom,e.bottom),e.left=rg(r.left,e.left),e}),Og(t,o,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{rect:t,offsetParent:n,strategy:r}=e,i=lg(n),a=Sg(n);if(n===a)return t;let o={scrollLeft:0,scrollTop:0},s={x:1,y:1},c={x:0,y:0};if((i||!i&&r!==`fixed`)&&((og(n)!==`body`||pg(a))&&(o=Cg(n)),lg(n))){let e=xg(n);s=bg(n),c.x=e.x+n.clientLeft,c.y=e.y+n.clientTop}return{width:t.width*s.x,height:t.height*s.y,x:t.x*s.x-o.scrollLeft*s.x+c.x,y:t.y*s.y-o.scrollTop*s.y+c.y}},isElement:ug,getDimensions:function(e){return lg(e)?ag(e):e.getBoundingClientRect()},getOffsetParent:Ag,getDocumentElement:Sg,getScale:bg,async getElementRects(e){let{reference:t,floating:n,strategy:r}=e,i=this.getOffsetParent||Ag,a=this.getDimensions;return{reference:jg(t,await i(n),r),floating:{x:0,y:0,...await a(n)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>tg(e).direction===`rtl`},Ng=(e,t,n)=>{let r=new Map,i={platform:Mg,...n},a={...i.platform,_c:r};return Wh(e,t,{...i,platform:a})};function Pg(e,t){for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&(typeof t[n]==`object`&&e[n]?Pg(e[n],t[n]):e[n]=t[n])}var Fg={disabled:!1,distance:5,skidding:0,container:`body`,boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:`absolute`,preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:`top`,triggers:[`hover`,`focus`,`touch`],hideTriggers:e=>[...e,`click`],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:`...`},dropdown:{placement:`bottom`,triggers:[`click`],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:`dropdown`,triggers:[`hover`,`focus`],popperTriggers:[`hover`],delay:{show:0,hide:400}}}};function Ig(e,t){let n=Fg.themes[e]||{},r;do r=n[t],typeof r>`u`?n.$extend?n=Fg.themes[n.$extend]||{}:(n=null,r=Fg[t]):n=null;while(n);return r}function Lg(e){let t=[e],n=Fg.themes[e]||{};do n.$extend&&!n.$resetCss?(t.push(n.$extend),n=Fg.themes[n.$extend]||{}):n=null;while(n);return t.map(e=>`v-popper--theme-${e}`)}function Rg(e){let t=[e],n=Fg.themes[e]||{};do n.$extend?(t.push(n.$extend),n=Fg.themes[n.$extend]||{}):n=null;while(n);return t}var zg=!1;if(typeof window<`u`){zg=!1;try{let e=Object.defineProperty({},"passive",{get(){zg=!0}});window.addEventListener(`test`,null,e)}catch{}}var Bg=!1;typeof window<`u`&&typeof navigator<`u`&&(Bg=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);var Vg=[`auto`,`top`,`bottom`,`left`,`right`].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),Hg={hover:`mouseenter`,focus:`focus`,click:`click`,touch:`touchstart`,pointer:`pointerdown`},Ug={hover:`mouseleave`,focus:`blur`,click:`click`,touch:`touchend`,pointer:`pointerup`};function Wg(e,t){let n=e.indexOf(t);n!==-1&&e.splice(n,1)}function Gg(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}var Kg=[],qg=null,Jg={};function Yg(e){let t=Jg[e];return t||=Jg[e]=[],t}var Xg=function(){};typeof window<`u`&&(Xg=window.Element);function $(e){return function(t){return Ig(t.theme,e)}}var Zg=`__floating-vue__popper`,Qg=()=>di({name:`VPopper`,provide(){return{[Zg]:{parentPopper:this}}},inject:{[Zg]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:$(`disabled`)},positioningDisabled:{type:Boolean,default:$(`positioningDisabled`)},placement:{type:String,default:$(`placement`),validator:e=>Vg.includes(e)},delay:{type:[String,Number,Object],default:$(`delay`)},distance:{type:[Number,String],default:$(`distance`)},skidding:{type:[Number,String],default:$(`skidding`)},triggers:{type:Array,default:$(`triggers`)},showTriggers:{type:[Array,Function],default:$(`showTriggers`)},hideTriggers:{type:[Array,Function],default:$(`hideTriggers`)},popperTriggers:{type:Array,default:$(`popperTriggers`)},popperShowTriggers:{type:[Array,Function],default:$(`popperShowTriggers`)},popperHideTriggers:{type:[Array,Function],default:$(`popperHideTriggers`)},container:{type:[String,Object,Xg,Boolean],default:$(`container`)},boundary:{type:[String,Xg],default:$(`boundary`)},strategy:{type:String,validator:e=>[`absolute`,`fixed`].includes(e),default:$(`strategy`)},autoHide:{type:[Boolean,Function],default:$(`autoHide`)},handleResize:{type:Boolean,default:$(`handleResize`)},instantMove:{type:Boolean,default:$(`instantMove`)},eagerMount:{type:Boolean,default:$(`eagerMount`)},popperClass:{type:[String,Array,Object],default:$(`popperClass`)},computeTransformOrigin:{type:Boolean,default:$(`computeTransformOrigin`)},autoMinSize:{type:Boolean,default:$(`autoMinSize`)},autoSize:{type:[Boolean,String],default:$(`autoSize`)},autoMaxSize:{type:Boolean,default:$(`autoMaxSize`)},autoBoundaryMaxSize:{type:Boolean,default:$(`autoBoundaryMaxSize`)},preventOverflow:{type:Boolean,default:$(`preventOverflow`)},overflowPadding:{type:[Number,String],default:$(`overflowPadding`)},arrowPadding:{type:[Number,String],default:$(`arrowPadding`)},arrowOverflow:{type:Boolean,default:$(`arrowOverflow`)},flip:{type:Boolean,default:$(`flip`)},shift:{type:Boolean,default:$(`shift`)},shiftCrossAxis:{type:Boolean,default:$(`shiftCrossAxis`)},noAutoFocus:{type:Boolean,default:$(`noAutoFocus`)},disposeTimeout:{type:Number,default:$(`disposeTimeout`)}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:``,strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join(`_`)}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId==null?this.randomId:this.ariaId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide==`function`?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){return this[Zg]?.parentPopper},hasPopperShowTriggerHover(){return this.popperTriggers?.includes(`hover`)||this.popperShowTriggers?.includes(`hover`)}},watch:{shown:`$_autoShowHide`,disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:`$_refreshListeners`,deep:!0},positioningDisabled:`$_refreshListeners`,...[`placement`,`distance`,`skidding`,`boundary`,`strategy`,`overflowPadding`,`arrowPadding`,`preventOverflow`,`shift`,`shiftCrossAxis`,`flip`].reduce((e,t)=>(e[t]=`$_computePosition`,e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:n=!1}={}){var r;(r=this.parentPopper)!=null&&r.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(n||!this.disabled)&&(this.parentPopper?.lockedChild===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit(`show`),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit(`update:shown`,!0))},hide({event:e=null,skipDelay:t=!1}={}){if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}this.parentPopper?.lockedChild===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit(`hide`),this.$emit(`update:shown`,!1)}},init(){this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=this.referenceNode?.call(this)??this.$el,this.$_targetNodes=this.targetNodes().filter(e=>e.nodeType===e.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(`.v-popper__inner`),this.$_arrowNode=this.$_popperNode.querySelector(`.v-popper__arrow-container`),this.$_swapTargetAttrs(`title`,`data-original-title`),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs(`data-original-title`,`title`))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit(`resize`))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;let e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(Zh({mainAxis:this.distance,crossAxis:this.skidding}));let t=this.placement.startsWith(`auto`);if(t?e.middleware.push(qh({alignment:this.placement.split(`-`)[1]??``})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(Qh({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(Jh({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(Gh({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:`arrowOverflow`,fn:({placement:e,rects:t,middlewareData:n})=>{let r,{centerOffset:i}=n.arrow;return r=e.startsWith(`top`)||e.startsWith(`bottom`)?Math.abs(i)>t.reference.width/2:Math.abs(i)>t.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){let t=this.autoSize?this.autoSize:this.autoMinSize?`min`:null;e.middleware.push({name:`autoSize`,fn:({rects:e,placement:n,middlewareData:r})=>{var i;if((i=r.autoSize)!=null&&i.skip)return{};let a,o;return n.startsWith(`top`)||n.startsWith(`bottom`)?a=e.reference.width:o=e.reference.height,this.$_innerNode.style[t===`min`?`minWidth`:t===`max`?`maxWidth`:`width`]=a==null?null:`${a}px`,this.$_innerNode.style[t===`min`?`minHeight`:t===`max`?`maxHeight`:`height`]=o==null?null:`${o}px`,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push($h({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:e,availableHeight:t})=>{this.$_innerNode.style.maxWidth=e==null?null:`${e}px`,this.$_innerNode.style.maxHeight=t==null?null:`${t}px`}})));let n=await Ng(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:n.x,y:n.y,placement:n.placement,strategy:n.strategy,arrow:{...n.middlewareData.arrow,...n.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),qg&&this.instantMove&&qg.instantMove&&qg!==this.parentPopper){qg.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay(`show`))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(qg=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay(`hide`))},$_computeDelay(e){let t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Gg(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...Dg(this.$_referenceNode),...Dg(this.$_popperNode)],`scroll`,()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){let e=this.$_referenceNode.getBoundingClientRect(),t=this.$_popperNode.querySelector(`.v-popper__wrapper`),n=t.parentNode.getBoundingClientRect(),r=e.x+e.width/2-(n.left+t.offsetLeft),i=e.y+e.height/2-(n.top+t.offsetTop);this.result.transformOrigin=`${r}px ${i}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":``});let e=this.showGroup;if(e){let t;for(let n=0;n0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,Wg(Kg,this),Kg.length===0&&document.body.classList.remove(`v-popper--some-open`);for(let e of Rg(this.theme)){let t=Yg(e);Wg(t,this),t.length===0&&document.body.classList.remove(`v-popper--some-open--${e}`)}qg===this&&(qg=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);let t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners(`scroll`),this.$emit(`apply-hide`),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Gg(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e==`string`?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw Error(`No container for popover: `+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){let e=e=>{this.isShown&&!this.$_hideInProgress||(e.usedByTooltip=!0,!this.$_preventShow&&this.show({event:e}))};this.$_registerTriggerListeners(this.$_targetNodes,Hg,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],Hg,this.popperTriggers,this.popperShowTriggers,e);let t=e=>{e.usedByTooltip||this.hide({event:e})};this.$_registerTriggerListeners(this.$_targetNodes,Ug,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],Ug,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,n){this.$_events.push({targetNodes:e,eventType:t,handler:n}),e.forEach(e=>e.addEventListener(t,n,zg?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,n,r,i){let a=n;r!=null&&(a=typeof r==`function`?r(a):r),a.forEach(n=>{let r=t[n];r&&this.$_registerEventListeners(e,r,i)})},$_removeEventListeners(e){let t=[];this.$_events.forEach(n=>{let{targetNodes:r,eventType:i,handler:a}=n;!e||e===i?r.forEach(e=>e.removeEventListener(i,a)):t.push(n)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit(`close-directive`):this.$emit(`auto-hide`),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(let n of this.$_targetNodes){let r=n.getAttribute(e);r&&(n.removeAttribute(e),n.setAttribute(t,r))}},$_applyAttrsToTarget(e){for(let t of this.$_targetNodes)for(let n in e){let r=e[n];r==null?t.removeAttribute(n):t.setAttribute(n,r)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){let e=this.$_referenceNode.getBoundingClientRect();if(s_>=e.left&&s_<=e.right&&c_>=e.top&&c_<=e.bottom){let e=this.$_popperNode.getBoundingClientRect(),t=s_-a_,n=c_-o_,r=e.left+e.width/2-a_+(e.top+e.height/2)-o_+e.width+e.height,i=a_+t*r,a=o_+n*r;return l_(a_,o_,i,a,e.left,e.top,e.left,e.bottom)||l_(a_,o_,i,a,e.left,e.top,e.right,e.top)||l_(a_,o_,i,a,e.right,e.top,e.right,e.bottom)||l_(a_,o_,i,a,e.left,e.bottom,e.right,e.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<`u`&&typeof window<`u`){if(Bg){let e=!zg||{passive:!0,capture:!0};document.addEventListener(`touchstart`,e=>$g(e,!0),e),document.addEventListener(`touchend`,e=>e_(e,!0),e)}else window.addEventListener(`mousedown`,e=>$g(e,!1),!0),window.addEventListener(`click`,e=>e_(e,!1),!0);window.addEventListener(`resize`,i_)}function $g(e,t){if(Fg.autoHideOnMousedown)t_(e,t);else for(let t=0;t=0;r--){let i=Kg[r];try{let r=i.containsGlobalTarget=i.mouseDownContains||i.popperNode().contains(e.target);i.pendingHide=!1,requestAnimationFrame(()=>{if(i.pendingHide=!1,!n[i.randomId]&&n_(i,r,e)){if(i.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&r){let e=i.parentPopper;for(;e;)n[e.randomId]=!0,e=e.parentPopper;return}let a=i.parentPopper;for(;a&&n_(a,a.containsGlobalTarget,e);)a.$_handleGlobalClose(e,t),a=a.parentPopper}})}catch{}}}function n_(e,t,n){return n.closeAllPopover||n.closePopover&&t||r_(e,n)&&!t}function r_(e,t){if(typeof e.autoHide==`function`){let n=e.autoHide(t);return e.lastAutoHide=n,n}return e.autoHide}function i_(){for(let e=0;e{a_=s_,o_=c_,s_=e.clientX,c_=e.clientY},zg?{passive:!0}:void 0);function l_(e,t,n,r,i,a,o,s){let c=((o-i)*(t-a)-(s-a)*(e-i))/((s-a)*(n-e)-(o-i)*(r-t)),l=((n-e)*(t-a)-(r-t)*(e-i))/((s-a)*(n-e)-(o-i)*(r-t));return c>=0&&c<=1&&l>=0&&l<=1}var u_={extends:Qg()},d_=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};function f_(e,t,n,r,i,a){return vs(),Cs(`div`,{ref:`reference`,class:_e([`v-popper`,{"v-popper--shown":e.slotData.isShown}])},[Ca(e.$slots,`default`,ve(Ms(e.slotData)))],2)}var p_=d_(u_,[[`render`,f_]]);function m_(){var e=window.navigator.userAgent,t=e.indexOf(`MSIE `);if(t>0)return parseInt(e.substring(t+5,e.indexOf(`.`,t)),10);if(e.indexOf(`Trident/`)>0){var n=e.indexOf(`rv:`);return parseInt(e.substring(n+3,e.indexOf(`.`,n)),10)}var r=e.indexOf(`Edge/`);return r>0?parseInt(e.substring(r+5,e.indexOf(`.`,r)),10):-1}var h_;function g_(){g_.init||(g_.init=!0,h_=m_()!==-1)}var __={name:`ResizeObserver`,props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:[`notify`],mounted(){g_(),ir(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});let e=document.createElement(`object`);this._resizeObject=e,e.setAttribute(`aria-hidden`,`true`),e.setAttribute(`tabindex`,-1),e.onload=this.addResizeHandlers,e.type=`text/html`,h_&&this.$el.appendChild(e),e.data=`about:blank`,h_||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit(`notify`,{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener(`resize`,this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!h_&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener(`resize`,this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}},v_=br(`data-v-b329ee4c`);vr(`data-v-b329ee4c`);var y_={class:`resize-observer`,tabindex:`-1`};yr(),__.render=v_((e,t,n,r,i,a)=>(vs(),ws(`div`,y_))),__.__scopeId=`data-v-b329ee4c`,__.__file=`src/components/ResizeObserver.vue`;var b_=(e=`theme`)=>({computed:{themeClass(){return Lg(this[e])}}}),x_=di({name:`VPopperContent`,components:{ResizeObserver:__},mixins:[b_()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:[`hide`,`resize`],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),S_=[`id`,`aria-hidden`,`tabindex`,`data-popper-placement`],C_={ref:`inner`,class:`v-popper__inner`},w_=[As(`div`,{class:`v-popper__arrow-outer`},null,-1),As(`div`,{class:`v-popper__arrow-inner`},null,-1)];function T_(e,t,n,r,i,a){let o=ha(`ResizeObserver`);return vs(),Cs(`div`,{id:e.popperId,ref:`popover`,class:_e([`v-popper__popper`,[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:fe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?`false`:`true`,tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||=yu(t=>e.autoHide&&e.$emit(`hide`),[`esc`])},[As(`div`,{class:`v-popper__backdrop`,onClick:t[0]||=t=>e.autoHide&&e.$emit(`hide`)}),As(`div`,{class:`v-popper__wrapper`,style:fe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[As(`div`,C_,[e.mounted?(vs(),Cs(z,{key:0},[As(`div`,null,[Ca(e.$slots,`default`)]),e.handleResize?(vs(),ws(o,{key:0,onNotify:t[1]||=t=>e.$emit(`resize`,t)})):Is(``,!0)],64)):Is(``,!0)],512),As(`div`,{ref:`arrow`,class:`v-popper__arrow-container`,style:fe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},w_,4)],4)],46,S_)}var E_=d_(x_,[[`render`,T_]]),D_={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}},O_=function(){};typeof window<`u`&&(O_=window.Element);var k_=di({name:`VPopperWrapper`,components:{Popper:p_,PopperContent:E_},mixins:[D_,b_(`finalTheme`)],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,O_,Boolean],default:void 0},boundary:{type:[String,O_],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function A_(e,t,n,r,i,a){let o=ha(`PopperContent`),s=ha(`Popper`);return vs(),ws(s,Bs({ref:`popper`},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||=()=>e.$emit(`show`),onHide:t[1]||=()=>e.$emit(`hide`),"onUpdate:shown":t[2]||=t=>e.$emit(`update:shown`,t),onApplyShow:t[3]||=()=>e.$emit(`apply-show`),onApplyHide:t[4]||=()=>e.$emit(`apply-hide`),onCloseGroup:t[5]||=()=>e.$emit(`close-group`),onCloseDirective:t[6]||=()=>e.$emit(`close-directive`),onAutoHide:t[7]||=()=>e.$emit(`auto-hide`),onResize:t[8]||=()=>e.$emit(`resize`)}),{default:xr(({popperId:t,isShown:n,shouldMountContent:r,skipTransition:i,autoHide:a,show:s,hide:c,handleResize:l,onResize:u,classes:d,result:f})=>[Ca(e.$slots,`default`,{shown:n,show:s,hide:c}),V(o,{ref:`popperContent`,"popper-id":t,theme:e.finalTheme,shown:n,mounted:r,"skip-transition":i,"auto-hide":a,"handle-resize":l,classes:d,result:f,onHide:c,onResize:u},{default:xr(()=>[Ca(e.$slots,`popper`,{shown:n,hide:c})]),_:2},1032,[`popper-id`,`theme`,`shown`,`mounted`,`skip-transition`,`auto-hide`,`handle-resize`,`classes`,`result`,`onHide`,`onResize`])]),_:3},16,[`theme`,`target-nodes`,`popper-node`,`class`])}var j_=d_(k_,[[`render`,A_]]),M_={...j_,name:`VDropdown`,vPopperTheme:`dropdown`},N_={...j_,name:`VMenu`,vPopperTheme:`menu`},P_={...j_,name:`VTooltip`,vPopperTheme:`tooltip`},F_=di({name:`VTooltipDirective`,components:{Popper:Qg(),PopperContent:E_},mixins:[D_],inheritAttrs:!1,props:{theme:{type:String,default:`tooltip`},html:{type:Boolean,default:e=>Ig(e.theme,`html`)},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>Ig(e.theme,`loadingContent`)},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content==`function`},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content==`function`&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;let e=++this.$_fetchId,t=this.content(this);t.then?t.then(t=>this.onResult(e,t)):this.onResult(e,t)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),I_=[`innerHTML`],L_=[`textContent`];function R_(e,t,n,r,i,a){let o=ha(`PopperContent`),s=ha(`Popper`);return vs(),ws(s,Bs({ref:`popper`},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:xr(({popperId:t,isShown:n,shouldMountContent:r,skipTransition:i,autoHide:a,hide:s,handleResize:c,onResize:l,classes:u,result:d})=>[V(o,{ref:`popperContent`,class:_e({"v-popper--tooltip-loading":e.loading}),"popper-id":t,theme:e.theme,shown:n,mounted:r,"skip-transition":i,"auto-hide":a,"handle-resize":c,classes:u,result:d,onHide:s,onResize:l},{default:xr(()=>[e.html?(vs(),Cs(`div`,{key:0,innerHTML:e.finalContent},null,8,I_)):(vs(),Cs(`div`,{key:1,textContent:Pe(e.finalContent)},null,8,L_))]),_:2},1032,[`class`,`popper-id`,`theme`,`shown`,`mounted`,`skip-transition`,`auto-hide`,`handle-resize`,`classes`,`result`,`onHide`,`onResize`])]),_:1},16,[`theme`,`target-nodes`,`popper-node`,`onApplyShow`,`onApplyHide`])}var z_=d_(F_,[[`render`,R_]]),B_=`v-popper--has-tooltip`;function V_(e,t){let n=e.placement;if(!n&&t)for(let e of Vg)t[e]&&(n=e);return n||=Ig(e.theme||`tooltip`,`placement`),n}function H_(e,t,n){let r,i=typeof t;return r=i===`string`?{content:t}:t&&i===`object`?t:{content:!1},r.placement=V_(r,n),r.targetNodes=()=>[e],r.referenceNode=()=>e,r}var U_,W_,G_=0;function K_(){if(U_)return;W_=mn([]),U_=Du({name:`VTooltipDirectiveApp`,setup(){return{directives:W_}},render(){return this.directives.map(e=>fc(z_,{...e.options,shown:e.shown||e.options.shown,key:e.id}))},devtools:{hide:!0}});let e=document.createElement(`div`);document.body.appendChild(e),U_.mount(e)}function q_(e,t,n){K_();let r=mn(H_(e,t,n)),i=mn(!1),a={id:G_++,options:r,shown:i};return W_.value.push(a),e.classList&&e.classList.add(B_),e.$_popper={options:r,item:a,show(){i.value=!0},hide(){i.value=!1}}}function J_(e){if(e.$_popper){let t=W_.value.indexOf(e.$_popper.item);t!==-1&&W_.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(B_)}function Y_(e,{value:t,modifiers:n}){let r=H_(e,t,n);if(!r.content||Ig(r.theme||`tooltip`,`disabled`))J_(e);else{let i;e.$_popper?(i=e.$_popper,i.options.value=r):i=q_(e,t,n),typeof t.shown<`u`&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?i.show():i.hide())}}var X_={beforeMount:Y_,updated:Y_,beforeUnmount(e){J_(e)}};function Z_(e){e.addEventListener(`mousedown`,$_),e.addEventListener(`click`,$_),e.addEventListener(`touchstart`,ev,zg?{passive:!0}:!1)}function Q_(e){e.removeEventListener(`mousedown`,$_),e.removeEventListener(`click`,$_),e.removeEventListener(`touchstart`,ev),e.removeEventListener(`touchend`,tv),e.removeEventListener(`touchcancel`,nv)}function $_(e){let t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function ev(e){if(e.changedTouches.length===1){let t=e.currentTarget;t.$_vclosepopover_touch=!0,t.$_vclosepopover_touchPoint=e.changedTouches[0],t.addEventListener(`touchend`,tv),t.addEventListener(`touchcancel`,nv)}}function tv(e){let t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){let n=e.changedTouches[0],r=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(n.screenY-r.screenY)<20&&Math.abs(n.screenX-r.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function nv(e){let t=e.currentTarget;t.$_vclosepopover_touch=!1}var rv={beforeMount(e,{value:t,modifiers:n}){e.$_closePopoverModifiers=n,(typeof t>`u`||t)&&Z_(e)},updated(e,{value:t,oldValue:n,modifiers:r}){e.$_closePopoverModifiers=r,t!==n&&(typeof t>`u`||t?Z_(e):Q_(e))},beforeUnmount(e){Q_(e)}},iv=M_,av=P_;function ov(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,Pg(Fg,t),e.directive(`tooltip`,X_),e.directive(`close-popper`,rv),e.component(`VTooltip`,P_),e.component(`VDropdown`,M_),e.component(`VMenu`,N_))}var sv={version:`5.2.2`,install:ov,options:Fg},cv=typeof navigator<`u`&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),lv={install:(e,t={})=>{if(typeof window<`u`&&(window.addEventListener(`vitepress:codeGroupTabActivate`,i_,{passive:!0}),window.addEventListener(`click`,e=>{e.composedPath().some(e=>e?.classList?.contains?.(`vp-code-group`)||e?.classList?.contains?.(`tabs`))&&i_()},{passive:!0}),!cv)){let t=!1;window.addEventListener(`mousedown`,()=>{t=!0},{passive:!0}),window.addEventListener(`mouseup`,()=>{t=!1},{passive:!0});let n=e.component;e.component=function(...e){let r=n.apply(this,e);if(e.length>=2&&e[0]===`VMenu`)try{let n=e[1].components.Popper.extends,r=n.methods.show;n.methods.show=function(...e){if(!t)return r.apply(this,e)};let i=n.methods.hide;n.methods.hide=function(...e){if(!t)return i.apply(this,e)}}catch(e){console.error(`Failed to patch FloatingVue`,e)}return r}}e.use(sv,{strategy:`fixed`,...t,themes:{...t.themes,twoslash:{$extend:`dropdown`,triggers:cv?[`touch`]:[`hover`,`touch`],popperTriggers:cv?[`touch`]:[`hover`,`touch`],placement:`bottom-start`,overflowPadding:10,delay:{show:200,hide:0},handleResize:!1,autoHide:!0,noAutoFocus:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0,...t.themes?.twoslash??{}},"twoslash-query":{$extend:`twoslash`,triggers:[`click`],popperTriggers:[`click`],autoHide:!1,noAutoFocus:!0,...t.themes?.[`twoslash-query`]??{}},"twoslash-completion":{$extend:`twoslash-query`,triggers:[`click`],popperTriggers:[`click`],autoHide:!1,noAutoFocus:!0,distance:0,arrowOverflow:!0,...t.themes?.[`twoslash-completion`]??{}}}})}};export{xr as $,Ts as A,wr as B,Wi as C,fc as D,Ms as E,sa as F,_a as G,Ca as H,Xi as I,Ra as J,fi as K,ia as L,Bs as M,ir as N,Er as O,Yi as P,jr as Q,ca as R,V as S,Pe as St,Gs as T,ha as U,xa as V,va as W,Mr as X,mi as Y,kr as Z,As as _,bn as _t,Ic as a,I as at,Cs as b,ve as bt,iu as c,tn as ct,yu as d,nn as dt,Sr as et,_u as f,an as ft,dc as g,Tn as gt,qi as h,On as ht,i_ as i,cn as it,Ua as j,Tr as k,ru as l,rn as lt,z as m,F as mt,av as n,ze as nt,Gl as o,dn as ot,B as p,hn as pt,fo as q,iv as r,Be as rt,Du as s,Ve as st,lv as t,wn as tt,el as u,mn as ut,ws as v,yn as vt,di as w,Ps as x,fe as xt,Is as y,_e as yt,vs as z}; \ No newline at end of file diff --git a/lecture-07/assets/modules/unplugin-icons-CEvhMF8G.js b/lecture-07/assets/modules/unplugin-icons-CEvhMF8G.js new file mode 100644 index 0000000000000000000000000000000000000000..dcdc67d8b3453fb6e744ae86a5dfc0c43b1469d5 --- /dev/null +++ b/lecture-07/assets/modules/unplugin-icons-CEvhMF8G.js @@ -0,0 +1 @@ +import{_ as e,b as t,ot as n,z as r}from"./shiki-CkJq9tSf.js";var i={class:`slidev-icon`,viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`};function a(n,a){return r(),t(`svg`,i,[...a[0]||=[e(`path`,{fill:`currentColor`,d:`M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.9 47.9 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.9 47.9 0 0 0-2.75-16H200Z`},null,-1)]])}var o=n({name:`ph-clipboard`,render:a}),s={class:`slidev-icon`,viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`};function c(n,i){return r(),t(`svg`,s,[...i[0]||=[e(`path`,{fill:`currentColor`,d:`M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88`},null,-1)]])}var l=n({name:`ph-check-circle`,render:c}),u={class:`slidev-icon`,viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function d(n,i){return r(),t(`svg`,u,[...i[0]||=[e(`path`,{fill:`currentColor`,d:`M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z`},null,-1)]])}var f=n({name:`carbon-sun`,render:d}),p={class:`slidev-icon`,viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function m(n,i){return r(),t(`svg`,p,[...i[0]||=[e(`path`,{fill:`currentColor`,d:`M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.1 11.1 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1 1 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.07 13.07 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3`},null,-1)]])}var h=n({name:`carbon-moon`,render:m}),g={class:`slidev-icon`,viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`};function _(n,i){return r(),t(`svg`,g,[...i[0]||=[e(`path`,{fill:`currentColor`,d:`m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97`},null,-1)]])}var v=n({name:`ph-cursor-fill`,render:_});export{o as a,l as i,h as n,f as r,v as t}; \ No newline at end of file diff --git a/lecture-07/assets/modules/vue-Dz2ojcKF.js b/lecture-07/assets/modules/vue-Dz2ojcKF.js new file mode 100644 index 0000000000000000000000000000000000000000..d57a1303014bc1744c0d5b204065cda98eca8cc6 --- /dev/null +++ b/lecture-07/assets/modules/vue-Dz2ojcKF.js @@ -0,0 +1,5 @@ +import{B as e,D as t,J as n,L as r,N as i,O as a,R as o,T as s,X as c,Z as l,_t as u,at as d,ct as f,dt as p,ft as m,g as h,gt as g,ht as _,k as v,lt as y,m as b,mt as x,nt as S,pt as C,rt as w,st as T,tt as E,ut as D,vt as O,w as k}from"./shiki-CkJq9tSf.js";function ee(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function A(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&ee(e.default)}var j=Object.assign;function te(e,t){let n={};for(let r in t){let i=t[r];n[r]=M(i)?i.map(e):e(i)}return n}var ne=()=>{},M=Array.isArray;function re(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var ie=Symbol(``);function N(e,t){return j(Error(),{type:e,[ie]:!0},t)}function P(e,t){return e instanceof Error&&ie in e&&(t==null||!!(e.type&t))}var ae=Symbol(``),oe=Symbol(``),se=Symbol(``),ce=Symbol(``),le=Symbol(``);function ue(){return v(se)}function de(e){return v(ce)}var fe=typeof document<`u`,pe=/#/g,me=/&/g,he=/\//g,ge=/=/g,_e=/\?/g,ve=/\+/g,ye=/%5B/g,be=/%5D/g,F=/%5E/g,xe=/%60/g,Se=/%7B/g,Ce=/%7C/g,we=/%7D/g,Te=/%20/g;function Ee(e){return e==null?``:encodeURI(``+e).replace(Ce,`|`).replace(ye,`[`).replace(be,`]`)}function De(e){return Ee(e).replace(Se,`{`).replace(we,`}`).replace(F,`^`)}function Oe(e){return Ee(e).replace(ve,`%2B`).replace(Te,`+`).replace(pe,`%23`).replace(me,`%26`).replace(xe,"`").replace(Se,`{`).replace(we,`}`).replace(F,`^`)}function ke(e){return Oe(e).replace(ge,`%3D`)}function Ae(e){return Ee(e).replace(pe,`%23`).replace(_e,`%3F`)}function je(e){return Ae(e).replace(he,`%2F`)}function Me(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var Ne=/\/$/,Pe=e=>e.replace(Ne,``);function Fe(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=Ue(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:Me(o)}}function Ie(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function Le(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function Re(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&ze(t.matched[r],n.matched[i])&&Be(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function ze(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Be(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!Ve(e[n],t[n]))return!1;return!0}function Ve(e,t){return M(e)?He(e,t):M(t)?He(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function He(e,t){return M(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function Ue(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break}return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var I={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function We(e){if(!e){if(fe){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`}return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),Pe(e)}var Ge=/^[^#]+#/;function Ke(e,t){return e.replace(Ge,`#`)+t}function qe(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var Je=()=>({left:window.scrollX,top:window.scrollY});function Ye(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=qe(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function Xe(e,t){return(history.state?history.state.position-t:-1)+e}var Ze=new Map;function Qe(e,t){Ze.set(e,t)}function $e(e){let t=Ze.get(e);return Ze.delete(e),t}function et(e){return typeof e==`string`||e&&typeof e==`object`}function tt(e){return typeof e==`string`||typeof e==`symbol`}function nt(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&Oe(e)):[r&&Oe(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function it(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=M(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function at(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function L(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(N(4,{from:n,to:t})):e instanceof Error?c(e):et(e)?c(N(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function ot(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e])){if(ee(s)){let c=(s.__vccOpts||s)[t];c&&a.push(L(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=A(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&L(c,n,r,o,e,i)()}))}}}return a}function st(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oze(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>ze(e,s))||i.push(s))}return[n,r,i]}var ct=()=>location.protocol+`//`+location.host;function lt(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),Le(n,``)}return Le(n,e)+r+i}function ut(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=lt(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(j({},e.state,{scroll:Je()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function dt(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?Je():null}}function ft(e){let{history:t,location:n}=window,r={value:lt(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:ct()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,j({},t.state,dt(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=j({},i.value,t.state,{forward:e,scroll:Je()});a(o.current,o,!0),a(e,j({},dt(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function pt(e){e=We(e);let t=ft(e),n=ut(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=j({location:``,base:e,go:r,createHref:Ke.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}function mt(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),pt(e)}var ht={type:0,value:``},gt=/[a-zA-Z0-9_]/;function _t(e){if(!e)return[[]];if(e===`/`)return[[ht]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===80?1:-1:0}function Ct(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var Tt={strict:!1,end:!0,sensitive:!1};function Et(e,t,n){let r=j(xt(_t(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Dt(e,t){let n=[],r=new Map;t=re(Tt,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=kt(e);s.aliasOf=r&&r.record;let l=re(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(kt(j({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=Et(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!jt(d)&&o(e.name)),Ft(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:ne}function o(e){if(tt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Nt(e,n);n.splice(t,0,e),e.record.name&&!jt(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw N(1,{location:e});s=i.record.name,a=j(Ot(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&Ot(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw N(1,{location:e,currentLocation:t});s=i.record.name,a=j({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:Mt(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function Ot(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function kt(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:At(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function At(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function jt(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Mt(e){return e.reduce((e,t)=>j(e,t.meta),{})}function Nt(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Ct(e,t[i])<0?r=i:n=i+1}let i=Pt(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Pt(e){let t=e;for(;t=t.parent;)if(Ft(t)&&Ct(e,t)===0)return t}function Ft({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function It(e){let t=v(se),n=v(ce),r=h(()=>{let n=O(e.to);return t.resolve(n)}),i=h(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(ze.bind(null,i));if(o>-1)return o;let s=Vt(e[t-2]);return t>1&&Vt(i)===s&&a[a.length-1].path!==s?a.findIndex(ze.bind(null,e[t-2])):o}),a=h(()=>i.value>-1&&Bt(n.params,r.value.params)),o=h(()=>i.value>-1&&i.value===n.matched.length-1&&Be(n.params,r.value.params));function s(n={}){if(zt(n)){let n=t[O(e.replace)?`replace`:`push`](O(e.to)).catch(ne);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:h(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function Lt(e){return e.length===1?e[0]:e}var Rt=k({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:It,setup(e,{slots:n}){let r=f(It(e)),{options:i}=v(se),a=h(()=>({[Ht(e.activeClass,i.linkActiveClass,`router-link-active`)]:r.isActive,[Ht(e.exactActiveClass,i.linkExactActiveClass,`router-link-exact-active`)]:r.isExactActive}));return()=>{let i=n.default&&Lt(n.default(r));return e.custom?i:t(`a`,{"aria-current":r.isExactActive?e.ariaCurrentValue:null,href:r.href,onClick:r.navigate,class:a.value},i)}}});function zt(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(e.button===void 0||e.button===0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Bt(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!M(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function Vt(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var Ht=(e,t,n)=>e??t??n,Ut=k({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(n,{attrs:r,slots:i}){let a=v(le),o=h(()=>n.route||a.value),s=v(oe,0),l=h(()=>{let e=O(s),{matched:t}=o.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),u=h(()=>o.value.matched[l.value]);e(oe,h(()=>l.value+1)),e(ae,u),e(le,o);let d=D();return c(()=>[d.value,u.value,n.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!ze(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let e=o.value,a=n.name,s=u.value,c=s&&s.components[a];if(!c)return Wt(i.default,{Component:c,route:e});let l=s.props[a],f=l?l===!0?e.params:typeof l==`function`?l(e):l:null,p=t(c,j({},f,r,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(s.instances[a]=null)},ref:d}));return Wt(i.default,{Component:p,route:e})||p}}});function Wt(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var Gt=Ut;function Kt(e){let t=Dt(e.routes,e),n=e.parseQuery||nt,r=e.stringifyQuery||rt,a=e.history,o=at(),s=at(),c=at(),l=C(I),u=I;fe&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let d=te.bind(null,e=>``+e),f=te.bind(null,je),m=te.bind(null,Me);function h(e,n){let r,i;return tt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function g(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function _(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,i){if(i=j({},i||l.value),typeof e==`string`){let r=Fe(n,e,i.path),o=t.resolve({path:r.path},i),s=a.createHref(r.fullPath);return j(r,o,{params:m(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=j({},e,{path:Fe(n,e.path,i.path).path});else{let t=j({},e.params);for(let e in t)t[e]??delete t[e];o=j({},e,{params:f(t)}),i.params=f(i.params)}let s=t.resolve(o,i),c=e.hash||``;s.params=d(m(s.params));let u=Ie(r,j({},e,{hash:De(c),path:s.path})),p=a.createHref(u);return j({fullPath:u,hash:c,query:r===rt?it(e.query):e.query||{}},s,{redirectedFrom:void 0,href:p})}function b(e){return typeof e==`string`?Fe(n,e,l.value.path):j({},e)}function x(e,t){if(u!==e)return N(8,{from:t,to:e})}function S(e){return E(e)}function w(e){return S(j(b(e),{replace:!0}))}function T(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),j({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function E(e,t){let n=u=y(e),i=l.value,a=e.state,o=e.force,s=e.replace===!0,c=T(n,i);if(c)return E(j(b(c),{state:typeof c==`object`?j({},a,c.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&Re(r,i,n)&&(f=N(16,{to:d,from:i}),ge(i,i,!0,!1)),(f?Promise.resolve(f):ee(d,i)).catch(e=>P(e)?P(e,2)?e:he(e):pe(e,d,i)).then(e=>{if(e){if(P(e,2))return E(j({replace:s},b(e.to),{state:typeof e.to==`object`?j({},a,e.to.state):a,force:o}),t||d)}else e=re(d,i,!0,s,a);return A(d,i,e),e})}function D(e,t){let n=x(e,t);return n?Promise.reject(n):Promise.resolve()}function k(e){let t=ye.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function ee(e,t){let n,[r,i,a]=st(e,t);n=ot(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(L(r,e,t))});let c=D.bind(null,e,t);return n.push(c),F(n).then(()=>{n=[];for(let r of o.list())n.push(L(r,e,t));return n.push(c),F(n)}).then(()=>{n=ot(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(L(r,e,t))});return n.push(c),F(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter){if(M(r.beforeEnter))for(let i of r.beforeEnter)n.push(L(i,e,t));else n.push(L(r.beforeEnter,e,t))}return n.push(c),F(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=ot(a,`beforeRouteEnter`,e,t,k),n.push(c),F(n))).then(()=>{n=[];for(let r of s.list())n.push(L(r,e,t));return n.push(c),F(n)}).catch(e=>P(e,8)?e:Promise.reject(e))}function A(e,t,n){c.list().forEach(r=>k(()=>r(e,t,n)))}function re(e,t,n,r,i){let o=x(e,t);if(o)return o;let s=t===I,c=fe?history.state:{};n&&(r||s?a.replace(e.fullPath,j({scroll:s&&c&&c.scroll},i)):a.push(e.fullPath,i)),l.value=e,ge(e,t,n,s),he()}let ie;function ae(){ie||=a.listen((e,t,n)=>{if(!be.listening)return;let r=y(e),i=T(r,be.currentRoute.value);if(i){E(j(i,{replace:!0,force:!0}),r).catch(ne);return}u=r;let o=l.value;fe&&Qe(Xe(o.fullPath,n.delta),Je()),ee(r,o).catch(e=>P(e,12)?e:P(e,2)?(E(j(b(e.to),{force:!0}),r).then(e=>{P(e,20)&&!n.delta&&n.type===`pop`&&a.go(-1,!1)}).catch(ne),Promise.reject()):(n.delta&&a.go(-n.delta,!1),pe(e,r,o))).then(e=>{e||=re(r,o,!1),e&&(n.delta&&!P(e,8)?a.go(-n.delta,!1):n.type===`pop`&&P(e,20)&&a.go(-1,!1)),A(r,o,e)}).catch(ne)})}let oe=at(),ue=at(),de;function pe(e,t,n){he(e);let r=ue.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function me(){return de&&l.value!==I?Promise.resolve():new Promise((e,t)=>{oe.add([e,t])})}function he(e){return de||(de=!e,ae(),oe.list().forEach(([t,n])=>e?n(e):t()),oe.reset()),e}function ge(t,n,r,a){let{scrollBehavior:o}=e;if(!fe||!o)return Promise.resolve();let s=!r&&$e(Xe(t.fullPath,0))||(a||!r)&&history.state&&history.state.scroll||null;return i().then(()=>o(t,n,s)).then(e=>t===l.value&&e&&Ye(e)).catch(e=>t===l.value&&pe(e,t,n))}let _e=e=>a.go(e),ve,ye=new Set,be={currentRoute:l,listening:!0,addRoute:h,removeRoute:g,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:_,resolve:y,options:e,push:S,replace:w,go:_e,back:()=>_e(-1),forward:()=>_e(1),beforeEach:o.add,beforeResolve:s.add,afterEach:c.add,onError:ue.add,isReady:me,install(e){e.component(`RouterLink`,Rt),e.component(`RouterView`,Gt),e.config.globalProperties.$router=be,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>O(l)}),fe&&!ve&&l.value===I&&(ve=!0,S(a.location).catch(e=>{}));let t={};for(let e in I)Object.defineProperty(t,e,{get:()=>l.value[e],enumerable:!0});e.provide(se,be),e.provide(ce,p(t)),e.provide(le,l);let n=e.unmount;ye.add(e),e.unmount=function(){ye.delete(e),ye.size<1&&(u=I,ie&&ie(),ie=null,l.value=I,ve=!1,de=!1),n()}}};function F(e){return e.reduce((e,t)=>e.then(()=>k(t)),Promise.resolve())}return be}function R(e,t){return w()?(T(e,t),!0):!1}var qt=new WeakMap,Jt=(...e)=>{let t=e[0],n=s()?.proxy??w();if(n==null&&!a())throw Error(`injectLocal must be called in setup`);return n&&qt.has(n)&&t in qt.get(n)?qt.get(n)[t]:v(...e)};function Yt(t,n){let r=s()?.proxy??w();if(r==null)throw Error(`provideLocal must be called in setup`);qt.has(r)||qt.set(r,Object.create(null));let i=qt.get(r);return i[t]=n,e(t,n)}var z=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var Xt=e=>e!==void 0,Zt=e=>e!=null,Qt=Object.prototype.toString,$t=e=>Qt.call(e)===`[object Object]`,en=()=>+Date.now(),B=()=>{},tn=nn();function nn(){var e,t;return z&&!!((e=window)!=null&&(e=e.navigator)!=null&&e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window)==null||(t=t.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function rn(...e){if(e.length!==1)return _(...e);let t=e[0];return typeof t==`function`?y(E(()=>({get:t,set:B}))):D(t)}function an(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return`cancel`in e&&Object.assign(n,{cancel:e.cancel,flush:e.flush,isPending:e.isPending}),n}var on=e=>e();function sn(e,t={}){let n,r,i=B,a=B,o=C(!1),s=e=>{clearTimeout(e),i(),i=B},c;return Object.assign(l=>{let d=u(e),f=u(t.maxWait);return n&&s(n),d<=0||f!==void 0&&f<=0?(r&&=(s(r),void 0),o.value=!1,Promise.resolve(l())):(o.value=!0,new Promise((e,u)=>{i=t.rejectOnCancel?u:e,a=e,c=l,f&&!r&&(r=setTimeout(()=>{n&&s(n),r=void 0,o.value=!1,e(c())},f)),n=setTimeout(()=>{r&&s(r),r=void 0,o.value=!1,e(l())},d)}))},{cancel:()=>{n&&=(s(n),void 0),r&&=(s(r),void 0),o.value=!1,a=B},flush:()=>{if(o.value){n&&=(clearTimeout(n),void 0),r&&=(clearTimeout(r),void 0),o.value=!1;let e=a;i=B,a=B,e(c())}},isPending:m(o)})}function cn(e=on,t={}){let{initialState:n=`active`}=t,r=rn(n===`active`);function i(){r.value=!1}function a(){r.value=!0}return{isActive:m(r),pause:i,resume:a,eventFilter:(...t)=>{r.value&&e(...t)}}}function ln(e){let t;function n(){return t||=e(),t}return n.reset=async()=>{let e=t;t=void 0,e&&await e},n}function un(e,t){if(typeof e==`number`)return e+t;let n=e.match(/^-?\d+\.?\d*/)?.[0]||``,r=e.slice(n.length),i=Number.parseFloat(n)+t;return Number.isNaN(i)?e:i+r}function dn(e){return e.endsWith(`rem`)?Number.parseFloat(e)*16:Number.parseFloat(e)}function fn(e,t,n=!1){return Object.fromEntries(Object.entries(e).filter(([e,r])=>(!n||r!==void 0)&&!t.includes(e)))}function pn(e){return Array.isArray(e)?e:[e]}function mn(e){return e||s()}function hn(e){if(!z)return e;let t=0,n,r,i=()=>{--t,r&&t<=0&&(r.stop(),n=void 0,r=void 0)};return((...a)=>(t+=1,r||(r=S(!0),n=r.run(()=>e(...a))),R(i),n))}function gn(e,t,n={}){let{eventFilter:r=on,...i}=n;return c(e,an(r,t),i)}function _n(e,t,n={}){let{eventFilter:r,initialState:i=`active`,...a}=n,{eventFilter:o,pause:s,resume:c,isActive:l}=cn(r,{initialState:i});return{stop:gn(e,t,{...a,eventFilter:o}),pause:s,resume:c,isActive:l}}function vn(e,t={}){if(!d(e))return g(e);let n=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(let r in e.value)n[r]=E(()=>({get(){return e.value[r]},set(n){if(u(t.replaceRef)??!0){if(Array.isArray(e.value)){let t=[...e.value];t[r]=n,e.value=t}else{let t={...e.value,[r]:n};Object.setPrototypeOf(t,Object.getPrototypeOf(e.value)),e.value=t}}else e.value[r]=n}}));return n}function V(e,t=!0,n){mn(n)?r(e,n):t?e():i(e)}function yn(e,t=1e3,n={}){let{immediate:r=!0,immediateCallback:i=!1}=n,a=null,o=C(!1);function s(){a&&=(clearInterval(a),null)}function l(){o.value=!1,s()}function f(){let n=u(t);n<=0||(o.value=!0,i&&e(),s(),o.value&&(a=setInterval(e,n)))}return r&&z&&f(),(d(t)||typeof t==`function`)&&R(c(t,()=>{o.value&&z&&f()})),R(l),{isActive:m(o),pause:l,resume:f}}function bn(e=1e3,t={}){let{controls:n=!1,immediate:r=!0,callback:i}=t,a=C(0),o=()=>a.value+=1,s=()=>{a.value=0},c=yn(i?()=>{o(),i(a.value)}:o,e,{immediate:r});return n?{counter:m(a),reset:s,...c}:m(a)}function xn(e,t,n={}){let{immediate:r=!0,immediateCallback:i=!1}=n,a=C(!1),o;function s(){o&&=(clearTimeout(o),void 0)}function c(){a.value=!1,s()}function l(...n){i&&e(),s(),a.value=!0,o=setTimeout(()=>{a.value=!1,o=void 0,e(...n)},u(t))}return r&&(a.value=!0,z&&l()),R(c),{isPending:m(a),start:l,stop:c}}function Sn(e=!1,t={}){let{truthyValue:n=!0,falsyValue:r=!1}=t,i=d(e),a=C(e);function o(e){if(arguments.length)return a.value=e,a.value;{let e=u(n);return a.value=a.value===e?u(r):e,a.value}}return i?o:[a,o]}function Cn(e,t,n={}){let{debounce:r=0,maxWait:i=void 0,...a}=n;return gn(e,t,{...a,eventFilter:sn(r,{maxWait:i})})}var wn=Cn;function Tn(e,t,n={}){let{eventFilter:r=on,...i}=n,a=an(r,t),o,s,l;if(i.flush===`sync`){let t=!1;s=()=>{},o=e=>{t=!0,e(),t=!1},l=c(e,(...e)=>{t||a(...e)},i)}else{let t=[],n=0,r=0;s=()=>{n=r},t.push(c(e,()=>{r++},{...i,flush:`sync`})),o=e=>{let t=r;e(),n+=r-t},t.push(c(e,(...e)=>{let t=n>0&&n===r;n=0,r=0,!t&&a(...e)},i)),l=()=>{t.forEach(e=>e())}}return{stop:l,ignoreUpdates:o,ignorePrevAsyncUpdates:s}}var En=Tn;function Dn(e,t,n){return c(e,t,{...n,immediate:!0})}function On(e,t,n){let r=c(e,(e,a,o)=>{e&&(n?.once&&i(()=>r()),t(e,a,o))},{...n,once:!1});return r}var H=z?window:void 0,kn=z?window.document:void 0,An=z?window.navigator:void 0;z&&window.location;function U(e){let t=u(e);return t?.$el??t}function W(...e){let t=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),n=h(()=>{let t=pn(u(e[0])).filter(e=>e!=null);return t.every(e=>typeof e!=`string`)?t:void 0});return Dn(()=>[n.value?.map(e=>U(e))??[H].filter(e=>e!=null),pn(u(n.value?e[1]:e[0])),pn(O(n.value?e[2]:e[1])),u(n.value?e[3]:e[2])],([e,n,r,i],a,o)=>{if(!e?.length||!n?.length||!r?.length)return;let s=$t(i)?{...i}:i,c=e.flatMap(e=>n.flatMap(n=>r.map(r=>t(e,n,r,s))));o(()=>{c.forEach(e=>e())})},{flush:`post`})}var jn=!1;function Mn(e,t,n={}){let{window:r=H,ignore:i=[],capture:a=!0,detectIframe:o=!1,controls:s=!1}=n;if(!r)return s?{stop:B,cancel:B,trigger:B}:B;if(tn&&!jn){jn=!0;let e={passive:!0};Array.from(r.document.body.children).forEach(t=>t.addEventListener(`click`,B,e)),r.document.documentElement.addEventListener(`click`,B,e)}let c=!0,l=e=>u(i).some(t=>{if(typeof t==`string`)return Array.from(r.document.querySelectorAll(t)).some(t=>t===e.target||e.composedPath().includes(t));{let n=U(t);return n&&(e.target===n||e.composedPath().includes(n))}});function d(e){let t=u(e);return t&&t.$.subTree.shapeFlag===16}function f(e,t){let n=u(e),r=n.$.subTree&&n.$.subTree.children;return r==null||!Array.isArray(r)?!1:r.some(e=>e.el===t.target||t.composedPath().includes(e.el))}let p=n=>{let r=U(e);if(n.target!=null&&!(!(r instanceof Element)&&d(e)&&f(e,n))&&!(!r||r===n.target||n.composedPath().includes(r))){if(`detail`in n&&n.detail===0&&(c=!l(n)),!c){c=!0;return}t(n)}},m=!1,h=[W(r,`click`,e=>{m||(m=!0,setTimeout(()=>{m=!1},0),p(e))},{passive:!0,capture:a}),W(r,`pointerdown`,t=>{let n=U(e);c=!l(t)&&!!(n&&!t.composedPath().includes(n))},{passive:!0}),o&&W(r,`blur`,n=>{setTimeout(()=>{let i=U(e),a=r.document.activeElement;for(;a?.shadowRoot;)a=a.shadowRoot.activeElement;a?.tagName===`IFRAME`&&!i?.contains(r.document.activeElement)&&t(n)},0)},{passive:!0})].filter(Boolean),g=()=>h.forEach(e=>e());return s?{stop:g,cancel:()=>{c=!1},trigger:e=>{c=!0,p(e),c=!1}}:g}function Nn(){let e=C(!1),t=s();return t&&r(()=>{e.value=!0},t),e}function G(e){let t=Nn();return h(()=>(t.value,!!e()))}function Pn(e,t,n={}){let{window:r=H,...i}=n,a,o=G(()=>r&&`MutationObserver`in r),s=()=>{a&&=(a.disconnect(),void 0)},l=c(h(()=>{let t=pn(u(e)).map(U).filter(Zt);return new Set(t)}),e=>{s(),o.value&&e.size&&(a=new MutationObserver(t),e.forEach(e=>a.observe(e,i)))},{immediate:!0,flush:`post`}),d=()=>a?.takeRecords(),f=()=>{l(),s()};return R(f),{isSupported:o,stop:f,takeRecords:d}}function Fn(e,t,n={}){let{window:r=H,document:i=r?.document,flush:a=`sync`}=n;if(!r||!i)return B;let o,s=e=>{o?.(),o=e},c=l(()=>{let n=U(e);if(n){let{stop:e}=Pn(i,e=>{e.map(e=>[...e.removedNodes]).flat().some(e=>e===n||e.contains(n))&&t(e)},{window:r,childList:!0,subtree:!0});s(e)}},{flush:a}),u=()=>{c(),s()};return R(u),u}function In(e){return typeof e==`function`?e:typeof e==`string`?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function Ln(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]==`object`?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);let{target:i=H,eventName:a=`keydown`,passive:o=!1,dedupe:s=!1}=r,c=In(t);return W(i,a,e=>{e.repeat&&u(s)||c(e)&&n(e)},o)}function Rn(e={}){let{window:t=H,deep:n=!0,triggerOnRemoval:r=!1}=e,i=e.document??t?.document,a=()=>{let e=i?.activeElement;if(n)for(var t;e?.shadowRoot;)e=e==null||(t=e.shadowRoot)==null?void 0:t.activeElement;return e},o=C(),s=()=>{o.value=a()};if(t){let e={capture:!0,passive:!0};W(t,`blur`,e=>{e.relatedTarget===null&&s()},e),W(t,`focus`,s,e)}return r&&Fn(o,s,{document:i}),s(),o}var zn=Symbol(`vueuse-ssr-width`);function Bn(){let e=a()?Jt(zn,null):null;return typeof e==`number`?e:void 0}function K(e,t={}){let{window:n=H,ssrWidth:r=Bn()}=t,i=G(()=>n&&`matchMedia`in n&&typeof n.matchMedia==`function`),a=C(typeof r==`number`),o=C(),s=C(!1);return l(()=>{if(a.value){a.value=!i.value;let t=u(e).split(`,`);s.value=t.some(e=>{let t=e.includes(`not all`),n=e.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),i=e.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),a=!!(n||i);return n&&a&&(a=r>=dn(n[1])),i&&a&&(a=r<=dn(i[1])),t?!a:a});return}i.value&&(o.value=n.matchMedia(u(e)),s.value=o.value.matches)}),W(o,`change`,e=>{s.value=e.matches},{passive:!0}),h(()=>s.value)}var Vn={sm:640,md:768,lg:1024,xl:1280,"2xl":1536};function Hn(e,t={}){function n(t,n){let r=u(e[u(t)]);return n!=null&&(r=un(r,n)),typeof r==`number`&&(r=`${r}px`),r}let{window:r=H,strategy:i=`min-width`,ssrWidth:a=Bn()}=t,o=typeof a==`number`,s=o?C(!1):{value:!0};o&&V(()=>s.value=!!r);function c(e,t){return!s.value&&o?e===`min`?a>=dn(t):a<=dn(t):r?r.matchMedia(`(${e}-width: ${t})`).matches:!1}let l=e=>K(()=>`(min-width: ${n(e)})`,t),d=e=>K(()=>`(max-width: ${n(e)})`,t),f=Object.keys(e).reduce((e,t)=>(Object.defineProperty(e,t,{get:()=>i===`min-width`?l(t):d(t),enumerable:!0,configurable:!0}),e),{});function p(){let t=Object.keys(e).map(e=>[e,f[e],dn(n(e))]).sort((e,t)=>e[2]-t[2]);return h(()=>t.filter(([,e])=>e.value).map(([e])=>e))}return Object.assign(f,{greaterOrEqual:l,smallerOrEqual:d,greater(e){return K(()=>`(min-width: ${n(e,.1)})`,t)},smaller(e){return K(()=>`(max-width: ${n(e,-.1)})`,t)},between(e,r){return K(()=>`(min-width: ${n(e)}) and (max-width: ${n(r,-.1)})`,t)},isGreater(e){return c(`min`,n(e,.1))},isGreaterOrEqual(e){return c(`min`,n(e))},isSmaller(e){return c(`max`,n(e,-.1))},isSmallerOrEqual(e){return c(`max`,n(e))},isInBetween(e,t){return c(`min`,n(e))&&c(`max`,n(t,-.1))},current:p,active(){let e=p();return h(()=>e.value.length===0?``:e.value.at(i===`min-width`?-1:0))}})}function Un(e,t={}){let{controls:n=!1,navigator:r=An}=t,i=G(()=>r&&`permissions`in r),a=C(),o=typeof e==`string`?{name:e}:e,s=C(),c=()=>{s.value=a.value?.state??`prompt`};W(a,`change`,c,{passive:!0});let l=ln(async()=>{if(i.value){if(!a.value)try{a.value=await r.permissions.query(o)}catch{a.value=void 0}finally{c()}if(n)return x(a.value)}});return l(),n?{state:s,isSupported:i,query:l}:s}function Wn(e={}){let{navigator:t=An,read:n=!1,source:r,copiedDuring:i=1500,legacy:a=!1}=e,o=G(()=>t&&`clipboard`in t),s=Un(`clipboard-read`),c=Un(`clipboard-write`),l=h(()=>o.value||a),d=C(``),f=C(!1),p=C(!1),g=xn(()=>f.value=!1,i,{immediate:!1}),_=0;async function v(){let e=!(o.value&&w(s.value));if(!e)try{d.value=await t.clipboard.readText()}catch{e=!0}e&&(d.value=S())}l.value&&n&&W([`copy`,`cut`],v,{passive:!0});async function y(e){let n=e??u(r);if(l.value&&n!=null){p.value=!0;let e=!(o.value&&w(c.value));if(!e)try{let e=b(n);await t.clipboard.write([e])}catch{e=!0}if(e){if(typeof n==`string`)d.value=n,x(n);else{let e=++_,t=await n();t!=null&&e===_&&(d.value=t,x(t))}}f.value=!0,g.start(),p.value=!1}}function b(e){return typeof e==`string`?(d.value=e,new ClipboardItem({"text/plain":e})):new ClipboardItem({"text/plain":e().then((e=``)=>(d.value=e,new Blob([e],{type:`text/plain`})))})}function x(e){let t=document.createElement(`textarea`);t.value=e,t.style.position=`absolute`,t.style.opacity=`0`,t.setAttribute(`readonly`,``),document.body.appendChild(t),t.select(),document.execCommand(`copy`),t.remove()}function S(){var e,t;return((e=document)==null||(t=e.getSelection)==null||(t=t.call(e))==null?void 0:t.toString())??``}function w(e){return e===`granted`||e===`prompt`}return{copyPending:m(p),isSupported:l,text:m(d),copied:m(f),copy:y}}function Gn(e){return JSON.parse(JSON.stringify(e))}var Kn=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{},qn=`__vueuse_ssr_handlers__`,Jn=Yn();function Yn(){return qn in Kn||(Kn[qn]=Kn[qn]||{}),Kn[qn]}function Xn(e,t){return Jn[e]||t}function Zn(e){return K(`(prefers-color-scheme: dark)`,e)}function Qn(e){return e==null?`any`:e instanceof Set?`set`:e instanceof Map?`map`:e instanceof Date?`date`:typeof e==`boolean`?`boolean`:typeof e==`string`?`string`:typeof e==`object`?`object`:Number.isNaN(e)?`any`:`number`}var $n={boolean:{read:e=>e===`true`,write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},er=`vueuse-storage`;function tr(e,t,n,r={}){let{flush:a=`pre`,deep:o=!0,listenToStorageChanges:s=!0,writeDefaults:l=!0,mergeDefaults:d=!1,shallow:f,window:p=H,eventFilter:m,onError:g=e=>{console.error(e)},initOnMounted:_}=r,v=(f?C:D)(typeof t==`function`?t():t),y=h(()=>u(e));if(!n)try{n=Xn(`getDefaultStorage`,()=>H?.localStorage)()}catch(e){g(e)}if(!n)return v;let b=u(t),x=Qn(b),S=r.serializer??$n[x],{pause:w,resume:T}=_n(v,e=>k(e),{flush:a,deep:o,eventFilter:m});c(y,()=>A(),{flush:a});let E=!1;p&&s&&(n instanceof Storage?W(p,`storage`,e=>{_&&!E||A(e)},{passive:!0}):W(p,er,e=>{_&&!E||j(e)})),_?V(()=>{E=!0,A()}):A();function O(e,t){if(p){let r={key:y.value,oldValue:e,newValue:t,storageArea:n};p.dispatchEvent(n instanceof Storage?new StorageEvent(`storage`,r):new CustomEvent(er,{detail:r}))}}function k(e){try{let t=n.getItem(y.value);if(e==null)O(t,null),n.removeItem(y.value);else{let r=S.write(e);t!==r&&(n.setItem(y.value,r),O(t,r))}}catch(e){g(e)}}function ee(e){let t=e?e.newValue:n.getItem(y.value);if(t==null)return l&&b!=null&&n.setItem(y.value,S.write(b)),b;if(!e&&d){let e=S.read(t);return typeof d==`function`?d(e,b):x===`object`&&!Array.isArray(e)?{...b,...e}:e}return typeof t==`string`?S.read(t):t}function A(e){if(!(e&&e.storageArea!==n)){if(e&&e.key==null){v.value=b;return}if(!(e&&e.key!==y.value)){w();try{let t=S.write(v.value);(e===void 0||e?.newValue!==t)&&(v.value=ee(e))}catch(e){g(e)}finally{e?i(T):T()}}}}function j(e){A(e.detail)}return v}function nr(e={}){let{document:t=kn}=e;if(!t)return C(`visible`);let n=C(t.visibilityState);return W(t,`visibilitychange`,()=>{n.value=t.visibilityState},{passive:!0}),n}var rr={speed:2,margin:30,direction:`both`};function ir(e){e.scrollLeft>e.scrollWidth-e.clientWidth&&(e.scrollLeft=Math.max(0,e.scrollWidth-e.clientWidth)),e.scrollTop>e.scrollHeight-e.clientHeight&&(e.scrollTop=Math.max(0,e.scrollHeight-e.clientHeight))}function ar(e,t={}){let{pointerTypes:n,preventDefault:r,stopPropagation:i,exact:a,onMove:o,onEnd:s,onStart:l,initialValue:d,axis:f=`both`,draggingElement:p=H,containerElement:m,handle:g=e,buttons:_=[0],restrictInView:v,autoScroll:y=!1}=t,b=D(u(d)??{x:0,y:0}),x=D(),S=e=>!n||n.includes(e.pointerType),C=e=>{u(r)&&e.preventDefault(),u(i)&&e.stopPropagation()},w=u(y),T=typeof w==`object`?{speed:u(w.speed)??rr.speed,margin:u(w.margin)??rr.margin,direction:w.direction??rr.direction}:rr,E=e=>typeof e==`number`?[e,e]:[e.x,e.y],O=(e,t,n)=>{let{clientWidth:r,clientHeight:i,scrollLeft:a,scrollTop:o,scrollWidth:s,scrollHeight:c}=e,[l,u]=E(T.margin),[d,f]=E(T.speed),p=0,m=0;(T.direction===`x`||T.direction===`both`)&&(n.x0?p=-d:n.x+t.width>r-l&&a0?m=-f:n.y+t.height>i-u&&o{let t=u(m);t&&!k&&(k=setInterval(()=>{let n=u(e).getBoundingClientRect(),{x:r,y:i}=b.value,a={x:r-t.scrollLeft,y:i-t.scrollTop};a.x>=0&&a.y>=0&&(O(t,n,a),a.x+=t.scrollLeft,a.y+=t.scrollTop,b.value=a)},1e3/60))},A=()=>{k&&=(clearInterval(k),null)},j=(e,t,n,r)=>{let[i,a]=typeof n==`number`?[n,n]:[n.x,n.y],{clientWidth:o,clientHeight:s}=t;return e.xo-i||e.ys-a};u(y)&&c(b,()=>{if(u(t.disabled)||!x.value)return;let n=u(m);if(!n)return;let r=u(e).getBoundingClientRect(),{x:i,y:a}=b.value,o={x:i-n.scrollLeft,y:a-n.scrollTop};j(o,n,T.margin,r)?ee():A()});let te=n=>{var r;if(!u(_).includes(n.button)||u(t.disabled)||!S(n)||u(a)&&n.target!==u(e))return;let i=u(m),o=i==null||(r=i.getBoundingClientRect)==null?void 0:r.call(i),s=u(e).getBoundingClientRect(),c={x:n.clientX-(i?s.left-o.left+(y?0:i.scrollLeft):s.left),y:n.clientY-(i?s.top-o.top+(y?0:i.scrollTop):s.top)};l?.(c,n)!==!1&&(x.value=c,C(n))},ne=n=>{if(u(t.disabled)||!S(n)||!x.value)return;let r=u(m);r instanceof HTMLElement&&ir(r);let i=u(e).getBoundingClientRect(),{x:a,y:s}=b.value;if((f===`x`||f===`both`)&&(a=n.clientX-x.value.x,r&&(a=Math.min(Math.max(0,a),r.scrollWidth-i.width))),(f===`y`||f===`both`)&&(s=n.clientY-x.value.y,r&&(s=Math.min(Math.max(0,s),r.scrollHeight-i.height))),u(y)&&r&&(k===null&&O(r,i,{x:a,y:s}),a+=r.scrollLeft,s+=r.scrollTop),r&&(v||y)){if(f!==`y`){let e=a-r.scrollLeft;e<0?a=r.scrollLeft:e>r.clientWidth-i.width&&(a=r.clientWidth-i.width+r.scrollLeft)}if(f!==`x`){let e=s-r.scrollTop;e<0?s=r.scrollTop:e>r.clientHeight-i.height&&(s=r.clientHeight-i.height+r.scrollTop)}}b.value={x:a,y:s},o?.(b.value,n),C(n)},M=e=>{u(t.disabled)||!S(e)||x.value&&(x.value=void 0,y&&A(),s?.(b.value,e),C(e))};if(z){let e=()=>({capture:t.capture??!0,passive:!u(r)});W(g,`pointerdown`,te,e),W(p,`pointermove`,ne,e),W(p,[`pointerup`,`pointercancel`],M,e)}return{...vn(b),position:b,isDragging:h(()=>!!x.value),style:h(()=>` + left: ${b.value.x}px; + top: ${b.value.y}px; + ${y?`text-wrap: nowrap;`:``} + `)}}function or(e,t,n={}){let{window:r=H,...i}=n,a,o=G(()=>r&&`ResizeObserver`in r),s=()=>{a&&=(a.disconnect(),void 0)},l=c(h(()=>{let t=u(e);return Array.isArray(t)?t.map(e=>U(e)):[U(t)]}),e=>{if(s(),o.value&&r){a=new ResizeObserver(t);for(let t of e)t&&a.observe(t,i)}},{immediate:!0,flush:`post`}),d=()=>{s(),l()};return R(d),{isSupported:o,stop:d}}function sr(e,t={}){let{reset:n=!0,windowResize:r=!0,windowScroll:i=!0,immediate:a=!0,updateTiming:o=`sync`}=t,s=C(0),l=C(0),u=C(0),d=C(0),f=C(0),p=C(0),m=C(0),h=C(0);function g(){let t=U(e);if(!t){n&&(s.value=0,l.value=0,u.value=0,d.value=0,f.value=0,p.value=0,m.value=0,h.value=0);return}let r=t.getBoundingClientRect();s.value=r.height,l.value=r.bottom,u.value=r.left,d.value=r.right,f.value=r.top,p.value=r.width,m.value=r.x,h.value=r.y}function _(){o===`sync`?g():o===`next-frame`&&requestAnimationFrame(()=>g())}return or(e,_),c(()=>U(e),e=>!e&&_()),Pn(e,_,{attributeFilter:[`style`,`class`]}),i&&W(`scroll`,_,{capture:!0,passive:!0}),r&&W(`resize`,_,{passive:!0}),V(()=>{a&&_()}),{height:s,bottom:l,left:u,right:d,top:f,width:p,x:m,y:h,update:_}}function cr(e,t={width:0,height:0},n={}){let{window:r=H,box:i=`content-box`}=n,a=h(()=>{var t;return(t=U(e))==null||(t=t.namespaceURI)==null?void 0:t.includes(`svg`)}),o=C(t.width),s=C(t.height),{stop:l}=or(e,([t])=>{let n=i===`border-box`?t.borderBoxSize:i===`content-box`?t.contentBoxSize:t.devicePixelContentBoxSize;if(r&&a.value){let t=U(e);if(t){let e=t.getBoundingClientRect();o.value=e.width,s.value=e.height}}else if(n){let e=pn(n);o.value=e.reduce((e,{inlineSize:t})=>e+t,0),s.value=e.reduce((e,{blockSize:t})=>e+t,0)}else o.value=t.contentRect.width,s.value=t.contentRect.height},n);V(()=>{let n=U(e);if(n&&`offsetWidth`in n){if(i===`content-box`&&r){let e=r.getComputedStyle(n),t=Number.parseFloat(e.paddingLeft)+Number.parseFloat(e.paddingRight),i=Number.parseFloat(e.paddingTop)+Number.parseFloat(e.paddingBottom),a=Number.parseFloat(e.borderLeftWidth)+Number.parseFloat(e.borderRightWidth),c=Number.parseFloat(e.borderTopWidth)+Number.parseFloat(e.borderBottomWidth);o.value=n.offsetWidth-t-a,s.value=n.offsetHeight-i-c}else o.value=n.offsetWidth,s.value=n.offsetHeight}else n&&(o.value=t.width,s.value=t.height)});let u=c(()=>U(e),e=>{o.value=e?t.width:0,s.value=e?t.height:0});function d(){l(),u()}return{width:o,height:s,stop:d}}var lr=[`fullscreenchange`,`webkitfullscreenchange`,`webkitendfullscreen`,`mozfullscreenchange`,`MSFullscreenChange`];function ur(e,t={}){let{document:n=kn,autoExit:r=!1}=t,i=h(()=>U(e)??n?.documentElement),a=C(!1),o=h(()=>[`requestFullscreen`,`webkitRequestFullscreen`,`webkitEnterFullscreen`,`webkitEnterFullScreen`,`webkitRequestFullScreen`,`mozRequestFullScreen`,`msRequestFullscreen`].find(e=>n&&e in n||i.value&&e in i.value)),s=h(()=>[`exitFullscreen`,`webkitExitFullscreen`,`webkitExitFullScreen`,`webkitCancelFullScreen`,`mozCancelFullScreen`,`msExitFullscreen`].find(e=>n&&e in n||i.value&&e in i.value)),c=h(()=>[`fullScreen`,`webkitIsFullScreen`,`webkitDisplayingFullscreen`,`mozFullScreen`,`msFullscreenElement`].find(e=>n&&e in n||i.value&&e in i.value)),l=[`fullscreenElement`,`webkitFullscreenElement`,`mozFullScreenElement`,`msFullscreenElement`].find(e=>n&&e in n),u=G(()=>i.value&&n&&o.value!==void 0&&s.value!==void 0&&c.value!==void 0),d=()=>l?n?.[l]===i.value:!1,f=()=>{if(c.value){if(n&&n[c.value]!=null)return n[c.value];{let e=i.value;if(e?.[c.value]!=null)return!!e[c.value]}}return!1};async function p(){if(!(!u.value||!a.value)){if(s.value){if(n?.[s.value]!=null)await n[s.value]();else{let e=i.value;e?.[s.value]!=null&&await e[s.value]()}}a.value=!1}}async function m(){if(!u.value||a.value)return;f()&&await p();let e=i.value;o.value&&e?.[o.value]!=null&&(await e[o.value](),a.value=!0)}async function g(){await(a.value?p():m())}let _=()=>{let e=f();(!e||e&&d())&&(a.value=e)},v={capture:!1,passive:!0};return W(n,lr,_,v),W(()=>U(i),lr,_,v),V(_,!1),r&&R(p),{isSupported:u,isFullscreen:a,enter:m,exit:p,toggle:g}}function dr(e,t,n={}){let{window:r=H}=n;return tr(e,t,r?.localStorage,n)}var fr={ctrl:`control`,command:`meta`,cmd:`meta`,option:`alt`,up:`arrowup`,down:`arrowdown`,left:`arrowleft`,right:`arrowright`};function pr(e={}){let{reactive:t=!1,target:n=H,aliasMap:r=fr,passive:i=!0,onEventFired:a=B}=e,o=f(new Set),s={toJSON(){return{}},current:o},c=t?f(s):s,l=new Set,d=new Map([[`Meta`,l],[`Shift`,new Set],[`Alt`,new Set]]),p=new Set;function m(e,n){e in c&&(t?c[e]=n:c[e].value=n)}function g(){o.clear();for(let e of p)m(e,!1)}function _(e,t,n){if(!(!e||typeof t.getModifierState!=`function`)){for(let[e,r]of d)if(t.getModifierState(e)){n.forEach(e=>r.add(e));break}}}function v(e,t){if(e)return;let n=`${t[0].toUpperCase()}${t.slice(1)}`,r=d.get(n);if(![`shift`,`alt`].includes(t)||!r)return;let i=Array.from(r),a=i.indexOf(t);i.forEach((e,t)=>{t>=a&&(o.delete(e),m(e,!1))}),r.clear()}function y(e,t){let n=e.key?.toLowerCase(),r=[e.code?.toLowerCase(),n].filter(Boolean);if(n){n&&(t?o.add(n):o.delete(n));for(let e of r)p.add(e),m(e,t);_(t,e,[...o,...r]),v(t,n),n===`meta`&&!t&&(l.forEach(e=>{o.delete(e),m(e,!1)}),l.clear())}}W(n,`keydown`,e=>(y(e,!0),a(e)),{passive:i}),W(n,`keyup`,e=>(y(e,!1),a(e)),{passive:i}),W(`blur`,g,{passive:i}),W(`focus`,g,{passive:i});let b=new Proxy(c,{get(e,n,i){if(typeof n!=`string`)return Reflect.get(e,n,i);if(n=n.toLowerCase(),n in r&&(n=r[n]),!(n in c)){if(/[+_-]/.test(n)){let e=n.split(/[+_-]/g).map(e=>e.trim());c[n]=h(()=>e.map(e=>u(b[e])).every(Boolean))}else c[n]=C(!1)}let a=Reflect.get(e,n,i);return t?u(a):a}});return b}var mr={page:e=>[e.pageX,e.pageY],client:e=>[e.clientX,e.clientY],screen:e=>[e.screenX,e.screenY],movement:e=>e instanceof MouseEvent?[e.movementX,e.movementY]:null};function hr(e={}){let{type:t=`page`,touch:n=!0,resetOnTouchEnds:r=!1,initialValue:i={x:0,y:0},window:a=H,target:o=a,scroll:s=!0,eventFilter:c}=e,l=null,u=0,d=0,f=C(i.x),p=C(i.y),m=C(null),h=typeof t==`function`?t:mr[t],g=e=>{let t=h(e);l=e,t&&([f.value,p.value]=t,m.value=`mouse`),a&&(u=a.scrollX,d=a.scrollY)},_=e=>{if(e.touches.length>0){let t=h(e.touches[0]);t&&([f.value,p.value]=t,m.value=`touch`)}},v=()=>{if(!l||!a)return;let e=h(l);l instanceof MouseEvent&&e&&(f.value=e[0]+a.scrollX-u,p.value=e[1]+a.scrollY-d)},y=()=>{f.value=i.x,p.value=i.y},b=c?e=>c(()=>g(e),{}):e=>g(e),x=c?e=>c(()=>_(e),{}):e=>_(e),S=c?()=>c(()=>v(),{}):()=>v();if(o){let e={passive:!0};W(o,[`mousemove`,`dragover`],b,e),n&&t!==`movement`&&(W(o,[`touchstart`,`touchmove`],x,e),r&&W(o,`touchend`,y,e)),s&&t===`page`&&W(a,`scroll`,S,e)}return{x:f,y:p,sourceType:m}}function gr(e,t={}){let n=rn(e),{threshold:r=50,onSwipe:i,onSwipeEnd:a,onSwipeStart:o,disableTextSelect:s=!1}=t,c=f({x:0,y:0}),l=(e,t)=>{c.x=e,c.y=t},u=f({x:0,y:0}),d=(e,t)=>{u.x=e,u.y=t},p=h(()=>c.x-u.x),g=h(()=>c.y-u.y),{max:_,abs:v}=Math,b=h(()=>_(v(p.value),v(g.value))>=r),x=C(!1),S=C(!1),w=h(()=>b.value?v(p.value)>v(g.value)?p.value>0?`left`:`right`:g.value>0?`up`:`down`:`none`),T=e=>{let n=e.buttons===0,r=e.buttons===1;return t.pointerTypes?.includes(e.pointerType)??(n||r)??!0},E={passive:!0},D=[W(e,`pointerdown`,e=>{if(!T(e))return;S.value=!0,e.target?.setPointerCapture(e.pointerId);let{clientX:t,clientY:n}=e;l(t,n),d(t,n),o?.(e)},E),W(e,`pointermove`,e=>{if(!T(e)||!S.value)return;let{clientX:t,clientY:n}=e;d(t,n),!x.value&&b.value&&(x.value=!0),x.value&&i?.(e)},E),W(e,[`pointerup`,`pointercancel`],e=>{T(e)&&(x.value&&a?.(e,w.value),S.value=!1,x.value=!1)},E)];return V(()=>{var e;if((e=n.value)==null||(e=e.style)==null||e.setProperty(`touch-action`,`pan-y`),s){var t,r,i;(t=n.value)==null||(t=t.style)==null||t.setProperty(`-webkit-user-select`,`none`),(r=n.value)==null||(r=r.style)==null||r.setProperty(`-ms-user-select`,`none`),(i=n.value)==null||(i=i.style)==null||i.setProperty(`user-select`,`none`)}}),{isSwiping:m(x),direction:m(w),posStart:y(c),posEnd:y(u),distanceX:p,distanceY:g,stop:()=>D.forEach(e=>e())}}var _r=0,vr=new WeakMap;function yr(e,t={}){let n=C(!1),{document:r=kn,immediate:i=!0,manual:a=!1,id:o=`vueuse_styletag_${++_r}`}=t,s=C(e),l=()=>{},u=()=>{if(!r)return;let e=r.getElementById(o)||r.createElement(`style`);e.isConnected||(e.id=o,t.nonce&&(e.nonce=t.nonce),t.media&&(e.media=t.media),r.head.appendChild(e)),!n.value&&(vr.set(e,(vr.get(e)??0)+1),l=c(s,t=>{e.textContent=t},{immediate:!0}),n.value=!0)},d=()=>{if(!r||!n.value)return;l();let e=r.getElementById(o);if(e){let t=(vr.get(e)??1)-1;t<=0?(vr.delete(e),r.head.removeChild(e)):vr.set(e,t)}n.value=!1};return i&&!a&&V(u),a||R(d),{id:o,css:s,unload:d,load:u,isLoaded:m(n)}}function br(e,t,n,r={}){var a,o;let{clone:l=!1,passive:u=!1,eventName:d,deep:f=!1,defaultValue:p,shouldEmit:m}=r,g=s(),_=n||g?.emit||(g==null||(a=g.$emit)==null?void 0:a.bind(g))||(g==null||(o=g.proxy)==null||(o=o.$emit)==null?void 0:o.bind(g?.proxy)),v=d;t||=`modelValue`,v||=`update:${t.toString()}`;let y=e=>l?typeof l==`function`?l(e):Gn(e):e,b=()=>Xt(e[t])?y(e[t]):p,x=e=>{m?m(e)&&_(v,e):_(v,e)};if(u){let n=D(b()),r=!1;return c(()=>e[t],e=>{r||(r=!0,n.value=y(e),i(()=>r=!1))}),c(n,n=>{!r&&(n!==e[t]||f)&&x(n)},{deep:f}),n}return h({get(){return b()},set(e){x(e)}})}function xr(e={}){let{navigator:t=An,document:n=kn}=e,r=C(!1),i=C(null),a=nr({document:n}),o=G(()=>t&&`wakeLock`in t),s=h(()=>!!i.value&&a.value===`visible`);o.value&&(W(i,`release`,()=>{r.value=i.value?.type??!1},{passive:!0}),On(()=>a.value===`visible`&&n?.visibilityState===`visible`&&r.value,e=>{r.value=!1,c(e)}));async function c(e){await i.value?.release(),i.value=o.value?await t.wakeLock.request(e):null}async function l(e){a.value===`visible`?await c(e):r.value=e}async function u(){r.value=!1;let e=i.value;i.value=null,await e?.release()}return R(()=>{u()}),{sentinel:i,isSupported:o,isActive:s,request:l,forceRequest:c,release:u}}function Sr(e={}){let{window:t=H}=e;if(!t)return C(!1);let n=C(t.document.hasFocus()),r={passive:!0};return W(t,`blur`,()=>{n.value=!1},r),W(t,`focus`,()=>{n.value=!0},r),n}function Cr(e={}){let{window:t=H,initialWidth:n=1/0,initialHeight:r=1/0,listenOrientation:i=!0,includeScrollbar:a=!0,type:o=`inner`}=e,s=C(n),l=C(r),u=()=>{if(t){if(o===`outer`)s.value=t.outerWidth,l.value=t.outerHeight;else if(o===`visual`&&t.visualViewport){let{width:e,height:n,scale:r}=t.visualViewport;s.value=Math.round(e*r),l.value=Math.round(n*r)}else a?(s.value=t.innerWidth,l.value=t.innerHeight):(s.value=t.document.documentElement.clientWidth,l.value=t.document.documentElement.clientHeight)}};u(),V(u);let d={passive:!0};return W(`resize`,u,d),t&&o===`visual`&&t.visualViewport&&W(t.visualViewport,`resize`,u,d),i&&c(K(`(orientation: portrait)`),()=>u()),{width:s,height:l}}function wr(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)===`[object Module]`:!0}function Tr(e,t,n=`.`,r){if(!wr(t))return Tr(e,{},n,r);let i={...t};for(let t of Object.keys(e)){if(t===`__proto__`||t===`constructor`)continue;let a=e[t];a!=null&&(r&&r(i,t,a,n)||(i[t]=Array.isArray(a)&&Array.isArray(i[t])?[...a,...i[t]]:wr(a)&&wr(i[t])?Tr(a,i[t],(n?`${n}.`:``)+t.toString(),r):a))}return i}function Er(e){return(...t)=>t.reduce((t,n)=>Tr(t,n,``,e),{})}var Dr=Er();function Or(e){return w()?(T(e),!0):!1}var kr=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var Ar=e=>e!=null,jr=Object.prototype.toString,Mr=e=>jr.call(e)===`[object Object]`,Nr=()=>{};function Pr(e){return Array.isArray(e)?e:[e]}function Fr(e){return e||s()}function Ir(e,t){Fr(t)&&o(e,t)}function Lr(e,t,n){return c(e,t,{...n,immediate:!0})}var Rr=kr?window:void 0;kr&&window.document,kr&&window.navigator,kr&&window.location;function zr(e){let t=u(e);return t?.$el??t}function q(...e){let t=[],n=()=>{t.forEach(e=>e()),t.length=0},r=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),i=h(()=>{let t=Pr(u(e[0])).filter(e=>e!=null);return t.every(e=>typeof e!=`string`)?t:void 0}),a=Lr(()=>[i.value?.map(e=>zr(e))??[Rr].filter(e=>e!=null),Pr(u(i.value?e[1]:e[0])),Pr(O(i.value?e[2]:e[1])),u(i.value?e[3]:e[2])],([e,i,a,o])=>{if(n(),!e?.length||!i?.length||!a?.length)return;let s=Mr(o)?{...o}:o;t.push(...e.flatMap(e=>i.flatMap(t=>a.map(n=>r(e,t,n,s)))))},{flush:`post`});return Or(n),()=>{a(),n()}}function Br(){let e=C(!1),t=s();return t&&r(()=>{e.value=!0},t),e}function Vr(e){let t=Br();return h(()=>(t.value,!!e()))}function Hr(e,t,n={}){let{root:r,rootMargin:i=`0px`,threshold:a=0,window:o=Rr,immediate:s=!0}=n,l=Vr(()=>o&&`IntersectionObserver`in o),d=h(()=>Pr(u(e)).map(zr).filter(Ar)),f=Nr,p=C(s),m=l.value?c(()=>[d.value,zr(r),p.value],([e,n])=>{if(f(),!p.value||!e.length)return;let r=new IntersectionObserver(t,{root:zr(n),rootMargin:i,threshold:a});e.forEach(e=>e&&r.observe(e)),f=()=>{r.disconnect(),f=Nr}},{immediate:s,flush:`post`}):Nr,g=()=>{f(),m(),p.value=!1};return Or(g),{isSupported:l,isActive:p,pause(){f(),p.value=!1},resume(){p.value=!0},stop:g}}var Ur=1/60*1e3,Wr=typeof performance<`u`?()=>performance.now():()=>Date.now(),Gr=typeof window<`u`?e=>window.requestAnimationFrame(e):e=>setTimeout(()=>e(Wr()),Ur);function Kr(e){let t=[],n=[],r=0,i=!1,a=!1,o=new WeakSet,s={schedule:(e,a=!1,s=!1)=>{let c=s&&i,l=c?t:n;return a&&o.add(e),l.indexOf(e)===-1&&(l.push(e),c&&i&&(r=t.length)),e},cancel:e=>{let t=n.indexOf(e);t!==-1&&n.splice(t,1),o.delete(e)},process:c=>{if(i){a=!0;return}if(i=!0,[t,n]=[n,t],n.length=0,r=t.length,r)for(let n=0;n(e[t]=Kr(()=>Yr=!0),e),{}),ei=Qr.reduce((e,t)=>{let n=$r[t];return e[t]=(e,t=!1,r=!1)=>(Yr||ii(),n.schedule(e,t,r)),e},{}),ti=Qr.reduce((e,t)=>(e[t]=$r[t].cancel,e),{});Qr.reduce((e,t)=>(e[t]=()=>$r[t].process(Zr),e),{});var ni=e=>$r[e].process(Zr),ri=e=>{Yr=!1,Zr.delta=Jr?Ur:Math.max(Math.min(e-Zr.timestamp,qr),1),Zr.timestamp=e,Xr=!0,Qr.forEach(ni),Xr=!1,Yr&&(Jr=!1,Gr(ri))},ii=()=>{Yr=!0,Jr=!0,Xr||Gr(ri)},ai=()=>Zr;function oi(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);iMath.min(Math.max(n,e),t),ci=.001,li=.01,ui=.05;function di({duration:e=800,bounce:t=.25,velocity:n=0,mass:r=1}){let i,a,o=1-t;o=si(ui,1,o),e=si(li,10,e/1e3),o<1?(i=t=>{let r=t*o,i=r*e,a=r-n,s=mi(t,o),c=Math.exp(-i);return ci-a/s*c},a=t=>{let r=t*o*e,a=r*n+n,s=o**2*t**2*e,c=Math.exp(-r),l=mi(t**2,o);return(-i(t)+ci>0?-1:1)*((a-s)*c)/l}):(i=t=>-.001+Math.exp(-t*e)*((t-n)*e+1),a=t=>Math.exp(-t*e)*((n-t)*(e*e)));let s=5/e,c=pi(i,a,s);if(e*=1e3,isNaN(c))return{stiffness:100,damping:10,duration:e};{let t=c**2*r;return{stiffness:t,damping:o*2*Math.sqrt(r*t),duration:e}}}var fi=12;function pi(e,t,n){let r=n;for(let n=1;ne[t]!==void 0)}function vi(e){let t=Object.assign({velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1},e);if(!_i(e,gi)&&_i(e,hi)){let n=di(e);t=Object.assign(Object.assign(Object.assign({},t),n),{velocity:0,mass:1}),t.isResolvedFromDuration=!0}return t}function yi(e){var{from:t=0,to:n=1,restSpeed:r=2,restDelta:i}=e,a=oi(e,[`from`,`to`,`restSpeed`,`restDelta`]);let o={done:!1,value:t},{stiffness:s,damping:c,mass:l,velocity:u,duration:d,isResolvedFromDuration:f}=vi(a),p=bi,m=bi;function h(){let e=u?-(u/1e3):0,r=n-t,a=c/(2*Math.sqrt(s*l)),o=Math.sqrt(s/l)/1e3;if(i===void 0&&(i=Math.min(Math.abs(n-t)/100,.4)),a<1){let t=mi(o,a);p=i=>{let s=Math.exp(-a*o*i);return n-s*((e+a*o*r)/t*Math.sin(t*i)+r*Math.cos(t*i))},m=n=>{let i=Math.exp(-a*o*n);return a*o*i*(Math.sin(t*n)*(e+a*o*r)/t+r*Math.cos(t*n))-i*(Math.cos(t*n)*(e+a*o*r)-t*r*Math.sin(t*n))}}else if(a===1)p=t=>n-Math.exp(-o*t)*(r+(e+o*r)*t);else{let t=o*Math.sqrt(a*a-1);p=i=>{let s=Math.exp(-a*o*i),c=Math.min(t*i,300);return n-s*((e+a*o*r)*Math.sinh(c)+t*r*Math.cosh(c))/t}}}return h(),{next:e=>{let t=p(e);if(f)o.done=e>=d;else{let a=m(e)*1e3,s=Math.abs(a)<=r,c=Math.abs(n-t)<=i;o.done=s&&c}return o.value=o.done?n:t,o},flipTarget:()=>{u=-u,[t,n]=[n,t],h()}}}yi.needsInterpolation=(e,t)=>typeof e==`string`||typeof t==`string`;var bi=e=>0,xi=(e,t,n)=>{let r=t-e;return r===0?1:(n-e)/r},Si=(e,t,n)=>-n*e+n*t+e,Ci=(e,t)=>n=>Math.max(Math.min(n,t),e),wi=e=>e%1?Number(e.toFixed(5)):e,Ti=/(-)?([\d]*\.?[\d])+/g,Ei=/(#[0-9a-f]{6}|#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,Di=/^(#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function Oi(e){return typeof e==`string`}var ki={test:e=>typeof e==`number`,parse:parseFloat,transform:e=>e},Ai=Object.assign(Object.assign({},ki),{transform:Ci(0,1)}),ji=Object.assign(Object.assign({},ki),{default:1}),Mi=e=>({test:t=>Oi(t)&&t.endsWith(e)&&t.split(` `).length===1,parse:parseFloat,transform:t=>`${t}${e}`}),J=Mi(`deg`),Ni=Mi(`%`),Y=Mi(`px`),Pi=Object.assign(Object.assign({},Ni),{parse:e=>Ni.parse(e)/100,transform:e=>Ni.transform(e*100)}),Fi=(e,t)=>n=>!!(Oi(n)&&Di.test(n)&&n.startsWith(e)||t&&Object.prototype.hasOwnProperty.call(n,t)),Ii=(e,t,n)=>r=>{if(!Oi(r))return r;let[i,a,o,s]=r.match(Ti);return{[e]:parseFloat(i),[t]:parseFloat(a),[n]:parseFloat(o),alpha:s===void 0?1:parseFloat(s)}},X={test:Fi(`hsl`,`hue`),parse:Ii(`hue`,`saturation`,`lightness`),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>`hsla(`+Math.round(e)+`, `+Ni.transform(wi(t))+`, `+Ni.transform(wi(n))+`, `+wi(Ai.transform(r))+`)`},Li=Ci(0,255),Ri=Object.assign(Object.assign({},ki),{transform:e=>Math.round(Li(e))}),Z={test:Fi(`rgb`,`red`),parse:Ii(`red`,`green`,`blue`),transform:({red:e,green:t,blue:n,alpha:r=1})=>`rgba(`+Ri.transform(e)+`, `+Ri.transform(t)+`, `+Ri.transform(n)+`, `+wi(Ai.transform(r))+`)`};function zi(e){let t=``,n=``,r=``,i=``;return e.length>5?(t=e.substr(1,2),n=e.substr(3,2),r=e.substr(5,2),i=e.substr(7,2)):(t=e.substr(1,1),n=e.substr(2,1),r=e.substr(3,1),i=e.substr(4,1),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:i?parseInt(i,16)/255:1}}var Bi={test:Fi(`#`),parse:zi,transform:Z.transform},Q={test:e=>Z.test(e)||Bi.test(e)||X.test(e),parse:e=>Z.test(e)?Z.parse(e):X.test(e)?X.parse(e):Bi.parse(e),transform:e=>Oi(e)?e:e.hasOwnProperty(`red`)?Z.transform(e):X.transform(e)},Vi="${c}",Hi="${n}";function Ui(e){return isNaN(e)&&Oi(e)&&(e.match(Ti)?.length??0)+(e.match(Ei)?.length??0)>0}function Wi(e){typeof e==`number`&&(e=`${e}`);let t=[],n=0,r=e.match(Ei);r&&(n=r.length,e=e.replace(Ei,Vi),t.push(...r.map(Q.parse)));let i=e.match(Ti);return i&&(e=e.replace(Ti,Hi),t.push(...i.map(ki.parse))),{values:t,numColors:n,tokenised:e}}function Gi(e){return Wi(e).values}function Ki(e){let{values:t,numColors:n,tokenised:r}=Wi(e),i=t.length;return e=>{let t=r;for(let r=0;rtypeof e==`number`?0:e;function Ji(e){let t=Gi(e);return Ki(e)(t.map(qi))}var Yi={test:Ui,parse:Gi,createTransformer:Ki,getAnimatableNone:Ji},Xi=new Set([`brightness`,`contrast`,`saturate`,`opacity`]);function Zi(e){let[t,n]=e.slice(0,-1).split(`(`);if(t===`drop-shadow`)return e;let[r]=n.match(Ti)||[];if(!r)return e;let i=n.replace(r,``),a=+!!Xi.has(t);return r!==n&&(a*=100),t+`(`+a+i+`)`}var Qi=/([a-z-]*)\(.*?\)/g,$i=Object.assign(Object.assign({},Yi),{getAnimatableNone:e=>{let t=e.match(Qi);return t?t.map(Zi).join(` `):e}});function ea(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function ta({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let i=0,a=0,o=0;if(!t)i=a=o=n;else{let r=n<.5?n*(1+t):n+t-n*t,s=2*n-r;i=ea(s,r,e+1/3),a=ea(s,r,e),o=ea(s,r,e-1/3)}return{red:Math.round(i*255),green:Math.round(a*255),blue:Math.round(o*255),alpha:r}}var na=(e,t,n)=>{let r=e*e,i=t*t;return Math.sqrt(Math.max(0,n*(i-r)+r))},ra=[Bi,Z,X],ia=e=>ra.find(t=>t.test(e)),aa=e=>`'${e}' is not an animatable color. Use the equivalent color code instead.`,oa=(e,t)=>{let n=ia(e),r=ia(t);aa(e),aa(t);let i=n.parse(e),a=r.parse(t);n===X&&(i=ta(i),n=Z),r===X&&(a=ta(a),r=Z);let o=Object.assign({},i);return e=>{for(let t in o)t!==`alpha`&&(o[t]=na(i[t],a[t],e));return o.alpha=Si(i.alpha,a.alpha,e),n.transform(o)}},sa=e=>typeof e==`number`,ca=(e,t)=>n=>t(e(n)),la=(...e)=>e.reduce(ca);function ua(e,t){return sa(e)?n=>Si(e,t,n):Q.test(e)?oa(e,t):ma(e,t)}var da=(e,t)=>{let n=[...e],r=n.length,i=e.map((e,n)=>ua(e,t[n]));return e=>{for(let t=0;t{let n=Object.assign(Object.assign({},e),t),r={};for(let i in n)e[i]!==void 0&&t[i]!==void 0&&(r[i]=ua(e[i],t[i]));return e=>{for(let t in r)n[t]=r[t](e);return n}};function pa(e){let t=Yi.parse(e),n=t.length,r=0,i=0,a=0;for(let e=0;e{let n=Yi.createTransformer(t),r=pa(e),i=pa(t);return r.numHSL===i.numHSL&&r.numRGB===i.numRGB&&r.numNumbers>=i.numNumbers?la(da(r.parsed,i.parsed),n):(`${e}${t}`,n=>`${n>0?t:e}`)},ha=(e,t)=>n=>Si(e,t,n);function ga(e){if(typeof e==`number`)return ha;if(typeof e==`string`)return Q.test(e)?oa:ma;if(Array.isArray(e))return da;if(typeof e==`object`)return fa}function _a(e,t,n){let r=[],i=n||ga(e[0]),a=e.length-1;for(let n=0;nn(xi(e,t,r))}function ya(e,t){let n=e.length,r=n-1;return i=>{let a=0,o=!1;if(i<=e[0]?o=!0:i>=e[r]&&(a=r-1,o=!0),!o){let t=1;for(;ti||t===r);t++);a=t-1}let s=xi(e[a],e[a+1],i);return t[a](s)}}function ba(e,t,{clamp:n=!0,ease:r,mixer:i}={}){let a=e.length;t.length,!r||!Array.isArray(r)||(r.length,a-1),e[0]>e[a-1]&&(e=[].concat(e),t=[].concat(t),e.reverse(),t.reverse());let o=_a(t,r,i),s=a===2?va(e,o):ya(e,o);return n?t=>s(si(e[0],e[a-1],t)):s}var xa=e=>t=>1-e(1-t),Sa=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,Ca=e=>t=>t**+e,wa=e=>t=>t*t*((e+1)*t-e),Ta=e=>{let t=wa(e);return e=>(e*=2)<1?.5*t(e):.5*(2-2**(-10*(e-1)))},Ea=1.525,Da=4/11,Oa=8/11,ka=9/10,Aa=e=>e,ja=Ca(2),Ma=xa(ja),Na=Sa(ja),Pa=e=>1-Math.sin(Math.acos(e)),Fa=xa(Pa),Ia=Sa(Fa),La=wa(Ea),Ra=xa(La),za=Sa(La),Ba=Ta(Ea),Va=4356/361,Ha=35442/1805,Ua=16061/1805,Wa=e=>{if(e===1||e===0)return e;let t=e*e;return ee<.5?.5*(1-Wa(1-e*2)):.5*Wa(e*2-1)+.5;function qa(e,t){return e.map(()=>t||Na).splice(0,e.length-1)}function Ja(e){let t=e.length;return e.map((e,n)=>n===0?0:n/(t-1))}function Ya(e,t){return e.map(e=>e*t)}function Xa({from:e=0,to:t=1,ease:n,offset:r,duration:i=300}){let a={done:!1,value:e},o=Array.isArray(t)?t:[e,t],s=Ya(r&&r.length===o.length?r:Ja(o),i);function c(){return ba(s,o,{ease:Array.isArray(n)?n:qa(o,n)})}let l=c();return{next:e=>(a.value=l(e),a.done=e>=i,a),flipTarget:()=>{o.reverse(),l=c()}}}function Za({velocity:e=0,from:t=0,power:n=.8,timeConstant:r=350,restDelta:i=.5,modifyTarget:a}){let o={done:!1,value:t},s=n*e,c=t+s,l=a===void 0?c:a(c);return l!==c&&(s=l-t),{next:e=>{let t=-s*Math.exp(-e/r);return o.done=!(t>i||t<-i),o.value=o.done?l:l+t,o},flipTarget:()=>{}}}var Qa={keyframes:Xa,spring:yi,decay:Za};function $a(e){if(Array.isArray(e.to))return Xa;if(Qa[e.type])return Qa[e.type];let t=new Set(Object.keys(e));return t.has(`ease`)||t.has(`duration`)&&!t.has(`dampingRatio`)?Xa:t.has(`dampingRatio`)||t.has(`stiffness`)||t.has(`mass`)||t.has(`damping`)||t.has(`restSpeed`)||t.has(`restDelta`)?yi:Xa}function eo(e,t,n=0){return e-t-n}function to(e,t,n=0,r=!0){return r?eo(t+-e,t,n):t-(e-t)+n}function no(e,t,n,r){return r?e>=t+n:e<=-n}var ro=e=>{let t=({delta:t})=>e(t);return{start:()=>ei.update(t,!0),stop:()=>ti.update(t)}};function io(e){var t,{from:n,autoplay:r=!0,driver:i=ro,elapsed:a=0,repeat:o=0,repeatType:s=`loop`,repeatDelay:c=0,onPlay:l,onStop:u,onComplete:d,onRepeat:f,onUpdate:p}=e,m=oi(e,[`from`,`autoplay`,`driver`,`elapsed`,`repeat`,`repeatType`,`repeatDelay`,`onPlay`,`onStop`,`onComplete`,`onRepeat`,`onUpdate`]);let{to:h}=m,g,_=0,v=m.duration,y,b=!1,x=!0,S,C=$a(m);(t=C).needsInterpolation?.call(t,n,h)&&(S=ba([0,100],[n,h],{clamp:!1}),n=0,h=100);let w=C(Object.assign(Object.assign({},m),{from:n,to:h}));function T(){_++,s===`reverse`?(x=_%2==0,a=to(a,v,c,x)):(a=eo(a,v,c),s===`mirror`&&w.flipTarget()),b=!1,f&&f()}function E(){g.stop(),d&&d()}function D(e){if(x||(e=-e),a+=e,!b){let e=w.next(Math.max(0,a));y=e.value,S&&(y=S(y)),b=x?e.done:a<=0}p?.(y),b&&(_===0&&(v??=a),_{u?.(),g.stop()}}}function ao(e,t){return t?1e3/t*e:0}function oo({from:e=0,velocity:t=0,min:n,max:r,power:i=.8,timeConstant:a=750,bounceStiffness:o=500,bounceDamping:s=10,restDelta:c=1,modifyTarget:l,driver:u,onUpdate:d,onComplete:f,onStop:p}){let m;function h(e){return n!==void 0&&er}function g(e){return n===void 0?r:r===void 0||Math.abs(n-e){var n;d?.(t),(n=e.onUpdate)==null||n.call(e,t)},onComplete:f,onStop:p}))}function v(e){_(Object.assign({type:`spring`,stiffness:o,damping:s,restDelta:c},e))}if(h(e))v({from:e,velocity:t,to:g(e)});else{let r=i*t+e;l!==void 0&&(r=l(r));let o=g(r),s=o===n?-1:1,u,d;_({type:`decay`,from:e,velocity:t,timeConstant:a,power:i,restDelta:c,modifyTarget:l,onUpdate:h(r)?e=>{u=d,d=e,t=ao(e-u,ai().delta),(s===1&&e>o||s===-1&&em?.stop()}}var so=(e,t)=>1-3*t+3*e,co=(e,t)=>3*t-6*e,lo=e=>3*e,uo=(e,t,n)=>((so(t,n)*e+co(t,n))*e+lo(t))*e,fo=(e,t,n)=>3*so(t,n)*e*e+2*co(t,n)*e+lo(t),po=1e-7,mo=10;function ho(e,t,n,r,i){let a,o,s=0;do o=t+(n-t)/2,a=uo(o,r,i)-e,a>0?n=o:t=o;while(Math.abs(a)>po&&++s=_o?vo(t,s,e,n):c===0?s:ho(t,r,r+bo,e,n)}return e=>e===0||e===1?e:uo(a(e),t,r)}var So={},Co=class{subscriptions=new Set;add(e){return this.subscriptions.add(e),()=>this.subscriptions.delete(e)}notify(e,t,n){if(this.subscriptions.size)for(let r of this.subscriptions)r(e,t,n)}clear(){this.subscriptions.clear()}};function wo(e){return!Number.isNaN(Number.parseFloat(e))}var To=class{current;prev;timeDelta=0;lastUpdated=0;updateSubscribers=new Co;stopAnimation;canTrackVelocity=!1;constructor(e){this.prev=this.current=e,this.canTrackVelocity=wo(this.current)}onChange(e){return this.updateSubscribers.add(e)}clearListeners(){this.updateSubscribers.clear()}set(e){this.updateAndNotify(e)}updateAndNotify=e=>{this.prev=this.current,this.current=e;let{delta:t,timestamp:n}=ai();this.lastUpdated!==n&&(this.timeDelta=t,this.lastUpdated=n),ei.postRender(this.scheduleVelocityCheck),this.updateSubscribers.notify(this.current)};get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?ao(Number.parseFloat(this.current)-Number.parseFloat(this.prev),this.timeDelta):0}scheduleVelocityCheck=()=>ei.postRender(this.velocityCheck);velocityCheck=({timestamp:e})=>{this.canTrackVelocity||=wo(this.current),e!==this.lastUpdated&&(this.prev=this.current)};start(e){return this.stop(),new Promise(t=>{let{stop:n}=e(t);this.stopAnimation=n}).then(()=>this.clearAnimation())}stop(){this.stopAnimation&&this.stopAnimation(),this.clearAnimation()}isAnimating(){return!!this.stopAnimation}clearAnimation(){this.stopAnimation=null}destroy(){this.updateSubscribers.clear(),this.stop()}};function Eo(e){return new To(e)}var{isArray:Do}=Array;function Oo(){let e=D({}),t=t=>{let n=t=>{e.value[t]&&(e.value[t].stop(),e.value[t].destroy(),delete e.value[t])};t?Do(t)?t.forEach(n):n(t):Object.keys(e.value).forEach(n)};return Ir(t),{motionValues:e,get:(t,n,r)=>{if(e.value[t])return e.value[t];let i=Eo(n);return i.onChange(e=>r[t]=e),e.value[t]=i,i},stop:t}}function ko(e){return Array.isArray(e)}function $(){return{type:`spring`,stiffness:500,damping:25,restDelta:.5,restSpeed:10}}function Ao(e){return{type:`spring`,stiffness:550,damping:e===0?2*Math.sqrt(550):30,restDelta:.01,restSpeed:10}}function jo(e){return{type:`spring`,stiffness:550,damping:e===0?100:30,restDelta:.01,restSpeed:10}}function Mo(){return{type:`keyframes`,ease:`linear`,duration:300}}function No(e){return{type:`keyframes`,duration:800,values:e}}var Po={default:jo,x:$,y:$,z:$,rotate:$,rotateX:$,rotateY:$,rotateZ:$,scaleX:Ao,scaleY:Ao,scale:Ao,backgroundColor:Mo,color:Mo,opacity:Mo};function Fo(e,t){let n;return n=ko(t)?No:Po[e]||Po.default,{to:t,...n(t)}}var Io={...ki,transform:Math.round},Lo={color:Q,backgroundColor:Q,outlineColor:Q,fill:Q,stroke:Q,borderColor:Q,borderTopColor:Q,borderRightColor:Q,borderBottomColor:Q,borderLeftColor:Q,borderWidth:Y,borderTopWidth:Y,borderRightWidth:Y,borderBottomWidth:Y,borderLeftWidth:Y,borderRadius:Y,radius:Y,borderTopLeftRadius:Y,borderTopRightRadius:Y,borderBottomRightRadius:Y,borderBottomLeftRadius:Y,width:Y,maxWidth:Y,height:Y,maxHeight:Y,size:Y,top:Y,right:Y,bottom:Y,left:Y,padding:Y,paddingTop:Y,paddingRight:Y,paddingBottom:Y,paddingLeft:Y,margin:Y,marginTop:Y,marginRight:Y,marginBottom:Y,marginLeft:Y,rotate:J,rotateX:J,rotateY:J,rotateZ:J,scale:ji,scaleX:ji,scaleY:ji,scaleZ:ji,skew:J,skewX:J,skewY:J,distance:Y,translateX:Y,translateY:Y,translateZ:Y,x:Y,y:Y,z:Y,perspective:Y,transformPerspective:Y,opacity:Ai,originX:Pi,originY:Pi,originZ:Y,zIndex:Io,filter:$i,WebkitFilter:$i,fillOpacity:Ai,strokeOpacity:Ai,numOctaves:Io},Ro=e=>Lo[e];function zo(e,t){return t&&typeof e==`number`&&t.transform?t.transform(e):e}function Bo(e,t){let n=Ro(e);return n!==$i&&(n=Yi),n.getAnimatableNone?n.getAnimatableNone(t):void 0}var Vo={linear:Aa,easeIn:ja,easeInOut:Na,easeOut:Ma,circIn:Pa,circInOut:Ia,circOut:Fa,backIn:La,backInOut:za,backOut:Ra,anticipate:Ba,bounceIn:Ga,bounceInOut:Ka,bounceOut:Wa};function Ho(e){if(Array.isArray(e)){let[t,n,r,i]=e;return xo(t,n,r,i)}return typeof e==`string`?Vo[e]:e}function Uo(e){return Array.isArray(e)&&typeof e[0]!=`number`}function Wo(e,t){return e!==`zIndex`&&!!(typeof t==`number`||Array.isArray(t)||typeof t==`string`&&Yi.test(t)&&!t.startsWith(`url(`))}function Go(e){return Array.isArray(e.to)&&e.to[0]===null&&(e.to=[...e.to],e.to[0]=e.from),e}function Ko({ease:e,times:t,delay:n,...r}){let i={...r};return t&&(i.offset=t),e&&(i.ease=Uo(e)?e.map(Ho):Ho(e)),n&&(i.elapsed=-n),i}function qo(e,t,n){return Array.isArray(t.to)&&(e.duration||(e.duration=800)),Go(t),Jo(e)||(e={...e,...Fo(n,t.to)}),{...t,...Ko(e)}}function Jo({delay:e,repeat:t,repeatType:n,repeatDelay:r,from:i,...a}){return!!Object.keys(a).length}function Yo(e,t){return e[t]||e.default||e}function Xo(e,t,n,r,i){let a=Yo(r,e),o=a.from===null||a.from===void 0?t.get():a.from,s=Wo(e,n);o===`none`&&s&&typeof n==`string`&&(o=Bo(e,n));let c=Wo(e,o);function l(s){let c={from:o,to:n,velocity:r.velocity?r.velocity:t.getVelocity(),onUpdate:e=>t.set(e)};return a.type===`inertia`||a.type===`decay`?oo({...c,...a}):io({...qo(a,c,e),onUpdate:e=>{c.onUpdate(e),a.onUpdate&&a.onUpdate(e)},onComplete:()=>{i&&i(),s&&s()}})}function u(e){return t.set(n),i&&i(),e&&e(),{stop:()=>{}}}return!c||!s||a.type===!1?u:l}function Zo(){let{motionValues:e,stop:t,get:n}=Oo();return{motionValues:e,stop:t,push:(e,t,r,i={},a)=>{let o=r[e],s=n(e,o,r);if(i&&i.immediate){s.set(t);return}let c=Xo(e,s,t,i,a);s.start(c)}}}function Qo(e,t={},{motionValues:n,push:r,stop:i}=Zo()){let a=O(t),o=D(!1);c(n,e=>{o.value=Object.values(e).filter(e=>e.isAnimating()).length>0},{immediate:!0,deep:!0});let s=e=>{if(!a||!a[e])throw Error(`The variant ${e} does not exist.`);return a[e]},l=t=>{typeof t==`string`&&(t=s(t));let n=Object.entries(t).map(([n,i])=>{if(n!==`transition`)return new Promise(a=>r(n,i,e,t.transition||Fo(n,t[n]),a))}).filter(Boolean);async function i(){await Promise.all(n),t.transition?.onComplete?.()}return Promise.all([i()])};return{isAnimating:o,apply:l,set:t=>{let n=Mr(t)?t:s(t);Object.entries(n).forEach(([t,n])=>{t!==`transition`&&r(t,n,e,{immediate:!0})})},leave:async e=>{let t;if(a&&(a.leave&&(t=a.leave),!a.leave&&a.initial&&(t=a.initial)),!t){e();return}await l(t),e()},stop:i}}var $o=typeof window<`u`,es=()=>$o&&(window.onpointerdown===null||void 0),ts=()=>$o&&(window.ontouchstart===null||void 0),ns=()=>$o&&(window.onmousedown===null||void 0);function rs({target:e,state:t,variants:n,apply:r}){let i=O(n),a=D(!1),o=D(!1),s=D(!1),l=h(()=>{let e=[...Object.keys(t.value||{})];return i?(i.hovered&&(e=[...e,...Object.keys(i.hovered)]),i.tapped&&(e=[...e,...Object.keys(i.tapped)]),i.focused&&(e=[...e,...Object.keys(i.focused)]),e):e}),u=h(()=>{let e={};Object.assign(e,t.value),a.value&&i.hovered&&Object.assign(e,i.hovered),o.value&&i.tapped&&Object.assign(e,i.tapped),s.value&&i.focused&&Object.assign(e,i.focused);for(let t in e)l.value.includes(t)||delete e[t];return e});i.hovered&&(q(e,`mouseenter`,()=>a.value=!0),q(e,`mouseleave`,()=>{a.value=!1,o.value=!1})),i.tapped&&(ns()&&(q(e,`mousedown`,()=>o.value=!0),q(e,`mouseup`,()=>o.value=!1)),es()&&(q(e,`pointerdown`,()=>o.value=!0),q(e,`pointerup`,()=>o.value=!1)),ts()&&(q(e,`touchstart`,()=>o.value=!0),q(e,`touchend`,()=>o.value=!1))),i.focused&&(q(e,`focus`,()=>s.value=!0),q(e,`blur`,()=>s.value=!1)),c([a,o,s],()=>{r(u.value)})}function is({set:e,target:t,variants:n,variant:r}){let i=O(n);c(()=>t,()=>{i&&(i.initial&&(e(`initial`),r.value=`initial`),i.enter&&(r.value=`enter`))},{immediate:!0,flush:`pre`})}function as({state:e,apply:t}){c(e,e=>{e&&t(e)},{immediate:!0})}function os({target:e,variants:t,variant:n}){let r=O(t);r&&(r.visible||r.visibleOnce)&&Hr(e,([{isIntersecting:e}])=>{r.visible?n.value=e?`visible`:`initial`:r.visibleOnce&&(e&&n.value!==`visibleOnce`?n.value=`visibleOnce`:n.value||=`initial`)})}function ss(e,t={syncVariants:!0,lifeCycleHooks:!0,visibilityHooks:!0,eventListeners:!0}){t.lifeCycleHooks&&is(e),t.syncVariants&&as(e),t.visibilityHooks&&os(e),t.eventListeners&&rs(e)}function cs(e={}){let t=f({...e}),n=D({});return c(t,()=>{let e={};for(let[n,r]of Object.entries(t))e[n]=zo(r,Ro(n));n.value=e},{immediate:!0,deep:!0}),{state:t,style:n}}function ls(e,t){c(()=>zr(e),e=>{e&&t(e)},{immediate:!0})}var us={x:`translateX`,y:`translateY`,z:`translateZ`};function ds(e={},t=!0){let n=f({...e}),r=D(``);return c(n,e=>{let n=``,i=!1;if(t&&(e.x||e.y||e.z)){let t=[e.x||0,e.y||0,e.z||0].map(e=>zo(e,Y)).join(`,`);n+=`translate3d(${t}) `,i=!0}for(let[r,i]of Object.entries(e)){if(t&&(r===`x`||r===`y`||r===`z`))continue;let e=zo(i,Ro(r));n+=`${us[r]||r}(${e}) `}t&&!i&&(n+=`translateZ(0px) `),r.value=n.trim()},{immediate:!0,deep:!0}),{state:n,transform:r}}var fs=[``,`X`,`Y`,`Z`],ps=[`perspective`,`translate`,`scale`,`rotate`,`skew`],ms=[`transformPerspective`,`x`,`y`,`z`];ps.forEach(e=>{fs.forEach(t=>{let n=e+t;ms.push(n)})});var hs=new Set(ms);function gs(e){return hs.has(e)}var _s=new Set([`originX`,`originY`,`originZ`]);function vs(e){return _s.has(e)}function ys(e){let t={},n={};return Object.entries(e).forEach(([e,r])=>{gs(e)||vs(e)?t[e]=r:n[e]=r}),{transform:t,style:n}}function bs(e){let{transform:t,style:n}=ys(e),{transform:r}=ds(t),{style:i}=cs(n);return r.value&&(i.value.transform=r.value),i.value}function xs(e,t){let n,r,{state:i,style:a}=cs();return ls(e,e=>{r=e;for(let t of Object.keys(Lo))e.style[t]===null||e.style[t]===``||gs(t)||vs(t)||(i[t]=e.style[t]);n&&Object.entries(n).forEach(([t,n])=>e.style[t]=n),t&&t(i)}),c(a,e=>{if(!r){n=e;return}for(let t in e)r.style[t]=e[t]},{immediate:!0}),{style:i}}function Ss(e){let t=e.trim().split(/\) |\)/);if(t.length===1)return{};let n=e=>e.endsWith(`px`)||e.endsWith(`deg`)?Number.parseFloat(e):Number.isNaN(Number(e))?Number(e):e;return t.reduce((e,t)=>{if(!t)return e;let[r,i]=t.split(`(`),a=i.split(`,`).map(e=>n(e.endsWith(`)`)?e.replace(`)`,``):e.trim())),o=a.length===1?a[0]:a;return{...e,[r]:o}},{})}function Cs(e,t){Object.entries(Ss(t)).forEach(([t,n])=>{let r=[`x`,`y`,`z`];if(t===`translate3d`){if(n===0){r.forEach(t=>e[t]=0);return}n.forEach((t,n)=>e[r[n]]=t);return}if(n=Number.parseFloat(`${n}`),t===`translateX`){e.x=n;return}if(t===`translateY`){e.y=n;return}if(t===`translateZ`){e.z=n;return}e[t]=n})}function ws(e,t){let n,r,{state:i,transform:a}=ds();return ls(e,e=>{r=e,e.style.transform&&Cs(i,e.style.transform),n&&(e.style.transform=n),t&&t(i)}),c(a,e=>{if(!r){n=e;return}r.style.transform=e},{immediate:!0}),{transform:i}}function Ts(e){return Object.entries(e)}function Es(e,t){let n=f({}),r=e=>Object.entries(e).forEach(([e,t])=>n[e]=t),{style:i}=xs(e,r),{transform:a}=ws(e,r);return c(n,e=>{Ts(e).forEach(([e,t])=>{let n=gs(e)?a:i;n[e]&&n[e]===t||(n[e]=t)})},{immediate:!0,deep:!0}),ls(e,()=>t&&r(t)),{motionProperties:n,style:i,transform:a}}function Ds(e={}){let t=O(e),n=D();return{state:h(()=>{if(n.value)return t[n.value]}),variant:n}}function Os(e,t={},n){let{motionProperties:r}=Es(e),{variant:i,state:a}=Ds(t),o={target:e,variant:i,variants:t,state:a,motionProperties:r,...Qo(r,t)};return ss(o,n),o}var ks=[`delay`,`duration`],As=[`initial`,`enter`,`leave`,`visible`,`visible-once`,`visibleOnce`,`hovered`,`tapped`,`focused`,...ks];function js(e){return ks.includes(e)}function Ms(e,t){let n=e.props?e.props:e.data&&e.data.attrs?e.data.attrs:{};if(n){n.variants&&Mr(n.variants)&&(t.value={...t.value,...n.variants});for(let e of As)if(!(!n||!n[e])){if(js(e)&&typeof n[e]==`number`){for(let r of[`enter`,`visible`,`visibleOnce`]){let i=t.value[r];i!=null&&(i.transition??={},i.transition[e]=n[e])}continue}if(Mr(n[e])){let r=n[e];e===`visible-once`&&(e=`visibleOnce`),t.value[e]=r}}}}function Ns(e,t=!1){return{created:(n,r,i)=>{let a=r.value&&typeof r.value==`string`?r.value:i.key;a&&So[a]&&So[a].stop();let o=t?structuredClone(x(e)||{}):e||{},s=D(o);typeof r.value==`object`&&(s.value=r.value),Ms(i,s);let c=Os(n,s,{eventListeners:!0,lifeCycleHooks:!0,syncVariants:!0,visibilityHooks:!1});n.motionInstance=c,a&&(So[a]=c)},mounted:(e,t,n)=>{e.motionInstance&&os(e.motionInstance)},getSSRProps(t,n){let{initial:r}=t.value||n&&n?.props||{};r=O(r);let i=Dr({},e?.initial||{},r||{});if(!(!i||Object.keys(i).length===0))return{style:bs(i)}}}}var Ps={__proto__:null,fade:{initial:{opacity:0},enter:{opacity:1}},fadeVisible:{initial:{opacity:0},visible:{opacity:1}},fadeVisibleOnce:{initial:{opacity:0},visibleOnce:{opacity:1}},pop:{initial:{scale:0,opacity:0},enter:{scale:1,opacity:1}},popVisible:{initial:{scale:0,opacity:0},visible:{scale:1,opacity:1}},popVisibleOnce:{initial:{scale:0,opacity:0},visibleOnce:{scale:1,opacity:1}},rollBottom:{initial:{y:100,rotate:90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollLeft:{initial:{x:-100,rotate:90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollRight:{initial:{x:100,rotate:-90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollTop:{initial:{y:-100,rotate:-90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleBottom:{initial:{y:100,rotate:90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleLeft:{initial:{x:-100,rotate:90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceBottom:{initial:{y:100,rotate:90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},rollVisibleOnceLeft:{initial:{x:-100,rotate:90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollVisibleOnceRight:{initial:{x:100,rotate:-90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollVisibleOnceTop:{initial:{y:-100,rotate:-90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},rollVisibleRight:{initial:{x:100,rotate:-90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleTop:{initial:{y:-100,rotate:-90,opacity:0},visible:{y:0,rotate:0,opacity:1}},slideBottom:{initial:{y:100,opacity:0},enter:{y:0,opacity:1}},slideLeft:{initial:{x:-100,opacity:0},enter:{x:0,opacity:1}},slideRight:{initial:{x:100,opacity:0},enter:{x:0,opacity:1}},slideTop:{initial:{y:-100,opacity:0},enter:{y:0,opacity:1}},slideVisibleBottom:{initial:{y:100,opacity:0},visible:{y:0,opacity:1}},slideVisibleLeft:{initial:{x:-100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceBottom:{initial:{y:100,opacity:0},visibleOnce:{y:0,opacity:1}},slideVisibleOnceLeft:{initial:{x:-100,opacity:0},visibleOnce:{x:0,opacity:1}},slideVisibleOnceRight:{initial:{x:100,opacity:0},visibleOnce:{x:0,opacity:1}},slideVisibleOnceTop:{initial:{y:-100,opacity:0},visibleOnce:{y:0,opacity:1}},slideVisibleRight:{initial:{x:100,opacity:0},visible:{x:0,opacity:1}},slideVisibleTop:{initial:{y:-100,opacity:0},visible:{y:0,opacity:1}}},Fs=Symbol(``),Is={preset:{type:String,required:!1},instance:{type:Object,required:!1},variants:{type:Object,required:!1},initial:{type:Object,required:!1},enter:{type:Object,required:!1},leave:{type:Object,required:!1},visible:{type:Object,required:!1},visibleOnce:{type:Object,required:!1},hovered:{type:Object,required:!1},tapped:{type:Object,required:!1},focused:{type:Object,required:!1},delay:{type:[Number,String],required:!1},duration:{type:[Number,String],required:!1}};function Ls(e){return Object.prototype.toString.call(e)===`[object Object]`}function Rs(e){if(Array.isArray(e))return e.map(Rs);if(Ls(e)){let t={};for(let n in e)t[n]=Rs(e[n]);return t}return e}function zs(e){let t=f({}),n=v(Fs,{}),r=h(()=>e.preset==null?{}:n!=null&&e.preset in n?structuredClone(x(n)[e.preset]):e.preset in Ps?structuredClone(Ps[e.preset]):{}),i=h(()=>({initial:e.initial,enter:e.enter,leave:e.leave,visible:e.visible,visibleOnce:e.visibleOnce,hovered:e.hovered,tapped:e.tapped,focused:e.focused}));function a(e,t){for(let n of[`delay`,`duration`]){if(t[n]==null)continue;let r=Number.parseInt(t[n]);for(let t of[`enter`,`visible`,`visibleOnce`]){let i=e[t];i!=null&&(i.transition??={},i.transition[n]=r)}}return e}let o=h(()=>a({...Dr({},i.value,r.value,e.variants||{})},e));function s(e,n,r){e.props??={},e.props.style??={},e.props.style={...e.props.style,...r};let i=a(Rs(o.value),e.props);return e.props.onVnodeMounted=({el:e})=>{t[n]=Os(e,i)},e.props.onVnodeUpdated=({el:e})=>{let r=bs(t[n].state);for(let[t,n]of Object.entries(r))e.style[t]=n},e}return{motionConfig:o,setNodeInstance:s}}k({name:`Motion`,props:{...Is,is:{type:[String,Object],default:`div`}},setup(e){let r=n(),{motionConfig:i,setNodeInstance:a}=zs(e);return()=>{let n=bs(i.value.initial||{}),o=t(e.is,void 0,r);return a(o,0,n),o}}}),k({name:`MotionGroup`,props:{...Is,is:{type:[String,Object],required:!1}},setup(e){let r=n(),{motionConfig:i,setNodeInstance:a}=zs(e);return()=>{let n=bs(i.value.initial||{}),o=r.default?.()||[];for(let e=0;ee.every(e=>u(e)))}var Vs=Bs;function Hs(e){return h(()=>!u(e))}var Us=Hs;function Ws(...e){return h(()=>e.some(e=>u(e)))}var Gs=Ws;export{Jt as A,de as B,br as C,hn as D,Cr as E,bn as F,yn as I,Sn as L,fn as M,Yt as N,wn as O,en as P,Kt as R,yr as S,Sr as T,ue as V,pr as _,Vn as a,gr as b,Rn as c,ar as d,sr as f,dr as g,ur as h,Ns as i,z as j,En as k,Hn as l,W as m,Us as n,Mn as o,cr as p,Gs as r,Ln as s,Vs as t,Wn as u,K as v,xr as w,Zn as x,hr as y,mt as z}; \ No newline at end of file diff --git a/lecture-07/assets/overview-BIQ10iVu.css b/lecture-07/assets/overview-BIQ10iVu.css new file mode 100644 index 0000000000000000000000000000000000000000..5ac480cef2330ef92e6970e4ce48338b846b6bd0 --- /dev/null +++ b/lecture-07/assets/overview-BIQ10iVu.css @@ -0,0 +1 @@ +.overview-slide-block:hover .overview-slide-action[data-v-47f32601]{opacity:.6}.overview-slide-action[data-v-47f32601]:hover{opacity:.8} diff --git a/lecture-07/assets/play-D_7yfuao.css b/lecture-07/assets/play-D_7yfuao.css new file mode 100644 index 0000000000000000000000000000000000000000..397d386dd314e2c98360c571f82fe57cf792b617 --- /dev/null +++ b/lecture-07/assets/play-D_7yfuao.css @@ -0,0 +1 @@ +.slidev-info-dialog{max-width:37.5rem;padding:1rem!important} diff --git a/lecture-07/assets/presenter-J5ibmAMh.css b/lecture-07/assets/presenter-J5ibmAMh.css new file mode 100644 index 0000000000000000000000000000000000000000..894310ab10e45ab878c88c883d0863829e21b29e --- /dev/null +++ b/lecture-07/assets/presenter-J5ibmAMh.css @@ -0,0 +1 @@ +.slidev-presenter[data-v-e7a794bf]{--slidev-controls-foreground:current}.grid-container[data-v-e7a794bf]{--slidev-presenter-notes-width:360px;--slidev-presenter-notes-row-size:280px;background-color:#9ca3af33;flex:1;gap:1px;display:grid;position:relative;overflow:hidden}.grid-container.layout1[data-v-e7a794bf]{grid-template-columns:var(--slidev-presenter-notes-width) minmax(0, 1fr);grid-template-rows:minmax(0, 2fr) minmax(0, var(--slidev-presenter-notes-row-size)) min-content;grid-template-areas:"main main""note next""bottom bottom"}.grid-container.layout2[data-v-e7a794bf]{grid-template-columns:var(--slidev-presenter-notes-width) minmax(0, 1fr);grid-template-rows:minmax(0, var(--slidev-presenter-notes-row-size)) minmax(0, 1fr) min-content;grid-template-areas:"note main""note next""bottom bottom"}@media (aspect-ratio<=3/5){.grid-container.layout1[data-v-e7a794bf]{grid-template:"main"2fr"note"1fr"next"1fr"bottom"min-content/1fr}}@media (aspect-ratio>=1){.grid-container.layout1[data-v-e7a794bf]{grid-template-columns:minmax(0, 1fr) minmax(0, 1.1fr) var(--slidev-presenter-notes-width);grid-template-rows:minmax(0, 1fr) minmax(0, var(--slidev-presenter-notes-row-size)) min-content;grid-template-areas:"main main next""main main note""bottom bottom bottom"}}.grid-container.layout3[data-v-e7a794bf]{grid-template-columns:var(--slidev-presenter-notes-width) minmax(0, 1fr);grid-template-rows:minmax(0, var(--slidev-presenter-notes-row-size)) minmax(0, 1fr) min-content;grid-template-areas:"note next""main next""bottom bottom"}.grid-section[data-v-e7a794bf]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.dark .grid-section[data-v-e7a794bf]{--un-bg-opacity:1;background-color:rgb(18 18 18/var(--un-bg-opacity))}.grid-section.top[data-v-e7a794bf]{grid-area:top}.grid-section.main[data-v-e7a794bf]{grid-area:main}.grid-section.next[data-v-e7a794bf]{grid-area:next}.grid-section.note[data-v-e7a794bf]{grid-area:note}.grid-section.bottom[data-v-e7a794bf]{grid-area:bottom}.notes-resizer[data-v-e7a794bf]{cursor:col-resize;z-index:10;touch-action:none;width:12px;height:100%;position:absolute;top:0}.notes-resizer[data-v-e7a794bf]:before{content:"";opacity:.2;background-color:currentColor;width:1px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.notes-row-resizer[data-v-e7a794bf]{cursor:row-resize;z-index:10;touch-action:none;width:100%;height:12px;position:absolute;left:0}.notes-row-resizer[data-v-e7a794bf]:before{content:"";opacity:.2;background-color:currentColor;width:100%;height:1px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.notes-vertical-resizer[data-v-e7a794bf]{right:var(--slidev-presenter-notes-width);top:0;bottom:var(--slidev-presenter-bottom-height,0px);cursor:col-resize;z-index:10;touch-action:none;width:12px;position:absolute;transform:translate(50%)}.notes-vertical-resizer[data-v-e7a794bf]:before{content:"";width:1px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.notes-vertical-resizer-left[data-v-e7a794bf]{left:var(--slidev-presenter-notes-width);top:0;bottom:var(--slidev-presenter-bottom-height,0px);cursor:col-resize;z-index:10;touch-action:none;width:12px;position:absolute;transform:translate(-50%)}.notes-vertical-resizer-left[data-v-e7a794bf]:before{content:"";width:1px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)} diff --git a/lecture-07/assets/rolldown-runtime-hePW80VL.js b/lecture-07/assets/rolldown-runtime-hePW80VL.js new file mode 100644 index 0000000000000000000000000000000000000000..19803821aea2e74c5c1a9c81c33bbad26f2ac631 --- /dev/null +++ b/lecture-07/assets/rolldown-runtime-hePW80VL.js @@ -0,0 +1 @@ +var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;li[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,o)=>(o=n==null?{}:e(i(n)),c(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n));export{s as n,l as r,o as t}; \ No newline at end of file diff --git a/lecture-07/assets/section-BZ9Dfv_4.css b/lecture-07/assets/section-BZ9Dfv_4.css new file mode 100644 index 0000000000000000000000000000000000000000..d27ca99afbadaf5a880bb2ca13a5955a547e6164 --- /dev/null +++ b/lecture-07/assets/section-BZ9Dfv_4.css @@ -0,0 +1 @@ +.dl-section[data-v-833128c2]{background:var(--dl-surface);flex-direction:column;justify-content:center;padding-left:4rem;display:flex}.dl-section__index[data-v-833128c2]{font-size:var(--dl-fs-secondary);letter-spacing:.2em;color:var(--dl-accent);margin-bottom:.8rem;font-weight:700}.dl-section__body[data-v-833128c2] h1,.dl-section__body[data-v-833128c2] h2{font-size:var(--dl-fs-section);margin:0;line-height:1.1}.dl-section__body[data-v-833128c2] p{color:var(--dl-muted);max-width:46ch;margin-top:.6rem}.dl-section__rule[data-v-833128c2]{margin-top:1.4rem} diff --git a/lecture-07/assets/section-CLxRKQ9Y.js b/lecture-07/assets/section-CLxRKQ9Y.js new file mode 100644 index 0000000000000000000000000000000000000000..111d00904307647dee0f4af899cffa4b9cb41bfd --- /dev/null +++ b/lecture-07/assets/section-CLxRKQ9Y.js @@ -0,0 +1 @@ +import{H as e,St as t,_ as n,b as r,w as i,y as a,z as o}from"./modules/shiki-CkJq9tSf.js";import{t as s}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as c}from"./slidev/context-DnYiQGy6.js";var l={class:`slidev-layout dl-section`},u={key:0,class:`dl-section__index`},d={class:`dl-section__body`},f=s(i({__name:`section`,props:{index:{}},setup(i){let{$slidev:s,$nav:f,$clicksContext:p,$clicks:m,$page:h,$renderContext:g,$frontmatter:_}=c(),v=i;return(i,s)=>(o(),r(`div`,l,[v.index?(o(),r(`div`,u,t(v.index),1)):a(`v-if`,!0),n(`div`,d,[e(i.$slots,`default`,{},void 0,!0)]),s[0]||=n(`div`,{class:`dl-rule dl-section__rule`},null,-1)]))}}),[[`__scopeId`,`data-v-833128c2`]]);export{f as t}; \ No newline at end of file diff --git a/lecture-07/assets/shortcuts-nRB69a7e.css b/lecture-07/assets/shortcuts-nRB69a7e.css new file mode 100644 index 0000000000000000000000000000000000000000..e7e39cdb869e4b320cccd3cb3ea85ebffcf1274d --- /dev/null +++ b/lecture-07/assets/shortcuts-nRB69a7e.css @@ -0,0 +1 @@ +.autocomplete-list[data-v-61e41ebd]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity));max-height:calc(100vh - 100px);margin-top:.25rem;overflow:auto}.dark .autocomplete-list[data-v-61e41ebd]{--un-bg-opacity:1;background-color:rgb(18 18 18/var(--un-bg-opacity))}.autocomplete[data-v-61e41ebd]{cursor:pointer}.laser-pointer[data-v-1d1438ab]{background:radial-gradient(circle,#ff5050 0%,#ff0000f2 55%,#ff00001a 100%);border-radius:9999px;width:6px;height:6px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 10px #ff0000e6,0 0 22px #ff00008c}.slidev-self-laser-active .slidev-slide-container{cursor:none}.slider{appearance:none;opacity:.7;-webkit-transition:all .2s;background-color:#9ca3af0d;border-width:1px;border-color:#9ca3af33;border-radius:.25rem;outline:none;height:22px;transition:opacity .2s;overflow:hidden}.slider:hover{opacity:1}.slider::-webkit-slider-thumb{appearance:none;background:var(--slidev-theme-primary);cursor:pointer;z-index:10;width:5px;height:22px}.slider::-moz-range-thumb{background:var(--slidev-theme-primary);cursor:pointer;z-index:10;width:5px;height:22px}.item[data-v-aa3b28a6]{cursor:default;white-space:nowrap;border-radius:.25rem;gap:.25rem;padding:.25rem .5rem;display:flex}.item[data-v-aa3b28a6]:hover{--un-bg-opacity:.1;background-color:rgb(156 163 175/var(--un-bg-opacity))}.title[data-v-aa3b28a6]{-webkit-user-select:none;user-select:none;text-wrap:nowrap;opacity:.75;padding:.25rem .75rem;font-size:.875rem;font-weight:700;line-height:1.25rem}#slideshow[data-v-835d2635]{height:100%} diff --git a/lecture-07/assets/slidev/404-B_Ln99xV.js b/lecture-07/assets/slidev/404-B_Ln99xV.js new file mode 100644 index 0000000000000000000000000000000000000000..8ca5b05235356ce088b26428e3a09e254d27e3c4 --- /dev/null +++ b/lecture-07/assets/slidev/404-B_Ln99xV.js @@ -0,0 +1 @@ +import{$ as e,St as t,U as n,_ as r,b as i,g as a,v as o,vt as s,w as c,x as l,y as u,z as d}from"../modules/shiki-CkJq9tSf.js";import{t as f}from"../useNav-DOs7c9Ie.js";import{t as p}from"../_plugin-vue_export-helper-BDNMzG2s.js";import{V as m}from"../modules/vue-Dz2ojcKF.js";var h={class:`grid justify-center text-center pt-15% gap-5`},g={class:`text-2xl`},_={class:`op-60`},v={class:`mt-3 flex flex-col gap-2 max-w-xs mx-auto w-full`},y=p(c({__name:`404`,setup(c){let p=/\d+/,{currentRoute:y}=m(),{total:b}=f(),x=a(()=>{let e=y.value.path.match(p);if(e){let t=+e[0];if(t>0&&t<=b.value)return t}return null});return(a,c)=>{let f=n(`RouterLink`);return d(),i(`div`,h,[r(`div`,null,[c[2]||=r(`h1`,{class:`text-9xl font-light`},` 404 `,-1),r(`p`,g,[c[0]||=l(` Page `,-1),r(`code`,_,t(s(y).path),1),c[1]||=l(` not found `,-1)])]),r(`div`,v,[x.value===1?u(`v-if`,!0):(d(),o(f,{key:0,to:`/`,class:`page-link`},{default:e(()=>[...c[3]||=[l(` Go Home `,-1)]]),_:1})),x.value?(d(),o(f,{key:1,to:`/${x.value}`,class:`page-link`},{default:e(()=>[l(` Go to Slide `+t(x.value),1)]),_:1},8,[`to`])):u(`v-if`,!0)])])}}}),[[`__scopeId`,`data-v-b584852f`]]);export{y as default}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/CodeBlockWrapper-DfjXYRxv.js b/lecture-07/assets/slidev/CodeBlockWrapper-DfjXYRxv.js new file mode 100644 index 0000000000000000000000000000000000000000..fc1d2c854a2480693a1a3df950d30aaaed091e41 --- /dev/null +++ b/lecture-07/assets/slidev/CodeBlockWrapper-DfjXYRxv.js @@ -0,0 +1 @@ +import{H as e,L as t,R as n,S as r,St as i,Z as a,_ as o,b as s,g as c,k as l,ut as u,v as d,vt as f,w as p,xt as m,y as h,yt as g,z as _}from"../modules/shiki-CkJq9tSf.js";import{tt as v}from"../useNav-DOs7c9Ie.js";import{u as y}from"../modules/vue-Dz2ojcKF.js";import{a as b,l as x,n as S}from"./context-DnYiQGy6.js";import{d as C,u as w}from"../index-DYEUBAok.js";import{a as T,i as E}from"../modules/unplugin-icons-CEvhMF8G.js";var D=p({__name:`TitleIcon`,props:{title:{}},setup(e){let t={pnpm:`i-vscode-icons:file-type-light-pnpm`,npm:`i-vscode-icons:file-type-npm`,yarn:`i-vscode-icons:file-type-yarn`,bun:`i-vscode-icons:file-type-bun`,deno:`i-vscode-icons:file-type-deno`,vue:`i-vscode-icons:file-type-vue`,svelte:`i-vscode-icons:file-type-svelte`,angular:`i-vscode-icons:file-type-angular`,react:`i-vscode-icons:file-type-reactjs`,next:`i-vscode-icons:file-type-light-next`,nuxt:`i-vscode-icons:file-type-nuxt`,solid:`logos:solidjs-icon`,astro:`i-vscode-icons:file-type-light-astro`,rollup:`i-vscode-icons:file-type-rollup`,webpack:`i-vscode-icons:file-type-webpack`,vite:`i-vscode-icons:file-type-vite`,esbuild:`i-vscode-icons:file-type-esbuild`,"package.json":`i-vscode-icons:file-type-node`,"tsconfig.json":`i-vscode-icons:file-type-tsconfig`,".npmrc":`i-vscode-icons:file-type-npm`,".editorconfig":`i-vscode-icons:file-type-editorconfig`,".eslintrc":`i-vscode-icons:file-type-eslint`,".eslintignore":`i-vscode-icons:file-type-eslint`,"eslint.config":`i-vscode-icons:file-type-eslint`,".gitignore":`i-vscode-icons:file-type-git`,".gitattributes":`i-vscode-icons:file-type-git`,".env":`i-vscode-icons:file-type-dotenv`,".env.example":`i-vscode-icons:file-type-dotenv`,".vscode":`i-vscode-icons:file-type-vscode`,"tailwind.config":`vscode-icons:file-type-tailwind`,"uno.config":`i-vscode-icons:file-type-unocss`,"unocss.config":`i-vscode-icons:file-type-unocss`,".oxlintrc":`i-vscode-icons:file-type-oxlint`,"vue.config":`i-vscode-icons:file-type-vueconfig`,".mts":`i-vscode-icons:file-type-typescript`,".cts":`i-vscode-icons:file-type-typescript`,".ts":`i-vscode-icons:file-type-typescript`,".tsx":`i-vscode-icons:file-type-typescript`,".mjs":`i-vscode-icons:file-type-js`,".cjs":`i-vscode-icons:file-type-js`,".json":`i-vscode-icons:file-type-json`,".js":`i-vscode-icons:file-type-js`,".jsx":`i-vscode-icons:file-type-js`,".md":`i-vscode-icons:file-type-markdown`,".py":`i-vscode-icons:file-type-python`,".ico":`i-vscode-icons:file-type-favicon`,".html":`i-vscode-icons:file-type-html`,".css":`i-vscode-icons:file-type-css`,".scss":`i-vscode-icons:file-type-scss`,".yml":`i-vscode-icons:file-type-light-yaml`,".yaml":`i-vscode-icons:file-type-light-yaml`,".php":`i-vscode-icons:file-type-php`,".svg":`i-vscode-icons:file-type-svg`};function n(e){let n=e.match(/~([^~]+)~/g);if(n&&n.length>0)return n[0].slice(1,-1);let r=Object.keys(t).sort((e,t)=>t.length-e.length);for(let n of r)if(e.toLowerCase().includes(n.toLowerCase()))return t[n];return``}return(t,r)=>n(e.title)?(_(),s(`div`,{key:0,class:g([`w-3.5 h-3.5 relative`,n(e.title)])},null,2)):h(`v-if`,!0)}}),O=[`data-title`],k={key:0,class:`slidev-code-block-title`},A={class:`leading-1em`},j=[`title`],M=p({__name:`CodeBlockWrapper`,props:{ranges:{type:Array,default:()=>[]},finally:{type:[String,Number],default:`last`},startLine:{type:Number,default:1},lines:{type:Boolean,default:v.lineNumbers},at:{type:[String,Number],default:`+1`},maxHeight:{type:String,default:void 0},title:{type:String,default:``}},setup(p){let M=p,{$frontmatter:N,$clicksContext:P}=S(),F=c(()=>N?.codeCopy??v.codeCopy),I=u(),L=w();n(()=>{P.unregister(L)}),a(()=>{I.value?.classList.toggle(`slidev-code-line-numbers`,M.lines)}),t(()=>{if(!P||!M.ranges?.length)return;let e=P.calculateSince(M.at,M.ranges.length-1);P.register(L,e);let t=c(()=>e?Math.max(0,P.current-e.start+1):x),n=c(()=>M.finally===`last`?M.ranges.at(-1):M.finally.toString());a(()=>{if(!I.value)return;let e=M.ranges[t.value]??n.value,r=e===`hide`;I.value.classList.toggle(b,r),r&&(e=M.ranges[t.value+1]??n.value);let i=I.value.querySelector(`.shiki`),a=Array.from(i.querySelectorAll(`code > .line`)),o=a.length;if(C(e,o,M.startLine,e=>[a[e]]),M.maxHeight){let e=Array.from(i.querySelectorAll(`.line.highlighted`));e.reduce((e,t)=>t.offsetHeight+e,0)>I.value.offsetHeight?e[0].scrollIntoView({behavior:`smooth`,block:`start`}):e.length>0&&e[Math.round((e.length-1)/2)].scrollIntoView({behavior:`smooth`,block:`center`})}})});let{copied:R,copy:z}=y();function B(){let e=I.value?.querySelector(`.slidev-code`)?.textContent;e&&z(e)}let V=l(`activeTitle`,null),H=c(()=>V===null&&M.title);return(t,n)=>{let a=E,c=T;return _(),s(`div`,{ref_key:`el`,ref:I,class:g([`slidev-code-wrapper relative group`,{"slidev-code-line-numbers":M.lines,active:f(V)===p.title}]),style:m({"max-height":M.maxHeight,"overflow-y":M.maxHeight?`scroll`:void 0,"--start":M.startLine}),"data-title":p.title},[H.value?(_(),s(`div`,k,[r(D,{title:p.title},null,8,[`title`]),o(`div`,A,i(p.title.replace(/~([^~]+)~/g,``).trim()),1)])):h(`v-if`,!0),e(t.$slots,`default`),F.value?(_(),s(`button`,{key:1,class:g([`slidev-code-copy absolute right-0 transition opacity-0 group-hover:opacity-20 hover:!opacity-100`,H.value?`top-10`:`top-0`]),title:f(R)?`Copied`:`Copy`,onClick:n[0]||=e=>B()},[f(R)?(_(),d(a,{key:0,class:`p-2 w-8 h-8`})):(_(),d(c,{key:1,class:`p-2 w-8 h-8`}))],10,j)):h(`v-if`,!0)],14,O)}}});export{M as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/DrawingControls-7DRfiHec.js b/lecture-07/assets/slidev/DrawingControls-7DRfiHec.js new file mode 100644 index 0000000000000000000000000000000000000000..dd99d7312a6bb14eba1f9af811b17510b874e4e1 --- /dev/null +++ b/lecture-07/assets/slidev/DrawingControls-7DRfiHec.js @@ -0,0 +1 @@ +import{n as e}from"../rolldown-runtime-hePW80VL.js";import{$ as t,H as n,S as r,St as i,V as a,_ as o,b as s,et as c,l,m as u,r as d,u as f,ut as p,v as m,vt as h,w as g,xt as _,y as v,yt as y,z as b}from"../modules/shiki-CkJq9tSf.js";import{d as x,g as S}from"../modules/vue-Dz2ojcKF.js";import{t as C}from"../useDrawings-dMxKslDP.js";import{t as w}from"./IconButton-CfFb_8Iy.js";import{t as T}from"./VerticalDivider-E2da-Zpk.js";var E=g({__name:`Draggable`,props:{storageKey:{},initial:{}},setup(e){let t=e,r=p(null),i=t.initial??{x:0,y:0},a=t.storageKey?S(t.storageKey,i):p(i),{style:o}=x(r,{initialValue:a});return(e,t)=>(b(),s(`div`,{ref_key:`el`,ref:r,class:`fixed`,style:_(h(o))},[n(e.$slots,`default`)],4))}}),D={class:`flex bg-main p-2`},O={class:`inline-block w-7 text-center`},k={class:`pt-.5`},A={class:`i-carbon:pin-filled transform -rotate-45`},j={class:`i-carbon:pin`},M={class:`i-carbon:error`},N={class:`i-carbon:close-outline`},P=g({__name:`DrawingControls`,setup(e){let{brush:n,canClear:g,canRedo:x,canUndo:S,clear:P,drauu:F,drawingEnabled:I,drawingMode:L,drawingPinned:R,brushColors:z}=C(),B=p(!1);function V(e){e.preventDefault(),e.stopPropagation(),requestAnimationFrame(()=>{requestAnimationFrame(()=>{B.value=!0})})}function H(e){e.pointerType!==`mouse`&&V(e)}function U(){F.undo()}function W(){F.redo()}let G=`stylus`;function K(e){L.value=e,I.value=!0,e!==`eraseLine`&&(G=e)}function q(e){n.value.color=e,I.value=!0,L.value=G}return(e,p)=>h(I)||h(R)?(b(),m(E,{key:0,class:y([`flex flex-wrap text-xl p-2 gap-1 rounded-md bg-main shadow transition-opacity duration-200 z-nav border border-main`,!h(I)&&h(R)?`opacity-40 hover:opacity-90`:``]),"storage-key":`slidev-drawing-pos`,"initial-x":10,"initial-y":10},{default:t(()=>[r(w,{title:`Draw with stylus`,class:y({shallow:h(L)!==`stylus`}),onClick:p[0]||=e=>K(`stylus`)},{default:t(()=>[...p[14]||=[o(`div`,{class:`i-carbon:pen`},null,-1)]]),_:1},8,[`class`]),r(w,{title:`Draw a line`,class:y({shallow:h(L)!==`line`}),onClick:p[1]||=e=>K(`line`)},{default:t(()=>[...p[15]||=[o(`svg`,{width:`1em`,height:`1em`,class:`-mt-0.5`,preserveAspectRatio:`xMidYMid meet`,viewBox:`0 0 24 24`},[o(`path`,{d:`M21.71 3.29a1 1 0 0 0-1.42 0l-18 18a1 1 0 0 0 0 1.42a1 1 0 0 0 1.42 0l18-18a1 1 0 0 0 0-1.42z`,fill:`currentColor`})],-1)]]),_:1},8,[`class`]),r(w,{title:`Draw an arrow`,class:y({shallow:h(L)!==`arrow`}),onClick:p[2]||=e=>K(`arrow`)},{default:t(()=>[...p[16]||=[o(`div`,{class:`i-carbon:arrow-up-right`},null,-1)]]),_:1},8,[`class`]),r(w,{title:`Draw an ellipse`,class:y({shallow:h(L)!==`ellipse`}),onClick:p[3]||=e=>K(`ellipse`)},{default:t(()=>[...p[17]||=[o(`div`,{class:`i-carbon:radio-button`},null,-1)]]),_:1},8,[`class`]),r(w,{title:`Draw a rectangle`,class:y({shallow:h(L)!==`rectangle`}),onClick:p[4]||=e=>K(`rectangle`)},{default:t(()=>[...p[18]||=[o(`div`,{class:`i-carbon:checkbox`},null,-1)]]),_:1},8,[`class`]),r(w,{title:`Erase`,class:y({shallow:h(L)!==`eraseLine`}),onClick:p[5]||=e=>K(`eraseLine`)},{default:t(()=>[...p[19]||=[o(`div`,{class:`i-carbon:erase`},null,-1)]]),_:1},8,[`class`]),r(T),r(h(d),{shown:B.value,"onUpdate:shown":p[8]||=e=>B.value=e,triggers:[]},{popper:t(()=>[o(`div`,D,[o(`div`,O,i(h(n).size),1),o(`div`,k,[c(o(`input`,{"onUpdate:modelValue":p[6]||=e=>h(n).size=e,type:`range`,min:`1`,max:`15`,onChange:p[7]||=e=>L.value=h(G)},null,544),[[l,h(n).size]])])])]),default:t(()=>[r(w,{title:`Adjust stroke width`,class:y({shallow:h(L)===`eraseLine`}),onClick:V,onPointerdown:H,onPointerup:H,onTouchend:V},{default:t(()=>[...p[20]||=[o(`svg`,{viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`},[o(`line`,{x1:`2`,y1:`15`,x2:`22`,y2:`4`,stroke:`currentColor`,"stroke-width":`1`,"stroke-linecap":`round`}),o(`line`,{x1:`2`,y1:`24`,x2:`28`,y2:`10`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`}),o(`line`,{x1:`7`,y1:`31`,x2:`29`,y2:`19`,stroke:`currentColor`,"stroke-width":`3`,"stroke-linecap":`round`})],-1)]]),_:1},8,[`class`])]),_:1},8,[`shown`]),(b(!0),s(u,null,a(h(z),e=>(b(),m(w,{key:e,title:`Set brush color`,class:y(h(n).color===e&&h(L)!==`eraseLine`?`active`:`shallow`),onClick:t=>q(e)},{default:t(()=>[o(`div`,{class:y([`w-6 h-6 transition-all transform border`,h(n).color===e?`rounded-md border-gray-300/50`:`rounded-1/2 scale-85 border-white`]),style:_(h(I)?{background:e}:{borderColor:e})},null,6)]),_:2},1032,[`class`,`onClick`]))),128)),r(T),r(w,{title:`Undo`,class:y({disabled:!h(S)}),onClick:p[9]||=e=>U()},{default:t(()=>[...p[21]||=[o(`div`,{class:`i-carbon:undo`},null,-1)]]),_:1},8,[`class`]),r(w,{title:`Redo`,class:y({disabled:!h(x)}),onClick:p[10]||=e=>W()},{default:t(()=>[...p[22]||=[o(`div`,{class:`i-carbon:redo`},null,-1)]]),_:1},8,[`class`]),r(w,{title:`Delete`,class:y({disabled:!h(g)}),onClick:p[11]||=e=>h(P)()},{default:t(()=>[...p[23]||=[o(`div`,{class:`i-carbon:trash-can`},null,-1)]]),_:1},8,[`class`]),r(T),r(w,{title:h(R)?`Unpin drawing`:`Pin drawing`,class:y({shallow:!h(R)}),onClick:p[12]||=e=>R.value=!h(R)},{default:t(()=>[c(o(`div`,A,null,512),[[f,h(R)]]),c(o(`div`,j,null,512),[[f,!h(R)]])]),_:1},8,[`title`,`class`]),h(I)?(b(),m(w,{key:0,title:h(R)?`Drawing pinned`:`Drawing unpinned`,class:y({shallow:!h(I)}),onClick:p[13]||=e=>I.value=!h(I)},{default:t(()=>[c(o(`div`,M,null,512),[[f,h(R)]]),c(o(`div`,N,null,512),[[f,!h(R)]])]),_:1},8,[`title`,`class`])):v(`v-if`,!0)]),_:1},8,[`class`])):v(`v-if`,!0)}}),F=e({default:()=>I}),I=P;export{F as n,I as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/DrawingLayer-Bd-FSAr6.js b/lecture-07/assets/slidev/DrawingLayer-Bd-FSAr6.js new file mode 100644 index 0000000000000000000000000000000000000000..0e8f8f155ba716f14f36a389e1d9c1c2952c7237 --- /dev/null +++ b/lecture-07/assets/slidev/DrawingLayer-Bd-FSAr6.js @@ -0,0 +1 @@ +import{F as e,L as t,X as n,b as r,ut as i,vt as a,w as o,yt as s,z as c}from"../modules/shiki-CkJq9tSf.js";import{n as l}from"./context-DnYiQGy6.js";import{t as u}from"../useDrawings-dMxKslDP.js";var d=o({__name:`DrawingLayer`,setup(o){let{drauu:d,drawingEnabled:f,loadCanvas:p}=u(),m=l().$scale,h=i();return t(()=>{d.mount(h.value,h.value.parentElement),n(m,e=>d.options.coordinateScale=1/e,{immediate:!0}),p()}),e(()=>{d.unmount()}),(e,t)=>(c(),r(`svg`,{ref_key:`svg`,ref:h,class:s([`w-full h-full absolute top-0`,{"pointer-events-none":!a(f),"touch-none":a(f)}])},null,2))}});export{d as default}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/IconButton-CfFb_8Iy.js b/lecture-07/assets/slidev/IconButton-CfFb_8Iy.js new file mode 100644 index 0000000000000000000000000000000000000000..a0be87eec9e494ed43ac9f9af201a07a0c6791bd --- /dev/null +++ b/lecture-07/assets/slidev/IconButton-CfFb_8Iy.js @@ -0,0 +1 @@ +import{$ as e,G as t,H as n,St as r,_ as i,g as a,v as o,w as s,yt as c,z as l}from"../modules/shiki-CkJq9tSf.js";var u={class:`sr-only`},d=s({__name:`IconButton`,props:{title:{},icon:{},as:{},to:{},disabled:{type:Boolean},active:{type:Boolean}},setup(s){let d=s,f=a(()=>d.as||(d.to?`router-link`:`button`));return(a,d)=>(l(),o(t(f.value),{class:c([`slidev-icon-btn`,{disabled:s.disabled,active:s.active}]),title:s.title,to:s.to},{default:e(()=>[i(`span`,u,r(s.title),1),n(a.$slots,`default`,{},()=>[i(`div`,{class:c(s.icon)},null,2)])]),_:3},8,[`class`,`title`,`to`]))}});export{d as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/KaTexBlockWrapper-CzyNOCHB.js b/lecture-07/assets/slidev/KaTexBlockWrapper-CzyNOCHB.js new file mode 100644 index 0000000000000000000000000000000000000000..3b38ecc514096d3572680321eb75bc6867a4c663 --- /dev/null +++ b/lecture-07/assets/slidev/KaTexBlockWrapper-CzyNOCHB.js @@ -0,0 +1 @@ +import{H as e,L as t,R as n,Z as r,b as i,g as a,ut as o,w as s,z as c}from"../modules/shiki-CkJq9tSf.js";import{H as l}from"../useNav-DOs7c9Ie.js";import{a as u,c as d,l as f,n as p}from"./context-DnYiQGy6.js";import{u as m}from"../index-DYEUBAok.js";var h=`.mtable > [class*=col-align]`,g=`:scope > .vlist-t > .vlist-r > .vlist > span > .mord`;function _(e){let t=Array.from(e.querySelectorAll(h)).filter(e=>!e.parentElement?.closest(h)),n=[];for(let e of t)Array.from(e.querySelectorAll(g)).forEach((e,t)=>{e&&(Array.isArray(n[t])?n[t].push(e):n[t]=[e])});return n}var v=s({__name:`KaTexBlockWrapper`,props:{ranges:{type:Array,default:()=>[]},finally:{type:[String,Number],default:`last`},startLine:{type:Number,default:1},at:{type:[String,Number],default:`+1`}},setup(s){let h=s,{$clicksContext:g}=p(),v=o(),y=m();return n(()=>{g.unregister(y)}),t(()=>{if(!g||!h.ranges?.length)return;let e=g.calculateSince(h.at,h.ranges.length-1);g.register(y,e);let t=a(()=>e?Math.max(0,g.current-e.start+1):f),n=a(()=>h.finally===`last`?h.ranges.at(-1):h.finally.toString());r(()=>{if(!v.value)return;let e=h.ranges[t.value]??n.value,r=e===`hide`;v.value.classList.toggle(u,r),r&&(e=h.ranges[t.value+1]??n.value);let i=_(v.value);if(!i.length)return;let a=h.startLine,o=l(i.length+a-1,e);i.forEach((e,t)=>{let n=o.includes(t+a);e.forEach(e=>{e.classList.toggle(d,!0),e.classList.toggle(`highlighted`,n),e.classList.toggle(`dishonored`,!n)})})})}),(t,n)=>(c(),i(`div`,{ref_key:`el`,ref:v,class:`slidev-katex-wrapper`},[e(t.$slots,`default`)],512))}});export{v as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/Modal-Bum_LA_c.js b/lecture-07/assets/slidev/Modal-Bum_LA_c.js new file mode 100644 index 0000000000000000000000000000000000000000..27188bf6ecd545d7108a920fd7fbb13ad6326f74 --- /dev/null +++ b/lecture-07/assets/slidev/Modal-Bum_LA_c.js @@ -0,0 +1 @@ +import{H as e,_ as t,b as n,h as r,v as i,vt as a,w as o,y as s,yt as c,z as l}from"../modules/shiki-CkJq9tSf.js";import{C as u}from"../modules/vue-Dz2ojcKF.js";var d={key:0,class:`fixed top-0 bottom-0 left-0 right-0 grid z-modal`},f=o({__name:`Modal`,props:{modelValue:{default:!1},class:{default:``}},emits:[`update:modelValue`],setup(o,{emit:f}){let p=o,m=u(p,`modelValue`,f);function h(){m.value=!1}return(o,u)=>(l(),i(r,null,[a(m)?(l(),n(`div`,d,[t(`div`,{bg:`black opacity-80`,class:`absolute top-0 bottom-0 left-0 right-0 -z-1`,onClick:u[0]||=e=>h()}),t(`div`,{class:c([`m-auto rounded-md bg-main shadow`,p.class]),"dark:border":`~ main`},[e(o.$slots,`default`)],2)])):s(`v-if`,!0)],1024))}});export{f as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/NoteDisplay-0sQOScYJ.js b/lecture-07/assets/slidev/NoteDisplay-0sQOScYJ.js new file mode 100644 index 0000000000000000000000000000000000000000..540ff1bd11cac4f5730fc15ed541b2f376df0dc3 --- /dev/null +++ b/lecture-07/assets/slidev/NoteDisplay-0sQOScYJ.js @@ -0,0 +1 @@ +import{L as e,N as t,St as n,V as r,X as i,Z as a,_ as o,at as s,b as c,g as l,m as u,ut as d,vt as f,w as p,xt as m,y as h,yt as g,z as _}from"../modules/shiki-CkJq9tSf.js";import{nt as v,rt as y}from"../useNav-DOs7c9Ie.js";import{l as b}from"./context-DnYiQGy6.js";var x=[`title`],S={key:0,"flex-auto":``},C={"text-primary":``},w={op50:``,"text-sm":``},T={key:0,absolute:``,"inset-y-0":``,"right-0":``,"w-0.5":``,"bg-primary":``,"z-1":``},E=p({__name:`ClicksSlider`,props:{clicksContext:{},readonly:{type:Boolean},active:{type:Boolean,default:!0},resettable:{type:Boolean},compact:{type:Boolean},attached:{type:Boolean}},emits:[`activate`,`reset`],setup(e,{emit:t}){let i=e,a=t,p=l(()=>i.clicksContext.total),E=l(()=>v(0,i.clicksContext.clicksStart,p.value)),D=l(()=>p.value-E.value+1),O=l({get(){return i.resettable&&!i.active||i.clicksContext.current>p.value?-1:i.clicksContext.current},set(e){if(i.resettable&&e<0){a(`reset`),i.clicksContext.current=b;return}a(`activate`),i.clicksContext.current=e}}),k=l(()=>i.resettable&&O.value<0),A=l(()=>y(E.value,p.value+1)),j=d(),M;function N(e){let t=j.value.getBoundingClientRect();return(e.clientX-t.left)/Math.max(1,t.width)}function P(e,t){if(i.readonly||!j.value||!t&&!(e.buttons&1))return;let n=N(e);if(i.resettable&&n<0){O.value=-1;return}let r=v(0,n,t?.999999:1)*D.value,a=v(0,O.value-E.value,D.value-1),o=t?E.value+Math.floor(r):O.value;!t&&r>=a+1.5?o=E.value+Math.floor(r-.5):!t&&r(_(),c(`div`,{class:g([`flex gap-1 select-none`,[e.attached?`items-end`:`items-center`,D.value&&i.clicksContext.isMounted?``:`op50`]]),title:`Clicks in this slide: ${D.value}`},[o(`div`,{class:g([`flex items-center font-mono`,[e.compact?`gap-1 min-w-0 mr0`:`gap-0.2 min-w-16 mr1`,e.attached?`h-[22px]`:``]])},[o(`div`,{class:g([`i-carbon:cursor-1 text-sm op50`,e.compact?`ml-1`:``])},null,2),O.value>=0&&O.value!==f(999999)&&e.active?(_(),c(u,{key:0},[e.compact?h(`v-if`,!0):(_(),c(`div`,S)),o(`span`,null,[o(`span`,C,n(O.value),1),a[2]||=o(`span`,{op25:``,"text-sm":``},`/`,-1),o(`span`,w,n(p.value),1)])],64)):(_(),c(`div`,{key:1,op50:``,class:g(e.compact?``:`flex-auto pl1`)},[o(`span`,{class:g(e.compact?`inline-block text-center`:``),style:m(e.compact?{width:`${String(p.value).length*2+1}ch`,marginLeft:`-0.25ch`}:void 0)},n(p.value),7)],2))],2),o(`div`,{ref_key:`sliderEl`,ref:j,relative:``,"flex-auto":``,"font-mono":``,flex:`~`,"touch-none":``,class:g([e.attached?`h-[22px]`:`h5`,k.value?`op80`:``]),onPointerdownCapture:F,onPointermove:I,onPointerup:a[0]||=e=>s(M)?M.value=void 0:M=void 0,onPointercancel:a[1]||=e=>s(M)?M.value=void 0:M=void 0},[(_(!0),c(u,null,r(A.value,t=>(_(),c(`div`,{key:t,border:`y main`,"of-hidden":``,relative:``,class:g([t===0?`border-l`:``,t===0?e.attached?`rounded-tl`:`rounded-l`:``,t===p.value?`border-r`:``,t===p.value&&+t!=+O.value?e.attached?`rounded-tr`:`rounded-r`:``,e.attached?`border-b-0`:``]),style:m({width:D.value>0?`${1/D.value*100}%`:`100%`})},[o(`div`,{absolute:``,"inset-0":``,class:g(t<=O.value&&e.active?`bg-primary op15`:``)},null,2),+t==+O.value&&e.active?(_(),c(`div`,T)):h(`v-if`,!0),o(`div`,{class:g([+t==+O.value&&e.active?`text-primary font-bold op100`:`op30`,t===p.value?``:`border-r-2 border-main`]),"w-full":``,"h-full":``,"text-xs":``,flex:``,"items-center":``,"justify-center":``,"z-1":``},n(t),3)],6))),128))],34)],10,x))}}),D=[`innerHTML`],O=[`textContent`],k=[`textContent`],A=`slidev-note-fade`,j=`slidev-note-click-mark`,M=p({__name:`NoteDisplay`,props:{class:{},noteHtml:{},note:{},highlight:{type:Boolean,default:!0},placeholder:{},clicksContext:{},autoScroll:{type:Boolean}},emits:[`markerDblclick`,`markerClick`],setup(r,{emit:s}){let u=r,f=s,p=l(()=>u.clicksContext!=null&&u.noteHtml?.includes(j)),m=d(null);function h(){if(!m.value||!p.value)return;let e=Array.from(m.value.querySelectorAll(`.${j}`)),t=new Map,n=new Map,r=0;for(let i of e){let e=Number(i.dataset.clicks);t.set(i,e);let a=i,o=i.parentElement;for(;o&&a!==m.value;)n.has(o)||n.set(o,[[null,r]]),n.get(o).push([a,e]),a=o,o=o.parentElement;r=e}let i=new Map;for(let[e,t]of n){let n=!1,r=0;for(let a of Array.from(e.childNodes)){let o=!1;for(;a===t[r+1]?.[0];)o=!0,r++;if(o)continue;let s=a;if(a.nodeType===3){if(!a.textContent?.trim())continue;s=document.createElement(`span`),s.textContent=a.textContent,e.insertBefore(s,a),a.remove()}n||=r===0,i.set(s,t[r][1])}n||(t[0][1]=-1)}return e=>{let r=u.highlight;for(let[t,i]of n)t.classList.toggle(A,r&&!i.some(([t,n])=>n===e));for(let[t,n]of i)t.classList.toggle(A,r&&n!==e);for(let[n,i]of t)n.classList.remove(A),n.classList.toggle(`${j}-past`,r&&ie+1),n.ondblclick=e=>{r&&(f(`markerDblclick`,e,i),!e.defaultPrevented&&(u.clicksContext.current=i,e.stopPropagation(),e.stopImmediatePropagation()))},n.onclick=e=>{r&&f(`markerClick`,e,i)},r&&u.autoScroll&&i===e&&n.scrollIntoView({block:`center`,behavior:`smooth`})}}let v=d();return i(()=>[u.noteHtml,u.highlight],()=>{t(()=>{v.value=h()})},{immediate:!0}),e(()=>{h()}),a(()=>{let e=u.clicksContext?.current??999999;v.value?.(e)}),(e,t)=>r.noteHtml?(_(),c(`div`,{key:0,ref_key:`noteDisplay`,ref:m,class:g([`prose dark:prose-invert overflow-auto outline-none slidev-note`,[u.class,p.value?`slidev-note-with-clicks`:``]]),innerHTML:r.noteHtml},null,10,D)):r.note?(_(),c(`div`,{key:1,class:g([`prose dark:prose-invert overflow-auto outline-none slidev-note`,u.class])},[o(`p`,{textContent:n(r.note)},null,8,O)],2)):(_(),c(`div`,{key:2,class:g([`prose dark:prose-invert overflow-auto outline-none opacity-50 italic select-none slidev-note`,u.class])},[o(`p`,{textContent:n(u.placeholder||`No notes.`)},null,8,k)],2))}});export{E as n,M as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/NoteEditable-Cz0lbH-c.js b/lecture-07/assets/slidev/NoteEditable-Cz0lbH-c.js new file mode 100644 index 0000000000000000000000000000000000000000..c67340b516d5f059b4287799a1d7d28a46088157 --- /dev/null +++ b/lecture-07/assets/slidev/NoteEditable-Cz0lbH-c.js @@ -0,0 +1 @@ +import{N as e,X as t,Z as n,b as r,d as i,et as a,ht as o,l as s,ut as c,v as l,vt as u,w as d,xt as f,yt as p,z as m}from"../modules/shiki-CkJq9tSf.js";import{C as h,k as g,o as _}from"../modules/vue-Dz2ojcKF.js";import{t as v}from"../index-DYEUBAok.js";import{t as y}from"./NoteDisplay-0sQOScYJ.js";var b=[`placeholder`],x=d({__name:`NoteEditable`,props:{no:{type:Number,required:!0},class:{default:``},editing:{default:!1},style:{default:()=>({})},placeholder:{default:`No notes for this slide`},clicksContext:{type:Object},highlight:{default:!0},autoHeight:{default:!1}},emits:[`update:editing`,`markerDblclick`,`markerClick`],setup(d,{emit:x}){let S=d,C=x,w=h(S,`editing`,C,{passive:!0}),{info:T,update:E}=v(o(S,`no`)),D=c(``),O,{ignoreUpdates:k}=g(D,e=>{if(!w.value)return;let t=S.no;clearTimeout(O),O=setTimeout(()=>{E({note:e},t)},500)});t(()=>T.value?.note,(e=``)=>{w.value||(clearTimeout(O),k(()=>{D.value=e}))},{immediate:!0,flush:`sync`});let A=c(),j=c();n(()=>{w.value&&A.value?.focus()}),_(A,()=>{w.value=!1});function M(){!S.autoHeight||!A.value||!w.value||A.value.scrollHeight>A.value.clientHeight&&(A.value.style.height=`${A.value.scrollHeight}px`)}function N(e){w.value&&e.metaKey&&e.key===`s`&&(e.preventDefault(),E({note:D.value},S.no))}return t([D,w],()=>{e(()=>{M()})},{flush:`post`,immediate:!0}),(e,t)=>u(w)?a((m(),r(`textarea`,{key:1,ref_key:`inputEl`,ref:A,"onUpdate:modelValue":t[2]||=e=>D.value=e,class:p([`prose dark:prose-invert resize-none overflow-auto outline-none bg-transparent block border-primary border-2 slidev-note placeholder:op25`,[S.class,D.value?``:`italic`]]),style:f([S.style,j.value==null?{}:{height:`${j.value}px`}]),placeholder:d.placeholder,onKeydown:[t[3]||=i(e=>w.value=!1,[`esc`]),N]},null,46,b)),[[s,D.value]]):(m(),l(y,{key:0,class:p([`border-transparent border-2`,[S.class,D.value?``:`opacity-25 italic select-none`]]),style:f(S.style),note:D.value||d.placeholder,"note-html":u(T)?.noteHTML,"clicks-context":d.clicksContext,"auto-scroll":!d.autoHeight,highlight:S.highlight,onMarkerClick:t[0]||=(e,t)=>C(`markerClick`,e,t),onMarkerDblclick:t[1]||=(e,t)=>C(`markerDblclick`,e,t)},null,8,[`class`,`style`,`note`,`note-html`,`clicks-context`,`auto-scroll`,`highlight`]))}});export{x as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/TimerBar-CppjXUvc.js b/lecture-07/assets/slidev/TimerBar-CppjXUvc.js new file mode 100644 index 0000000000000000000000000000000000000000..b2efb8e44c8ffc628d0a2c0882dd4335f224f537 --- /dev/null +++ b/lecture-07/assets/slidev/TimerBar-CppjXUvc.js @@ -0,0 +1 @@ +import{$ as e,S as t,V as n,a as r,b as i,ct as a,g as o,ht as s,m as c,vt as l,w as u,xt as d,y as f,yt as p,z as m}from"../modules/shiki-CkJq9tSf.js";import{U as h,t as g,tt as _}from"../useNav-DOs7c9Ie.js";import{F as v}from"../modules/vue-Dz2ojcKF.js";import{o as y}from"../index-DYEUBAok.js";var b={class:`relative flex gap-px`},x=u({__name:`CurrentProgressBar`,props:{clicksContext:{},current:{}},setup(a){let s=a,u=g(),h=o(()=>s.clicksContext??u.clicksContext.value),_=o(()=>s.current??u.currentSlideNo.value),{total:v}=u;return(a,o)=>(m(),i(`div`,b,[(m(!0),i(c,null,n(l(v)-1,n=>(m(),i(`div`,{key:n,class:p([`border-x border-b border-main h-4px transition-all`,n<_.value?`bg-primary border-primary`:``]),style:d({width:`${1/(l(v)-1)*100}%`})},[t(r,{name:`fade`},{default:e(()=>[n===_.value?(m(),i(`div`,{key:0,class:`h-full bg-primary op75 transition-all`,style:d({width:`${h.value.total===0?0:h.value.current/(h.value.total+1)*100}%`})},null,4)):f(`v-if`,!0)]),_:2},1024)],6))),128))]))}});function S(){let e=o(()=>_.timer||`stopwatch`),t=o(()=>h(_.duration).seconds),n=v(100,{controls:!0}),r=s(y,`timer`),i=o(()=>r.value?.status),a=o(()=>(n.counter.value,r.value.status===`stopped`||!r.value.startedAt?0:r.value.status===`paused`?r.value.pausedAt-r.value.startedAt:Date.now()-r.value.startedAt)),c=o(()=>a.value/1e3),l=o(()=>c.value/t.value*100),u=o(()=>{if(e.value===`stopwatch`&&(r.value.status===`stopped`||!r.value.startedAt))return{h:``,m:`-`,s:`--`,ms:`-`};let n=e.value===`countdown`?t.value*1e3-a.value:a.value,i=Math.floor(n/1e3/60/60).toString();i===`0`&&(i=``);let o=Math.floor(n/1e3/60%60).toString();i&&(o=o.padStart(2,`0`));let s=Math.floor(n/1e3%60).toString().padStart(2,`0`),c=Math.floor(n%1e3/100).toString();return{h:i,m:o,s,ms:c}});function d(){n.pause(),r.value={status:`stopped`,slides:{},startedAt:0,pausedAt:0}}function f(){r.value&&(r.value?.status===`stopped`?(r.value.status=`running`,r.value.startedAt=Date.now()):r.value.status===`paused`&&(r.value.status=`running`,r.value.startedAt=Date.now()-(r.value.pausedAt-r.value.startedAt)),n.resume())}function p(){r.value.status=`paused`,r.value.pausedAt=Date.now(),n.pause()}function m(){r.value.status===`running`?p():f()}return{state:r,status:i,timer:u,reset:d,toggle:m,resume:f,pause:p,passed:c,percentage:l,duration:t,mode:e}}var C={class:`border-b mt-px border-main relative flex h-4px`},w=u({__name:`TimerBar`,setup(e){let t=a(S()),n=o(()=>t.status===`stopped`?`op50`:t.status===`paused`?`bg-blue`:t.percentage>100?`bg-red`:t.percentage>80?`bg-yellow`:`bg-green`);return(e,r)=>(m(),i(`div`,C,[t.status===`stopped`?f(`v-if`,!0):(m(),i(`div`,{key:0,class:p([`h-4px`,n.value]),style:d({width:`${t.percentage}%`})},null,6)),f(` {{ timesplits }} `)]))}});export{S as n,x as r,w as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/VClicks-C3WADcJq.js b/lecture-07/assets/slidev/VClicks-C3WADcJq.js new file mode 100644 index 0000000000000000000000000000000000000000..6be71b3705a28a529031e2b5d5247c65acc4cef5 --- /dev/null +++ b/lecture-07/assets/slidev/VClicks-C3WADcJq.js @@ -0,0 +1 @@ +import{A as e,D as t,L as n,R as r,S as i,W as a,et as o,m as s,p as c,v as l,w as u,z as d}from"../modules/shiki-CkJq9tSf.js";import{K as f,it as p}from"../useNav-DOs7c9Ie.js";import{n as m}from"./context-DnYiQGy6.js";import{u as h}from"../index-DYEUBAok.js";var g=u({__name:`VClickGap`,props:{size:{type:[String,Number],default:1}},setup(e){let t=e,{$clicksContext:i}=m(),a=h(),o=+t.size;return Number.isNaN(o)&&(console.warn(`[slidev] Invalid size for VClickGap: ${t.size}`),o=1),n(()=>{let e=i.currentOffset+o-1;i.register(a,{max:e,delta:o})}),r(()=>{i.unregister(a)}),(e,t)=>(d(),l(s))}}),_=[`ul`,`ol`],v=/[\s,]+/,y=u({props:{depth:{type:[Number,String],default:1},every:{type:[Number,String],default:1},at:{type:[Number,String],default:`+1`},hide:{type:Boolean,default:!1},fade:{type:Boolean,default:!1},animation:{type:[String,Array],default:void 0},handleSpecialElements:{type:Boolean,default:!0}},render(){let n=+this.every,r=f(this.at),s=typeof r==`string`,l=this.$slots.default?.();if(r==null||!l)return l;let u=a(`click`),d=(e,t)=>{let n={hide:this.hide};return typeof this.animation==`string`?this.animation.split(v).forEach(e=>{e&&(n[e]=!0)}):Array.isArray(this.animation)&&this.animation.forEach(e=>n[e]=!0),this.fade&&(n.fade=!0),o(e,[[u,t,``,n]])},m=t=>t.flatMap(t=>e(t)&&typeof t.type==`symbol`&&Array.isArray(t.children)?m(t.children):[t]);l=m(p(l));let h=(n,r=1)=>m(n).map(n=>{if(!e(n))return n;if(_.includes(n.type)&&Array.isArray(n.children)){let e=x(n.children,r+1);return t(n,{},e)}return t(n)}),y=1,b=0,x=(i,a=1)=>m(i).map(i=>{if(!e(i)||i.type===c)return i;let o=+r+Math.ceil(y++/n)-1,l;l=a<+this.depth&&Array.isArray(i.children)?t(i,{},h(i.children,a)):t(i);let u=o-b;return b=o,d(l,s?u>=0?`+${u}`:`${u}`:o)}),S=()=>i(g,{size:+r+Math.ceil((y-1)/n)-1-b});if(this.handleSpecialElements){if(l.length===1&&_.includes(l[0].type)&&Array.isArray(l[0].children))return t(l[0],{},[...x(l[0].children),S()]);if(l.length===1&&l[0].type===`table`){let n=l[0];if(Array.isArray(n.children))return t(n,{},n.children.map(n=>e(n)?n.type===`tbody`&&Array.isArray(n.children)?t(n,{},[...x(n.children),S()]):t(n):n))}}return[...x(l),S()]}});export{y as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/VerticalDivider-E2da-Zpk.js b/lecture-07/assets/slidev/VerticalDivider-E2da-Zpk.js new file mode 100644 index 0000000000000000000000000000000000000000..37e7c5214f253f233bcd5e796956be681f881870 --- /dev/null +++ b/lecture-07/assets/slidev/VerticalDivider-E2da-Zpk.js @@ -0,0 +1 @@ +import{b as e,z as t}from"../modules/shiki-CkJq9tSf.js";import{t as n}from"../_plugin-vue_export-helper-BDNMzG2s.js";var r={},i={class:`w-1px opacity-10 bg-current m-1 lg:m-2`};function a(n,r){return t(),e(`div`,i)}var o=n(r,[[`render`,a]]);export{o as t}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/context-DnYiQGy6.js b/lecture-07/assets/slidev/context-DnYiQGy6.js new file mode 100644 index 0000000000000000000000000000000000000000..ad118088fde5d081c6c52f2bbf0b73b66771aa9f --- /dev/null +++ b/lecture-07/assets/slidev/context-DnYiQGy6.js @@ -0,0 +1 @@ +import{g as e,ht as t,ut as n}from"../modules/shiki-CkJq9tSf.js";import{A as r,M as i}from"../modules/vue-Dz2ojcKF.js";var a=`$$slidev-clicks-context`,o=`$$slidev-page`,s=`$$slidev-slide-element`,c=`$$slidev-slide-scale`,l=`$$slidev-context`,u=`$$slidev-route`,d=`$$slidev-render-context`,f=`$$slidev-fontmatter`,p=`$$slidev-slide-zoom`,m=`slidev-vclick-target`,h=`slidev-vclick-hidden`,g=`slidev-vclick-hidden-explicitly`,_=`slidev-vclick-current`,v=`slidev-vclick-prior`,y=`slidev-vclick-anim-`,b=999999,x=[`localhost`,`127.0.0.1`],S=[`clicks`,`clicksStart`,`disabled`,`hide`,`hideInToc`,`layout`,`level`,`preload`,`routeAlias`,`src`,`title`,`transition`,`zoom`,`dragPos`,`lang`,`clickAnimation`],C=[...S,`theme`,`titleTemplate`,`info`,`author`,`keywords`,`presenter`,`browserExporter`,`download`,`exportFilename`,`export`,`highlighter`,`lineNumbers`,`monaco`,`monacoTypesSource`,`monacoTypesAdditionalPackages`,`monacoRunAdditionalDeps`,`monacoRunUseStrict`,`remoteAssets`,`selectable`,`record`,`colorSchema`,`routerMode`,`aspectRatio`,`canvasWidth`,`themeConfig`,`favicon`,`plantUmlServer`,`fonts`,`defaults`,`drawings`,`htmlAttrs`,`mdc`,`comark`,`contextMenu`,`wakeLock`,`pwa`,`seoMeta`,`notesAutoRuby`,`magicMoveDuration`,`preloadImages`];function w(){let i=r(l),s=t(i,`nav`),m=r(a).value,h=t(m,`current`),g=r(o),_=r(d),v=r(f,{});return{$slidev:i,$nav:s,$clicksContext:m,$clicks:h,$page:g,$route:r(u,void 0),$renderContext:_,$frontmatter:v,$scale:r(c,n(1)),$zoom:r(p,e(()=>1))}}function T(e,t){return{...i(e,t===0?C:S),frontmatter:e}}export{c as _,h as a,m as c,a as d,o as f,s as g,u as h,_ as i,b as l,d as m,w as n,g as o,f as p,y as r,v as s,T as t,x as u,p as v,l as y}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/entry-DXY6sGn2.js b/lecture-07/assets/slidev/entry-DXY6sGn2.js new file mode 100644 index 0000000000000000000000000000000000000000..8b3f16e62967a4dea0cb42cf5c49e5b996af8318 --- /dev/null +++ b/lecture-07/assets/slidev/entry-DXY6sGn2.js @@ -0,0 +1 @@ +import{$ as e,S as t,U as n,_ as r,b as i,x as a,z as o}from"../modules/shiki-CkJq9tSf.js";import{t as s}from"../_plugin-vue_export-helper-BDNMzG2s.js";var c={},l={class:`h-full w-full flex items-center justify-center gap-5 lt-md:flex-col`};function u(s,c){let u=n(`RouterLink`);return o(),i(`div`,l,[t(u,{to:`/`,class:`page-link`},{default:e(()=>[...c[0]||=[r(`div`,{class:`i-carbon:presentation-file`},null,-1),a(` Slides `,-1)]]),_:1}),t(u,{to:`/presenter`,class:`page-link`},{default:e(()=>[...c[1]||=[r(`div`,{class:`i-carbon:user-speaker`},null,-1),a(` Presenter `,-1)]]),_:1}),t(u,{to:`/notes`,class:`page-link`},{default:e(()=>[...c[2]||=[r(`div`,{class:`i-carbon:catalog`},null,-1),a(` Notes `,-1)]]),_:1}),t(u,{to:`/overview`,class:`page-link`},{default:e(()=>[...c[3]||=[r(`div`,{class:`i-carbon:list-boxes`},null,-1),a(` Overview `,-1)]]),_:1})])}var d=s(c,[[`render`,u],[`__scopeId`,`data-v-966650ef`]]);export{d as default}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/notes-Cx4IkZte.js b/lecture-07/assets/slidev/notes-Cx4IkZte.js new file mode 100644 index 0000000000000000000000000000000000000000..75b0075e27f645040ff8d393b41d5c9930ab0ac9 --- /dev/null +++ b/lecture-07/assets/slidev/notes-Cx4IkZte.js @@ -0,0 +1 @@ +import{$ as e,S as t,St as n,X as r,_ as i,b as a,g as o,m as s,ut as c,vt as l,w as u,x as d,xt as f,z as p}from"../modules/shiki-CkJq9tSf.js";import{$ as m,W as h,t as g,u as _}from"../useNav-DOs7c9Ie.js";import{g as v}from"../modules/vue-Dz2ojcKF.js";import{h as y,o as b}from"../index-DYEUBAok.js";import{t as x}from"./IconButton-CfFb_8Iy.js";import{t as S}from"./Modal-Bum_LA_c.js";import{n as C,t as w}from"./NoteDisplay-0sQOScYJ.js";import{r as T,t as E}from"./TimerBar-CppjXUvc.js";var D={class:`flex my-1`},O={class:`h-full flex flex-col`},k={class:`flex-none border-t border-main`,px3:``,py2:``},A={class:`flex-none border-t border-main`},j={class:`flex gap-1 items-center px-6 py-3`},M={key:0,class:`i-carbon:minimize`},N={key:1,class:`i-carbon:maximize`},P={class:`px2 my-auto`},F={class:`text-lg`},I={class:`opacity-50 text-sm`},L=u({__name:`notes`,setup(u){y({title:`Notes - ${m}`});let{slides:L,total:R}=g(),{isFullscreen:z,toggle:B}=_,V=c(),H=v(`slidev-notes-font-size`,18),U=o(()=>b.page),W=c(!1),G=o(()=>L.value.find(e=>e.no===U.value));r(U,()=>{V.value?.scrollTo({left:0,top:0,behavior:`smooth`}),window.scrollTo({left:0,top:0,behavior:`smooth`})});function K(){H.value+=1}function q(){--H.value}let J=o(()=>{let e=b.clicks,t=b.clicksTotal;return h(c(e),void 0,t)});return(r,o)=>(p(),a(s,null,[t(S,{modelValue:W.value,"onUpdate:modelValue":o[1]||=e=>W.value=e,class:`px-6 py-4 flex flex-col gap-2`},{default:e(()=>[o[3]||=i(`div`,{class:`flex gap-2 text-xl`},[i(`div`,{class:`i-carbon:information my-auto`}),d(` Help `)],-1),o[4]||=i(`div`,{class:`prose dark:prose-invert`},[i(`p`,null,`This is the hands-free live notes viewer.`),i(`p`,null,`It's designed to be used in a separate view or device. The progress is controlled by and auto synced with the main presenter or slide.`)],-1),i(`div`,D,[i(`button`,{class:`slidev-form-button`,onClick:o[0]||=e=>W.value=!1},` Close `)])]),_:1},8,[`modelValue`]),i(`div`,O,[t(T,{"clicks-context":J.value,current:U.value},null,8,[`clicks-context`,`current`]),t(E),i(`div`,{ref_key:`scroller`,ref:V,class:`px-5 py-3 flex-auto h-full overflow-auto`,style:f({fontSize:`${l(H)}px`})},[t(w,{note:G.value?.meta.slide.note,"note-html":G.value?.meta.slide.noteHTML,placeholder:`No notes for Slide ${U.value}.`,"clicks-context":J.value,"auto-scroll":!0},null,8,[`note`,`note-html`,`placeholder`,`clicks-context`])],4),i(`div`,k,[t(C,{"clicks-context":J.value,readonly:``},null,8,[`clicks-context`])]),i(`div`,A,[i(`div`,j,[t(x,{title:l(z)?`Close fullscreen`:`Enter fullscreen`,onClick:l(B)},{default:e(()=>[l(z)?(p(),a(`div`,M)):(p(),a(`div`,N))]),_:1},8,[`title`,`onClick`]),t(x,{title:`Increase font size`,onClick:K},{default:e(()=>[...o[5]||=[i(`div`,{class:`i-carbon:zoom-in`},null,-1)]]),_:1}),t(x,{title:`Decrease font size`,onClick:q},{default:e(()=>[...o[6]||=[i(`div`,{class:`i-carbon:zoom-out`},null,-1)]]),_:1}),t(x,{title:`Edit notes`,to:`/notes-edit`,target:`_blank`},{default:e(()=>[...o[7]||=[i(`div`,{class:`i-carbon:edit`},null,-1)]]),_:1}),t(x,{title:`Help`,class:`rounded-full`,onClick:o[2]||=e=>W.value=!0},{default:e(()=>[...o[8]||=[i(`div`,{class:`i-carbon:help`},null,-1)]]),_:1}),o[9]||=i(`div`,{class:`flex-auto`},null,-1),i(`div`,P,[i(`span`,F,n(U.value),1),i(`span`,I,` / `+n(l(R)),1)])])])])],64))}});export{L as default}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/notes-edit-CST45Tju.js b/lecture-07/assets/slidev/notes-edit-CST45Tju.js new file mode 100644 index 0000000000000000000000000000000000000000..323df1e3fc0c19921dbd28c1ea35555e7c885343 --- /dev/null +++ b/lecture-07/assets/slidev/notes-edit-CST45Tju.js @@ -0,0 +1,2 @@ +import{$ as e,S as t,_ as n,b as r,et as i,l as a,m as o,ut as s,w as c,x as l,z as u}from"../modules/shiki-CkJq9tSf.js";import{$ as d,t as f}from"../useNav-DOs7c9Ie.js";import{O as p}from"../modules/vue-Dz2ojcKF.js";import{h as m,t as h}from"../index-DYEUBAok.js";import{t as g}from"./IconButton-CfFb_8Iy.js";import{t as _}from"./Modal-Bum_LA_c.js";var v={class:`flex my-1`},y={class:`h-full`},b={class:`slidev-glass-effect fixed bottom-5 right-5 rounded-full border border-main`},x=c({__name:`notes-edit`,setup(c){let x=/^---\s*#(\d+)\s*$/;m({title:`Notes Edit - ${d}`});let{slides:S}=f(),C=s(!1),w=s(T(S.value));function T(e){let t=[];for(let n of e)n.meta.slide.note?.trim()&&(t.push(`--- #${n.no}`),t.push(``),t.push(n.meta.slide.note),t.push(``));return t.join(` +`)}function E(e,t){let n=e.split(/^(---\s*#\d+\s*)$/gm);n.forEach((e,r)=>{let i=e.match(x);if(i){let e=Number.parseInt(i[1]),a=n[r+1].trim(),o=t.find(t=>t.no===e);o&&(o.meta.slide.note=a,h(e).update({note:a}))}})}return p(w,e=>{E(e,S.value)},{debounce:300}),(s,c)=>(u(),r(o,null,[t(_,{modelValue:C.value,"onUpdate:modelValue":c[1]||=e=>C.value=e,class:`px-6 py-4 flex flex-col gap-2`},{default:e(()=>[c[4]||=n(`div`,{class:`flex gap-2 text-xl`},[n(`div`,{class:`i-carbon:information my-auto`}),l(` Help `)],-1),c[5]||=n(`div`,{class:`prose dark:prose-invert`},[n(`p`,null,`This is the batch notes editor. You can edit the notes for all the slides at once here.`),n(`p`,null,[l(`The note for each slide are separated by `),n(`code`,null,`--- #[no]`),l(` lines, you might want to keep them while editing.`)])],-1),n(`div`,v,[n(`button`,{class:`slidev-form-button`,onClick:c[0]||=e=>C.value=!1},` Close `)])]),_:1},8,[`modelValue`]),n(`div`,y,[n(`div`,b,[t(g,{title:`Help`,class:`rounded-full`,onClick:c[2]||=e=>C.value=!0},{default:e(()=>[...c[6]||=[n(`div`,{class:`i-carbon:help text-2xl`},null,-1)]]),_:1})]),i(n(`textarea`,{"onUpdate:modelValue":c[3]||=e=>w.value=e,class:`prose dark:prose-invert resize-none p5 outline-none bg-transparent block h-full w-full! max-w-full! max-h-full! min-h-full! min-w-full!`},null,512),[[a,w.value]])])],64))}});export{x as default}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/overview-C2nc1_I5.js b/lecture-07/assets/slidev/overview-C2nc1_I5.js new file mode 100644 index 0000000000000000000000000000000000000000..05e90655e40fe3b4d4d1dd0418a50532d5a8f60e --- /dev/null +++ b/lecture-07/assets/slidev/overview-C2nc1_I5.js @@ -0,0 +1 @@ +import{$ as e,L as t,N as n,R as r,S as i,St as a,V as o,_ as s,b as c,ct as l,g as u,m as d,pt as ee,ut as f,v as p,vt as m,w as te,xt as h,y as g,yt as _,z as v}from"../modules/shiki-CkJq9tSf.js";import{$ as ne,B as y,G as re,R as b,X as ie,Y as x,t as ae}from"../useNav-DOs7c9Ie.js";import{t as S}from"../_plugin-vue_export-helper-BDNMzG2s.js";import{B as oe,V as se}from"../modules/vue-Dz2ojcKF.js";import{l as C}from"./context-DnYiQGy6.js";import{f as ce,h as le,m as ue,p as w}from"../index-DYEUBAok.js";import{n as de,r as fe}from"../modules/unplugin-icons-CEvhMF8G.js";import{t as T}from"./IconButton-CfFb_8Iy.js";import{n as E}from"./NoteDisplay-0sQOScYJ.js";import{i as pe,o as me,t as he}from"../SlideWrapper-DkcAPxbl.js";import{t as ge}from"./NoteEditable-Cz0lbH-c.js";var _e={class:`h-screen w-screen of-hidden flex`},ve={key:0,class:`grid grid-rows-[auto_max-content] border-r border-main select-none max-h-full h-full`},ye={class:`relative`},be={class:`absolute left-0 top-0 bottom-0 w-200 flex flex-col flex-auto items-end group p-6px md:p-10px gap-1 max-h-full of-x-visible of-y-auto`,style:{direction:`rtl`}},xe=[`onClick`],Se={p2:``,border:`t main`},Ce={class:`flex flex-col gap-1 mx-1 items-end`},we={key:0,class:`flex items-end gap-2`},Te=[`onClick`],Ee=[`onDblclick`],De={key:2,class:`select-none absolute bottom-0 right-0 bg-main rounded-tl p2 op35 text-xs`},Oe={key:1,class:`absolute z-2 top-0 right-0 px3 py1.5 border-b border-l rounded-lb bg-main/80 backdrop-blur border-main select-none`},ke={class:`text-xs op50`},D=450,O=S(te({__name:`overview`,setup(te){le({title:`Overview - ${ne}`});let S=oe(),O=se(),{openInEditor:Ae,slides:k,isEmbedded:A}=ae(),j=u(()=>S.query.mode===`preview`),M=u(()=>j.value&&A.value),N=u(()=>j.value?M.value?Math.max(0,b.width.value-16):Math.min(900,Math.max(320,b.width.value-160)):D),je=u(()=>N.value/ie.value),P=l(new Map),F=l(new Map),I=f([]),L=f(),R=f(null),z=0,B,V,H=u(()=>k.value.map(e=>Fe(e.meta?.slide?.note||``))),Me=u(()=>H.value.reduce((e,t)=>e+t,0)),Ne=u(()=>k.value.map(e=>K(e)).reduce((e,t)=>e+t,0)),Pe=u(()=>String(Math.max(1,k.value.length)).length),U=ee(),W=new WeakMap;function G(e){return W.has(e)||W.set(e,re(e,C)),W.get(e)}function K(e){return e.meta?.clicks||G(e)?.total}function q(e){U.value===e?U.value=void 0:U.value=e}function Fe(e){let t=e.match(/[\w`'\-\u0392-\u03C9\u00C0-\u00FF\u0600-\u06FF\u0400-\u04FF]+|[\u4E00-\u9FFF\u3400-\u4DBF\uF900-\uFAFF\u3040-\u309F\uAC00-\uD7AF]+/g),n=0;if(!t)return 0;for(let e=0;e=19968?n+=t[e].length:n+=1;return n}function J(){let e=window.innerHeight||document.documentElement.clientHeight,t,n=[];for(let[r,i]of P.entries()){let a=i.getBoundingClientRect(),o=Math.max(0,Math.min(a.bottom,e)-Math.max(a.top,0));o!==0&&(o>=a.height&&n.push(r),(!t||o>t.visibleHeight)&&(t={idx:r,visibleHeight:o}))}I.value=n.length?n:t?[t.idx]:[]}function Y(e){let t=document.createElement(`a`);t.target=`_blank`,t.href=x+e.slice(1),t.click()}function Ie(e){let t=new URL(x+e.slice(1),location.href).href;if(A.value){window.parent.postMessage({target:`slidev`,sender:`slidev`,type:`open-external`,url:t},`*`);return}Y(e)}function Le(e){let t=P.get(e);t&&t.scrollIntoView({behavior:`smooth`,block:`start`})}function X(e){let t=F.get(e)||P.get(e);if(!t||!L.value)return null;let n=L.value.getBoundingClientRect();return t.getBoundingClientRect().top-n.top+L.value.scrollTop}function Z(e){if(!L.value||k.value.length===0)return;let t=Math.min(Math.max(e,1),k.value.length),n=Math.floor(t)-1,r=t-(n+1),i=X(n),a=X(n+1);if(i==null)return;let o=i+(a==null?0:(a-i)*r)-L.value.clientHeight*.5;Math.abs(L.value.scrollTop-o)<1||L.value.scrollTo({top:o})}function Re(){let e=S.query.slideNo,t=Number(Array.isArray(e)?e[0]:e);return Number.isFinite(t)&&t>0?t:void 0}function Q(e){if(!M.value)return;let t=Number(e.toFixed(3)).toString();S.query.slideNo!==t&&O.replace({query:{...S.query,slideNo:t}})}function ze(){if(!L.value||k.value.length===0)return null;let e=L.value.scrollTop+L.value.clientHeight*.5,t=k.value.map((e,t)=>X(t)).filter(e=>e!=null);if(t.length===0)return null;if(t.length===1||e<=t[0])return 1;for(let n=1;n{V=void 0;let e=B;B=void 0,e!=null&&(Q(e),!(Date.now()0&&(z=Date.now()+300,B=void 0,Q(t),Z(t))}function He(e,t,n){let r=G(n);r.current=r.current===t?C:t,e.preventDefault()}function Ue(e,t){if(e.ctrlKey||e.metaKey){e.preventDefault(),Ie(y(t,!1));return}let n=t.meta?.slide;n&&window.parent.postMessage({target:`slidev`,type:`command`,command:`goto`,args:[n.filepath,n.sourceIndex]},`*`)}return t(()=>{window.addEventListener(`message`,$);let e=M.value?Re():void 0;e!=null&&(z=Date.now()+300,Z(e)),n(()=>{e!=null&&Z(e),J()})}),r(()=>{window.removeEventListener(`message`,$),V&&clearTimeout(V)}),(t,n)=>{let r=de,l=fe;return v(),c(`div`,_e,[m(A)?g(`v-if`,!0):(v(),c(`nav`,ve,[s(`div`,ye,[s(`div`,be,[(v(!0),c(d,null,o(m(k),(e,t)=>(v(),c(`div`,{key:e.no,class:`relative`,style:{direction:`ltr`}},[s(`button`,{class:_([`relative transition duration-300 w-8 h-8 rounded hover:bg-active hover:op100`,I.value.includes(t)?`op100 text-primary bg-gray:5`:`op20`]),onClick:e=>Le(t)},[s(`div`,null,a(t+1),1)],10,xe),e.meta?.slide?.title?(v(),c(`div`,{key:0,class:_([`pointer-events-none select-none absolute left-110% top-50% translate-y--50% ws-nowrap z-label px2 slidev-glass-effect transition duration-400 op0 group-hover:op100`,I.value.includes(t)?`text-primary`:`text-main important-text-op-50`])},a(e.meta?.slide?.title),3)):g(`v-if`,!0)]))),128))])]),s(`div`,Se,[m(ce)?(v(),p(T,{key:1,title:m(w)?`Dark mode`:`Light mode`,"pointer-events-none":``,op50:``},{default:e(()=>[m(w)?(v(),p(r,{key:0})):(v(),p(l,{key:1}))]),_:1},8,[`title`])):(v(),p(T,{key:0,title:m(w)?`Switch to light mode theme`:`Switch to dark mode theme`,onClick:n[0]||=e=>m(ue)()},{default:e(()=>[m(w)?(v(),p(r,{key:0})):(v(),p(l,{key:1}))]),_:1},8,[`title`]))])])),s(`main`,{ref_key:`scroller`,ref:L,class:`flex-1 h-full of-auto`,style:h(`grid-template-columns: repeat(auto-fit,minmax(${D}px,1fr))`),onScroll:Ve},[(v(!0),c(d,null,o(m(k),(t,r)=>(v(),c(`div`,{key:t.no,ref_for:!0,ref:e=>P.set(r,e),class:_([`overview-slide-block relative of-hidden flex gap-4 min-h-50`,[r===0&&!M.value?`pt2`:``,M.value?`justify-center`:`border-t border-main`]])},[M.value?g(`v-if`,!0):(v(),c(`div`,{key:0,class:_([`select-none text-right my5 flex flex-col justify-between items-end`,j.value?`w-9`:`w-13`]),style:h({height:`${je.value}px`})},[s(`div`,{class:`self-center text-3xl op20 mb2 text-center mr--14px tabular-nums`,style:h({width:`${Pe.value}ch`})},a(r+1),5),s(`div`,Ce,[i(T,{class:_([`overview-slide-action mr--4 op0`,j.value?`text-lg`:``]),title:`Play in new tab`,onClick:e=>Y(m(y)(t,!1))},{default:e(()=>[...n[4]||=[s(`div`,{class:`i-carbon:presentation-file`},null,-1)]]),_:1},8,[`class`,`onClick`]),g(`v-if`,!0)])],6)),s(`div`,{class:_([`flex flex-col`,M.value?`my1 gap-0`:`my5 gap-2`]),style:h({width:`${N.value}px`})},[M.value?(v(),c(`div`,we,[s(`button`,{type:`button`,class:`select-none pl-1 text-lg leading-tight op60 tabular-nums hover:op90 hover:underline underline-offset-2`,onClick:e=>Ue(e,t)},a(r+1),9,Te),K(t)?(v(),p(E,{key:0,active:U.value===t,"clicks-context":G(t),resettable:``,compact:``,attached:``,class:`ml-auto w-88 min-w-[70%] max-w-[calc(100%-3rem)]`,onDblclick:e=>q(t),onActivate:e=>U.value=t,onReset:n[1]||=e=>U.value=void 0},null,8,[`active`,`clicks-context`,`onDblclick`,`onActivate`])):g(`v-if`,!0)])):g(`v-if`,!0),s(`div`,{ref_for:!0,ref:e=>F.set(r,e),class:_([`border rounded border-main overflow-hidden bg-main h-max`,[M.value&&K(t)?`rounded-tr-0`:``,M.value?``:`select-none`]]),onDblclick:e=>!M.value&&Y(m(y)(t,!1))},[(v(),p(pe,{key:t.no,width:N.value,class:_(M.value?``:`pointer-events-none important:[&_*]:select-none`)},{default:e(()=>[i(he,{"clicks-context":G(t),route:t,"render-context":`overview`},null,8,[`clicks-context`,`route`]),i(me,{page:t.no},null,8,[`page`])]),_:2},1032,[`width`,`class`]))],42,Ee),K(t)&&!M.value?(v(),p(E,{key:1,active:U.value===t,"clicks-context":G(t),resettable:``,class:_([`ml-1 w-[calc(100%-0.25rem)]`,j.value?``:`mt-2`]),onDblclick:e=>q(t),onActivate:e=>U.value=t,onReset:n[2]||=e=>U.value=void 0},null,8,[`active`,`clicks-context`,`class`,`onDblclick`,`onActivate`])):g(`v-if`,!0)],6),j.value?g(`v-if`,!0):(v(),p(ge,{key:1,no:t.no,class:`relative z-1 max-w-250 w-250 text-lg rounded p3`,"auto-height":!0,highlight:U.value===t,editing:R.value===t.no,"clicks-context":G(t),onDblclick:e=>R.value===t.no?null:R.value=t.no,"onUpdate:editing":n[3]||=e=>R.value=null,onMarkerClick:(e,n)=>He(e,n,t)},null,8,[`no`,`highlight`,`editing`,`clicks-context`,`onDblclick`,`onMarkerClick`])),!j.value&&H.value[r]>0?(v(),c(`div`,De,a(H.value[r])+` words `,1)):g(`v-if`,!0)],2))),128))],36),m(A)?g(`v-if`,!0):(v(),c(`div`,Oe,[s(`div`,ke,a(m(k).length)+` slides · `+a(Ne.value+m(k).length-1)+` clicks · `+a(Me.value)+` words `,1)]))])}}}),[[`__scopeId`,`data-v-47f32601`]]);export{O as default}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/play-DqoRPRn6.js b/lecture-07/assets/slidev/play-DqoRPRn6.js new file mode 100644 index 0000000000000000000000000000000000000000..cce57d4f73dfa37dfe6a55f3611d9c3bf55a56df --- /dev/null +++ b/lecture-07/assets/slidev/play-DqoRPRn6.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DrawingControls-7DRfiHec.js","../rolldown-runtime-hePW80VL.js","../modules/shiki-CkJq9tSf.js","../modules/shiki-BrmBd2_v.css","../modules/vue-Dz2ojcKF.js","../useDrawings-dMxKslDP.js","../useNav-DOs7c9Ie.js","../_plugin-vue_export-helper-BDNMzG2s.js","./context-DnYiQGy6.js","../index-DYEUBAok.js","../syncState-BCmj5bTl.js","../index-DrfYeVie.css","./IconButton-CfFb_8Iy.js","./VerticalDivider-E2da-Zpk.js","../DrawingControls-Dhbx0szf.css"])))=>i.map(i=>d[i]); +import{$ as e,S as t,X as n,_ as r,at as i,b as a,g as o,m as s,pt as c,st as l,ut as u,v as d,vt as f,w as p,x as m,xt as h,y as g,yt as _,z as v}from"../modules/shiki-CkJq9tSf.js";import{E as y,F as b,I as x,f as S,h as C,k as w,q as T,t as E,tt as D,v as O,w as k}from"../useNav-DOs7c9Ie.js";import{C as A,m as j}from"../modules/vue-Dz2ojcKF.js";import{o as M}from"../index-DYEUBAok.js";import{t as N}from"../useDrawings-dMxKslDP.js";import{t as P}from"../modules/unplugin-icons-CEvhMF8G.js";import{t as F}from"./Modal-Bum_LA_c.js";import{i as I}from"../SlideWrapper-DkcAPxbl.js";import{a as L,c as R,d as z,f as B,l as V,n as H,r as U,s as W,t as G,u as K}from"./shortcuts-BJx9p93Z.js";var q=2e3;function J(e){let t=o(()=>e.value&&S.value);function r(){document.body.style.cursor=`none`}function i(){document.body.style.cursor=``}let a=null;n(t,e=>{e||(i(),a&&clearTimeout(a),a=null)}),l(()=>{i(),a&&clearTimeout(a),a=null}),j(document.body,[`pointermove`,`pointerdown`],()=>{i(),a&&clearTimeout(a),a=t.value?setTimeout(r,q):null},{passive:!0})}``+new URL(`../logo-BYkHSa_O.png`,import.meta.url).href;var Y={class:`slidev-info-dialog slidev-layout flex flex-col gap-4 text-base`},X=[`innerHTML`],Z=p({__name:`InfoDialog`,props:{modelValue:{default:!1}},emits:[`update:modelValue`],setup(t,{emit:n}){let s=A(t,`modelValue`,n),c=o(()=>typeof D.info==`string`);return(t,n)=>(v(),d(F,{modelValue:f(s),"onUpdate:modelValue":n[0]||=e=>i(s)?s.value=e:null,class:`px-6 py-4`},{default:e(()=>[r(`div`,Y,[c.value?(v(),a(`div`,{key:0,class:`mb-4`,innerHTML:f(D).info},null,8,X)):g(`v-if`,!0),n[1]||=r(`a`,{href:`https://github.com/slidevjs/slidev`,target:`_blank`,class:`!opacity-100 !border-none !text-current`},[r(`div`,{class:`flex gap-1 children:my-auto`},[r(`div`,{class:`opacity-50 text-sm mr-2`},`Powered by`),r(`img`,{class:`w-5 h-5`,src:``+new URL(`../logo-BYkHSa_O.png`,import.meta.url).href,alt:`Slidev logo`}),r(`div`,{style:{color:`#2082A6`}},[r(`b`,null,`Sli`),m(`dev `)])])],-1)])]),_:1},8,[`modelValue`]))}}),Q=p({__name:`Controls`,setup(e){let{isEmbedded:n}=E(),r=!D.drawings.presenterOnly&&!n.value,o=c();r&&T(()=>import(`./DrawingControls-7DRfiHec.js`).then(e=>e.n).then(e=>o.value=e.default),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]),import.meta.url);let l=c(),u=c();return(e,n)=>(v(),a(s,null,[o.value?(v(),d(f(o),{key:0})):g(`v-if`,!0),t(W),t(R),l.value?(v(),d(f(l),{key:1})):g(`v-if`,!0),u.value?(v(),d(f(u),{key:2,modelValue:f(w),"onUpdate:modelValue":n[0]||=e=>i(w)?w.value=e:null},null,8,[`modelValue`])):g(`v-if`,!0),f(D).info?(v(),d(Z,{key:3,modelValue:f(y),"onUpdate:modelValue":n[1]||=e=>i(y)?y.value=e:null},null,8,[`modelValue`])):g(`v-if`,!0),t(V)],64))}}),$={key:0,class:`absolute top-0 left-0 right-0 bottom-0 pointer-events-none text-xl`},ee=p({__name:`PresenterMouse`,setup(e){return(e,n)=>{let r=P;return f(M).cursor?.style===`cursor`?(v(),a(`div`,$,[t(r,{class:`absolute stroke-white dark:stroke-black`,style:h({left:`${f(M).cursor.x}%`,top:`${f(M).cursor.y}%`,strokeWidth:16})},null,8,[`style`])])):g(`v-if`,!0)}}}),te=p({__name:`play`,setup(n){let{next:i,prev:l,isPrintMode:p,isPlaying:m,isEmbedded:h}=E(),{isDrawing:y}=N(),S=u();function w(e){k.value||e.button===0&&e.target?.id===`slide-container`&&(e.pageX/window.innerWidth>.5?i():l())}B(S),G(),z(),J(o(()=>m.value&&!h.value&&!k.value));let T=o(()=>O.value||k.value),D=c(),A=o(()=>{let e=``;return b.value.brightness!==x.brightness&&(e+=`brightness(${b.value.brightness}) `),b.value.contrast!==x.contrast&&(e+=`contrast(${b.value.contrast}) `),b.value.sepia!==x.sepia&&(e+=`sepia(${b.value.sepia}) `),b.value.hueRotate!==x.hueRotate&&(e+=`hue-rotate(${b.value.hueRotate}deg) `),b.value.invert&&(e+=`invert(1) `),{filter:e}});return(n,i)=>(v(),a(s,null,[r(`div`,{id:`page-root`,ref_key:`root`,ref:S,class:_([`grid`,f(C)?`grid-rows-[1fr_max-content]`:`grid-cols-[1fr_max-content]`])},[t(I,{style:{background:`var(--slidev-slide-container-background, black)`},"is-main":``,"content-style":A.value,onPointerdown:w,onContextmenu:f(K)},{default:e(()=>[t(H,{"render-context":`slide`}),t(ee),t(L)]),controls:e(()=>[f(p)?g(`v-if`,!0):(v(),a(`div`,{key:0,class:_([`absolute bottom-0 left-0 transition duration-300 opacity-0 hover:opacity-100 focus-within:opacity-100 focus-visible:opacity-100`,[T.value?`!opacity-100 right-0`:`opacity-0 p-2`,f(y)?`pointer-events-none`:``]])},[t(U,{persist:T.value},null,8,[`persist`])],2))]),_:1},8,[`content-style`,`onContextmenu`]),D.value&&f(k)?(v(),d(f(D),{key:0,resize:!0})):g(`v-if`,!0)],2),f(p)?g(`v-if`,!0):(v(),d(Q,{key:0})),i[0]||=r(`div`,{id:`twoslash-container`},null,-1)],64))}});export{te as default}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/presenter-CeSv1Nh0.js b/lecture-07/assets/slidev/presenter-CeSv1Nh0.js new file mode 100644 index 0000000000000000000000000000000000000000..6c830b8721e5e2f3ebf631629b645b8ca79ff0a6 --- /dev/null +++ b/lecture-07/assets/slidev/presenter-CeSv1Nh0.js @@ -0,0 +1 @@ +import{$ as e,L as t,S as n,St as r,X as i,Y as a,Z as o,_ as s,at as c,b as l,et as u,g as d,m as f,pt as p,u as m,ut as h,v as g,vt as _,w as v,x as y,xt as b,y as x,yt as S,z as C}from"../modules/shiki-CkJq9tSf.js";import{$ as ee,O as te,W as ne,a as re,b as w,m as ie,o as ae,t as oe,w as se,x as ce}from"../useNav-DOs7c9Ie.js";import{t as T}from"../_plugin-vue_export-helper-BDNMzG2s.js";import{T as le,g as E,m as D,v as O}from"../modules/vue-Dz2ojcKF.js";import{h as ue,n as k,o as A}from"../index-DYEUBAok.js";import{t as de}from"../useDrawings-dMxKslDP.js";import{t as fe}from"./DrawingControls-7DRfiHec.js";import{t as j}from"./IconButton-CfFb_8Iy.js";import{n as pe,t as M}from"./NoteDisplay-0sQOScYJ.js";import{n as N,r as me,t as he}from"./TimerBar-CppjXUvc.js";import{i as ge,t as _e}from"../SlideWrapper-DkcAPxbl.js";import"./NoteEditable-Cz0lbH-c.js";import{a as ve,c as ye,d as be,f as xe,i as Se,l as Ce,n as we,o as Te,r as Ee,s as De,t as Oe,u as ke}from"./shortcuts-BJx9p93Z.js";var Ae=v({__name:`NoteStatic`,props:{no:{},class:{},clicksContext:{}},setup(e){let t=e,{info:n}=k(t.no);return(r,i)=>(C(),g(M,{class:S(t.class),note:_(n)?.note,"note-html":_(n)?.noteHTML,"clicks-context":e.clicksContext},null,8,[`class`,`note`,`note-html`,`clicks-context`]))}}),P={"h-full":``,"w-full":``},je={key:0,"w-full":``,"h-full":``,flex:`~ col gap-4 items-center justify-center`},Me=v({__name:`ScreenCaptureMirror`,setup(e){let t=a(`video`),n=p(null),r=p(!1);async function i(){n.value=await navigator.mediaDevices.getDisplayMedia({video:{cursor:`always`},audio:!1,selfBrowserSurface:`include`,preferCurrentTab:!1}),t.value.srcObject=n.value,t.value.play(),r.value=!0,n.value.addEventListener(`inactive`,()=>{t.value.srcObject=null,r.value=!1}),n.value.addEventListener(`ended`,()=>{t.value.srcObject=null,r.value=!1})}return(e,n)=>(C(),l(`div`,P,[u(s(`video`,{ref_key:`video`,ref:t,class:`w-full h-full object-contain`},null,512),[[m,r.value]]),r.value?x(`v-if`,!0):(C(),l(`div`,je,[n[0]||=s(`div`,{op50:``},[y(` Use screen capturing to mirror your main screen back to presenter view.`),s(`br`),y(` Click the button below and `),s(`b`,null,`select your other monitor or window`),y(`. `)],-1),s(`button`,{class:`slidev-form-button`,onClick:i},` Start Screen Mirroring `)]))]))}}),Ne={class:`w-22px cursor-pointer`},Pe={class:`group-not-hover:hidden flex flex-col items-center`},Fe={key:0,class:`i-carbon:pause text-lg`},Ie={key:1,class:`i-carbon:play`},Le={class:`text-3xl px-3 my-auto font-mono`},Re=v({__name:`TimerInlined`,setup(e){let{status:t,percentage:n,mode:i,timer:a,reset:o,toggle:c}=N(),u=d(()=>t.value===`stopped`?`op50`:t.value===`paused`?`text-blue6 dark:text-blue3`:n.value>100?`text-red6 dark:text-red3`:n.value>80?`text-yellow6 dark:text-yellow3`:`text-green6 dark:text-green3`);return(e,n)=>(C(),l(`div`,{class:S([`group flex items-center justify-center pl-4 select-none`,u.value])},[s(`div`,Ne,[s(`div`,{class:S([`group-hover:hidden text-2xl`,_(i)===`countdown`?`i-carbon:timer`:`i-carbon:time`])},null,2),s(`div`,Pe,[s(`div`,{class:`relative op-80 hover:op-100`,onClick:n[0]||=(...e)=>_(c)&&_(c)(...e)},[_(t)===`running`?(C(),l(`div`,Fe)):(C(),l(`div`,Ie))]),s(`div`,{class:`op-80 hover:op-100`,onClick:n[1]||=(...e)=>_(o)&&_(o)(...e)},[...n[2]||=[s(`div`,{class:`i-carbon:renew`},null,-1)]])])]),s(`div`,Le,[_(a).h?(C(),l(f,{key:0},[s(`span`,null,r(_(a).h),1),n[3]||=s(`span`,{op50:``},`:`,-1)],64)):x(`v-if`,!0),s(`span`,null,r(_(a).m),1),n[4]||=s(`span`,{op50:``},`:`,-1),s(`span`,null,r(_(a).s),1)])],2))}}),ze={class:`bg-main h-full slidev-presenter grid grid-rows-[max-content_1fr] of-hidden`},Be={flex:`~ gap-4 items-center`,border:`b main`,p1:``},Ve={class:`relative grid-section next flex flex-col p-2 lg:p-4`},He={key:2,class:`h-full flex justify-center items-center`},Ue={key:3,class:`h-full grid grid-rows-[1fr_min-content]`},F=T(v({__name:`presenter`,setup(r){let a=le(),v=h(),y=h(),T=h(),k=h();Oe(),xe(v),be();let{clicksContext:M,currentSlideNo:N,currentSlideRoute:P,hasNext:je,nextRoute:Ne,slides:Pe,getPrimaryClicks:Fe}=oe(),{isDrawing:Ie}=de();ue({title:`Presenter - ${ee}`}),h(!1);let Le=d(()=>Pe.value.map(e=>{let t=h(0);return{context:ne(t,e?.meta.slide?.frontmatter.clicksStart??0,e?.meta.clicks),clicks:t}})),F=d(()=>M.value.currentF.value&&Le.value[F.value[0].no-1]);i(F,()=>{I.value&&F.value&&(I.value.clicks.value=F.value[1])},{immediate:!0});let L=E(`slidev-presenter-main-slide-mode`,`slides`),R=E(`slidev-presenter-notes-width`,360),z=E(`slidev-presenter-notes-row-size`,280),B=h(0),V=h(!1),H=h(!1),U=h(0),W=h(360),We=h(0),G=h(280),K={minNotesWidth:240,maxNotesWidth:720,minNotesRowSize:160,maxNotesWidthRatio:.7,maxNotesRowHeightRatio:.75},Ge=O(`(min-aspect-ratio: 1/1)`),q=O(`(max-aspect-ratio: 3/5)`),J=d(()=>w.value===1&&Ge.value),Y=d(()=>!(w.value===1&&q.value)),X=d(()=>w.value===1&&!q.value||w.value===2||w.value===3),Ke=d(()=>w.value===1&&!q.value);function qe(e){return Number.isFinite(e)?Math.max(K.minNotesWidth,Math.min(K.maxNotesWidth,Math.round(e))):K.minNotesWidth}function Je(e){let t=y.value;if(!t)return;let n=t.getBoundingClientRect(),r=e-U.value,i=qe(J.value?W.value-r:W.value+r),a=Math.round(n.width*K.maxNotesWidthRatio);R.value=Math.min(i,Math.max(K.minNotesWidth,a))}function Z(e){Y.value&&e.button===0&&(e.preventDefault(),U.value=e.clientX,W.value=R.value,V.value=!0)}function Q(e){return Number.isFinite(e)?Math.max(K.minNotesRowSize,Math.round(e)):K.minNotesRowSize}function Ye(e){let t=y.value;if(!t)return;let n=t.getBoundingClientRect(),r=e-We.value,i=Ke.value?G.value-r:G.value+r,a=Math.round(n.height*K.maxNotesRowHeightRatio);z.value=Math.min(Q(i),Math.max(K.minNotesRowSize,a))}function Xe(e){if(!X.value||e.button!==0)return;e.preventDefault();let t=w.value===2?v.value?.getBoundingClientRect().height:T.value?.getBoundingClientRect().height;We.value=e.clientY,G.value=Q(t??z.value),H.value=!0}function Ze(){let e=k.value;e&&(B.value=Math.round(e.getBoundingClientRect().height))}function Qe(){V.value=!1,H.value=!1}function $e(){Ze(),et()}D(window,`pointermove`,e=>{V.value&&Je(e.clientX),H.value&&Ye(e.clientY)}),D(window,`pointerup`,Qe),D(window,`pointercancel`,Qe),t(()=>{$e()}),D(window,`resize`,()=>{$e()});function et(){R.value=qe(R.value),z.value=Q(z.value);let e=y.value;if(!e)return;let t=e.getBoundingClientRect(),n=Math.round(t.width*K.maxNotesWidthRatio),r=Math.round(t.height*K.maxNotesRowHeightRatio);R.value=Math.min(R.value,Math.max(K.minNotesWidth,n)),z.value=Math.min(z.value,Math.max(K.minNotesRowSize,r))}let $=p();return t(()=>{let e=Te(),t=le();o(()=>{!e.value||!t.value||Ie.value||!te.value?A.cursor=void 0:A.cursor={...e.value,style:re.value}})}),(t,r)=>(C(),l(f,null,[s(`div`,ze,[s(`div`,null,[n(me),n(he)]),s(`div`,{ref_key:`gridContainer`,ref:y,class:S([`grid-container`,`layout${_(w)}`]),style:b({"--slidev-presenter-notes-width":`${_(R)}px`,"--slidev-presenter-notes-row-size":`${_(z)}px`,"--slidev-presenter-bottom-height":`${B.value}px`})},[x(` Unified vertical resizer for wide layout `),Y.value&&J.value?(C(),l(`div`,{key:0,class:`notes-vertical-resizer`,role:`separator`,"aria-orientation":`vertical`,title:`Resize notes panel`,onPointerdown:Z},null,32)):x(`v-if`,!0),x(` Unified vertical resizer for layout 3 `),Y.value&&_(w)===3?(C(),l(`div`,{key:1,class:`notes-vertical-resizer-left`,role:`separator`,"aria-orientation":`vertical`,title:`Resize notes panel`,onPointerdown:Z},null,32)):x(`v-if`,!0),s(`div`,{ref_key:`main`,ref:v,class:`relative grid-section main flex flex-col`},[s(`div`,Be,[r[3]||=s(`span`,{op50:``,px2:``},`Current`,-1),r[4]||=s(`div`,{"flex-auto":``},null,-1),n(Se,{modelValue:_(L),"onUpdate:modelValue":r[0]||=e=>c(L)?L.value=e:null,options:[{label:`Slides`,value:`slides`},{label:`Screen Mirror`,value:`mirror`}]},null,8,[`modelValue`])]),_(L)===`mirror`?(C(),g(Me,{key:0})):x(`v-if`,!0),x(` We use v-show here to still infer the clicks context `),u(n(ge,{key:`main`,class:`p-2 lg:p-4 flex-auto`,"is-main":``,onContextmenu:_(ke)},{default:e(()=>[n(we,{"render-context":`presenter`}),n(ve)]),_:1},8,[`onContextmenu`]),[[m,_(L)===`slides`]]),(C(),g(pe,{key:_(P)?.no,"clicks-context":_(Fe)(_(P)),class:`w-full pb2 px4 flex-none`},null,8,[`clicks-context`]))],512),s(`div`,Ve,[X.value&&_(w)===2?(C(),l(`div`,{key:0,class:`notes-row-resizer top-[-6px]`,role:`separator`,"aria-orientation":`horizontal`,title:`Resize notes panel height`,onPointerdown:Xe},null,32)):x(`v-if`,!0),F.value&&I.value?(C(),g(ge,{key:`next`},{default:e(()=>[(C(),g(_e,{key:F.value[0].no,"clicks-context":I.value.context,route:F.value[0],"render-context":`previewNext`},null,8,[`clicks-context`,`route`]))]),_:1})):(C(),l(`div`,He,[...r[5]||=[s(`div`,{class:`text-gray-500`},` End of the presentation `,-1)]])),r[6]||=s(`div`,{class:`absolute left-0 top-0 bg-main border-b border-r border-main px2 py1 op50 text-sm`},` Next `,-1)]),s(`div`,{ref_key:`noteSection`,ref:T,class:`relative grid-section note overflow-hidden`},[Y.value&&!J.value&&_(w)!==3?(C(),l(`div`,{key:0,class:`notes-resizer right-[-6px]`,role:`separator`,"aria-orientation":`vertical`,title:`Resize notes panel`,onPointerdown:Z},null,32)):x(`v-if`,!0),X.value&&_(w)!==2?(C(),l(`div`,{key:1,class:S([`notes-row-resizer`,Ke.value?`top-[-6px]`:`bottom-[-6px]`]),role:`separator`,"aria-orientation":`horizontal`,title:`Resize notes panel height`,onPointerdown:Xe},null,34)):x(`v-if`,!0),$.value&&_(se)?(C(),g(_($),{key:2,class:`h-full`})):(C(),l(`div`,Ue,[(C(),g(Ae,{key:`static-${_(N)}`,no:_(N),class:`w-full max-w-full h-full overflow-auto p-2 lg:p-4`,style:b({fontSize:`${_(ce)}em`}),"clicks-context":_(M)},null,8,[`no`,`style`,`clicks-context`])),r[10]||=s(`div`,{"border-t":``,"border-main":``},null,-1),s(`div`,{class:S([`py-1 px-2 text-sm transition`,_(a)?``:`op25`])},[n(j,{title:`Increase font size`,onClick:_(ie)},{default:e(()=>[...r[7]||=[s(`div`,{class:`i-carbon:zoom-in`},null,-1)]]),_:1},8,[`onClick`]),n(j,{title:`Decrease font size`,onClick:_(ae)},{default:e(()=>[...r[8]||=[s(`div`,{class:`i-carbon:zoom-out`},null,-1)]]),_:1},8,[`onClick`]),x(`v-if`,!0)],2)]))],512),s(`div`,{ref_key:`bottomSection`,ref:k,class:`grid-section bottom flex`},[n(Ee,{persist:!0,class:S([`transition`,_(a)?``:`op25`])},null,8,[`class`]),r[11]||=s(`div`,{"flex-auto":``},null,-1),n(Re)],512),(C(),g(fe,{key:2}))],6)]),n(ye),n(De),n(Ce)],64))}}),[[`__scopeId`,`data-v-e7a794bf`]]);export{F as default}; \ No newline at end of file diff --git a/lecture-07/assets/slidev/shortcuts-BJx9p93Z.js b/lecture-07/assets/slidev/shortcuts-BJx9p93Z.js new file mode 100644 index 0000000000000000000000000000000000000000..b0e647e7e94ae0691ad08028d8ddd7eaa1554148 --- /dev/null +++ b/lecture-07/assets/slidev/shortcuts-BJx9p93Z.js @@ -0,0 +1,4 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DrawingLayer-Bd-FSAr6.js","../modules/shiki-CkJq9tSf.js","../rolldown-runtime-hePW80VL.js","../modules/shiki-BrmBd2_v.css","./context-DnYiQGy6.js","../modules/vue-Dz2ojcKF.js","../useDrawings-dMxKslDP.js","../useNav-DOs7c9Ie.js","../_plugin-vue_export-helper-BDNMzG2s.js","../index-DYEUBAok.js","../syncState-BCmj5bTl.js","../index-DrfYeVie.css"])))=>i.map(i=>d[i]); +import{$ as e,E as t,G as n,H as r,L as i,M as a,S as o,St as s,V as c,X as l,Z as u,_ as d,a as f,at as p,b as m,bt as h,c as g,d as _,et as v,f as y,g as b,h as x,i as S,j as C,k as w,l as T,m as E,n as ee,o as te,pt as ne,q as re,u as ie,ut as D,v as O,vt as k,w as A,x as j,xt as M,y as N,yt as P,z as F}from"../modules/shiki-CkJq9tSf.js";import{A as ae,C as oe,D as I,E as se,F as L,G as ce,I as R,L as le,M as ue,N as de,O as fe,P as pe,Q as me,R as he,S as ge,T as z,V as _e,Y as ve,Z as ye,_ as be,a as xe,b as Se,d as Ce,f as we,g as Te,i as Ee,j as B,n as De,nt as Oe,p as ke,q as Ae,r as je,s as Me,t as V,tt as H,u as Ne,w as Pe,y as Fe,z as Ie}from"../useNav-DOs7c9Ie.js";import{t as Le}from"../_plugin-vue_export-helper-BDNMzG2s.js";import{C as Re,I as ze,P as Be,T as Ve,V as He,b as Ue,f as We,m as Ge,n as U,o as Ke,r as qe,s as Je,t as W,w as Ye,y as Xe}from"../modules/vue-Dz2ojcKF.js";import{_ as Ze,l as Qe,n as $e}from"./context-DnYiQGy6.js";import{f as et,i as tt,m as nt,o as rt,p as it,r as at,t as ot}from"../index-DYEUBAok.js";import{t as st}from"../useDrawings-dMxKslDP.js";import{t as G}from"./IconButton-CfFb_8Iy.js";import{t as ct}from"./VerticalDivider-E2da-Zpk.js";import{a as lt,i as ut,n as dt,o as ft,r as pt,t as mt}from"../SlideWrapper-DkcAPxbl.js";function ht(e){let{next:t,nextSlide:n,prev:r,prevSlide:i}=V(),{isDrawing:a}=st(),o=D(0),{direction:s,distanceX:c,distanceY:l}=Ue(e,{pointerTypes:[`touch`],onSwipeStart(){a.value||(o.value=Be())},onSwipeEnd(){if(!o.value||a.value)return;let e=Math.abs(c.value),u=Math.abs(l.value);e/window.innerWidth>.3||e>75?s.value===`left`?t():r():(u/window.innerHeight>.4||u>200)&&(s.value===`down`?i():n())}})}function gt(){let{request:e,release:t}=Ye();l(le,n=>{n?e(`screen`):t()},{immediate:!0})}var _t=Object.assign({}),vt=Object.assign({}),yt=Object.assign({}),bt=[Object.values(_t)[0],Object.values(vt)[0],Object.values(yt)[0]].filter(Boolean),xt,St=()=>{if(xt)return xt;let{next:e,nextSlide:t,prev:n,prevSlide:r,hasNext:i,hasPrev:a,currentPage:o,total:s,isPresenter:c,enterPresenter:l,exitPresenter:u,isEmbedded:d,isPresenterAvailable:f}=V(),{drawingEnabled:p}=st(),{isFullscreen:m,toggle:h}=Ne;return xt=bt.reduce((e,t)=>t(e),b(()=>[{small:!0,icon:`i-carbon:arrow-left`,label:`Previous Click`,action:n,disabled:!a.value},{small:!0,icon:`i-carbon:arrow-right`,label:`Next Click`,action:e,disabled:!i.value},{small:!0,icon:`i-carbon:arrow-up`,label:`Previous Slide`,action:r,disabled:o.value<=1},{small:!0,icon:`i-carbon:arrow-down`,label:`Next Slide`,action:t,disabled:o.value>=s.value},`separator`,{icon:`i-carbon:text-annotation-toggle`,label:Pe.value?`Hide editor`:`Show editor`,action:()=>Pe.value=!Pe.value,show:!1},{icon:`i-carbon:pen`,label:p.value?`Hide drawing toolbar`:`Show drawing toolbar`,action:()=>p.value=!p.value},{icon:`i-carbon:apps`,label:`Show slide overview`,action:ue},c.value&&{icon:`i-carbon:presentation-file`,label:`Exit Presenter Mode`,action:u},f.value&&{icon:`i-carbon:user-speaker`,label:`Enter Presenter Mode`,action:l},!d.value&&{icon:m.value?`i-carbon:minimize`:`i-carbon:maximize`,label:m.value?`Close fullscreen`:`Enter fullscreen`,action:h}].filter(Boolean)))},Ct=ne(null);function wt(e,t){Ct.value={x:e,y:t,items:St()}}function Tt(){Ct.value=null}function Et(e){if(H.contextMenu!==!0&&H.contextMenu!=null&&H.contextMenu!==`build`||e.shiftKey||e.defaultPrevented)return;let{isEmbedded:t}=V();t.value||(wt(e.pageX,e.pageY),e.preventDefault(),e.stopPropagation())}var Dt=[`title`,`onClick`],Ot=[`onClick`],kt={class:`mx-auto flex`},At={key:0},jt={class:`w-full text-xs p2`},Mt={class:`text-main text-opacity-50!`},Nt=A({__name:`ContextMenu`,setup(e){let t=D();Ke(t,Tt),Ge(document,`mousedown`,e=>{e.buttons&2&&Tt()},{passive:!0,capture:!0});let r=b(()=>H.contextMenu!=null),i=Ve();l(i,e=>{e||Tt()}),ot(1);let{width:a,height:o}=We(t),u=b(()=>{let e=Ct.value?.x;return e?e+a.value>he.width.value?he.width.value-a.value:e:0}),f=b(()=>{let e=Ct.value?.y;return e?e+o.value>he.height.value?he.height.value-o.value:e:0});return(e,i)=>k(Ct)?(F(),m(`div`,{key:0,ref_key:`container`,ref:t,style:M(`left:${u.value}px;top:${f.value}px`),class:`slidev-glass-effect fixed z-context-menu w-60 flex flex-wrap justify-items-start p-1 animate-fade-in animate-duration-100 rounded-md shadow overflow-hidden select-none`,onContextmenu:i[1]||=y(()=>{},[`prevent`]),onClick:i[2]||=(...e)=>k(Tt)&&k(Tt)(...e)},[(F(!0),m(E,null,c(k(Ct).items.value,(e,t)=>(F(),m(E,{key:t},[e===`separator`?(F(),m(`div`,{key:t,class:`w-full my1 border-t border-main`})):e.show??!0?(F(),m(E,{key:1},[e.small?(F(),m(`div`,{key:0,class:P([`p-2 w-[40px] h-[40px] inline-block text-center cursor-pointer rounded flex`,e.disabled?`op40`:`hover:bg-active`]),title:e.label,onClick:e.action},[typeof e.icon==`string`?(F(),m(`div`,{key:0,class:P([e.icon,`text-1.2em ma`])},null,2)):(F(),O(n(e.icon),{key:1}))],10,Dt)):(F(),m(`div`,{key:1,class:P([`w-full grid grid-cols-[35px_1fr] p-2 pl-0 cursor-pointer rounded`,e.disabled?`op40`:`hover:bg-active`]),onClick:e.action},[d(`div`,kt,[typeof e.icon==`string`?(F(),m(`div`,{key:0,class:P([e.icon,`text-1.2em ma`])},null,2)):(F(),O(n(e.icon),{key:1}))]),typeof e.label==`string`?(F(),m(`div`,At,s(e.label),1)):(F(),O(n(e.label),{key:1}))],10,Ot))],64)):N(`v-if`,!0)],64))),128)),r.value?N(`v-if`,!0):(F(),m(E,{key:0},[i[6]||=d(`div`,{class:`w-full my1 border-t border-main`},null,-1),d(`div`,jt,[d(`div`,Mt,[i[3]||=j(` Hold `,-1),i[4]||=d(`kbd`,{class:`border px1 py0.5 border-main rounded text-primary`},`Shift`,-1),i[5]||=j(` and right click to open the native context menu `,-1),N(`v-if`,!0)])])],64))],36)):N(`v-if`,!0)}});function K(e){return Array.isArray?Array.isArray(e):Vt(e)===`[object Array]`}function Pt(e){if(typeof e==`string`)return e;if(typeof e==`bigint`)return e.toString();let t=e+``;return t==`0`&&1/e==-1/0?`-0`:t}function Ft(e){return e==null?``:Pt(e)}function q(e){return typeof e==`string`}function It(e){return typeof e==`number`}function Lt(e){return e===!0||e===!1||zt(e)&&Vt(e)==`[object Boolean]`}function Rt(e){return typeof e==`object`}function zt(e){return Rt(e)&&e!==null}function J(e){return e!=null}function Bt(e){return!e.trim().length}function Vt(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:Object.prototype.toString.call(e)}var Ht=`Incorrect 'index' type`,Ut=`Invalid doc index: must be a non-negative integer within the bounds of the docs array`,Wt=e=>`Invalid value for key ${e}`,Gt=e=>`Pattern length exceeds max of ${e}.`,Kt=e=>`Missing ${e} property in key`,qt=e=>`Property 'weight' in key '${e}' must be a positive integer`,Jt=`Fuse.match does not support useTokenSearch: token search requires corpus-level statistics (df, fieldCount) that a one-off string comparison does not have. Use new Fuse(...).search(...) instead.`,Yt=Object.prototype.hasOwnProperty,Xt=class{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach(e=>{let n=Zt(e);this._keys.push(n),this._keyMap[n.id]=n,t+=n.weight}),this._keys.forEach(e=>{e.weight/=t})}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}};function Zt(e){let t=null,n=null,r=null,i=1,a=null;if(q(e)||K(e))r=e,t=Qt(e),n=$t(e);else{if(!Yt.call(e,`name`))throw Error(Kt(`name`));let o=e.name;if(r=o,Yt.call(e,`weight`)&&e.weight!==void 0&&(i=e.weight,i<=0))throw Error(qt($t(o)));t=Qt(o),n=$t(o),a=e.getFn??null}return{path:t,id:n,weight:i,src:r,getFn:a}}function Qt(e){return K(e)?e:e.split(`.`)}function $t(e){return K(e)?e.join(`.`):e}function en(e,t){let n=[],r=!1,i=(e,t,a,o)=>{if(J(e)){if(!t[a])n.push(o===void 0?e:{v:e,i:o});else{let s=e[t[a]];if(!J(s))return;if(a===t.length-1&&(q(s)||It(s)||Lt(s)||typeof s==`bigint`))n.push(o===void 0?Ft(s):{v:Ft(s),i:o});else if(K(s)){r=!0;for(let e=0,n=s.length;ee.score===t.score?e.idx=9&&e<=13||e===32||e===160}function sn(e=1,t=3){let n=new Map,r=10**t;return{get(t){let i=0,a=!1;for(let e=0;e{this._keysMap[e.id]=t})}create(){if(this.isCreated||!this.docs.length)return;this.isCreated=!0;let e=this.docs.length;this.records=Array(e);let t=0;if(q(this.docs[0]))for(let n=0;ne&&--this.records[t].i}removeAll(e){let t=new Set;for(let n of e)Number.isInteger(n)&&n>=0&&t.add(n);if(t.size===0)return;this.records=this.records.filter(e=>!t.has(e.i));let n=Array.from(t).sort((e,t)=>e-t);for(let e of this.records){let t=0,r=n.length;for(;t>>1;n[i]t),records:this.records}}};function ln(e,t,{getFn:n=Y.getFn,fieldNormWeight:r=Y.fieldNormWeight}={}){let i=new cn({getFn:n,fieldNormWeight:r});return i.setKeys(e.map(Zt)),i.setSources(t),i.create(),i}function un(e,{getFn:t=Y.getFn,fieldNormWeight:n=Y.fieldNormWeight}={}){let{keys:r,records:i}=e,a=new cn({getFn:t,fieldNormWeight:n});return a.setKeys(r),a.setIndexRecords(i),a}function dn(e=[],t=Y.minMatchCharLength){let n=[],r=-1,i=-1,a=0;for(let o=e.length;a=t&&n.push([r,i]),r=-1)}return e[a-1]&&a-r>=t&&n.push([r,a-1]),n}function fn(e,t,n,{location:r=Y.location,distance:i=Y.distance,threshold:a=Y.threshold,findAllMatches:o=Y.findAllMatches,minMatchCharLength:s=Y.minMatchCharLength,includeMatches:c=Y.includeMatches,ignoreLocation:l=Y.ignoreLocation}={}){if(t.length>32)throw Error(Gt(32));let u=t.length,d=e.length,f=Math.max(0,Math.min(r,d)),p=a,m=f,h=(e,t)=>{let n=e/u;if(l)return n;let r=Math.abs(f-t);return i?n+r/i:r?1:n},g=s>1||c,_=g?Array(d):[],v;for(;(v=e.indexOf(t,m))>-1;){let e=h(0,v);if(p=Math.min(e,p),m=v+u,g){let e=0;for(;e=a;--r){let i=r-1,o=n[e[i]];if(c[r]=(c[r+1]<<1|1)&o,t&&(c[r]|=(y[r+1]|y[r])<<1|1|y[r+1]),c[r]&C&&(b=h(t,i),b<=p)){if(p=b,m=i,x=t,m<=f)break;a=Math.max(1,2*f-m)}}if(h(t+1,f)>p)break;y=c}if(g&&m>=0){let t=Math.min(d-1,m+u-1+x);for(let r=m;r<=t;r+=1)n[e[r]]&&(_[r]=1)}let w={isMatch:m>=0,score:Math.max(.001,b)};if(g){let e=dn(_,s);e.length?c&&(w.indices=e):w.isMatch=!1}return w}function pn(e){let t={};for(let n=0,r=e.length;ne[0]-t[0]||e[1]-t[1]);let t=[e[0]];for(let n=1,r=e.length;ne.normalize(`NFD`).replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,``).replace(gn,e=>hn[e]):e=>e,vn=class{constructor(e,{location:t=Y.location,threshold:n=Y.threshold,distance:r=Y.distance,includeMatches:i=Y.includeMatches,findAllMatches:a=Y.findAllMatches,minMatchCharLength:o=Y.minMatchCharLength,isCaseSensitive:s=Y.isCaseSensitive,ignoreDiacritics:c=Y.ignoreDiacritics,ignoreLocation:l=Y.ignoreLocation}={}){if(this.options={location:t,threshold:n,distance:r,includeMatches:i,findAllMatches:a,minMatchCharLength:o,isCaseSensitive:s,ignoreDiacritics:c,ignoreLocation:l},e=s?e:e.toLowerCase(),e=c?_n(e):e,this.pattern=e,this.chunks=[],!this.pattern.length)return;let u=(e,t)=>{this.chunks.push({pattern:e,alphabet:pn(e),startIndex:t})},d=this.pattern.length;if(d>32){let e=0,t=d%32,n=d-t;for(;e{let{isMatch:m,score:h,indices:g}=fn(e,t,n,{location:i+p,distance:a,threshold:o,findAllMatches:s,minMatchCharLength:c,includeMatches:r,ignoreLocation:l});m&&(f=!0),d+=h,m&&g&&u.push(...g)});let p={isMatch:f,score:f?d/this.chunks.length:1};return f&&r&&(p.indices=mn(u)),p}},yn=new Set([`fuzzy`,`include`]);function bn(e){return e.startsWith(`inverse`)}var xn=[{type:`exact`,multiRegex:/^="(.*)"$/,singleRegex:/^=(.*)$/,create:e=>({type:`exact`,search(t){let n=t===e;return{isMatch:n,score:+!n,indices:[0,e.length-1]}}})},{type:`include`,multiRegex:/^'"(.*)"$/,singleRegex:/^'(.*)$/,create:e=>({type:`include`,search(t){let n=0,r,i=[],a=e.length;for(;(r=t.indexOf(e,n))>-1;)n=r+a,i.push([r,n-1]);let o=!!i.length;return{isMatch:o,score:+!o,indices:i}}})},{type:`prefix-exact`,multiRegex:/^\^"(.*)"$/,singleRegex:/^\^(.*)$/,create:e=>({type:`prefix-exact`,search(t){let n=t.startsWith(e);return{isMatch:n,score:+!n,indices:[0,e.length-1]}}})},{type:`inverse-prefix-exact`,multiRegex:/^!\^"(.*)"$/,singleRegex:/^!\^(.*)$/,create:e=>({type:`inverse-prefix-exact`,search(t){let n=!t.startsWith(e);return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`inverse-suffix-exact`,multiRegex:/^!"(.*)"\$$/,singleRegex:/^!(.*)\$$/,create:e=>({type:`inverse-suffix-exact`,search(t){let n=!t.endsWith(e);return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`suffix-exact`,multiRegex:/^"(.*)"\$$/,singleRegex:/^(.*)\$$/,create:e=>({type:`suffix-exact`,search(t){let n=t.endsWith(e);return{isMatch:n,score:+!n,indices:[t.length-e.length,t.length-1]}}})},{type:`inverse-exact`,multiRegex:/^!"(.*)"$/,singleRegex:/^!(.*)$/,create:e=>({type:`inverse-exact`,search(t){let n=t.indexOf(e)===-1;return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`fuzzy`,multiRegex:/^"(.*)"$/,singleRegex:/^(.*)$/,create:(e,t={})=>{let n=new vn(e,{location:t.location??Y.location,threshold:t.threshold??Y.threshold,distance:t.distance??Y.distance,includeMatches:t.includeMatches??Y.includeMatches,findAllMatches:t.findAllMatches??Y.findAllMatches,minMatchCharLength:t.minMatchCharLength??Y.minMatchCharLength,isCaseSensitive:t.isCaseSensitive??Y.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics??Y.ignoreDiacritics,ignoreLocation:t.ignoreLocation??Y.ignoreLocation});return{type:`fuzzy`,search(e){return n.searchIn(e)}}}}],Sn=xn.length,Cn=`\0`,wn=`|`;function Tn(e){let t=[],n=e.length,r=0;for(;r=n)break;let i=r;for(;i=n||e[t]===` `){i++;break}if(e[t]===`$`&&(t+1>=n||e[t+1]===` `)){i+=2;break}}i++}t.push(e.substring(r,i)),r=i}else{for(;i{let n=Tn(e.replace(/\u0000/g,`|`).trim()).filter(e=>e&&!!e.trim()),r=[];for(let e=0,i=n.length;e!!(e[Mn.AND]||e[Mn.OR]),Fn=e=>!!e[Nn.PATH],In=e=>!K(e)&&Rt(e)&&!Pn(e),Ln=e=>({[Mn.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function Rn(e,t,{auto:n=!0}={}){let r=e=>{if(q(e)){let r={keyId:null,pattern:e};return n&&(r.searcher=jn(e,t)),r}let i=Object.keys(e),a=Fn(e);if(!a&&i.length>1&&!Pn(e))return r(Ln(e));if(In(e)){let r=a?e[Nn.PATH]:i[0],o=a?e[Nn.PATTERN]:e[r];if(!q(o))throw Error(Wt(r));let s={keyId:$t(r),pattern:o};return n&&(s.searcher=jn(o,t)),s}let o={children:[],operator:i[0]};return i.forEach(t=>{let n=e[t];K(n)&&n.forEach(e=>{o.children.push(r(e))})}),o};return Pn(e)||(e=Ln(e)),r(e)}function zn(e,{ignoreFieldNorm:t=Y.ignoreFieldNorm}){let n=1;return e.forEach(({key:e,norm:r,score:i})=>{let a=e?e.weight:null;n*=(i===0&&a?2**-52:i)**+((a||1)*(t?1:r))}),n}function Bn(e,{ignoreFieldNorm:t=Y.ignoreFieldNorm}){e.forEach(e=>{e.score=zn(e.matches,{ignoreFieldNorm:t})})}var Vn=class{constructor(e,t){this.limit=e,this.heap=[],this.comparator=t}get size(){return this.heap.length}insert(e){this.size0;){let n=e-1>>1;if(this.comparator(t[e],t[n])<=0)break;let r=t[e];t[e]=t[n],t[n]=r,e=n}}_sinkDown(e){let t=this.heap,n=t.length,r=e;do{e=r;let i=2*e+1,a=2*e+2;if(i0&&(r=i),a0&&(r=a),r!==e){let n=t[e];t[e]=t[r],t[r]=n}}while(r!==e)}};function Hn(e){let t=[];return e.matches.forEach(e=>{if(!J(e.indices)||!e.indices.length)return;let n={indices:e.indices,value:e.value};e.key&&(n.key=e.key.id),e.idx>-1&&(n.refIndex=e.idx),t.push(n)}),t}function Un(e,t,{includeMatches:n=Y.includeMatches,includeScore:r=Y.includeScore}={}){return e.map(e=>{let{idx:i}=e,a={item:t[i],refIndex:i};return n&&(a.matches=Hn(e)),r&&(a.score=e.score),a})}var Wn=/[\p{L}\p{M}\p{N}_]+/gu,Gn=new WeakSet;function Kn(e){Gn.has(e)||(Gn.add(e),console.warn(`[Fuse] tokenize regex ${e} lacks the global flag; only the first match per text will be returned. Add the 'g' flag.`))}function qn(e){if(typeof e==`function`){let t=!1;return n=>{let r=e(n);if(!t&&(t=!0,!Array.isArray(r)||r.some(e=>typeof e!=`string`)))throw Error(`[Fuse] tokenize function must return string[]; received ${Array.isArray(r)?`array containing non-strings`:typeof r}.`);return r}}return e instanceof RegExp?(e.global||Kn(e),t=>t.match(e)||[]):e=>e.match(Wn)||[]}function Jn({isCaseSensitive:e=!1,ignoreDiacritics:t=!1,tokenize:n}={}){let r=qn(n);return{tokenize(n){return e||(n=n.toLowerCase()),t&&(n=_n(n)),r(n)}}}var Yn=class{static condition(e,t){return t.useTokenSearch}constructor(e,t){this.options=t,this.analyzer=Jn({isCaseSensitive:t.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics,tokenize:t.tokenize});let n=this.analyzer.tokenize(e),{df:r,fieldCount:i}=t._invertedIndex;this.termSearchers=[],this.idfWeights=[];for(let e of n){this.termSearchers.push(new vn(e,{location:t.location,threshold:t.threshold,distance:t.distance,includeMatches:t.includeMatches,findAllMatches:t.findAllMatches,minMatchCharLength:t.minMatchCharLength,isCaseSensitive:t.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics,ignoreLocation:!0}));let n=r.get(e)||0,a=Math.log(1+(i-n+.5)/(n+.5));this.idfWeights.push(a)}this.combineAll=t.tokenMatch===`all`,this.numTerms=this.termSearchers.length,this.useMask=this.numTerms<=31}searchIn(e){if(!this.termSearchers.length)return{isMatch:!1,score:1};let t=[],n=0,r=0,i=0,a=0,o=this.combineAll&&!this.useMask?new Set:null;for(let s=0;s0?1-n/r:0,c={isMatch:!0,score:Math.max(.001,s)};return this.options.includeMatches&&t.length&&(c.indices=mn(t)),this.combineAll&&(this.useMask?c.matchedMask=a:c.matchedTerms=o,c.termCount=this.numTerms),c}};function Xn(e,t,n,r){let i=r.tokenize(t);if(!i.length)return;e.fieldCount++,e.docFieldCount.set(n,(e.docFieldCount.get(n)||0)+1);let a=new Set(i),o=e.docTermFieldHits.get(n);o||(o=new Map,e.docTermFieldHits.set(n,o));for(let t of a)o.set(t,(o.get(t)||0)+1),e.df.set(t,(e.df.get(t)||0)+1)}function Zn(e,t,n,r){let{i,v:a,$:o}=t;if(a!==void 0){Xn(e,a,i,r);return}if(o)for(let t=0;te-t);for(let t of n)er(e,t);let r=e=>{let t=0,r=n.length;for(;t>>1;n[i]i?r(t):t,n);e.docFieldCount=a;let o=new Map;for(let[t,n]of e.docTermFieldHits)o.set(t>i?r(t):t,n);e.docTermFieldHits=o}var nr=class{constructor(e,t,n){this.options={...Y,...t},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new Xt(this.options.keys),this._docs=e,this._myIndex=null,this._invertedIndex=null,this.setCollection(e,n),this._lastQuery=null,this._lastSearcher=null}_getSearcher(e){if(this._lastQuery===e)return this._lastSearcher;let t=jn(e,this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options);return this._lastQuery=e,this._lastSearcher=t,t}setCollection(e,t){if(this._docs=e,t&&!(t instanceof cn))throw Error(Ht);if(this._myIndex=t||ln(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){let e=Jn({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=Qn(this._myIndex.records,this._myIndex.keys.length,e)}this._invalidateSearcherCache()}add(e){if(!J(e))return;this._docs.push(e);let t=this._myIndex.add(e,this._docs.length-1);if(this._invertedIndex&&t){let e=Jn({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});$n(this._invertedIndex,t,this._myIndex.keys.length,e)}this._invalidateSearcherCache()}remove(e=()=>!1){let t=[],n=[];for(let r=0,i=this._docs.length;r!e.has(n)),this._myIndex.removeAll(n),this._invalidateSearcherCache()}return t}removeAt(e){if(!Number.isInteger(e)||e<0||e>=this._docs.length)throw Error(Ut);this._invertedIndex&&tr(this._invertedIndex,[e]);let t=this._docs.splice(e,1)[0];return this._myIndex.removeAt(e),this._invalidateSearcherCache(),t}_invalidateSearcherCache(){this._lastQuery=null,this._lastSearcher=null}getIndex(){return this._myIndex}_normalizedKeys(){return this._myIndex.keys.map(e=>this._keyStore.get(e.id)||e)}search(e,t){let{limit:n=-1}=t||{},{includeMatches:r,includeScore:i,shouldSort:a,sortFn:o,ignoreFieldNorm:s}=this.options;if(q(e)&&!e.trim()){let e=this._docs.map((e,t)=>({item:e,refIndex:t}));return It(n)&&n>-1&&(e=e.slice(0,n)),e}let c=a&&It(n)&&n>0&&q(e),l=o,u=(e,t)=>l(e,t)||e.idx-t.idx,d;if(c){let t=new Vn(n,u);q(this._docs[0])?this._searchStringList(e,{heap:t,ignoreFieldNorm:s}):this._searchObjectList(e,{heap:t,ignoreFieldNorm:s}),d=t.extractSorted()}else d=q(e)?q(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e),Bn(d,{ignoreFieldNorm:s}),a&&d.sort(q(e)?u:l),It(n)&&n>-1&&(d=d.slice(0,n));return Un(d,this._docs,{includeMatches:r,includeScore:i})}_searchStringList(e,{heap:t,ignoreFieldNorm:n}={}){let r=this._getSearcher(e),i=this.options.useTokenSearch&&this.options.tokenMatch===`all`,{records:a}=this._myIndex,o=t?null:[];return a.forEach(({v:e,i:a,n:s})=>{if(!J(e))return;let c=r.searchIn(e);if(c.isMatch){let r={score:c.score,value:e,norm:s,indices:c.indices};i&&(r.matchedMask=c.matchedMask,r.matchedTerms=c.matchedTerms,r.termCount=c.termCount);let l=[r];if(!i||this._coversAllTokens(l)){let r={item:e,idx:a,matches:l};t?(r.score=zn(r.matches,{ignoreFieldNorm:n}),t.insert(r)):o.push(r)}}}),o}_searchLogical(e){let t=Rn(e,this.options),n=this._normalizedKeys(),r=(e,t,i)=>{if(!(`children`in e)){let{keyId:r,searcher:a}=e,o;return r===null?(o=[],n.forEach((e,n)=>{o.push(...this._findMatches({key:e,value:t[n],searcher:a}))})):o=this._findMatches({key:this._keyStore.get(r),value:this._myIndex.getValueForItemAtKeyId(t,r),searcher:a}),o&&o.length?[{idx:i,item:t,matches:o}]:[]}let{children:a,operator:o}=e,s=[];for(let e=0,n=a.length;e{if(J(e)){let i=r(t,e,n);i.length&&(a.has(n)||(a.set(n,{idx:n,item:e,matches:[]}),o.push(a.get(n))),i.forEach(({matches:e})=>{a.get(n).matches.push(...e)}))}}),o}_searchObjectList(e,{heap:t,ignoreFieldNorm:n}={}){let r=this._getSearcher(e),i=this.options.useTokenSearch&&this.options.tokenMatch===`all`,{records:a}=this._myIndex,o=this._normalizedKeys(),s=t?null:[];return a.forEach(({$:e,i:a})=>{if(!J(e))return;let c=[],l=!1,u=!1;if(o.forEach((t,n)=>{let i=this._findMatches({key:t,value:e[n],searcher:r});i.length?(c.push(...i),i[0].hasInverse&&(u=!0)):l=!0}),!(u&&l)&&c.length&&(!i||this._coversAllTokens(c))){let r={idx:a,item:e,matches:c};t?(r.score=zn(r.matches,{ignoreFieldNorm:n}),t.insert(r)):s.push(r)}}),s}_findMatches({key:e,value:t,searcher:n}){if(!J(t))return[];let r=[];if(K(t))t.forEach(({v:t,i,n:a})=>{if(!J(t))return;let o=n.searchIn(t);if(o.isMatch){let n={score:o.score,key:e,value:t,idx:i,norm:a,indices:o.indices,hasInverse:o.hasInverse};o.termCount!==void 0&&(n.matchedMask=o.matchedMask,n.matchedTerms=o.matchedTerms,n.termCount=o.termCount),r.push(n)}});else{let{v:i,n:a}=t,o=n.searchIn(i);if(o.isMatch){let t={score:o.score,key:e,value:i,norm:a,indices:o.indices,hasInverse:o.hasInverse};o.termCount!==void 0&&(t.matchedMask=o.matchedMask,t.matchedTerms=o.matchedTerms,t.termCount=o.termCount),r.push(t)}}return r}_coversAllTokens(e){let t=e.length?e[0].termCount:void 0;if(t===void 0)return!0;if(t<=31){let n=0;for(let t=0;tAn(e))};var rr=nr,ir={key:0},ar={key:1},or={key:2},sr={key:3},cr={key:4},lr={key:5},ur={key:6},dr={key:7},fr={key:8},pr={key:9},mr={key:10},hr={key:11},gr={key:12},_r={key:13},vr={key:14},yr={key:15},br={key:16},xr={key:17},Sr={key:18},Cr={key:19},wr={key:20},Tr={key:21},Er={key:22},Dr={key:23},Or={key:24},kr={key:25},Ar={key:26},jr={key:27},Mr={key:28},Nr={key:29},Pr={key:30},Fr={key:31},Ir={key:32},Lr={key:33},Rr={key:34},zr={key:35},Br={key:36},Vr={key:37},Hr={key:38},Ur={key:39},Wr={key:40},Gr={key:41},Kr={key:42},qr={key:43},Jr={key:44},Yr={key:45},Xr={key:46},Zr={key:47},Qr={key:48},$r={key:49},ei={key:50},ti={key:51},ni={key:52},ri={key:53},ii={key:54},ai={key:55},oi={key:56},si={key:57},ci={key:58},li={key:59},ui={key:60},di={key:61},fi={key:62},pi={key:63},mi={key:64},hi={key:65},gi={key:66},_i={key:67},vi={key:68},yi={key:69},bi={key:70},xi=A({__name:`title-renderer`,props:{no:{}},setup(e){let t=e,{$page:n}=$e(),r=b(()=>+(t.no??n.value));return(e,t)=>(F(),m(`div`,null,[r.value===1?(F(),m(`p`,ir,`Generative Models and GANs`)):r.value===2?(F(),m(`p`,ar,`Where we are`)):r.value===3?(F(),m(`p`,or,`You already have a generative model`)):r.value===4?(F(),m(`p`,sr,`What last week left you holding`)):r.value===5?(F(),m(`p`,cr,`Now do it for a picture`)):r.value===6?(F(),m(`p`,lr,`Two kinds of model`)):r.value===7?(F(),m(`p`,ur,`The deal every model today makes`)):r.value===8?(F(),m(`p`,dr,`Which loss can you even compute?`)):r.value===9?(F(),m(`p`,fr,`undefined`)):r.value===10?(F(),m(`p`,pr,`Compress first: autoencoders`)):r.value===11?(F(),m(`p`,mr,`The autoencoder`)):r.value===12?(F(),m(`p`,hr,`How wide is the middle?`)):r.value===13?(F(),m(`p`,gr,`The bottleneck, and what it costs`)):r.value===14?(F(),m(`p`,_r,`What autoencoders are actually for`)):r.value===15?(F(),m(`p`,vr,`Now sample from it`)):r.value===16?(F(),m(`p`,yr,`An autoencoder in PyTorch`)):r.value===17?(F(),m(`p`,br,`undefined`)):r.value===18?(F(),m(`p`,xr,`Make the latent behave: VAEs`)):r.value===19?(F(),m(`p`,Sr,`Two changes, and only two`)):r.value===20?(F(),m(`p`,Cr,`The objective, in two terms`)):r.value===21?(F(),m(`p`,wr,`You cannot backpropagate through a sample`)):r.value===22?(F(),m(`p`,Tr,`What β buys, and what it costs`)):r.value===23?(F(),m(`p`,Er,`Why VAE samples are soft`)):r.value===24?(F(),m(`p`,Dr,`A VAE in PyTorch`)):r.value===25?(F(),m(`p`,Or,`The adversarial game`)):r.value===26?(F(),m(`p`,kr,`Stop specifying the loss`)):r.value===27?(F(),m(`p`,Ar,`Two networks, opposite jobs`)):r.value===28?(F(),m(`p`,jr,`The value function`)):r.value===29?(F(),m(`p`,Mr,`Freeze one, look at the other`)):r.value===30?(F(),m(`p`,Nr,`The best discriminator that could exist`)):r.value===31?(F(),m(`p`,Pr,`D*, on three modes`)):r.value===32?(F(),m(`p`,Fr,`Put D* back in`)):r.value===33?(F(),m(`p`,Ir,`The theorem, as a number`)):r.value===34?(F(),m(`p`,Lr,`The four steps`)):r.value===35?(F(),m(`p`,Rr,`The trick that makes it train`)):r.value===36?(F(),m(`p`,zr,`The training loop`)):r.value===37?(F(),m(`p`,Br,`undefined`)):r.value===38?(F(),m(`p`,Vr,`Watch it happen`)):r.value===39?(F(),m(`p`,Hr,`Why GANs are hard`)):r.value===40?(F(),m(`p`,Ur,`DCGAN — a CNN, run backwards`)):r.value===41?(F(),m(`p`,Wr,`Transposed convolution`)):r.value===42?(F(),m(`p`,Gr,`The checkerboard, and what to do instead`)):r.value===43?(F(),m(`p`,Kr,`One more piece from week 4`)):r.value===44?(F(),m(`p`,qr,`The failure that defines GANs`)):r.value===45?(F(),m(`p`,Jr,`Four ways to say two distributions differ`)):r.value===46?(F(),m(`p`,Yr,`The measure decides what "worse" means`)):r.value===47?(F(),m(`p`,Xr,`Wasserstein, and what came after`)):r.value===48?(F(),m(`p`,Zr,`The zoo, and the six that mattered`)):r.value===49?(F(),m(`p`,Qr,`What this is actually used for`)):r.value===50?(F(),m(`p`,$r,`undefined`)):r.value===51?(F(),m(`p`,ei,`What replaced them: diffusion`)):r.value===52?(F(),m(`p`,ti,`Destroying an image is easy`)):r.value===53?(F(),m(`p`,ni,`The forward process, in one step`)):r.value===54?(F(),m(`p`,ri,`Forward — no network involved`)):r.value===55?(F(),m(`p`,ii,`What the network is asked to do`)):r.value===56?(F(),m(`p`,ai,`Reverse — what the sampler follows`)):r.value===57?(F(),m(`p`,oi,`Three lines, and no adversary`)):r.value===58?(F(),m(`p`,si,`The cost is at the other end`)):r.value===59?(F(),m(`p`,ci,`How the prompt gets in`)):r.value===60?(F(),m(`p`,li,`The guidance slider`)):r.value===61?(F(),m(`p`,ui,`Do it somewhere cheaper`)):r.value===62?(F(),m(`p`,di,`What the denoiser is made of`)):r.value===63?(F(),m(`p`,fi,`What actually gets trained in 2026`)):r.value===64?(F(),m(`p`,pi,`undefined`)):r.value===65?(F(),m(`p`,mi,`Choosing one`)):r.value===66?(F(),m(`p`,hi,`Five families, side by side`)):r.value===67?(F(),m(`p`,gi,`How do you know it is any good?`)):r.value===68?(F(),m(`p`,_i,`Where that leaves us`)):r.value===69?(F(),m(`p`,vi,`What comes with the capability`)):r.value===70?(F(),m(`p`,yi,`Reading, and the lab`)):r.value===71?(F(),m(`p`,bi,`To be continued…`)):N(`v-if`,!0)]))}}),Si={class:`bg-main transform`,shadow:`~`,p:`x-4 y-2`,border:`~ transparent rounded dark:main`},Ci=[`value`,`disabled`],wi={table:``,"w-full":``,"border-collapse":``},Ti=[`border`,`onClick`],Ei={"text-right":``,op50:``,"text-sm":``,"table-cell":``,"py-2":``,"pl-4":``,"pr-3":``,"vertical-middle":``},Di=Le(A({__name:`Goto`,setup(e){let t=D(),n=D(),r=D(),i=D(),a=D(``),u=D(0),{go:f,slides:p}=V();function h(e){return e!=null}let g=b(()=>new rr(p.value.map(e=>e.meta?.slide).filter(h),{keys:[`no`,`title`],threshold:.3,shouldSort:!0,minMatchCharLength:1})),v=b(()=>a.value.startsWith(`/`)?a.value.substring(1):a.value),x=b(()=>v.value?g.value.search(v.value).map(e=>e.item):[]),S=b(()=>!!x.value.length);function C(){if(S.value){let e=x.value.at(u.value||0);e&&f(e.no)}w()}function w(){a.value=``,z.value=!1}function T(e){e.preventDefault(),u.value++,u.value>=x.value.length&&(u.value=0),te()}function ee(e){e.preventDefault(),u.value--,u.value<=-2&&(u.value=x.value.length-1),te()}function te(){let e=i.value?.[u.value];e&&r.value&&(e.offsetTop+e.offsetHeight>r.value.offsetHeight+r.value.scrollTop?r.value.scrollTo({behavior:`smooth`,top:e.offsetTop+e.offsetHeight-r.value.offsetHeight+1}):e.offsetTop{e?(a.value=``,u.value=0,setTimeout(()=>n.value?.focus(),0)):n.value?.blur()}),l(je,()=>{t.value?.contains(je.value)||w()}),(e,l)=>(F(),m(`div`,{id:`slidev-goto-dialog`,ref_key:`container`,ref:t,class:P([`fixed right-5 transition-all`,k(z)?`top-5`:`-top-20 op0 pointer-events-none`]),"w-90":``,"max-w-90":``,"min-w-90":``},[d(`div`,Si,[d(`input`,{id:`slidev-goto-input`,ref_key:`input`,ref:n,value:a.value,type:`text`,disabled:!k(z),class:P([`outline-none bg-transparent`,{"text-red-400":!S.value&&a.value}]),placeholder:`Goto...`,onKeydown:[_(C,[`enter`]),_(w,[`escape`]),_(T,[`down`]),_(ee,[`up`])],onInput:ne},null,42,Ci)]),k(z)&&x.value.length>0?(F(),m(`div`,{key:0,ref_key:`list`,ref:r,class:`autocomplete-list`,shadow:`~`,border:`~ transparent rounded dark:main`},[d(`ul`,wi,[(F(!0),m(E,null,c(x.value,(e,t)=>(F(),m(`li`,{ref_for:!0,ref_key:`items`,ref:i,key:e.id,role:`button`,tabindex:`0`,"cursor-pointer":``,hover:`op100`,"table-row":``,"items-center":``,border:t===0?void 0:`t main`,class:P(u.value===t?`bg-active op100`:`op80`),onClick:y(t=>re(e.no),[`stop`,`prevent`])},[d(`div`,Ei,s(e.no),1),o(k(xi),{"table-cell":``,"py-2":``,"pr-4":``,"w-full":``,no:e.no},null,8,[`no`])],10,Ti))),128))])],512)):N(`v-if`,!0)],2))}}),[[`__scopeId`,`data-v-61e41ebd`]]),Oi=D(1),ki=b(()=>_e.value.length),X=D(0),Ai=D(0);function ji(){X.value>Oi.value&&--X.value}function Mi(){X.valueOi.value){let e=X.value-Ai.value;eki.value&&(e=ki.value),X.value=e}}var Fi=[`onClick`],Ii={class:`text-green font-bold`},Li={class:`opacity-50`},Ri={key:1,class:`opacity-50`},zi={class:`fixed top-4 right-4 z-modal text-gray-400 flex flex-col items-center gap-2`},Bi=128,Vi=32,Hi=A({__name:`QuickOverview`,setup(t){let{currentSlideNo:n,go:r,slides:i}=V();function a(){I.value=!1}function l(e){r(e),a()}function p(e){return e===X.value}let h=Ee.smaller(`xs`),g=Ee.smaller(`sm`),_=b(()=>h.value?he.width.value-Bi:g.value?(he.width.value-Bi-Vi)/2:300),y=b(()=>Math.floor((he.width.value-Bi)/(_.value+Vi))),x=D(``);return Ge(`keypress`,e=>{if(!I.value){x.value=``;return}if(e.key===`Enter`){e.preventDefault(),x.value?(l(+x.value),x.value=``):l(X.value);return}let t=Number.parseInt(e.key.replace(/\D/g,``));if(Number.isNaN(t)){x.value=``;return}if(!x.value&&t===0)return;if(x.value+=String(t),+x.value>i.value.length){x.value=``;return}let n=i.value.findIndex(e=>`/${e.no}`===x.value);n!==-1&&(X.value=n+1),x.value*10>i.value.length&&(l(+x.value),x.value=``)}),u(()=>{X.value=n.value,Ai.value=y.value}),(t,n)=>(F(),m(E,null,[o(f,{"enter-active-class":`duration-150 ease-out`,"enter-from-class":`opacity-0 scale-102 !backdrop-blur-0px`,"leave-active-class":`duration-200 ease-in`,"leave-to-class":`opacity-0 scale-102 !backdrop-blur-0px`},{default:e(()=>[k(I)?(F(),m(`div`,{key:0,class:`fixed left-0 right-0 top-0 h-[calc(var(--vh,1vh)*100)] z-modal bg-main !bg-opacity-75 p-16 py-20 overflow-y-auto backdrop-blur-5px select-none`,onClick:a},[d(`div`,{class:`grid gap-y-4 gap-x-8 w-full`,style:M(`grid-template-columns: repeat(auto-fit,minmax(${_.value}px,1fr))`)},[(F(!0),m(E,null,c(k(i),(t,n)=>(F(),m(`div`,{key:t.no,class:`relative`},[d(`div`,{class:P([`inline-block border rounded overflow-hidden bg-main hover:border-primary transition`,p(n+1)||k(X)===n+1?`border-primary`:`border-main`]),onClick:e=>l(t.no)},[(F(),O(ut,{key:t.no,no:t.no,"use-snapshot":!0,width:_.value,class:`pointer-events-none`},{default:e(()=>[o(mt,{"clicks-context":k(ce)(t,k(Qe)),route:t,"render-context":`overview`},null,8,[`clicks-context`,`route`]),o(ft,{page:t.no},null,8,[`page`])]),_:2},1032,[`no`,`width`]))],10,Fi),d(`div`,{class:`absolute top-0`,style:M(`left: ${_.value+5}px`)},[x.value&&String(n+1).startsWith(x.value)?(F(),m(E,{key:0},[d(`span`,Ii,s(x.value),1),d(`span`,Li,s(String(n+1).slice(x.value.length)),1)],64)):(F(),m(`span`,Ri,s(n+1),1))],4)]))),128))],4)])):N(`v-if`,!0)]),_:1}),v(d(`div`,zi,[o(G,{title:`Close`,class:`text-2xl`,onClick:a},{default:e(()=>[...n[0]||=[d(`div`,{class:`i-carbon:close`},null,-1)]]),_:1}),(F(),O(G,{key:0,as:`a`,title:`Slides Overview`,target:`_blank`,href:`${k(ve)}overview`,"tab-index":`-1`,class:`text-2xl`},{default:e(()=>[...n[1]||=[d(`div`,{class:`i-carbon:list-boxes`},null,-1)]]),_:1},8,[`href`])),N(`v-if`,!0)],512),[[ie,k(I)]])],64))}});function Ui(){let e=Xe();return b(()=>{let t=lt.value?.getBoundingClientRect();if(!t)return;let n=(e.x.value-t.left)/t.width*100,r=(e.y.value-t.top)/t.height*100;if(!(n<0||n>100||r<0||r>100))return{x:n,y:r}})}var Wi={key:0,class:`absolute top-0 left-0 right-0 bottom-0 pointer-events-none text-xl`},Gi=Le(A({__name:`LaserPointer`,setup(e){let t=Ui(),{isPresenter:n}=V(),r=b(()=>!n.value&&rt.cursor?.style===`laser`?rt.cursor:xe.value===`laser`?t.value:null);return i(()=>{u(()=>{document.body.classList.toggle(`slidev-self-laser-active`,xe.value===`laser`&&!!r.value)})}),(e,t)=>r.value?(F(),m(`div`,Wi,[d(`div`,{class:`laser-pointer`,style:M({left:`${r.value.x}%`,top:`${r.value.y}%`})},null,4)])):N(`v-if`,!0)}}),[[`__scopeId`,`data-v-1d1438ab`]]),Ki={render:()=>[]},qi={key:0,class:`bg-main text-main shadow-xl absolute bottom-10 left-0 z-menu py2`,border:`~ main rounded-md`},Ji=A({__name:`MenuButton`,props:{modelValue:{default:!1},disabled:{default:!1}},setup(e,{emit:t}){let n=Re(e,`modelValue`,t,{passive:!0}),i=D();return Ke(i,()=>{n.value=!1}),(t,a)=>(F(),m(`div`,{ref_key:`el`,ref:i,class:`flex relative`},[d(`button`,{class:P({disabled:e.disabled}),onClick:a[0]||=e=>n.value=!k(n)},[r(t.$slots,`button`,{value:k(n),class:P({disabled:e.disabled})})],2),(F(),O(x,null,[k(n)?(F(),m(`div`,qi,[r(t.$slots,`menu`)])):N(`v-if`,!0)],1024))],512))}}),Yi={border:`~ main rounded`,flex:`~ gap-2 items-center`,relative:``,"h-5":``,"w-5":``,"p0.5":``,"hover:bg-active":``,p1:``},Xi=[`disabled`],Zi=A({__name:`FormCheckbox`,props:C({disabled:{type:Boolean}},{modelValue:{type:Boolean,type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=re(e,`modelValue`);return(n,r)=>(F(),m(`div`,Yi,[d(`div`,{"i-ri-check-line":``,class:P(t.value?``:`op0`)},null,2),v(d(`input`,{"onUpdate:modelValue":r[0]||=e=>t.value=e,type:`checkbox`,absolute:``,"inset-0":``,"opacity-10":``,disabled:e.disabled},null,8,Xi),[[g,t.value]])]))}}),Qi={"w-30":``,"h-8":``,flex:`~ gap-1 items-center`},$i={key:0,"w-1.5":``,"h-1.5":``,"bg-primary":``,rounded:``,absolute:``,"top-0":``,"right--2":``},ea={key:0,"w-1.5":``,"h-1.5":``,"bg-primary":``,rounded:``,absolute:``,"top-0":``,"right--2":``},ta=[`innerHTML`],Z=A({__name:`FormItem`,props:{title:{},nested:{type:[Boolean,Number]},div:{type:Boolean},description:{},dot:{type:Boolean}},emits:[`reset`],setup(t,{emit:i}){let a=i;function o(){a(`reset`)}return(i,a)=>(F(),O(n(t.div?`div`:`label`),{flex:`~ row gap-2 items-center`,"select-none":``},{default:e(()=>[d(`div`,Qi,[t.nested?(F(),m(`div`,{key:0,"i-ri-corner-down-right-line":``,op40:``,style:M(typeof t.nested==`number`?{marginLeft:`${t.nested*.5+.5}rem`}:{marginLeft:`0.25rem`})},null,4)):N(`v-if`,!0),t.description?(F(),O(k(ee),{key:2,distance:`10`},{popper:e(()=>[d(`div`,{"text-sm":``,"min-w-90":``,innerHTML:t.description},null,8,ta)]),default:e(()=>[d(`div`,{op75:``,"text-right":``,relative:``,onDblclick:o},[j(s(t.title)+` `,1),t.dot?(F(),m(`div`,ea)):N(`v-if`,!0)],32)]),_:1})):(F(),m(`div`,{key:1,op75:``,relative:``,onDblclick:o},[j(s(t.title)+` `,1),t.dot?(F(),m(`div`,$i)):N(`v-if`,!0)],32))]),r(i.$slots,`default`)]),_:3}))}}),na={relative:``,"h-22px":``},ra={key:0,"pointer-events-none":``,absolute:``,"right-1":``,"top-0.5":``,"text-xs":``,op25:``},ia=A({__name:`FormSlider`,props:C({max:{},min:{},step:{},unit:{},default:{}},{modelValue:{type:Number},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,n=re(e,`modelValue`);return(r,i)=>(F(),m(E,null,[d(`div`,{relative:``,"h-22px":``,"w-60":``,"flex-auto":``,onDblclick:i[1]||=e=>t.default===void 0?null:n.value=t.default},[v(d(`input`,a({"onUpdate:modelValue":i[0]||=e=>n.value=e,type:`range`,class:`slider`},t,{absolute:``,"bottom-0":``,"left-0":``,"right-0":``,"top-0":``,"z-10":``,"w-full":``,"align-top":``}),null,16),[[T,n.value,void 0,{number:!0}]]),t.default==null?N(`v-if`,!0):(F(),m(`span`,{key:0,border:`r main`,absolute:``,"bottom-0":``,"top-0":``,"h-full":``,"w-1px":``,op75:``,style:M({left:`${(t.default-e.min)/(e.max-e.min)*100}%`})},null,4))],32),d(`div`,na,[v(d(`input`,a({"onUpdate:modelValue":i[2]||=e=>n.value=e,type:`number`},t,{border:`~ main rounded`,m0:``,"w-20":``,"bg-gray:5":``,pl2:``,"align-top":``,"text-sm":``}),null,16),[[T,n.value,void 0,{number:!0}]]),t.unit?(F(),m(`span`,ra,s(t.unit),1)):N(`v-if`,!0)])],64))}}),aa={error:0,client:60,Light:60,Dark:240};function oa(e,t=1){if(aa[e])return sa(aa[e],t);let n=0;for(let t=0;t!i.text||i.color===!1?{}:{color:typeof i.color==`number`?sa(i.color):oa(i.text),background:typeof i.color==`number`?sa(i.color,.1):oa(i.text,.1)}),o=b(()=>(i.size||`sm`)===`sm`?`px-1.5 text-11px leading-1.6em`:``);return(c,l)=>(F(),O(n(t.as||`span`),{"ws-nowrap":``,rounded:``,class:P(o.value),style:M(a.value)},{default:e(()=>[r(c.$slots,`default`,{},()=>[d(`span`,{textContent:s(i.text)},null,8,ca)])]),_:3},8,[`class`,`style`]))}}),ua={flex:`~ gap-1 items-center`,rounded:``,"bg-gray:4":``,p1:``,"m--1":``},da=A({__name:`SegmentControl`,props:{options:{},modelValue:{}},emits:[`update:modelValue`],setup(e){return(t,n)=>(F(),m(`div`,ua,[(F(!0),m(E,null,c(e.options,n=>(F(),O(la,{key:n.value,class:P([`px-2 py-1 text-xs font-mono`,n.value===e.modelValue?``:`op50`]),color:n.value===e.modelValue,"aria-pressed":n.value===e.modelValue,size:`none`,text:n.label,as:`button`,onClick:e=>t.$emit(`update:modelValue`,n.value)},null,8,[`class`,`color`,`aria-pressed`,`text`,`onClick`]))),128))]))}}),fa={"text-sm":``,"select-none":``,flex:`~ col gap-1`,"min-w-30":``,px4:``},pa=A({__name:`Settings`,setup(t){let{isPresenter:n}=V(),{isSupported:r}=Ye();return(t,i)=>(F(),m(`div`,fa,[o(Z,{title:`Invert`,dot:k(L).invert!==k(R).invert,onReset:i[1]||=e=>k(L).invert=k(R).invert},{default:e(()=>[o(Zi,{modelValue:k(L).invert,"onUpdate:modelValue":i[0]||=e=>k(L).invert=e},null,8,[`modelValue`])]),_:1},8,[`dot`]),o(Z,{title:`Brightness`,dot:k(L).brightness!==k(R).brightness,onReset:i[3]||=e=>k(L).brightness=k(R).brightness},{default:e(()=>[o(ia,{modelValue:k(L).brightness,"onUpdate:modelValue":i[2]||=e=>k(L).brightness=e,max:1.5,min:.5,step:.02,default:k(R).brightness},null,8,[`modelValue`,`default`])]),_:1},8,[`dot`]),o(Z,{title:`Contrast`,dot:k(L).contrast!==k(R).contrast,onReset:i[5]||=e=>k(L).contrast=k(R).contrast},{default:e(()=>[o(ia,{modelValue:k(L).contrast,"onUpdate:modelValue":i[4]||=e=>k(L).contrast=e,max:1.5,min:.5,step:.02,default:k(R).contrast},null,8,[`modelValue`,`default`])]),_:1},8,[`dot`]),o(Z,{title:`Saturation`,dot:k(L).saturate!==k(R).saturate,onReset:i[7]||=e=>k(L).saturate=k(R).saturate},{default:e(()=>[o(ia,{modelValue:k(L).saturate,"onUpdate:modelValue":i[6]||=e=>k(L).saturate=e,max:1.5,min:.5,step:.02,default:k(R).saturate},null,8,[`modelValue`,`default`])]),_:1},8,[`dot`]),o(Z,{title:`Sepia`,dot:k(L).sepia!==k(R).sepia,onReset:i[9]||=e=>k(L).sepia=k(R).sepia},{default:e(()=>[o(ia,{modelValue:k(L).sepia,"onUpdate:modelValue":i[8]||=e=>k(L).sepia=e,max:2,min:-2,step:.02,default:k(R).sepia},null,8,[`modelValue`,`default`])]),_:1},8,[`dot`]),o(Z,{title:`Hue Rotate`,dot:k(L).hueRotate!==k(R).hueRotate,onReset:i[11]||=e=>k(L).hueRotate=k(R).hueRotate},{default:e(()=>[o(ia,{modelValue:k(L).hueRotate,"onUpdate:modelValue":i[10]||=e=>k(L).hueRotate=e,max:180,min:-180,step:.1,default:k(R).hueRotate},null,8,[`modelValue`,`default`])]),_:1},8,[`dot`]),i[16]||=d(`div`,{class:`h-1px opacity-5 bg-current w-full my2`},null,-1),o(Z,{title:`Cursor Style`},{default:e(()=>[o(da,{modelValue:k(xe),"onUpdate:modelValue":i[12]||=e=>p(xe)?xe.value=e:null,options:[{label:`Cursor`,value:`cursor`},{label:`Laser`,value:`laser`}]},null,8,[`modelValue`])]),_:1}),k(n)?N(`v-if`,!0):(F(),O(Z,{key:0,title:`Slide Scale`},{default:e(()=>[o(da,{modelValue:k(ae),"onUpdate:modelValue":i[13]||=e=>p(ae)?ae.value=e:null,options:[{label:`Fit`,value:0},{label:`1:1`,value:1}]},null,8,[`modelValue`])]),_:1})),k(r)?(F(),O(Z,{key:1,title:`Wake Lock`},{default:e(()=>[o(Zi,{modelValue:k(le),"onUpdate:modelValue":i[14]||=e=>p(le)?le.value=e:null},null,8,[`modelValue`])]),_:1})):N(`v-if`,!0),k(n)?N(`v-if`,!0):(F(),O(Z,{key:2,title:`Hide Idle Cursor`},{default:e(()=>[o(Zi,{modelValue:k(we),"onUpdate:modelValue":i[15]||=e=>p(we)?we.value=e:null},null,8,[`modelValue`])]),_:1}))]))}}),ma={class:`select-list`},ha={class:`title`},ga={class:`items`},_a=[`onClick`],va=Le(A({__name:`SelectList`,props:{modelValue:{type:[Object,String,Number,Boolean]},title:{type:String},items:{type:Array}},setup(e,{emit:t}){let n=Re(e,`modelValue`,t,{passive:!0});return(t,r)=>(F(),m(`div`,ma,[d(`div`,ha,s(e.title),1),d(`div`,ga,[(F(!0),m(E,null,c(e.items,e=>(F(),m(`div`,{key:e.value,class:P([`item`,{active:k(n)===e.value}]),onClick:()=>{n.value=e.value,e.onClick?.()}},[d(`div`,{class:P([`i-carbon:checkmark text-green-500 mya`,{"opacity-0":k(n)!==e.value}])},null,2),d(`div`,{class:P({"opacity-50":k(n)!==e.value})},s(e.display||e.value),3)],10,_a))),128))])]))}}),[[`__scopeId`,`data-v-aa3b28a6`]]),ya={"text-sm":``,flex:`~ col gap-2`},ba={px3:``,"ws-nowrap":``},xa={"font-bold":``,"text-primary":``},Sa=A({__name:`SyncControls`,setup(t){let{isPresenter:n}=V(),r=b({get:()=>n.value?B.value.presenterReceive:B.value.viewerReceive,set(e){n.value?B.value.presenterReceive=e:B.value.viewerReceive=e}}),i=b({get:()=>n.value?B.value.presenterSend:B.value.viewerSend,set(e){n.value?B.value.presenterSend=e:B.value.viewerSend=e}}),a=b({get:()=>r.value&&i.value?`bidirectional`:r.value&&!i.value?`receive-only`:!r.value&&i.value?`send-only`:`off`,set(e){switch(e){case`bidirectional`:r.value=!0,i.value=!0;break;case`receive-only`:r.value=!0,i.value=!1;break;case`send-only`:r.value=!1,i.value=!0;break;case`off`:r.value=!1,i.value=!1}}});return(t,c)=>(F(),O(Ji,null,{button:e(()=>[o(G,{title:`Change sync settings`},{default:e(()=>[d(`div`,{class:P([`i-ph:arrow-up-bold mx--1.2 scale-x-80`,i.value?`text-green6 dark:text-green`:`op30`])},null,2),d(`div`,{class:P([`i-ph:arrow-down-bold mx--1.2 scale-x-80`,r.value?`text-green6 dark:text-green`:`op30`])},null,2)]),_:1})]),menu:e(()=>[d(`div`,ya,[d(`div`,ba,[c[1]||=d(`span`,{op75:``},`Slides navigation syncing for `,-1),d(`span`,xa,s(k(n)?`presenter`:`viewer`),1)]),c[2]||=d(`div`,{class:`h-1px opacity-10 bg-current w-full`},null,-1),o(va,{modelValue:a.value,"onUpdate:modelValue":c[0]||=e=>a.value=e,title:`Sync Mode`,items:[{value:`bidirectional`,display:`Bidirectional Sync`},{value:`receive-only`,display:`Receive Only`},{value:`send-only`,display:`Send Only`},{value:`off`,display:`Disable`}]},null,8,[`modelValue`])])]),_:1}))}}),Ca={key:0,class:`i-carbon:minimize`},wa={key:1,class:`i-carbon:maximize`},Ta={key:0,class:`i-carbon-moon`},Ea={key:1,class:`i-carbon-sun`},Da={key:0,class:`i-carbon-magic-wand-filled color-red-600 dark:color-red-400`},Oa={key:1,class:`i-carbon-magic-wand`},ka={key:0,class:`i-ph-cursor-fill`},Aa={key:1,class:`i-ph-cursor-duotone`},ja={key:0,"w-2":``,"h-2":``,"bg-primary":``,"rounded-full":``,absolute:``,"top-0.5":``,"right-0.5":``},Ma={class:`px2 my-auto`},Na={class:`text-lg`},Pa={class:`opacity-50 text-sm`},Fa=A({__name:`NavControls`,props:{persist:{default:!1}},setup(t){let n=t,{currentSlideNo:r,hasNext:i,hasPrev:a,isEmbedded:c,isPresenter:l,isPresenterAvailable:u,next:f,prev:p,total:h,enterPresenter:g,exitPresenter:_}=V(),{brush:v,drawingEnabled:y}=st(),x=Ee.smaller(`md`),{isFullscreen:S,toggle:C}=Ne,w=D();function T(){w.value&&je.value&&w.value.contains(je.value)&&je.value.blur()}let ee=b(()=>n.persist?`text-$slidev-controls-foreground bg-transparent`:`rounded-md bg-main shadow-xl border border-main`),te=ne();return(t,n)=>(F(),m(`nav`,{ref_key:`root`,ref:w,class:`flex flex-col`},[d(`div`,{class:P([`flex flex-wrap-reverse text-xl gap-0.5 p-1 lg:p-2`,ee.value]),onMouseleave:T},[k(c)?N(`v-if`,!0):(F(),O(G,{key:0,title:k(S)?`Close fullscreen`:`Enter fullscreen`,onClick:k(C)},{default:e(()=>[k(S)?(F(),m(`div`,Ca)):(F(),m(`div`,wa))]),_:1},8,[`title`,`onClick`])),o(G,{disabled:!k(a),title:`Go to previous slide`,onClick:k(p)},{default:e(()=>[...n[6]||=[d(`div`,{class:`i-carbon:arrow-left`},null,-1)]]),_:1},8,[`disabled`,`onClick`]),o(G,{disabled:!k(i),title:`Go to next slide`,onClick:k(f)},{default:e(()=>[...n[7]||=[d(`div`,{class:`i-carbon:arrow-right`},null,-1)]]),_:1},8,[`disabled`,`onClick`]),k(c)?N(`v-if`,!0):(F(),O(G,{key:1,title:`Show slide overview`,onClick:n[0]||=e=>k(ue)()},{default:e(()=>[...n[8]||=[d(`div`,{class:`i-carbon:apps`},null,-1)]]),_:1})),k(et)?N(`v-if`,!0):(F(),O(G,{key:2,title:k(it)?`Switch to light mode theme`:`Switch to dark mode theme`,onClick:n[1]||=e=>k(nt)()},{default:e(()=>[k(it)?(F(),m(`div`,Ta)):(F(),m(`div`,Ea))]),_:1},8,[`title`])),o(ct),k(c)?N(`v-if`,!0):(F(),m(E,{key:3},[!k(l)&&!k(x)&&te.value?(F(),m(E,{key:0},[o(k(te)),o(ct)],64)):N(`v-if`,!0),k(l)?(F(),O(G,{key:1,title:k(xe)===`laser`?k(fe)?`Disable laser pointer`:`Enable laser pointer`:k(fe)?`Hide presenter cursor`:`Show presenter cursor`,active:k(fe),onClick:n[2]||=e=>k(de)()},{default:e(()=>[k(xe)===`laser`?(F(),m(E,{key:0},[k(fe)?(F(),m(`div`,Da)):(F(),m(`div`,Oa))],64)):(F(),m(E,{key:1},[k(fe)?(F(),m(`div`,ka)):(F(),m(`div`,Aa))],64))]),_:1},8,[`title`,`active`])):N(`v-if`,!0),!k(H).drawings.presenterOnly||k(l)?(F(),O(G,{key:2,class:`relative`,title:k(y)?`Hide drawing toolbar`:`Show drawing toolbar`,active:k(y),onClick:n[3]||=e=>y.value=!k(y)},{default:e(()=>[n[9]||=d(`div`,{class:`i-carbon:pen`},null,-1),k(y)?(F(),m(`div`,{key:0,class:`absolute left-1 right-1 bottom-0 h-0.7 rounded-full`,style:M({background:k(v).color})},null,4)):N(`v-if`,!0)]),_:1},8,[`title`,`active`])):N(`v-if`,!0),o(ct),k(l)?(F(),O(G,{key:3,title:`Play Mode`,onClick:k(_)},{default:e(()=>[...n[10]||=[d(`div`,{class:`i-carbon:presentation-file`},null,-1)]]),_:1},8,[`onClick`])):N(`v-if`,!0),k(u)?(F(),O(G,{key:4,title:`Presenter Mode`,onClick:k(g)},{default:e(()=>[...n[11]||=[d(`div`,{class:`i-carbon:user-speaker`},null,-1)]]),_:1},8,[`onClick`])):N(`v-if`,!0),N(`v-if`,!0)],64)),(F(),m(E,{key:4},[k(H).download?(F(),O(G,{key:0,title:`Download as PDF`,onClick:k(tt)},{default:e(()=>[...n[13]||=[d(`div`,{class:`i-carbon:download`},null,-1)]]),_:1},8,[`onClick`])):N(`v-if`,!0)],64)),N(`v-if`,!0),!k(l)&&k(H).info&&!k(c)?(F(),O(G,{key:6,title:`Show info`,onClick:n[5]||=e=>se.value=!k(se)},{default:e(()=>[...n[15]||=[d(`div`,{class:`i-carbon:information`},null,-1)]]),_:1})):N(`v-if`,!0),k(c)?N(`v-if`,!0):(F(),m(E,{key:7},[o(ct),k(l)?(F(),O(G,{key:0,title:`Toggle Presenter Layout`,class:`aspect-ratio-initial flex items-center`,onClick:k(pe)},{default:e(()=>[n[16]||=d(`div`,{class:`i-carbon:template`},null,-1),j(` `+s(k(Se)),1)]),_:1},8,[`onClick`])):N(`v-if`,!0),(F(),O(Sa,{key:1})),o(Ji,null,{button:e(({value:t})=>[o(G,{title:`More Options`,active:t},{default:e(()=>[n[17]||=d(`div`,{class:`i-carbon:settings-adjust`},null,-1),k(Ce)?(F(),m(`div`,ja)):N(`v-if`,!0)]),_:1},8,[`active`])]),menu:e(()=>[o(pa)]),_:1})],64)),k(c)?N(`v-if`,!0):(F(),O(ct,{key:8})),d(`div`,Ma,[d(`span`,Na,s(k(r)),1),d(`span`,Pa,` / `+s(k(h)),1)]),o(k(Ki))],34)],512))}}),Ia=new Set,La=new Set,Ra=/\/$/;function za(e){return e.startsWith(`http`)||e.startsWith(`//`)?e:`${`./`.replace(Ra,``)}${e.startsWith(`/`)?e:`/${e}`}`}var Ba=2,Va=new Map,Ha=D(0),Ua=D(0),Wa=b(()=>Ua.value===0?1:Ha.value/Ua.value);b(()=>Wa.value>=1);function Ga(e){let t=za(e);if(Ia.has(t)||La.has(t))return;La.add(t);let n=new Image;n.onload=()=>{La.delete(t),Ia.add(t),Va.delete(t),Ha.value=Ia.size},n.onerror=()=>{La.delete(t);let n=Va.get(t)??0;n{let e=r.value;if(!e?.length)return;let t=new Set;for(let n of e)for(let e of n.meta?.slide?.images??[])t.add(za(e));Ua.value=t.size}),u(()=>{let i=e.value,o=r.value;if(!i||!o?.length)return;Ka(i),Ka(t.value),Ka(n.value);let s=i.no-1;for(let e=1;e<=a;e++){let t=s+e;t{let t=r.value,n=setTimeout(()=>{if(t?.length)for(let e of t)Ka(e)},3e3);e(()=>clearTimeout(n))})}function Ja(){let e=He(),t=D(!1),n,r,i=typeof document<`u`&&`startViewTransition`in document;return e.beforeResolve((e,a)=>{let o=Ie(a.params.no)?.meta,s=Ie(e.params.no)?.meta,c=o?.slide?.no,l=s?.slide?.no;if((c!=null&&l!=null&&c!==l&&((c{n=e,r=t}),d,f=new Promise(e=>d=e);return setTimeout(()=>{document.startViewTransition(()=>(d(),u))},50),f}),i&&e.afterEach(()=>{n?.(),r?.()}),t}var Ya=[`data-drag-id`],Q=10,$=10,Xa=`absolute border border-gray bg-gray dark:border-gray-500 dark:bg-gray-800 bg-opacity-30 `,Za=20,Qa=A({__name:`DragControl`,props:{data:{}},setup(e){let{dragId:n,zoom:r,autoHeight:i,x0:a,y0:o,width:s,height:c,rotate:l,isArrow:f}=e.data,p=w(Ze,D(1)),g=b(()=>p.value*r.value),{left:_,top:v}=at(),y=f?-1/0:40,x=b(()=>l.value*Math.PI/180),S=b(()=>Math.sin(x.value)),C=b(()=>Math.cos(x.value)),T=b(()=>s.value*C.value+c.value*S.value),ee=b(()=>s.value*S.value+c.value*C.value),te=b(()=>a.value-T.value/2),ne=b(()=>o.value-ee.value/2),re=b(()=>a.value+T.value/2),ie=b(()=>o.value+ee.value/2),O=b(()=>f&&s.value<0),A=b(()=>f&&c.value<0),j=null;function ae(e){if(e.buttons!==1)return;e.preventDefault(),e.stopPropagation();let t=e.target.getBoundingClientRect(),n=s.value*C.value-c.value*S.value,r=s.value*S.value+c.value*C.value,i=s.value*C.value+c.value*S.value,u=-s.value*S.value+c.value*C.value;j={x0:a.value,y0:o.value,width:s.value,height:c.value,rotate:l.value,dx0:e.clientX-(t.left+t.right)/2,dy0:e.clientY-(t.top+t.bottom)/2,ltx:a.value-n/2,lty:o.value-r/2,rtx:a.value+i/2,rty:o.value-u/2,lbx:a.value-i/2,lby:o.value+u/2,rbx:a.value+n/2,rby:o.value+r/2},e.currentTarget.setPointerCapture(e.pointerId)}function oe(e){if(!j||e.buttons!==1)return;e.preventDefault(),e.stopPropagation();let t=(e.clientX-_.value-j.dx0)/g.value,n=(e.clientY-v.value-j.dy0)/g.value;a.value=Oe(t,-T.value/2+$,me.value+T.value/2-$),o.value=Oe(n,-ee.value/2+$,ye.value+ee.value/2-$)}function I(e){j&&=(e.preventDefault(),e.stopPropagation(),null)}function se(e,t){return{onPointerdown:ae,onPointermove:n=>{if(!j||n.buttons!==1)return;n.preventDefault(),n.stopPropagation();let r=(n.clientX-_.value)/g.value,i=(n.clientY-v.value)/g.value,{ltx:l,lty:u,rtx:d,rty:f,lbx:p,lby:m,rbx:h,rby:b}=j,x=j.width/j.height,w=Math.max(y,y*x);function T(e,t){if(n.shiftKey){let n=Math.max(e,t*x,w);return{w:n,h:n/x}}return{w:Math.max(e,y),h:Math.max(t,y)}}if(e){if(t){let{w:e,h:t}=T((h-r)*C.value+(b-i)*S.value,-(h-r)*S.value+(b-i)*C.value);r=h-e*C.value+t*S.value,i=b-e*S.value-t*C.value}else{let{w:e,h:t}=T((d-r)*C.value-(i-f)*S.value,(d-r)*S.value+(i-f)*C.value);r=d-e*C.value-t*S.value,i=f-e*S.value+t*C.value}}else if(t){let{w:e,h:t}=T((r-p)*C.value-(m-i)*S.value,(r-p)*S.value+(m-i)*C.value);r=p+e*C.value+t*S.value,i=m+e*S.value-t*C.value}else{let{w:e,h:t}=T((r-l)*C.value+(i-u)*S.value,-(r-l)*S.value+(i-u)*C.value);r=l+e*C.value-t*S.value,i=u+e*S.value+t*C.value}e?t?(a.value=(r+h)/2,o.value=(i+b)/2,s.value=(h-r)*C.value+(b-i)*S.value,c.value=-(h-r)*S.value+(b-i)*C.value):(a.value=(r+d)/2,o.value=(i+f)/2,s.value=(d-r)*C.value-(i-f)*S.value,c.value=(d-r)*S.value+(i-f)*C.value):t?(a.value=(r+p)/2,o.value=(i+m)/2,s.value=(r-p)*C.value-(m-i)*S.value,c.value=(r-p)*S.value+(m-i)*C.value):(a.value=(r+l)/2,o.value=(i+u)/2,s.value=(r-l)*C.value+(i-u)*S.value,c.value=-(r-l)*S.value+(i-u)*C.value)},onPointerup:I,style:{width:`${Q}px`,height:`${Q}px`,margin:`-${Q/2}px`,left:e===O.value?void 0:`0`,right:e===O.value?`0`:void 0,top:t===A.value?void 0:`0`,bottom:t===A.value?`0`:void 0,cursor:f?`move`:+e+ +t==1?`nesw-resize`:`nwse-resize`,borderRadius:f?`50%`:void 0},class:Xa}}function L(e){return{onPointerdown:ae,onPointermove:t=>{if(!j||t.buttons!==1)return;t.preventDefault(),t.stopPropagation();let n=(t.clientX-_.value)/g.value,r=(t.clientY-v.value)/g.value,{ltx:i,lty:l,rtx:u,rty:d,lbx:f,lby:p,rbx:m,rby:h}=j;if(e===`l`){let e=(u+m)/2,t=(d+h)/2;s.value=Math.max((e-n)*C.value+(t-r)*S.value,y),a.value=e-s.value*C.value/2,o.value=t-s.value*S.value/2}else if(e===`r`){let e=(i+f)/2,t=(l+p)/2;s.value=Math.max((n-e)*C.value+(r-t)*S.value,y),a.value=e+s.value*C.value/2,o.value=t+s.value*S.value/2}else if(e===`t`){let e=(f+m)/2,t=(p+h)/2;c.value=Math.max((t-r)*C.value-(e-n)*S.value,y),a.value=e+c.value*S.value/2,o.value=t-c.value*C.value/2}else if(e===`b`){let e=(i+u)/2,t=(l+d)/2;c.value=Math.max((r-t)*C.value-(n-e)*S.value,y),a.value=e-c.value*S.value/2,o.value=t+c.value*C.value/2}},onPointerup:I,style:{width:`${Q}px`,height:`${Q}px`,margin:`-${Q/2}px`,left:e===`l`?`0`:e===`r`?`100%`:`50%`,top:e===`t`?`0`:e===`b`?`100%`:`50%`,cursor:`lr`.includes(e)?`ew-resize`:`ns-resize`,borderRadius:`50%`},class:Xa}}function ce(){return{onPointerdown:ae,onPointermove:e=>{if(!j||e.buttons!==1)return;e.preventDefault(),e.stopPropagation();let t=(e.clientX-_.value-j.dx0)/g.value-Q/4,n=(e.clientY-v.value-j.dy0)/g.value-Q/4,r=Math.atan2(n-o.value,t-a.value)*180/Math.PI+90;for(let e of[0,90,180,270,360])if(Math.abs(r-e)<5){r=e%360;break}l.value=r},onPointerup:I,style:{width:`${Q}px`,height:`${Q}px`,margin:`-${Q/2}px`,left:`50%`,top:`-20px`,cursor:`grab`,borderRadius:`50%`},class:Xa}}let R={immediate:!1,immediateCallback:!1},le=ze(()=>{re.value<=$||a.value--},Za,R),ue=ze(()=>{te.value>=me.value-$||a.value++},Za,R),de=ze(()=>{ie.value<=$||o.value--},Za,R),fe=ze(()=>{ne.value>=ye.value-$||o.value++},Za,R);return u(()=>{function e(e,t){Fe[e].value?t.resume():t.pause()}e(`left`,le),e(`right`,ue),e(`up`,de),e(`down`,fe)}),(e,u)=>Number.isFinite(k(a))?(F(),m(`div`,{key:0,id:`drag-control-container`,"data-drag-id":k(n),style:M({position:`absolute`,zIndex:100,left:`${k(r)*(k(a)-Math.abs(k(s))/2)}px`,top:`${k(r)*(k(o)-Math.abs(k(c))/2)}px`,width:`${k(r)*Math.abs(k(s))}px`,height:`${k(r)*Math.abs(k(c))}px`,transformOrigin:`center center`,transform:`rotate(${k(l)}deg)`}),onPointerdown:ae,onPointermove:oe,onPointerup:I},[d(`div`,{class:P([`absolute inset-0 z-nav dark:b-gray-400`,k(f)?``:`b b-dark`])},[k(i)?N(`v-if`,!0):(F(),m(E,{key:0},[d(`div`,h(t(se(!0,!0))),null,16),d(`div`,h(t(se(!1,!1))),null,16),k(f)?N(`v-if`,!0):(F(),m(E,{key:0},[d(`div`,h(t(se(!0,!1))),null,16),d(`div`,h(t(se(!1,!0))),null,16)],64))],64)),k(f)?N(`v-if`,!0):(F(),m(E,{key:1},[d(`div`,h(t(L(`l`))),null,16),d(`div`,h(t(L(`r`))),null,16),k(i)?N(`v-if`,!0):(F(),m(E,{key:0},[d(`div`,h(t(L(`t`))),null,16),d(`div`,h(t(L(`b`))),null,16)],64)),d(`div`,h(t(ce())),null,16),d(`div`,{class:`absolute -top-15px w-0 b b-dashed b-dark dark:b-gray-400`,style:M({left:`calc(50% - 1px)`,height:k(i)?`14px`:`10px`})},null,4)],64))],2)],44,Ya)):N(`v-if`,!0)}}),$a=Le(A({__name:`SlidesShow`,props:{renderContext:{}},setup(t){let{currentSlideRoute:r,currentTransition:i,getPrimaryClicks:s,prevRoute:l,nextRoute:d,slides:f,isPrintMode:p,isPrintWithClicks:h,clicksDirection:g,printRange:_}=V();function y(e){e.meta.preload!==!1&&(e.meta.__preloaded=!0,e.load())}u(()=>{y(r.value),y(l.value),y(d.value)}),u(e=>{let t=f.value,n=setTimeout(()=>{t.forEach(y)},3e3);e(()=>clearTimeout(n))}),qa(r,l,d,f);let x=Ja(),C=ne();Ae(()=>import(`./DrawingLayer-Bd-FSAr6.js`).then(e=>C.value=e.default),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11]),import.meta.url);let w=b(()=>p.value?_.value.map(e=>f.value[e-1]):f.value.filter(e=>e.meta?.__preloaded||e===r.value));function T(){ke.value=!0,S()}return(l,u)=>(F(),m(E,null,[N(` Global Bottom `),o(k(dt)),N(` Slides `),(F(),O(n(k(x)&&!k(p)&&!k(ke)&&!k(Me)?`div`:te),a(k(ke)||k(Me)||k(p)?{}:k(i),{id:`slideshow`,tag:`div`,class:{"slidev-nav-go-forward":k(g)>0,"slidev-nav-go-backward":k(g)<0},onAfterLeave:T}),{default:e(()=>[(F(!0),m(E,null,c(w.value,e=>v((F(),O(mt,{key:e.no,"clicks-context":k(p)&&!k(h)?k(ce)(e,k(Qe)):k(s)(e),route:e,"render-context":t.renderContext},null,8,[`clicks-context`,`route`,`render-context`])),[[ie,e===k(r)]])),128))]),_:1},16,[`class`])),k(De)?(F(),O(Qa,{key:0,data:k(De)},null,8,[`data`])):N(`v-if`,!0),N(` Global Top `),o(k(pt)),C.value?(F(),O(k(C),{key:1})):N(`v-if`,!0)],64))}}),[[`__scopeId`,`data-v-835d2635`]]),eo=Object.assign({}),to=Object.assign({}),no=Object.assign({}),ro=[Object.values(eo)[0],Object.values(to)[0],Object.values(no)[0]].filter(Boolean);function io(){let{go:e,goFirst:t,goLast:n,next:r,nextSlide:i,prev:a,prevSlide:o}=V(),{drawingEnabled:s}=st(),{escape:c,space:l,shift:u,left:d,right:f,up:p,down:m,enter:h,d:g,g:_,o:v,"`":y}=Fe,b={next:r,prev:a,nextSlide:i,prevSlide:o,go:e,goFirst:t,goLast:n,downloadPDF:tt,toggleDark:nt,toggleOverview:ue,toggleDrawing:()=>s.value=!s.value,escapeOverview:()=>I.value=!1,showGotoDialog:()=>z.value=!z.value},x=W(U(I),U(De)),S=[{name:`next_space`,key:W(l,U(u)),fn:r,autoRepeat:!0},{name:`prev_space`,key:W(l,u),fn:a,autoRepeat:!0},{name:`next_right`,key:W(f,U(u),x),fn:r,autoRepeat:!0},{name:`prev_left`,key:W(d,U(u),x),fn:a,autoRepeat:!0},{name:`next_page_key`,key:`pageDown`,fn:r,autoRepeat:!0},{name:`prev_page_key`,key:`pageUp`,fn:a,autoRepeat:!0},{name:`next_down`,key:W(m,x),fn:i,autoRepeat:!0},{name:`prev_up`,key:W(p,x),fn:o,autoRepeat:!0},{name:`next_shift`,key:W(f,u),fn:i,autoRepeat:!0},{name:`prev_shift`,key:W(d,u),fn:o,autoRepeat:!0},{name:`toggle_dark`,key:W(g,U(s)),fn:nt},{name:`toggle_overview`,key:W(qe(v,y),U(s)),fn:ue},{name:`hide_overview`,key:W(c,U(s)),fn:()=>I.value=!1},{name:`goto`,key:W(_,U(s)),fn:()=>z.value=!z.value},{name:`next_overview`,key:W(f,I),fn:Mi},{name:`prev_overview`,key:W(d,I),fn:ji},{name:`up_overview`,key:W(p,I),fn:Ni},{name:`down_overview`,key:W(m,I),fn:Pi},{name:`goto_from_overview`,key:W(h,I),fn:()=>{e(X.value),I.value=!1}}],C=new Set(S.map(e=>e.name));for(let e of ro)S=e(b,S);if(S.filter(e=>e.name&&C.has(e.name)).length===0){let e=[`========== WARNING ==========`,`defineShortcutsSetup did not return any of the base shortcuts.`,`See https://sli.dev/custom/config-shortcuts.html for migration.`,`If it is intentional, return at least one shortcut with one of the base names (e.g. name:"goto").`].join(` + +`);alert(e),console.warn(e)}return S}function ao(){let{isPrintMode:e}=V(),t=W(U(Te),U(be),U(e),ge,U(oe)),n=io();new Map(n.map(e=>[e.key,e])).forEach(e=>{e.fn&&r(e.key,e.fn,e.autoRepeat)}),i(`f`,()=>Ne.toggle());function r(e,n,r=!1){typeof e==`string`&&(e=Fe[e]);let i=W(e,t),a=0,o,s=()=>{if(clearTimeout(o),!i.value){a=0;return}r&&(o=setTimeout(s,Math.max(1e3-a*250,150)),a++),n()};return l(i,s,{flush:`sync`})}function i(e,n){return Je(e,e=>{t.value&&(e.repeat||n())})}}export{Gi as a,Di as c,gt as d,ht as f,da as i,Nt as l,$a as n,Ui as o,Fa as r,Hi as s,ao as t,Et as u}; \ No newline at end of file diff --git a/lecture-07/assets/syncState-BCmj5bTl.js b/lecture-07/assets/syncState-BCmj5bTl.js new file mode 100644 index 0000000000000000000000000000000000000000..d5d1537543430632166e19e4dfd4d4671cbe9680 --- /dev/null +++ b/lecture-07/assets/syncState-BCmj5bTl.js @@ -0,0 +1 @@ +import{X as e,ct as t,mt as n,ut as r}from"./modules/shiki-CkJq9tSf.js";function i(){return Math.random().toString(36).replace(/[^a-z]+/g,``).substr(2,10)}function a(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!1})}var o=t([{channels:[],enabled:!0,init(e,t,r,i=!1){let a;if(!i)a=new BroadcastChannel(e),a.addEventListener(`message`,e=>t(e.data)),this.channels.push(a);else if(i){this.listener=function(n){n&&n.key===e&&n.newValue&&t(JSON.parse(n.newValue))},window.addEventListener(`storage`,this.listener);let n=window.localStorage.getItem(e);n&&t(JSON.parse(n))}return(t,r=!1)=>{this.enabled&&(!i&&a&&!r&&a.postMessage(n(t)),i&&!r&&window.localStorage.setItem(e,JSON.stringify(t)))}},disable(){this.enabled=!1,this.channels.forEach(e=>e.close()),this.listener&&window.removeEventListener(`storage`,this.listener)}}]),s=new Map,c=r({});function l(r,i,a=!1){let l=[],u=!1,d=!1,f,p,m=t(i);function h(e){l.push(e)}function g(e,t){m[e]!==t&&(clearTimeout(f),u=!0,m[e]=t,f=setTimeout(()=>u=!1,0))}function _(e){u||(clearTimeout(p),d=!0,Object.entries(e).forEach(([e,t])=>{m[e]=t}),p=setTimeout(()=>d=!1,0))}function v(t){s.set(t,{onUpdate:_,persist:a,state:m}),c.value[t]=o.map(e=>e.init(t,_,m,a)).filter(e=>!!e);function r(){c.value[t].forEach(e=>e?.(n(m),d)),u||l.forEach(e=>e(m))}e(m,r,{deep:!0})}return{init:v,onPatch:h,onUpdate:_,patch:g,state:m}}export{a as n,i as r,l as t}; \ No newline at end of file diff --git a/lecture-07/assets/useDrawings-dMxKslDP.js b/lecture-07/assets/useDrawings-dMxKslDP.js new file mode 100644 index 0000000000000000000000000000000000000000..06cd9f91d534b96d8fa3f994ed807bdd5e5dff87 --- /dev/null +++ b/lecture-07/assets/useDrawings-dMxKslDP.js @@ -0,0 +1 @@ +import{N as e,X as t,ct as n,g as r,ot as i,ut as a}from"./modules/shiki-CkJq9tSf.js";import{g as o,t as s,tt as c}from"./useNav-DOs7c9Ie.js";import{D as l,g as u}from"./modules/vue-Dz2ojcKF.js";import{c as d,l as f,s as p}from"./index-DYEUBAok.js";var m=()=>({emit(e,...t){for(let n=this.events[e]||[],r=0,i=n.length;r{this.events[e]=this.events[e]?.filter(e=>t!==e)}}});function h(e,t){return e-t}function g(e){return e<0?-1:1}function _(e){return[Math.abs(e),g(e)]}function v(){let e=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${e()+e()}-${e()}-${e()}-${e()}-${e()}${e()}${e()}`}var y=2;function b(e,t){let n=document.createElementNS(`http://www.w3.org/2000/svg`,`defs`),r=document.createElementNS(`http://www.w3.org/2000/svg`,`marker`),i=document.createElementNS(`http://www.w3.org/2000/svg`,`path`);return i.setAttribute(`fill`,t),r.setAttribute(`id`,e),r.setAttribute(`viewBox`,`0 -5 10 10`),r.setAttribute(`refX`,`5`),r.setAttribute(`refY`,`0`),r.setAttribute(`markerWidth`,`4`),r.setAttribute(`markerHeight`,`4`),r.setAttribute(`orient`,`auto`),i.setAttribute(`d`,`M0,-5L10,0L0,5`),r.appendChild(i),n.appendChild(r),n}function x(e,t){let n=e.x-t.x,r=e.y-t.y;return n*n+r*r}function S(e,t,n){let r=t.x,i=t.y,a=n.x-r,o=n.y-i;if(a!==0||o!==0){let t=((e.x-r)*a+(e.y-i)*o)/(a*a+o*o);t>1?(r=n.x,i=n.y):t>0&&(r+=a*t,i+=o*t)}return a=e.x-r,o=e.y-i,a*a+o*o}function C(e,t){let n=e[0],r=[n],i;for(let a=1,o=e.length;at&&(r.push(i),n=i);return n!==i&&i&&r.push(i),r}function w(e,t,n,r,i){let a=r,o=0;for(let r=t+1;ra&&(o=r,a=i)}a>r&&(o-t>1&&w(e,t,o,r,i),i.push(e[o]),n-o>1&&w(e,o,n,r,i))}function T(e,t){let n=e.length-1,r=[e[0]];return w(e,0,n,t,r),r.push(e[n]),r}function E(e,t,n=!1){if(e.length<=2)return e;let r=t===void 0?1:t*t;return e=n?e:C(e,r),e=T(e,r),e}var D=class{constructor(e){this.drauu=e,this.event=void 0,this.point=void 0,this.start=void 0,this.el=null}onSelected(e){}onUnselected(){}onStart(e){}onMove(e){return!1}onEnd(e){}get brush(){return this.drauu.brush}get shiftPressed(){return this.drauu.shiftPressed}get altPressed(){return this.drauu.altPressed}get svgElement(){return this.drauu.el}getMousePosition(e){let t=this.drauu.el,n=this.drauu.options.cssZoom??1,r=this.drauu.options.coordinateScale??1,i=this.drauu.options.offset??{x:0,y:0};if(this.drauu.options.coordinateTransform===!1){let t=this.drauu.el.getBoundingClientRect();return{x:(e.pageX/n-t.left+i.x)*r,y:(e.pageY/n-t.top+i.y)*r,pressure:e.pressure}}{let a=this.drauu.svgPoint;a.x=e.clientX/n+i.x,a.y=e.clientY/n+i.y;let o=a.matrixTransform(t.getScreenCTM()?.inverse());return{x:o.x*r,y:o.y*r,pressure:e.pressure}}}createElement(e,t){let n=document.createElementNS(`http://www.w3.org/2000/svg`,e),r=t?{...this.brush,...t}:this.brush;return n.setAttribute(`fill`,r.fill??`transparent`),n.setAttribute(`stroke`,r.color),n.setAttribute(`stroke-width`,r.size.toString()),n.setAttribute(`stroke-linecap`,`round`),r.dasharray&&n.setAttribute(`stroke-dasharray`,r.dasharray),n}attr(e,t){this.el.setAttribute(e,typeof t==`string`?t:t.toFixed(y))}_setEvent(e){this.event=e,this.point=this.getMousePosition(e)}_eventDown(e){return this._setEvent(e),this.start=this.point,this.onStart(this.point)}_eventMove(e){return this._setEvent(e),this.onMove(this.point)}_eventUp(e){return this._setEvent(e),this.onEnd(this.point)}},O=class e extends D{constructor(...e){super(...e),this.points=[],this.count=0}onStart(e){if(this.el=this.createElement(`path`,{fill:`transparent`}),this.points=[e],this.brush.arrowEnd){this.arrowId=v();let e=b(this.arrowId,this.brush.color);this.el.appendChild(e)}return this.el}onMove(t){return this.el||this.onStart(t),this.points[this.points.length-1]!==t&&(this.points.push(t),this.count+=1),this.count>5&&(this.points=E(this.points,1,!0),this.count=0),this.attr(`d`,e.toSvgData(this.points)),!0}onEnd(){let t=this.el;if(this.el=null,!t)return!1;if(t.setAttribute(`d`,e.toSvgData(E(this.points,1,!0))),!t.getTotalLength()){let{x:e,y:n}=this.points[0],r=this.brush.size/2;t.setAttribute(`d`,`M ${e-r} ${n} a ${r},${r} 0 1,0 ${r*2},0 a ${r},${r} 0 1,0 ${-r*2},0`),t.setAttribute(`fill`,this.brush.color),t.setAttribute(`stroke-width`,`0`)}return!0}static line(e,t){let n=t.x-e.x,r=t.y-e.y;return{length:Math.sqrt(n**2+r**2),angle:Math.atan2(r,n)}}static controlPoint(t,n,r,i){let a=n||t,o=r||t,s=e.line(a,o),c=s.angle+(i?Math.PI:0),l=s.length*.2;return{x:t.x+Math.cos(c)*l,y:t.y+Math.sin(c)*l}}static bezierCommand(t,n,r){let i=e.controlPoint(r[n-1],r[n-2],t),a=e.controlPoint(t,r[n-1],r[n+1],!0);return`C ${i.x.toFixed(y)},${i.y.toFixed(y)} ${a.x.toFixed(y)},${a.y.toFixed(y)} ${t.x.toFixed(y)},${t.y.toFixed(y)}`}static toSvgData(t){return t.reduce((t,n,r,i)=>r===0?`M ${n.x.toFixed(y)},${n.y.toFixed(y)}`:`${t} ${e.bezierCommand(n,r,i)}`,``)}},k=class extends D{onStart(e){return this.el=this.createElement(`ellipse`),this.attr(`cx`,e.x),this.attr(`cy`,e.y),this.el}onMove(e){if(!this.el||!this.start)return!1;let[t,n]=_(e.x-this.start.x),[r,i]=_(e.y-this.start.y);if(this.shiftPressed){let e=Math.min(t,r);t=e,r=e}if(this.altPressed)this.attr(`cx`,this.start.x),this.attr(`cy`,this.start.y),this.attr(`rx`,t),this.attr(`ry`,r);else{let[e,a]=[this.start.x,this.start.x+t*n].sort(h),[o,s]=[this.start.y,this.start.y+r*i].sort(h);this.attr(`cx`,(e+a)/2),this.attr(`cy`,(o+s)/2),this.attr(`rx`,(a-e)/2),this.attr(`ry`,(s-o)/2)}return!0}onEnd(){let e=this.el;if(this.el=null,!e)return!1;try{if(!e.getTotalLength())return!1}catch{return!1}return!0}},A=class extends D{constructor(...e){super(...e),this.pathSubFactor=20,this.pathFragments=[],this._erased=[]}onSelected(e){let t=(e,n)=>{if(e&&e.length)for(let r=0;re.forEach(e=>this.drauu._restoreNode(e)),redo:()=>e.forEach(e=>this.drauu._removeNode(e))}}checkAndEraseElement(){if(this.pathFragments.length)for(let e=0;e!this._erased.includes(e.element))),this._erased.length>0}lineLineIntersect(e,t){let n=e.x1,r=e.x2,i=t.x1,a=t.x2,o=e.y1,s=e.y2,c=t.y1,l=t.y2,u=(n-r)*(c-l)-(o-s)*(i-a),d=(n*s-o*r)*(i-a)-(n-r)*(i*l-c*a),f=(n*s-o*r)*(c-l)-(o-s)*(i*l-c*a),p=(e,t,n)=>e>=t&&e<=n||e>=n&&e<=t;if(u===0)return!1;{let e={x:d/u,y:f/u};return p(e.x,n,r)&&p(e.y,o,s)&&p(e.x,i,a)&&p(e.y,c,l)}}},j=class extends D{onStart(e){if(this.el=this.createElement(`line`,{fill:`transparent`}),this.attr(`x1`,e.x),this.attr(`y1`,e.y),this.attr(`x2`,e.x),this.attr(`y2`,e.y),this.brush.arrowEnd){let e=v(),t=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);return t.append(b(e,this.brush.color)),t.append(this.el),this.attr(`marker-end`,`url(#${e})`),t}return this.el}onMove(e){if(!this.el)return!1;let{x:t,y:n}=e;if(this.shiftPressed){let r=e.x-this.start.x,i=e.y-this.start.y;if(i!==0){let e=r/i;e=Math.round(e),Math.abs(e)<=1?(t=this.start.x+i*e,n=this.start.y+i):(t=this.start.x+r,n=this.start.y)}}return this.altPressed?(this.attr(`x1`,this.start.x*2-t),this.attr(`y1`,this.start.y*2-n),this.attr(`x2`,t),this.attr(`y2`,n)):(this.attr(`x1`,this.start.x),this.attr(`y1`,this.start.y),this.attr(`x2`,t),this.attr(`y2`,n)),!0}onEnd(){let e=this.el;if(this.el=null,!e)return!1;try{if(e.getTotalLength()<5)return!1}catch{return!1}return!0}},M=class extends D{onStart(e){return this.el=this.createElement(`rect`),this.brush.cornerRadius&&(this.attr(`rx`,this.brush.cornerRadius),this.attr(`ry`,this.brush.cornerRadius)),this.attr(`x`,e.x),this.attr(`y`,e.y),this.el}onMove(e){if(!this.el||!this.start)return!1;let[t,n]=_(e.x-this.start.x),[r,i]=_(e.y-this.start.y);if(this.shiftPressed){let e=Math.min(t,r);t=e,r=e}if(this.altPressed)this.attr(`x`,this.start.x-t),this.attr(`y`,this.start.y-r),this.attr(`width`,t*2),this.attr(`height`,r*2);else{let[e,a]=[this.start.x,this.start.x+t*n].sort(h),[o,s]=[this.start.y,this.start.y+r*i].sort(h);this.attr(`x`,e),this.attr(`y`,o),this.attr(`width`,a-e),this.attr(`height`,s-o)}return!0}onEnd(){let e=this.el;if(this.el=null,!e)return!1;try{if(!e.getTotalLength())return!1}catch{return!1}return!0}};function N(e,t,n,r=e=>e){return e*r(.5-t*(.5-n))}function P(e){return[-e[0],-e[1]]}function F(e,t){return[e[0]+t[0],e[1]+t[1]]}function I(e,t){return[e[0]-t[0],e[1]-t[1]]}function L(e,t){return[e[0]*t,e[1]*t]}function R(e,t){return[e[0]/t,e[1]/t]}function z(e){return[e[1],-e[0]]}function B(e,t){return e[0]*t[0]+e[1]*t[1]}function V(e,t){return e[0]===t[0]&&e[1]===t[1]}function H(e){return Math.hypot(e[0],e[1])}function U(e){return e[0]*e[0]+e[1]*e[1]}function W(e,t){return U(I(e,t))}function G(e){return R(e,H(e))}function K(e,t){return Math.hypot(e[1]-t[1],e[0]-t[0])}function q(e,t,n){let r=Math.sin(n),i=Math.cos(n),a=e[0]-t[0],o=e[1]-t[1],s=a*i-o*r,c=a*r+o*i;return[s+t[0],c+t[1]]}function J(e,t,n){return F(e,L(I(t,e),n))}function Y(e,t,n){return F(e,L(t,n))}var{min:X,PI:Z}=Math,Q=.275,$=Z+1e-4;function ee(e,t={}){let{size:n=16,smoothing:r=.5,thinning:i=.5,simulatePressure:a=!0,easing:o=e=>e,start:s={},end:c={},last:l=!1}=t,{cap:u=!0,easing:d=e=>e*(2-e)}=s,{cap:f=!0,easing:p=e=>--e*e*e+1}=c;if(e.length===0||n<=0)return[];let m=e[e.length-1].runningLength,h=s.taper===!1?0:s.taper===!0?Math.max(n,m):s.taper,g=c.taper===!1?0:c.taper===!0?Math.max(n,m):c.taper,_=(n*r)**2,v=[],y=[],b=e.slice(0,10).reduce((e,t)=>{let r=t.pressure;if(a){let i=X(1,t.distance/n);r=X(1,e+(X(1,1-i)-e)*(i*Q))}return(e+r)/2},e[0].pressure),x=N(n,i,e[e.length-1].pressure,o),S,C=e[0].vector,w=e[0].point,T=w,E=w,D=T,O=!1;for(let t=0;t_)&&(v.push(E),w=E),D=F(s,R),(t<=1||W(T,D)>_)&&(y.push(D),T=D),b=r,C=c}let k=e[0].point.slice(0,2),A=e.length>1?e[e.length-1].point.slice(0,2):F(e[0].point,[1,1]),j=[],M=[];if(e.length===1){if(!(h||g)||l){let e=Y(k,G(z(I(k,A))),-(S||x)),t=[];for(let n=1/13,r=n;r<=1;r+=n)t.push(q(e,k,$*2*r));return t}}else{if(!(h||g&&e.length===1)){if(u)for(let e=1/13,t=e;t<=1;t+=e){let e=q(y[0],k,$*t);j.push(e)}else{let e=I(v[0],y[0]),t=L(e,.5),n=L(e,.51);j.push(I(k,t),I(k,n),F(k,n),F(k,t))}}let t=z(P(e[e.length-1].vector));if(g||h&&e.length===1)M.push(A);else if(f){let e=Y(A,t,x);for(let t=1/29,n=t;n<1;n+=t)M.push(q(e,A,$*3*n))}else M.push(F(A,L(t,x)),F(A,L(t,x*.99)),I(A,L(t,x*.99)),I(A,L(t,x)))}return v.concat(M,y.reverse(),j)}function te(e,t={}){let{streamline:n=.5,size:r=16,last:i=!1}=t;if(e.length===0)return[];let a=.15+(1-n)*.85,o=Array.isArray(e[0])?e:e.map(({x:e,y:t,pressure:n=.5})=>[e,t,n]);if(o.length===2){let e=o[1];o=o.slice(0,-1);for(let t=1;t<5;t++)o.push(J(o[0],e,t/4))}o.length===1&&(o=[...o,[...F(o[0],[1,1]),...o[0].slice(2)]]);let s=[{point:[o[0][0],o[0][1]],pressure:o[0][2]>=0?o[0][2]:.25,vector:[1,1],distance:0,runningLength:0}],c=!1,l=0,u=s[0],d=o.length-1;for(let e=1;e=0?o[e][2]:.5,vector:G(I(u.point,t)),distance:n,runningLength:l},s.push(u)}return s[0].vector=s[1]?.vector||[0,0],s}function ne(e,t={}){return ee(te(e,t),t)}var re=class e extends D{constructor(...e){super(...e),this.points=[]}onStart(e){return this.el=document.createElementNS(`http://www.w3.org/2000/svg`,`path`),this.points=[e],this.attr(`fill`,this.brush.color),this.attr(`d`,this.getSvgData(this.points)),this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&this.points.push(e),this.attr(`d`,this.getSvgData(this.points)),!0}onEnd(){let e=this.el;return this.el=null,!!e}getSvgData(t){return e.getSvgData(t,this.brush)}static getSvgData(e,t){let n=ne(e,{size:t.size,thinning:.9,simulatePressure:!1,start:{taper:5},end:{taper:5},...t.stylusOptions});if(!n.length)return``;let r=n.reduce((e,[t,n],r,i)=>{let[a,o]=i[(r+1)%i.length];return e.push(t,n,(t+a)/2,(n+o)/2),e},[`M`,...n[0],`Q`]);return r.push(`Z`),r.map(e=>typeof e==`number`?e.toFixed(2):e).join(` `)}};function ie(e){return{draw:new O(e),stylus:new re(e),line:new j(e),rectangle:new M(e),ellipse:new k(e),eraseLine:new A(e)}}var ae=class{constructor(e={}){this.options=e,this.el=null,this.svgPoint=null,this.eventEl=null,this.shiftPressed=!1,this.altPressed=!1,this.drawing=!1,this._emitter=m(),this._originalPointerId=null,this._models=ie(this),this._opStack=[],this._opIndex=0,this._disposables=[],this._elements=[],this.options.brush||(this.options.brush={color:`black`,size:3,mode:`stylus`}),e.el&&this.mount(e.el,e.eventTarget,e.window)}get model(){return this._models[this.mode]}get mounted(){return!!this.el}get mode(){return this.options.brush.mode||`stylus`}set mode(e){this._models[this.mode].onUnselected(),this.options.brush.mode=e,this.model.onSelected(this.el)}get brush(){return this.options.brush}set brush(e){this.options.brush=e}resolveSelector(e){return typeof e==`string`?document.querySelector(e):e||null}mount(e,t,n=window){if(this.el)throw Error(`[drauu] already mounted, unmount previous target first`);if(this.el=this.resolveSelector(e),!this.el)throw Error(`[drauu] target element not found`);if(this.el.tagName.toLocaleLowerCase()!==`svg`)throw Error(`[drauu] can only mount to a SVG element`);if(!this.el.createSVGPoint)throw Error(`[drauu] SVG element must be create by document.createElementNS('http://www.w3.org/2000/svg', 'svg')`);this.svgPoint=this.el.createSVGPoint();let r=this.resolveSelector(t)||this.el,i=this.eventStart.bind(this),a=this.eventMove.bind(this),o=this.eventEnd.bind(this),s=this.eventKeyboard.bind(this),c=this.touchMove.bind(this);r.addEventListener(`pointerdown`,i,{passive:!1}),n.addEventListener(`pointermove`,a,{passive:!1}),n.addEventListener(`pointerup`,o,{passive:!1}),n.addEventListener(`pointercancel`,o,{passive:!1}),n.addEventListener(`keydown`,s,!1),n.addEventListener(`keyup`,s,!1),n.addEventListener(`touchmove`,c,{passive:!1}),this._disposables.push(()=>{r.removeEventListener(`pointerdown`,i),n.removeEventListener(`pointermove`,a),n.removeEventListener(`pointerup`,o),n.removeEventListener(`pointercancel`,o),n.removeEventListener(`keydown`,s,!1),n.removeEventListener(`keyup`,s,!1),n.removeEventListener(`touchmove`,c)}),this._emitter.emit(`mounted`)}unmount(){this._disposables.forEach(e=>e()),this._disposables.length=0,this._elements.length=0,this.el=null,this._emitter.emit(`unmounted`)}on(e,t){return this._emitter.on(e,t)}undo(){return!this.canUndo()||this.drawing?!1:(this._opStack[--this._opIndex].undo(),this._emitter.emit(`changed`),!0)}redo(){return!this.canRedo()||this.drawing?!1:(this._opStack[this._opIndex++].redo(),this._emitter.emit(`changed`),!0)}canRedo(){return this._opIndex0}eventMove(e){!this.acceptsInput(e)||!this.drawing||this.model._eventMove(e)&&(e.stopPropagation(),e.preventDefault(),this._emitter.emit(`changed`))}eventStart(e){this.acceptsInput(e)&&(e.stopPropagation(),e.preventDefault(),this._currentNode&&this.cancel(),this.drawing=!0,this._originalPointerId=e.pointerId,this._emitter.emit(`start`),this._currentNode=this.model._eventDown(e),this._currentNode&&this.mode!==`eraseLine`&&this.el.appendChild(this._currentNode),this._emitter.emit(`changed`))}eventEnd(e){if(!this.acceptsInput(e)||!this.drawing)return;let t=this.model._eventUp(e);if(!t)this.cancel();else if(t===!0){let e=this._currentNode;e&&(this._appendNode(e),this.commit({undo:()=>this._removeNode(e),redo:()=>this._restoreNode(e)}))}else this.commit(t);this.drawing=!1,this._emitter.emit(`end`),this._emitter.emit(`changed`),this._originalPointerId=null}touchMove(e){Array.from(e.touches).some(e=>e.touchType===`stylus`&&e.identifier===this._originalPointerId)&&e.preventDefault()}acceptsInput(e){return(!this.options.acceptsInputTypes||this.options.acceptsInputTypes.includes(e.pointerType))&&!(this._originalPointerId&&this._originalPointerId!==e.pointerId)}eventKeyboard(e){(this.shiftPressed!==e.shiftKey||this.altPressed!==e.altKey)&&(this.shiftPressed=e.shiftKey,this.altPressed=e.altKey,this.model.point&&this.model.onMove(this.model.point)&&this._emitter.emit(`changed`))}commit(e){this._opStack.length=this._opIndex,this._opStack.push(e),this._opIndex++;let t=this._currentNode;this._currentNode=void 0,this._emitter.emit(`committed`,t)}clear(){this._opStack.length=0,this._opIndex=0,this._elements=[],this.cancel(),this.el.innerHTML=``,this._emitter.emit(`changed`)}cancel(){this._currentNode&&(this.el.removeChild(this._currentNode),this._currentNode=void 0,this._emitter.emit(`canceled`))}dump(){return this.el.innerHTML}load(e){this.clear(),this.el.innerHTML=e}_appendNode(e){let t=this._elements.at(-1);t?t.after(e):this.el.append(e);let n=this._elements.push(e)-1;e.dataset.drauu_index=n.toString()}_removeNode(e){e.remove(),this._elements[+e.dataset.drauu_index]=null}_restoreNode(e){let t=+e.dataset.drauu_index;this._elements[t]=e;for(let n=t-1;n>=0;n--){let t=this._elements[n];if(t){t.after(e);return}}this.el.prepend(e)}};function oe(e){return new ae(e)}var se=l(()=>{let{currentSlideNo:l,isPresenter:m}=s(),h=[`#ff595e`,`#ffca3a`,`#8ac926`,`#1982c4`,`#6a4c93`,`#ffffff`,`#000000`],g=u(`slidev-drawing-enabled`,!1),_=u(`slidev-drawing-pinned`,!1),v=u(`slidev-drawing-brush`,{color:h[0],size:4,mode:`stylus`}),y=a(!1),b=a(!1),x=a(!1),S=a(!1),C=a(`stylus`),w=r(()=>c.drawings.syncAll||m.value),T=!1,E=r({get(){return C.value},set(e){C.value=e,e===`arrow`?(O.mode=`line`,v.value.arrowEnd=!0):(O.mode=e,v.value.arrowEnd=!1)}}),D=n({brush:v,acceptsInputTypes:r(()=>g.value&&(!c.drawings.presenterOnly||m.value)?void 0:[`pen`]),coordinateTransform:!1}),O=i(oe(D));function k(){O.clear(),w.value&&f(l.value,``)}function A(){x.value=O.canRedo(),b.value=O.canUndo(),S.value=!!O.el?.children.length}function j(e){T=!0;let t=p[e||l.value];t==null?O.clear():O.load(t),A(),T=!1}return O.on(`changed`,()=>{if(A(),!T){let e=O.dump(),t=l.value;(p[t]||``)!==e&&w.value&&f(t,O.dump())}}),d(e=>{T=!0,e[l.value]!=null&&O.load(e[l.value]||``),T=!1,A()}),e(()=>{t(l,()=>{O.mounted&&j()},{immediate:!0})}),O.on(`start`,()=>y.value=!0),O.on(`end`,()=>y.value=!1),window.addEventListener(`keydown`,e=>{if(!g.value||o.value)return;let t=!e.ctrlKey&&!e.altKey&&!e.shiftKey&&!e.metaKey,n=!0;e.code===`KeyZ`&&(e.ctrlKey||e.metaKey)?e.shiftKey?O.redo():O.undo():e.code===`Escape`?g.value=!1:e.code===`KeyL`&&t?E.value=`line`:e.code===`KeyA`&&t?E.value=`arrow`:e.code===`KeyS`&&t?E.value=`stylus`:e.code===`KeyR`&&t?E.value=`rectangle`:e.code===`KeyE`&&t?E.value=`ellipse`:e.code===`KeyC`&&t?k():e.code.startsWith(`Digit`)&&t&&+e.code[5]<=h.length?v.value.color=h[e.code[5]-1]:n=!1,n&&(e.preventDefault(),e.stopPropagation())},!1),{brush:v,brushColors:h,canClear:S,canRedo:x,canUndo:b,clear:k,drauu:O,drauuOptions:D,drawingEnabled:g,drawingMode:E,drawingPinned:_,drawingState:p,isDrawing:y,loadCanvas:j}});export{se as t}; \ No newline at end of file diff --git a/lecture-07/assets/useGenerative-CHz-zeSD.css b/lecture-07/assets/useGenerative-CHz-zeSD.css new file mode 100644 index 0000000000000000000000000000000000000000..2a8947d85f1b6dab669a2de18663cc63b25d76e0 --- /dev/null +++ b/lecture-07/assets/useGenerative-CHz-zeSD.css @@ -0,0 +1 @@ +.dl-widget[data-v-0f64089e]{flex-direction:column;gap:.6rem;width:100%;height:100%;min-height:0;display:flex}.dl-widget.is-controls-first[data-v-0f64089e]{flex-direction:column-reverse;justify-content:flex-end}.dl-widget__stage[data-v-0f64089e]{flex:auto;justify-content:center;align-items:center;min-height:0;display:flex}.dl-widget__controls[data-v-0f64089e]{flex-wrap:wrap;flex:none;align-items:center;gap:.5rem 1.2rem;display:flex}.dl-widget__controls[data-v-0f64089e]:empty,.dl-widget__readout[data-v-0f64089e]:empty{display:none}.dl-widget__readout[data-v-0f64089e]{color:var(--dl-muted);font-variant-numeric:tabular-nums;flex:none;font-size:.82rem}.dl-btn[data-v-f82500e8]{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:.35rem;padding:.32rem .75rem;font-size:.82rem;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}.dl-btn[data-v-f82500e8]:disabled{opacity:.4;cursor:not-allowed}.dl-btn[data-v-f82500e8]:focus-visible{outline:2px solid var(--dl-accent);outline-offset:2px}.is-primary[data-v-f82500e8]{background:var(--dl-accent);color:#fff}.is-primary[data-v-f82500e8]:not(:disabled):hover{background:var(--dl-accent-strong)}.is-ghost[data-v-f82500e8]{border-color:var(--dl-border);color:var(--dl-body);background:0 0}.is-ghost[data-v-f82500e8]:not(:disabled):hover{border-color:var(--dl-accent);color:var(--dl-accent)}.dl-btn__glyph[data-v-f82500e8]{font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:.9em} diff --git a/lecture-07/assets/useGenerative-DDHg2gzY.js b/lecture-07/assets/useGenerative-DDHg2gzY.js new file mode 100644 index 0000000000000000000000000000000000000000..0de9664e859f61131748883f875df2a5fe401d3a --- /dev/null +++ b/lecture-07/assets/useGenerative-DDHg2gzY.js @@ -0,0 +1 @@ +import{H as e,St as t,_ as n,b as r,w as i,x as a,xt as o,y as s,yt as c,z as l}from"./modules/shiki-CkJq9tSf.js";import{t as u}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as d}from"./slidev/context-DnYiQGy6.js";var f={class:`dl-widget__stage`},p={class:`dl-widget__controls`},m={class:`dl-widget__readout`},h=u(i({__name:`WidgetFrame`,props:{maxWidth:{default:`100%`},controlsFirst:{type:Boolean}},setup(t){let{$slidev:i,$nav:a,$clicksContext:s,$clicks:u,$page:h,$renderContext:g,$frontmatter:_}=d(),v=t;return(t,i)=>(l(),r(`div`,{class:c([`dl-widget`,{"is-controls-first":v.controlsFirst}]),style:o({maxWidth:v.maxWidth})},[n(`div`,f,[e(t.$slots,`default`,{},void 0,!0)]),n(`div`,p,[e(t.$slots,`controls`,{},void 0,!0)]),n(`div`,m,[e(t.$slots,`readout`,{},void 0,!0)])],6))}}),[[`__scopeId`,`data-v-0f64089e`]]),g=[`disabled`],_={key:0,class:`dl-btn__glyph`,"aria-hidden":`true`},v=u(i({__name:`StepButton`,props:{label:{},variant:{default:`primary`},disabled:{type:Boolean,default:!1},glyph:{}},emits:[`click`],setup(e,{emit:n}){let{$slidev:i,$nav:o,$clicksContext:u,$clicks:f,$page:p,$renderContext:m,$frontmatter:h}=d(),v=e,y=n;return(e,n)=>(l(),r(`button`,{type:`button`,class:c([`dl-btn`,`is-${v.variant}`]),disabled:v.disabled,onClick:n[0]||=e=>y(`click`)},[v.glyph?(l(),r(`span`,_,t(v.glyph),1)):s(`v-if`,!0),a(` `+t(v.label),1)],10,g))}}),[[`__scopeId`,`data-v-f82500e8`]]);function y(e){let t=e>>>0||1;return()=>(t=Math.imul(t,1664525)+1013904223>>>0,t/2**32)}function b(e){let t=y(e),n=null;return()=>{if(n!==null){let e=n;return n=null,e}let e=0,r=0,i=0;do e=t()*2-1,r=t()*2-1,i=e*e+r*r;while(i===0||i>=1);let a=Math.sqrt(-2*Math.log(i)/i);return n=r*a,e*a}}var x=[1/3,1/3,1/3],S=[.2,.5,.3],C=[0,1,0],w=[0,0,1];function T(e){let t=e.reduce((e,t)=>e+t,0);return t>0?e.map(e=>e/t):e.map(()=>1/e.length)}function E(e,t){return e.map((e,n)=>e+t[n]>0?e/(e+t[n]):.5)}function D(e,t,n){let r=0;for(let i=0;i0&&(r+=e[i]*Math.log(Math.max(n[i],1e-12))),t[i]>0&&(r+=t[i]*Math.log(Math.max(1-n[i],1e-12)));return r}function O(e,t){let n=0;for(let r=0;r(e+t[n])/2);return(O(e,n)+O(t,n))/2}function A(e,t){return Math.max(...e.map((e,n)=>Math.abs(e-t[n])))}function j(e,t){let n=0,r=0,i=0;for(let a=0;ae-t);return n.slice(1).map((e,t)=>({mid:(e+n[t])/2,width:e-n[t]})).sort((e,t)=>t.width-e.width).slice(0,t).map(e=>e.mid)}function V(e,t){let n=e.map((e,t)=>({z:e,i:t})).sort((e,t)=>e.z-t.z),r=Array(e.length);for(let e=0;ee*(1-i)+r[t]*i)}function H(e){return .4*Math.min(Math.max(e,0),1)}function U(e,t,n){let r=Math.min(Math.max(n,0),1);if(r<=0)return t;let i=J(t),a=Math.min(Math.max(Math.round(i*e.length-.5),0),e.length-1);return t*(1-r)+e[a]*r}function W(e,t,n){return I(U(e,t,n))}function G(e,t,n){let r=Math.max(t,.035);return n.map(t=>{let n=0;for(let i of e)n+=Math.exp(-((t-i)**2)/(2*r*r))/(r*Math.sqrt(2*Math.PI));return n/e.length})}function K(e,t,n=3.4,r=140){let i=Array.from({length:r},(e,t)=>-n+2*n*(t+.5)/r),a=2*n/r,o=G(e,t,i),s=o.reduce((e,t)=>e+t,0)*a,c=0;for(let e=0;e.97575){let t=Math.sqrt(-2*Math.log(1-e));return-(((((r[0]*t+r[1])*t+r[2])*t+r[3])*t+r[4])*t+r[5])/((((i[0]*t+i[1])*t+i[2])*t+i[3])*t+1)}let a=e-.5,o=a*a;return(((((t[0]*o+t[1])*o+t[2])*o+t[3])*o+t[4])*o+t[5])*a/(((((n[0]*o+n[1])*o+n[2])*o+n[3])*o+n[4])*o+1)}function J(e){let t=1/(1+.2316419*Math.abs(e)),n=.3989422804014327*Math.exp(-e*e/2)*t*(.31938153+t*(-.356563782+t*(1.781477937+t*(-1.821255978+t*1.330274429))));return e>=0?1-n:n}function Y(e=48,t=1e-4,n=.28){let r=[],i=[],a=1;for(let o=0;o{let o=e.x-r*t.x,s=e.y-r*t.y;return Math.log(Math.max(n[a],1e-12))-(o*o+s*s)/(2*i)}),o=Math.max(...a),s=a.map(e=>Math.exp(e-o)),c=s.reduce((e,t)=>e+t,0),l=0,u=0;for(let t=0;t+(t===n)));return{x:i.x+r*(a.x-i.x),y:i.y+r*(a.y-i.y)}}function $(e,t,n,r=Z(e,t)){let i=Math.sqrt(1-t),a={x:-i*r.x,y:-i*r.y},o=Math.sqrt(t),s={x:(e.x-i*a.x)/o,y:(e.y-i*a.y)/o},c=Math.sqrt(n),l=Math.sqrt(1-n);return{x:c*s.x+l*a.x,y:c*s.y+l*a.y}}function ee(e=48,t=5150){let n=b(t);return Array.from({length:e},()=>({x:n(),y:n()}))}function te(e,t,n){let r=(e-1)*n+t,i=Array.from({length:r},()=>Array(r).fill(0));for(let r=0;ri.map(i=>d[i]); +import{C as e,L as t,N as n,O as r,R as i,St as a,X as o,_ as s,_t as c,b as l,ct as u,dt as d,g as f,it as ee,m as te,mt as p,pt as ne,ut as m,vt as re,w as ie,y as ae,z as oe}from"./modules/shiki-CkJq9tSf.js";import{t as se}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{A as ce,B as le,D as ue,E as de,L as fe,V as pe,_ as me,a as he,c as ge,g as h,h as _e,j as ve,l as ye}from"./modules/vue-Dz2ojcKF.js";import{l as be,y as xe}from"./slidev/context-DnYiQGy6.js";function Se(e,t,n){return Math.min(n,Math.max(t,e))}function Ce(...e){return Te(e).reduce((e,t)=>e+t,0)}function we(e){return e??=[],Array.isArray(e)?e:[e]}function Te(e){return we(e).flat(1)}function Ee(e){return Array.from(new Set(e))}function De(...e){let t,n,r;e.length===1?(t=0,r=1,[n]=e):[t,n,r=1]=e;let i=[],a=t;for(;at(e,n)).filter(Oe))}var g={theme:`dl2026`,title:`Generative Models and GANs`,titleTemplate:`%s - Slidev`,addons:[`dl2026`],remoteAssets:!1,monaco:!0,monacoTypesSource:`local`,monacoTypesAdditionalPackages:[],monacoTypesIgnorePackages:[],monacoRunAdditionalDeps:[],monacoRunUseStrict:!0,download:`./slides.pdf`,export:{},info:`

PGR207 Deep Learning 2026 — Lecture 07

+`,highlighter:`shiki`,twoslash:!0,lineNumbers:!1,colorSchema:`auto`,routerMode:`hash`,aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:``,selectable:!1,themeConfig:{courseCode:`PGR207`,lecture:`07`,lectureTitle:`Generative Models and GANs`},fonts:{sans:[`"Inter"`,`ui-sans-serif`,`system-ui`,`-apple-system`,`BlinkMacSystemFont`,`"Segoe UI"`,`Roboto`,`"Helvetica Neue"`,`Arial`,`"Noto Sans"`,`sans-serif`,`"Apple Color Emoji"`,`"Segoe UI Emoji"`,`"Segoe UI Symbol"`,`"Noto Color Emoji"`],serif:[`"Source Serif 4"`,`ui-serif`,`Georgia`,`Cambria`,`"Times New Roman"`,`Times`,`serif`],mono:[`"JetBrains Mono"`,`ui-monospace`,`SFMono-Regular`,`Menlo`,`Monaco`,`Consolas`,`"Liberation Mono"`,`"Courier New"`,`monospace`],webfonts:[`Inter`,`Source Serif 4`,`JetBrains Mono`],provider:`google`,local:[],italic:!1,weights:[`200`,`400`,`600`]},favicon:`https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png`,drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:`https://www.plantuml.com/plantuml`,codeCopy:!0,magicMoveCopy:!0,author:`Vajira Thambawita`,record:`dev`,css:`unocss`,presenter:!0,browserExporter:`dev`,htmlAttrs:{},transition:`slide-left`,editor:!0,mcp:!0,contextMenu:null,wakeLock:!0,pwa:!1,mdc:!0,comark:!1,seoMeta:{},notesAutoRuby:{},duration:`30min`,timer:`stopwatch`,magicMoveDuration:800,preloadImages:!0,clickAnimation:``,layout:`title`,courseCode:`PGR207`,lecture:`07`,email:`vajira@simula.no`,slidesTitle:`Generative Models and GANs - Slidev`},Ae=`build`,je=f(()=>g.aspectRatio),Me=f(()=>g.canvasWidth),Ne=f(()=>Math.ceil(Me.value/je.value)),Pe=f(()=>ke(g.themeConfig||{},(e,t)=>[`--slidev-theme-${e}`,t])),Fe=g.slidesTitle,Ie=`./#/`,Le=`modulepreload`,Re=function(e,t){return new URL(e,t).href},ze={},_=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=Re(t,n),t=s(t),t in ze)return;ze[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:Le,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};function Be(e){if(e===!1||e===`false`)return null;if(e==null||e===!0||e===`true`)return`+1`;if(typeof e==`string`&&`+-`.includes(e[0]))return e;let t=+e;return Number.isNaN(t)?(console.error(`Invalid "at" prop value: ${e}`),null):t<=0?(console.warn(`[Slidev] "at" prop value must be greater than 0, but got ${e}, has been set to 1`),1):t}function Ve(e){return Array.isArray(e)?[Be(e[0]),Be(e[1])]:null}function He(e,n=0,r){let a=m(!1),o=new Map,s=new Map,c={get current(){return Se(+e.value,n,c.total)},set current(t){e.value=a.value?Se(t,n,c.total):t},clicksStart:n,get relativeSizeMap(){return o},get maxMap(){return s},get isMounted(){return a.value},setup(){t(()=>{a.value=!0,s=d(s),ee(e)||(c.current=e.value)}),i(()=>{a.value=!1,o=new Map,s=new Map})},calculateSince(e,t=1){let n=Be(e);if(n==null)return null;let r,i,a;if(typeof n==`string`){let e=c.currentOffset,o=+n;r=e+o,i=e+o+t-1,a=o+t-1}else r=n,i=n+t-1,a=0;return{start:r,end:1/0,max:i,delta:a,currentOffset:f(()=>c.current-r),isCurrent:f(()=>c.current===r),isActive:f(()=>c.current>=r)}},calculateRange(e){let t=Ve(e);if(t==null)return null;let[n,r]=t,i,a,o;return typeof n==`string`?(i=c.currentOffset+ +n,o=+n):(i=n,o=0),typeof r==`string`?(a=i+ +r,o+=+r):a=r,{start:i,end:a,max:a,delta:o,currentOffset:f(()=>c.current-i),isCurrent:f(()=>c.current===i),isActive:f(()=>i<=c.current&&c.currentc(t),e=>{r.value=Math.max(e,n)}),He(r,n,e?.meta?.clicks)}var We=/[a-z]/i;function Ge(e){if(typeof e==`number`)return{seconds:e,relative:!1};let t=e.startsWith(`+`);t&&(e=e.slice(1));let n=0;if(e.includes(`:`)){let t=e.split(`:`).map(Number),r=0,i=0,a=0;if(t.length===3)r=t[0],i=t[1],a=t[2];else if(t.length===2)i=t[0],a=t[1];else if(t.length===1)a=t[0];else throw TypeError(`Invalid timestamp format`);if(Number.isNaN(r)||Number.isNaN(i)||Number.isNaN(a))throw TypeError(`Invalid timestamp format`);n=(r||0)*3600+(i||0)*60+(a||0)}else if(!We.test(e))n=Number(e);else{let t={s:1,sec:1,secs:1,m:60,min:60,mins:60,h:3600,hr:3600,hrs:3600,hour:3600,hours:3600,day:86400,days:86400,week:604800,weeks:604800,month:2629746,months:2629746,year:31556952,years:31556952},r=/([\d.]+)([a-z]+)/gi,i=e.matchAll(r);if(i)for(let e of i){let r=Number(e[1]);if(Number.isNaN(r))throw TypeError(`Invalid timestamp value: ${e[1]}`);let i=e[2].toLowerCase();if(!(i in t))throw TypeError(`Invalid timestamp unit: ${i}`);n+=r*t[i]}let a=e.replace(r,``).trim();if(a)throw TypeError(`Unknown timestamp remaining: ${a}`)}return{seconds:n,relative:t}}function Ke(e,t){if(!t||t===`all`||t===`*`)return De(1,e+1);if(t===`none`)return[];let n=[];for(let r of t.split(/[,;]/g))if(!r.includes(`-`))n.push(+r);else{let[t,i]=r.split(`-`,2);n.push(...De(+t,i?+i+1:e+1))}return Ee(n).filter(t=>t<=e).sort((e,t)=>e-t)}var qe={},Je={class:`px-4 py-10 text-center text-red-700 dark:text-red-500 font-bold font-mono`};function Ye(e,t){return oe(),l(`div`,Je,a(`Failed to fetch this slide. Please check your network connection.`))}var v=se(qe,[[`render`,Ye]]),Xe={class:`h-full w-full flex items-center justify-center gap-2 slidev-slide-loading`},Ze=ie({__name:`SlideLoading`,setup(e){let n=m(!1);return t(()=>{setTimeout(()=>{n.value=!0},200)}),(e,t)=>(oe(),l(`div`,Xe,[n.value?(oe(),l(te,{key:0},[t[0]||=s(`div`,{class:`i-svg-spinners-90-ring-with-bg text-xl`},null,-1),t[1]||=s(`div`,null,`Loading slide...`,-1)],64)):ae(`v-if`,!0)]))}}),Qe=u({theme:`dl2026`,addons:[`dl2026`],title:`Generative Models and GANs`,info:`PGR207 Deep Learning 2026 — Lecture 07`,author:`Vajira Thambawita`,routerMode:`hash`,transition:`slide-left`,mdc:!0,themeConfig:{courseCode:`PGR207`,lecture:`07`,lectureTitle:`Generative Models and GANs`},layout:`title`,courseCode:`PGR207`,lecture:`07`,email:`vajira@simula.no`}),$e=d({get layout(){return Qe.layout},get transition(){return Qe.transition},get class(){return Qe.class},get clicks(){return Qe.clicks},get name(){return Qe.name},get preload(){return Qe.preload},slide:{content:``,revision:`-ib6rgf`,frontmatterRaw:`theme: dl2026 +addons: + - dl2026 +title: Generative Models and GANs +info: PGR207 Deep Learning 2026 — Lecture 07 +author: Vajira Thambawita +routerMode: hash +transition: slide-left +mdc: true +themeConfig: + courseCode: PGR207 + lecture: "07" + lectureTitle: Generative Models and GANs +layout: title +courseCode: PGR207 +lecture: "07" +email: vajira@simula.no +`,note:``,title:`Generative Models and GANs`,index:0,noteHTML:``,images:[],raw:``,frontmatter:Qe,filepath:``,start:0,sourceIndex:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),et=u({layout:`interactive`,heading:`Where we are`,title:`Where we are`,"aside-width":`15rem`}),tt=d({get layout(){return et.layout},get transition(){return et.transition},get class(){return et.class},get clicks(){return et.clicks},get name(){return et.name},get preload(){return et.preload},slide:{content:``,revision:`t9pv1g`,frontmatterRaw:`layout: interactive +heading: Where we are +title: Where we are +aside-width: 15rem +`,note:``,title:`Where we are`,index:1,noteHTML:``,images:[],raw:``,frontmatter:et,filepath:``,start:46,sourceIndex:1,id:1,no:2},__clicksContext:null,__preloaded:!1}),nt=u({layout:`section`,index:`00`}),rt=d({get layout(){return nt.layout},get transition(){return nt.transition},get class(){return nt.class},get clicks(){return nt.clicks},get name(){return nt.name},get preload(){return nt.preload},slide:{content:``,revision:`4j5zy1`,frontmatterRaw:`layout: section +index: "00" +`,note:``,title:`You already have a generative model`,level:1,index:2,noteHTML:``,images:[],raw:``,frontmatter:nt,filepath:``,start:71,sourceIndex:2,id:2,no:3},__clicksContext:null,__preloaded:!1}),y=u({layout:`default`,title:`What last week left you holding`}),it=d({get layout(){return y.layout},get transition(){return y.transition},get class(){return y.class},get clicks(){return y.clicks},get name(){return y.name},get preload(){return y.preload},slide:{content:``,revision:`yunumq`,frontmatterRaw:`layout: default +title: What last week left you holding +`,note:``,title:`What last week left you holding`,index:3,noteHTML:``,images:[],raw:``,frontmatter:y,filepath:``,start:78,sourceIndex:3,id:3,no:4},__clicksContext:null,__preloaded:!1}),b=u({layout:`default`,title:`Now do it for a picture`}),at=d({get layout(){return b.layout},get transition(){return b.transition},get class(){return b.class},get clicks(){return b.clicks},get name(){return b.name},get preload(){return b.preload},slide:{content:``,revision:`-zdva5b`,frontmatterRaw:`layout: default +title: Now do it for a picture +`,note:``,title:`Now do it for a picture`,index:4,noteHTML:``,images:[],raw:``,frontmatter:b,filepath:``,start:120,sourceIndex:4,id:4,no:5},__clicksContext:null,__preloaded:!1}),x=u({layout:`default`,title:`Two kinds of model`}),ot=d({get layout(){return x.layout},get transition(){return x.transition},get class(){return x.class},get clicks(){return x.clicks},get name(){return x.name},get preload(){return x.preload},slide:{content:``,revision:`-1cvjxk`,frontmatterRaw:`layout: default +title: Two kinds of model +`,note:``,title:`Two kinds of model`,index:5,noteHTML:``,images:[],raw:``,frontmatter:x,filepath:``,start:174,sourceIndex:5,id:5,no:6},__clicksContext:null,__preloaded:!1}),S=u({layout:`default`,title:`The deal every model today makes`}),st=d({get layout(){return S.layout},get transition(){return S.transition},get class(){return S.class},get clicks(){return S.clicks},get name(){return S.name},get preload(){return S.preload},slide:{content:``,revision:`-58igsn`,frontmatterRaw:`layout: default +title: The deal every model today makes +`,note:``,title:`The deal every model today makes`,index:6,noteHTML:``,images:[],raw:``,frontmatter:S,filepath:``,start:220,sourceIndex:6,id:6,no:7},__clicksContext:null,__preloaded:!1}),C=u({layout:`default`,title:`Which loss can you even compute?`}),ct=d({get layout(){return C.layout},get transition(){return C.transition},get class(){return C.class},get clicks(){return C.clicks},get name(){return C.name},get preload(){return C.preload},slide:{content:``,revision:`-16f6hg`,frontmatterRaw:`layout: default +title: Which loss can you even compute? +`,note:``,title:`Which loss can you even compute?`,index:7,noteHTML:``,images:[],raw:``,frontmatter:C,filepath:``,start:273,sourceIndex:7,id:7,no:8},__clicksContext:null,__preloaded:!1}),w=u({layout:`default`}),lt=d({get layout(){return w.layout},get transition(){return w.transition},get class(){return w.class},get clicks(){return w.clicks},get name(){return w.name},get preload(){return w.preload},slide:{content:``,revision:`j04hu9`,frontmatterRaw:`layout: default +`,note:``,index:8,noteHTML:``,images:[],raw:``,frontmatter:w,filepath:``,start:312,sourceIndex:8,id:8,no:9},__clicksContext:null,__preloaded:!1}),T=u({layout:`section`,index:`01`}),ut=d({get layout(){return T.layout},get transition(){return T.transition},get class(){return T.class},get clicks(){return T.clicks},get name(){return T.name},get preload(){return T.preload},slide:{content:``,revision:`-lnsmbh`,frontmatterRaw:`layout: section +index: "01" +`,note:``,title:`Compress first: autoencoders`,level:1,index:9,noteHTML:``,images:[],raw:``,frontmatter:T,filepath:``,start:352,sourceIndex:9,id:9,no:10},__clicksContext:null,__preloaded:!1}),E=u({layout:`default`,title:`The autoencoder`}),dt=d({get layout(){return E.layout},get transition(){return E.transition},get class(){return E.class},get clicks(){return E.clicks},get name(){return E.name},get preload(){return E.preload},slide:{content:``,revision:`-1d59g3`,frontmatterRaw:`layout: default +title: The autoencoder +`,note:``,title:`The autoencoder`,index:10,noteHTML:``,images:[],raw:``,frontmatter:E,filepath:``,start:359,sourceIndex:10,id:10,no:11},__clicksContext:null,__preloaded:!1}),D=u({layout:`default`,title:`How wide is the middle?`}),ft=d({get layout(){return D.layout},get transition(){return D.transition},get class(){return D.class},get clicks(){return D.clicks},get name(){return D.name},get preload(){return D.preload},slide:{content:``,revision:`3o7p33`,frontmatterRaw:`layout: default +title: How wide is the middle? +`,note:``,title:`How wide is the middle?`,index:11,noteHTML:``,images:[],raw:``,frontmatter:D,filepath:``,start:415,sourceIndex:11,id:11,no:12},__clicksContext:null,__preloaded:!1}),O=u({layout:`interactive`,heading:`The bottleneck, and what it costs`,title:`The bottleneck, and what it costs`,"aside-width":`18rem`}),pt=d({get layout(){return O.layout},get transition(){return O.transition},get class(){return O.class},get clicks(){return O.clicks},get name(){return O.name},get preload(){return O.preload},slide:{content:``,revision:`-hahacb`,frontmatterRaw:`layout: interactive +heading: The bottleneck, and what it costs +title: The bottleneck, and what it costs +aside-width: 18rem +`,note:``,title:`The bottleneck, and what it costs`,index:12,noteHTML:``,images:[],raw:``,frontmatter:O,filepath:``,start:471,sourceIndex:12,id:12,no:13},__clicksContext:null,__preloaded:!1}),k=u({layout:`default`,title:`What autoencoders are actually for`}),mt=d({get layout(){return k.layout},get transition(){return k.transition},get class(){return k.class},get clicks(){return k.clicks},get name(){return k.name},get preload(){return k.preload},slide:{content:``,revision:`-hgtc2o`,frontmatterRaw:`layout: default +title: What autoencoders are actually for +`,note:``,title:`What autoencoders are actually for`,index:13,noteHTML:``,images:[],raw:``,frontmatter:k,filepath:``,start:509,sourceIndex:13,id:13,no:14},__clicksContext:null,__preloaded:!1}),A=u({layout:`interactive`,heading:`Now sample from it`,title:`Now sample from it`,"aside-width":`18rem`}),ht=d({get layout(){return A.layout},get transition(){return A.transition},get class(){return A.class},get clicks(){return A.clicks},get name(){return A.name},get preload(){return A.preload},slide:{content:``,revision:`bcinke`,frontmatterRaw:`layout: interactive +heading: Now sample from it +title: Now sample from it +aside-width: 18rem +`,note:``,title:`Now sample from it`,index:14,noteHTML:``,images:[],raw:``,frontmatter:A,filepath:``,start:545,sourceIndex:14,id:14,no:15},__clicksContext:null,__preloaded:!1}),j=u({layout:`default`,title:`An autoencoder in PyTorch`}),gt=d({get layout(){return j.layout},get transition(){return j.transition},get class(){return j.class},get clicks(){return j.clicks},get name(){return j.name},get preload(){return j.preload},slide:{content:``,revision:`-7tkbam`,frontmatterRaw:`layout: default +title: An autoencoder in PyTorch +`,note:``,title:`An autoencoder in PyTorch`,index:15,noteHTML:``,images:[],raw:``,frontmatter:j,filepath:``,start:585,sourceIndex:15,id:15,no:16},__clicksContext:null,__preloaded:!1}),M=u({layout:`default`}),_t=d({get layout(){return M.layout},get transition(){return M.transition},get class(){return M.class},get clicks(){return M.clicks},get name(){return M.name},get preload(){return M.preload},slide:{content:``,revision:`-k1kegw`,frontmatterRaw:`layout: default +`,note:``,index:16,noteHTML:``,images:[],raw:``,frontmatter:M,filepath:``,start:626,sourceIndex:16,id:16,no:17},__clicksContext:null,__preloaded:!1}),N=u({layout:`section`,index:`02`}),vt=d({get layout(){return N.layout},get transition(){return N.transition},get class(){return N.class},get clicks(){return N.clicks},get name(){return N.name},get preload(){return N.preload},slide:{content:``,revision:`-gvyjtr`,frontmatterRaw:`layout: section +index: "02" +`,note:``,title:`Make the latent behave: VAEs`,level:1,index:17,noteHTML:``,images:[],raw:``,frontmatter:N,filepath:``,start:664,sourceIndex:17,id:17,no:18},__clicksContext:null,__preloaded:!1}),P=u({layout:`default`,title:`Two changes, and only two`}),yt=d({get layout(){return P.layout},get transition(){return P.transition},get class(){return P.class},get clicks(){return P.clicks},get name(){return P.name},get preload(){return P.preload},slide:{content:``,revision:`-d0nl0l`,frontmatterRaw:`layout: default +title: Two changes, and only two +`,note:``,title:`Two changes, and only two`,index:18,noteHTML:``,images:[],raw:``,frontmatter:P,filepath:``,start:671,sourceIndex:18,id:18,no:19},__clicksContext:null,__preloaded:!1}),F=u({layout:`default`,title:`The objective, in two terms`}),bt=d({get layout(){return F.layout},get transition(){return F.transition},get class(){return F.class},get clicks(){return F.clicks},get name(){return F.name},get preload(){return F.preload},slide:{content:``,revision:`-2dqsh1`,frontmatterRaw:`layout: default +title: The objective, in two terms +`,note:``,title:`The objective, in two terms`,index:19,noteHTML:``,images:[],raw:``,frontmatter:F,filepath:``,start:723,sourceIndex:19,id:19,no:20},__clicksContext:null,__preloaded:!1}),I=u({layout:`default`,title:`You cannot backpropagate through a sample`}),xt=d({get layout(){return I.layout},get transition(){return I.transition},get class(){return I.class},get clicks(){return I.clicks},get name(){return I.name},get preload(){return I.preload},slide:{content:``,revision:`qx0a0v`,frontmatterRaw:`layout: default +title: You cannot backpropagate through a sample +`,note:``,title:`You cannot backpropagate through a sample`,index:20,noteHTML:``,images:[],raw:``,frontmatter:I,filepath:``,start:766,sourceIndex:20,id:20,no:21},__clicksContext:null,__preloaded:!1}),L=u({layout:`interactive`,heading:`What β buys, and what it costs`,title:`What β buys, and what it costs`,"aside-width":`19rem`}),St=d({get layout(){return L.layout},get transition(){return L.transition},get class(){return L.class},get clicks(){return L.clicks},get name(){return L.name},get preload(){return L.preload},slide:{content:``,revision:`-os1gpw`,frontmatterRaw:`layout: interactive +heading: What β buys, and what it costs +title: What β buys, and what it costs +aside-width: 19rem +`,note:``,title:`What β buys, and what it costs`,index:21,noteHTML:``,images:[],raw:``,frontmatter:L,filepath:``,start:834,sourceIndex:21,id:21,no:22},__clicksContext:null,__preloaded:!1}),R=u({layout:`default`,title:`Why VAE samples are soft`}),Ct=d({get layout(){return R.layout},get transition(){return R.transition},get class(){return R.class},get clicks(){return R.clicks},get name(){return R.name},get preload(){return R.preload},slide:{content:``,revision:`q1rtwd`,frontmatterRaw:`layout: default +title: Why VAE samples are soft +`,note:``,title:`Why VAE samples are soft`,index:22,noteHTML:``,images:[],raw:``,frontmatter:R,filepath:``,start:870,sourceIndex:22,id:22,no:23},__clicksContext:null,__preloaded:!1}),z=u({layout:`default`,title:`A VAE in PyTorch`}),wt=d({get layout(){return z.layout},get transition(){return z.transition},get class(){return z.class},get clicks(){return z.clicks},get name(){return z.name},get preload(){return z.preload},slide:{content:``,revision:`f1yqpi`,frontmatterRaw:`layout: default +title: A VAE in PyTorch +`,note:``,title:`A VAE in PyTorch`,index:23,noteHTML:``,images:[],raw:``,frontmatter:z,filepath:``,start:918,sourceIndex:23,id:23,no:24},__clicksContext:null,__preloaded:!1}),B=u({layout:`section`,index:`03`}),Tt=d({get layout(){return B.layout},get transition(){return B.transition},get class(){return B.class},get clicks(){return B.clicks},get name(){return B.name},get preload(){return B.preload},slide:{content:``,revision:`bz416c`,frontmatterRaw:`layout: section +index: "03" +`,note:``,title:`The adversarial game`,level:1,index:24,noteHTML:``,images:[],raw:``,frontmatter:B,filepath:``,start:963,sourceIndex:24,id:24,no:25},__clicksContext:null,__preloaded:!1}),V=u({layout:`default`,title:`Stop specifying the loss`}),Et=d({get layout(){return V.layout},get transition(){return V.transition},get class(){return V.class},get clicks(){return V.clicks},get name(){return V.name},get preload(){return V.preload},slide:{content:``,revision:`-fz4zoa`,frontmatterRaw:`layout: default +title: Stop specifying the loss +`,note:``,title:`Stop specifying the loss`,index:25,noteHTML:``,images:[],raw:``,frontmatter:V,filepath:``,start:970,sourceIndex:25,id:25,no:26},__clicksContext:null,__preloaded:!1}),H=u({layout:`default`,title:`Two networks, opposite jobs`}),Dt=d({get layout(){return H.layout},get transition(){return H.transition},get class(){return H.class},get clicks(){return H.clicks},get name(){return H.name},get preload(){return H.preload},slide:{content:``,revision:`-chjylc`,frontmatterRaw:`layout: default +title: Two networks, opposite jobs +`,note:``,title:`Two networks, opposite jobs`,index:26,noteHTML:``,images:[],raw:``,frontmatter:H,filepath:``,start:1016,sourceIndex:26,id:26,no:27},__clicksContext:null,__preloaded:!1}),U=u({layout:`default`,title:`The value function`}),Ot=d({get layout(){return U.layout},get transition(){return U.transition},get class(){return U.class},get clicks(){return U.clicks},get name(){return U.name},get preload(){return U.preload},slide:{content:``,revision:`6qm2fw`,frontmatterRaw:`layout: default +title: The value function +`,note:``,title:`The value function`,index:27,noteHTML:``,images:[],raw:``,frontmatter:U,filepath:``,start:1081,sourceIndex:27,id:27,no:28},__clicksContext:null,__preloaded:!1}),W=u({layout:`default`,title:`Freeze one, look at the other`}),kt=d({get layout(){return W.layout},get transition(){return W.transition},get class(){return W.class},get clicks(){return W.clicks},get name(){return W.name},get preload(){return W.preload},slide:{content:``,revision:`-g3q2sg`,frontmatterRaw:`layout: default +title: Freeze one, look at the other +`,note:``,title:`Freeze one, look at the other`,index:28,noteHTML:``,images:[],raw:``,frontmatter:W,filepath:``,start:1131,sourceIndex:28,id:28,no:29},__clicksContext:null,__preloaded:!1}),G=u({layout:`default`,title:`The best discriminator that could exist`}),At=d({get layout(){return G.layout},get transition(){return G.transition},get class(){return G.class},get clicks(){return G.clicks},get name(){return G.name},get preload(){return G.preload},slide:{content:``,revision:`-8ep03`,frontmatterRaw:`layout: default +title: The best discriminator that could exist +`,note:``,title:`The best discriminator that could exist`,index:29,noteHTML:``,images:[],raw:``,frontmatter:G,filepath:``,start:1169,sourceIndex:29,id:29,no:30},__clicksContext:null,__preloaded:!1}),K=u({layout:`interactive`,heading:`D*, on three modes`,title:`D*, on three modes`,"aside-width":`18rem`}),jt=d({get layout(){return K.layout},get transition(){return K.transition},get class(){return K.class},get clicks(){return K.clicks},get name(){return K.name},get preload(){return K.preload},slide:{content:``,revision:`-to2le`,frontmatterRaw:`layout: interactive +heading: D*, on three modes +title: D*, on three modes +aside-width: 18rem +`,note:``,title:`D*, on three modes`,index:30,noteHTML:``,images:[],raw:``,frontmatter:K,filepath:``,start:1218,sourceIndex:30,id:30,no:31},__clicksContext:null,__preloaded:!1}),q=u({layout:`default`,title:`Put D* back in`}),Mt=d({get layout(){return q.layout},get transition(){return q.transition},get class(){return q.class},get clicks(){return q.clicks},get name(){return q.name},get preload(){return q.preload},slide:{content:``,revision:`88d6yp`,frontmatterRaw:`layout: default +title: Put D* back in +`,note:``,title:`Put D* back in`,index:31,noteHTML:``,images:[],raw:``,frontmatter:q,filepath:``,start:1258,sourceIndex:31,id:31,no:32},__clicksContext:null,__preloaded:!1}),J=u({layout:`interactive`,heading:`The theorem, as a number`,title:`The theorem, as a number`,"aside-width":`18rem`}),Nt=d({get layout(){return J.layout},get transition(){return J.transition},get class(){return J.class},get clicks(){return J.clicks},get name(){return J.name},get preload(){return J.preload},slide:{content:``,revision:`cqtymr`,frontmatterRaw:`layout: interactive +heading: The theorem, as a number +title: The theorem, as a number +aside-width: 18rem +`,note:``,title:`The theorem, as a number`,index:32,noteHTML:``,images:[],raw:``,frontmatter:J,filepath:``,start:1310,sourceIndex:32,id:32,no:33},__clicksContext:null,__preloaded:!1}),Y=u({layout:`default`,title:`The four steps`}),Pt=d({get layout(){return Y.layout},get transition(){return Y.transition},get class(){return Y.class},get clicks(){return Y.clicks},get name(){return Y.name},get preload(){return Y.preload},slide:{content:``,revision:`-6sfnw7`,frontmatterRaw:`layout: default +title: The four steps +`,note:``,title:`The four steps`,index:33,noteHTML:``,images:[],raw:``,frontmatter:Y,filepath:``,start:1350,sourceIndex:33,id:33,no:34},__clicksContext:null,__preloaded:!1}),Ft=u({layout:`default`,title:`The trick that makes it train`}),It=d({get layout(){return Ft.layout},get transition(){return Ft.transition},get class(){return Ft.class},get clicks(){return Ft.clicks},get name(){return Ft.name},get preload(){return Ft.preload},slide:{content:``,revision:`r9evmd`,frontmatterRaw:`layout: default +title: The trick that makes it train +`,note:``,title:`The trick that makes it train`,index:34,noteHTML:``,images:[],raw:``,frontmatter:Ft,filepath:``,start:1391,sourceIndex:34,id:34,no:35},__clicksContext:null,__preloaded:!1}),Lt=u({layout:`default`,title:`The training loop`}),Rt=d({get layout(){return Lt.layout},get transition(){return Lt.transition},get class(){return Lt.class},get clicks(){return Lt.clicks},get name(){return Lt.name},get preload(){return Lt.preload},slide:{content:``,revision:`-j636vp`,frontmatterRaw:`layout: default +title: The training loop +`,note:``,title:`The training loop`,index:35,noteHTML:``,images:[],raw:``,frontmatter:Lt,filepath:``,start:1457,sourceIndex:35,id:35,no:36},__clicksContext:null,__preloaded:!1}),zt=u({layout:`default`}),Bt=d({get layout(){return zt.layout},get transition(){return zt.transition},get class(){return zt.class},get clicks(){return zt.clicks},get name(){return zt.name},get preload(){return zt.preload},slide:{content:``,revision:`enromk`,frontmatterRaw:`layout: default +`,note:``,index:36,noteHTML:``,images:[],raw:``,frontmatter:zt,filepath:``,start:1502,sourceIndex:36,id:36,no:37},__clicksContext:null,__preloaded:!1}),Vt=u({layout:`default`,title:`Watch it happen`}),Ht=d({get layout(){return Vt.layout},get transition(){return Vt.transition},get class(){return Vt.class},get clicks(){return Vt.clicks},get name(){return Vt.name},get preload(){return Vt.preload},slide:{content:``,revision:`-aq9wcc`,frontmatterRaw:`layout: default +title: Watch it happen +`,note:``,title:`Watch it happen`,index:37,noteHTML:``,images:[],raw:``,frontmatter:Vt,filepath:``,start:1543,sourceIndex:37,id:37,no:38},__clicksContext:null,__preloaded:!1}),Ut=u({layout:`section`,index:`04`}),Wt=d({get layout(){return Ut.layout},get transition(){return Ut.transition},get class(){return Ut.class},get clicks(){return Ut.clicks},get name(){return Ut.name},get preload(){return Ut.preload},slide:{content:``,revision:`-odaijm`,frontmatterRaw:`layout: section +index: "04" +`,note:``,title:`Why GANs are hard`,level:1,index:38,noteHTML:``,images:[],raw:``,frontmatter:Ut,filepath:``,start:1593,sourceIndex:38,id:38,no:39},__clicksContext:null,__preloaded:!1}),Gt=u({layout:`default`,title:`DCGAN — a CNN, run backwards`}),Kt=d({get layout(){return Gt.layout},get transition(){return Gt.transition},get class(){return Gt.class},get clicks(){return Gt.clicks},get name(){return Gt.name},get preload(){return Gt.preload},slide:{content:``,revision:`-l14f3m`,frontmatterRaw:`layout: default +title: DCGAN — a CNN, run backwards +`,note:``,title:`DCGAN — a CNN, run backwards`,index:39,noteHTML:``,images:[],raw:``,frontmatter:Gt,filepath:``,start:1600,sourceIndex:39,id:39,no:40},__clicksContext:null,__preloaded:!1}),qt=u({layout:`interactive`,heading:`Transposed convolution`,title:`Transposed convolution`,"aside-width":`18rem`}),Jt=d({get layout(){return qt.layout},get transition(){return qt.transition},get class(){return qt.class},get clicks(){return qt.clicks},get name(){return qt.name},get preload(){return qt.preload},slide:{content:``,revision:`xs39d1`,frontmatterRaw:`layout: interactive +heading: Transposed convolution +title: Transposed convolution +aside-width: 18rem +`,note:``,title:`Transposed convolution`,index:40,noteHTML:``,images:[],raw:``,frontmatter:qt,filepath:``,start:1648,sourceIndex:40,id:40,no:41},__clicksContext:null,__preloaded:!1}),Yt=u({layout:`default`,title:`The checkerboard, and what to do instead`}),Xt=d({get layout(){return Yt.layout},get transition(){return Yt.transition},get class(){return Yt.class},get clicks(){return Yt.clicks},get name(){return Yt.name},get preload(){return Yt.preload},slide:{content:``,revision:`brpmxl`,frontmatterRaw:`layout: default +title: The checkerboard, and what to do instead +`,note:``,title:`The checkerboard, and what to do instead`,index:41,noteHTML:``,images:[],raw:``,frontmatter:Yt,filepath:``,start:1688,sourceIndex:41,id:41,no:42},__clicksContext:null,__preloaded:!1}),Zt=u({layout:`default`,title:`One more piece from week 4`}),Qt=d({get layout(){return Zt.layout},get transition(){return Zt.transition},get class(){return Zt.class},get clicks(){return Zt.clicks},get name(){return Zt.name},get preload(){return Zt.preload},slide:{content:``,revision:`-l6rzu6`,frontmatterRaw:`layout: default +title: One more piece from week 4 +`,note:``,title:`One more piece from week 4`,index:42,noteHTML:``,images:[],raw:``,frontmatter:Zt,filepath:``,start:1744,sourceIndex:42,id:42,no:43},__clicksContext:null,__preloaded:!1}),$t=u({layout:`default`,title:`The failure that defines GANs`}),en=d({get layout(){return $t.layout},get transition(){return $t.transition},get class(){return $t.class},get clicks(){return $t.clicks},get name(){return $t.name},get preload(){return $t.preload},slide:{content:``,revision:`oasiua`,frontmatterRaw:`layout: default +title: The failure that defines GANs +`,note:``,title:`The failure that defines GANs`,index:43,noteHTML:``,images:[],raw:``,frontmatter:$t,filepath:``,start:1790,sourceIndex:43,id:43,no:44},__clicksContext:null,__preloaded:!1}),tn=u({layout:`default`,title:`Four ways to say two distributions differ`}),nn=d({get layout(){return tn.layout},get transition(){return tn.transition},get class(){return tn.class},get clicks(){return tn.clicks},get name(){return tn.name},get preload(){return tn.preload},slide:{content:``,revision:`36wi85`,frontmatterRaw:`layout: default +title: Four ways to say two distributions differ +`,note:``,title:`Four ways to say two distributions differ`,index:44,noteHTML:``,images:[],raw:``,frontmatter:tn,filepath:``,start:1833,sourceIndex:44,id:44,no:45},__clicksContext:null,__preloaded:!1}),rn=u({layout:`interactive`,heading:`The measure decides what "worse" means`,title:`The measure decides what "worse" means`,"aside-width":`18rem`}),an=d({get layout(){return rn.layout},get transition(){return rn.transition},get class(){return rn.class},get clicks(){return rn.clicks},get name(){return rn.name},get preload(){return rn.preload},slide:{content:``,revision:`-s0ez41`,frontmatterRaw:`layout: interactive +heading: The measure decides what "worse" means +title: The measure decides what "worse" means +aside-width: 18rem +`,note:``,title:`The measure decides what "worse" means`,index:45,noteHTML:``,images:[],raw:``,frontmatter:rn,filepath:``,start:1870,sourceIndex:45,id:45,no:46},__clicksContext:null,__preloaded:!1}),on=u({layout:`default`,title:`Wasserstein, and what came after`}),sn=d({get layout(){return on.layout},get transition(){return on.transition},get class(){return on.class},get clicks(){return on.clicks},get name(){return on.name},get preload(){return on.preload},slide:{content:``,revision:`-mxqhsq`,frontmatterRaw:`layout: default +title: Wasserstein, and what came after +`,note:``,title:`Wasserstein, and what came after`,index:46,noteHTML:``,images:[],raw:``,frontmatter:on,filepath:``,start:1910,sourceIndex:46,id:46,no:47},__clicksContext:null,__preloaded:!1}),cn=u({layout:`default`,title:`The zoo, and the six that mattered`}),ln=d({get layout(){return cn.layout},get transition(){return cn.transition},get class(){return cn.class},get clicks(){return cn.clicks},get name(){return cn.name},get preload(){return cn.preload},slide:{content:``,revision:`-33egza`,frontmatterRaw:`layout: default +title: The zoo, and the six that mattered +`,note:``,title:`The zoo, and the six that mattered`,index:47,noteHTML:``,images:[],raw:``,frontmatter:cn,filepath:``,start:1957,sourceIndex:47,id:47,no:48},__clicksContext:null,__preloaded:!1}),un=u({layout:`default`,title:`What this is actually used for`}),dn=d({get layout(){return un.layout},get transition(){return un.transition},get class(){return un.class},get clicks(){return un.clicks},get name(){return un.name},get preload(){return un.preload},slide:{content:``,revision:`wg7an6`,frontmatterRaw:`layout: default +title: What this is actually used for +`,note:``,title:`What this is actually used for`,index:48,noteHTML:``,images:[],raw:``,frontmatter:un,filepath:``,start:2001,sourceIndex:48,id:48,no:49},__clicksContext:null,__preloaded:!1}),fn=u({layout:`default`}),pn=d({get layout(){return fn.layout},get transition(){return fn.transition},get class(){return fn.class},get clicks(){return fn.clicks},get name(){return fn.name},get preload(){return fn.preload},slide:{content:``,revision:`-lhbrcd`,frontmatterRaw:`layout: default +`,note:``,index:49,noteHTML:``,images:[],raw:``,frontmatter:fn,filepath:``,start:2042,sourceIndex:49,id:49,no:50},__clicksContext:null,__preloaded:!1}),mn=u({layout:`section`,index:`05`}),hn=d({get layout(){return mn.layout},get transition(){return mn.transition},get class(){return mn.class},get clicks(){return mn.clicks},get name(){return mn.name},get preload(){return mn.preload},slide:{content:``,revision:`qedbse`,frontmatterRaw:`layout: section +index: "05" +`,note:``,title:`What replaced them: diffusion`,level:1,index:50,noteHTML:``,images:[],raw:``,frontmatter:mn,filepath:``,start:2083,sourceIndex:50,id:50,no:51},__clicksContext:null,__preloaded:!1}),gn=u({layout:`default`,title:`Destroying an image is easy`}),_n=d({get layout(){return gn.layout},get transition(){return gn.transition},get class(){return gn.class},get clicks(){return gn.clicks},get name(){return gn.name},get preload(){return gn.preload},slide:{content:``,revision:`n26x8s`,frontmatterRaw:`layout: default +title: Destroying an image is easy +`,note:``,title:`Destroying an image is easy`,index:51,noteHTML:``,images:[],raw:``,frontmatter:gn,filepath:``,start:2090,sourceIndex:51,id:51,no:52},__clicksContext:null,__preloaded:!1}),vn=u({layout:`default`,title:`The forward process, in one step`}),yn=d({get layout(){return vn.layout},get transition(){return vn.transition},get class(){return vn.class},get clicks(){return vn.clicks},get name(){return vn.name},get preload(){return vn.preload},slide:{content:``,revision:`-yjo9bd`,frontmatterRaw:`layout: default +title: The forward process, in one step +`,note:``,title:`The forward process, in one step`,index:52,noteHTML:``,images:[],raw:``,frontmatter:vn,filepath:``,start:2134,sourceIndex:52,id:52,no:53},__clicksContext:null,__preloaded:!1}),bn=u({layout:`interactive`,heading:`Forward — no network involved`,title:`Forward — no network involved`,"aside-width":`20rem`}),xn=d({get layout(){return bn.layout},get transition(){return bn.transition},get class(){return bn.class},get clicks(){return bn.clicks},get name(){return bn.name},get preload(){return bn.preload},slide:{content:``,revision:`qr1bmg`,frontmatterRaw:`layout: interactive +heading: Forward — no network involved +title: Forward — no network involved +aside-width: 20rem +`,note:``,title:`Forward — no network involved`,index:53,noteHTML:``,images:[],raw:``,frontmatter:bn,filepath:``,start:2191,sourceIndex:53,id:53,no:54},__clicksContext:null,__preloaded:!1}),Sn=u({layout:`default`,title:`What the network is asked to do`}),Cn=d({get layout(){return Sn.layout},get transition(){return Sn.transition},get class(){return Sn.class},get clicks(){return Sn.clicks},get name(){return Sn.name},get preload(){return Sn.preload},slide:{content:``,revision:`-lckkk9`,frontmatterRaw:`layout: default +title: What the network is asked to do +`,note:``,title:`What the network is asked to do`,index:54,noteHTML:``,images:[],raw:``,frontmatter:Sn,filepath:``,start:2231,sourceIndex:54,id:54,no:55},__clicksContext:null,__preloaded:!1}),wn=u({layout:`interactive`,heading:`Reverse — what the sampler follows`,title:`Reverse — what the sampler follows`,"aside-width":`20rem`}),Tn=d({get layout(){return wn.layout},get transition(){return wn.transition},get class(){return wn.class},get clicks(){return wn.clicks},get name(){return wn.name},get preload(){return wn.preload},slide:{content:``,revision:`-v27qhj`,frontmatterRaw:`layout: interactive +heading: Reverse — what the sampler follows +title: Reverse — what the sampler follows +aside-width: 20rem +`,note:``,title:`Reverse — what the sampler follows`,index:55,noteHTML:``,images:[],raw:``,frontmatter:wn,filepath:``,start:2281,sourceIndex:55,id:55,no:56},__clicksContext:null,__preloaded:!1}),En=u({layout:`default`,title:`Three lines, and no adversary`}),Dn=d({get layout(){return En.layout},get transition(){return En.transition},get class(){return En.class},get clicks(){return En.clicks},get name(){return En.name},get preload(){return En.preload},slide:{content:``,revision:`-wyflmo`,frontmatterRaw:`layout: default +title: Three lines, and no adversary +`,note:``,title:`Three lines, and no adversary`,index:56,noteHTML:``,images:[],raw:``,frontmatter:En,filepath:``,start:2321,sourceIndex:56,id:56,no:57},__clicksContext:null,__preloaded:!1}),On=u({layout:`default`,title:`The cost is at the other end`}),kn=d({get layout(){return On.layout},get transition(){return On.transition},get class(){return On.class},get clicks(){return On.clicks},get name(){return On.name},get preload(){return On.preload},slide:{content:``,revision:`-a2ywgt`,frontmatterRaw:`layout: default +title: The cost is at the other end +`,note:``,title:`The cost is at the other end`,index:57,noteHTML:``,images:[],raw:``,frontmatter:On,filepath:``,start:2372,sourceIndex:57,id:57,no:58},__clicksContext:null,__preloaded:!1}),An=u({layout:`default`,title:`How the prompt gets in`}),jn=d({get layout(){return An.layout},get transition(){return An.transition},get class(){return An.class},get clicks(){return An.clicks},get name(){return An.name},get preload(){return An.preload},slide:{content:``,revision:`-fkjd5`,frontmatterRaw:`layout: default +title: How the prompt gets in +`,note:``,title:`How the prompt gets in`,index:58,noteHTML:``,images:[],raw:``,frontmatter:An,filepath:``,start:2425,sourceIndex:58,id:58,no:59},__clicksContext:null,__preloaded:!1}),Mn=u({layout:`interactive`,heading:`The guidance slider`,title:`The guidance slider`,"aside-width":`19rem`}),Nn=d({get layout(){return Mn.layout},get transition(){return Mn.transition},get class(){return Mn.class},get clicks(){return Mn.clicks},get name(){return Mn.name},get preload(){return Mn.preload},slide:{content:``,revision:`uhr3jg`,frontmatterRaw:`layout: interactive +heading: The guidance slider +title: The guidance slider +aside-width: 19rem +`,note:``,title:`The guidance slider`,index:59,noteHTML:``,images:[],raw:``,frontmatter:Mn,filepath:``,start:2483,sourceIndex:59,id:59,no:60},__clicksContext:null,__preloaded:!1}),Pn=u({layout:`default`,title:`Do it somewhere cheaper`}),Fn=d({get layout(){return Pn.layout},get transition(){return Pn.transition},get class(){return Pn.class},get clicks(){return Pn.clicks},get name(){return Pn.name},get preload(){return Pn.preload},slide:{content:``,revision:`k3vavs`,frontmatterRaw:`layout: default +title: Do it somewhere cheaper +`,note:``,title:`Do it somewhere cheaper`,index:60,noteHTML:``,images:[],raw:``,frontmatter:Pn,filepath:``,start:2529,sourceIndex:60,id:60,no:61},__clicksContext:null,__preloaded:!1}),In=u({layout:`default`,title:`What the denoiser is made of`}),Ln=d({get layout(){return In.layout},get transition(){return In.transition},get class(){return In.class},get clicks(){return In.clicks},get name(){return In.name},get preload(){return In.preload},slide:{content:``,revision:`-vp50ll`,frontmatterRaw:`layout: default +title: What the denoiser is made of +`,note:``,title:`What the denoiser is made of`,index:61,noteHTML:``,images:[],raw:``,frontmatter:In,filepath:``,start:2577,sourceIndex:61,id:61,no:62},__clicksContext:null,__preloaded:!1}),Rn=u({layout:`default`,title:`What actually gets trained in 2026`}),zn=d({get layout(){return Rn.layout},get transition(){return Rn.transition},get class(){return Rn.class},get clicks(){return Rn.clicks},get name(){return Rn.name},get preload(){return Rn.preload},slide:{content:``,revision:`yh1yzv`,frontmatterRaw:`layout: default +title: What actually gets trained in 2026 +`,note:``,title:`What actually gets trained in 2026`,index:62,noteHTML:``,images:[],raw:``,frontmatter:Rn,filepath:``,start:2639,sourceIndex:62,id:62,no:63},__clicksContext:null,__preloaded:!1}),Bn=u({layout:`default`}),Vn=d({get layout(){return Bn.layout},get transition(){return Bn.transition},get class(){return Bn.class},get clicks(){return Bn.clicks},get name(){return Bn.name},get preload(){return Bn.preload},slide:{content:``,revision:`-1epxz7`,frontmatterRaw:`layout: default +`,note:``,index:63,noteHTML:``,images:[],raw:``,frontmatter:Bn,filepath:``,start:2688,sourceIndex:63,id:63,no:64},__clicksContext:null,__preloaded:!1}),Hn=u({layout:`section`,index:`06`}),Un=d({get layout(){return Hn.layout},get transition(){return Hn.transition},get class(){return Hn.class},get clicks(){return Hn.clicks},get name(){return Hn.name},get preload(){return Hn.preload},slide:{content:``,revision:`-5n3j8m`,frontmatterRaw:`layout: section +index: "06" +`,note:``,title:`Choosing one`,level:1,index:64,noteHTML:``,images:[],raw:``,frontmatter:Hn,filepath:``,start:2728,sourceIndex:64,id:64,no:65},__clicksContext:null,__preloaded:!1}),Wn=u({layout:`default`,title:`Five families, side by side`}),Gn=d({get layout(){return Wn.layout},get transition(){return Wn.transition},get class(){return Wn.class},get clicks(){return Wn.clicks},get name(){return Wn.name},get preload(){return Wn.preload},slide:{content:``,revision:`h4sofr`,frontmatterRaw:`layout: default +title: Five families, side by side +`,note:``,title:`Five families, side by side`,index:65,noteHTML:``,images:[],raw:``,frontmatter:Wn,filepath:``,start:2735,sourceIndex:65,id:65,no:66},__clicksContext:null,__preloaded:!1}),Kn=u({layout:`default`,title:`How do you know it is any good?`}),qn=d({get layout(){return Kn.layout},get transition(){return Kn.transition},get class(){return Kn.class},get clicks(){return Kn.clicks},get name(){return Kn.name},get preload(){return Kn.preload},slide:{content:``,revision:`-w6f6p5`,frontmatterRaw:`layout: default +title: How do you know it is any good? +`,note:``,title:`How do you know it is any good?`,index:66,noteHTML:``,images:[],raw:``,frontmatter:Kn,filepath:``,start:2774,sourceIndex:66,id:66,no:67},__clicksContext:null,__preloaded:!1}),X=u({layout:`default`,title:`Where that leaves us`}),Jn=d({get layout(){return X.layout},get transition(){return X.transition},get class(){return X.class},get clicks(){return X.clicks},get name(){return X.name},get preload(){return X.preload},slide:{content:``,revision:`-43uhne`,frontmatterRaw:`layout: default +title: Where that leaves us +`,note:``,title:`Where that leaves us`,index:67,noteHTML:``,images:[],raw:``,frontmatter:X,filepath:``,start:2825,sourceIndex:67,id:67,no:68},__clicksContext:null,__preloaded:!1}),Yn=u({layout:`default`,title:`What comes with the capability`}),Xn=d({get layout(){return Yn.layout},get transition(){return Yn.transition},get class(){return Yn.class},get clicks(){return Yn.clicks},get name(){return Yn.name},get preload(){return Yn.preload},slide:{content:``,revision:`-aecg8z`,frontmatterRaw:`layout: default +title: What comes with the capability +`,note:``,title:`What comes with the capability`,index:68,noteHTML:``,images:[],raw:``,frontmatter:Yn,filepath:``,start:2877,sourceIndex:68,id:68,no:69},__clicksContext:null,__preloaded:!1}),Zn=u({layout:`default`,title:`Reading, and the lab`}),Qn=d({get layout(){return Zn.layout},get transition(){return Zn.transition},get class(){return Zn.class},get clicks(){return Zn.clicks},get name(){return Zn.name},get preload(){return Zn.preload},slide:{content:``,revision:`fqfyku`,frontmatterRaw:`layout: default +title: Reading, and the lab +`,note:``,title:`Reading, and the lab`,index:69,noteHTML:``,images:[],raw:``,frontmatter:Zn,filepath:``,start:2919,sourceIndex:69,id:69,no:70},__clicksContext:null,__preloaded:!1}),$n=u({layout:`end`,email:`vajira@simula.no`,next:`GAN variants and applications`}),er=d({get layout(){return $n.layout},get transition(){return $n.transition},get class(){return $n.class},get clicks(){return $n.clicks},get name(){return $n.name},get preload(){return $n.preload},slide:{content:``,revision:`d1uh0r`,frontmatterRaw:`layout: end +email: vajira@simula.no +next: GAN variants and applications +`,note:``,title:`To be continued…`,level:1,index:70,noteHTML:``,images:[],raw:``,frontmatter:$n,filepath:``,start:2984,sourceIndex:70,id:70,no:71},__clicksContext:null,__preloaded:!1}),Z=Array(71),Q=(t,n)=>e({loader:n,delay:300,loadingComponent:Ze,errorComponent:v,onError:e=>console.error(`Failed to load slide `+(t+1),e)}),tr=async()=>{try{return Z[0]??=await _(()=>import(`./md-ta7B1P6z.js`),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},nr=async()=>{try{return Z[1]??=await _(()=>import(`./md-a2kumTRc.js`),__vite__mapDeps([8,1,2,3,4,5,6,9,10,11,12,13,14,15,16,17]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},rr=async()=>{try{return Z[2]??=await _(()=>import(`./md-Dwx-gmJ3.js`),__vite__mapDeps([18,1,2,3,5,6,19,4,20]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ir=async()=>{try{return Z[3]??=await _(()=>import(`./md-CoMuAN0N.js`),__vite__mapDeps([21,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ar=async()=>{try{return Z[4]??=await _(()=>import(`./md-2F27eRHi.js`),__vite__mapDeps([25,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},or=async()=>{try{return Z[5]??=await _(()=>import(`./md-CyZorWsj.js`),__vite__mapDeps([26,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},sr=async()=>{try{return Z[6]??=await _(()=>import(`./md-Bc0pPnzk.js`),__vite__mapDeps([27,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},cr=async()=>{try{return Z[7]??=await _(()=>import(`./md-C9jeKeVn.js`),__vite__mapDeps([28,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},lr=async()=>{try{return Z[8]??=await _(()=>import(`./md-DLLIksG72.js`),__vite__mapDeps([29,1,2,3,5,6,22,4,10,11,12,13,14,15,23,30,24,31]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ur=async()=>{try{return Z[9]??=await _(()=>import(`./md-Bxxii7Y8.js`),__vite__mapDeps([32,1,2,3,5,6,19,4,20]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},dr=async()=>{try{return Z[10]??=await _(()=>import(`./md-B85egCC3.js`),__vite__mapDeps([33,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},fr=async()=>{try{return Z[11]??=await _(()=>import(`./md-DulRHtU2.js`),__vite__mapDeps([34,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},pr=async()=>{try{return Z[12]??=await _(()=>import(`./md-C-Dzt09w.js`),__vite__mapDeps([35,1,2,3,5,6,24,12,11,13,36,4,37,38,39,40,41,42,43,44,45,9,10,14,15,16]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},mr=async()=>{try{return Z[13]??=await _(()=>import(`./md-BrcdwIir.js`),__vite__mapDeps([46,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},hr=async()=>{try{return Z[14]??=await _(()=>import(`./md-CTs0jG3T.js`),__vite__mapDeps([47,1,2,3,5,6,24,12,11,13,36,4,37,38,39,40,41,42,43,44,45,9,10,14,15,16]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},gr=async()=>{try{return Z[15]??=await _(()=>import(`./md-BHDP04KT.js`),__vite__mapDeps([48,1,2,3,5,6,22,4,10,11,12,13,14,15,23,49,50]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},_r=async()=>{try{return Z[16]??=await _(()=>import(`./md-M85UnOeN.js`),__vite__mapDeps([51,1,2,3,5,6,22,4,10,11,12,13,14,15,23,30,24,31]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},vr=async()=>{try{return Z[17]??=await _(()=>import(`./md-VGUgNMSa.js`),__vite__mapDeps([52,1,2,3,5,6,19,4,20]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},yr=async()=>{try{return Z[18]??=await _(()=>import(`./md-BIX3o5PQ.js`),__vite__mapDeps([53,1,2,3,5,6,22,4,10,11,12,13,14,15,23,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},br=async()=>{try{return Z[19]??=await _(()=>import(`./md-Dv-9RHof.js`),__vite__mapDeps([56,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,57]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},xr=async()=>{try{return Z[20]??=await _(()=>import(`./md-COiO5zpQ.js`),__vite__mapDeps([58,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Sr=async()=>{try{return Z[21]??=await _(()=>import(`./md-BriWe-Uw2.js`),__vite__mapDeps([59,1,2,3,4,5,6,24,12,11,13,37,38,39,40,42,43,9,10,14,15,16,60,61,62]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Cr=async()=>{try{return Z[22]??=await _(()=>import(`./md-BXat7wCC.js`),__vite__mapDeps([63,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},wr=async()=>{try{return Z[23]??=await _(()=>import(`./md-DDm_qmaS2.js`),__vite__mapDeps([64,1,2,3,5,6,22,4,10,11,12,13,14,15,23,49,50]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Tr=async()=>{try{return Z[24]??=await _(()=>import(`./md-BBXgzUns.js`),__vite__mapDeps([65,1,2,3,5,6,19,4,20]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Er=async()=>{try{return Z[25]??=await _(()=>import(`./md-BUfIr-Xh.js`),__vite__mapDeps([66,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Dr=async()=>{try{return Z[26]??=await _(()=>import(`./md-BTICBx02.js`),__vite__mapDeps([67,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Or=async()=>{try{return Z[27]??=await _(()=>import(`./md-DOVS_NHz.js`),__vite__mapDeps([68,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,57]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},kr=async()=>{try{return Z[28]??=await _(()=>import(`./md-DFt8Fkb-.js`),__vite__mapDeps([69,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Ar=async()=>{try{return Z[29]??=await _(()=>import(`./md-DbnFiBew.js`),__vite__mapDeps([70,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,57]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},jr=async()=>{try{return Z[30]??=await _(()=>import(`./md-Cvuj_RiT2.js`),__vite__mapDeps([71,1,2,3,5,6,24,12,11,13,9,4,10,14,15,16,72,37,38,60,61,73]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Mr=async()=>{try{return Z[31]??=await _(()=>import(`./md-0AKOvJ4E2.js`),__vite__mapDeps([74,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,57]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Nr=async()=>{try{return Z[32]??=await _(()=>import(`./md-BY6-u_L9.js`),__vite__mapDeps([75,1,2,3,5,6,24,12,11,13,9,4,10,14,15,16,72,37,38,60,61,73]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Pr=async()=>{try{return Z[33]??=await _(()=>import(`./md-BGN9zmKq.js`),__vite__mapDeps([76,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Fr=async()=>{try{return Z[34]??=await _(()=>import(`./md-KGQRTtLp.js`),__vite__mapDeps([77,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,39,40,41,44,78]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Ir=async()=>{try{return Z[35]??=await _(()=>import(`./md-BGJMzTO82.js`),__vite__mapDeps([79,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,49,50]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Lr=async()=>{try{return Z[36]??=await _(()=>import(`./md-BKRLR2qT2.js`),__vite__mapDeps([80,1,2,3,5,6,22,4,10,11,12,13,14,15,23,30,24,31]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Rr=async()=>{try{return Z[37]??=await _(()=>import(`./md-C77LyuEc2.js`),__vite__mapDeps([81,1,2,3,5,6,22,4,10,11,12,13,14,15,23,82,83]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},zr=async()=>{try{return Z[38]??=await _(()=>import(`./md-VE4VM-5-2.js`),__vite__mapDeps([84,1,2,3,5,6,19,4,20]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Br=async()=>{try{return Z[39]??=await _(()=>import(`./md-DHWj4zwl.js`),__vite__mapDeps([85,1,2,3,5,6,22,4,10,11,12,13,14,15,23,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Vr=async()=>{try{return Z[40]??=await _(()=>import(`./md-BFky_As4.js`),__vite__mapDeps([86,1,2,3,4,5,6,24,12,11,13,37,38,9,10,14,15,16,60,61,87]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Hr=async()=>{try{return Z[41]??=await _(()=>import(`./md-DOwcMoZw.js`),__vite__mapDeps([88,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Ur=async()=>{try{return Z[42]??=await _(()=>import(`./md-C0aHXLHj.js`),__vite__mapDeps([89,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Wr=async()=>{try{return Z[43]??=await _(()=>import(`./md-BNjxTD9b.js`),__vite__mapDeps([90,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Gr=async()=>{try{return Z[44]??=await _(()=>import(`./md-f1cjOFpN.js`),__vite__mapDeps([91,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Kr=async()=>{try{return Z[45]??=await _(()=>import(`./md-D_LV_cWf.js`),__vite__mapDeps([92,1,2,3,4,5,6,24,12,11,13,37,38,9,10,14,15,16,93]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},qr=async()=>{try{return Z[46]??=await _(()=>import(`./md-Cw50yTfR.js`),__vite__mapDeps([94,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Jr=async()=>{try{return Z[47]??=await _(()=>import(`./md-BnpqSKpS.js`),__vite__mapDeps([95,1,2,3,5,6,22,4,10,11,12,13,14,15,23,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Yr=async()=>{try{return Z[48]??=await _(()=>import(`./md-9mrU8hdt.js`),__vite__mapDeps([96,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Xr=async()=>{try{return Z[49]??=await _(()=>import(`./md-Ds7b42QT.js`),__vite__mapDeps([97,1,2,3,5,6,22,4,10,11,12,13,14,15,23,30,24,31]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Zr=async()=>{try{return Z[50]??=await _(()=>import(`./md-Cn3jb9pa.js`),__vite__mapDeps([98,1,2,3,5,6,19,4,20]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},Qr=async()=>{try{return Z[51]??=await _(()=>import(`./md-C2C3LePM.js`),__vite__mapDeps([99,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},$r=async()=>{try{return Z[52]??=await _(()=>import(`./md-BbGXczPu.js`),__vite__mapDeps([100,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,57]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ei=async()=>{try{return Z[53]??=await _(()=>import(`./md-Dy_e3Bqp.js`),__vite__mapDeps([101,1,2,3,5,6,24,12,11,13,9,4,10,14,15,16,102,37,38,39,40,42,43,60,61,78,103]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ti=async()=>{try{return Z[54]??=await _(()=>import(`./md-BpMil6cJ.js`),__vite__mapDeps([104,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,57]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ni=async()=>{try{return Z[55]??=await _(()=>import(`./md-NIRaBBmF.js`),__vite__mapDeps([105,1,2,3,5,6,24,12,11,13,9,4,10,14,15,16,102,37,38,39,40,42,43,60,61,78,103]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ri=async()=>{try{return Z[56]??=await _(()=>import(`./md-kcPGYvYV.js`),__vite__mapDeps([106,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,49,50]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ii=async()=>{try{return Z[57]??=await _(()=>import(`./md-DUV80Lpm.js`),__vite__mapDeps([107,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ai=async()=>{try{return Z[58]??=await _(()=>import(`./md-Bvit_-kG.js`),__vite__mapDeps([108,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55,57]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},oi=async()=>{try{return Z[59]??=await _(()=>import(`./md-BMdZT-Nb.js`),__vite__mapDeps([109,1,2,3,4,5,6,24,12,11,13,37,38,39,40,41,42,43,9,10,14,15,16,60,61,110]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},si=async()=>{try{return Z[60]??=await _(()=>import(`./md-BFLTYNWq.js`),__vite__mapDeps([111,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ci=async()=>{try{return Z[61]??=await _(()=>import(`./md-DYpBtpdH.js`),__vite__mapDeps([112,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},li=async()=>{try{return Z[62]??=await _(()=>import(`./md-DPMtzxVq.js`),__vite__mapDeps([113,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},ui=async()=>{try{return Z[63]??=await _(()=>import(`./md-DmMWZOcj.js`),__vite__mapDeps([114,1,2,3,5,6,22,4,10,11,12,13,14,15,23,30,24,31]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},di=async()=>{try{return Z[64]??=await _(()=>import(`./md-9UAmvp1c.js`),__vite__mapDeps([115,1,2,3,5,6,19,4,20]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},fi=async()=>{try{return Z[65]??=await _(()=>import(`./md-DokPaWjQ.js`),__vite__mapDeps([116,1,2,3,5,6,22,4,10,11,12,13,14,15,23]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},pi=async()=>{try{return Z[66]??=await _(()=>import(`./md-Bq1hVJQX.js`),__vite__mapDeps([117,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24,54,55]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},mi=async()=>{try{return Z[67]??=await _(()=>import(`./md-DhaIudi0.js`),__vite__mapDeps([118,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},hi=async()=>{try{return Z[68]??=await _(()=>import(`./md-C8nzfcA7.js`),__vite__mapDeps([119,1,2,3,5,6,22,4,10,11,12,13,14,15,23,24]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},gi=async()=>{try{return Z[69]??=await _(()=>import(`./md-SmsURr7k.js`),__vite__mapDeps([120,1,2,3,5,6,22,4,10,11,12,13,14,15,23,82,83]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},_i=async()=>{try{return Z[70]??=await _(()=>import(`./md-BVmdu-Rl.js`),__vite__mapDeps([121,1,2,3,4,5,6,122]),import.meta.url)}catch(e){return console.error(`slide failed to load`,e),v}},vi=[{no:1,meta:$e,load:tr,component:Q(0,tr)},{no:2,meta:tt,load:nr,component:Q(1,nr)},{no:3,meta:rt,load:rr,component:Q(2,rr)},{no:4,meta:it,load:ir,component:Q(3,ir)},{no:5,meta:at,load:ar,component:Q(4,ar)},{no:6,meta:ot,load:or,component:Q(5,or)},{no:7,meta:st,load:sr,component:Q(6,sr)},{no:8,meta:ct,load:cr,component:Q(7,cr)},{no:9,meta:lt,load:lr,component:Q(8,lr)},{no:10,meta:ut,load:ur,component:Q(9,ur)},{no:11,meta:dt,load:dr,component:Q(10,dr)},{no:12,meta:ft,load:fr,component:Q(11,fr)},{no:13,meta:pt,load:pr,component:Q(12,pr)},{no:14,meta:mt,load:mr,component:Q(13,mr)},{no:15,meta:ht,load:hr,component:Q(14,hr)},{no:16,meta:gt,load:gr,component:Q(15,gr)},{no:17,meta:_t,load:_r,component:Q(16,_r)},{no:18,meta:vt,load:vr,component:Q(17,vr)},{no:19,meta:yt,load:yr,component:Q(18,yr)},{no:20,meta:bt,load:br,component:Q(19,br)},{no:21,meta:xt,load:xr,component:Q(20,xr)},{no:22,meta:St,load:Sr,component:Q(21,Sr)},{no:23,meta:Ct,load:Cr,component:Q(22,Cr)},{no:24,meta:wt,load:wr,component:Q(23,wr)},{no:25,meta:Tt,load:Tr,component:Q(24,Tr)},{no:26,meta:Et,load:Er,component:Q(25,Er)},{no:27,meta:Dt,load:Dr,component:Q(26,Dr)},{no:28,meta:Ot,load:Or,component:Q(27,Or)},{no:29,meta:kt,load:kr,component:Q(28,kr)},{no:30,meta:At,load:Ar,component:Q(29,Ar)},{no:31,meta:jt,load:jr,component:Q(30,jr)},{no:32,meta:Mt,load:Mr,component:Q(31,Mr)},{no:33,meta:Nt,load:Nr,component:Q(32,Nr)},{no:34,meta:Pt,load:Pr,component:Q(33,Pr)},{no:35,meta:It,load:Fr,component:Q(34,Fr)},{no:36,meta:Rt,load:Ir,component:Q(35,Ir)},{no:37,meta:Bt,load:Lr,component:Q(36,Lr)},{no:38,meta:Ht,load:Rr,component:Q(37,Rr)},{no:39,meta:Wt,load:zr,component:Q(38,zr)},{no:40,meta:Kt,load:Br,component:Q(39,Br)},{no:41,meta:Jt,load:Vr,component:Q(40,Vr)},{no:42,meta:Xt,load:Hr,component:Q(41,Hr)},{no:43,meta:Qt,load:Ur,component:Q(42,Ur)},{no:44,meta:en,load:Wr,component:Q(43,Wr)},{no:45,meta:nn,load:Gr,component:Q(44,Gr)},{no:46,meta:an,load:Kr,component:Q(45,Kr)},{no:47,meta:sn,load:qr,component:Q(46,qr)},{no:48,meta:ln,load:Jr,component:Q(47,Jr)},{no:49,meta:dn,load:Yr,component:Q(48,Yr)},{no:50,meta:pn,load:Xr,component:Q(49,Xr)},{no:51,meta:hn,load:Zr,component:Q(50,Zr)},{no:52,meta:_n,load:Qr,component:Q(51,Qr)},{no:53,meta:yn,load:$r,component:Q(52,$r)},{no:54,meta:xn,load:ei,component:Q(53,ei)},{no:55,meta:Cn,load:ti,component:Q(54,ti)},{no:56,meta:Tn,load:ni,component:Q(55,ni)},{no:57,meta:Dn,load:ri,component:Q(56,ri)},{no:58,meta:kn,load:ii,component:Q(57,ii)},{no:59,meta:jn,load:ai,component:Q(58,ai)},{no:60,meta:Nn,load:oi,component:Q(59,oi)},{no:61,meta:Fn,load:si,component:Q(60,si)},{no:62,meta:Ln,load:ci,component:Q(61,ci)},{no:63,meta:zn,load:li,component:Q(62,li)},{no:64,meta:Vn,load:ui,component:Q(63,ui)},{no:65,meta:Un,load:di,component:Q(64,di)},{no:66,meta:Gn,load:fi,component:Q(65,fi)},{no:67,meta:qn,load:pi,component:Q(66,pi)},{no:68,meta:Jn,load:mi,component:Q(67,mi)},{no:69,meta:Xn,load:hi,component:Q(68,hi)},{no:70,meta:Qn,load:gi,component:Q(69,gi)},{no:71,meta:er,load:_i,component:Q(70,_i)}],$=ne(vi);function yi(e,t,{mode:r=`replace`}={}){let i=pe();return f({get(){let n=i.currentRoute.value.query[e];return n==null?t??null:Array.isArray(n)?n.filter(Boolean):n},set(a){n(()=>{(i.currentRoute.value.query[e]??t?.toString())!==a.toString()&&i[re(r)]({query:{...i.currentRoute.value.query,[e]:`${a}`===t?void 0:a}})})}})}function bi(e,t,n=!1){let r=e.meta.slide?.frontmatter.routeAlias??e.no;return n?`/export/${r}`:t?`/presenter/${r}`:`/${r}`}function xi(e){return $.value.find(t=>t.no===+e||t.meta.slide?.frontmatter.routeAlias===e)}function Si(e,t,n=!1){return(typeof e==`number`||typeof e==`string`)&&(e=xi(e)),bi(e,t,n)}var Ci={"slide-left":`slide-left | slide-right`,"slide-right":`slide-right | slide-left`,"slide-up":`slide-up | slide-down`,"slide-down":`slide-down | slide-up`};function wi(e,t=!1){if(!e||(typeof e==`string`&&(e={name:e}),!e.name))return;let n=e.name.includes(`|`)?e.name:Ci[e.name]||e.name;if(n.includes(`|`)){let[e,r]=n.split(`|`).map(e=>e.trim());n=t?r:e}if(n)return{...e,name:n}}function Ti(e,t,n){let r=e>0?n?.meta?.transition:t?.meta?.transition;return r||=g.transition||void 0,wi(r,e<0)}var Ei=m(!1),Di=m(!1),Oi=m(!1),ki=m(!1),Ai=m(!1),ji=m(!1),Mi=m(!0),Ni=u(new Set),Pi=f(()=>Ni.size>0),Fi=ye({xs:460,...he}),Ii=de(),Li=me(),Ri=f(()=>Ii.height.value-Ii.width.value/je.value>120),zi=_e(ve?document.body:null),Bi=ge(),Vi=f(()=>[`INPUT`,`TEXTAREA`].includes(Bi.value?.tagName||``)),Hi=f(()=>[`BUTTON`,`A`].includes(Bi.value?.tagName||``));h(`slidev-camera`,`default`,{listenToStorageChanges:!1}),h(`slidev-mic`,`default`,{listenToStorageChanges:!1});var Ui=h(`slidev-scale`,0),Wi=h(`slidev-wake-lock`,!0),Gi=h(`slidev-hide-cursor-idle`,!0);h(`slidev-skip-export-pdf-tip`,!1),h(`slidev-export-capture-delay`,400,{listenToStorageChanges:!1});var Ki=h(`slidev-presenter-cursor`,!0,{listenToStorageChanges:!1}),qi=h(`slidev-cursor-style`,`cursor`,{listenToStorageChanges:!1});function Ji(){Ki.value=!Ki.value}var Yi=h(`slidev-show-editor`,!1,{listenToStorageChanges:!1}),Xi=h(`slidev-editor-vertical`,!1,{listenToStorageChanges:!1}),Zi=h(`slidev-editor-width`,ve?window.innerWidth*.4:318,{listenToStorageChanges:!1}),Qi=h(`slidev-editor-height`,ve?window.innerHeight*.4:300,{listenToStorageChanges:!1}),$i=ne(null),ea=h(`slidev-presenter-font-size`,1,{listenToStorageChanges:!1}),ta=h(`slidev-presenter-layout`,1,{listenToStorageChanges:!1}),na={invert:!1,contrast:1,brightness:1,hueRotate:0,saturate:1,sepia:0},ra=h(`slidev-viewer-css-filter`,na,{listenToStorageChanges:!1,mergeDefaults:!0,deep:!0}),ia=f(()=>Object.keys(na).some(e=>ra.value[e]!==na[e]));function aa(){ta.value+=1,ta.value>3&&(ta.value=1)}function oa(){ea.value=Math.min(2,ea.value+.1)}function sa(){ea.value=Math.max(.5,ea.value-.1)}var ca=fe(ki),la=h(`slidev-sync-directions`,{viewerSend:!0,viewerReceive:!0,presenterSend:!0,presenterReceive:!0},{listenToStorageChanges:!1,mergeDefaults:!0});function ua(e,t,n=1){let r=t.meta.slide.level??n;r&&r>n&&e.length>0?ua(e[e.length-1].children,t,n+1):e.push({no:t.no,children:[],level:n,titleLevel:r,path:Si(t.meta.slide?.frontmatter?.routeAlias??t.no,!1),hideInToc:!!t.meta?.slide?.frontmatter?.hideInToc,title:t.meta?.slide?.title})}function da(e,t,n=!1,r,i){return e.map(e=>{let a={...e,active:e.no===i?.value,hasActiveParent:n};return a.children.length>0&&(a.children=da(a.children,t,a.active||a.hasActiveParent,a,i)),r&&(a.active||a.activeParent)&&(r.activeParent=!0),a})}function fa(e,t=1){return e.filter(e=>!e.hideInToc).map(e=>({...e,children:fa(e.children,t+1)}))}function pa(e,t,n){let r=f(()=>e.value.filter(e=>e.meta?.slide?.title).reduce((e,t)=>(ua(e,t),e),[])),i=f(()=>da(r.value,n.value,void 0,void 0,t));return f(()=>fa(i.value))}function ma(e,t,n=m(0),r,i,a){let s=f(()=>$.value.length),c=m(0),l=m(0),u=f(()=>Si(e.value,r.value)),d=f(()=>e.value.no),ee=f(()=>e.value.meta?.layout||(d.value===1?`cover`:`default`)),te=f(()=>e.value.meta.slide.frontmatter),p=f(()=>t.value.current),ne=f(()=>t.value.clicksStart),re=f(()=>t.value.total),ie=f(()=>$.value[Math.min($.value.length,d.value+1)-1]),ae=f(()=>$.value[Math.max(1,d.value-1)-1]),oe=f(()=>d.value<$.value.length||p.valued.value>1||p.value>0),ce=f(()=>i.value?void 0:Ti(c.value,e.value,ae.value));o(e,(e,t)=>{c.value=e.no-t.no});async function le(e){return!1}let ue=pa($,d,e);async function de(){l.value=1,re.value<=n.value?await pe():n.value+=1}async function fe(){l.value=-1,n.value<=ne.value?await me(!0):--n.value}async function pe(e=!1){l.value=1,d.value<$.value.length&&await h(d.value+1,e&&!i.value?be:void 0)}async function me(e=!1){l.value=-1,d.value>1&&await h(d.value-1,e&&!i.value?be:void 0)}function he(){return h(1)}function ge(){return h(s.value)}async function h(e,t=0,i=!1){Ai.value=!1;let o=d.value!==e,s=t!==n.value,c=xi(e)?.meta,l=c?.slide?.frontmatter.clicksStart??0;t=Se(t,l,c?.__clicksContext?.total??999999),(i||o||s)&&await a?.push({path:Si(e,r.value,a.currentRoute.value.name===`export`),query:{...a.currentRoute.value.query,clicks:t===0?void 0:t.toString(),embedded:location.search.includes(`embedded`)?`true`:void 0}})}function _e(){a?.push({path:Si(d.value,!0),query:{...a.currentRoute.value.query}})}function ve(){a?.push({path:Si(d.value,!1),query:{...a.currentRoute.value.query}})}return{slides:$,total:s,currentPath:u,currentSlideNo:d,currentPage:d,currentSlideRoute:e,currentLayout:ee,currentFrontmatter:te,currentTransition:ce,clicksDirection:l,nextRoute:ie,prevRoute:ae,clicksContext:t,clicks:p,clicksStart:ne,clicksTotal:re,hasNext:oe,hasPrev:se,tocTree:ue,navDirection:c,openInEditor:le,next:de,prev:fe,go:h,goLast:ge,goFirst:he,nextSlide:pe,prevSlide:me,enterPresenter:_e,exitPresenter:ve}}var ha=ue(()=>{let e=pe(),t=le(),n=f(()=>(e?.currentRoute?.value?.query,new URLSearchParams(location.search))),r=f(()=>n.value.has(`print`)||t.name===`export`),i=m(n.value.get(`print`)===`clicks`),a=f(()=>n.value.has(`embedded`)),o=f(()=>t.name===`play`),s=f(()=>t.name===`presenter`),c=f(()=>t.name===`notes`),l=f(()=>!s.value&&(!g.remote||n.value.get(`password`)===g.remote)),u=f(()=>!!t.params.no),d=f(()=>u.value?xi(t.params.no)?.no??1:1),ee=f(()=>$.value[d.value-1]),te=m(Ke($.value.length,t?.query?.range)),p=yi(`clicks`,`0`),ne=f(()=>ie(ee.value)),re=f({get(){let e=+(p.value||0);return Number.isNaN(e)&&(e=0),e},set(e){Ai.value=!1,p.value=e.toString()}});function ie(e){if(e?.meta?.__clicksContext)return e.meta.__clicksContext;let t=e.no,n=He(f({get(){return d.value===t?Math.max(+(p.value??0),n.clicksStart):d.value>t?be:n.clicksStart},set(e){d.value===t&&(p.value=e.toString())}}),e?.meta.slide?.frontmatter.clicksStart??0,e?.meta.clicks);return e?.meta&&(e.meta.__clicksContext=n),n}return{router:e,currentRoute:f(()=>t),isPrintMode:r,isPrintWithClicks:i,isEmbedded:a,isPlaying:o,isPresenter:s,isNotesViewer:c,isPresenterAvailable:l,hasPrimarySlide:u,currentSlideNo:d,currentSlideRoute:ee,clicksContext:ne,queryClicksRaw:p,queryClicks:re,printRange:te,getPrimaryClicks:ie}}),ga=ue(()=>{let e=ha(),t=pe(),n=ma(e.currentSlideRoute,e.clicksContext,e.queryClicks,e.isPresenter,e.isPrintMode,t);return o([n.total,e.currentRoute],async()=>{let t=e.currentRoute.value.params.no;e.hasPrimarySlide.value&&!xi(t)&&(t&&t!==`index.html`?await n.go(n.total.value,0,!0):await n.go(1,0,!0))},{flush:`pre`,immediate:!0}),{...n,...e}});function _a(){let e=ga(),t=r()?ce(xe,void 0):void 0;if(!t)return e;let n=p(t).nav;return{...e,...n}}export{Fe as $,Ui as A,Si as B,Pi as C,ki as D,Di as E,ra as F,Ue as G,Ke as H,na as I,Ae as J,Be as K,Wi as L,ca as M,Ji as N,Ki as O,aa as P,Me as Q,Ii as R,Mi as S,Oi as T,Ge as U,$ as V,He as W,je as X,Ie as Y,Ne as Z,Hi as _,qi as a,ta as b,Qi as c,ia as d,Pe as et,Gi as f,Vi as g,Xi as h,Fi as i,we as it,la as j,Ei as k,Zi as l,oa as m,$i as n,Se as nt,sa as o,Ai as p,_ as q,Bi as r,De as rt,ji as s,_a as t,g as tt,zi as u,Ri as v,Yi as w,ea as x,Li as y,xi as z}; \ No newline at end of file diff --git a/lecture-07/index.html b/lecture-07/index.html new file mode 100644 index 0000000000000000000000000000000000000000..cf1d3d16fc8a1661ac2d2ff845c4a1fb38a3cbab --- /dev/null +++ b/lecture-07/index.html @@ -0,0 +1,30 @@ + + + + + +Generative Models and GANs - Slidev + + + + + + + + + + + + + + + + + + + +
+
+ + + diff --git a/lecture-07/slides.pdf b/lecture-07/slides.pdf new file mode 100644 index 0000000000000000000000000000000000000000..4c6aa0c4f6278b7aff6fffe60c58c3135c367f46 --- /dev/null +++ b/lecture-07/slides.pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66cc58fa7ba96665b6f7012e3999b97852d03e811ff0b0d9e2124b7940bf1682 +size 3257129