PageSourceSearch

https://shubhmaheshwari.github.io/

html shubhmaheshwari.github.io collected 2026-10-03 09:56:46 UTC 31,803 bytes, 171 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><meta name="generator" content="Gatsby 3.14.6"/><title data-react-helmet="true">Shubh Maheshwari</title><meta data-react-helmet="true" name="description" content="I am reseacher who specializes in 3D Vision and computer graphics"/><meta data-react-helmet="true" name="image" content="https://shubhmaheshwari.github.io/og.png"/><meta data-react-helmet="true" property="og:title" content="Shubh Maheshwari"/><meta data-react-helmet="true" property="og:description" content="I am reseacher who specializes in 3D Vision and computer graphics"/><meta data-react-helmet="true" property="og:image" content="https://shubhmaheshwari.github.io/og.png"/><meta data-react-helmet="true" property="og:url" content="https://shubhmaheshwari.github.io/"/><meta data-react-helmet="true" property="og:type" content="website"/><meta data-react-helmet="true" name="twitter:card" content="summary_large_image"/><meta data-react-helmet="true" name="twitter:creator" content="@maheshwarishubh9"/><meta data-react-helmet="true" name="twitter:title" content="Shubh Maheshwari"/><meta data-react-helmet="true" name="twitter:description" content="I am reseacher who specializes in 3D Vision and computer graphics"/><meta data-react-helmet="true" name="twitter:image" content="https://shubhmaheshwari.github.io/og.png"/><meta data-react-helmet="true" name="google-site-verification" content="DCl7VAf9tcz6eD9gb67NfkNnJ1PKRNcg8qQiwpbx9Lk"/><style data-styled="" data-styled-version="5.3.6">@font-face{font-family:'Calibre';src:url(/static/Calibre-Regular-b0d4cbb1201155ddccc21d1b8059a670.woff2) format('woff2'), url(/static/Calibre-Regular-98526589fa32315c552129869e08427e.woff) format('woff');font-weight:400;font-style:normal;font-display:auto;}/*!sc*/
2@font-face{font-family:'Calibre';src:url(/static/Calibre-Medium-568dce56f869a519a015d3b69443b067.woff2) format('woff2'), url(/static/Calibre-Medium-46693d9b57a6b8a657b5393258f6e899.woff) format('woff');font-weight:500;font-style:normal;font-display:auto;}/*!sc*/
3@font-face{font-family:'Calibre';src:url(/static/Calibre-Semibold-94fc73852539d6733dc0d80252c5e3fb.woff2) format('woff2'), url(/static/Calibre-Semibold-6972688a249bd53a6c7e69a89e50cdd6.woff) format('woff');font-weight:600;font-style:normal;font-display:auto;}/*!sc*/
4@font-face{font-family:'Calibre';src:url(/static/Calibre-RegularItalic-5f875bd7b669f1e11b622d4d6d71b5b0.woff2) format('woff2'), url(/static/Calibre-RegularItalic-57371b9e514dbbe9da31dad1a298de2d.woff) format('woff');font-weight:400;font-style:italic;font-display:auto;}/*!sc*/
5@font-face{font-family:'Calibre';src:url(/static/Calibre-MediumItalic-7aa140573fd9ed30ae01e117c418b12b.woff2) format('woff2'), url(/static/Calibre-MediumItalic-aa285f95879aa2c2d26b228d5e422da6.woff) format('woff');font-weight:500;font-style:italic;font-display:auto;}/*!sc*/
6@font-face{font-family:'Calibre';src:url(/static/Calibre-SemiboldItalic-5f04bffe7ce988169806d66e417a966a.woff2) format('woff2'), url(/static/Calibre-SemiboldItalic-ad4bd95abee7bca1bdd6a93398f84a04.woff) format('woff');font-weight:600;font-style:italic;font-display:auto;}/*!sc*/
7@font-face{font-family:'SF Mono';src:url(/static/SFMono-Regular-8799e6387338d58f2f137df821c86eb4.woff2) format('woff2'), url(/static/SFMono-Regular-e36fa5257c93fc7711eae342068f9eda.woff) format('woff');font-weight:400;font-style:normal;font-display:auto;}/*!sc*/
8@font-face{font-family:'SF Mono';src:url(/static/SFMono-Semibold-6e6f6c93f4bdf9cbd090c60e97a017e2.woff2) format('woff2'), url(/static/SFMono-Semibold-ee054046915420413d0068fb1e7105c3.woff) format('woff');font-weight:600;font-style:normal;font-display:auto;}/*!sc*/
9@font-face{font-family:'SF Mono';src:url(/static/SFMono-RegularItalic-a596917f86217b40000ff1b894cd0e52.woff2) format('woff2'), url(/static/SFMono-RegularItalic-3a20a00dfdeb4ba538473fa7bf625cbd.woff) format('woff');font-weight:400;font-style:italic;font-display:auto;}/*!sc*/
10@font-face{font-family:'SF Mono';src:url(/static/SFMono-SemiboldItalic-9a0ae6382e12c5e28a7342ffb41cf4da.woff2) format('woff2'), url(/static/SFMono-SemiboldItalic-10eb596e904940cd1aebb2cc6286015c.woff) format('woff');font-weight:600;font-style:italic;font-display:auto;}
10/*!sc*/
11:root{--dark-navy:#020c1b;--navy:#0a192f;--light-navy:#112240;--lightest-navy:#233554;--navy-shadow:rgba(2,12,27,0.7);--dark-slate:#495670;--slate:#8892b0;--light-slate:#a8b2d1;--lightest-slate:#ccd6f6;--white:#e6f1ff;--green:#64ffda;--green-tint:rgba(100,255,218,0.1);--pink:#f57dff;--blue:#57cbff;--font-sans:'Calibre','Inter','San Francisco','SF Pro Text',-apple-system,system-ui,sans-serif;--font-mono:'SF Mono','Fira Code','Fira Mono','Roboto Mono',monospace;--fz-xxs:12px;--fz-xs:13px;--fz-sm:14px;--fz-md:16px;--fz-lg:18px;--fz-xl:20px;--fz-xxl:22px;--fz-heading:32px;--border-radius:4px;--nav-height:100px;--nav-scroll-height:70px;--tab-height:42px;--tab-width:120px;--easing:cubic-bezier(0.645,0.045,0.355,1);--transition:all 0.25s cubic-bezier(0.645,0.045,0.355,1);--hamburger-width:30px;--ham-before:top 0.1s ease-in 0.25s,opacity 0.1s ease-in;--ham-before-active:top 0.1s ease-out,opacity 0.1s ease-out 0.12s;--ham-after:bottom 0.1s ease-in 0.25s,transform 0.22s cubic-bezier(0.55,0.055,0.675,0.19);--ham-after-
11active:bottom 0.1s ease-out,transform 0.22s cubic-bezier(0.215,0.61,0.355,1) 0.12s;}/*!sc*/
12html{box-sizing:border-box;width:100%;-webkit-scroll-behavior:smooth;-moz-scroll-behavior:smooth;-ms-scroll-behavior:smooth;scroll-behavior:smooth;}/*!sc*/
13*,*:before,*:after{box-sizing:inherit;}/*!sc*/
14::selection{background-color:var(--lightest-navy);color:var(--lightest-slate);}/*!sc*/
15:focus{outline:2px dashed var(--green);outline-offset:3px;}/*!sc*/
16:focus:not(:focus-visible){outline:none;outline-offset:0px;}/*!sc*/
17:focus-visible{outline:2px dashed var(--green);outline-offset:3px;}/*!sc*/
18html{-webkit-scrollbar-width:thin;-moz-scrollbar-width:thin;-ms-scrollbar-width:thin;scrollbar-width:thin;-webkit-scrollbar-color:var(--dark-slate) var(--navy);-moz-scrollbar-color:var(--dark-slate) var(--navy);-ms-scrollbar-color:var(--dark-slate) var(--navy);scrollbar-color:var(--dark-slate) var(--navy);}/*!sc*/
19::-webkit-scrollbar{width:12px;}/*!sc*/
20::-webkit-scrollbar-track{background:var(--navy);}/*!sc*/
21::-webkit-scrollbar-thumb{background-color:var(--dark-slate);border:3px solid var(--navy);border-radius:10px;}/*!sc*/
22body{margin:0;width:100%;min-height:100%;overflow-x:hidden;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--navy);color:var(--slate);font-family:var(--font-sans);font-size:var(--fz-xl);line-height:1.3;}/*!sc*/
23@media (max-width:480px){body{font-size:var(--fz-lg);}}/*!sc*/
24body.hidden{overflow:hidden;}/*!sc*/
25body.blur{overflow:hidden;}/*!sc*/
26body.blur header{background-color:transparent;}/*!sc*/
27body.blur #content > *{-webkit-filter:blur(5px) brightness(0.7);filter:blur(5px) brightness(0.7);-webkit-transition:var(--transition);transition:var(--transition);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}/*!sc*/
28#root{min-height:100vh;display:grid;grid-template-rows:1fr auto;grid-template-columns:100%;}/*!sc*/
29main{margin:0 auto;width:100%;max-width:1600px;min-height:100vh;padding:200px 150px;}/*!sc*/
30@media (max-width:1080px){main{padding:200px 100px;}}/*!sc*/
31@media (max-width:768px){main{padding:150px 50px;}}/*!sc*/
32@media (max-width:480px){main{padding:125px 25px;}}/*!sc*/
33main.fillHeight{padding:0 150px;}/*!sc*/
34@media (max-width:1080px){main.fillHeight{padding:0 100px;}}/*!sc*/
35@media (max-width:768px){main.fillHeight{padding:0 50px;}}/*!sc*/
36@media (max-width:480px){main.fillHeight{padding:0 25px;}}/*!sc*/
37section{margin:0 auto;padding:100px 0;max-width:1000px;}/*!sc*/
38@media (max-width:768px){section{padding:80px 0;}}/*!sc*/
39@media (max-width:480px){section{padding:60px 0;}}/*!sc*/
40h1,h2,h3,h4,h5,h6{margin:0 0 10px 0;font-weight:600;color:var(--lightest-slate);line-height:1.1;}/*!sc*/
41.big-heading{margin:0;font-size:clamp(40px,8vw,80px);}/*!sc*/
42.medium-heading{margin:0;font-size:clamp(40px,8vw,60px);}/*!sc*/
43.numbered-heading{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;margin:10px 0 40px;width:100%;font-size:clamp(26px,5vw,var(--fz-heading));white-space:nowrap;}/*!sc*/
44.numbered-heading:before{position:relative;bottom:4px;counter-increment:section;content:'0' counter(section) '.';margin-right:10px;color:var(--green);font-family:var(--font-mono);font-size:clamp(var(--fz-md),3vw,var(--fz-xl));font-weight:400;}/*!sc*/
45@media (max-width:480px){.numbered-heading:before{margin-bottom:-3px;margin-right:5px;}}/*!sc*/
46.numbered-heading:after{content:'';display:block;position:relative;top:-5px;width:300px;height:1px;margin-left:20px;background-color:var(--lightest-navy);}/*!sc*/
47@media (max-width:1080px){.numbered-heading:after{width:200px;}}/*!sc*/
48@media (max-width:768px){.numbered-heading:after{width:100%;}}/*!sc*/
49@media (max-width:600px){.numbered-heading:after{margin-left:10px;}}/*!sc*/
50img,svg,.gatsby-image-wrapper{width:100%;max-width:100%;vertical-align:middle;}/*!sc*/
51img[alt=""],img:not([alt]){-webkit-filter:blur(5px);filter:blur(5px);}/*!sc*/
52svg{width:100%;height:100%;fill:currentColor;vertical-align:middle;}/*!sc*/
53svg.feather{fill:none;}/*!sc*/
54a{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;color:inherit;position:relative;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
55a:hover,a:focus{color:var(--green);}/*!sc*/
56a.inline-link{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;position:relative;-webkit-transition:var(--transition);transition:var(--transition);color:var(--green);}/*!sc*/
57a.inline-link:hover,a.inline-link:focus,a.inline-link:active{color:var(--green);outline:0;}
57/*!sc*/
58a.inline-link:hover:after,a.inline-link:focus:after,a.inline-link:active:after{width:100%;}/*!sc*/
59a.inline-link:hover > *,a.inline-link:focus > *,a.inline-link:active > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
60a.inline-link:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);opacity:0.5;}/*!sc*/
61button{cursor:pointer;border:0;border-radius:0;}/*!sc*/
62input,textarea{border-radius:0;outline:0;}/*!sc*/
63input:focus,textarea:focus{outline:0;}/*!sc*/
64input:focus::-webkit-input-placeholder,textarea:focus::-webkit-input-placeholder,input:active::-webkit-input-placeholder,textarea:active::-webkit-input-placeholder{opacity:0.5;}/*!sc*/
65input:focus::-moz-placeholder,textarea:focus::-moz-placeholder,input:active::-moz-placeholder,textarea:active::-moz-placeholder{opacity:0.5;}/*!sc*/
66input:focus:-ms-input-placeholder,textarea:focus:-ms-input-placeholder,input:active:-ms-input-placeholder,textarea:active:-ms-input-placeholder{opacity:0.5;}/*!sc*/
67input:focus::placeholder,textarea:focus::placeholder,input:active::placeholder,textarea:active::placeholder{opacity:0.5;}/*!sc*/
68p{margin:0 0 15px 0;}/*!sc*/
69p:last-child,p:last-of-type{margin:0;}/*!sc*/
70p > a{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;position:relative;-webkit-transition:var(--transition);transition:var(--transition);color:var(--green);}/*!sc*/
71p > a:hover,p > a:focus,p > a:active{color:var(--green);outline:0;}/*!sc*/
72p > a:hover:after,p > a:focus:after,p > a:active:after{width:100%;}/*!sc*/
73p > a:hover > *,p > a:focus > *,p > a:active > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
74p > a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);opacity:0.5;}/*!sc*/
75p > code{background-color:var(--light-navy);color:var(--white);font-size:var(--fz-sm);border-radius:var(--border-radius);padding:0.3em 0.5em;}/*!sc*/
76ul.fancy-list{padding:0;margin:0;list-style:none;font-size:var(--fz-lg);}/*!sc*/
77ul.fancy-list li{position:relative;padding-left:30px;margin-bottom:10px;}/*!sc*/
78ul.fancy-list li:before{content:'▹';position:absolute;left:0;color:var(--green);}/*!sc*/
79blockquote{border-left-color:var(--green);border-left-style:solid;border-left-width:1px;margin-left:0px;margin-right:0px;padding-left:1.5rem;}/*!sc*/
80blockquote p{font-style:italic;font-size:24px;}/*!sc*/
81hr{background-color:var(--lightest-navy);height:1px;border-width:0px;border-style:initial;border-color:initial;border-image:initial;margin:1rem;}/*!sc*/
82code{font-family:var(--font-mono);font-size:var(--fz-md);}/*!sc*/
83.skip-to-content{color:var(--green);background-color:transparent;border:1px solid var(--green);border-radius:var(--border-radius);font-size:var(--fz-xs);font-family:var(--font-mono);line-height:1;-webkit-text-decoration:none;text-decoration:none;cursor:pointer;-webkit-transition:var(--transition);transition:var(--transition);padding:1.25rem 1.75rem;position:absolute;top:auto;left:-999px;width:1px;height:1px;overflow:hidden;z-index:-99;}/*!sc*/
84.skip-to-content:hover,.skip-to-content:focus,.skip-to-content:active{background-color:var(--green-tint);outline:none;}/*!sc*/
85.skip-to-content:after{display:none !important;}/*!sc*/
86.skip-to-content:focus,.skip-to-content:active{background-color:var(--green);color:var(--navy);top:0;left:0;width:auto;height:auto;overflow:auto;z-index:99;}/*!sc*/
87#logo{color:var(--green);}/*!sc*/
88.overline{color:var(--green);font-family:var(--font-mono);font-size:var(--fz-md);font-weight:400;}/*!sc*/
89.subtitle{color:var(--green);margin:0 0 20px 0;font-size:var(--fz-md);font-family:var(--font-mono);font-weight:400;line-height:1.5;}/*!sc*/
90@media (max-width:1080px){.subtitle{font-size:var(--fz-sm);}}/*!sc*/
91@media (max-width:768px){.subtitle{font-size:var(--fz-xs);}}/*!sc*/
92.subtitle a{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;position:relative;-webkit-transition:var(--transition);transition:var(--transition);color:var(--green);line-height:1.5;}/*!sc*/
93.subtitle a:hover,.subtitle a:focus,.subtitle a:active{color:var(--green);outline:0;}
93/*!sc*/
94.subtitle a:hover:after,.subtitle a:focus:after,.subtitle a:active:after{width:100%;}/*!sc*/
95.subtitle a:hover > *,.subtitle a:focus > *,.subtitle a:active > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
96.subtitle a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);opacity:0.5;}/*!sc*/
97.breadcrumb{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:50px;color:var(--green);}/*!sc*/
98.breadcrumb .arrow{display:block;margin-right:10px;padding-top:4px;}/*!sc*/
99.breadcrumb a{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;position:relative;-webkit-transition:var(--transition);transition:var(--transition);color:var(--green);font-family:var(--font-mono);font-size:var(--fz-sm);font-weight:600;line-height:1.5;text-transform:uppercase;-webkit-letter-spacing:0.1em;-moz-letter-spacing:0.1em;-ms-letter-spacing:0.1em;letter-spacing:0.1em;}/*!sc*/
100.breadcrumb a:hover,.breadcrumb a:focus,.breadcrumb a:active{color:var(--green);outline:0;}/*!sc*/
101.breadcrumb a:hover:after,.breadcrumb a:focus:after,.breadcrumb a:active:after{width:100%;}/*!sc*/
102.breadcrumb a:hover > *,.breadcrumb a:focus > *,.breadcrumb a:active > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
103.breadcrumb a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);opacity:0.5;}/*!sc*/
104.gatsby-image-outer-wrapper{height:100%;}/*!sc*/
105.fadeup-enter{opacity:0.01;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px);-webkit-transition:opacity 300ms var(--easing),-webkit-transform 300ms var(--easing);-webkit-transition:opacity 300ms var(--easing),transform 300ms var(--easing);transition:opacity 300ms var(--easing),transform 300ms var(--easing);}/*!sc*/
106.fadeup-enter-active{opacity:1;-webkit-transform:translateY(0px);-ms-transform:translateY(0px);transform:translateY(0px);-webkit-transition:opacity 300ms var(--easing),-webkit-transform 300ms var(--easing);-webkit-transition:opacity 300ms var(--easing),transform 300ms var(--easing);transition:opacity 300ms var(--easing),transform 300ms var(--easing);}/*!sc*/
107.fadedown-enter{opacity:0.01;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px);-webkit-transition:opacity 300ms var(--easing),-webkit-transform 300ms var(--easing);-webkit-transition:opacity 300ms var(--easing),transform 300ms var(--easing);transition:opacity 300ms var(--easing),transform 300ms var(--easing);}/*!sc*/
108.fadedown-enter-active{opacity:1;-webkit-transform:translateY(0px);-ms-transform:translateY(0px);transform:translateY(0px);-webkit-transition:opacity 300ms var(--easing),-webkit-transform 300ms var(--easing);-webkit-transition:opacity 300ms var(--easing),transform 300ms var(--easing);transition:opacity 300ms var(--easing),transform 300ms var(--easing);}/*!sc*/
109.fade-enter{opacity:0;}/*!sc*/
110.fade-enter-active{opacity:1;-webkit-transition:opacity 300ms var(--easing);transition:opacity 300ms var(--easing);}/*!sc*/
111.fade-exit{opacity:1;}/*!sc*/
112.fade-exit-active{opacity:0;-webkit-transition:opacity 300ms var(--easing);transition:opacity 300ms var(--easing);}/*!sc*/
113.gatsby-highlight{background-color:#112340;color:#a2aabc;border-radius:var(--border-radius);margin:2em 0;padding:1.25em;overflow:auto;position:relative;font-family:var(--font-mono);font-size:var(--fz-md);}/*!sc*/
114.gatsby-highlight code[class*='language-'],.gatsby-highlight pre[class*='language-']{height:auto !important;font-size:var(--fz-sm);line-height:1.5;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;tab-size:2;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;}/*!sc*/
115.gatsby-highlight pre[class*='language-']{background-color:transparent;margin:0;padding:0;overflow:initial;float:left;min-width:100%;padding-top:2em;}/*!sc*/
116.gatsby-code-title{padding:1em 1.5em;font-family:var(--font-mono);font-size:var(--fz-xs);background-color:#112340;color:#a2aabc;border-top-left-radius:var(--border-radius);border-top-right-radius:var(--border-radius);border-bottom:1px solid #1d2d50;}
116/*!sc*/
117.gatsby-code-title + .gatsby-highlight{margin-top:0;border-top-left-radius:0;border-top-right-radius:0;}/*!sc*/
118.gatsby-highlight-code-line{display:block;background-color:#1d2d50;border-left:2px solid var(--green);padding-left:calc(1em + 2px);padding-right:1em;margin-right:-1.35em;margin-left:-1.35em;}/*!sc*/
119.gatsby-highlight pre[class*='language-']::before{background:var(--lightest-navy);color:var(--white);font-size:var(--fz-xxs);font-family:var(--font-mono);line-height:1.5;-webkit-letter-spacing:0.1em;-moz-letter-spacing:0.1em;-ms-letter-spacing:0.1em;letter-spacing:0.1em;text-transform:uppercase;border-radius:0 0 3px 3px;position:absolute;top:0;left:1.25rem;padding:0.25rem 0.5rem;}/*!sc*/
120.gatsby-highlight pre[class='language-javascript']::before{content:'js';}/*!sc*/
121.gatsby-highlight pre[class='language-js']::before{content:'js';}/*!sc*/
122.gatsby-highlight pre[class='language-jsx']::before{content:'jsx';}/*!sc*/
123.gatsby-highlight pre[class='language-graphql']::before{content:'GraphQL';}/*!sc*/
124.gatsby-highlight pre[class='language-html']::before{content:'html';}/*!sc*/
125.gatsby-highlight pre[class='language-css']::before{content:'css';}/*!sc*/
126.gatsby-highlight pre[class='language-mdx']::before{content:'mdx';}/*!sc*/
127.gatsby-highlight pre[class='language-shell']::before{content:'shell';}/*!sc*/
128.gatsby-highlight pre[class='language-sh']::before{content:'sh';}/*!sc*/
129.gatsby-highlight pre[class='language-bash']::before{content:'bash';}/*!sc*/
130.gatsby-highlight pre[class='language-yaml']::before{content:'yaml';}/*!sc*/
131.gatsby-highlight pre[class='language-markdown']::before{content:'md';}/*!sc*/
132.gatsby-highlight pre[class='language-json']::before,.gatsby-highlight pre[class='language-json5']::before{content:'json';}/*!sc*/
133.gatsby-highlight pre[class='language-diff']::before{content:'diff';}/*!sc*/
134.gatsby-highlight pre[class='language-text']::before{content:'text';}/*!sc*/
135.gatsby-highlight pre[class='language-flow']::before{content:'flow';}/*!sc*/
136.token{display:inline;}/*!sc*/
137.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#8695b799;}/*!sc*/
138.token.punctuation{color:#a2aabc;}/*!sc*/
139.token.namespace,.token.deleted{color:#ef6b73;}/*!sc*/
140.token.function-name,.token.function,.token.class-name,.token.constant,.token.symbol{color:#ffd580;}/*!sc*/
141.token.attr-name,.token.operator,.token.rule{color:#ffae57;}/*!sc*/
142.token.keyword,.token.boolean,.token.number,.token.property{color:#c3a6ff;}/*!sc*/
143.token.tag,.token.selector,.token.important,.token.atrule,.token.builtin,.token.entity,.token.url{color:#5ccfe6;}/*!sc*/
144.token.string,.token.char,.token.attr-value,.token.regex,.token.variable,.token.inserted{color:#bae67e;}/*!sc*/
145.token.important,.token.bold{font-weight:600;}/*!sc*/
146.token.italic{font-style:italic;}/*!sc*/
147.token.entity{cursor:help;}/*!sc*/
148.namespace{opacity:0.7;}/*!sc*/
149data-styled.g1[id="sc-global-dxHtqF1"]{content:"sc-global-dxHtqF1,"}/*!sc*/
150.A-dWWa{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:fixed;top:0;bottom:0;left:0;right:0;width:100%;height:100%;background-color:var(--dark-navy);z-index:99;}/*!sc*/
151.A-dWWa .logo-wrapper{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100px;-webkit-transition:var(--transition);transition:var(--transition);opacity:0;}/*!sc*/
152.A-dWWa .logo-wrapper svg{display:block;width:100%;height:100%;margin:0 auto;fill:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}/*!sc*/
153.A-dWWa .logo-wrapper svg #B{opacity:0;}/*!sc*/
154data-styled.g3[id="loader__StyledLoader-sc-177se4j-0"]{content:"A-dWWa,"}/*!sc*/
155</style><style>.gatsby-image-wrapper{position:relative;overflow:hidden}.gatsby-image-wrapper picture.object-fit-polyfill{position:static!important}.gatsby-image-wrapper img{bottom:0;height:100%;left:0;margin:0;max-width:none;padding:0;position:absolute;right:0;top:0;width:100%;object-fit:cover}.gatsby-image-wrapper [data-main-image]{opacity:0;transform:translateZ(0);transition:opacity .25s linear;will-change:opacity}.gatsby-image-wrapper-constrained{display:inline-block;vertical-align:top}</style><noscript><style>.gatsby-image-wrapper noscript [data-main-image]{opacity:1!important}.gatsby-image-wrapper [data-placeholder-image]{opacity:0!important}</style></noscript>
155<script type="module">const e="undefined"!=typeof HTMLImageElement&&"loading"in HTMLImageElement.prototype;e&&document.body.addEventListener("load",(function(e){if(void 0===e.target.dataset.mainImage)return;if(void 0===e.target.dataset.gatsbyImageSsr)return;const t=e.target;let a=null,n=t;for(;null===a&&n;)void 0!==n.parentNode.dataset.gatsbyImageWrapper&&(a=n.parentNode),n=n.parentNode;const o=a.querySelector("[data-placeholder-image]"),r=new Image;r.src=t.currentSrc,r.decode().catch((()=>{})).then((()=>{t.style.opacity=1,o&&(o.style.opacity=0,o.style.transition="opacity 500ms linear")}))}),!0);</script>
155<link rel="sitemap" type="application/xml" href="/sitemap/sitemap-index.xml"/><link rel="icon" href="/favicon-32x32.png?v=cdbb86c9914d7137d1bc89212e3e350a" type="image/png"/><link rel="manifest" href="/manifest.webmanifest" crossorigin="anonymous"/><meta name="theme-color" content="#0a192f"/><link rel="apple-touch-icon" sizes="48x48" href="/icons/icon-48x48.png?v=cdbb86c9914d7137d1bc89212e3e350a"/><link rel="apple-touch-icon" sizes="72x72" href="/icons/icon-72x72.png?v=cdbb86c9914d7137d1bc89212e3e350a"/><link rel="apple-touch-icon" sizes="96x96" href="/icons/icon-96x96.png?v=cdbb86c9914d7137d1bc89212e3e350a"/><link rel="apple-touch-icon" sizes="144x144" href="/icons/icon-144x144.png?v=cdbb86c9914d7137d1bc89212e3e350a"/><link rel="apple-touch-icon" sizes="192x192" href="/icons/icon-192x192.png?v=cdbb86c9914d7137d1bc89212e3e350a"/><link rel="apple-touch-icon" sizes="256x256" href="/icons/icon-256x256.png?v=cdbb86c9914d7137d1bc89212e3e350a"/><link rel="apple-touch-icon" sizes="384x384" href="/icons/icon-384x384.png?v=cdbb86c9914d7137d1bc89212e3e350a"/><link rel="apple-touch-icon" sizes="512x512" href="/icons/icon-512x512.png?v=cdbb86c9914d7137d1bc89212e3e350a"/><link rel="preconnect" href="https://www.google-analytics.com"/><link rel="dns-prefetch" href="https://www.google-analytics.com"/><link as="script" rel="preload" href="/webpack-runtime-704ffe59c5cf007f9154.js"/><link as="script" rel="preload" href="/framework-fbf2011d6c2b83ba228a.js"/><link as="script" rel="preload" href="/app-94d0f55d12b21651093d.js"/><link as="script" rel="preload" href="/546641dfde76ed00139ea2c3eae09499c5f2164a-d49bbfacfbca77619bdb.js"/><link as="script" rel="preload" href="/component---src-pages-index-js-099c7f705868ffd518f7.js"/><link as="fetch" rel="preload" href="/page-data/index/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/1994492073.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/2009693873.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/2031412112.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/3825832676.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/app-data.json" crossorigin="anonymous"/></head><body class="hidden"><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div id="root"><a class="skip-to-content" href="#content">Skip to Content</a><div class="loader__StyledLoader-sc-177se4j-0 A-dWWa loader"><div class="logo-wrapper"><svg id="logo" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><title>Loader Logo</title><g><g id="B" transform="translate(30.000000, 24.000000) scale(0.8)"><path d="M 46.9 13.1 L 46.9 13.3 A 1.908 1.908 0 0 1 46.338 14.662 A 2.504 2.504 0 0 1 46.3 14.7 A 2.091 2.091 0 0 1 45.683 15.136 A 1.879 1.879 0 0 1 44.9 15.3 A 2.637 2.637 0 0 1 44.274 15.23 A 1.856 1.856 0 0 1 43.45 14.8 A 2.001 2.001 0 0 1 42.823 13.649 A 2.578 2.578 0 0 1 42.8 13.5 Q 42.303 9.422 37.995 6.63 A 16.818 16.818 0 0 0 37.95 6.6 A 15.9 15.9 0 0 0 33.56 4.686 Q 30.363 3.8 26.2 3.8 Q 20.531 3.8 16.552 5.269 A 15.458 15.458 0 0 0 13 7.1 A 12.07 12.07 0 0 0 10.182 9.794 A 9.689 9.689 0 0 0 8.3 15.7 A 10.14 10.14 0 0 0 11.671 23.397 A 13.686 13.686 0 0 0 12.55 24.15 A 21.686 21.686 0 0 0 15.655 26.15 Q 19.786 28.384 26.6 30.4 A 66.339 66.339 0 0 1 32.586 32.461 Q 38.436 34.817 41.82 37.795 A 19.076 19.076 0 0 1 42.05 38 A 14.544 14.544 0 0 1 46.985 48.564 A 18.182 18.182 0 0 1 47 49.3 Q 47 54.7 43.95 59 Q 40.9 63.3 35.7 65.75 A 25.905 25.905 0 0 1 26.524 68.114 A 30.908 30.908 0 0 1 24.2 68.2 A 32.516 32.516 0 0 1 16.354 67.292 A 25.995 25.995 0 0 1 9.35 64.45 A 23.261 23.261 0 0 1 4.278 60.478 A 18.84 18.84 0 0 1 0.5 54.7 Q 0 53.5 0 52.9 A 2.147 2.147 0 0 1 0.536 51.479 A 2.886 2.886 0 0 1 0.7 51.3 A 2.311 2.311 0 0 1 2.369 50.601 A 2.839 2.839 0 0 1 2.4 50.6 A 2.703 2.703 0 0 1 3.332 50.751 Q 4.105 51.033 4.495 51.846 A 3.356 3.356 0 0 1 4.7 52.4 A 15.035 15.035 0 0 0 9.988 59.495 A 20.32 20.32 0 0 0 12.3 61 Q 18 64.2 24.6 64.2 A 24.199 24.199 0 0 0 30.021 63.615 A 20.071 20.071 0 0 0 33.8 62.35 A 16.899 16.899 0 0 0 37.81 59.852 A 14.481 14.481 0 0 0 40.25 57.2 Q 42.6 53.9 42.6 49.7 A 11.478 11.478 0 0 0 39.026 41.309 A 15.401 15.401 0 0 0 38.6 40.9 A 18.133 18.133 0 0 0 35.337 38.55 Q 31.543 36.361 25.5 34.7 Q 17.705 32.508 12.283 29.228 A 34.369 34.369 0 0 1 9.9 27.65 A 15.106 15.106 0 0 1 6.015 23.646 Q 3.966 20.478 3.902 16.367 A 17.093 17.093 0 0 1 3.9 16.1 Q 3.9 11.4 6.65 7.75 A 16.413 16.413 0 0 1 11.
155195 3.669 A 21.857 21.857 0 0 1 14.4 2.05 A 26.649 26.649 0 0 1 20.485 0.4 A 36.348 36.348 0 0 1 26 0 A 43.733 43.733 0 0 1 31.695 0.347 Q 34.591 0.728 36.968 1.529 A 18.312 18.312 0 0 1 41.2 3.55 A 13.761 13.761 0 0 1 44.533 6.557 A 11.281 11.281 0 0 1 46.9 13.1 Z" fill="currentColor"></path></g><path stroke="currentColor" stroke-width="5" stroke-linecap="round" stroke-linejoin="round" d="M 50, 5 L 11, 27 L 11, 72 L 50, 95 L 89, 73 L 89, 28 z"></path></g></svg></div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div>
155<script>
156  
157  
158  if(true) {
159    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
160    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
161    m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
162    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
163  }
164  if (typeof ga === "function") {
165    ga('create', 'G-WF6X5DWZ36', 'auto', {});
166      
167      
168      
169      
170      
171      }</script>
171<script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/";/*]]>*/</script>
171<script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"app":["/app-94d0f55d12b21651093d.js"],"component---cache-caches-gatsby-plugin-offline-app-shell-js":["/component---cache-caches-gatsby-plugin-offline-app-shell-js-9b1997f2483a747a5203.js"],"component---src-pages-404-js":["/component---src-pages-404-js-99c4c3072f2476a8ed5d.js"],"component---src-pages-archive-js":["/component---src-pages-archive-js-7e86dcf7d366601f56c3.js"],"component---src-pages-index-js":["/component---src-pages-index-js-099c7f705868ffd518f7.js"],"component---src-pages-pensieve-index-js":["/component---src-pages-pensieve-index-js-aba70d6d537676d802e2.js"],"component---src-pages-pensieve-tags-js":["/component---src-pages-pensieve-tags-js-9d0bd8787b31440b99c7.js"],"component---src-pages-website-js":["/component---src-pages-website-js-e741d9df24676c9341db.js"],"component---src-templates-post-js":["/component---src-templates-post-js-8af860acefbf159458c3.js"],"component---src-templates-tag-js":["/component---src-templates-tag-js-ebbede9b9d9fca80dc66.js"]};/*]]>*/</script>
171<script src="/component---src-pages-index-js-099c7f705868ffd518f7.js" async=""></script>
171<script src="/546641dfde76ed00139ea2c3eae09499c5f2164a-d49bbfacfbca77619bdb.js" async=""></script>
171<script src="/app-94d0f55d12b21651093d.js" async=""></script>
171<script src="/framework-fbf2011d6c2b83ba228a.js" async=""></script>
171<script src="/webpack-runtime-704ffe59c5cf007f9154.js" async=""></script>
171</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.