-
Notifications
You must be signed in to change notification settings - Fork 0
/
404.html
77 lines (73 loc) · 25.8 KB
/
404.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<!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"/><style data-href="/styles.cae67203e5e3350efa85.css" id="gatsby-global-css">html{font-size:100}body{background-color:var(--bg-color);color:var(--base);margin:0 0 0 calc(100vw - 100%);line-height:1.625;font-size:1rem;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,h1,h2,h3,h4,h5,h6{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}h1,h2,h3,h4,h5,h6{font-weight:600}h1{font-size:2.5rem;line-height:3.25rem;margin-top:6.5rem;margin-bottom:1.625rem}h2{font-size:1.6875rem;line-height:2.4375rem}h2,h3{margin-top:3.25rem;margin-bottom:.8125rem}h3{font-size:1.375rem;line-height:1.625rem}h4{font-size:1.2rem;margin-top:2.4375rem}h4,h5{line-height:1.625rem;margin-bottom:.8125rem}h5,h6{font-size:1rem;margin-top:4.0625rem}h6{line-height:1.625rem;margin-bottom:.8125rem}img{max-width:100%;margin:inherit auto}hr,img{border:0;display:block}hr{color:var(--base);height:1.625rem;margin:3.25rem auto;background-size:100% 26px;background-image:linear-gradient(180deg,transparent 1px,transparent 11px,var(--base) 0,var(--base) 15px,transparent 0,transparent 26px);width:6.25rem}a{color:var(--primary);text-decoration:none}a:active,a:focus,a:hover{color:var(--secondary)}b,strong{font-weight:600}ul{list-style:square;margin-bottom:1.625rem}ul li{padding:0 .3125rem;margin-bottom:.625rem}p{line-height:1.625rem;margin-bottom:1.625rem}blockquote{padding:0;font-style:italic;text-align:center}figure{display:block;width:100%;height:auto}figcaption{line-height:1.21875rem;margin-top:.40625rem;color:var(--base);font-size:.875rem;font-style:italic;margin-bottom:0;text-align:center}.anchor{margin-left:-1.875rem!important;padding-right:.875rem!important}@media screen and (min-width:685px){figure.float-left,figure.float-right{max-width:19.375rem;padding:0 1.625rem}.float-right{float:right}.float-left{float:left}}code[class*=language-],pre[class*=language-]{color:#c5c8c6;text-shadow:0 1px rgba(0,0,0,.3);font-size:16px;font-family:Fira Code,Inconsolata,Monaco,Consolas,Courier New,Courier,monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#1d1f21}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#7c7c7c}.token.punctuation{color:#c5c8c6}.namespace{opacity:.7}.token.keyword,.token.property,.token.tag{color:#96cbfe}.token.class-name{color:#ffffb6;text-decoration:underline}.token.boolean,.token.constant{color:#9c9}.token.deleted,.token.symbol{color:#f92672}.token.number{color:#ff73fd}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#a8ff60}.token.variable{color:#c6c5fe}.token.operator{color:#ededed}.token.entity{color:#ffffb6;cursor:help}.token.url{color:#96cbfe}.language-css .token.string,.style .token.string{color:#87c38a}.token.atrule,.token.attr-value{color:#f9ee98}.token.function{color:#dad085}.token.regex{color:#e9c062}.token.important{color:#fd971f}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.DarkModeToggler-module--toggler--3yMxx{font-weight:700;margin-bottom:1.625rem}.DarkModeToggler-module--toggler--3yMxx label{cursor:pointer;display:block;max-width:5.625rem;height:2.1875rem;padding:0 1.5rem;line-height:2.1875rem;text-align:center;color:var(--base);border:1px solid var(--gray-border);border-radius:1.25rem;font-size:1rem;font-weight:400}.DarkModeToggler-module--toggler--3yMxx label:focus,.DarkModeToggler-module--toggler--3yMxx label:hover{color:var(--primary)}@media screen and (min-width:960px){.DarkModeToggler-module--toggler--3yMxx{padding:1.25rem 0}}.Author-module--author__photo--HnDWV{display:inline-block;margin-bottom:0;border-radius:50%;background-clip:padding-box}.Author-module--author__title--ZztQd{font-size:1.125rem;font-weight:600;line-height:1.82813rem;margin:.8125rem 0}.Author-module--author__title-link--BY7f8,.Author-module--author__title-link--BY7f8:focus,.Author-module--author__title-link--BY7f8:hover{color:var(--base)}.Author-module--author__subtitle--3hbMX{color:var(--gray);line-height:1.625rem;margin-bottom:1.625rem}.Icon-module--icon--1T2h2{display:inline-block;width:1em;height:1em;stroke-width:0;stroke:currentColor;fill:currentColor;font-style:normal;font-weight:400;speak:none;margin-right:.2em;text-align:center;font-variant:normal;text-transform:none;line-height:1em;margin-left:.2em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.Contacts-module--contacts--3fb7G{margin-bottom:1.625rem}.Contacts-module--contacts__list--27zok{display:flex;flex-flow:row wrap;flex-grow:0;flex-shrink:0;list-style:none;padding:0;margin:.625rem -.1875rem;width:8.75rem}.Contacts-module--contacts__list-item--1Adud{cursor:pointer;padding:0;margin:.25rem;display:flex;align-content:center;align-items:center;justify-content:center;height:2.1875rem;width:2.1875rem;line-height:2.1875rem;border-radius:50%;text-align:center;border:1px solid var(--gray-border)}.Contacts-module--contacts__list-item-link--2L60c{border:0;display:flex;color:var(--base)}.Contacts-module--contacts__list-item-link--2L60c:focus,.Contacts-module--contacts__list-item-link--2L60c:hover{color:var(--primary)}.Copyright-module--copyright--1YLES{color:var(--gray-border);font-size:.875rem}.Menu-module--menu--2aN3O{margin-bottom:1.625rem}.Menu-module--menu__list--1uKDu{list-style:none;padding:0;margin:0}.Menu-module--menu__list-item--27cxj{padding:0;margin:.625rem 0}.Menu-module--menu__list-item-link--29Sd-{font-size:1rem;color:var(--base);font-weight:400;border:0}.Menu-module--menu__list-item-link--29Sd-:focus,.Menu-module--menu__list-item-link--29Sd-:hover{color:var(--primary);border-bottom:1px solid var(--primary)}.Menu-module--menu__list-item-link--active--2HzKy{color:var(--base);border-bottom:1px solid var(--base)}.Sidebar-module--sidebar--1zM7S{width:100%}.Sidebar-module--sidebar__inner--2Tprz{position:relative;padding:1.5625rem 1.25rem 0}@media screen and (min-width:685px){.Sidebar-module--sidebar--1zM7S{position:-webkit-sticky;position:sticky;top:0;width:calc(41.625% - 1.09375rem)}.Sidebar-module--sidebar--1zM7S:nth-child(1n){float:left;margin-right:1.875rem;clear:none}.Sidebar-module--sidebar--1zM7S:last-child{margin-right:0}.Sidebar-module--sidebar--1zM7S:nth-child(12n){margin-right:0;float:right}.Sidebar-module--sidebar--1zM7S:nth-child(12n+1){clear:both}.Sidebar-module--sidebar__inner--2Tprz{padding:1.875rem 1.25rem 0}.Sidebar-module--sidebar__inner--2Tprz:after{background:var(--gray-border);background:linear-gradient(180deg,var(--gray-border) 0,var(--gray-border) 48%,var(--bg-color));position:absolute;content:"";width:.0625rem;height:33.75rem;top:30px;right:-10px;bottom:0}}@media screen and (min-width:960px){.Sidebar-module--sidebar--1zM7S{width:calc(33.3% - 1.25rem)}.Sidebar-module--sidebar--1zM7S:nth-child(1n){float:left;margin-right:1.875rem;clear:none}.Sidebar-module--sidebar--1zM7S:last-child{margin-right:0}.Sidebar-module--sidebar--1zM7S:nth-child(3n){margin-right:0;float:right}.Sidebar-module--sidebar--1zM7S:nth-child(3n+1){clear:both}.Sidebar-module--sidebar__inner--2Tprz{padding:2.5rem}}.Layout-module--layout--EpQHE{max-width:66.875rem;margin-left:auto;margin-right:auto}.Layout-module--layout--EpQHE:before{content:"";display:table}.Layout-module--layout--EpQHE:after{content:"";display:table;clear:both}.Feed-module--feed__item--Bm0MP{margin-bottom:2.03125rem}.Feed-module--feed__item--Bm0MP:last-child{margin-bottom:.8125rem}.Feed-module--feed__item-title--34sOw{font-size:1.6875rem;line-height:2.4375rem;margin-top:0;margin-bottom:.8125rem}.Feed-module--feed__item-title-link--2qfTF{color:var(--base)}.Feed-module--feed__item-title-link--2qfTF:focus,.Feed-module--feed__item-title-link--2qfTF:hover{color:var(--base);border-bottom:1px solid var(--base)}.Feed-module--feed__item-description--2_Zuy{font-size:1rem;line-height:1.625rem;margin-bottom:1.21875rem}.Feed-module--feed__item-meta-time--3hc6b{font-size:.875rem;color:var(--base);font-weight:600;text-transform:uppercase}.Feed-module--feed__item-meta-divider--2GeAw{margin:0 .3125rem}.Feed-module--feed__item-meta-category-link--lAu1I{font-size:.875rem;color:var(--secondary);font-weight:600;text-transform:uppercase}.Feed-module--feed__item-meta-category-link--lAu1I:focus,.Feed-module--feed__item-meta-category-link--lAu1I:hover{color:var(--primary)}.Feed-module--feed__item-readmore--rMfbv{font-size:1rem;color:var(--primary)}.Feed-module--feed__item-readmore--rMfbv:focus,.Feed-module--feed__item-readmore--rMfbv:hover{color:var(--primary);border-bottom:1px solid var(--primary)}.Page-module--page--V2155{margin-bottom:3.25rem}.Page-module--page__inner--3xzwp{padding:1.5625rem 1.25rem}.Page-module--page__title--t1zKX{font-size:2.5rem;font-weight:600;line-height:3.25rem;margin-top:0;margin-bottom:2.35625rem}.Page-module--page__body--1A7TB{font-size:1rem;line-height:1.625rem;margin:0 0 1.625rem}@media screen and (min-width:685px){.Page-module--page--V2155{width:calc(58.275% - .78125rem)}.Page-module--page--V2155:nth-child(1n){float:left;margin-right:1.875rem;clear:none}.Page-module--page--V2155:last-child{margin-right:0}.Page-module--page--V2155:nth-child(12n){margin-right:0;float:right}.Page-module--page--V2155:nth-child(12n+1){clear:both}.Page-module--page__inner--3xzwp{padding:1.875rem 1.25rem}}@media screen and (min-width:960px){.Page-module--page--V2155{width:calc(66.6% - .625rem)}.Page-module--page--V2155:nth-child(1n){float:left;margin-right:1.875rem;clear:none}.Page-module--page--V2155:last-child{margin-right:0}.Page-module--page--V2155:nth-child(3n){margin-right:0;float:right}.Page-module--page--V2155:nth-child(3n+1){clear:both}.Page-module--page__inner--3xzwp{padding:2.5rem 2.1875rem}}.Pagination-module--pagination--3T_m0{margin-top:3.25rem;display:flex}.Pagination-module--pagination__prev--3tRFv{width:50%;text-align:left}.Pagination-module--pagination__prev-link--2vesn{color:var(--secondary);font-size:1.625rem;font-weight:700}.Pagination-module--pagination__prev-link--2vesn:focus,.Pagination-module--pagination__prev-link--2vesn:hover{color:var(--primary)}.Pagination-module--pagination__prev-link--disable--1Fxw2{pointer-events:none;color:var(--gray-border)}.Pagination-module--pagination__next--19bJd{width:50%;text-align:right}.Pagination-module--pagination__next-link--3ln7y{color:var(--secondary);font-size:1.625rem;font-weight:700}.Pagination-module--pagination__next-link--3ln7y:focus,.Pagination-module--pagination__next-link--3ln7y:hover{color:var(--primary)}.Pagination-module--pagination__next-link--disable--AsM50{pointer-events:none;color:var(--gray-border)}.Author-module--author--2kf8a{border-top:1px solid var(--gray-border);max-width:40rem;padding-top:1.25rem;line-height:1.625rem;margin-top:1.625rem;margin-bottom:3.25rem}.Author-module--author__bio-twitter--MufFK{display:block;text-decoration:underline}@media screen and (min-width:685px){.Author-module--author--2kf8a{margin-left:auto;margin-right:auto}}.Content-module--content--1tfQQ{max-width:59.0625rem;padding:0 .9375rem;margin:0 auto}.Content-module--content__title--1qFLI{font-size:2rem;max-width:40rem;font-weight:600;text-align:center;line-height:2.68125rem;margin:1.625rem auto 0}.Content-module--content__body--2bfha figure{margin-bottom:1.625rem}.Content-module--content__body--2bfha figure blockquote{font-style:italic;text-align:center;margin-top:0;padding:1.625rem 0}.Content-module--content__body--2bfha figure blockquote p{max-width:40rem;font-size:1.6817rem;margin-top:0;margin-bottom:1.625rem;line-height:2.4375rem}.Content-module--content__body--2bfha a{text-decoration:underline}.Content-module--content__body--2bfha *{max-width:40rem;margin-left:auto;margin-right:auto}.Content-module--content__body--2bfha img{max-width:100%}@media screen and (min-width:960px){.Content-module--content--1tfQQ{padding:0}.Content-module--content__title--1qFLI{font-size:3rem;line-height:3.65625rem;margin-top:3.65625rem;margin-bottom:2.4375rem}.Content-module--content__body--2bfha,.Content-module--content__body--2bfha p{font-size:1.125rem;line-height:1.82813rem;margin-bottom:1.82813rem}}.Meta-module--meta__date--3FNDv{font-style:italic}.Tags-module--tags--1oNz4{margin-bottom:.8125rem}.Tags-module--tags__list--2UTD-{list-style:none;margin:0 -.625rem;padding:0}.Tags-module--tags__list-item--b7tap{display:inline-block;margin:.625rem .3125rem}.Tags-module--tags__list-item-link--1hQL0{display:inline-block;height:2.1875rem;padding:0 1.5rem;line-height:2.1875rem;border:1px solid var(--gray-border);text-decoration:none;border-radius:1.25rem;color:var(--base)}.Tags-module--tags__list-item-link--1hQL0:focus,.Tags-module--tags__list-item-link--1hQL0:hover{color:var(--primary)}:root{--bg-color:#e7e6df;--base:#0b1752;--primary:#86451c;--secondary:rgba(11,23,82,70%);--gray:#2d3248;--gray-border:#08103b}[data-theme=dark]{--bg-color:#282c34;--base:#abb2bf;--primary:#d19a66;--secondary:#828997;--gray-border:#5c6370;--gray:#fff}.Post-module--post__comments--2T8dL,.Post-module--post__footer--1BvmJ{max-width:40rem;margin:0 auto;padding:0 .9375rem}.Post-module--post__home-button--3zx_9{display:block;max-width:5.625rem;height:2.1875rem;padding:0 1.5rem;line-height:2.1875rem;text-align:center;color:var(--base);border:1px solid var(--gray-border);border-radius:1.25rem;font-size:1rem;font-weight:400;margin-left:auto;margin-right:auto;margin-top:1.625rem}.Post-module--post__home-button--3zx_9:focus,.Post-module--post__home-button--3zx_9:hover{color:var(--primary)}@media screen and (min-width:960px){.Post-module--post__comments--2T8dL,.Post-module--post__footer--1BvmJ{padding:0}.Post-module--post__home-button--3zx_9{position:fixed;max-width:auto;margin:0;top:30px;left:30px}}</style><meta name="generator" content="Gatsby 2.32.9"/><link rel="alternate" type="application/rss+xml" title="Learnings and Code" href="/rss.xml"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
left: 0;
transform: translateX(-100%);
padding-right: 4px;
}
.anchor.after {
display: inline-block;
padding-left: 4px;
}
h1 .anchor svg,
h2 .anchor svg,
h3 .anchor svg,
h4 .anchor svg,
h5 .anchor svg,
h6 .anchor svg {
visibility: hidden;
}
h1:hover .anchor svg,
h2:hover .anchor svg,
h3:hover .anchor svg,
h4:hover .anchor svg,
h5:hover .anchor svg,
h6:hover .anchor svg,
h1 .anchor:focus svg,
h2 .anchor:focus svg,
h3 .anchor:focus svg,
h4 .anchor:focus svg,
h5 .anchor:focus svg,
h6 .anchor:focus svg {
visibility: visible;
}
</style><script>
document.addEventListener("DOMContentLoaded", function(event) {
var hash = window.decodeURI(location.hash.replace('#', ''))
if (hash !== '') {
var element = document.getElementById(hash)
if (element) {
var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
var clientTop = document.documentElement.clientTop || document.body.clientTop || 0
var offset = element.getBoundingClientRect().top + scrollTop - clientTop
// Wait for the browser to finish rendering before scrolling.
setTimeout((function() {
window.scrollTo(0, offset - 0)
}), 0)
}
}
})
</script><link rel="preconnect dns-prefetch" href="https://www.google-analytics.com"/><script async="" src="https://www.googletagmanager.com/gtag/js?id=null"></script><script>
if(true) {
window.dataLayer = window.dataLayer || [];
function gtag(){window.dataLayer && window.dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'null', {"send_page_view":false});
}
</script><link rel="sitemap" type="application/xml" href="/sitemap.xml"/><link rel="icon" href="/favicon-32x32.png?v=d959f233e8c9576fa056e267539f0778" type="image/png"/><link rel="manifest" href="/manifest.webmanifest" crossorigin="anonymous"/><meta name="theme-color" content="#d19a66"/><link rel="apple-touch-icon" sizes="48x48" href="/icons/icon-48x48.png?v=d959f233e8c9576fa056e267539f0778"/><link rel="apple-touch-icon" sizes="72x72" href="/icons/icon-72x72.png?v=d959f233e8c9576fa056e267539f0778"/><link rel="apple-touch-icon" sizes="96x96" href="/icons/icon-96x96.png?v=d959f233e8c9576fa056e267539f0778"/><link rel="apple-touch-icon" sizes="144x144" href="/icons/icon-144x144.png?v=d959f233e8c9576fa056e267539f0778"/><link rel="apple-touch-icon" sizes="192x192" href="/icons/icon-192x192.png?v=d959f233e8c9576fa056e267539f0778"/><link rel="apple-touch-icon" sizes="256x256" href="/icons/icon-256x256.png?v=d959f233e8c9576fa056e267539f0778"/><link rel="apple-touch-icon" sizes="384x384" href="/icons/icon-384x384.png?v=d959f233e8c9576fa056e267539f0778"/><link rel="apple-touch-icon" sizes="512x512" href="/icons/icon-512x512.png?v=d959f233e8c9576fa056e267539f0778"/><title data-react-helmet="true">Page Not Found - Learnings and Code</title><meta data-react-helmet="true" name="description" content="Things that I enjoy playing with, processes that I keep coming back to and learnings that I feel like sharing."/><meta data-react-helmet="true" property="og:site_name" content="Page Not Found - Learnings and Code"/><meta data-react-helmet="true" property="og:image" content="https://joammartins.github.io/photo.jpg"/><meta data-react-helmet="true" name="twitter:card" content="summary"/><meta data-react-helmet="true" name="twitter:title" content="Page Not Found - Learnings and Code"/><meta data-react-helmet="true" name="twitter:description" content="Things that I enjoy playing with, processes that I keep coming back to and learnings that I feel like sharing."/><meta data-react-helmet="true" name="twitter:image" content="https://joammartins.github.io/photo.jpg"/><link as="script" rel="preload" href="/webpack-runtime-b0faaa482edc40d8604c.js"/><link as="script" rel="preload" href="/framework-7bbb7991de2c9dccc6ce.js"/><link as="script" rel="preload" href="/app-0a20be9a1198839b4948.js"/><link as="script" rel="preload" href="/styles-407fe62976dc5310c43e.js"/><link as="script" rel="preload" href="/cd95ea5cbd2c605f26db819f07999610c9ff4310-0be17e9518b1bff061f4.js"/><link as="script" rel="preload" href="/component---src-templates-not-found-template-js-b595cf7145f547f44203.js"/><link as="fetch" rel="preload" href="/page-data\404.html\page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/1674089512.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/251939775.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/401334301.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data\app-data.json" crossorigin="anonymous"/></head><body><script>
(function() {
const mode = localStorage.getItem('theme');
if (mode !== null && ['light', 'dark'].includes(mode)) {
document.documentElement.dataset.theme = mode;
return;
}
const mql = window.matchMedia('(prefers-color-scheme: dark)');
const hasMediaQueryPreference = typeof mql.matches === 'boolean';
if (hasMediaQueryPreference && mql.matches === true) {
document.documentElement.dataset.theme = 'dark';
} else {
document.documentElement.dataset.theme = 'light'
}
})();
</script><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="Layout-module--layout--EpQHE"><div class="Sidebar-module--sidebar--1zM7S"><div class="Sidebar-module--sidebar__inner--2Tprz"><div><a href="/"><img src="/photo.jpg" class="Author-module--author__photo--HnDWV" width="75" height="75" alt="João M. Martins"/></a><h2 class="Author-module--author__title--ZztQd"><a class="Author-module--author__title-link--BY7f8" href="/">João M. Martins</a></h2><p class="Author-module--author__subtitle--3hbMX">Software developer, former researcher and teacher, with a penchant for learning and explaining concepts.</p></div><nav class="Menu-module--menu--2aN3O"><ul class="Menu-module--menu__list--1uKDu"><li class="Menu-module--menu__list-item--27cxj"><a class="Menu-module--menu__list-item-link--29Sd-" href="/">Articles</a></li><li class="Menu-module--menu__list-item--27cxj"><a class="Menu-module--menu__list-item-link--29Sd-" href="/pages/about">About me</a></li><li class="Menu-module--menu__list-item--27cxj"><a class="Menu-module--menu__list-item-link--29Sd-" href="/pages/research">Research</a></li></ul></nav><div class="Contacts-module--contacts--3fb7G"><ul class="Contacts-module--contacts__list--27zok"><li class="Contacts-module--contacts__list-item--1Adud"><a class="Contacts-module--contacts__list-item-link--2L60c" href="https://www.linkedin.com/in/joaommartins" rel="noopener noreferrer" target="_blank"><svg class="Icon-module--icon--1T2h2" viewBox="0 0 24 24"><title>linkedin</title><path d="M4.98 3.5c0 1.381-1.11 2.5-2.48 2.5s-2.48-1.119-2.48-2.5c0-1.38 1.11-2.5 2.48-2.5s2.48 1.12 2.48 2.5zm.02 4.5h-5v16h5v-16zm7.982 0h-4.968v16h4.969v-8.399c0-4.67 6.029-5.052 6.029 0v8.399h4.988v-10.131c0-7.88-8.922-7.593-11.018-3.714v-2.155z"></path></svg></a></li><li class="Contacts-module--contacts__list-item--1Adud"><a class="Contacts-module--contacts__list-item-link--2L60c" href="https://github.com/joaommartins" rel="noopener noreferrer" target="_blank"><svg class="Icon-module--icon--1T2h2" viewBox="0 0 26 28"><title>github</title><path d="M10 19c0 1.141-0.594 3-2 3s-2-1.859-2-3 0.594-3 2-3 2 1.859 2 3zM20 19c0 1.141-0.594 3-2 3s-2-1.859-2-3 0.594-3 2-3 2 1.859 2 3zM22.5 19c0-2.391-1.453-4.5-4-4.5-1.031 0-2.016 0.187-3.047 0.328-0.812 0.125-1.625 0.172-2.453 0.172s-1.641-0.047-2.453-0.172c-1.016-0.141-2.016-0.328-3.047-0.328-2.547 0-4 2.109-4 4.5 0 4.781 4.375 5.516 8.188 5.516h2.625c3.813 0 8.188-0.734 8.188-5.516zM26 16.25c0 1.734-0.172 3.578-0.953 5.172-2.063 4.172-7.734 4.578-11.797 4.578-4.125 0-10.141-0.359-12.281-4.578-0.797-1.578-0.969-3.437-0.969-5.172 0-2.281 0.625-4.438 2.125-6.188-0.281-0.859-0.422-1.766-0.422-2.656 0-1.172 0.266-2.344 0.797-3.406 2.469 0 4.047 1.078 5.922 2.547 1.578-0.375 3.203-0.547 4.828-0.547 1.469 0 2.953 0.156 4.375 0.5 1.859-1.453 3.437-2.5 5.875-2.5 0.531 1.062 0.797 2.234 0.797 3.406 0 0.891-0.141 1.781-0.422 2.625 1.5 1.766 2.125 3.938 2.125 6.219z"></path></svg></a></li><li class="Contacts-module--contacts__list-item--1Adud"><a class="Contacts-module--contacts__list-item-link--2L60c" href="mailto:[email protected]" rel="noopener noreferrer" target="_blank"><svg class="Icon-module--icon--1T2h2" viewBox="0 0 28 28"><title>email</title><path d="M26 23.5v-12c-0.328 0.375-0.688 0.719-1.078 1.031-2.234 1.719-4.484 3.469-6.656 5.281-1.172 0.984-2.625 2.188-4.25 2.188h-0.031c-1.625 0-3.078-1.203-4.25-2.188-2.172-1.813-4.422-3.563-6.656-5.281-0.391-0.313-0.75-0.656-1.078-1.031v12c0 0.266 0.234 0.5 0.5 0.5h23c0.266 0 0.5-0.234 0.5-0.5zM26 7.078c0-0.391 0.094-1.078-0.5-1.078h-23c-0.266 0-0.5 0.234-0.5 0.5 0 1.781 0.891 3.328 2.297 4.438 2.094 1.641 4.188 3.297 6.266 4.953 0.828 0.672 2.328 2.109 3.422 2.109h0.031c1.094 0 2.594-1.437 3.422-2.109 2.078-1.656 4.172-3.313 6.266-4.953 1.016-0.797 2.297-2.531 2.297-3.859zM28 6.5v17c0 1.375-1.125 2.5-2.5 2.5h-23c-1.375 0-2.5-1.125-2.5-2.5v-17c0-1.375 1.125-2.5 2.5-2.5h23c1.375 0 2.5 1.125 2.5 2.5z"></path></svg></a></li></ul></div><div class="Copyright-module--copyright--1YLES">© All rights reserved.</div></div></div><div class="Page-module--page--V2155"><div class="Page-module--page__inner--3xzwp"><h1 class="Page-module--page__title--t1zKX">404: PAGE NOT FOUND</h1><div class="Page-module--page__body--1A7TB"><p>This route doesn't exist.</p></div></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><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/404.html";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-2ffdf0a31820fc928c1c.js"],"app":["/app-0a20be9a1198839b4948.js"],"component---cache-caches-gatsby-plugin-offline-app-shell-js":["/component---cache-caches-gatsby-plugin-offline-app-shell-js-ad6431e4664bcf916d19.js"],"component---src-templates-categories-list-template-js":["/component---src-templates-categories-list-template-js-730b29a68a5306dc4071.js"],"component---src-templates-category-template-js":["/component---src-templates-category-template-js-b9720c9818dce73a6dc0.js"],"component---src-templates-index-template-js":["/component---src-templates-index-template-js-1d023609d860f9aeec06.js"],"component---src-templates-not-found-template-js":["/component---src-templates-not-found-template-js-b595cf7145f547f44203.js"],"component---src-templates-page-template-js":["/component---src-templates-page-template-js-ca6f86cfc131b0d3d631.js"],"component---src-templates-post-template-js":["/component---src-templates-post-template-js-91eb5dbf01a5ea064b95.js"],"component---src-templates-tag-template-js":["/component---src-templates-tag-template-js-c7fc9c11df45ecaa5dbd.js"],"component---src-templates-tags-list-template-js":["/component---src-templates-tags-list-template-js-c1873b067c58b069fdf4.js"]};/*]]>*/</script><script src="/polyfill-2ffdf0a31820fc928c1c.js" nomodule=""></script><script src="/component---src-templates-not-found-template-js-b595cf7145f547f44203.js" async=""></script><script src="/cd95ea5cbd2c605f26db819f07999610c9ff4310-0be17e9518b1bff061f4.js" async=""></script><script src="/styles-407fe62976dc5310c43e.js" async=""></script><script src="/app-0a20be9a1198839b4948.js" async=""></script><script src="/framework-7bbb7991de2c9dccc6ce.js" async=""></script><script src="/webpack-runtime-b0faaa482edc40d8604c.js" async=""></script></body></html>