@font-face{font-family:inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-variable.woff2)format('woff2')}@font-face{font-family:inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/inter-variable-italic.woff2)format('woff2')}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-variable.woff2)format('woff2')}body.dark-theme ::selection{background:rgba(56,139,253,.35);color:#f0f6fc}::selection{background:var(--site-selection);color:var(--site-heading)}body{--site-bg:#ffffff;--site-surface:#f6f8fa;--site-border:#d0d7de;--site-border-strong:#afb8c1;--site-text:#1f2328;--site-heading:#1f2328;--site-muted:#57606a;--site-secondary:#57606a;--site-tertiary:#6e7781;--site-lead:#24292f;--site-accent:#0969da;--site-accent-strong:#1f6feb;--site-accent-hover:#0969da;--site-success:#1a7f37;--site-amber:#b45309;--site-amber-hover:#d97706;--site-amber-ink:#ffffff;--site-selection:rgba(9, 105, 218, 0.25);--site-nav-bg:rgba(255, 255, 255, 0.85);--site-chip-bg:rgba(0, 0, 0, 0.04);--site-shadow:rgba(0, 0, 0, 0.1)}body.dark-theme{--site-bg:#0d1117;--site-surface:#161b22;--site-border:#30363d;--site-border-strong:#3d444d;--site-text:#e6edf3;--site-heading:#f0f6fc;--site-muted:#8b949e;--site-secondary:#adbac7;--site-tertiary:#9aa4b2;--site-lead:#c9d1d9;--site-accent:#58a6ff;--site-accent-strong:#1f6feb;--site-accent-hover:#388bfd;--site-success:#3fb950;--site-amber:#f59e0b;--site-amber-hover:#fbbf24;--site-amber-ink:#1f1300;--site-selection:rgba(56, 139, 253, 0.35);--site-nav-bg:rgba(13, 17, 23, 0.85);--site-chip-bg:rgba(255, 255, 255, 0.04);--site-shadow:rgba(0, 0, 0, 0.25)}*,*::before,*::after{box-sizing:border-box}a{color:inherit;text-decoration:none}img,svg,video{max-width:100%}button{font:inherit}:focus-visible{outline:2px solid var(--site-accent);outline-offset:2px;border-radius:2px}html{font-family:inter,system-ui,-apple-system,segoe ui,sans-serif;--site-mono:'JetBrains Mono', ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;font-weight:400;scroll-behavior:smooth}body{margin:0;font-family:inter,system-ui,-apple-system,segoe ui,sans-serif;background-color:var(--site-bg);color:var(--site-text);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(min-width:48em){html{font-size:16px}}body{overflow-y:auto;overflow-x:hidden;height:auto;display:flex;flex-direction:column;min-height:100vh}.site-main{flex:1;width:100%;max-width:48rem;margin:0 auto;padding:4rem 1.5rem 2rem}.site-main-wide{max-width:70rem}.home-nav{position:sticky;top:0;z-index:50;background:var(--site-nav-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--site-border)}.home-nav-inner{max-width:70rem;margin:0 auto;padding:0 1.5rem;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;height:3.75rem}.home-brand{display:inline-block;font-weight:600;letter-spacing:-.01em;line-height:1;color:var(--site-heading);font-size:1.05rem}.home-brand:hover{color:var(--site-heading)}.home-brand svg{height:1.35em;width:auto;vertical-align:middle;border-radius:.35em}.home-brand .brand-logo{display:inline-block;vertical-align:middle;height:1.8em;width:1.8em;margin:0 .55rem 0 0;border-radius:.3em;object-fit:cover}.home-nav-links{display:flex;align-items:center;gap:1.6rem}.home-nav .home-nav-links a{color:var(--site-muted);font-size:.9rem;transition:color .15s ease}.home-nav .home-nav-links a:hover{color:var(--site-heading)}.home-nav .home-nav-links a[aria-current]{color:var(--site-heading)}.home-nav .home-nav-links .home-nav-cta{background:var(--site-accent-strong);color:#fff;font-weight:600;padding:.45rem .95rem;border-radius:.375rem;font-size:.875rem;transition:background-color .15s ease}.home-nav .home-nav-links .home-nav-cta:hover{background:var(--site-accent-hover);color:#fff}@media(max-width:48em){.home-nav-links{gap:1rem}.home-nav-links a:not(.home-nav-cta){display:none}}.home-footer{border-top:1px solid var(--site-border);margin-top:4rem}.home-footer-inner{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;max-width:70rem;margin:0 auto;padding:2rem 1.5rem;box-sizing:border-box}.home-footer-tagline{color:var(--site-muted);font-size:.85rem;max-width:34rem;margin:0}.home-footer-links{display:flex;flex-wrap:wrap;gap:1.2rem}.home-footer .home-footer-links a{color:var(--site-muted);font-size:.85rem;transition:color .15s ease}.home-footer .home-footer-links a:hover{color:var(--site-heading)}.btn-light-dark{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;padding:0;background:0 0;border:1px solid var(--site-border);border-radius:.375rem;color:var(--site-muted);cursor:pointer;transition:color .15s ease,border-color .15s ease}.btn-light-dark:hover{color:var(--site-heading);border-color:var(--site-border-strong)}.btn-light-dark svg{width:1rem;height:1rem;color:currentColor}.btn-light-dark .moon{display:block}.btn-light-dark .sun{display:none}body.dark-theme .btn-light-dark .moon{display:none}body.dark-theme .btn-light-dark .sun{display:block}.portfolio-title{font-size:2.1rem;font-weight:600;letter-spacing:-.015em;margin:0 0 .75rem}.portfolio-intro{color:var(--site-secondary);font-size:1.05rem;line-height:1.65;max-width:40rem;margin-bottom:3rem}.portfolio-h2{font-size:1.4rem;font-weight:600;margin:3rem 0 1.25rem;padding-top:2rem;border-top:1px solid var(--site-border)}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem}.portfolio-card{background:var(--site-surface);border:1px solid var(--site-border);border-radius:.75rem;padding:1.4rem}.portfolio-card h3{font-size:1.05rem;margin:0 0 .25rem}.portfolio-card h3 a{color:var(--site-heading)}.portfolio-card h3 a:hover{color:var(--site-accent)}.portfolio-role{font-size:.82rem;color:var(--site-accent);font-weight:500;margin-bottom:.6rem}.portfolio-card p{color:var(--site-secondary);font-size:.92rem;line-height:1.6}.portfolio-clients{margin:.6rem 0 0;padding-left:1.1rem;color:var(--site-secondary);font-size:.88rem;line-height:1.6}.portfolio-clients a{color:var(--site-accent)}.portfolio-group{font-size:1rem;font-weight:600;margin:1.75rem 0 .75rem}.portfolio-repos{list-style:none;margin:0;padding:0}.portfolio-repos li{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .8rem;padding:.65rem 0;border-bottom:1px solid var(--site-border)}.portfolio-repo-name{font-weight:500;color:var(--site-heading)}.portfolio-repos li:hover .portfolio-repo-name{color:var(--site-accent)}.portfolio-repo-stars{color:var(--site-amber);font-size:.82rem}.portfolio-repo-desc{flex-basis:100%;color:var(--site-secondary);font-size:.88rem}.portfolio-more{margin-top:1.75rem;color:var(--site-secondary)}.portfolio-card-wide{grid-column:1/-1}.portfolio-client-list{margin-top:1rem;display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem}.portfolio-client{background:var(--site-bg);border:1px solid var(--site-border);border-radius:.6rem;padding:1rem 1.1rem}.portfolio-client h4{font-size:.95rem;margin:0 0 .35rem}.portfolio-client-role{font-family:var(--site-mono);font-size:.72rem;font-weight:400;color:var(--site-accent);margin-left:.4rem}.portfolio-client p{font-size:.88rem;line-height:1.55;margin:0}@media(max-width:48em){.portfolio-grid{grid-template-columns:1fr}.portfolio-client-list{grid-template-columns:1fr}}.epigraph{margin:3em 0}.epigraph>blockquote{margin-top:3em;margin-bottom:3em;font-style:italic}.epigraph>blockquote>footer{font-style:normal}.epigraph>blockquote>footer>cite{font-style:italic}.newthought{font-variant:small-caps;font-size:1.2em}.sidenote,.marginnote{display:none}.marginnote-ind,.sidenote-number{position:relative;vertical-align:baseline;user-select:none}label.sidenote-number,label.marginnote-ind{display:inline;font-size:.78rem;top:-.4rem;position:relative;cursor:pointer;color:var(--site-accent)}span.sidenote-number,span.marginnote-ind{font-size:.8rem;color:var(--site-accent)}.sidenote .code,.marginnote .code{font-size:.85rem}.margin-toggle{cursor:pointer}input.margin-toggle{position:absolute;outline:none;opacity:0;width:1px;height:1px;margin-left:5px;margin-top:5px;z-index:-100}label:has(+input.margin-toggle:focus){outline:5px auto -webkit-focus-ring-color;outline-offset:-3px}label.sidenote-number{display:inline}label.marginnote-ind{display:none}.margin-toggle:checked+.sidenote,.margin-toggle:checked+.marginnote{display:block;margin:.6rem 0 .8rem;padding:.5rem .75rem;border-left:3px solid var(--site-accent);font-size:.88rem;line-height:1.5;color:var(--site-secondary);font-style:italic}@media(min-width:80em){.site-main:has(.post.has-sidenotes){max-width:64rem}.post.has-sidenotes{padding-right:18rem}.post>p,.post>h2,.post>h3,.post>h4,.post>h5,.post>h6,.post>ul,.post>ol,.post>dl,.post>blockquote,.post>pre,.post>table,.post>hr,.post>.epigraph{max-width:38rem}.sidenote,.marginnote{display:block;float:right;clear:right;width:13rem;margin-top:.15rem;margin-right:-18rem;margin-bottom:.75rem;margin-left:1rem;padding:0 0 0 .5rem;border-left:2px solid var(--site-accent);font-size:.8rem;line-height:1.4;color:var(--site-secondary);font-style:italic}.margin-toggle:checked+.sidenote,.margin-toggle:checked+.marginnote{margin:.15rem -18rem .75rem 1rem;padding:0 0 0 .5rem;border-left:2px solid var(--site-accent);font-size:.8rem;line-height:1.4}.sidenote>.sidenote-number{display:none}label.sidenote-number{cursor:default}label.marginnote-ind{display:inline;cursor:default}}.fullwidth{max-width:90%;clear:both}figure{padding:0;border:0;max-width:55%;margin:0 0 2em}figure.fullwidth{max-width:90%}figcaption{float:right;clear:right;margin-right:-48%;margin-top:0;margin-bottom:0;font-size:.95rem;line-height:1.5;vertical-align:baseline;position:relative;max-width:40%}figure.fullwidth figcaption{margin-right:24%}@media(max-width:760px){figure{max-width:90%}figcaption,figure.fullwidth figcaption{margin-right:0;max-width:none;float:none}}.katex-display{overflow-x:auto}.hll{background-color:rgba(245,158,11,.18)}.kicker{font-family:var(--site-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--site-accent);margin:0 0 .75rem}.chip{display:inline-block;font-family:var(--site-mono);font-size:.72rem;color:var(--site-tertiary);background:var(--site-chip-bg);border:1px solid var(--site-border);border-radius:.35rem;padding:.22rem .55rem;line-height:1.4}a.chip{transition:color .15s ease,border-color .15s ease}a.chip:hover{color:var(--site-accent);border-color:var(--site-accent)}.chip-count{margin-left:.35rem;color:var(--site-muted)}.blog-index-header{padding:0 0 1rem}.blog-index-title{font-size:clamp(1.75rem,4vw,2.3rem);font-weight:600;letter-spacing:-.02em;line-height:1.2;color:var(--site-heading);margin:0 0 .9rem;text-wrap:balance}.blog-index-intro{color:var(--site-secondary);font-size:1.02rem;line-height:1.65;margin:0;max-width:40rem}.blog-index-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.4rem;margin-top:1.5rem;font-family:var(--site-mono);font-size:.78rem}.blog-count{color:var(--site-tertiary)}.blog-rss{color:var(--site-muted);transition:color .15s ease}.blog-rss:hover{color:var(--site-accent)}.blog-list{list-style:none;margin:2.5rem 0 0;padding:0;border-top:1px solid var(--site-border)}.blog-item{border-bottom:1px solid var(--site-border)}.blog-item-link{display:grid;gap:.45rem;padding:1.9rem 0;color:var(--site-text)}.blog-item-date{font-family:var(--site-mono);font-size:.78rem;color:var(--site-muted);transition:color .15s ease}.blog-item-title{font-size:1.4rem;font-weight:600;letter-spacing:-.015em;line-height:1.3;color:var(--site-heading);text-wrap:balance;transition:color .15s ease}.blog-item-summary{color:var(--site-secondary);font-size:.95rem;line-height:1.6;max-width:42rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-item-tags{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;margin-top:.35rem;font-family:var(--site-mono);font-size:.75rem;color:var(--site-tertiary)}.blog-item-link:hover .blog-item-title{color:var(--site-accent)}.blog-item-link:hover .blog-item-date{color:var(--site-accent)}.blog-tag-cloud{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2.5rem}.post{color:var(--site-text);font-size:1rem;line-height:1.75;font-optical-sizing:auto}.post .post-back{display:inline-block;font-family:var(--site-mono);font-weight:400;color:var(--site-muted);font-size:.8rem;margin-bottom:2.5rem;transition:color .15s ease}.post .post-back:hover{color:var(--site-heading);text-decoration:none}.post-header{border-bottom:1px solid var(--site-border);padding-bottom:1.75rem;margin-bottom:2.75rem}.post-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1.1rem;font-family:var(--site-mono);font-size:.78rem;color:var(--site-muted);margin-bottom:1.1rem}.post-meta .post-date{display:inline;margin:0;color:var(--site-muted)}.post-meta .tags{display:inline-flex;flex-wrap:wrap;gap:.3rem 1.1rem;margin:0;padding:0;list-style:none}.post-meta .tags li{margin:0}.post-meta .tags li a{color:var(--site-tertiary);transition:color .15s ease}.post-meta .tags li a:hover{color:var(--site-accent)}.post-title{font-size:clamp(1.9rem,4.5vw,2.5rem);font-weight:600;letter-spacing:-.025em;line-height:1.15;color:var(--site-heading);margin:0;text-wrap:balance}.post-subtitle{margin:.9rem 0 0;font-size:1.1rem;line-height:1.6;color:var(--site-secondary);max-width:38rem;text-wrap:pretty}.post h2{font-size:1.5rem;font-weight:600;line-height:1.33;margin:2.2em 0 .9em;letter-spacing:-.01em;color:var(--site-heading)}.post h3{font-size:1.25rem;font-weight:600;line-height:1.5;margin:1.8em 0 .7em;color:var(--site-heading)}.post h4,.post h5,.post h6{font-weight:600;color:var(--site-heading)}.post p{margin:1.25em 0}.post a{color:var(--site-accent);font-weight:500;text-decoration:none}.post a:hover{color:var(--site-accent-hover);text-decoration:underline;text-underline-offset:3px}.post strong{font-weight:600;color:var(--site-heading)}.post ul,.post ol{margin:1.25em 0;padding-left:1.6rem}.post li{margin:.45em 0}.post li::marker{color:var(--site-accent)}.post blockquote{margin:1.75em 0;padding:.15em 0 .15em 1.25rem;border-left:3px solid var(--site-accent);color:var(--site-secondary);font-style:italic}.post blockquote p{margin:.6em 0}.post blockquote footer{font-style:normal;font-size:.9em;color:var(--site-muted)}.post blockquote footer cite{font-style:italic}.post hr{border:0;border-top:1px solid var(--site-border);margin:2.75em 0}.post img{max-width:100%;border-radius:.75rem;border:1px solid var(--site-border)}.post iframe{max-width:100%;border-radius:.75rem}.post del{color:var(--site-muted)}.post mark{background:rgba(245,158,11,.25);color:var(--site-heading);padding:0 .2em;border-radius:.2em}.post abbr{border-bottom:1px dotted var(--site-border-strong);cursor:help}.post sup{font-size:.75em}.post code{font-family:var(--site-mono);font-size:.85em;background:var(--site-chip-bg);border:1px solid var(--site-border);border-radius:.3rem;padding:.12em .35em;color:var(--site-accent)}.post pre{position:relative;background:var(--site-surface);border:1px solid var(--site-border);border-radius:.75rem;padding:1.1rem 1.3rem;overflow-x:auto;margin:1.5em 0;line-height:1.6;font-size:.875rem}body.dark-theme .post pre.chroma,body:not(.dark-theme) .post pre.chroma{background-color:var(--site-surface)}.post pre code{background:0 0;border:0;padding:0;font-size:inherit;color:var(--site-text);font-family:var(--site-mono)}.copy-button{position:absolute;top:.6rem;right:.6rem;z-index:1;font-family:var(--site-mono);font-size:.68rem;color:var(--site-muted);background:var(--site-surface);border:1px solid var(--site-border);border-radius:.35rem;padding:.25rem .6rem;cursor:pointer;opacity:0;transition:opacity .15s ease,color .15s ease,border-color .15s ease}.post pre:hover .copy-button,.copy-button:focus-visible{opacity:1}.copy-button:hover{color:var(--site-heading);border-color:var(--site-border-strong)}.copy-button.copy-success{color:var(--site-success);border-color:var(--site-success);opacity:1}.post table{width:100%;border-collapse:collapse;margin:1.75em 0;font-size:.92rem}.post th{font-family:var(--site-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--site-muted);text-align:left;border-bottom:1px solid var(--site-border-strong);padding:.6rem .9rem}.post td{border-bottom:1px solid var(--site-border);padding:.6rem .9rem}.post tr:last-child td{border-bottom:0}.post kbd{font-family:var(--site-mono);font-size:.8em;background:var(--site-surface);border:1px solid var(--site-border-strong);border-bottom-width:2px;border-radius:.3rem;padding:.1rem .45rem;color:var(--site-text)}.video-container{position:relative;width:100%;aspect-ratio:16/9;margin:1.75em 0;border-radius:.75rem;overflow:hidden;border:1px solid var(--site-border)}.video-container iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video--4x3{aspect-ratio:4/3}.row{display:grid;gap:.3rem;margin:0 0 1rem}.row .column:nth-of-type(2n){margin-left:1rem}.row .column:nth-of-type(3n){margin-left:2rem}.row .column>p:first-child{margin-top:0}.row .column>p:last-child{margin-bottom:0}.column>p{width:100%}@media(min-width:760px){.row{grid-auto-columns:1fr;grid-auto-flow:column;gap:1.4rem;margin:0 0 1.4rem}.row .column{margin-left:0!important}}.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3.5rem}.post-nav:has(.post-nav-card:only-child){grid-template-columns:1fr}.post-nav-card{display:flex;flex-direction:column;gap:.3rem;background:var(--site-surface);border:1px solid var(--site-border);border-radius:.75rem;padding:1.1rem 1.3rem;transition:border-color .15s ease,transform .15s ease}.post-nav-card:hover{border-color:var(--site-border-strong);transform:translateY(-1px)}.post-nav-next{text-align:right}.post-nav-label{font-family:var(--site-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--site-muted)}.post-nav-title{color:var(--site-heading);font-weight:500;font-size:.95rem;line-height:1.45}.post-nav-card:hover .post-nav-title{color:var(--site-accent)}.post-comments{margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid var(--site-border)}.notfound{text-align:center;padding:5rem 0 4rem}.notfound .kicker{margin-bottom:1rem}.notfound-title{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:600;color:var(--site-heading);margin:0 0 1rem}.notfound-text{color:var(--site-secondary);max-width:34rem;margin:0 auto 1.75rem}.notfound-link{color:var(--site-accent);font-weight:500}@media(max-width:48em){.blog-index-header{padding-top:0}.blog-item-link{padding:1.5rem 0}.blog-item-title{font-size:1.25rem}.post-nav{grid-template-columns:1fr}.post-nav-next{text-align:left}}body.dark-theme .bg{color:#e6edf3;background-color:#0d1117}body.dark-theme .chroma{color:#e6edf3;background-color:#0d1117;-webkit-text-size-adjust:none}body.dark-theme .chroma .err{color:#f85149}body.dark-theme .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}body.dark-theme .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}body.dark-theme .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}body.dark-theme .chroma .hl{background-color:#6e7681}body.dark-theme .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#737679}body.dark-theme .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#6e7681}body.dark-theme .chroma .line{display:flex}body.dark-theme .chroma .k{color:#ff7b72}body.dark-theme .chroma .kc{color:#79c0ff}body.dark-theme .chroma .kd{color:#ff7b72}body.dark-theme .chroma .kn{color:#ff7b72}body.dark-theme .chroma .kp{color:#79c0ff}body.dark-theme .chroma .kr{color:#ff7b72}body.dark-theme .chroma .kt{color:#ff7b72}body.dark-theme .chroma .nc{color:#f0883e;font-weight:700}body.dark-theme .chroma .no{color:#79c0ff;font-weight:700}body.dark-theme .chroma .nd{color:#d2a8ff;font-weight:700}body.dark-theme .chroma .ni{color:#ffa657}body.dark-theme .chroma .ne{color:#f0883e;font-weight:700}body.dark-theme .chroma .nl{color:#79c0ff;font-weight:700}body.dark-theme .chroma .nn{color:#ff7b72}body.dark-theme .chroma .nx{color:#e6edf3}body.dark-theme .chroma .py{color:#79c0ff}body.dark-theme .chroma .nt{color:#7ee787}body.dark-theme .chroma .nv{color:#79c0ff}body.dark-theme .chroma .vc{color:#79c0ff}body.dark-theme .chroma .vg{color:#79c0ff}body.dark-theme .chroma .vi{color:#79c0ff}body.dark-theme .chroma .vm{color:#79c0ff}body.dark-theme .chroma .nf{color:#d2a8ff;font-weight:700}body.dark-theme .chroma .fm{color:#d2a8ff;font-weight:700}body.dark-theme .chroma .l{color:#a5d6ff}body.dark-theme .chroma .ld{color:#79c0ff}body.dark-theme .chroma .s{color:#a5d6ff}body.dark-theme .chroma .sa{color:#79c0ff}body.dark-theme .chroma .sb{color:#a5d6ff}body.dark-theme .chroma .sc{color:#a5d6ff}body.dark-theme .chroma .dl{color:#79c0ff}body.dark-theme .chroma .sd{color:#a5d6ff}body.dark-theme .chroma .s2{color:#a5d6ff}body.dark-theme .chroma .se{color:#79c0ff}body.dark-theme .chroma .sh{color:#79c0ff}body.dark-theme .chroma .si{color:#a5d6ff}body.dark-theme .chroma .sx{color:#a5d6ff}body.dark-theme .chroma .sr{color:#79c0ff}body.dark-theme .chroma .s1{color:#a5d6ff}body.dark-theme .chroma .ss{color:#a5d6ff}body.dark-theme .chroma .m{color:#a5d6ff}body.dark-theme .chroma .mb{color:#a5d6ff}body.dark-theme .chroma .mf{color:#a5d6ff}body.dark-theme .chroma .mh{color:#a5d6ff}body.dark-theme .chroma .mi{color:#a5d6ff}body.dark-theme .chroma .il{color:#a5d6ff}body.dark-theme .chroma .mo{color:#a5d6ff}body.dark-theme .chroma .o{color:#ff7b72;font-weight:700}body.dark-theme .chroma .ow{color:#ff7b72;font-weight:700}body.dark-theme .chroma .or{color:#ff7b72;font-weight:700}body.dark-theme .chroma .c{color:#8b949e;font-style:italic}body.dark-theme .chroma .ch{color:#8b949e;font-style:italic}body.dark-theme .chroma .cm{color:#8b949e;font-style:italic}body.dark-theme .chroma .c1{color:#8b949e;font-style:italic}body.dark-theme .chroma .cs{color:#8b949e;font-weight:700;font-style:italic}body.dark-theme .chroma .cp{color:#8b949e;font-weight:700;font-style:italic}body.dark-theme .chroma .cpf{color:#8b949e;font-weight:700;font-style:italic}body.dark-theme .chroma .gd{color:#ffa198;background-color:#490202}body.dark-theme .chroma .ge{font-style:italic}body.dark-theme .chroma .gr{color:#ffa198}body.dark-theme .chroma .gh{color:#79c0ff;font-weight:700}body.dark-theme .chroma .gi{color:#56d364;background-color:#0f5323}body.dark-theme .chroma .go{color:#8b949e}body.dark-theme .chroma .gp{color:#8b949e}body.dark-theme .chroma .gs{font-weight:700}body.dark-theme .chroma .gu{color:#79c0ff}body.dark-theme .chroma .gt{color:#ff7b72}body.dark-theme .chroma .gl{text-decoration:underline}body.dark-theme .chroma .w{color:#6e7681}body:not(.dark-theme) .bg{background-color:#f7f7f7}body:not(.dark-theme) .chroma{background-color:#f7f7f7;-webkit-text-size-adjust:none}body:not(.dark-theme) .chroma .err{color:#f6f8fa;background-color:#82071e}body:not(.dark-theme) .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}body:not(.dark-theme) .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}body:not(.dark-theme) .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}body:not(.dark-theme) .chroma .hl{background-color:#dedede}body:not(.dark-theme) .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}body:not(.dark-theme) .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}body:not(.dark-theme) .chroma .line{display:flex}body:not(.dark-theme) .chroma .k{color:#cf222e}body:not(.dark-theme) .chroma .kc{color:#cf222e}body:not(.dark-theme) .chroma .kd{color:#cf222e}body:not(.dark-theme) .chroma .kn{color:#cf222e}body:not(.dark-theme) .chroma .kp{color:#cf222e}body:not(.dark-theme) .chroma .kr{color:#cf222e}body:not(.dark-theme) .chroma .kt{color:#cf222e}body:not(.dark-theme) .chroma .na{color:#1f2328}body:not(.dark-theme) .chroma .nc{color:#1f2328}body:not(.dark-theme) .chroma .no{color:#0550ae}body:not(.dark-theme) .chroma .nd{color:#0550ae}body:not(.dark-theme) .chroma .ni{color:#6639ba}body:not(.dark-theme) .chroma .nl{color:#900;font-weight:700}body:not(.dark-theme) .chroma .nn{color:#24292e}body:not(.dark-theme) .chroma .nx{color:#1f2328}body:not(.dark-theme) .chroma .nt{color:#0550ae}body:not(.dark-theme) .chroma .nb{color:#6639ba}body:not(.dark-theme) .chroma .bp{color:#6a737d}body:not(.dark-theme) .chroma .nv{color:#953800}body:not(.dark-theme) .chroma .vc{color:#953800}body:not(.dark-theme) .chroma .vg{color:#953800}body:not(.dark-theme) .chroma .vi{color:#953800}body:not(.dark-theme) .chroma .vm{color:#953800}body:not(.dark-theme) .chroma .nf{color:#6639ba}body:not(.dark-theme) .chroma .fm{color:#6639ba}body:not(.dark-theme) .chroma .s{color:#0a3069}body:not(.dark-theme) .chroma .sa{color:#0a3069}body:not(.dark-theme) .chroma .sb{color:#0a3069}body:not(.dark-theme) .chroma .sc{color:#0a3069}body:not(.dark-theme) .chroma .dl{color:#0a3069}body:not(.dark-theme) .chroma .sd{color:#0a3069}body:not(.dark-theme) .chroma .s2{color:#0a3069}body:not(.dark-theme) .chroma .se{color:#0a3069}body:not(.dark-theme) .chroma .sh{color:#0a3069}body:not(.dark-theme) .chroma .si{color:#0a3069}body:not(.dark-theme) .chroma .sx{color:#0a3069}body:not(.dark-theme) .chroma .sr{color:#0a3069}body:not(.dark-theme) .chroma .s1{color:#0a3069}body:not(.dark-theme) .chroma .ss{color:#032f62}body:not(.dark-theme) .chroma .m{color:#0550ae}body:not(.dark-theme) .chroma .mb{color:#0550ae}body:not(.dark-theme) .chroma .mf{color:#0550ae}body:not(.dark-theme) .chroma .mh{color:#0550ae}body:not(.dark-theme) .chroma .mi{color:#0550ae}body:not(.dark-theme) .chroma .il{color:#0550ae}body:not(.dark-theme) .chroma .mo{color:#0550ae}body:not(.dark-theme) .chroma .o{color:#0550ae}body:not(.dark-theme) .chroma .ow{color:#0550ae}body:not(.dark-theme) .chroma .or{color:#0550ae}body:not(.dark-theme) .chroma .p{color:#1f2328}body:not(.dark-theme) .chroma .c{color:#57606a}body:not(.dark-theme) .chroma .ch{color:#57606a}body:not(.dark-theme) .chroma .cm{color:#57606a}body:not(.dark-theme) .chroma .c1{color:#57606a}body:not(.dark-theme) .chroma .cs{color:#57606a}body:not(.dark-theme) .chroma .cp{color:#57606a}body:not(.dark-theme) .chroma .cpf{color:#57606a}body:not(.dark-theme) .chroma .gd{color:#82071e;background-color:#ffebe9}body:not(.dark-theme) .chroma .ge{color:#1f2328}body:not(.dark-theme) .chroma .gi{color:#116329;background-color:#dafbe1}body:not(.dark-theme) .chroma .go{color:#1f2328}body:not(.dark-theme) .chroma .gl{text-decoration:underline}body:not(.dark-theme) .chroma .w{color:#fff}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_AMS-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/katex/fonts/KaTeX_Caligraphic-Bold.woff2)format("woff2")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Caligraphic-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/katex/fonts/KaTeX_Fraktur-Bold.woff2)format("woff2")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Fraktur-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/katex/fonts/KaTeX_Main-Bold.woff2)format("woff2")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/katex/fonts/KaTeX_Main-BoldItalic.woff2)format("woff2")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/katex/fonts/KaTeX_Main-Italic.woff2)format("woff2")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Main-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/katex/fonts/KaTeX_Math-BoldItalic.woff2)format("woff2")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/katex/fonts/KaTeX_Math-Italic.woff2)format("woff2")}@font-face{font-family:katex_sansserif;font-style:normal;font-weight:700;src:url(/katex/fonts/KaTeX_SansSerif-Bold.woff2)format("woff2")}@font-face{font-family:katex_sansserif;font-style:italic;font-weight:400;src:url(/katex/fonts/KaTeX_SansSerif-Italic.woff2)format("woff2")}@font-face{font-family:katex_sansserif;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_SansSerif-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Script-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Size1-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Size2-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Size3-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Size4-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Typewriter-Regular.woff2)format("woff2")}.katex{text-rendering:auto;font:1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:initial}.katex .katex-version:after{content:"0.16.3"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.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 .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 .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.83333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.71428571em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.85714286em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14285714em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571429em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857143em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71428571em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714286em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857143em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96285714em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55428571em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.55555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.66666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.77777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.88888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.41666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.58333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.66666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.83333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.34722222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.41666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.48611111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.55555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.69444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.83333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44027778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.28935185em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.34722222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.40509259em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.46296296em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.52083333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.69444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.83333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023148em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981481em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108004em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.28929605em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.33751205em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.38572806em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.43394407em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216008em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.57859209em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.69431051em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.83317261em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961427em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.20096463em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.24115756em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.28135048em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.32154341em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.36173633em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.40192926em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.48231511em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.57877814em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.69453376em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.83360129em}.katex .fontsize-ensurer.reset-size11.size11,.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{display:inline-block;width:.12em}.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 .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.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;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.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{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;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{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}