diff --git a/.gitignore b/.gitignore
index 448ac039..846370a0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,6 @@
# Hugo artifacts
public/
builds/
-resources/
_vendor/
# node/npm/yarn
diff --git a/assets/img/favicon-152.png b/assets/img/favicon-152.png
deleted file mode 100644
index 21552dce..00000000
Binary files a/assets/img/favicon-152.png and /dev/null differ
diff --git a/assets/img/favicon-180.png b/assets/img/favicon-180.png
deleted file mode 100644
index 76897906..00000000
Binary files a/assets/img/favicon-180.png and /dev/null differ
diff --git a/assets/img/favicon-96.png b/assets/img/favicon-96.png
deleted file mode 100644
index 65bf64b5..00000000
Binary files a/assets/img/favicon-96.png and /dev/null differ
diff --git a/assets/img/me_sm.jpg b/assets/img/me_sm.jpg
deleted file mode 100644
index 03c2d46d..00000000
Binary files a/assets/img/me_sm.jpg and /dev/null differ
diff --git a/config.toml b/config.toml
index 2c7ee4fe..9039e071 100644
--- a/config.toml
+++ b/config.toml
@@ -148,7 +148,9 @@ disableAliases = true
# options for resampling filters:
# https://github.com/disintegration/imaging#image-resizing
resampleFilter = "Lanczos"
- # let imagemin do all the heavy lifting post-build
+ # let imagemin do all the heavy lifting post-build.
+ # can be overridden (overrode?) inline for individual JPEGs:
+ # https://gohugo.io/content-management/image-processing/#jpeg-quality
quality = 100
[markup]
@@ -170,6 +172,12 @@ disableAliases = true
noClasses = true
tabWidth = 4
+# commit things like oEmbed JSON (tweets, etc.) next to resources in this repo
+[caches]
+ [caches.getjson]
+ dir = ":resourceDir/_gen"
+ maxAge = -1
+
[server]
[[server.headers]]
for = "/**"
diff --git a/content/_index.md b/content/_index.md
index daac376b..62d39894 100644
--- a/content/_index.md
+++ b/content/_index.md
@@ -8,8 +8,9 @@ sitemap:
---
{{< portrait.inline >}}
-{{ $photoImg := resources.Get "img/me_sm.jpg" }}
-
+{{ $meImg := resources.Get .Site.Author.image }}
+{{ $meImgSm := $meImg.Resize "320x320 q90 jpg" }}
+
{{ portrait.inline >}}
## Hi there! I'm Jake. ๐
diff --git a/content/uses/index.md b/content/uses/index.md
index 7e19221b..15aa468b 100644
--- a/content/uses/index.md
+++ b/content/uses/index.md
@@ -9,6 +9,7 @@ css: |
margin-right: 2px;
}
sitemap:
+ changefreq: monthly
priority: 0.4
---
@@ -154,23 +155,24 @@ I have far too many apps to count, but here the essentials that have earned a sp
## โ๏ธ Cloud {#cloud}
-I've been making recent efforts to [de-Google](https://www.reddit.com/r/degoogle/) my life, with mixed results...
+I've been making recent efforts to [de-Google](https://www.stallman.org/google.html) my life, with mixed results...
- ~~Gmail~~ โ [**Fastmail**](https://www.fastmail.com/) [(referral link)](https://ref.fm/u20274504)
- ~~Google Drive~~ โ ~~Dropbox~~ โ [**iCloud Drive**](https://www.icloud.com/iclouddrive)
- [Read why.](/notes/dropping-dropbox/)
- ~~Google Docs~~ โ [**Microsoft Office**](https://products.office.com/en-us/mac/microsoft-office-for-mac) (hey, it works ๐คท)
- ~~Google Photos~~ โ [**iCloud Photos**](https://www.icloud.com/photos/)
-- ~~Google DNS~~ โ [**Cloudflare 1.1.1.1 DNS**](https://1.1.1.1/dns/)
-- ~~Google Analytics~~ โ both of these are awesome, privacy-aware "visitor counters" rather than trackers:
+- ~~Google Analytics~~ โ both of these are awesome, privacy-aware "visitor counters" rather than invasive trackers:
- [**Netlify Analytics**](https://www.netlify.com/products/analytics/) [(my review)](/notes/netlify-analytics-review/)
- [**Simple Analytics**](https://simpleanalytics.com/) [(referral link)](https://referral.simpleanalytics.com/jake-jarvis)
- ๐ This website's [stats are public](/stats/), by the way!
-- ~~GoDaddy~~ โ ~~Google Domains~~ โ [**Cloudflare Registrar**](https://www.cloudflare.com/products/registrar/)
-- [**DNSimple**](https://dnsimple.com/) [(referral link)](https://dnsimple.com/r/eb6ced548f1e0a) & [**Cloudflare**](https://www.cloudflare.com/) for DNS.
+- ~~Google Public DNS~~ โ [**Cloudflare's 1.1.1.1**](https://1.1.1.1/dns/) on my home network.
+- ~~GoDaddy~~ โ ~~Google Domains~~ โ [**Cloudflare Registrar**](https://www.cloudflare.com/products/registrar/) (and [**ISNIC**](https://isnic.is/en/) of course ๐ฎ๐ธ)
+- [**DNSimple**](https://dnsimple.com/) [(referral link)](https://dnsimple.com/r/eb6ced548f1e0a) & [**Cloudflare**](https://www.cloudflare.com/) for domain DNS.
- [**Netlify**](https://www.netlify.com/) for static sites.
- [**Linode**](https://www.linode.com/) [(referral link)](https://www.linode.com/?r=0c5aeace9bd591be9fbf32f96f58470295f1ee05) for virtual Linux servers.
- [**Backblaze**](https://www.backblaze.com/) [(referral link)](https://secure.backblaze.com/r/00x84e) for off-site MacBook backups.
+- [**Gitea**](https://gitea.io/en-us/) as a [self-hosted](https://code.jarv.is/) Git backup/mirror.
- [**Plex**](https://www.plex.tv/) + [**Sonarr**](https://sonarr.tv/) + [**Radarr**](https://radarr.video/)
## ๐ Internet of ~~Things~~ [Crap](/notes/shodan-search-queries/) {#home}
@@ -178,6 +180,6 @@ I've been making recent efforts to [de-Google](https://www.reddit.com/r/degoogle
- [**Synology RT2600ac**](https://www.synology.com/en-us/products/RT2600ac)
- [**Synology DiskStation DS218+**](https://www.synology.com/en-us/products/DS218+)
- [**Dell Inspiron 3647**](https://www.amazon.com/dp/B00HWML468/) running [**VMware ESXi**](https://www.vmware.com/products/esxi-and-esx.html) as a really, _really_ crappy home server.
-- [**Philips Hue**](https://www2.meethue.com/en-us) โย color bulbs, dimmer switches, etc.
+- [**Philips Hue**](https://www2.meethue.com/en-us) color bulbs, dimmer switches, etc.
- 2x [**Sonos One**](https://www.sonos.com/en-us/shop/one.html) (with Alexa turned off...allegedly.)
- [**Petcube Play**](https://petcube.com/play/) ๐ป
diff --git a/layouts/index.atom b/layouts/index.atom
index 7927869f..e1e778e9 100644
--- a/layouts/index.atom
+++ b/layouts/index.atom
@@ -1,5 +1,5 @@
{{- $img := partial "functions/social-images" . -}}
-{{ printf "" | safeHTML }}
+{{ printf "" | safeHTML }}
{{ .Site.Title }}
{{ .Permalink }}
diff --git a/layouts/sitemap.xml b/layouts/sitemap.xml
new file mode 100644
index 00000000..c42f6426
--- /dev/null
+++ b/layouts/sitemap.xml
@@ -0,0 +1,11 @@
+{{ printf "" | safeHTML }}
+
+{{- range .Data.Pages }}
+
+ {{ .Permalink }}{{ if not .Lastmod.IsZero }}
+ {{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}{{ end }}{{ with .Sitemap.ChangeFreq }}
+ {{ . }}{{ end }}{{ if ge .Sitemap.Priority 0.0 }}
+ {{ .Sitemap.Priority }}{{ end }}
+
+{{- end }}
+
diff --git a/resources/_gen/assets/css/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content b/resources/_gen/assets/css/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
new file mode 100644
index 00000000..170b2a73
--- /dev/null
+++ b/resources/_gen/assets/css/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
@@ -0,0 +1 @@
+div#content iframe#sa-graph {display:block;margin:0 auto;height:327px;width:100%;max-width:654px;border:0;overflow:hidden;}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json b/resources/_gen/assets/css/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
new file mode 100644
index 00000000..011e1d15
--- /dev/null
+++ b/resources/_gen/assets/css/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
@@ -0,0 +1 @@
+{"Target":"css/inline.css","MediaType":"text/css","Data":{}}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/notes/coronavirus-open-source/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content b/resources/_gen/assets/css/notes/coronavirus-open-source/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
new file mode 100644
index 00000000..4ffdd14a
--- /dev/null
+++ b/resources/_gen/assets/css/notes/coronavirus-open-source/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
@@ -0,0 +1,3 @@
+div#content a#octocat {margin-left:.25em;text-decoration:none;}
+div#content a#octocat svg {vertical-align:text-bottom;}
+body.dark div#content a#octocat svg path {fill:#d3d3d3;}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/notes/coronavirus-open-source/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json b/resources/_gen/assets/css/notes/coronavirus-open-source/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
new file mode 100644
index 00000000..4681c70f
--- /dev/null
+++ b/resources/_gen/assets/css/notes/coronavirus-open-source/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
@@ -0,0 +1 @@
+{"Target":"notes/coronavirus-open-source/css/inline.css","MediaType":"text/css","Data":{}}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/notes/dark-mode/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content b/resources/_gen/assets/css/notes/dark-mode/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
new file mode 100644
index 00000000..8a6b698d
--- /dev/null
+++ b/resources/_gen/assets/css/notes/dark-mode/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
@@ -0,0 +1 @@
+div#content div.embed iframe {height:190px;width:100%;max-width:650px;display:block;box-sizing:border-box;margin:0 auto;border:2px solid #ccc;}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/notes/dark-mode/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json b/resources/_gen/assets/css/notes/dark-mode/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
new file mode 100644
index 00000000..73ff1eb5
--- /dev/null
+++ b/resources/_gen/assets/css/notes/dark-mode/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
@@ -0,0 +1 @@
+{"Target":"notes/dark-mode/css/inline.css","MediaType":"text/css","Data":{}}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/notes/how-to-pull-request-fork-github/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content b/resources/_gen/assets/css/notes/how-to-pull-request-fork-github/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
new file mode 100644
index 00000000..7f5df7ed
--- /dev/null
+++ b/resources/_gen/assets/css/notes/how-to-pull-request-fork-github/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
@@ -0,0 +1 @@
+svg#fork {float:right;margin-bottom:6px;margin-left:12px;width:150px;height:150px;}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/notes/how-to-pull-request-fork-github/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json b/resources/_gen/assets/css/notes/how-to-pull-request-fork-github/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
new file mode 100644
index 00000000..4141b1af
--- /dev/null
+++ b/resources/_gen/assets/css/notes/how-to-pull-request-fork-github/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
@@ -0,0 +1 @@
+{"Target":"notes/how-to-pull-request-fork-github/css/inline.css","MediaType":"text/css","Data":{}}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/notes/shodan-search-queries/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content b/resources/_gen/assets/css/notes/shodan-search-queries/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
new file mode 100644
index 00000000..605ddfd0
--- /dev/null
+++ b/resources/_gen/assets/css/notes/shodan-search-queries/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
@@ -0,0 +1 @@
+div#content h3 a:last-child,h4 a:last-child {background-image:none;padding-bottom:0;margin-left:6px;text-decoration:none;}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/notes/shodan-search-queries/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json b/resources/_gen/assets/css/notes/shodan-search-queries/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
new file mode 100644
index 00000000..3d5d2e8b
--- /dev/null
+++ b/resources/_gen/assets/css/notes/shodan-search-queries/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
@@ -0,0 +1 @@
+{"Target":"notes/shodan-search-queries/css/inline.css","MediaType":"text/css","Data":{}}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/previously/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content b/resources/_gen/assets/css/previously/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
new file mode 100644
index 00000000..09cc4ffc
--- /dev/null
+++ b/resources/_gen/assets/css/previously/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
@@ -0,0 +1,18 @@
+/*!
+ * Comic Neue typeface v2.5 - http://comicneue.com/
+ *
+ * Copyright (c) 2014 The Comic Neue Project Authors.
+ * Licensed under the SIL Open Font License, Version 1.1:
+ * https://github.com/crozynski/comicneue/blob/v2.5/OFL.txt
+ */
+@font-face {font-family:"Comic Neue";font-style:normal;font-weight:700;font-display:swap;src:url(https://jarv.is/vendor/comic-neue/comic-neue-bold-subset.woff2) format('woff2'),url(https://jarv.is/vendor/comic-neue/comic-neue-bold-subset.woff) format('woff');unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+body {font-family:"Comic Neue","Comic Sans MS","Comic Sans",Inter,sans-serif;font-weight:700;}
+div#content {text-align:center;}
+div#content figure figcaption,div#content p {font-size:1.1em;}
+div#content code {font-size:.85em;}
+div#content iframe#y2k {width:100%;height:500px;border:2px solid #e3d18c;}
+div#content code {font-weight:400;}
+div#content span.limegreen {color:#32cd32;}
+header nav a#logo h1#name {font-size:1.5em;line-height:1.15;}
+header nav ul li a span.text {font-size:.9em;line-height:1.15;}
+footer div#copyright,footer div#poweredby {font-size:1.1em;}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/previously/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json b/resources/_gen/assets/css/previously/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
new file mode 100644
index 00000000..01e350f3
--- /dev/null
+++ b/resources/_gen/assets/css/previously/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
@@ -0,0 +1 @@
+{"Target":"previously/css/inline.css","MediaType":"text/css","Data":{}}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/uses/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content b/resources/_gen/assets/css/uses/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
new file mode 100644
index 00000000..de6590d8
--- /dev/null
+++ b/resources/_gen/assets/css/uses/css/inline.css_df74b63a3414ad3f920e0c2783da4550.content
@@ -0,0 +1 @@
+h2 img.emoji {margin-right:2px;}
\ No newline at end of file
diff --git a/resources/_gen/assets/css/uses/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json b/resources/_gen/assets/css/uses/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
new file mode 100644
index 00000000..b544f136
--- /dev/null
+++ b/resources/_gen/assets/css/uses/css/inline.css_df74b63a3414ad3f920e0c2783da4550.json
@@ -0,0 +1 @@
+{"Target":"uses/css/inline.css","MediaType":"text/css","Data":{}}
\ No newline at end of file
diff --git a/resources/_gen/assets/scss/sass/main.scss_1df4e3baf336036434cc851677538677.content b/resources/_gen/assets/scss/sass/main.scss_1df4e3baf336036434cc851677538677.content
new file mode 100644
index 00000000..7c31b4a1
--- /dev/null
+++ b/resources/_gen/assets/scss/sass/main.scss_1df4e3baf336036434cc851677538677.content
@@ -0,0 +1,357 @@
+@charset "UTF-8";
+/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
+html {line-height:1.15;-webkit-text-size-adjust:100%;}
+body {margin:0;}
+main {display:block;}
+h1 {font-size:2em;margin:.67em 0;}
+hr {box-sizing:content-box;height:0;overflow:visible;}
+pre {font-family:monospace,monospace;font-size:1em;}
+a {background-color:transparent;}
+abbr[title] {border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}
+b,strong {font-weight:bolder;}
+code,kbd,samp {font-family:monospace,monospace;font-size:1em;}
+small {font-size:80%;}
+sub,sup {font-size:75%;line-height:0;position:relative;vertical-align:baseline;}
+sub {bottom:-.25em;}
+sup {top:-.5em;}
+img {border-style:none;}
+button,input,optgroup,select,textarea {font-family:inherit;font-size:100%;line-height:1.15;margin:0;}
+button,input {overflow:visible;}
+button,select {text-transform:none;}
+[type=button],[type=reset],[type=submit],button {-webkit-appearance:button;}
+[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner {border-style:none;padding:0;}
+[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring {outline:1px dotted ButtonText;}
+fieldset {padding:.35em .75em .625em;}
+legend {box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}
+progress {vertical-align:baseline;}
+textarea {overflow:auto;}
+[type=checkbox],[type=radio] {box-sizing:border-box;padding:0;}
+[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button {height:auto;}
+[type=search] {-webkit-appearance:textfield;outline-offset:-2px;}
+[type=search]::-webkit-search-decoration {-webkit-appearance:none;}
+::-webkit-file-upload-button {-webkit-appearance:button;font:inherit;}
+details {display:block;}
+summary {display:list-item;}
+template {display:none;}
+[hidden] {display:none;}
+/*!
+ * Inter typeface v3.13 - https://rsms.me/inter/
+ *
+ * Copyright (c) 2016-2020 The Inter Project Authors.
+ * Licensed under the SIL Open Font License, Version 1.1:
+ * https://github.com/rsms/inter/blob/v3.13/LICENSE.txt
+ */
+@font-face {font-family:"Inter var";font-style:normal;font-weight:100 900;font-display:swap;src:url(http://localhost:1337/vendor/inter/inter-subset.var.woff2) format("woff2-variations"),url(http://localhost:1337/vendor/inter/inter-subset.var.woff2) format("woff2");font-named-instance:Regular;unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+@font-face {font-family:"Inter var";font-style:italic;font-weight:100 900;font-display:swap;src:url(http://localhost:1337/vendor/inter/inter-italic-subset.var.woff2) format("woff2-variations"),url(http://localhost:1337/vendor/inter/inter-italic-subset.var.woff2) format("woff2");font-named-instance:Italic;unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+@font-face {font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(http://localhost:1337/vendor/inter/inter-regular-subset.woff2) format("woff2"),url(http://localhost:1337/vendor/inter/inter-regular-subset.woff) format("woff");unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+@font-face {font-family:Inter;font-style:italic;font-weight:400;font-display:swap;src:url(http://localhost:1337/vendor/inter/inter-regular-italic-subset.woff2) format("woff2"),url(http://localhost:1337/vendor/inter/inter-regular-italic-subset.woff) format("woff");unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+@font-face {font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(http://localhost:1337/vendor/inter/inter-medium-subset.woff2) format("woff2"),url(http://localhost:1337/vendor/inter/inter-medium-subset.woff) format("woff");unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+@font-face {font-family:Inter;font-style:italic;font-weight:500;font-display:swap;src:url(http://localhost:1337/vendor/inter/inter-medium-italic-subset.woff2) format("woff2"),url(http://localhost:1337/vendor/inter/inter-medium-italic-subset.woff) format("woff");unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+@font-face {font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(http://localhost:1337/vendor/inter/inter-bold-subset.woff2) format("woff2"),url(http://localhost:1337/vendor/inter/inter-bold-subset.woff) format("woff");unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+@font-face {font-family:Inter;font-style:italic;font-weight:700;font-display:swap;src:url(http://localhost:1337/vendor/inter/inter-bold-italic-subset.woff2) format("woff2"),url(http://localhost:1337/vendor/inter/inter-bold-italic-subset.woff) format("woff");unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+2200-22FF,U+2122;}
+/*!
+ * Hack typeface v3.003 - https://sourcefoundry.org/hack/
+ *
+ * Copyright (c) 2018 Source Foundry Authors.
+ * Licensed under the MIT License:
+ * https://github.com/source-foundry/Hack/blob/v3.003/LICENSE.md
+ */
+@font-face {font-family:Hack;font-style:normal;font-weight:400;font-display:swap;src:url(http://localhost:1337/vendor/hack/hack-regular-subset.woff2) format("woff2"),url(http://localhost:1337/vendor/hack/hack-regular-subset.woff) format("woff");}
+@font-face {font-family:Hack;font-style:italic;font-weight:400;font-display:swap;src:url(http://localhost:1337/vendor/hack/hack-italic-subset.woff2) format("woff2"),url(http://localhost:1337/vendor/hack/hack-italic-subset.woff) format("woff");}
+body {width:100%;height:100%;margin:0 auto;font-family:Inter,sans-serif;-webkit-font-kerning:normal;font-kerning:normal;font-variant-ligatures:normal;font-feature-settings:"kern","liga","calt","clig","ss01";line-height:1.5;}
+@supports (font-variation-settings:normal) {
+body {font-family:"Inter var",sans-serif;font-optical-sizing:auto;}
+}
+body.light {background-color:#fcfcfc;}
+body.light button.dark-mode-toggle {background-image:url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjIgMzUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMjIgMTEuMDZjMCA2LjQ0LTUgNy40NC01IDEzLjQ0IDAgMy4xLTMuMTIgMy4zNi01LjUgMy4zNi0yLjA1IDAtNi41OS0uNzgtNi41OS0zLjM2IDAtNi00LjkxLTctNC45MS0xMy40NEMwIDUuMDMgNS4yOS4xNCAxMS4wOC4xNCAxNi44OC4xNCAyMiA1LjAzIDIyIDExLjA2eiIgZmlsbD0iI0ZGRDk4MyIvPjxwYXRoIGQ9Ik0xNS4xNyAzMi41YzAgLjgzLTIuMjQgMi41LTQuMTcgMi41LTEuOTMgMC00LjE3LTEuNjctNC4xNy0yLjUgMC0uODMgMi4yNC0uNSA0LjE3LS41IDEuOTMgMCA0LjE3LS4zMyA0LjE3LjV6IiBmaWxsPSIjQ0NENkREIi8+PHBhdGggZD0iTTE1LjcgMTAuM2ExIDEgMCAwMC0xLjQgMEwxMSAxMy41OGwtMy4zLTMuM2ExIDEgMCAxMC0xLjQgMS40MmwzLjcgMy43VjI2YTEgMSAwIDEwMiAwVjE1LjQxbDMuNy0zLjdhMSAxIDAgMDAwLTEuNDJ6IiBmaWxsPSIjRkZDQzREIi8+PHBhdGggZD0iTTE3IDMxYTIgMiAwIDAxLTIgMkg3YTIgMiAwIDAxLTItMnYtNmgxMnY2eiIgZmlsbD0iIzk5QUFCNSIvPjxwYXRoIGQ9Ik01IDMyYTEgMSAwIDAxLS4xNi0xLjk5bDEyLTJhMSAxIDAgMTEuMzMgMS45N2wtMTIgMkEuOTMuOTMgMCAwMTUgMzJ6bTAtNGExIDEgMCAwMS0uMTYtMS45OWwxMi0yYTEgMSAwIDExLjMzIDEuOTdsLTEyIDJBLjkzLjkzIDAgMDE1IDI4eiIgZmlsbD0iI0NDRDZERCIvPjwvZz48L3N2Zz4K);}
+body.dark {background-color:#252525;}
+body.dark button.dark-mode-toggle {background-image:url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjIgMzUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMjIgMTEuMDZjMCA2LjQ0LTUgNy40NC01IDEzLjQ0IDAgMy4xLTMuMTIgMy4zNi01LjUgMy4zNi0yLjA1IDAtNi41OS0uNzgtNi41OS0zLjM2IDAtNi00LjkxLTctNC45MS0xMy40NEMwIDUuMDMgNS4yOS4xNCAxMS4wOC4xNCAxNi44OC4xNCAyMiA1LjAzIDIyIDExLjA2eiIgZmlsbD0iI0NDQ0JDQiIvPjxwYXRoIGQ9Ik0xNS4xNyAzMi41YzAgLjgzLTIuMjQgMi41LTQuMTcgMi41LTEuOTMgMC00LjE3LTEuNjctNC4xNy0yLjUgMC0uODMgMi4yNC0uNSA0LjE3LS41IDEuOTMgMCA0LjE3LS4zMyA0LjE3LjV6IiBmaWxsPSIjQ0NENkREIi8+PHBhdGggZD0iTTE1LjcgMTAuM2ExIDEgMCAwMC0xLjQgMEwxMSAxMy41OGwtMy4zLTMuM2ExIDEgMCAxMC0xLjQgMS40MmwzLjcgMy43VjI2YTEgMSAwIDEwMiAwVjE1LjQxbDMuNy0zLjdhMSAxIDAgMDAwLTEuNDJ6IiBmaWxsPSIjN0Q3QTcyIi8+PHBhdGggZD0iTTE3IDMxYTIgMiAwIDAxLTIgMkg3YTIgMiAwIDAxLTItMnYtNmgxMnY2eiIgZmlsbD0iIzk5QUFCNSIvPjxwYXRoIGQ9Ik01IDMyYTEgMSAwIDAxLS4xNi0xLjk5bDEyLTJhMSAxIDAgMTEuMzMgMS45N2wtMTIgMkEuOTMuOTMgMCAwMTUgMzJ6bTAtNGExIDEgMCAwMS0uMTYtMS45OWwxMi0yYTEgMSAwIDExLjMzIDEuOTdsLTEyIDJBLjkzLjkzIDAgMDE1IDI4eiIgZmlsbD0iI0NDRDZERCIvPjwvZz48L3N2Zz4K);}
+main {width:100%;}
+body.light main {background-color:#fff;color:#202020;}
+body.dark main {background-color:#1e1e1e;color:#f1f1f1;}
+div.layout {max-width:940px;margin:0 auto;padding-left:1.5em;padding-right:1.5em;display:block;}
+a {text-decoration:none;background-position:0 100%;background-repeat:no-repeat;background-size:0 2px;padding-bottom:2px;transition:background-size .25s ease-in-out;}
+body.light a {color:#0e6dc2;background-image:linear-gradient(#0e6dc2,#0e6dc2);background-image:linear-gradient(rgba(14,109,194,.4),rgba(14,109,194,.4));}
+body.dark a {color:#88c7ff;background-image:linear-gradient(#88c7ff,#88c7ff);background-image:linear-gradient(rgba(136,199,255,.4),rgba(136,199,255,.4));}
+a:focus,a:hover {background-size:100% 2px;}
+a.no-underline {background:0 0!important;padding-bottom:0;}
+b,strong {letter-spacing:.008em;}
+blockquote {margin-left:0;padding-left:1.5em;border-left:3px solid;}
+body.light blockquote {color:#515151;border-color:#0e6dc2;}
+body.dark blockquote {color:#d7d7d7;border-color:#88c7ff;}
+hr {margin:1.5em auto;height:2px;border:0;}
+body.light hr {background-color:#d2d2d2;}
+body.dark hr {background-color:#646464;}
+img.emoji {height:1.1em;width:1.1em;margin:0;padding:0 .09em;vertical-align:-.18em;border:0;display:inline-block;cursor:text;}
+a img.emoji {cursor:inherit;}
+header {width:100%;padding:0 1.5em;box-sizing:border-box;border-bottom:1px solid;}
+body.light header {border-color:#e3e3e3;}
+body.dark header {border-color:#535353;}
+header nav {width:100%;max-width:940px;margin:0 auto;box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;}
+header nav a#logo {display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;}
+body.light header nav a#logo {color:#515151;}
+body.dark header nav a#logo {color:#d7d7d7;}
+header nav a#logo h1#name {margin:.95em 0 .95em .725em;font-size:1.35em;font-weight:500;letter-spacing:-.01em;}
+header nav a#logo svg {width:28px;height:40px;}
+body.light header nav a#logo:focus,body.light header nav a#logo:hover {color:#0e6dc2;}
+body.dark header nav a#logo:focus,body.dark header nav a#logo:hover {color:#88c7ff;}
+header nav a#logo:focus svg g#c1,header nav a#logo:hover svg g#c1 {fill:#ffb900;}
+header nav a#logo:focus svg g#c2,header nav a#logo:hover svg g#c2 {fill:#009cdf;}
+header nav a#logo:focus svg g#c3,header nav a#logo:hover svg g#c3 {fill:#6fbc4e;}
+header nav ul {list-style:none;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;margin:0;padding:0;font-size:1.2em;letter-spacing:-.002em;}
+header nav ul li {text-align:right;margin-left:1.7em;}
+header nav ul li a {display:inline-block;transition:-webkit-transform .15s ease-in-out;transition:transform .15s ease-in-out;transition:transform .15s ease-in-out,-webkit-transform .15s ease-in-out;}
+body.light header nav ul li a {color:#515151;}
+body.dark header nav ul li a {color:#d7d7d7;}
+header nav ul li a:focus,header nav ul li a:hover {-webkit-transform:scale(1.15);transform:scale(1.15);}
+body.light header nav ul li a:focus,body.light header nav ul li a:hover {color:#0e6dc2;}
+body.dark header nav ul li a:focus,body.dark header nav ul li a:hover {color:#88c7ff;}
+header nav ul li a span.icon {font-size:1.15em;vertical-align:-.075em;}
+header nav ul li a span.text {font-size:.8em;font-weight:500;margin-left:.5em;}
+header nav ul li:first-child,header nav ul li:last-child {margin-left:0;}
+header nav ul button.dark-mode-toggle {border:0;padding:0;background-color:transparent;background-repeat:no-repeat;background-size:100% 100%;height:1.5em;width:1em;margin-left:1.7em;cursor:pointer;display:none;}
+footer {width:100%;letter-spacing:-.005em;padding:1.25em 1.5em;box-sizing:border-box;border-top:1px solid;}
+body.light footer {color:#515151;border-color:#e3e3e3;}
+body.dark footer {color:#d7d7d7;border-color:#535353;}
+body.light footer a {color:#515151;}
+body.dark footer a {color:#d7d7d7;}
+footer div.row {display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;max-width:940px;margin:0 auto;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;font-size:.85em;}
+footer div#copyright,footer div#poweredby {width:40%;line-height:2.3;}
+footer div#copyright {text-align:left;}
+footer div#poweredby {text-align:right;}
+footer div#poweredby a#source {padding-bottom:2px;border-bottom:1px solid;}
+body.light footer div#poweredby a#source {border-color:#d2d2d2;}
+body.dark footer div#poweredby a#source {border-color:#646464;}
+footer div#y2k {width:20%;text-align:center;line-height:1;}
+div#content {font-size:.935em;letter-spacing:-.008em;line-height:1.7;}
+div#content h1,div#content h2,div#content h3,div#content h4 {margin-top:1.25em;margin-bottom:.5em;letter-spacing:.001em;line-height:1.5;}
+div#content h2 {padding-bottom:.25em;border-bottom:1px solid;}
+body.light div#content h2 {border-color:#e3e3e3;}
+body.dark div#content h2 {border-color:#535353;}
+div#content p.center {text-align:center;}
+div#content figure,div#content p.image {text-align:center;}
+div#content figure img,div#content p.image img {height:auto;max-width:100%;}
+div#content figure {margin:1em auto;}
+div#content figure figcaption {font-size:.95em;}
+body.light div#content figure figcaption {color:#5e5e5e;}
+body.dark div#content figure figcaption {color:#b1b1b1;}
+div#content ul {margin-left:1em;padding-left:0;}
+div#content ul li {padding-left:.25em;}
+div.embed.tweet .twitter-tweet-rendered iframe {margin:.5em 0;}
+div.embed.youtube {position:relative;padding-bottom:56.25%;margin:1em auto;height:0;overflow:hidden;}
+div.embed.youtube iframe.youtube-player {position:absolute;top:0;left:0;width:100%;height:100%;display:inline-block;border:0;}
+div.embed.video video {display:block;margin:1em auto;max-width:100%;height:auto;}
+div.embed.gh-buttons {text-align:center;}
+div.embed.gh-buttons>a,div.embed.gh-buttons>span {margin:0 .5em;}
+div.embed.codepen iframe {width:100%;border:0;}
+div.layout-home {font-size:1.025em;padding-top:1.5em;padding-bottom:.75em;}
+div.layout-home h2 {margin:0 0 .6em 0;font-size:1.8em;font-weight:500;letter-spacing:-.014em;line-height:1.1;margin-left:-.03em;}
+div.layout-home h3 {margin:.6em 0;font-size:1.35em;font-weight:400;letter-spacing:-.022em;line-height:1.4;}
+div.layout-home p {margin:.85em 0;letter-spacing:-.009em;line-height:1.6;}
+div.layout-home sup {letter-spacing:normal;position:relative;}
+div.layout-home sup#key {font-family:Hack,monospace;font-size:.65em;word-spacing:-.3em;margin-right:.1em;}
+div.layout-home sup#key img.emoji {vertical-align:-.15em;padding:0;}
+div.layout-home img#me {float:right;margin-bottom:.6em;margin-left:1.6em;padding:4px;width:160px;height:160px;border:1px solid;border-radius:50%;}
+body.light div.layout-home img#me {border-color:#d2d2d2;}
+body.dark div.layout-home img#me {border-color:#646464;}
+div.layout-home a#birthday:focus,div.layout-home a#birthday:hover {cursor:url(data:image/svg+xml;utf8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDM2IDM2Ij48ZyBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjMjkyRjMzIiBkPSJNMi42NTEgNi4wNzNsMjYuMjc1IDI2LjI3NmMuMzkxLjM5MSAyLjg4OC0yLjEwNyAyLjQ5Ny0yLjQ5N0w1LjE0OCAzLjU3NmMtLjM5LS4zOTEtMi44ODggMi4xMDctMi40OTcgMi40OTd6Ii8+PHBhdGggZmlsbD0iIzY2NzU3RiIgZD0iTTI5LjQ0MiAzMS4yM0wzLjE0NiA0LjkzNGwuODgzLS44ODMgMjYuMjk2IDI2LjI5NnoiLz48cGF0aCBmaWxsPSIjRTFFOEVEIiBkPSJNMzMuNTQ2IDMzLjQ4M2wtLjQxMi40MTItLjY3MS42NzFhLjk2Ny45NjcgMCAwMS0uMjU1LjE2OS45ODguOTg4IDAgMDEtMS4xNTktLjE2OWwtMi4xMDItMi4xMDIuNDk1LS40OTUuODgzLS44ODMgMS4xMTktMS4xMTkgMi4xMDIgMi4xMDJhLjk5OS45OTkgMCAwMTAgMS40MTR6TTQuMDI5IDQuNzlsLS44ODMuODgzLS40OTUuNDk1TC40NDIgMy45NmEuOTg4Ljk4OCAwIDAxLS4xNjktMS4xNTkuOTY3Ljk2NyAwIDAxLjE2OS0uMjU1bC42NzEtLjY3MS40MTItLjQxMmEuOTk5Ljk5OSAwIDAxMS40MTQgMGwyLjIwOCAyLjIwOEw0LjAyOSA0Ljc5eiIvPjxwYXRoIGZpbGw9IiNGNUY4RkEiIGQ9Ik0zMC4zMjUgMzAuNDk3bDIuODA5IDIuODA5LS42NzEuNjcxYS45NjcuOTY3IDAgMDEtLjI1NS4xNjlsLTIuNzY3LTIuNzY3Ljg4NC0uODgyek0zLjE0NiA1LjA4NEwuMjczIDIuMjExYS45NjcuOTY3IDAgMDEuMTY5LS4yNTVsLjY3MS0uNjcxIDIuOTE2IDIuOTE2LS44ODMuODgzeiIvPjxwYXRoIGZpbGw9IiNGRkFDMzMiIGQ9Ik0yNy44OTcgMTAuMjE5bDEuNTQyLjU3MS42IDIuMmEuNjY3LjY2NyAwIDAwMS4yODcgMGwuNi0yLjIgMS41NDItLjU3MWEuNjY1LjY2NSAwIDAwMC0xLjI1bC0xLjUzNC0uNTY4LS42MDUtMi40MTVhLjY2Ny42NjcgMCAwMC0xLjI5MyAwbC0uNjA1IDIuNDE1LTEuNTM0LjU2OGEuNjY1LjY2NSAwIDAwMCAxLjI1bS0xNi45MzYgOS42MjhsMi42MS45NjYuOTY2IDIuNjFhMS4xMDMgMS4xMDMgMCAwMDIuMDcgMGwuOTY2LTIuNjEgMi42MDktLjk2NmExLjEwMyAxLjEwMyAwIDAwMC0yLjA3bC0yLjYwOS0uOTY2LS45NjYtMi42MWExLjEwNSAxLjEwNSAwIDAwLTIuMDcgMGwtLjk2NiAyLjYxLTIuNjEuOTY2YTEuMTA0IDEuMTA0IDAgMDAwIDIuMDdNMjMuMTMgNC4zNmwxLjM4My41MTIuNTEyIDEuMzgyYS41ODUuNTg1IDAgMDAxLjA5NiAwbC41MTItMS4zODIgMS4zODItLjUxMmEuNTg0LjU4NCAwIDAwMC0xLjA5NmwtMS4zODItLjUxMi0uNTEyLTEuMzgyYS41ODUuNTg1IDAgMDAtMS4wOTYgMGwtLjUxMiAxLjM4Mi0xLjM4My41MTJhLjU4NS41ODUgMCAwMDAgMS4wOTYiLz48L2c+PC9zdmc+) 0 0,auto;}
+div.layout-home span#serverless {color:#87cef7;}
+body.light div.layout-home span#shh {color:#757575;}
+body.dark div.layout-home span#shh {color:#959595;}
+div.layout-home span.wave {margin-left:2px;}
+body.light div.layout-home a#boston {color:#fb4d42;background-image:linear-gradient(#fb4d42,#fb4d42);background-image:linear-gradient(rgba(251,77,66,.4),rgba(251,77,66,.4));}
+body.dark div.layout-home a#boston {color:#ff5146;background-image:linear-gradient(#ff5146,#ff5146);background-image:linear-gradient(rgba(255,81,70,.4),rgba(255,81,70,.4));}
+body.light div.layout-home a#jamstack {color:#04a699;background-image:linear-gradient(#04a699,#04a699);background-image:linear-gradient(rgba(4,166,153,.4),rgba(4,166,153,.4));}
+body.dark div.layout-home a#jamstack {color:#08bbac;background-image:linear-gradient(#08bbac,#08bbac);background-image:linear-gradient(rgba(8,187,172,.4),rgba(8,187,172,.4));}
+body.light div.layout-home a#javascript {color:#f48024;background-image:linear-gradient(#f48024,#f48024);background-image:linear-gradient(rgba(244,128,36,.4),rgba(244,128,36,.4));}
+body.dark div.layout-home a#javascript {color:#e18431;background-image:linear-gradient(#e18431,#e18431);background-image:linear-gradient(rgba(225,132,49,.4),rgba(225,132,49,.4));}
+body.light div.layout-home a#node {color:#6fbc4e;background-image:linear-gradient(#6fbc4e,#6fbc4e);background-image:linear-gradient(rgba(111,188,78,.4),rgba(111,188,78,.4));}
+body.dark div.layout-home a#node {color:#84d95f;background-image:linear-gradient(#84d95f,#84d95f);background-image:linear-gradient(rgba(132,217,95,.4),rgba(132,217,95,.4));}
+body.light div.layout-home a#golang {color:#00acd7;background-image:linear-gradient(#00acd7,#00acd7);background-image:linear-gradient(rgba(0,172,215,.4),rgba(0,172,215,.4));}
+body.dark div.layout-home a#golang {color:#2ad1fb;background-image:linear-gradient(#2ad1fb,#2ad1fb);background-image:linear-gradient(rgba(42,209,251,.4),rgba(42,209,251,.4));}
+body.light div.layout-home a#react {color:#4fb3cd;background-image:linear-gradient(#4fb3cd,#4fb3cd);background-image:linear-gradient(rgba(79,179,205,.4),rgba(79,179,205,.4));}
+body.dark div.layout-home a#react {color:#6fcbe3;background-image:linear-gradient(#6fcbe3,#6fcbe3);background-image:linear-gradient(rgba(111,203,227,.4),rgba(111,203,227,.4));}
+body.light div.layout-home a#angular {color:#c3002f;background-image:linear-gradient(#c3002f,#c3002f);background-image:linear-gradient(rgba(195,0,47,.4),rgba(195,0,47,.4));}
+body.dark div.layout-home a#angular {color:#f95757;background-image:linear-gradient(#f95757,#f95757);background-image:linear-gradient(rgba(249,87,87,.4),rgba(249,87,87,.4));}
+body.light div.layout-home a#php {color:#8892bf;background-image:linear-gradient(#8892bf,#8892bf);background-image:linear-gradient(rgba(136,146,191,.4),rgba(136,146,191,.4));}
+body.dark div.layout-home a#php {color:#a4afe3;background-image:linear-gradient(#a4afe3,#a4afe3);background-image:linear-gradient(rgba(164,175,227,.4),rgba(164,175,227,.4));}
+body.light div.layout-home a#ruby {color:#d34135;background-image:linear-gradient(#d34135,#d34135);background-image:linear-gradient(rgba(211,65,53,.4),rgba(211,65,53,.4));}
+body.dark div.layout-home a#ruby {color:#f95a4d;background-image:linear-gradient(#f95a4d,#f95a4d);background-image:linear-gradient(rgba(249,90,77,.4),rgba(249,90,77,.4));}
+body.light div.layout-home a#python {color:#fea500;background-image:linear-gradient(#fea500,#fea500);background-image:linear-gradient(rgba(254,165,0,.4),rgba(254,165,0,.4));}
+body.dark div.layout-home a#python {color:#ffbb3c;background-image:linear-gradient(#ffbb3c,#ffbb3c);background-image:linear-gradient(rgba(255,187,60,.4),rgba(255,187,60,.4));}
+body.light div.layout-home a#java {color:#ab6311;background-image:linear-gradient(#ab6311,#ab6311);background-image:linear-gradient(rgba(171,99,17,.4),rgba(171,99,17,.4));}
+body.dark div.layout-home a#java {color:#e86a2c;background-image:linear-gradient(#e86a2c,#e86a2c);background-image:linear-gradient(rgba(232,106,44,.4),rgba(232,106,44,.4));}
+body.light div.layout-home a#infosec {color:#00b81a;background-image:linear-gradient(#00b81a,#00b81a);background-image:linear-gradient(rgba(0,184,26,.4),rgba(0,184,26,.4));}
+body.dark div.layout-home a#infosec {color:#57f06d;background-image:linear-gradient(#57f06d,#57f06d);background-image:linear-gradient(rgba(87,240,109,.4),rgba(87,240,109,.4));}
+body.light div.layout-home a#server {color:#0098ec;background-image:linear-gradient(#0098ec,#0098ec);background-image:linear-gradient(rgba(0,152,236,.4),rgba(0,152,236,.4));}
+body.dark div.layout-home a#server {color:#43b9fb;background-image:linear-gradient(#43b9fb,#43b9fb);background-image:linear-gradient(rgba(67,185,251,.4),rgba(67,185,251,.4));}
+body.light div.layout-home a#devops {color:#ff6200;background-image:linear-gradient(#ff6200,#ff6200);background-image:linear-gradient(rgba(255,98,0,.4),rgba(255,98,0,.4));}
+body.dark div.layout-home a#devops {color:#f46c16;background-image:linear-gradient(#f46c16,#f46c16);background-image:linear-gradient(rgba(244,108,22,.4),rgba(244,108,22,.4));}
+body.light div.layout-home a#containers {color:#c48f49;background-image:linear-gradient(#c48f49,#c48f49);background-image:linear-gradient(rgba(196,143,73,.4),rgba(196,143,73,.4));}
+body.dark div.layout-home a#containers {color:#ca9249;background-image:linear-gradient(#ca9249,#ca9249);background-image:linear-gradient(rgba(202,146,73,.4),rgba(202,146,73,.4));}
+body.light div.layout-home a#frontend {color:#4169e1;background-image:linear-gradient(#4169e1,#4169e1);background-image:linear-gradient(rgba(65,105,225,.4),rgba(65,105,225,.4));}
+body.dark div.layout-home a#frontend {color:#8ca9ff;background-image:linear-gradient(#8ca9ff,#8ca9ff);background-image:linear-gradient(rgba(140,169,255,.4),rgba(140,169,255,.4));}
+body.light div.layout-home a#backend {color:#9932cc;background-image:linear-gradient(#9932cc,#9932cc);background-image:linear-gradient(rgba(153,50,204,.4),rgba(153,50,204,.4));}
+body.dark div.layout-home a#backend {color:#d588fb;background-image:linear-gradient(#d588fb,#d588fb);background-image:linear-gradient(rgba(213,136,251,.4),rgba(213,136,251,.4));}
+body.light div.layout-home a#birthday {color:#e40088;background-image:linear-gradient(#e40088,#e40088);background-image:linear-gradient(rgba(228,0,136,.4),rgba(228,0,136,.4));}
+body.dark div.layout-home a#birthday {color:#fd40b1;background-image:linear-gradient(#fd40b1,#fd40b1);background-image:linear-gradient(rgba(253,64,177,.4),rgba(253,64,177,.4));}
+body.light div.layout-home a#github {color:#8d4eff;background-image:linear-gradient(#8d4eff,#8d4eff);background-image:linear-gradient(rgba(141,78,255,.4),rgba(141,78,255,.4));}
+body.dark div.layout-home a#github {color:#a379f0;background-image:linear-gradient(#a379f0,#a379f0);background-image:linear-gradient(rgba(163,121,240,.4),rgba(163,121,240,.4));}
+body.light div.layout-home a#linkedin {color:#0073b1;background-image:linear-gradient(#0073b1,#0073b1);background-image:linear-gradient(rgba(0,115,177,.4),rgba(0,115,177,.4));}
+body.dark div.layout-home a#linkedin {color:#3b9dd2;background-image:linear-gradient(#3b9dd2,#3b9dd2);background-image:linear-gradient(rgba(59,157,210,.4),rgba(59,157,210,.4));}
+body.light div.layout-home a#twitter {color:#00acee;background-image:linear-gradient(#00acee,#00acee);background-image:linear-gradient(rgba(0,172,238,.4),rgba(0,172,238,.4));}
+body.dark div.layout-home a#twitter {color:#3bc9ff;background-image:linear-gradient(#3bc9ff,#3bc9ff);background-image:linear-gradient(rgba(59,201,255,.4),rgba(59,201,255,.4));}
+body.light div.layout-home a#dm {color:#00acee;background-image:linear-gradient(#00acee,#00acee);background-image:linear-gradient(rgba(0,172,238,.4),rgba(0,172,238,.4));}
+body.dark div.layout-home a#dm {color:#3bc9ff;background-image:linear-gradient(#3bc9ff,#3bc9ff);background-image:linear-gradient(rgba(59,201,255,.4),rgba(59,201,255,.4));}
+body.light div.layout-home a#facebook {color:#4267b2;background-image:linear-gradient(#4267b2,#4267b2);background-image:linear-gradient(rgba(66,103,178,.4),rgba(66,103,178,.4));}
+body.dark div.layout-home a#facebook {color:#5f8dec;background-image:linear-gradient(#5f8dec,#5f8dec);background-image:linear-gradient(rgba(95,141,236,.4),rgba(95,141,236,.4));}
+body.light div.layout-home a#resume {color:#d54b3d;background-image:linear-gradient(#d54b3d,#d54b3d);background-image:linear-gradient(rgba(213,75,61,.4),rgba(213,75,61,.4));}
+body.dark div.layout-home a#resume {color:#f46151;background-image:linear-gradient(#f46151,#f46151);background-image:linear-gradient(rgba(244,97,81,.4),rgba(244,97,81,.4));}
+body.light div.layout-home a#email {color:#de0c0c;background-image:linear-gradient(#de0c0c,#de0c0c);background-image:linear-gradient(rgba(222,12,12,.4),rgba(222,12,12,.4));}
+body.dark div.layout-home a#email {color:#ff5050;background-image:linear-gradient(#ff5050,#ff5050);background-image:linear-gradient(rgba(255,80,80,.4),rgba(255,80,80,.4));}
+body.light div.layout-home a#pgp {color:#757575;background-image:linear-gradient(#757575,#757575);background-image:linear-gradient(rgba(117,117,117,.4),rgba(117,117,117,.4));}
+body.dark div.layout-home a#pgp {color:#959595;background-image:linear-gradient(#959595,#959595);background-image:linear-gradient(rgba(149,149,149,.4),rgba(149,149,149,.4));}
+body.light div.layout-home a#sms {color:#6fcc01;background-image:linear-gradient(#6fcc01,#6fcc01);background-image:linear-gradient(rgba(111,204,1,.4),rgba(111,204,1,.4));}
+body.dark div.layout-home a#sms {color:#8edb34;background-image:linear-gradient(#8edb34,#8edb34);background-image:linear-gradient(rgba(142,219,52,.4),rgba(142,219,52,.4));}
+body.light div.layout-home a#news-1 {color:#ff1b1b;background-image:linear-gradient(#ff1b1b,#ff1b1b);background-image:linear-gradient(rgba(255,27,27,.4),rgba(255,27,27,.4));}
+body.dark div.layout-home a#news-1 {color:#f06060;background-image:linear-gradient(#f06060,#f06060);background-image:linear-gradient(rgba(240,96,96,.4),rgba(240,96,96,.4));}
+body.light div.layout-home a#news-2 {color:#f78200;background-image:linear-gradient(#f78200,#f78200);background-image:linear-gradient(rgba(247,130,0,.4),rgba(247,130,0,.4));}
+body.dark div.layout-home a#news-2 {color:#fd992a;background-image:linear-gradient(#fd992a,#fd992a);background-image:linear-gradient(rgba(253,153,42,.4),rgba(253,153,42,.4));}
+body.light div.layout-home a#news-3 {color:#f2b702;background-image:linear-gradient(#f2b702,#f2b702);background-image:linear-gradient(rgba(242,183,2,.4),rgba(242,183,2,.4));}
+body.dark div.layout-home a#news-3 {color:#ffcc2e;background-image:linear-gradient(#ffcc2e,#ffcc2e);background-image:linear-gradient(rgba(255,204,46,.4),rgba(255,204,46,.4));}
+body.light div.layout-home a#news-4 {color:#5ebd3e;background-image:linear-gradient(#5ebd3e,#5ebd3e);background-image:linear-gradient(rgba(94,189,62,.4),rgba(94,189,62,.4));}
+body.dark div.layout-home a#news-4 {color:#78df55;background-image:linear-gradient(#78df55,#78df55);background-image:linear-gradient(rgba(120,223,85,.4),rgba(120,223,85,.4));}
+body.light div.layout-home a#news-5 {color:#009cdf;background-image:linear-gradient(#009cdf,#009cdf);background-image:linear-gradient(rgba(0,156,223,.4),rgba(0,156,223,.4));}
+body.dark div.layout-home a#news-5 {color:#29bfff;background-image:linear-gradient(#29bfff,#29bfff);background-image:linear-gradient(rgba(41,191,255,.4),rgba(41,191,255,.4));}
+body.light div.layout-home a#news-6 {color:#3e49bb;background-image:linear-gradient(#3e49bb,#3e49bb);background-image:linear-gradient(rgba(62,73,187,.4),rgba(62,73,187,.4));}
+body.dark div.layout-home a#news-6 {color:#7b87ff;background-image:linear-gradient(#7b87ff,#7b87ff);background-image:linear-gradient(rgba(123,135,255,.4),rgba(123,135,255,.4));}
+body.light div.layout-home a#news-7 {color:#973999;background-image:linear-gradient(#973999,#973999);background-image:linear-gradient(rgba(151,57,153,.4),rgba(151,57,153,.4));}
+body.dark div.layout-home a#news-7 {color:#db60dd;background-image:linear-gradient(#db60dd,#db60dd);background-image:linear-gradient(rgba(219,96,221,.4),rgba(219,96,221,.4));}
+div.layout-list {padding-top:1.5em;padding-bottom:.25em;}
+div.layout-list section.year {font-size:1.05em;}
+div.layout-list section.year h2 {font-size:2.25em;letter-spacing:-.025em;margin-top:0;margin-bottom:.4em;}
+div.layout-list section.year ul {list-style-type:none;margin:0;padding-left:0;display:block;}
+div.layout-list section.year li {display:-webkit-flex;display:-ms-flexbox;display:flex;letter-spacing:-.011em;line-height:1.75;margin-bottom:1em;}
+div.layout-list section.year li div.date {width:5.25em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}
+body.light div.layout-list section.year li div.date {color:#5e5e5e;}
+body.dark div.layout-list section.year li div.date {color:#b1b1b1;}
+div.layout-list section.year li:last-child {margin-bottom:1.6em;}
+div.layout-single {padding-top:1em;padding-bottom:1em;}
+div.layout-single div#meta {font-size:.85em;line-height:1.3;letter-spacing:.04em;margin-top:.8em;}
+body.light div.layout-single div#meta {color:#5e5e5e;}
+body.dark div.layout-single div#meta {color:#b1b1b1;}
+div.layout-single div#meta a {color:inherit;}
+div.layout-single div#meta span.dash {margin:0 .7em;}
+div.layout-single h1.title {margin-top:.3em;margin-bottom:.6em;margin-left:-.03em;font-size:2.2em;line-height:1.3;font-weight:700;letter-spacing:-.005em;}
+div.layout-single h1.title a {color:inherit;}
+div.layout-video {padding:1.5em 0;text-align:center;}
+div.layout-video h1 {margin-top:0;letter-spacing:-.005em;}
+div.layout-video h1 a {color:inherit;}
+div.layout-video p {font-size:.85em;letter-spacing:-.005em;line-height:1.5;margin:1.25em 1em .5em 1em;}
+body.light div.layout-video p {color:#757575;}
+body.dark div.layout-video p {color:#959595;}
+div.layout-video p a {font-weight:700;letter-spacing:.001em;}
+div.layout-video video {width:100%;max-width:975px;height:auto;}
+div.layout-etc {padding-top:1.5em;padding-bottom:1.5em;}
+div.layout-etc h1 {margin-top:0;text-align:center;letter-spacing:-.005em;}
+div.layout-etc h1 a {color:inherit;}
+@media screen and (max-width:830px) {
+body {padding-bottom:45px!important;overflow-y:scroll;}
+header {padding:1em 1.25em;}
+header nav a#logo img,header nav a#logo svg {width:36px;height:54px;}
+header nav a#logo h1#name {display:none;}
+header nav ul {font-size:1.6em;}
+header nav ul li {margin-left:1.15em;}
+header nav ul li a span.icon {font-size:.9em;}
+header nav ul li a span.text {display:none;}
+header nav ul li a:focus,header nav ul li a:hover {-webkit-transform:scale(1.4);transform:scale(1.4);}
+header nav ul button.dark-mode-toggle {height:1.025em;width:.75em;margin-top:.15em;margin-left:1.15em;}
+footer {padding:1em 1.25em 0 1.25em;}
+footer div.row {display:block;}
+footer div#copyright,footer div#poweredby {width:100%;text-align:left;line-height:2;}
+footer div#y2k {display:none;}
+div.layout-home {font-size:.975em;padding:1.2em 1.2em .4em 1.2em;}
+div.layout-home h2 {font-size:1.5em;letter-spacing:-.014em;line-height:1.4;}
+div.layout-home h3 {font-size:1.185em;letter-spacing:-.017em;line-height:1.55;}
+div.layout-home p {line-height:1.65;letter-spacing:-.012em;}
+div.layout-home img#me {width:90px;height:90px;margin:0 0 .3em .6em;padding:2px;}
+div.layout-list {padding:1em 1em .25em 1em;}
+div.layout-list section.year {font-size:1em;}
+div.layout-list section.year h2 {font-size:2em;}
+div.layout-single {padding:.8em 1.1em;}
+div.layout-single h1.title {margin-top:.4em;font-size:1.8em;}
+div.layout-video {padding:1em 0;}
+div.layout-video h1 {font-size:1.6em;padding:0 .6em;}
+div.layout-video video {width:100%;height:auto;}
+div.layout-etc {padding:1.25em 1.1em;}
+div.layout-etc h1 {font-size:1.6em;padding:0 .6em;}
+}
+code,pre {font-family:Hack,monospace;font-size:.95em;letter-spacing:normal;}
+code {letter-spacing:0;page-break-inside:avoid;}
+:not(pre)>code {padding:.15em .3em;margin:0 .1em;border:1px solid;}
+.title code {background:0 0!important;border:0!important;padding:0!important;color:inherit!important;}
+div.highlight {line-height:1.6;max-width:100%;overflow-x:scroll;margin:1em 0;border:1px solid;}
+div.highlight pre {padding-left:1.5em;margin:1em 0;}
+.chroma .lntable {border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block;}
+.chroma .lntd {vertical-align:top;padding:0;margin:0;border:0;}
+.chroma .ln,.chroma .lnt {-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
+.chroma .gh,.chroma .gi,.chroma .gu {font-weight:700;}
+.chroma .ge,.chroma .kd,.chroma .vc,.chroma .vg,.chroma .vi {font-style:italic;}
+.chroma .gl {text-decoration:underline;}
+/*! Syntax Highlighting (light) - modified from Monokai Light: https://github.com/mlgill/pygments-style-monokailight */
+body.light :not(pre)>code,body.light div.highlight {color:#313131;background-color:#fbfbfb;border-color:#d5d5d5;}
+body.light .chroma .k,body.light .chroma .kc,body.light .chroma .kd,body.light .chroma .kp,body.light .chroma .kr,body.light .chroma .kt,body.light .chroma .no {color:#029cb9;}
+body.light .chroma .na,body.light .chroma .nc,body.light .chroma .nd,body.light .chroma .ne,body.light .chroma .nf,body.light .chroma .nx {color:#70a800;}
+body.light .chroma .kn,body.light .chroma .nt,body.light .chroma .o,body.light .chroma .ow {color:#f92672;}
+body.light .chroma .il,body.light .chroma .l,body.light .chroma .m,body.light .chroma .mb,body.light .chroma .mf,body.light .chroma .mh,body.light .chroma .mi,body.light .chroma .mo,body.light .chroma .se {color:#ae81ff;}
+body.light .chroma .dl,body.light .chroma .ld,body.light .chroma .s,body.light .chroma .s1,body.light .chroma .s2,body.light .chroma .sa,body.light .chroma .sb,body.light .chroma .sc,body.light .chroma .sd,body.light .chroma .sh,body.light .chroma .si,body.light .chroma .sr,body.light .chroma .ss,body.light .chroma .sx {color:#d88200;}
+body.light .chroma .c,body.light .chroma .c1,body.light .chroma .ch,body.light .chroma .cm,body.light .chroma .cp,body.light .chroma .cpf,body.light .chroma .cs {color:#75715e;}
+body.light .chroma .lnt {color:#8a8a8a;}
+/*! Syntax Highlighting (dark) - modified from Dracula: https://github.com/dracula/pygments */
+body.dark :not(pre)>code,body.dark div.highlight {color:#e4e4e4;background-color:#252525;border-color:#535353;}
+body.dark .chroma .k,body.dark .chroma .kc,body.dark .chroma .kd,body.dark .chroma .kp,body.dark .chroma .kr,body.dark .chroma .kt,body.dark .chroma .no {color:#3b9dd2;}
+body.dark .chroma .na,body.dark .chroma .nc,body.dark .chroma .nd,body.dark .chroma .ne,body.dark .chroma .nf,body.dark .chroma .nx {color:#78df55;}
+body.dark .chroma .kn,body.dark .chroma .nt,body.dark .chroma .o,body.dark .chroma .ow {color:#f95757;}
+body.dark .chroma .il,body.dark .chroma .l,body.dark .chroma .m,body.dark .chroma .mb,body.dark .chroma .mf,body.dark .chroma .mh,body.dark .chroma .mi,body.dark .chroma .mo,body.dark .chroma .se {color:#d588fb;}
+body.dark .chroma .dl,body.dark .chroma .ld,body.dark .chroma .s,body.dark .chroma .s1,body.dark .chroma .s2,body.dark .chroma .sa,body.dark .chroma .sb,body.dark .chroma .sc,body.dark .chroma .sd,body.dark .chroma .sh,body.dark .chroma .si,body.dark .chroma .sr,body.dark .chroma .ss,body.dark .chroma .sx {color:#fd992a;}
+body.dark .chroma .c,body.dark .chroma .c1,body.dark .chroma .ch,body.dark .chroma .cm,body.dark .chroma .cp,body.dark .chroma .cpf,body.dark .chroma .cs {color:#929292;}
+body.dark .chroma .lnt {color:#b1b1b1;}
+/*! Magic Waving Hand Emojiโข: https://jrvs.io/wave */
+.wave {display:inline-block;-webkit-animation:wave 5s infinite;animation:wave 5s infinite;-webkit-animation-delay:1s;animation-delay:1s;-webkit-transform-origin:65% 80%;transform-origin:65% 80%;}
+.beat {display:inline-block;-webkit-animation:beat 10s infinite;animation:beat 10s infinite;-webkit-animation-delay:7.5s;animation-delay:7.5s;}
+@-webkit-keyframes wave {
+0% {-webkit-transform:rotate(0);transform:rotate(0);}
+5% {-webkit-transform:rotate(14deg);transform:rotate(14deg);}
+10% {-webkit-transform:rotate(-8deg);transform:rotate(-8deg);}
+15% {-webkit-transform:rotate(14deg);transform:rotate(14deg);}
+20% {-webkit-transform:rotate(-4deg);transform:rotate(-4deg);}
+25% {-webkit-transform:rotate(10deg);transform:rotate(10deg);}
+30% {-webkit-transform:rotate(0);transform:rotate(0);}
+100% {-webkit-transform:rotate(0);transform:rotate(0);}
+}
+@keyframes wave {
+0% {-webkit-transform:rotate(0);transform:rotate(0);}
+5% {-webkit-transform:rotate(14deg);transform:rotate(14deg);}
+10% {-webkit-transform:rotate(-8deg);transform:rotate(-8deg);}
+15% {-webkit-transform:rotate(14deg);transform:rotate(14deg);}
+20% {-webkit-transform:rotate(-4deg);transform:rotate(-4deg);}
+25% {-webkit-transform:rotate(10deg);transform:rotate(10deg);}
+30% {-webkit-transform:rotate(0);transform:rotate(0);}
+100% {-webkit-transform:rotate(0);transform:rotate(0);}
+}
+@-webkit-keyframes beat {
+0% {-webkit-transform:scale(1);transform:scale(1);}
+2% {-webkit-transform:scale(1.25);transform:scale(1.25);}
+4% {-webkit-transform:scale(1);transform:scale(1);}
+6% {-webkit-transform:scale(1.2);transform:scale(1.2);}
+8% {-webkit-transform:scale(1);transform:scale(1);}
+100% {-webkit-transform:scale(1);transform:scale(1);}
+}
+@keyframes beat {
+0% {-webkit-transform:scale(1);transform:scale(1);}
+2% {-webkit-transform:scale(1.25);transform:scale(1.25);}
+4% {-webkit-transform:scale(1);transform:scale(1);}
+6% {-webkit-transform:scale(1.2);transform:scale(1.2);}
+8% {-webkit-transform:scale(1);transform:scale(1);}
+100% {-webkit-transform:scale(1);transform:scale(1);}
+}
\ No newline at end of file
diff --git a/resources/_gen/assets/scss/sass/main.scss_1df4e3baf336036434cc851677538677.json b/resources/_gen/assets/scss/sass/main.scss_1df4e3baf336036434cc851677538677.json
new file mode 100644
index 00000000..d514d9a2
--- /dev/null
+++ b/resources/_gen/assets/scss/sass/main.scss_1df4e3baf336036434cc851677538677.json
@@ -0,0 +1 @@
+{"Target":"css/main.css","MediaType":"text/css","Data":{}}
\ No newline at end of file
diff --git a/resources/_gen/getjson/2e890c7307db9bd7c1b8ba4623788620 b/resources/_gen/getjson/2e890c7307db9bd7c1b8ba4623788620
new file mode 100644
index 00000000..1d453dc8
--- /dev/null
+++ b/resources/_gen/getjson/2e890c7307db9bd7c1b8ba4623788620
@@ -0,0 +1 @@
+{"url":"https:\/\/twitter.com\/sandofsky\/status\/1138686582859239425","author_name":"Ben Sandofsky","author_url":"https:\/\/twitter.com\/sandofsky","html":"\u003Cblockquote class=\"twitter-tweet\" align=\"center\" data-lang=\"en\" data-dnt=\"true\"\u003E\u003Cp lang=\"en\" dir=\"ltr\"\u003EDropbox now uses over half a gig of memory. Letโs peak into its frameworks folder. \u003Ca href=\"https:\/\/t.co\/altzzc2q8L\"\u003Epic.twitter.com\/altzzc2q8L\u003C\/a\u003E\u003C\/p\u003E— Ben Sandofsky (@sandofsky) \u003Ca href=\"https:\/\/twitter.com\/sandofsky\/status\/1138686582859239425?ref_src=twsrc%5Etfw\"\u003EJune 12, 2019\u003C\/a\u003E\u003C\/blockquote\u003E\n","width":550,"height":null,"type":"rich","cache_age":"3153600000","provider_name":"Twitter","provider_url":"https:\/\/twitter.com","version":"1.0"}
\ No newline at end of file
diff --git a/resources/_gen/getjson/4e1bf66626eaa0e0fcd1a0df79533bfc b/resources/_gen/getjson/4e1bf66626eaa0e0fcd1a0df79533bfc
new file mode 100644
index 00000000..97eb9e2c
--- /dev/null
+++ b/resources/_gen/getjson/4e1bf66626eaa0e0fcd1a0df79533bfc
@@ -0,0 +1 @@
+{"url":"https:\/\/twitter.com\/w3Nicolas\/status\/1134529316904153089","author_name":"Nicolas Beauvais","author_url":"https:\/\/twitter.com\/w3Nicolas","html":"\u003Cblockquote class=\"twitter-tweet\" align=\"center\" data-lang=\"en\" data-dnt=\"true\"\u003E\u003Cp lang=\"en\" dir=\"ltr\"\u003EHow \u003Ca href=\"https:\/\/twitter.com\/digitalocean?ref_src=twsrc%5Etfw\"\u003E@DigitalOcean\u003C\/a\u003E just killed our company \u003Ca href=\"https:\/\/twitter.com\/raisupcom?ref_src=twsrc%5Etfw\"\u003E@raisupcom\u003C\/a\u003E. A long thread for a very sad story. \u003Ca href=\"https:\/\/t.co\/uOFCDRoYJ6\"\u003Epic.twitter.com\/uOFCDRoYJ6\u003C\/a\u003E\u003C\/p\u003E— Nicolas Beauvais (@w3Nicolas) \u003Ca href=\"https:\/\/twitter.com\/w3Nicolas\/status\/1134529316904153089?ref_src=twsrc%5Etfw\"\u003EMay 31, 2019\u003C\/a\u003E\u003C\/blockquote\u003E\n","width":550,"height":null,"type":"rich","cache_age":"3153600000","provider_name":"Twitter","provider_url":"https:\/\/twitter.com","version":"1.0"}
\ No newline at end of file
diff --git a/resources/_gen/getjson/70cba42fe195affa37b25c875289f30d b/resources/_gen/getjson/70cba42fe195affa37b25c875289f30d
new file mode 100644
index 00000000..ecf90c62
--- /dev/null
+++ b/resources/_gen/getjson/70cba42fe195affa37b25c875289f30d
@@ -0,0 +1 @@
+{"url":"https:\/\/twitter.com\/natfriedman\/status\/1271253144442253312","author_name":"Nat Friedman","author_url":"https:\/\/twitter.com\/natfriedman","html":"\u003Cblockquote class=\"twitter-tweet\" align=\"center\" data-lang=\"en\" data-dnt=\"true\"\u003E\u003Cp lang=\"en\" dir=\"ltr\"\u003EIt's a great idea and we are already working on this! cc \u003Ca href=\"https:\/\/twitter.com\/billygriffin22?ref_src=twsrc%5Etfw\"\u003E@billygriffin22\u003C\/a\u003E\u003C\/p\u003E— Nat Friedman (@natfriedman) \u003Ca href=\"https:\/\/twitter.com\/natfriedman\/status\/1271253144442253312?ref_src=twsrc%5Etfw\"\u003EJune 12, 2020\u003C\/a\u003E\u003C\/blockquote\u003E\n","width":550,"height":null,"type":"rich","cache_age":"3153600000","provider_name":"Twitter","provider_url":"https:\/\/twitter.com","version":"1.0"}
\ No newline at end of file
diff --git a/resources/_gen/getjson/af0f1260c224e4e6bd99208d305fabed b/resources/_gen/getjson/af0f1260c224e4e6bd99208d305fabed
new file mode 100644
index 00000000..041f1145
--- /dev/null
+++ b/resources/_gen/getjson/af0f1260c224e4e6bd99208d305fabed
@@ -0,0 +1 @@
+{"url":"https:\/\/twitter.com\/archiveis\/status\/1018691421182791680","author_name":"archive.today","author_url":"https:\/\/twitter.com\/archiveis","html":"\u003Cblockquote class=\"twitter-tweet\" align=\"center\" data-lang=\"en\" data-dnt=\"true\"\u003E\u003Cp lang=\"en\" dir=\"ltr\"\u003E"Having to do" is not so direct here.\u003Cbr\u003EAbsence of EDNS and massive mismatch (not only on AS\/Country, but even on the continent level) of where DNS and related HTTP requests come from causes so many troubles so I consider EDNS-less requests from Cloudflare as invalid.\u003C\/p\u003E— archive.today (@archiveis) \u003Ca href=\"https:\/\/twitter.com\/archiveis\/status\/1018691421182791680?ref_src=twsrc%5Etfw\"\u003EJuly 16, 2018\u003C\/a\u003E\u003C\/blockquote\u003E\n","width":550,"height":null,"type":"rich","cache_age":"3153600000","provider_name":"Twitter","provider_url":"https:\/\/twitter.com","version":"1.0"}
\ No newline at end of file
diff --git a/resources/_gen/images/cli/images/screenshot_hu884eb51c701f0bd799d5a50db53cab07_144985_1700x0_resize_lanczos_2.png b/resources/_gen/images/cli/images/screenshot_hu884eb51c701f0bd799d5a50db53cab07_144985_1700x0_resize_lanczos_2.png
new file mode 100644
index 00000000..d9f5be51
Binary files /dev/null and b/resources/_gen/images/cli/images/screenshot_hu884eb51c701f0bd799d5a50db53cab07_144985_1700x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/me_hu1c1a997e30e234e83718deb8b3f52283_130509_320x320_resize_q90_lanczos.jpg b/resources/_gen/images/me_hu1c1a997e30e234e83718deb8b3f52283_130509_320x320_resize_q90_lanczos.jpg
new file mode 100644
index 00000000..cd49dc7c
Binary files /dev/null and b/resources/_gen/images/me_hu1c1a997e30e234e83718deb8b3f52283_130509_320x320_resize_q90_lanczos.jpg differ
diff --git a/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/json-response_hub469bdaa291ab0525038e0db74fdde5e_160200_1880x0_resize_q100_lanczos.jpg b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/json-response_hub469bdaa291ab0525038e0db74fdde5e_160200_1880x0_resize_q100_lanczos.jpg
new file mode 100644
index 00000000..e35be9b4
Binary files /dev/null and b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/json-response_hub469bdaa291ab0525038e0db74fdde5e_160200_1880x0_resize_q100_lanczos.jpg differ
diff --git a/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/reddit-bros_hua9f644106bbaae14c8adfc74fdfd4a4a_76544_1200x0_resize_lanczos_2.png b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/reddit-bros_hua9f644106bbaae14c8adfc74fdfd4a4a_76544_1200x0_resize_lanczos_2.png
new file mode 100644
index 00000000..2e6b90a9
Binary files /dev/null and b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/reddit-bros_hua9f644106bbaae14c8adfc74fdfd4a4a_76544_1200x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/sad-bernie_hu63ac2056313f464b87d4e0a8bebe8d2d_367512_1880x0_resize_q100_lanczos.jpg b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/sad-bernie_hu63ac2056313f464b87d4e0a8bebe8d2d_367512_1880x0_resize_q100_lanczos.jpg
new file mode 100644
index 00000000..c06eb6cc
Binary files /dev/null and b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/sad-bernie_hu63ac2056313f464b87d4e0a8bebe8d2d_367512_1880x0_resize_q100_lanczos.jpg differ
diff --git a/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/votebuilder-audit_hu5ba2f31b6ba6247ebce396f05a9e87cc_65837_1500x0_resize_lanczos_2.png b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/votebuilder-audit_hu5ba2f31b6ba6247ebce396f05a9e87cc_65837_1500x0_resize_lanczos_2.png
new file mode 100644
index 00000000..6dd69c0a
Binary files /dev/null and b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/votebuilder-audit_hu5ba2f31b6ba6247ebce396f05a9e87cc_65837_1500x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/webinar-slide-1_hu859130374e09d454353a31796ad01101_152061_1400x0_resize_lanczos_2.png b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/webinar-slide-1_hu859130374e09d454353a31796ad01101_152061_1400x0_resize_lanczos_2.png
new file mode 100644
index 00000000..5b127297
Binary files /dev/null and b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/webinar-slide-1_hu859130374e09d454353a31796ad01101_152061_1400x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/webinar-slide-2_huc1a9a9712b7f3f01646050bc3e32990f_180153_1400x0_resize_lanczos_2.png b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/webinar-slide-2_huc1a9a9712b7f3f01646050bc3e32990f_180153_1400x0_resize_lanczos_2.png
new file mode 100644
index 00000000..67dec309
Binary files /dev/null and b/resources/_gen/images/notes/bernie-sanders-bern-app-data/images/webinar-slide-2_huc1a9a9712b7f3f01646050bc3e32990f_180153_1400x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/cloudflare-dns-archive-is-blocked/images/archive-is_hua11d2d2ec07a6847ec7fcce6cd41cbda_23079_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/cloudflare-dns-archive-is-blocked/images/archive-is_hua11d2d2ec07a6847ec7fcce6cd41cbda_23079_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..c59655f5
Binary files /dev/null and b/resources/_gen/images/notes/cloudflare-dns-archive-is-blocked/images/archive-is_hua11d2d2ec07a6847ec7fcce6cd41cbda_23079_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/coronadatascraper_hu2fbb85ea95d29fa38f8ccfab02bc2b28_169606_1500x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/coronadatascraper_hu2fbb85ea95d29fa38f8ccfab02bc2b28_169606_1500x0_resize_lanczos_2.png
new file mode 100644
index 00000000..6ba107df
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/coronadatascraper_hu2fbb85ea95d29fa38f8ccfab02bc2b28_169606_1500x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/covid19dashboards_hua1ef134fcb3177bbd44079b1b7c9314b_72379_1160x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/covid19dashboards_hua1ef134fcb3177bbd44079b1b7c9314b_72379_1160x0_resize_lanczos_2.png
new file mode 100644
index 00000000..959e55e2
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/covid19dashboards_hua1ef134fcb3177bbd44079b1b7c9314b_72379_1160x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/covidtracking_hu84463fe29c5dd4f363dd4089a3bbca53_61165_1360x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/covidtracking_hu84463fe29c5dd4f363dd4089a3bbca53_61165_1360x0_resize_lanczos_2.png
new file mode 100644
index 00000000..ca70580f
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/covidtracking_hu84463fe29c5dd4f363dd4089a3bbca53_61165_1360x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/findthemasks_hu87771b7e802ca21b41d17aead8416653_40517_1200x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/findthemasks_hu87771b7e802ca21b41d17aead8416653_40517_1200x0_resize_lanczos_2.png
new file mode 100644
index 00000000..aafceeaf
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/findthemasks_hu87771b7e802ca21b41d17aead8416653_40517_1200x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/hopkins_hua8ba82e183640207b88fbdfc8137ca21_229587_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/hopkins_hua8ba82e183640207b88fbdfc8137ca21_229587_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..c5d8ce74
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/hopkins_hua8ba82e183640207b88fbdfc8137ca21_229587_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/nextstrain_hu1f87d89335f9bef4f2769d4d9147f2ed_302292_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/nextstrain_hu1f87d89335f9bef4f2769d4d9147f2ed_302292_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..536d93a0
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/nextstrain_hu1f87d89335f9bef4f2769d4d9147f2ed_302292_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/scenarios_hub12fca9683e3e4c2ae44e60ae7b1ae6a_153864_1480x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/scenarios_hub12fca9683e3e4c2ae44e60ae7b1ae6a_153864_1480x0_resize_lanczos_2.png
new file mode 100644
index 00000000..649475c6
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/scenarios_hub12fca9683e3e4c2ae44e60ae7b1ae6a_153864_1480x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/stayinghome_hud7b2b84fa07960c40b2af429dad7a6fb_41860_1200x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/stayinghome_hud7b2b84fa07960c40b2af429dad7a6fb_41860_1200x0_resize_lanczos_2.png
new file mode 100644
index 00000000..e2326f41
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/stayinghome_hud7b2b84fa07960c40b2af429dad7a6fb_41860_1200x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/coronavirus-open-source/images/staythefuckhome_hufb89ade2e41c35fc2e5e45abc18b2bef_65919_1200x0_resize_lanczos_2.png b/resources/_gen/images/notes/coronavirus-open-source/images/staythefuckhome_hufb89ade2e41c35fc2e5e45abc18b2bef_65919_1200x0_resize_lanczos_2.png
new file mode 100644
index 00000000..a55b7a49
Binary files /dev/null and b/resources/_gen/images/notes/coronavirus-open-source/images/staythefuckhome_hufb89ade2e41c35fc2e5e45abc18b2bef_65919_1200x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/dropping-dropbox/images/icloud-drive_hucffeb0b5dec81afd512d36023dbdb9d2_412953_1360x0_resize_lanczos_2.png b/resources/_gen/images/notes/dropping-dropbox/images/icloud-drive_hucffeb0b5dec81afd512d36023dbdb9d2_412953_1360x0_resize_lanczos_2.png
new file mode 100644
index 00000000..2f36ea4c
Binary files /dev/null and b/resources/_gen/images/notes/dropping-dropbox/images/icloud-drive_hucffeb0b5dec81afd512d36023dbdb9d2_412953_1360x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/dropping-dropbox/images/icloud-storage_hu6190470dc9a86b56b9177950d5074a3e_7839_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/dropping-dropbox/images/icloud-storage_hu6190470dc9a86b56b9177950d5074a3e_7839_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..950e6ba8
Binary files /dev/null and b/resources/_gen/images/notes/dropping-dropbox/images/icloud-storage_hu6190470dc9a86b56b9177950d5074a3e_7839_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/github-actions/images/actions-flow_hu86d787bdba7096347cadc867bb829a39_25762_1560x0_resize_lanczos_2.png b/resources/_gen/images/notes/github-actions/images/actions-flow_hu86d787bdba7096347cadc867bb829a39_25762_1560x0_resize_lanczos_2.png
new file mode 100644
index 00000000..7a01cd44
Binary files /dev/null and b/resources/_gen/images/notes/github-actions/images/actions-flow_hu86d787bdba7096347cadc867bb829a39_25762_1560x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/github-actions/images/hugo-logs_huab6b476a3dbb3f4e8afb541a9ff390da_148454_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/github-actions/images/hugo-logs_huab6b476a3dbb3f4e8afb541a9ff390da_148454_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..bb83fa56
Binary files /dev/null and b/resources/_gen/images/notes/github-actions/images/hugo-logs_huab6b476a3dbb3f4e8afb541a9ff390da_148454_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/github-actions/images/lighthouse-output_hu93e1cc0738481a02e8d00cef3065143b_74404_1500x0_resize_lanczos_2.png b/resources/_gen/images/notes/github-actions/images/lighthouse-output_hu93e1cc0738481a02e8d00cef3065143b_74404_1500x0_resize_lanczos_2.png
new file mode 100644
index 00000000..11494233
Binary files /dev/null and b/resources/_gen/images/notes/github-actions/images/lighthouse-output_hu93e1cc0738481a02e8d00cef3065143b_74404_1500x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/github-rename-master/images/blm-topic_huddec1dfa2a6f667a923c8f5b90d13754_18496_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/github-rename-master/images/blm-topic_huddec1dfa2a6f667a923c8f5b90d13754_18496_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..99273810
Binary files /dev/null and b/resources/_gen/images/notes/github-rename-master/images/blm-topic_huddec1dfa2a6f667a923c8f5b90d13754_18496_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/github-rename-master/images/github-default_hufc9951b1a94fa347946a41dc358d0e5f_54363_1620x0_resize_lanczos_2.png b/resources/_gen/images/notes/github-rename-master/images/github-default_hufc9951b1a94fa347946a41dc358d0e5f_54363_1620x0_resize_lanczos_2.png
new file mode 100644
index 00000000..01e522d7
Binary files /dev/null and b/resources/_gen/images/notes/github-rename-master/images/github-default_hufc9951b1a94fa347946a41dc358d0e5f_54363_1620x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/github-rename-master/images/netlify-deploy_hu03244433aa421ac1428a56727cfcdb21_55823_1440x0_resize_lanczos_2.png b/resources/_gen/images/notes/github-rename-master/images/netlify-deploy_hu03244433aa421ac1428a56727cfcdb21_55823_1440x0_resize_lanczos_2.png
new file mode 100644
index 00000000..15f42343
Binary files /dev/null and b/resources/_gen/images/notes/github-rename-master/images/netlify-deploy_hu03244433aa421ac1428a56727cfcdb21_55823_1440x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step1_hu6dd5ef6be7c68cc3246022ba633e9be8_12476_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step1_hu6dd5ef6be7c68cc3246022ba633e9be8_12476_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..fa6b04e7
Binary files /dev/null and b/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step1_hu6dd5ef6be7c68cc3246022ba633e9be8_12476_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step2_hu69cf7cf8b23292f5bde1d55d93ae7b3d_23172_840x0_resize_lanczos_2.png b/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step2_hu69cf7cf8b23292f5bde1d55d93ae7b3d_23172_840x0_resize_lanczos_2.png
new file mode 100644
index 00000000..8b807ce0
Binary files /dev/null and b/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step2_hu69cf7cf8b23292f5bde1d55d93ae7b3d_23172_840x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step7-1_hu239c3f4c170096ad656562bfea80cfdd_9357_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step7-1_hu239c3f4c170096ad656562bfea80cfdd_9357_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..7762ce0b
Binary files /dev/null and b/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step7-1_hu239c3f4c170096ad656562bfea80cfdd_9357_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step7-2_hu4e8aaa300c33a906147c688f0789fcf9_26792_1400x0_resize_lanczos_2.png b/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step7-2_hu4e8aaa300c33a906147c688f0789fcf9_26792_1400x0_resize_lanczos_2.png
new file mode 100644
index 00000000..ed9a8fb9
Binary files /dev/null and b/resources/_gen/images/notes/how-to-pull-request-fork-github/images/step7-2_hu4e8aaa300c33a906147c688f0789fcf9_26792_1400x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/how-to-shrink-linux-virtual-disk-vmware/images/screen-shot-2018-12-07-at-1-58-42-pm_hu32fc75f259c0ce25890df820e2025c69_188743_1360x0_resize_lanczos_2.png b/resources/_gen/images/notes/how-to-shrink-linux-virtual-disk-vmware/images/screen-shot-2018-12-07-at-1-58-42-pm_hu32fc75f259c0ce25890df820e2025c69_188743_1360x0_resize_lanczos_2.png
new file mode 100644
index 00000000..6bde4e98
Binary files /dev/null and b/resources/_gen/images/notes/how-to-shrink-linux-virtual-disk-vmware/images/screen-shot-2018-12-07-at-1-58-42-pm_hu32fc75f259c0ce25890df820e2025c69_188743_1360x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/how-to-shrink-linux-virtual-disk-vmware/images/screen-shot-2018-12-07-at-2-04-04-pm_hu5d915b23a06dd49d1de18acc2178c83c_57807_1240x0_resize_lanczos_2.png b/resources/_gen/images/notes/how-to-shrink-linux-virtual-disk-vmware/images/screen-shot-2018-12-07-at-2-04-04-pm_hu5d915b23a06dd49d1de18acc2178c83c_57807_1240x0_resize_lanczos_2.png
new file mode 100644
index 00000000..cca5788a
Binary files /dev/null and b/resources/_gen/images/notes/how-to-shrink-linux-virtual-disk-vmware/images/screen-shot-2018-12-07-at-2-04-04-pm_hu5d915b23a06dd49d1de18acc2178c83c_57807_1240x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/millenial-with-hillary-clinton/images/24707394571_0818d4ab83_o-1-copy_hu50832c2267672251e23dde5d79460be6_319355_1880x0_resize_q100_lanczos.jpg b/resources/_gen/images/notes/millenial-with-hillary-clinton/images/24707394571_0818d4ab83_o-1-copy_hu50832c2267672251e23dde5d79460be6_319355_1880x0_resize_q100_lanczos.jpg
new file mode 100644
index 00000000..ad9e735c
Binary files /dev/null and b/resources/_gen/images/notes/millenial-with-hillary-clinton/images/24707394571_0818d4ab83_o-1-copy_hu50832c2267672251e23dde5d79460be6_319355_1880x0_resize_q100_lanczos.jpg differ
diff --git a/resources/_gen/images/notes/my-first-code/images/jbb-screen1_hu0dedf50281d0d0cd8318acccf48b1c7a_271891_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/my-first-code/images/jbb-screen1_hu0dedf50281d0d0cd8318acccf48b1c7a_271891_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..4325fca6
Binary files /dev/null and b/resources/_gen/images/notes/my-first-code/images/jbb-screen1_hu0dedf50281d0d0cd8318acccf48b1c7a_271891_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/my-first-code/images/jbb-screen3_hu7b45acb2c782da650150d33536db0d60_165605_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/my-first-code/images/jbb-screen3_hu7b45acb2c782da650150d33536db0d60_165605_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..bad6e049
Binary files /dev/null and b/resources/_gen/images/notes/my-first-code/images/jbb-screen3_hu7b45acb2c782da650150d33536db0d60_165605_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/my-first-code/images/jbb-screen4_hu7b51602a35ce5e1330c3677d90128b5d_133716_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/my-first-code/images/jbb-screen4_hu7b51602a35ce5e1330c3677d90128b5d_133716_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..25366572
Binary files /dev/null and b/resources/_gen/images/notes/my-first-code/images/jbb-screen4_hu7b51602a35ce5e1330c3677d90128b5d_133716_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/netlify-analytics-review/images/overview_hu708357a4f59434b29bcf8ed0d81f41c8_75829_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/netlify-analytics-review/images/overview_hu708357a4f59434b29bcf8ed0d81f41c8_75829_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..c192a2b8
Binary files /dev/null and b/resources/_gen/images/notes/netlify-analytics-review/images/overview_hu708357a4f59434b29bcf8ed0d81f41c8_75829_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/netlify-analytics-review/images/pages_hu036adf0fc90e576ce1ee81366dafcc97_72762_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/netlify-analytics-review/images/pages_hu036adf0fc90e576ce1ee81366dafcc97_72762_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..7eb96055
Binary files /dev/null and b/resources/_gen/images/notes/netlify-analytics-review/images/pages_hu036adf0fc90e576ce1ee81366dafcc97_72762_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/netlify-analytics-review/images/pageviews-2_hu7b14881479fb9569430d466a1f5f36f9_48429_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/netlify-analytics-review/images/pageviews-2_hu7b14881479fb9569430d466a1f5f36f9_48429_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..71fe62c0
Binary files /dev/null and b/resources/_gen/images/notes/netlify-analytics-review/images/pageviews-2_hu7b14881479fb9569430d466a1f5f36f9_48429_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/netlify-analytics-review/images/sources-bandwidth_hu431f97da3ebaa6a07e47dc4fa639a3a2_71898_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/netlify-analytics-review/images/sources-bandwidth_hu431f97da3ebaa6a07e47dc4fa639a3a2_71898_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..331c2f20
Binary files /dev/null and b/resources/_gen/images/notes/netlify-analytics-review/images/sources-bandwidth_hu431f97da3ebaa6a07e47dc4fa639a3a2_71898_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/no-homo-still-raps-motto/images/1_b41ztscbaxqi60snwsswfw_hu842522723fa7761350b990210de9ce57_567153_1880x0_resize_q100_lanczos.jpg b/resources/_gen/images/notes/no-homo-still-raps-motto/images/1_b41ztscbaxqi60snwsswfw_hu842522723fa7761350b990210de9ce57_567153_1880x0_resize_q100_lanczos.jpg
new file mode 100644
index 00000000..491dbfb4
Binary files /dev/null and b/resources/_gen/images/notes/no-homo-still-raps-motto/images/1_b41ztscbaxqi60snwsswfw_hu842522723fa7761350b990210de9ce57_567153_1880x0_resize_q100_lanczos.jpg differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/bennet_hu7d712466cd551d6eace4c827f5e9122e_928122_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/bennet_hu7d712466cd551d6eace4c827f5e9122e_928122_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..7c967535
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/bennet_hu7d712466cd551d6eace4c827f5e9122e_928122_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/biden_hu075b0af2e5f1544ff3f5bba2e0f0cc44_513162_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/biden_hu075b0af2e5f1544ff3f5bba2e0f0cc44_513162_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..65916ea7
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/biden_hu075b0af2e5f1544ff3f5bba2e0f0cc44_513162_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/booker_hu39c9e3e77b330b36aa610305dcdfc220_452511_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/booker_hu39c9e3e77b330b36aa610305dcdfc220_452511_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..025e015a
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/booker_hu39c9e3e77b330b36aa610305dcdfc220_452511_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/bullock_hub2e7a0e4d5a06639f78a7e3b3552c4a8_418007_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/bullock_hub2e7a0e4d5a06639f78a7e3b3552c4a8_418007_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..6d34fe29
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/bullock_hub2e7a0e4d5a06639f78a7e3b3552c4a8_418007_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/buttigeg_hua68b45524dde995661ebc679f9d67d82_241654_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/buttigeg_hua68b45524dde995661ebc679f9d67d82_241654_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..a9ccb1fc
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/buttigeg_hua68b45524dde995661ebc679f9d67d82_241654_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/castro_hube272cf23c8eea97847966c57e7399ea_25598_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/castro_hube272cf23c8eea97847966c57e7399ea_25598_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..08d378ad
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/castro_hube272cf23c8eea97847966c57e7399ea_25598_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/delaney_hua005decb9a50e2c028bcfa2be82c7e6c_412773_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/delaney_hua005decb9a50e2c028bcfa2be82c7e6c_412773_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..14fff8c2
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/delaney_hua005decb9a50e2c028bcfa2be82c7e6c_412773_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/gabbard_hu73388fb346d74d00c8d6a17edd864e3c_47526_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/gabbard_hu73388fb346d74d00c8d6a17edd864e3c_47526_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..7f47cc87
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/gabbard_hu73388fb346d74d00c8d6a17edd864e3c_47526_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/klobuchar_hu3e3eabdbafccea51a25fcaffb87da540_49344_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/klobuchar_hu3e3eabdbafccea51a25fcaffb87da540_49344_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..3574fdb2
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/klobuchar_hu3e3eabdbafccea51a25fcaffb87da540_49344_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/messam_hu3faa877f864eee631d8e4ca3559ef653_286187_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/messam_hu3faa877f864eee631d8e4ca3559ef653_286187_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..56d5cbb0
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/messam_hu3faa877f864eee631d8e4ca3559ef653_286187_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/obama-laughing_hudf1816d28aaf08c38d8234b2fe96c2d0_551293_1880x0_resize_q100_lanczos.jpg b/resources/_gen/images/notes/presidential-candidates-404-pages/images/obama-laughing_hudf1816d28aaf08c38d8234b2fe96c2d0_551293_1880x0_resize_q100_lanczos.jpg
new file mode 100644
index 00000000..05e9e689
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/obama-laughing_hudf1816d28aaf08c38d8234b2fe96c2d0_551293_1880x0_resize_q100_lanczos.jpg differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/sestak_hud37b4bcf324b2d455f82e19531220f70_26584_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/sestak_hud37b4bcf324b2d455f82e19531220f70_26584_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..b71f3dd8
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/sestak_hud37b4bcf324b2d455f82e19531220f70_26584_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/trump_huc3b7820e7b871cbdb7a731dcf2f8b20b_371668_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/trump_huc3b7820e7b871cbdb7a731dcf2f8b20b_371668_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..8e48a3e5
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/trump_huc3b7820e7b871cbdb7a731dcf2f8b20b_371668_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/warren_hubd4189615f186c8d511b33e030602b11_329960_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/warren_hubd4189615f186c8d511b33e030602b11_329960_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..278018ec
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/warren_hubd4189615f186c8d511b33e030602b11_329960_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/williamson_hu893eefea01d387abf428b1cdb35813d3_26529_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/williamson_hu893eefea01d387abf428b1cdb35813d3_26529_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..7b9acd5f
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/williamson_hu893eefea01d387abf428b1cdb35813d3_26529_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/presidential-candidates-404-pages/images/yang_huc734fb860c6a21f469e215c6fdf439bd_77820_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/presidential-candidates-404-pages/images/yang_huc734fb860c6a21f469e215c6fdf439bd_77820_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..fc5ef23d
Binary files /dev/null and b/resources/_gen/images/notes/presidential-candidates-404-pages/images/yang_huc734fb860c6a21f469e215c6fdf439bd_77820_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/security-headers-cloudflare-workers/images/cf-workers_hubb501b67a5ee5233785a397da352ccbd_63869_1300x0_resize_lanczos_2.png b/resources/_gen/images/notes/security-headers-cloudflare-workers/images/cf-workers_hubb501b67a5ee5233785a397da352ccbd_63869_1300x0_resize_lanczos_2.png
new file mode 100644
index 00000000..2e5f40e7
Binary files /dev/null and b/resources/_gen/images/notes/security-headers-cloudflare-workers/images/cf-workers_hubb501b67a5ee5233785a397da352ccbd_63869_1300x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/security-headers-cloudflare-workers/images/security-headers_hua9859c5490453e4d6f31b5b00f46680f_34598_1400x0_resize_lanczos_2.png b/resources/_gen/images/notes/security-headers-cloudflare-workers/images/security-headers_hua9859c5490453e4d6f31b5b00f46680f_34598_1400x0_resize_lanczos_2.png
new file mode 100644
index 00000000..2a0d90de
Binary files /dev/null and b/resources/_gen/images/notes/security-headers-cloudflare-workers/images/security-headers_hua9859c5490453e4d6f31b5b00f46680f_34598_1400x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/billboard3_hu92cfd2d51be6227bb9252ee5efcba431_323538_900x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/billboard3_hu92cfd2d51be6227bb9252ee5efcba431_323538_900x0_resize_lanczos_2.png
new file mode 100644
index 00000000..bdffd62a
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/billboard3_hu92cfd2d51be6227bb9252ee5efcba431_323538_900x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/buffalo_hu67da2466acccedb61b0055694c32de3f_25901_1160x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/buffalo_hu67da2466acccedb61b0055694c32de3f_25901_1160x0_resize_lanczos_2.png
new file mode 100644
index 00000000..8795573a
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/buffalo_hu67da2466acccedb61b0055694c32de3f_25901_1160x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/eth_hue982de028f03cf9067d09873f5be0bbf_51222_1600x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/eth_hue982de028f03cf9067d09873f5be0bbf_51222_1600x0_resize_lanczos_2.png
new file mode 100644
index 00000000..b0dcb256
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/eth_hue982de028f03cf9067d09873f5be0bbf_51222_1600x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/hp_hu4003bca496de063d09d60b3f0aa36024_98609_1400x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/hp_hu4003bca496de063d09d60b3f0aa36024_98609_1400x0_resize_lanczos_2.png
new file mode 100644
index 00000000..e82c1f09
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/hp_hu4003bca496de063d09d60b3f0aa36024_98609_1400x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/jenkins_huf1b8d6ea21e7ffd3a5e01c235deb3fdc_57456_1400x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/jenkins_huf1b8d6ea21e7ffd3a5e01c235deb3fdc_57456_1400x0_resize_lanczos_2.png
new file mode 100644
index 00000000..861dcc76
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/jenkins_huf1b8d6ea21e7ffd3a5e01c235deb3fdc_57456_1400x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/mongo-express_hu8ff8a694d3fd206342482031c52c1003_82833_1400x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/mongo-express_hu8ff8a694d3fd206342482031c52c1003_82833_1400x0_resize_lanczos_2.png
new file mode 100644
index 00000000..7240a35d
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/mongo-express_hu8ff8a694d3fd206342482031c52c1003_82833_1400x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/octoprint_hu1ea027777db4bfb0dc3cdd68df65630d_812510_1400x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/octoprint_hu1ea027777db4bfb0dc3cdd68df65630d_812510_1400x0_resize_lanczos_2.png
new file mode 100644
index 00000000..ab04fc48
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/octoprint_hu1ea027777db4bfb0dc3cdd68df65630d_812510_1400x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/owa2007_hu10098b8980c1324bc301dfc278b98095_121437_900x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/owa2007_hu10098b8980c1324bc301dfc278b98095_121437_900x0_resize_lanczos_2.png
new file mode 100644
index 00000000..bdfa502e
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/owa2007_hu10098b8980c1324bc301dfc278b98095_121437_900x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/owa2010_hu7890bc6c5480ba823724c2810048becb_77836_900x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/owa2010_hu7890bc6c5480ba823724c2810048becb_77836_900x0_resize_lanczos_2.png
new file mode 100644
index 00000000..075b14ad
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/owa2010_hu7890bc6c5480ba823724c2810048becb_77836_900x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/owa2013_hud5cbf2be9512b098bda15aa9bba83e86_49165_1160x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/owa2013_hud5cbf2be9512b098bda15aa9bba83e86_49165_1160x0_resize_lanczos_2.png
new file mode 100644
index 00000000..c88fe90a
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/owa2013_hud5cbf2be9512b098bda15aa9bba83e86_49165_1160x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/plate-reader_hu46644edaffe4fc45534762a93ad18bd3_128199_1360x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/plate-reader_hu46644edaffe4fc45534762a93ad18bd3_128199_1360x0_resize_lanczos_2.png
new file mode 100644
index 00000000..95309903
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/plate-reader_hu46644edaffe4fc45534762a93ad18bd3_128199_1360x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/plexpy_hu202a233a1e7b90fb9c2ea48717f10cf8_275091_1120x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/plexpy_hu202a233a1e7b90fb9c2ea48717f10cf8_275091_1120x0_resize_lanczos_2.png
new file mode 100644
index 00000000..467f6536
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/plexpy_hu202a233a1e7b90fb9c2ea48717f10cf8_275091_1120x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/power-gaugetech_hu9d468bdd81efcea255e6de82312ddbc1_62877_1000x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/power-gaugetech_hu9d468bdd81efcea255e6de82312ddbc1_62877_1000x0_resize_lanczos_2.png
new file mode 100644
index 00000000..70929551
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/power-gaugetech_hu9d468bdd81efcea255e6de82312ddbc1_62877_1000x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/refrigeration_huec465d02c1975b51cab78afd0e50ea22_127621_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/refrigeration_huec465d02c1975b51cab78afd0e50ea22_127621_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..1c968ca7
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/refrigeration_huec465d02c1975b51cab78afd0e50ea22_127621_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/shodan_hu7af9238b15078a897f35a249deba59c0_273541_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/shodan_hu7af9238b15078a897f35a249deba59c0_273541_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..6af00a6a
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/shodan_hu7af9238b15078a897f35a249deba59c0_273541_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/tesla_hue74c5acc0de203b128b3b40f83dcc8e4_115556_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/tesla_hue74c5acc0de203b128b3b40f83dcc8e4_115556_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..34b21d5e
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/tesla_hue74c5acc0de203b128b3b40f83dcc8e4_115556_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/shodan-search-queries/images/weavescope_hu10236e4520156d61e81bc1185f36031b_154502_1880x0_resize_lanczos_2.png b/resources/_gen/images/notes/shodan-search-queries/images/weavescope_hu10236e4520156d61e81bc1185f36031b_154502_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..6f9693f8
Binary files /dev/null and b/resources/_gen/images/notes/shodan-search-queries/images/weavescope_hu10236e4520156d61e81bc1185f36031b_154502_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/notes/y2k-land/images/windows-me_hu20f6b002ddd94b4c4f8b7862d7dab954_45522_640x0_resize_lanczos_2.png b/resources/_gen/images/notes/y2k-land/images/windows-me_hu20f6b002ddd94b4c4f8b7862d7dab954_45522_640x0_resize_lanczos_2.png
new file mode 100644
index 00000000..86f68d45
Binary files /dev/null and b/resources/_gen/images/notes/y2k-land/images/windows-me_hu20f6b002ddd94b4c4f8b7862d7dab954_45522_640x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2002_02_hucba0dfb2a6cd2eac228f6324fd3c2c00_88373_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2002_02_hucba0dfb2a6cd2eac228f6324fd3c2c00_88373_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..970c380f
Binary files /dev/null and b/resources/_gen/images/previously/images/2002_02_hucba0dfb2a6cd2eac228f6324fd3c2c00_88373_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2002_10_huade0f0a44f90e018830dc158a47690c1_41470_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2002_10_huade0f0a44f90e018830dc158a47690c1_41470_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..e3d41620
Binary files /dev/null and b/resources/_gen/images/previously/images/2002_10_huade0f0a44f90e018830dc158a47690c1_41470_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2003_08_hu35babe9345f147b5925011380e0b4e13_96958_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2003_08_hu35babe9345f147b5925011380e0b4e13_96958_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..7094d3e6
Binary files /dev/null and b/resources/_gen/images/previously/images/2003_08_hu35babe9345f147b5925011380e0b4e13_96958_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2004_11_hu88d55da84a60111e774bfa25184b2cec_308001_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2004_11_hu88d55da84a60111e774bfa25184b2cec_308001_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..63c9941f
Binary files /dev/null and b/resources/_gen/images/previously/images/2004_11_hu88d55da84a60111e774bfa25184b2cec_308001_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2006_04_hu56b3d1a05520156732d63e0c369f80b3_264892_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2006_04_hu56b3d1a05520156732d63e0c369f80b3_264892_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..0c6caf19
Binary files /dev/null and b/resources/_gen/images/previously/images/2006_04_hu56b3d1a05520156732d63e0c369f80b3_264892_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2006_05_hu0074da065c686c283cddf6b8c78b7200_169698_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2006_05_hu0074da065c686c283cddf6b8c78b7200_169698_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..e8dee4b2
Binary files /dev/null and b/resources/_gen/images/previously/images/2006_05_hu0074da065c686c283cddf6b8c78b7200_169698_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2007_01_hu6aff0a0b84476e3e8d9da8f463d1914d_250052_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2007_01_hu6aff0a0b84476e3e8d9da8f463d1914d_250052_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..0657c5f9
Binary files /dev/null and b/resources/_gen/images/previously/images/2007_01_hu6aff0a0b84476e3e8d9da8f463d1914d_250052_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2007_04_hu53af56c990bf9f9cabf2d56f61d383a3_117697_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2007_04_hu53af56c990bf9f9cabf2d56f61d383a3_117697_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..f34215f2
Binary files /dev/null and b/resources/_gen/images/previously/images/2007_04_hu53af56c990bf9f9cabf2d56f61d383a3_117697_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2007_05_hu0a6df87ebe320f35ab627fefbef74a79_120664_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2007_05_hu0a6df87ebe320f35ab627fefbef74a79_120664_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..e6b286d9
Binary files /dev/null and b/resources/_gen/images/previously/images/2007_05_hu0a6df87ebe320f35ab627fefbef74a79_120664_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2009_07_hu6125f95b28237fb50046cbeb460ee7ac_293370_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2009_07_hu6125f95b28237fb50046cbeb460ee7ac_293370_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..0c92ac34
Binary files /dev/null and b/resources/_gen/images/previously/images/2009_07_hu6125f95b28237fb50046cbeb460ee7ac_293370_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2012_09_huf9f9004b2da609da83bb4fb0acf342d6_637335_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2012_09_huf9f9004b2da609da83bb4fb0acf342d6_637335_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..5156bce5
Binary files /dev/null and b/resources/_gen/images/previously/images/2012_09_huf9f9004b2da609da83bb4fb0acf342d6_637335_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/previously/images/2018_04_hude9e24570caa2ff4c9d6bba336904a72_127335_1880x0_resize_lanczos_2.png b/resources/_gen/images/previously/images/2018_04_hude9e24570caa2ff4c9d6bba336904a72_127335_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..84c1d371
Binary files /dev/null and b/resources/_gen/images/previously/images/2018_04_hude9e24570caa2ff4c9d6bba336904a72_127335_1880x0_resize_lanczos_2.png differ
diff --git a/resources/_gen/images/uses/images/desktop_huff3d862f18bedabf6af240f0ff0d98a8_6003507_1880x0_resize_lanczos_2.png b/resources/_gen/images/uses/images/desktop_huff3d862f18bedabf6af240f0ff0d98a8_6003507_1880x0_resize_lanczos_2.png
new file mode 100644
index 00000000..cbe14aec
Binary files /dev/null and b/resources/_gen/images/uses/images/desktop_huff3d862f18bedabf6af240f0ff0d98a8_6003507_1880x0_resize_lanczos_2.png differ