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 5.14.6"/><meta data-react-helmet="true" name="description" content="Research Projects & Visualizations"/><meta data-react-helmet="true" name="keywords" content="complex-systems, urban-science, economics, mobility, computational-social-science"/><meta data-react-helmet="true" property="og:title" content="Projects"/><meta data-react-helmet="true" property="og:description" content="Research Projects & Visualizations"/><meta data-react-helmet="true" property="og:type" content="website"/><meta data-react-helmet="true" property="og:url" content="https://ollinlangle.com/projects"/><meta data-react-helmet="true" property="og:image" content="https://ollinlangle.com/og-image.png"/><meta data-react-helmet="true" property="og:image:alt" content="Projects"/><meta data-react-helmet="true" property="og:locale" content="en_us"/><meta data-react-helmet="true" name="twitter:card" content="summary_large_image"/><meta data-react-helmet="true" name="twitter:creator" content="Ollin D. Langle-Chimal"/><meta data-react-helmet="true" name="twitter:title" content="Projects"/><meta data-react-helmet="true" name="twitter:description" content="Research Projects & Visualizations"/><meta data-react-helmet="true" name="twitter:image" content="https://ollinlangle.com/og-image.png"/><title data-react-helmet="true">Projects | Ollin D. Langle-Chimal</title><link data-react-helmet="true" rel="canonical" href="https://ollinlangle.com/projects"/><link data-react-helmet="true" rel="alternate" hrefLang="en-us" href="https://ollinlangle.com/projects"/><link data-react-helmet="true" rel="alternate" hrefLang="es-mx" href="https://ollinlangle.com/es-mx/projects"/><link data-react-helmet="true" rel="alternate" hrefLang="x-default" href="https://ollinlangle.com/projects"/><link rel="sitemap" type="application/xml" href="/sitemap-index.xml"/><style data-styled="" data-styled-version="6.1.19">@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Jost:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap');/*!sc*/ 2@import url('https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css');/*!sc*/ 3*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}/*!sc*/ 4:root{--color-bg:#0A0E27;--color-bg-secondary:#1A1F3A;--color-text:#E8E9ED;--color-text-secondary:#A0A8C5;--color-surface:#151B35;--color-border:#2A3250;--color-primary:#FF6B35;--color-secondary:#004E89;--color-accent:#F7931E;--color-bg-rgb:10,14,39;}/*!sc*/ 5[data-theme='light']{--color-bg:#FFFFFF;--color-bg-secondary:#F5F7FA;--color-text:#1A1A1A;--color-text-secondary:#6B7280;--color-surface:#FAFBFC;--color-border:#E5E7EB;--color-bg-rgb:255,255,255;}/*!sc*/ 6html{font-size:16px;scroll-behavior:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;}/*!sc*/ 7body{margin:0;padding:0;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:var(--color-text);background-color:var(--color-bg);overflow-x:hidden;transition:background-color 0.3s cubic-bezier(0.4, 0.0, 0.2, 1),color 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);}/*!sc*/ 8h1,h2,h3,h4,h5,h6{font-family:"Jost","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:700;line-height:1.25;color:var(--color-text);margin:0;}/*!sc*/ 9h1{font-size:3.75rem;letter-spacing:-0.025em;}/*!sc*/ 10@media (max-width:768px){h1{font-size:2.25rem;}}/*!sc*/ 11h2{font-size:2.25rem;}/*!sc*/ 12@media (max-width:768px){h2{font-size:1.875rem;}}/*!sc*/ 13h3{font-size:1.875rem;}/*!sc*/ 14@media (max-width:768px){h3{font-size:1.5rem;}}/*!sc*/ 15h4{font-size:1.5rem;}/*!sc*/ 16h5{font-size:1.25rem;}/*!sc*/ 17h6{font-size:1.125rem;}/*!sc*/ 18p{margin:0 0 1rem 0;line-height:1.625;color:var(--color-text);}/*!sc*/ 19a{color:#FF6B35;text-decoration:none;transition:color 0.2s cubic-bezier(0.4, 0.0, 0.2, 1);cursor:pointer;}/*!sc*/ 20a:hover{color:#F7931E;}/*!sc*/ 21a:focus-visible{outline:2px solid #FF6B35;outline-offset:2px;border-radius:2px;}/*!sc*/ 22ul,ol{margin:0 0 1rem 0;padding-left:1.5rem;}/*!sc*/ 23li{margin-bottom:0.5rem;line-height:1.625;}/*!sc*/ 24code,pre{font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,monospace;}/*!sc*/ 25code{background-color:var(--color-surface);padding:0.125rem 0.375rem;border-radius:0.125rem;font-size:0.875em;color:#F7931E;}/*!sc*/ 26pre{background-color:var(--color-surface);padding:1rem;border-radius:0.375rem;overflow-x:auto;margin-bottom:1rem;border:1px solid var(--color-border);}/*!sc*/ 27pre code{background-color:transparent;padding:0;border-radius:0;color:var(--color-text);}/*!sc*/ 28blockquote{margin:1.5rem 0;padding:1rem 1.5rem;border-left:4px solid #FF6B35;background-color:var(--color-surface);border-radius:0.375rem;font-style:italic;color:var(--color-text-secondary);}/*!sc*/ 29blockquote p:last-child{margin-bottom:0;}
29/*!sc*/ 30img{max-width:100%;height:auto;display:block;}/*!sc*/ 31hr{border:0;height:1px;background-color:var(--color-border);margin:2rem 0;}/*!sc*/ 32table{width:100%;border-collapse:collapse;margin-bottom:1.5rem;}/*!sc*/ 33th,td{padding:0.75rem;text-align:left;border-bottom:1px solid var(--color-border);}/*!sc*/ 34th{font-weight:600;background-color:var(--color-surface);}/*!sc*/ 35input,textarea,select,button{font-family:inherit;font-size:inherit;line-height:inherit;}/*!sc*/ 36button{cursor:pointer;border:none;background:none;padding:0;color:inherit;}/*!sc*/ 37::selection{background-color:#FF6B35;color:#0A0E27;}/*!sc*/ 38::-moz-selection{background-color:#FF6B35;color:#0A0E27;}/*!sc*/ 39::-webkit-scrollbar{width:12px;height:12px;}/*!sc*/ 40::-webkit-scrollbar-track{background:var(--color-bg);}/*!sc*/ 41::-webkit-scrollbar-thumb{background:#FF6B35;border-radius:9999px;border:3px solid var(--color-bg);}/*!sc*/ 42::-webkit-scrollbar-thumb:hover{background:#F7931E;}/*!sc*/ 43*{scrollbar-width:thin;scrollbar-color:#FF6B35 var(--color-bg);}/*!sc*/ 44.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0;}/*!sc*/ 45*:focus-visible{outline:2px solid #FF6B35;outline-offset:2px;}/*!sc*/ 46*:focus:not(:focus-visible){outline:none;}/*!sc*/ 47@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important;}}/*!sc*/ 48@media print{body{background-color:white;color:black;}a{text-decoration:underline;}nav,aside,footer{display:none;}}/*!sc*/ 49data-styled.g1[id="sc-global-cBdPHX1"]{content:"sc-global-cBdPHX1,"}/*!sc*/ 50.jrpXdn{position:fixed;top:0;left:0;right:0;z-index:1100;background-color:transparent;backdrop-filter:none;border-bottom:1px solid transparent;transition:all 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);}/*!sc*/ 51data-styled.g2[id="Header__HeaderWrapper-sc-17836s2-0"]{content:"jrpXdn,"}/*!sc*/ 52.gynvdj{max-width:1280px;margin:0 auto;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;}/*!sc*/ 53data-styled.g3[id="Header__Nav-sc-17836s2-1"]{content:"gynvdj,"}/*!sc*/ 54.iYuVWU{font-family:"Jost","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.5rem;font-weight:700;color:var(--color-text);letter-spacing:-0.025em;transition:color 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);}/*!sc*/ 55.iYuVWU:hover{color:#FF6B35;}/*!sc*/ 56data-styled.g4[id="Header__Logo-sc-17836s2-2"]{content:"iYuVWU,"}/*!sc*/ 57.hvvEFe{display:flex;align-items:center;gap:1.5rem;}/*!sc*/ 58@media (max-width:768px){.hvvEFe{display:none;position:fixed;top:70px;left:0;right:0;background-color:var(--color-surface);flex-direction:column;padding:1.5rem;border-bottom:1px solid var(--color-border);backdrop-filter:blur(12px);}}/*!sc*/ 59data-styled.g5[id="Header__NavLinks-sc-17836s2-3"]{content:"hvvEFe,"}/*!sc*/ 60.dWMbER{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;font-weight:500;color:var(--color-text);position:relative;transition:color 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);}/*!sc*/ 61.dWMbER::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:2px;background-color:#FF6B35;transform:scaleX(0);transition:transform 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);}/*!sc*/ 62.dWMbER:hover{color:#FF6B35;}/*!sc*/ 63.dWMbER:hover::after{transform:scaleX(1);}/*!sc*/ 64.dWMbER.active{color:#FF6B35;}/*!sc*/ 65.dWMbER.active::after{transform:scaleX(1);}/*!sc*/ 66data-styled.g6[id="Header__NavLink-sc-17836s2-4"]{content:"dWMbER,"}/*!sc*/ 67.eVRumG{display:flex;gap:0.5rem;}/*!sc*/ 68data-styled.g7[id="Header__LanguageSwitcher-sc-17836s2-5"]{content:"eVRumG,"}/*!sc*/ 69.eWLAbV{font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,monospace;font-size:0.875rem;font-weight:500;color:#FF6B35;padding:0.5rem 0.75rem;border:1px solid #FF6B35;border-radius:0.375rem;background-color:rgba(255, 107, 53, 0.1);cursor:pointer;transition:all 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);text-transform:uppercase;}/*!sc*/ 70.eWLAbV:hover{color:#FF6B35;border-color:#FF6B35;background-color:rgba(255,107,53,0.1);}/*!sc*/ 71.dklIUD{font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,monospace;font-size:0.875rem;font-weight:500;color:var(--color-text-secondary);padding:0.5rem 0.75rem;border:1px solid var(--color-border);border-radius:0.375rem;background-color:transparent;cursor:pointer;transition:all 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);text-transform:uppercase;}/*!sc*/ 72.dklIUD:hover{color:#FF6B35;border-color:#FF6B35;background-color:rgba(255,107,53,0.1);}/*!sc*/ 73data-styled.g8[id="Header__LangButton-sc-17836s2-6"]{content:"eWLAbV,dklIUD,"}/*!sc*/ 74.fFMim{display:none;flex-direction:column;gap:4px;background:transparent;border:none;cursor:pointer;padding:0.5rem;}/*!sc*/ 75@media (max-width:768px){.fFMim{display:flex;}}/*!sc*/ 76.fFMim span{width:24px;height:2px;background-color:var(--color-text);transition:all 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);}/*!sc*/ 77.fFMim span:nth-child(1){transform:none;}/*!sc*/ 78.fFMim span:nth-child(2){opacity:1;}/*!sc*/ 79.fFMim span:nth-child(3){transform:none;}/*!sc*/ 80data-styled.g9[id="Header__MobileMenuButton-sc-17836s2-7"]{content:"fFMim,"}/*!sc*/ 81.kHVmag{background:transparent;border:1px solid var(--color-border);border-radius:9999px;width:40px;height:40px;
81display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text);font-size:1.25rem;transition:all 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);margin-left:1rem;}/*!sc*/ 82.kHVmag:hover{border-color:#FF6B35;color:#FF6B35;background:rgba(255,107,53,0.1);}/*!sc*/ 83@media (max-width:768px){.kHVmag{margin-left:0;}}/*!sc*/ 84data-styled.g10[id="Header__ThemeToggle-sc-17836s2-8"]{content:"kHVmag,"}/*!sc*/ 85.cPFteU{display:flex;align-items:center;gap:1rem;}/*!sc*/ 86data-styled.g11[id="Header__DesktopActions-sc-17836s2-9"]{content:"cPFteU,"}/*!sc*/ 87.hZgUt{display:flex;align-items:center;gap:0.75rem;}/*!sc*/ 88@media (min-width:768px){.hZgUt{display:none;}}/*!sc*/ 89data-styled.g12[id="Header__MobileActions-sc-17836s2-10"]{content:"hZgUt,"}/*!sc*/ 90.bULOHN{background-color:var(--color-surface);border-top:1px solid var(--color-border);padding:3rem 1.5rem;margin-top:5rem;}/*!sc*/ 91data-styled.g13[id="Footer__FooterWrapper-sc-jaeqzk-0"]{content:"bULOHN,"}/*!sc*/ 92.iQowSC{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;}/*!sc*/ 93@media (max-width:768px){.iQowSC{grid-template-columns:1fr;}}/*!sc*/ 94data-styled.g14[id="Footer__FooterContent-sc-jaeqzk-1"]{content:"iQowSC,"}/*!sc*/ 95.hzRrLe{display:flex;flex-direction:column;gap:1rem;}/*!sc*/ 96data-styled.g15[id="Footer__FooterSection-sc-jaeqzk-2"]{content:"hzRrLe,"}/*!sc*/ 97.jMqLUe{font-family:"Jost","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.125rem;font-weight:600;color:var(--color-text);margin-bottom:0.5rem;}/*!sc*/ 98data-styled.g16[id="Footer__FooterTitle-sc-jaeqzk-3"]{content:"jMqLUe,"}/*!sc*/ 99.jlxgqc{font-size:0.875rem;color:var(--color-text-secondary);line-height:1.625;margin:0;}/*!sc*/ 100data-styled.g17[id="Footer__FooterText-sc-jaeqzk-4"]{content:"jlxgqc,"}/*!sc*/ 101.gvYEeR{display:flex;gap:1rem;flex-wrap:wrap;}/*!sc*/ 102data-styled.g18[id="Footer__SocialLinks-sc-jaeqzk-5"]{content:"gvYEeR,"}/*!sc*/ 103.cVFpvx{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.875rem;color:var(--color-text-secondary);transition:all 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);}/*!sc*/ 104.cVFpvx:hover{color:#FF6B35;transform:translateY(-2px);}/*!sc*/ 105.cVFpvx::before{content:'';width:20px;height:20px;background-color:currentColor;mask-size:contain;mask-repeat:no-repeat;mask-position:center;}/*!sc*/ 106data-styled.g19[id="Footer__SocialLink-sc-jaeqzk-6"]{content:"cVFpvx,"}/*!sc*/ 107.dmOyhI::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z'/%3E%3C/svg%3E");}/*!sc*/ 108data-styled.g20[id="Footer__GitHubLink-sc-jaeqzk-7"]{content:"dmOyhI,"}/*!sc*/ 109.jAVeyI::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M19 0h-14c-2.761 0-5 2.239-5 5v14c0 2.761 2.239 5 5 5h14c2.762 0 5-2.239 5-5v-14c0-2.761-2.238-5-5-5zm-11 19h-3v-11h3v11zm-1.5-12.268c-.966 0-1.75-.79-1.75-1.764s.784-1.764 1.75-1.764 1.75.79 1.75 1.764-.783 1.764-1.75 1.764zm13.5 12.268h-3v-5.604c0-3.368-4-3.113-4 0v5.604h-3v-11h3v1.765c1.396-2.586 7-2.777 7 2.476v6.759z'/%3E%3C/svg%3E");}/*!sc*/ 110data-styled.g21[id="Footer__LinkedInLink-sc-jaeqzk-8"]{content:"jAVeyI,"}/*!sc*/ 111.hiEvCn::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12 0l11 6v8.5c0 5.25-3.25 10.2-11 13.5-7.75-3.3-11-8.25-11-13.5v-8.5l11-6zm0 2.18l-9 4.91v7.41c0 4.09 2.59 8.05 9 10.9 6.41-2.85 9-6.81 9-10.9v-7.41l-9-4.91zm1 10.32v5.5h-2v-5.5h-3l4-4 4 4h-3z'/%3E%3C/svg%3E");}/*!sc*/ 112data-styled.g22[id="Footer__ScholarLink-sc-jaeqzk-9"]{content:"hiEvCn,"}/*!sc*/ 113.gyOWIP::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M0 3v18h24v-18h-24zm6.623 7.929l-4.623 5.712v-9.458l4.623 3.746zm-4.141-5.929h19.035l-9.517 7.713-9.518-7.713zm5.694 7.188l3.824 3.099 3.83-3.104 5.612 6.817h-18.779l5.513-6.812zm9.208-1.264l4.616-3.741v9.348l-4.616-5.607z'/%3E%3C/svg%3E");}/*!sc*/ 114data-styled.g23[id="Footer__EmailLink-sc-jaeqzk-10"]{content:"gyOWIP,"}/*!sc*/ 115.fFDhGG{text-align:center;padding-top:2rem;margin-top:2rem;border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:0.875rem;}/*!sc*/ 116data-styled.g24[id="Footer__Copyright-sc-jaeqzk-11"]{content:"fFDhGG,"}/*!sc*/ 117.ghjyuh{min-height:100vh;display:flex;flex-direction:column;}/*!sc*/ 118data-styled.g25[id="Layout__MainWrapper-sc-147ozt3-0"]{content:"ghjyuh,"}/*!sc*/ 119.cZWiyp{flex:1;margin-top:70px;}/*!sc*/ 120data-styled.g26[id="Layout__MainContent-sc-147ozt3-1"]{content:"cZWiyp,"}/*!sc*/ 121.fJRVYp{min-height:40vh;display:flex;flex-direction:column;justify-content:center;padding:5rem 1.5rem;background:linear-gradient( 135deg,var(--color-bg) 0%,var(--color-surface) 100% );position:relative;overflow:hidden;}/*!sc*/ 122.fJRVYp::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;
122background:radial-gradient( circle at 30% 50%,rgba(255,107,53,0.15) 0%,transparent 60% );pointer-events:none;}/*!sc*/ 123data-styled.g60[id="projects__ProjectsHero-sc-1m2r3ln-0"]{content:"fJRVYp,"}/*!sc*/ 124.lejdUI{max-width:1024px;margin:0 auto;position:relative;z-index:1;text-align:center;}/*!sc*/ 125data-styled.g61[id="projects__HeroContent-sc-1m2r3ln-1"]{content:"lejdUI,"}/*!sc*/ 126.hFaXzq{font-size:3.75rem;margin-bottom:1rem;background:linear-gradient( 135deg,#FF6B35 0%,#F7931E 100% );-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}/*!sc*/ 127@media (max-width:768px){.hFaXzq{font-size:2.25rem;}}/*!sc*/ 128data-styled.g62[id="projects__Title-sc-1m2r3ln-2"]{content:"hFaXzq,"}/*!sc*/ 129.gPdNmL{font-size:1.25rem;color:var(--color-text-secondary);max-width:700px;margin:0 auto;line-height:1.625;}/*!sc*/ 130data-styled.g63[id="projects__Subtitle-sc-1m2r3ln-3"]{content:"gPdNmL,"}/*!sc*/ 131.dgtErz{max-width:1280px;margin:0 auto;padding:4rem 1.5rem;}/*!sc*/ 132data-styled.g64[id="projects__ProjectsSection-sc-1m2r3ln-4"]{content:"dgtErz,"}/*!sc*/ 133.bmgTMN{margin-bottom:4rem;}/*!sc*/ 134data-styled.g65[id="projects__CategorySection-sc-1m2r3ln-5"]{content:"bmgTMN,"}/*!sc*/ 135.kZhWWj{font-size:2.25rem;margin-bottom:2rem;color:var(--color-text);display:flex;align-items:center;gap:1rem;}/*!sc*/ 136.kZhWWj::after{content:'';flex:1;height:2px;background:linear-gradient( 90deg,#FF6B35 0%,transparent 100% );}/*!sc*/ 137data-styled.g66[id="projects__CategoryTitle-sc-1m2r3ln-6"]{content:"kZhWWj,"}/*!sc*/ 138.djSfLI{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;}/*!sc*/ 139@media (max-width:640px){.djSfLI{grid-template-columns:1fr;}}/*!sc*/ 140data-styled.g67[id="projects__ProjectGrid-sc-1m2r3ln-7"]{content:"djSfLI,"}/*!sc*/ 141.jvnZEi{background:var(--color-surface);border:1px solid var(--color-border);border-radius:0.75rem;padding:0;transition:all 0.3s ease;text-decoration:none;display:flex;flex-direction:column;overflow:hidden;}/*!sc*/ 142.jvnZEi:hover{transform:translateY(-4px);border-color:#FF6B35;}/*!sc*/ 143data-styled.g68[id="projects__ProjectCard-sc-1m2r3ln-8"]{content:"jvnZEi,"}/*!sc*/ 144.doXPcP{width:100%;aspect-ratio:1/1;background:url(/assets/images/workreach/v2/card_workreach.jpg) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 145.doXPcP::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 146.hndyNE{width:100%;aspect-ratio:1/1;background:url(/assets/images/utopias/card_utopias.jpg) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 147.hndyNE::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 148.jMPynv{width:100%;aspect-ratio:1/1;background:url(/assets/images/publication_preview/map_gini_bar.gif) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 149.jMPynv::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 150.eEhXWQ{width:100%;aspect-ratio:1/1;background:url(/assets/images/bike_figure.png) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 151.eEhXWQ::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 152.hAhaWH{width:100%;aspect-ratio:1/1;background:url(/assets/images/fractals/lsystem.gif) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 153.hAhaWH::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 154.ibdilH{width:100%;aspect-ratio:1/1;background:url(/assets/images/asylum/dynamic_map.gif) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 155.ibdilH::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 156.dxyfYD{width:100%;aspect-ratio:1/1;background:url(/assets/images/unmet/spatial_trends.png) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 157.dxyfYD::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 158.glscsW{width:100%;aspect-ratio:1/1;background:url(/assets/images/covidSIS/opinion_cycle_2.gif) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 159.glscsW::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 160.eVwCsh{width:100%;aspect-ratio:1/1;background:url(/assets/images/CA/2site.gif) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:1;position:relative;overflow:hidden;}/*!sc*/ 161.eVwCsh::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, transparent 0%, rgba(var(--color-bg-rgb), 0.7) 100%);}/*!sc*/ 162.cSqptM{width:100%;aspect-ratio:1/1;background:linear-gradient( 163 135deg, 164 rgba(255, 107, 53, 0.1) 0%, 165 rgba(0, 78, 137, 0.1) 100% 166 );display:flex;align-items:center;justify-content:center;font-size:3.75rem;color:#FF6B35;opacity:0.3;position:relative;overflow:hidden;}/*!sc*/ 167.cSqptM::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:none;}/*!sc*/ 168data-styled.g69[id="projects__ProjectImage-sc-1m2r3ln-9"]{content:"doXPcP,hndyNE,jMPynv,eEhXWQ,hAhaWH,ibdilH,dxyfYD,glscsW,eVwCsh,cSqptM,"}/*!sc*/ 169.cwIbCY{padding:1.5rem;display:flex;flex-direction:column;gap:0.75rem;flex-grow:1;}/*!sc*/ 170data-styled.g70[id="projects__ProjectInfo-sc-1m2r3ln-10"]{content:"cwIbCY,"}/*!sc*/ 171.jiWOwf{display:inline-block;padding:0.25rem 0.75rem;background:rgba(255,107,53,0.1);border-radius:9999px;font-size:0.75rem;color:#FF6B35;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;align-self:flex-start;}/*!sc*/ 172data-styled.g71[id="projects__ProjectCategory-sc-1m2r3ln-11"]{content:"jiWOwf,"}/*!sc*/ 173.fyrhRF{font-size:1.5rem;color:var(--color-text);margin:0;}/*!sc*/ 174data-styled.g72[id="projects__ProjectTitle-sc-1m2r3ln-12"]{content:"fyrhRF,"}/*!sc*/ 175.kOOHqI{color:var(--color-text-secondary);line-height:1.625;flex-grow:1;}/*!sc*/ 176data-styled.g73[id="projects__ProjectDescription-sc-1m2r3ln-13"]{content:"kOOHqI,"}/*!sc*/ 177</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>
177<script type="module">const e="undefined"!=typeof HTMLImageElement&&"loading"in HTMLImageElement.prototype;e&&document.body.addEventListener("load",(function(e){const t=e.target;if(void 0===t.dataset.mainImage)return;if(void 0===t.dataset.gatsbyImageSsr)return;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>
177<link rel="preconnect" href="https://www.googletagmanager.com"/><link rel="dns-prefetch" href="https://www.googletagmanager.com"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="Layout__MainWrapper-sc-147ozt3-0 ghjyuh"><header class="Header__HeaderWrapper-sc-17836s2-0 jrpXdn"><nav class="Header__Nav-sc-17836s2-1 gynvdj"><a class="Header__Logo-sc-17836s2-2 iYuVWU" href="/">Ollin D. Langle-Chimal</a><div class="Header__NavLinks-sc-17836s2-3 hvvEFe"><a aria-current="page" class="Header__NavLink-sc-17836s2-4 dWMbER active" href="/projects/">Projects</a><a class="Header__NavLink-sc-17836s2-4 dWMbER" href="/publications/">Publications</a><a class="Header__NavLink-sc-17836s2-4 dWMbER" href="/blog/">Blog</a><a class="Header__NavLink-sc-17836s2-4 dWMbER" href="/teaching/">Teaching</a><a class="Header__NavLink-sc-17836s2-4 dWMbER" href="/people/">People</a><a class="Header__NavLink-sc-17836s2-4 dWMbER" href="/books/">Books</a><a class="Header__NavLink-sc-17836s2-4 dWMbER" href="/cv/">CV</a><div class="Header__LanguageSwitcher-sc-17836s2-5 eVRumG"><button aria-label="Switch to English" class="Header__LangButton-sc-17836s2-6 eWLAbV">EN</button><button aria-label="Cambiar a Español" class="Header__LangButton-sc-17836s2-6 dklIUD">ES</button></div></div><div class="Header__DesktopActions-sc-17836s2-9 cPFteU"><button aria-label="Switch to light mode" class="Header__ThemeToggle-sc-17836s2-8 kHVmag">âï¸</button></div><div class="Header__MobileActions-sc-17836s2-10 hZgUt"><button aria-label="Switch to light mode" class="Header__ThemeToggle-sc-17836s2-8 kHVmag">âï¸</button><button aria-label="Toggle mobile menu" class="Header__MobileMenuButton-sc-17836s2-7 fFMim"><span></span><span></span><span></span></button></div></nav></header><main class="Layout__MainContent-sc-147ozt3-1 cZWiyp"><section class="projects__ProjectsHero-sc-1m2r3ln-0 fJRVYp"><div class="projects__HeroContent-sc-1m2r3ln-1 lejdUI"><h1 class="projects__Title-sc-1m2r3ln-2 hFaXzq">Projects</h1><p class="projects__Subtitle-sc-1m2r3ln-3 gPdNmL">Research Projects & Visualizations</p></div></section><section class="projects__ProjectsSection-sc-1m2r3ln-4 dgtErz"><div class="projects__CategorySection-sc-1m2r3ln-5 bmgTMN"><h2 class="projects__CategoryTitle-sc-1m2r3ln-6 kZhWWj">Research</h2><div class="projects__ProjectGrid-sc-1m2r3ln-7 djSfLI"><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/workreach/"><div imageSrc="/assets/images/workreach/v2/card_workreach.jpg" class="projects__ProjectImage-sc-1m2r3ln-9 doXPcP"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">WorkReach: How Far Do We Go for a Better Job?</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">A model to understand why people work where they work, how far they are willing to travel for a better job, and how that changes between Mexico City, Rio de Janeiro, Los Angeles, and the Bay Area.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/utopias/"><div imageSrc="/assets/images/utopias/card_utopias.jpg" class="projects__ProjectImage-sc-1m2r3ln-9 hndyNE"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Who Reaches the UTOPÃAS? Third Places and Mobility in Iztapalapa</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">We used mobility data from cell phones to understand who visits the 13 UTOPÃAS in Iztapalapa, where they come from, and what transit, services, and violence have to do with it.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/socioeconomic_disparities_covid/"><div imageSrc="/assets/images/publication_preview/map_gini_bar.gif" class="projects__ProjectImage-sc-1m2r3ln-9 jMPynv"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span>
177<h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Who Could Stay Home? Mobility and Inequality During COVID-19</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">We used data from 281 million phones in six countries to see who could stay home, who left the city, and who stopped going to work during the pandemic.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/earthquake/"><div imageSrc="/assets/images/bike_figure.png" class="projects__ProjectImage-sc-1m2r3ln-9 eEhXWQ"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">19S - Mexico's Resilience in an Earthquake Event</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">A study of Mexico City's resilience after the September 19, 2017 earthquake using mobility and social media data.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/fractals/"><div imageSrc="/assets/images/fractals/lsystem.gif" class="projects__ProjectImage-sc-1m2r3ln-9 hAhaWH"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Fractals from random walkers</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">Using L-systems and Diffusion-Limited Aggregation to create fractals.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/asylum_seekers/"><div imageSrc="/assets/images/asylum/dynamic_map.gif" class="projects__ProjectImage-sc-1m2r3ln-9 ibdilH"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Analysis of a Temporal Asylum Seekers Network</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">Using temporal networks to analyze asylum seekers petitions between countries from 2000 to 2017.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/ebola/"><div imageSrc="/assets/images/unmet/spatial_trends.png" class="projects__ProjectImage-sc-1m2r3ln-9 dxyfYD"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Listening to Communities During the Ebola Crisis</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">How unmet needs shaped behaviors during the 2014-2015 Ebola outbreak in Sierra Leone.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/distanciamiento/"><div imageSrc="/assets/images/covidSIS/opinion_cycle_2.gif" class="projects__ProjectImage-sc-1m2r3ln-9 glscsW"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Social Distancing and Self-Isolation in Times of COVID-19</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">Using a SIS model to simulate the effect of social distancing and self-isolation in the spreading of COVID-19.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/ca/"><div imageSrc="/assets/images/CA/2site.gif" class="projects__ProjectImage-sc-1m2r3ln-9 eVwCsh"></div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Research</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">A Cellular Automata Sznajd Model</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">Using a Sznajd model to simulate opinion dynamics in a 2D lattice and the effect of bots.</p></div></a></div></div><div class="projects__CategorySection-sc-1m2r3ln-5 bmgTMN"><h2 class="projects__CategoryTitle-sc-1m2r3ln-6 kZhWWj">Explorations</h2><div class="projects__ProjectGrid-sc-1m2r3ln-7 djSfLI"><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/project_3/"><div class="projects__ProjectImage-sc-1m2r3ln-9 cSqptM">3</div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Explorations</span>
177<h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Voting patterns in the Mexican Senate</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">A network representation of the voting patterns of the Mexican Senate in the LXII and LXIII legislatures between 2012 and 2017.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/project_2/"><div class="projects__ProjectImage-sc-1m2r3ln-9 cSqptM">3</div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Explorations</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Scraping the Mexican Senate</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">Using Julia to scrape useful information from the Mexican Senate's website.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/coalitions/"><div class="projects__ProjectImage-sc-1m2r3ln-9 cSqptM">3</div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Explorations</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Mexican Senate Coalitions</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">Coalitions in the Mexican Senate from a complex networks point of view.</p></div></a><a class="projects__ProjectCard-sc-1m2r3ln-8 jvnZEi" href="/projects/bot_emmett/"><div class="projects__ProjectImage-sc-1m2r3ln-9 cSqptM">3</div><div class="projects__ProjectInfo-sc-1m2r3ln-10 cwIbCY"><span class="projects__ProjectCategory-sc-1m2r3ln-11 jiWOwf">Explorations</span><h3 class="projects__ProjectTitle-sc-1m2r3ln-12 fyrhRF">Bot Emmett Brown</h3><p class="projects__ProjectDescription-sc-1m2r3ln-13 kOOHqI">A Twitter bot that generates text according to the Doc's dialogues in the 3 Back to the Future movies.</p></div></a></div></div></section></main><footer class="Footer__FooterWrapper-sc-jaeqzk-0 bULOHN"><div class="Footer__FooterContent-sc-jaeqzk-1 iQowSC"><div class="Footer__FooterSection-sc-jaeqzk-2 hzRrLe"><h3 class="Footer__FooterTitle-sc-jaeqzk-3 jMqLUe">About</h3><p class="Footer__FooterText-sc-jaeqzk-4 jlxgqc">Complex Systems Researcher specializing in urban mobility, computational social science, and statistical physics.</p></div><div class="Footer__FooterSection-sc-jaeqzk-2 hzRrLe"><h3 class="Footer__FooterTitle-sc-jaeqzk-3 jMqLUe">Connect</h3><div class="Footer__SocialLinks-sc-jaeqzk-5 gvYEeR"><a href="https://github.com/ollin18" target="_blank" rel="noopener noreferrer" aria-label="GitHub" class="Footer__SocialLink-sc-jaeqzk-6 Footer__GitHubLink-sc-jaeqzk-7 cVFpvx dmOyhI">GitHub</a><a href="https://www.linkedin.com/in/ollin18" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn" class="Footer__SocialLink-sc-jaeqzk-6 Footer__LinkedInLink-sc-jaeqzk-8 cVFpvx jAVeyI">LinkedIn</a><a href="https://scholar.google.com/citations?user=L1QJLFoAAAAJ&hl" target="_blank" rel="noopener noreferrer" aria-label="Google Scholar" class="Footer__SocialLink-sc-jaeqzk-6 Footer__ScholarLink-sc-jaeqzk-9 cVFpvx hiEvCn">Scholar</a><a href="mailto:[email protected]" aria-label="Email" class="Footer__SocialLink-sc-jaeqzk-6 Footer__EmailLink-sc-jaeqzk-10 cVFpvx gyOWIP">Email</a></div></div><div class="Footer__FooterSection-sc-jaeqzk-2 hzRrLe"><h3 class="Footer__FooterTitle-sc-jaeqzk-3 jMqLUe">Site</h3><p class="Footer__FooterText-sc-jaeqzk-4 jlxgqc">Built with Gatsby, React, and styled-components. Powered by GSAP for scroll animations.</p></div></div><div class="Footer__Copyright-sc-jaeqzk-11 fFDhGG">© <!-- -->2026<!-- --> Ollin D. Langle-Chimal. <!-- -->All rights reserved.<br/>Generated by Ollin</div></footer></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>
vendor: 66 bytes, line 177
177<script async="" src="https://www.googletagmanager.com/gtag/js?id=
177G-9FS4V8SGLR
vendor: 11 bytes, line 177
177"></script>
177<script> 178 179 function gaOptout(){document.cookie=disableStr+'=true; expires=Thu, 31 Dec 2099 23:59:59 UTC;path=/',window[disableStr]=!0}var gaProperty='G-9FS4V8SGLR',disableStr='ga-disable-'+gaProperty;document.cookie.indexOf(disableStr+'=true')>-1&&(window[disableStr]=!0); 180 if(!(navigator.doNotTrack == "1" || window.doNotTrack == "1")) { 181
vendor: 152 bytes, lines 181-185
181window.dataLayer = window.dataLayer || []; 182 function gtag(){dataLayer.push(arguments);} 183 gtag('js', new Date()); 184 185 gtag('config', '
185G-9FS4V8SGLR
vendor: 75 bytes, lines 185-186
185', {"anonymize_ip":true,"cookie_expires":0,"send_page_view":false}); 186
186} 187 </script>
187<script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/projects/";/*]]>*/</script>
187<!-- slice-start id="_gatsby-scripts-1" --> 188
188<script 189 id="gatsby-chunk-mapping" 190 > 191 window.___chunkMapping="{\"app\":[\"/app-778ff437768c1f551c1a.js\"],\"component---src-pages-404-js\":[\"/component---src-pages-404-js-f337ef602b06ee964200.js\"],\"component---src-pages-blog-jsx\":[\"/component---src-pages-blog-jsx-20759427d2695e7f55ed.js\"],\"component---src-pages-books-jsx\":[\"/component---src-pages-books-jsx-48898111d2b608c0ad1d.js\"],\"component---src-pages-cv-jsx\":[\"/component---src-pages-cv-jsx-b79eec696a2b3512b569.js\"],\"component---src-pages-index-jsx\":[\"/component---src-pages-index-jsx-01f4dd51ca7a402bfeb0.js\"],\"component---src-pages-page-2-js\":[\"/component---src-pages-page-2-js-77e179c82fc1d05bd2cd.js\"],\"component---src-pages-people-jsx\":[\"/component---src-pages-people-jsx-256e40202b9c9ff85b41.js\"],\"component---src-pages-projects-jsx\":[\"/component---src-pages-projects-jsx-d4ca39b38575b4e224f5.js\"],\"component---src-pages-publications-jsx\":[\"/component---src-pages-publications-jsx-b5196e599b390235b5f5.js\"],\"component---src-pages-teaching-jsx\":[\"/component---src-pages-teaching-jsx-6551f218c762ae82bf4e.js\"],\"component---src-pages-using-ssr-js\":[\"/component---src-pages-using-ssr-js-96362a78fd84d7080f7f.js\"],\"component---src-pages-using-typescript-tsx\":[\"/component---src-pages-using-typescript-tsx-5bcf42512638b022a421.js\"],\"component---src-templates-blog-post-jsx\":[\"/component---src-templates-blog-post-jsx-8975796e2e28586ff5ee.js\"],\"component---src-templates-book-review-jsx\":[\"/component---src-templates-book-review-jsx-f973f2e45b2fcf27fe83.js\"],\"component---src-templates-project-detail-jsx\":[\"/component---src-templates-project-detail-jsx-5c9e02e9e9a20a88272b.js\"]}"; 192 </script>
192 193
193<script>window.___webpackCompilationHash="2f32b7108bf6cf892f8b";</script>
193<script src="/webpack-runtime-c29fd5025c212eda7512.js" async></script>
193<script src="/framework-a98cd6097609b685b73f.js" async></script>
193<script src="/94726e6d-823c10e1ea9abde67a2e.js" async></script>
193<script src="/app-778ff437768c1f551c1a.js" async></script>
193<!-- slice-end id="_gatsby-scripts-1" --></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.