#__codeblog,#__codeblog-content,a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-family:inherit;vertical-align:baseline}html{scroll-behavior:smooth}:root{--monospace-font:"Inconsolata",monospace;--body-font:"Source Serif Pro",sans-serif;--headings-font:"Work Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--offset-small:4px;--offset-snormal:8px;--offset-normal:14px;--offset-xnormal:12px;--offset-medium:20px;--offset-big:38px;--offset-large:64px;--color-dark:#1f1f1f;--color-black:#0d090d;--color-white:#fff;--color-dark-gray:#535353;--color-medium-gray:#5c5c5c;--color-light-gray:#e9e9e9;--color-primary:#e03737;--color-primary-muted:rgba(224,55,55,0.45);--color-error:#c70e0e;--color-muted:#979797;--border-radius:4px;--page-background:var(--color-white);--page-background-offset:var(--color-light-gray);--text-color:var(--color-dark);--text-dark-color:var(--color-black);--link-color:var(--text-color);--blog-width:100%;--blog-post-width:686px}code{font-family:Inconsolata,monospace;font-family:var(--monospace-font)}*{-webkit-box-sizing:border-box;box-sizing:border-box}body{color:#1f1f1f;color:var(--text-color);background-color:#fff;background-color:var(--page-background);-webkit-transition:background-color .1s linear;-o-transition:background-color .1s linear;transition:background-color .1s linear;-webkit-transition-property:background-color,color;-o-transition-property:background-color,color;transition-property:background-color,color;font-family:Work Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-family:var(--headings-font);font-size:21px}h1,h2,h3,h4,h5,h6{margin-top:38px;margin-top:var(--offset-big);line-height:1.35;font-weight:600;font-family:Work Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-family:var(--headings-font);position:relative;margin-bottom:0}.BlogPost-Title,h1,h2,h3,h4,h5,h6,strong{color:#0d090d;color:var(--text-dark-color)}a,a:visited{color:#fff;color:#1f1f1f;color:var(--link-color)}.Blog{width:100%;margin:0}.BlogPost{width:100%;margin-top:64px;margin-top:var(--offset-large);margin-bottom:64px;margin-bottom:var(--offset-large);color:#1f1f1f;color:var(--text-color);text-rendering:optimizeLegibility;line-height:1.6;font-family:"Source Serif Pro",sans-serif;font-family:var(--body-font)}.BlogPost-Body:first-child{margin-top:0}.BlogPost-Body{padding-left:calc((100vw - 686px)/2);padding-left:calc((100vw - var(--blog-post-width))/2);padding-right:calc((100vw - 686px)/2);padding-right:calc((100vw - var(--blog-post-width))/2);width:100%;word-wrap:break-word}.BlogHeader{--page-background:#0d090d;--page-background:var(--color-black);padding:14px;padding:var(--offset-normal);background-color:#0d090d}.BlogHeader,.BlogHeaderContent{background-color:#fff;background-color:var(--page-background)}.BlogHeaderContent{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-decoration:none;--text-color:#fff;--text-color:var(--color-white)}a.BlogHeaderContent:hover{text-decoration:underline}.BlogTitle{font-size:16px;font-weight:600;color:#1f1f1f;color:var(--text-color)}.BlogHeader-image{border-radius:50%;display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:14px;margin-right:var(--offset-normal)}.BlogHeader-image--fallback{height:30px;width:30px;background-color:#1f1f1f;background-color:var(--text-color);border:2px solid #e03737;border:2px solid var(--color-primary)}.BlogPost img{max-width:100%}blockquote{border-left:10px solid #1f1f1f;border-left:10px solid var(--text-color);padding-left:20px;padding-left:var(--offset-medium)}li,ol,ul{margin-top:14px;margin-top:var(--offset-normal);margin-bottom:14px;margin-bottom:var(--offset-normal)}li{padding-top:var(-offset-small);padding-bottom:var(-offset-small)}ol li:last-of-type,ul li:last-of-type{margin-bottom:0}.BlogPost-Title{margin-top:0;margin-bottom:0;font-size:1.9em;line-height:1.15}.BlogPost-Subtitle{margin-bottom:0;margin-top:0;display:-webkit-box;display:-ms-flexbox;display:flex;color:#979797;color:var(--color-muted);font-weight:600;font-family:Work Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-family:var(--headings-font);font-size:.7em}.Separator{background-color:currentColor;border-radius:50%;content:"";margin-top:auto;margin-bottom:auto;display:inline-block}.Separator--small{margin-left:4px;margin-left:var(--offset-small);margin-right:4px;margin-right:var(--offset-small);width:2px;height:2px}.BlogIndex-description{white-space:pre-line}.BlogPost--index{margin-top:20px;margin-top:var(--offset-medium);margin-bottom:20px;margin-bottom:var(--offset-medium)}kbd{cursor:pointer;color:#fcfcfc;background:#222;-webkit-box-shadow:inset 0 0 25px #333,0 1px 0 #000,0 2px 0 #222,0 2px 3px #333;box-shadow:inset 0 0 25px #333,0 1px 0 #000,0 2px 0 #222,0 2px 3px #333;text-shadow:0 -1px 0 #000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;text-decoration:none;text-align:center;width:2.2em;height:2em;border-radius:4px;border-radius:var(--border-radius);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-top:1px solid hsla(0,0%,100%,.8);margin:0}@media (max-width:680px){.BlogPost-Body,.BlogPost-Body>section{padding-left:14px;padding-left:var(--offset-normal);padding-right:14px;padding-right:var(--offset-normal)}}@media (-webkit-min-device-pixel-ratio:1.5){*{-webkit-font-smoothing:antialiased}}@font-face{font-family:"Source Serif Pro";font-style:normal;font-weight:400;src:local("Source Serif Pro"),local("SourceSerifPro-Regular"),url(https://fonts.gstatic.com/s/sourceserifpro/v6/neIQzD-0qpwxpaWvjeD0X88SAOeauXo-oAGIyY0Wfw.woff2) format("woff2");unicode-range:U+0100-024f,U+0259,U+1e??,U+2020,U+20a0-20ab,U+20ad-20cf,U+2113,U+2c60-2c7f,U+a720-a7ff}@font-face{font-family:"Source Serif Pro";font-style:normal;font-weight:400;src:local("Source Serif Pro"),local("SourceSerifPro-Regular"),url(https://fonts.gstatic.com/s/sourceserifpro/v6/neIQzD-0qpwxpaWvjeD0X88SAOeauXQ-oAGIyY0.woff2) format("woff2");unicode-range:U+00??,U+0131,U+0152-0153,U+02bb-02bc,U+02c6,U+02da,U+02dc,U+2000-206f,U+2074,U+20ac,U+2122,U+2191,U+2193,U+2212,U+2215,U+feff,U+fffd}@font-face{font-family:"Source Serif Pro";font-style:normal;font-weight:700;src:local("Source Serif Pro Bold"),local("SourceSerifPro-Bold"),url(https://fonts.gstatic.com/s/sourceserifpro/v6/neIXzD-0qpwxpaWvjeD0X88SAOeasc8btSKqxKcsdrOPbQ.woff2) format("woff2");unicode-range:U+0100-024f,U+0259,U+1e??,U+2020,U+20a0-20ab,U+20ad-20cf,U+2113,U+2c60-2c7f,U+a720-a7ff}@font-face{font-family:"Source Serif Pro";font-style:normal;font-weight:700;src:local("Source Serif Pro Bold"),local("SourceSerifPro-Bold"),url(https://fonts.gstatic.com/s/sourceserifpro/v6/neIXzD-0qpwxpaWvjeD0X88SAOeasc8btSyqxKcsdrM.woff2) format("woff2");unicode-range:U+00??,U+0131,U+0152-0153,U+02bb-02bc,U+02c6,U+02da,U+02dc,U+2000-206f,U+2074,U+20ac,U+2122,U+2191,U+2193,U+2212,U+2215,U+feff,U+fffd}@font-face{font-family:Work Sans;font-style:normal;font-weight:600;src:local("Work Sans SemiBold"),local("WorkSans-SemiBold"),url(https://fonts.gstatic.com/s/worksans/v4/QGYpz_wNahGAdqQ43Rh3o4T8lthNy_r-K7mV.woff2) format("woff2");unicode-range:U+0100-024f,U+0259,U+1e??,U+2020,U+20a0-20ab,U+20ad-20cf,U+2113,U+2c60-2c7f,U+a720-a7ff}@font-face{font-family:Work Sans;font-style:normal;font-weight:600;src:local("Work Sans SemiBold"),local("WorkSans-SemiBold"),url(https://fonts.gstatic.com/s/worksans/v4/QGYpz_wNahGAdqQ43Rh3o4T8mNhNy_r-Kw.woff2) format("woff2");unicode-range:U+00??,U+0131,U+0152-0153,U+02bb-02bc,U+02c6,U+02da,U+02dc,U+2000-206f,U+2074,U+20ac,U+2122,U+2191,U+2193,U+2212,U+2215,U+feff,U+fffd}@font-face{font-family:Inconsolata;font-style:normal;font-weight:400;src:local("Inconsolata Regular"),local("Inconsolata-Regular"),url(https://fonts.gstatic.com/s/inconsolata/v17/QldKNThLqRwH-OJ1UHjlKGlW5qhExfHwNJU.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+1ea0-1ef9,U+20ab}@font-face{font-family:Inconsolata;font-style:normal;font-weight:400;src:local("Inconsolata Regular"),local("Inconsolata-Regular"),url(https://fonts.gstatic.com/s/inconsolata/v17/QldKNThLqRwH-OJ1UHjlKGlX5qhExfHwNJU.woff2) format("woff2");unicode-range:U+0100-024f,U+0259,U+1e??,U+2020,U+20a0-20ab,U+20ad-20cf,U+2113,U+2c60-2c7f,U+a720-a7ff}@font-face{font-family:Inconsolata;font-style:normal;font-weight:400;src:local("Inconsolata Regular"),local("Inconsolata-Regular"),url(https://fonts.gstatic.com/s/inconsolata/v17/QldKNThLqRwH-OJ1UHjlKGlZ5qhExfHw.woff2) format("woff2");unicode-range:U+00??,U+0131,U+0152-0153,U+02bb-02bc,U+02c6,U+02da,U+02dc,U+2000-206f,U+2074,U+20ac,U+2122,U+2191,U+2193,U+2212,U+2215,U+feff,U+fffd}