body.palenight{--text-color:#a6accd;--text-color-dark:#676e95;--link-color:#82aaff;--link-accent-color:#ffcb6b;--background-color:#292d3e;--blockquote-color:#ab47bc;--hr-color:#676e95;--top-bar-color:#676e95;--code-text-default:#82aaff;--code-text-shadow:#white;--code-background-color:#202331;--code-inline-background-color:#202331;--code-comments:#676e95;--code-token-punctuation:#89ddff;--code-symbol:#c792ea;--code-constant:#82aaff;--code-property:#82aaff;--code-diff-deleted:#905;--code-diff-deleted-background-color:rgba(255,0,0,.1);--code-diff-added:#690;--code-diff-added-background-color:rgba(0,255,128,.1);--code-string:#c3e88d;--code-string-background:#202331;--code-keyword:#c792ea;--code-class-name-definition:#ffcb6b;--code-type-declaration:#f78c6c;--code-function:#f78c6c;--code-variable:#eff;--code-line-numbers-background:hsla(24,20%,50%,.08);--code-line-highlight-background-color:hsla(24,20%,50%,.4);--code-line-highlight-color:#f5f2f0;--code-line-highlight-shadow:#fff;--code-linkable-line-numbers-background-color:hsla(0,0%,50%,.2);--code-line-numbers-border:#999}body.light{--text-color:#546e7a;--text-color-dark:#94a7b0;--link-color:#6182b8;--link-accent-color:#dd4a68;--background-color:#fafafa;--blockquote-color:#00bcd4;--hr-color:#94a7b0;--top-bar-color:#546e7a;--code-text-default:#black;--code-text-shadow:#white;--code-background-color:#b3d4fc;--code-inline-background-color:#f5f2f0;--code-comments:#708090;--code-token-punctuation:#999;--code-symbol:#07a;--code-constant:#000;--code-property:block;--code-diff-deleted:#905;--code-diff-deleted-background-color:rgba(255,0,0,.1);--code-diff-added:#690;--code-diff-added-background-color:rgba(0,255,128,.1);--code-string:#9a6e3a;--code-string-background:hsla(0,0%,100%,.5);--code-keyword:#07a;--code-class-name-definition:#dd4a68;--code-type-declaration:#dd4a68;--code-function:#dd4a68;--code-variable:#905;--code-line-numbers-background:hsla(24,20%,50%,.08);--code-line-highlight-background-color:hsla(24,20%,50%,.4);--code-line-highlight-color:#f5f2f0;--code-line-highlight-shadow:#fff;--code-linkable-line-numbers-background-color:hsla(0,0%,50%,.2);--code-line-numbers-border:#999}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-color);color:var(--text-color);font-family:Helvetica Neue,Arial,serif;font-size:16px;line-height:1.6;padding-top:10px;text-align:center;transition:all .5s ease}blockquote{border-left:5px solid var(--blockquote-color);padding-left:10px}cite{display:block;white-space:pre-line}.articleDate{color:var(--text-color-dark)}hr{border-color:var(--hr-color)}#content{font-size:1em;margin:0 auto;max-width:40em;padding:0 1em;text-align:left;width:100%}code{font-family:Consolas,monaco,monospace;font-size:1em}@media (max-width:500px){#content{font-size:1em;margin:0 auto;max-width:40em;padding:0 1em;text-align:left;width:100%}}a{text-decoration:none}a:active,a:hover,a:link,a:visited{color:var(--link-color)}a[href^="mailto:"]{color:var(--link-accent-color)}h1,h2,h3,h4,h5,h6{color:var(--link-color);margin-bottom:0;padding-bottom:0}h1{font-size:2em;line-height:1.1}pre::-webkit-scrollbar{height:10px;width:10px}pre::-webkit-scrollbar-thumb{background:var(--text-color-dark)}div pre::-webkit-scrollbar-track{background:var(--code-background-color)}ul.navigation{list-style-type:square}.navigation li,ul.navigation{display:inline;margin:0;padding:0}ul{list-style:square;padding:0 0 0 20px}ul.table-of-contents{padding-left:40px}li{margin:0}code[class*=language-],pre[class*=language-]{background:none;color:var(--code-text-default);font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;text-shadow:0 1px var(--code-text-shadow);white-space:pre;word-break:normal;word-spacing:normal;word-wrap:normal;-webkit-hyphens:none;hyphens:none;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{background:var(--code-background-color);text-shadow:none}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{background:var(--code-background-color);text-shadow:none}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{margin:.5em 0;overflow:auto;padding:1em}:not(pre)>code[class*=language-],pre[class*=language-]{background:var(--code-inline-background-color)}:not(pre)>code[class*=language-]{border-radius:.3em;padding:.1em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:var(--code-comments)}.token.punctuation{color:var(--code-token-punctuation)}.token.namespace{opacity:.7}.token.property{color:var(--code-property)}.token.boolean,.token.number,.token.symbol,.token.tag{color:var(--code-symbol)}.token.constant{color:var(--code-constant)}.token.deleted{color:var(--code-diff-deleted)}.token.attr-name,.token.builtin,.token.char,.token.selector,.token.string{color:var(--code-string)}.token.inserted{color:var(--code-diff-inserted)}.token.entity,.token.operator{color:var(--code-token-punctuation)}.language-css .token.string,.style,.token.url{background:var(--code-string-background);color:var(--code-string)}.token.atrule,.token.attr-value,.token.keyword{color:var(--code-keyword)}.token.function{code:var(--code-function)}.token.class-name{color:var(--code-type-declaration)}.token.class-name-definition{color:var(--code-class-name-definition)}.token.type-declaration{color:var(--code-type-declaration)}.token.important,.token.regex,.token.variable{color:var(--code-variable)}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}pre[data-line]{padding:1em 0 1em 3em;position:relative}.line-highlight{background:var(--code-line-numbers-background);left:0;line-height:inherit;margin-top:1em;padding-bottom:inherit;padding-left:0;padding-right:0;padding-top:inherit;pointer-events:none;position:absolute;right:0;white-space:pre}@media print{.line-highlight{-webkit-print-color-adjust:exact;color-adjust:exact}}.line-highlight:before,.line-highlight[data-end]:after{background-color:var(--code-line-highlight-background-color);border-radius:999px;box-shadow:0 1px var(--code-line-highlight-shadow);color:var(--code-line-highlight-color);content:attr(data-start);font:700 65%/1.5 sans-serif;left:.6em;min-width:1em;padding:0 .5em;position:absolute;text-align:center;text-shadow:none;top:.4em;vertical-align:.3em}.line-highlight[data-end]:after{bottom:.4em;content:attr(data-end);top:auto}.line-numbers .line-highlight:after,.line-numbers .line-highlight:before{content:none}pre[id].linkable-line-numbers span.line-numbers-rows{pointer-events:all}pre[id].linkable-line-numbers span.line-numbers-rows>span:before{cursor:pointer}pre[id].linkable-line-numbers span.line-numbers-rows>span:hover:before{background-color:var(--code-linkable-line-numbers-background-color)}pre[class*=language-].line-numbers{counter-reset:linenumber;padding-left:3.8em;position:relative}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{border-right:1px solid var(--code-line-numbers-border);font-size:100%;left:-3.8em;letter-spacing:-1px;pointer-events:none;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:3em}.line-numbers-rows>span{counter-increment:linenumber;display:block}.line-numbers-rows>span:before{color:var(--code-line-numbers-border);content:counter(linenumber);display:block;padding-right:.8em;text-align:right}pre.diff-highlight>code .token.deleted:not(.prefix),pre>code.diff-highlight .token.deleted:not(.prefix){background-color:var(--code-diff-deleted-background-color);color:inherit;display:block}pre.diff-highlight>code .token.inserted:not(.prefix),pre>code.diff-highlight .token.inserted:not(.prefix){background-color:var(--code-diff-added-background-color);color:inherit;display:block}a[href^=http]:not([href*="//shawnmc.cool"]):before{content:"🌐 "}a[href^=http][href*=youtube]:before{content:"▶️ "}a[href^=http][href*=github]:before{content:"🗄 ";transform:scaleX(.5)}