@media (max-width:640px){.home-intro{max-height:none!important;width:auto!important}}@media (max-width:480px){.mobile-text-align-center{text-align:center!important}}@media (max-width:1024px){.tablet-text-align-center{text-align:center!important}}@media (max-width:1800px){.hd-text-align-center{text-align:center!important}}@media (max-width:480px){.mobile-grid-columnize{grid-template-columns:auto!important}}@media (max-width:1024px){.tablet-grid-columnize{grid-template-columns:auto!important}}@media (max-width:1800px){.hd-grid-columnize{grid-template-columns:auto!important}}.about-social-grid{grid-template-columns:auto auto auto auto auto auto auto auto auto auto auto auto auto auto}@media (max-width:1440px){.about-social-grid{grid-template-columns:auto auto auto auto auto auto auto auto!important}}@media (max-width:720px){.about-social-grid{grid-template-columns:auto auto auto auto auto auto!important}}@media (max-width:480px){.about-social-grid{grid-template-columns:auto auto auto auto!important}.mobile-position-unset{position:static!important}}@media (max-width:1024px){.tablet-position-unset{position:static!important}}@media (max-width:1800px){.hd-position-unset{position:static!important}}@media (max-width:480px){.mobile-display-none{display:none!important}}@media (max-width:1024px){.tablet-display-none{display:none!important}}@media (max-width:1800px){.hd-display-none{display:none!important}}@media (max-width:480px){.mobile-display-block{display:block!important}}@media (max-width:1024px){.tablet-display-block{display:block!important}}@media (max-width:1800px){.hd-display-block{display:block!important}}@media (max-width:480px){.mobile-display-grid{display:grid!important}.mobile-padding-bottom-56-pc{padding-bottom:56.25%!important}.mobile-padding-0{padding:0!important}}@media (max-width:1024px){.tablet-padding-0{padding:0!important}}@media (max-width:1800px){.hd-padding-0{padding:0!important}}@media (max-width:480px){.mobile-padding-1em{padding:1em!important}}@media (max-width:1024px){.tablet-padding-1em{padding:1em!important}}@media (max-width:480px){.mobile-margin-top-1em{margin-top:1em!important}}@media (max-width:1024px){.tablet-margin-top-1em{margin-top:1em!important}}@media (max-width:1800px){.hd-margin-top-1em{margin-top:1em!important}}@media (max-width:1024px){.tablet-margin-top-35vh{margin-top:35vh!important}.tablet-max-width-100vw{max-width:100vw!important}}@media (max-width:480px){.mobile-flex-direction-column{flex-direction:column!important}}@media (max-width:1024px){.tablet-flex-direction-column{flex-direction:column!important}}@media (max-width:480px){.mobile-font-size-0-875em{font-size:.875em!important}.mobile-font-size-1em{font-size:1em!important}}.hover-black-10{background-color:transparent;transition:background-color .3s ease}.hover-black-10:hover{background-color:rgba(0,0,0,.1)}.hover-black-10:active{background-color:rgba(0,0,0,.2)}.blog-topbar{max-width:70em;padding:1em;width:100%}@media (min-width:2200px){.blog-topbar{max-width:90em}}.blog-grid{display:grid;grid-template-columns:1fr 1fr;max-width:70em;padding:0 1.5em;grid-gap:1em}@media (min-width:2200px){.blog-grid{grid-template-columns:1fr 1fr 1fr;max-width:90em}}.blog-grid-item0{grid-area:1/1/span 2/span 2}@media (min-width:2200px){.blog-grid-item0{grid-area:1/1/span 3/span 3}}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:200;src:url(https://alain.xyz/1dbdb4479dfc1946605b.woff2) format("woff2"),url(https://alain.xyz/cc595a841a289cb59001.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:200;src:url(https://alain.xyz/746ba4e2fa5b5564a67d.woff2) format("woff2"),url(https://alain.xyz/ca17eb75430eb012e4fb.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:200;src:url(https://alain.xyz/ed31fdb94a1b1bff89f8.woff2) format("woff2"),url(https://alain.xyz/2e5d3dd10d716765bf95.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:200;src:url(https://alain.xyz/3ad9429eb45251fc8815.woff2) format("woff2"),url(https://alain.xyz/0b3d2d2c19b5916f4fc2.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:200;src:url(https://alain.xyz/3c42ef4c9205209d44b5.woff2) format("woff2"),url(https://alain.xyz/847ad06f6c077300ac77.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:200;src:url(https://alain.xyz/6e2cb2f54b7963821c09.woff2) format("woff2"),url(https://alain.xyz/38b8655472d54b3e4cd6.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:200;src:url(https://alain.xyz/a9476214605e403538af.woff2) format("woff2"),url(https://alain.xyz/4323eba0cf49c3879b3d.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Fira Sans;font-style:italic;font-weight:200;src:url(https://alain.xyz/f22eedd1b5410dd1c1a8.woff2) format("woff2"),url(https://alain.xyz/2407d6474a9a0a8ff07c.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Fira Sans;font-style:italic;font-weight:200;src:url(https://alain.xyz/0a71c28f74c062c0c7c7.woff2) format("woff2"),url(https://alain.xyz/6d5d9be256e867534efe.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Fira Sans;font-style:italic;font-weight:200;src:url(https://alain.xyz/cd74cb3c56de223a1f57.woff2) format("woff2"),url(https://alain.xyz/dbc0df12913fc0db7647.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Fira Sans;font-style:italic;font-weight:200;src:url(https://alain.xyz/50a9b6fa4e27fbd98c75.woff2) format("woff2"),url(https://alain.xyz/ba1781fa5ad3ccaab628.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:italic;font-weight:200;src:url(https://alain.xyz/8f225459e63a8077594f.woff2) format("woff2"),url(https://alain.xyz/d72cd53bd113a241449d.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Fira Sans;font-style:italic;font-weight:200;src:url(https://alain.xyz/3c83853236446aa42cce.woff2) format("woff2"),url(https://alain.xyz/c75e3f307cfb9f4de79c.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:italic;font-weight:200;src:url(https://alain.xyz/9e45c8e1c02d89c2c441.woff2) format("woff2"),url(https://alain.xyz/993854dd0abcb4e5afa3.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:300;src:url(https://alain.xyz/8f15693d12077f12e3d3.woff2) format("woff2"),url(https://alain.xyz/f1781ffdf5ebd373ea42.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:300;src:url(https://alain.xyz/50c73a69e9939f867bbe.woff2) format("woff2"),url(https://alain.xyz/0fe3c305ac4ac6e4235a.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:300;src:url(https://alain.xyz/6d25ee81a0cd5494b50a.woff2) format("woff2"),url(https://alain.xyz/ae61347db6881c505998.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:300;src:url(https://alain.xyz/7eb11e5ca0aa76df4827.woff2) format("woff2"),url(https://alain.xyz/ba50c0780a028cf2bf7f.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:300;src:url(https://alain.xyz/fc0403972a9476527945.woff2) format("woff2"),url(https://alain.xyz/3b015b2f835a7fd75f4c.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:300;src:url(https://alain.xyz/cccbe0f8586e6f51efae.woff2) format("woff2"),url(https://alain.xyz/892dc764fd5874c68150.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:300;src:url(https://alain.xyz/52a206ccaed56813f39c.woff2) format("woff2"),url(https://alain.xyz/40026990c2a91dd63276.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:400;src:url(https://alain.xyz/7b79d7bdfa3ba34f9c51.woff2) format("woff2"),url(https://alain.xyz/04c9c3869253f09590b2.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:400;src:url(https://alain.xyz/5c39fb19059499d8aff9.woff2) format("woff2"),url(https://alain.xyz/a3b84415f47b9cc94529.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:400;src:url(https://alain.xyz/5f185a2e5e90421d44ed.woff2) format("woff2"),url(https://alain.xyz/8a9779681e715e08b978.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:400;src:url(https://alain.xyz/5b550814895b75a1fa41.woff2) format("woff2"),url(https://alain.xyz/084dd58a14d1d0285c35.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:400;src:url(https://alain.xyz/0b8d8a156bd00f92c9a6.woff2) format("woff2"),url(https://alain.xyz/232e2e35f24b3106f28f.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:400;src:url(https://alain.xyz/9a0f40dce6ddda618d6f.woff2) format("woff2"),url(https://alain.xyz/46f3a7092e5b663f5632.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:400;src:url(https://alain.xyz/1be9cf2c65c05085c1e5.woff2) format("woff2"),url(https://alain.xyz/25cda2b0bb9d6823d00b.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:500;src:url(https://alain.xyz/610dd462001675727d27.woff2) format("woff2"),url(https://alain.xyz/5ac55159f4048c26be4e.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:500;src:url(https://alain.xyz/70c97e0c4cea19f2b965.woff2) format("woff2"),url(https://alain.xyz/c972e2a25f5ff4e31347.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:500;src:url(https://alain.xyz/20578d514ff078af2033.woff2) format("woff2"),url(https://alain.xyz/31284b0a8b2ee980565a.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:500;src:url(https://alain.xyz/8248168499de5f260ad2.woff2) format("woff2"),url(https://alain.xyz/9e0b38bee3f47579eb1d.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:500;src:url(https://alain.xyz/bb1703fab2b72065d057.woff2) format("woff2"),url(https://alain.xyz/f1da8c4480c338362404.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:500;src:url(https://alain.xyz/cbb492eeeee3e38b10d1.woff2) format("woff2"),url(https://alain.xyz/b873d8cab7b4aa5787d1.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Fira Sans;font-style:normal;font-weight:500;src:url(https://alain.xyz/09e6e96bb72562a2ab85.woff2) format("woff2"),url(https://alain.xyz/54f80196f940e1cdf4ed.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Source Code Pro;font-style:normal;font-weight:400;src:url(https://alain.xyz/e339020db94f61bb2490.woff2) format("woff2"),url(https://alain.xyz/141a9dd3f00088b35098.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Source Code Pro;font-style:normal;font-weight:400;src:url(https://alain.xyz/b652f9ea30ebb6d12c66.woff2) format("woff2"),url(https://alain.xyz/319575c1cce292f16ae3.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Source Code Pro;font-style:normal;font-weight:400;src:url(https://alain.xyz/4a452edc93bddb2325ee.woff2) format("woff2"),url(https://alain.xyz/bb113dece90781dfdac7.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Source Code Pro;font-style:normal;font-weight:400;src:url(https://alain.xyz/cf41752307444c7cc819.woff2) format("woff2"),url(https://alain.xyz/fd4c0ecd6853a0d5eb4c.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Source Code Pro;font-style:normal;font-weight:400;src:url(https://alain.xyz/1b1abee58ac72ac7db52.woff2) format("woff2"),url(https://alain.xyz/0fa064e6878544270049.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Source Code Pro;font-style:normal;font-weight:400;src:url(https://alain.xyz/0324c6e75caeb4cca122.woff2) format("woff2"),url(https://alain.xyz/e458b56305c334a89337.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Source Code Pro;font-style:normal;font-weight:400;src:url(https://alain.xyz/a198ef76cf902644a5d5.woff2) format("woff2"),url(https://alain.xyz/a0ae09cb3244e7584d31.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{border:0;font-size:100%;font:inherit;margin:0;padding:0;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}*{box-sizing:border-box}.hljs-attr{color:#9cdcfe}.hljs-number{color:#b5cea8}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-selector-tag,.hljs-strong,.hljs-tag,.hljs-type{color:#569cd6}.hljs-code{color:#66d9ef}.hljs-built_in,.hljs-class,.hljs-title{color:#4ec9b0}.hljs-attribute,.hljs-link,.hljs-meta,.hljs-meta-keyword,.hljs-meta>.hljs-keyword,.hljs-regexp,.hljs-symbol{color:#c586c0}.hljs-addition,.hljs-builtin-name,.hljs-bullet,.hljs-emphasis,.hljs-meta-string,.hljs-section,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string,.hljs-subst,.hljs-template-tag,.hljs-template-variable,.hljs-variable{color:#ce9178}.hljs-comment,.hljs-deletion,.hljs-quote{color:#608b4e}.hljs-ln-n:before{content:attr(data-line-number)}.hljs-ln-numbers{-webkit-touch-callout:none;color:hsla(0,0%,93%,.133);padding-right:1em;text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:top;width:2.5em}:root{--csstools-color-scheme--light: ;color-scheme:dark}html{scroll-behavior:smooth;scrollbar-color:rgba(0,0,0,.75) rgba(0,0,0,.1)}body,html{color:#fff;font-family:Fira Sans,sans-serif;font-size:16.5px;font-weight:300;margin:0;padding:0;scroll-margin-top:1.5em;width:100%;z-index:-2}body{background-attachment:fixed;background-color:#15191f;background-position:bottom;background-repeat:no-repeat;background-size:cover;overflow-x:hidden;overflow-y:-moz-scrollbars-none,scroll}input{background:transparent;border:0;color:#fff}input:focus{outline:none}a{cursor:pointer;outline:0;-webkit-text-decoration:none;text-decoration:none}a:link,a:visited{color:#fff}a:hover{color:#abcde8}a:active{color:#4c8abd}h1,h2,h3,h4,h5,h6{font-size:3em;font-style:normal;font-weight:200}h2{font-size:2em}h3{font-size:1.6666em}h4{font-size:1.5em}h5{font-size:1.12em}h6{font-size:1.05em}img{max-width:100%}table{display:table}span,table{max-width:100%}em{font-style:italic;font-weight:200}strong{font-weight:500}p{line-height:1.75em}p a:link,p a:visited{color:#639dcc}p a:hover{color:#abcde8}p a:active{color:#4c8abd}pre{background-color:rgba(0,0,0,.23);border:2px solid rgba(78,160,232,.05);border-radius:.5em;margin:1em 0;overflow:auto;padding:.5em;text-shadow:0 0 0 transparent}code{font-family:Source Code Pro;font-feature-settings:"calt";font-variant-ligatures:contextual;font-weight:400;line-height:1.5em}select{background-color:#0d0f11;border:none;border-radius:.25em;color:#fff;outline:none;padding:.4em}select::-ms-expand{display:none}::-moz-selection{background-color:#147ea1}::selection{background-color:#147ea1}::-webkit-scrollbar{width:auto}::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.5)}body::-webkit-scrollbar-track{background:#101318}::-webkit-scrollbar-track{background:rgba(0,0,0,.75)}::-webkit-scrollbar-thumb:active,::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.85)}::-webkit-scrollbar-button{border-style:solid;height:1em;width:1em}::-webkit-scrollbar-button:vertical:decrement{border-color:transparent transparent rgba(0,0,0,.267);border-width:0 .5em .75em}::-webkit-scrollbar-button:vertical:decrement:hover{border-color:transparent transparent rgba(0,0,0,.667)}::-webkit-scrollbar-button:vertical:increment{border-color:rgba(0,0,0,.267) transparent transparent;border-width:.75em .5em 0}::-webkit-scrollbar-button:vertical:increment:hover{border-color:rgba(0,0,0,.667) transparent transparent}::-webkit-scrollbar-button:horizontal:decrement{border-color:transparent rgba(0,0,0,.267) transparent transparent;border-width:.5em .75em .5em 0}::-webkit-scrollbar-button:horizontal:decrement:hover{border-color:transparent rgba(0,0,0,.667) transparent transparent}::-webkit-scrollbar-button:horizontal:increment{border-color:transparent transparent transparent rgba(0,0,0,.267);border-width:.5em 0 .5em .75em}::-webkit-scrollbar-button:horizontal:increment:hover{border-color:transparent transparent transparent rgba(0,0,0,.667)}pre,table,ul{scrollbar-color:rgba(0,0,0,.175) rgba(0,0,0,.04)}pre::-webkit-scrollbar,table::-webkit-scrollbar,ul::-webkit-scrollbar{width:auto}pre::-webkit-scrollbar-thumb,table::-webkit-scrollbar-thumb,ul::-webkit-scrollbar-thumb{background:rgba(0,0,0,.175)}pre::-webkit-scrollbar-track,table::-webkit-scrollbar-track,ul::-webkit-scrollbar-track{background:rgba(0,0,0,.04)}pre::-webkit-scrollbar-thumb:active,pre::-webkit-scrollbar-thumb:hover,table::-webkit-scrollbar-thumb:active,table::-webkit-scrollbar-thumb:hover,ul::-webkit-scrollbar-thumb:active,ul::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.25)}article .language-hlsl:before{content:" HLSL";display:block;font-size:.75rem;opacity:.5}article .language-glsl:before{content:" GLSL";display:block;font-size:.75rem;opacity:.5}article .language-wgsl:before{content:" WGSL";display:block;font-size:.75rem;opacity:.5}article .language-msl:before{content:" MSL";display:block;font-size:.75rem;opacity:.5}article .language-asm:before{content:" ASM";display:block;font-size:.75rem;opacity:.5}article .language-c:before{content:" C";display:block;font-size:.75rem;opacity:.5}article .language-cpp:before{content:" C++";display:block;font-size:.75rem;opacity:.5}article .language-py:before{content:" Python";display:block;font-size:.75rem;opacity:.5}article .language-cs:before{content:" C#";display:block;font-size:.75rem;opacity:.5}article .language-m:before{content:" Objective C";display:block;font-size:.75rem;opacity:.5}article .language-mm:before{content:" Objective C++";display:block;font-size:.75rem;opacity:.5}article .language-rust:before{content:" Rust";display:block;font-size:.75rem;opacity:.5}article .language-js:before{content:" JavaScript";display:block;font-size:.75rem;opacity:.5}article .language-ts:before{content:" TypeScript";display:block;font-size:.75rem;opacity:.5}article .language-bash:before{content:" Bash";display:block;font-size:.75rem;opacity:.5}article .language-yml:before{content:" YML";display:block;font-size:.75rem;opacity:.5}article .language-yaml:before{content:" Yaml";display:block;font-size:.75rem;opacity:.5}article .language-groovy:before{content:" Grovy";display:block;font-size:.75rem;opacity:.5}article .language-cmake:before{content:" CMake";display:block;font-size:.75rem;opacity:.5}article .language-txt:before{content:" Text";display:block;font-size:.75rem;opacity:.5}article p{line-height:1.75em}article img{display:block;margin:auto;position:relative}article img[title]:after{content:attr(title);display:inline-block;font-style:italic;font-weight:300;text-align:center}article blockquote{background-color:rgba(37,83,117,.151);border-bottom-right-radius:1em;border-left:.5em solid rgba(54,140,202,.52);border-top-right-radius:1em;margin:0 0 1.1em;padding:1em 2em}article strong{font-weight:500}article h1,article h2,article h3,article h4,article h5,article h6,article ol,article ul,article>p{padding:1em 0}article a[href^="#"]{font-weight:400;white-space:nowrap}article a:hover{-webkit-text-decoration:underline;text-decoration:underline}article a[title]:after{content:"“" attr(title) "”";display:inline-block;font-style:italic;font-weight:300;line-height:2em;text-align:center;width:100%}article ul{list-style:disc;padding-left:2em}article ol{list-style:decimal;padding-left:2em}article ol>ol{list-style:lower-alpha}article ol>ol>ol{list-style:lower-roman}article ol,article ul{line-height:1.5em}article table{display:block;line-height:2em;max-width:95vw;overflow-x:auto}article table th{font-weight:500;padding:.5em .7em}article table tr:nth-child(2n){background-color:rgba(0,0,0,.3)}article table tr td{padding:.4em .7em}article code table{display:table;line-height:1.5em}article code table tr:nth-child(2n){background-color:transparent}article code table tr td{padding:0}article pre{max-height:75vh}article pre code,article pre table{width:100%}article pre table tr:hover{background-color:rgba(20,126,161,.067)}article h1,article h2,article h3,article td{border-left:0 solid #4ea0e8;transition:border-left .3s ease 0s}article h1:target,article h2:target,article h3:target,article td:target{border-left:.5em solid #4ea0e8;padding-left:.5em;scroll-margin-top:.5em}article li a:link,article li a:visited{color:#639dcc}article li a:hover{color:#abcde8}article li a:active{color:#4c8abd}article hr{border:none;font-size:1.2em;text-align:center}article hr:before{content:"...";letter-spacing:.5em;line-height:2em}article p>code,article p>em>code,article p>strong>code{background-color:rgba(0,0,0,.2);border:2px solid rgba(78,160,232,.05);border-radius:.5em;color:#d3d3d3;padding:.2em .4em}article .profile-picture{padding:.125em;width:1.625em}article .markademic-profile,article .profile-picture{border-radius:100%;display:inline;margin:0;vertical-align:middle}article .markademic-profile{width:1.5em}.katex-display{overflow-x:auto;overflow-y:hidden;padding:2em 0}.markademic-citename{font-weight:400}.markademic-citations{background:rgba(0,0,0,.094);border-radius:.5em;display:block;font-size:.75rem;max-height:50vh;opacity:.875}.markademic-citations:before{content:"∴ References";font-size:1.33333em;font-weight:300;line-height:2.5em;padding:.5em}.markademic-citations a:link,.markademic-citations a:visited{color:#639dcc}.markademic-citations a:hover{color:#abcde8}.markademic-citations a:active{color:#4c8abd}.markademic-citations tbody{display:block;width:100%}.markademic-citations tr{background-color:rgba(0,0,0,.05);display:block;width:100%}.markademic-citations tr:nth-child(2n){background-color:rgba(0,0,0,.1)}.markademic-citations{margin:0;width:100%}.markademic-symbols:before{content:"∑ Symbols";font-size:2em;font-weight:100;line-height:2em}.btn{border-radius:2em;border-style:solid;border-width:.1em;box-shadow:inset 0 10em 0 hsla(0,0%,100%,0);cursor:pointer;display:inline-block;margin:.5em .25em;padding:.75em 1.5em;-webkit-text-decoration:none;text-decoration:none;text-shadow:0 -1px 0 rgba(0,0,0,.3);transition:box-shadow .3s ease-out,background-color .3s ease-out}.btn:not(:hover){background-color:transparent!important}.btn:active{box-shadow:inset 0 10em 0 rgba(0,0,0,.4)}a.btn{color:#eee;-webkit-text-decoration:none;text-decoration:none}a.btn:hover{color:#fff}a.btn:active{color:#ddd}.ag-loading-screen{align-items:center;display:flex;flex-direction:column;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:100}.ag-loading{display:block;margin:0 auto;width:160px}.ag-loading path{animation:ag-loading-ani 1.75s ease infinite;fill:none;stroke:#fff;stroke-dasharray:248.25230407714844;stroke-dashoffset:248.25230407714844;stroke-miterlimit:10;stroke-width:2}@keyframes ag-loading-ani{to{stroke-dashoffset:-248.25230407714844}}.animation-backraise{background-color:transparent;transition:background-color .3s ease}.animation-backraise:hover{background-color:rgba(23,26,30,.5)}@keyframes fade-from-top{0%{opacity:0;transform:translateY(-2em)}to{opacity:1;transform:translateY(0)}}.animation-fadedown{animation:fade-from-top .171s ease-in forwards;opacity:0}.animation-fadedown:first-child{animation-delay:.1s}.animation-fadedown:nth-child(2){animation-delay:.2s}.animation-fadedown:nth-child(3){animation-delay:.3s}.animation-fadedown:nth-child(4){animation-delay:.4s}.animation-fadedown:nth-child(5){animation-delay:.5s}.animation-fadedown:nth-child(6){animation-delay:.6s}.animation-fadedown:nth-child(7){animation-delay:.7s}.animation-fadedown:nth-child(8){animation-delay:.8s}.animation-fadedown:nth-child(9){animation-delay:.9s}.animation-fadedown:nth-child(10){animation-delay:1s}.animation-fadedown:nth-child(11){animation-delay:1.1s}.animation-fadedown:nth-child(12){animation-delay:1.2s}@keyframes ani-swing{20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}to{transform:rotate(0deg)}}.animation-swing{animation:ani-swing 3s ease forwards;transform-origin:bottom center}@keyframes ani-bounce{0%{transform:scale(0)}80%{transform:scale(1.02)}80%{transform:scale(.98)}to{transform:scale(1)}}.animation-bounce{animation:ani-bounce .3s ease-in-out forwards}.animation-fade-from-top{animation:fade-from-top .171s ease-in forwards}.animation-colortransition{transition:color .3s ease}.media-query-flex{flex-direction:row}@media only screen and (max-width:768px){.media-query-flex{flex-direction:column!important}}.utterances{margin-left:0}.react-utterances .utterances{max-width:54em}@media print{.print-hidden{display:none}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(https://alain.xyz/73ea273a72f4aca30ca5.woff2) format("woff2"),url(https://alain.xyz/d562e886c52f12660a41.woff) format("woff"),url(https://alain.xyz/853be92419a6c3766b9a.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(https://alain.xyz/a1abf90dfd72792a577a.woff2) format("woff2"),url(https://alain.xyz/d757c535a2e5902f1325.woff) format("woff"),url(https://alain.xyz/7489a2fbfb9bfe704420.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(https://alain.xyz/d6484fce1ef428d5bd94.woff2) format("woff2"),url(https://alain.xyz/db074fa22cf224af93d7.woff) format("woff"),url(https://alain.xyz/7e873d3833eb108a0758.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(https://alain.xyz/931d67ea207ab37ee693.woff2) format("woff2"),url(https://alain.xyz/354501bac435c3264834.woff) format("woff"),url(https://alain.xyz/4c761b3711973ab04edf.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(https://alain.xyz/172d3529b26f8cedef6b.woff2) format("woff2"),url(https://alain.xyz/6fdf0ac577be0ba82a4c.woff) format("woff"),url(https://alain.xyz/ed305b5434865e06ffde.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(https://alain.xyz/39890742bc957b368704.woff2) format("woff2"),url(https://alain.xyz/0c3b8929d377c0e9b2f3.woff) format("woff"),url(https://alain.xyz/8169508bf58f8bd92ad8.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(https://alain.xyz/20f389c4120be058d80a.woff2) format("woff2"),url(https://alain.xyz/428978dc7837d46de091.woff) format("woff"),url(https://alain.xyz/828abcb200061cffbaae.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(https://alain.xyz/fe2176f79edaa716e621.woff2) format("woff2"),url(https://alain.xyz/fd947498bc16392e76c2.woff) format("woff"),url(https://alain.xyz/fa675e5e4bec9eb250b6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(https://alain.xyz/f650f111a3b890d116f1.woff2) format("woff2"),url(https://alain.xyz/4f35fbcc9ee8614c2bcc.woff) format("woff"),url(https://alain.xyz/9eba1d77abcf2aa6e94e.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(https://alain.xyz/dcbcbd93bac0470b462d.woff2) format("woff2"),url(https://alain.xyz/3f07ed67f06c720120ce.woff) format("woff"),url(https://alain.xyz/bf2d440b3a42ea78a998.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(https://alain.xyz/6d3d25f4820d0da8f01f.woff2) format("woff2"),url(https://alain.xyz/96759856b4e70f3a8338.woff) format("woff"),url(https://alain.xyz/8a5f936332e8028c7278.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(https://alain.xyz/95591a929f0d32aa282a.woff2) format("woff2"),url(https://alain.xyz/b9cd458ac6d5889ff9c3.woff) format("woff"),url(https://alain.xyz/5b49f4993ae22d7975b4.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(https://alain.xyz/7d393d382f3e7fb1c637.woff2) format("woff2"),url(https://alain.xyz/8d593cfaa96238d5e2f8.woff) format("woff"),url(https://alain.xyz/b257a18c016f37ee4543.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(https://alain.xyz/cd5e231e0cc53b2cb2c0.woff2) format("woff2"),url(https://alain.xyz/02271ec5cb9f5b4588ac.woff) format("woff"),url(https://alain.xyz/2f7bc363fc5424ebda59.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(https://alain.xyz/c81d1b2a4b75d3eded60.woff2) format("woff2"),url(https://alain.xyz/073b3402d036714b4370.woff) format("woff"),url(https://alain.xyz/fc9ba5249878cd8f8d88.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(https://alain.xyz/6eec866c69313624be60.woff2) format("woff2"),url(https://alain.xyz/0108e89c9003e8c14ea3.woff) format("woff"),url(https://alain.xyz/6de7d4b539221a49e9e2.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(https://alain.xyz/2960900c4f271311eb36.woff2) format("woff2"),url(https://alain.xyz/3a99e70aee4076660d38.woff) format("woff"),url(https://alain.xyz/57f5c1837853986ea1db.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(https://alain.xyz/e1951519f6f0596f7356.woff2) format("woff2"),url(https://alain.xyz/7947224e8a9914fa332b.woff) format("woff"),url(https://alain.xyz/8d6b6822586eea3d3b20.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(https://alain.xyz/e418bf257af1052628d8.woff2) format("woff2"),url(https://alain.xyz/aeffd8025cba3647f1a6.woff) format("woff"),url(https://alain.xyz/4ad7c7e8bb8d10a34bb7.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(https://alain.xyz/c295e7f71970f03c0549.woff2) format("woff2"),url(https://alain.xyz/4c6b94fd1d07f8beff7c.woff) format("woff"),url(https://alain.xyz/c5c02d763c89380dcb4e.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.27"}.katex .katex-mathml{position:absolute;clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;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 .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;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:.2777777778em;margin-right:-.5555555556em}.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:.8333333333em}.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.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.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.6666666667em}.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.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.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.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.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:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.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.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.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.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.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:.4166666667em}.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:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.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:.8333333333em}.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.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.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:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.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.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.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.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.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.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.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{display:block;fill:currentColor;fill-opacity:1;fill-rule:nonzero;height:inherit;position:absolute;stroke:currentColor;stroke-dasharray:none;stroke-dashoffset:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-width:1;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}