@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=IBM+Plex+Serif:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap";:root{--gray-000: #f8f9fa;--gray-100: #f1f3f5;--gray-200: #e9ecef;--gray-300: #dee2e6;--gray-400: #ced4da;--gray-500: #adb5bd;--gray-600: #868e96;--gray-700: #495057;--gray-800: #343a40;--gray-900: #212529;--red: #fa5252;--pink: #e64980;--grape: #be4bdb;--purple: #7950f2;--indigo: #4c6ef5;--blue: #228be6;--cyan: #15aabf;--teal: #12b886;--green: #40c057;--yellow: #fab005;--orange: #fd7e14;--blue-300: #74c0fc;--blue-400: #4dabf7;--yellow-100: #fff3bf;--body-font-size: 16px;--body-line-height: 1.5;--sans-serif-font: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--serif-font: "IBM Plex Serif", "PT Serif", Georgia, "Times New Roman", serif;--code-font: "IBM Plex Mono", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--border-radius: .25rem;--spacer: 1rem;--spacer-half: calc(var(--spacer) / 2);--spacer-2: calc(var(--spacer) * 1.5);--spacer-3: calc(var(--spacer) * 3);--body-color: var(--gray-700);--body-bg: #fffcf9;--heading-color: var(--gray-900);--link-color: var(--body-color);--link-hover-color: var(--heading-color);--border-color: var(--gray-300);--code-color: var(--red);--muted-color: var(--gray-600)}:root .highlight table td{padding:5px}:root .highlight table pre{margin:0}:root .highlight,:root .highlight .w{color:#24292f;background-color:#f7f5f2}:root .highlight .k,:root .highlight .kd,:root .highlight .kn,:root .highlight .kp,:root .highlight .kr,:root .highlight .kt,:root .highlight .kv{color:#cf222e}:root .highlight .gr{color:#f6f8fa}:root .highlight .gd{color:#82071e;background-color:#ffebe9}:root .highlight .nb{color:#953800}:root .highlight .nc{color:#953800}:root .highlight .no{color:#953800}:root .highlight .nn{color:#953800}:root .highlight .sr{color:#116329}:root .highlight .na{color:#116329}:root .highlight .nt{color:#116329}:root .highlight .gi{color:#116329;background-color:#dafbe1}:root .highlight .kc{color:#0550ae}:root .highlight .l,:root .highlight .ld,:root .highlight .m,:root .highlight .mb,:root .highlight .mf,:root .highlight .mh,:root .highlight .mi,:root .highlight .il,:root .highlight .mo,:root .highlight .mx{color:#0550ae}:root .highlight .sb{color:#0550ae}:root .highlight .bp{color:#0550ae}:root .highlight .ne{color:#0550ae}:root .highlight .nl{color:#0550ae}:root .highlight .py{color:#0550ae}:root .highlight .nv,:root .highlight .vc,:root .highlight .vg,:root .highlight .vi,:root .highlight .vm{color:#0550ae}:root .highlight .o,:root .highlight .ow{color:#0550ae}:root .highlight .gh{color:#0550ae;font-weight:bold}:root .highlight .gu{color:#0550ae;font-weight:bold}:root .highlight .s,:root .highlight .sa,:root .highlight .sc,:root .highlight .dl,:root .highlight .sd,:root .highlight .s2,:root .highlight .se,:root .highlight .sh,:root .highlight .sx,:root .highlight .s1,:root .highlight .ss{color:#0a3069}:root .highlight .nd{color:#8250df}:root .highlight .nf,:root .highlight .fm{color:#8250df}:root .highlight .err{color:#f6f8fa;background-color:#82071e}:root .highlight .c,:root .highlight .ch,:root .highlight .cd,:root .highlight .cm,:root .highlight .cp,:root .highlight .cpf,:root .highlight .c1,:root .highlight .cs{color:#6e7781}:root .highlight .gl{color:#6e7781}:root .highlight .gt{color:#6e7781}:root .highlight .ni{color:#24292f}:root .highlight .si{color:#24292f}:root .highlight .ge{color:#24292f;font-style:italic}:root .highlight .gs{color:#24292f;font-weight:bold}:root.theme-light{--body-color: var(--gray-700);--body-bg: #fffcf9;--heading-color: var(--gray-900);--link-color: var(--body-color);--link-hover-color: var(--heading-color);--border-color: var(--gray-300);--code-color: var(--red);--muted-color: var(--gray-600)}:root.theme-light .highlight table td{padding:5px}:root.theme-light .highlight table pre{margin:0}:root.theme-light .highlight,:root.theme-light .highlight .w{color:#24292f;background-color:#f7f5f2}:root.theme-light .highlight .k,:root.theme-light .highlight .kd,:root.theme-light .highlight .kn,:root.theme-light .highlight .kp,:root.theme-light .highlight .kr,:root.theme-light .highlight .kt,:root.theme-light .highlight .kv{color:#cf222e}:root.theme-light .highlight .gr{color:#f6f8fa}:root.theme-light .highlight .gd{color:#82071e;background-color:#ffebe9}:root.theme-light .highlight .nb{color:#953800}:root.theme-light .highlight .nc{color:#953800}:root.theme-light .highlight .no{color:#953800}:root.theme-light .highlight .nn{color:#953800}:root.theme-light .highlight .sr{color:#116329}:root.theme-light .highlight .na{color:#116329}:root.theme-light .highlight .nt{color:#116329}:root.theme-light .highlight .gi{color:#116329;background-color:#dafbe1}:root.theme-light .highlight .kc{color:#0550ae}:root.theme-light .highlight .l,:root.theme-light .highlight .ld,:root.theme-light .highlight .m,:root.theme-light .highlight .mb,:root.theme-light .highlight .mf,:root.theme-light .highlight .mh,:root.theme-light .highlight .mi,:root.theme-light .highlight .il,:root.theme-light .highlight .mo,:root.theme-light .highlight .mx{color:#0550ae}:root.theme-light .highlight .sb{color:#0550ae}:root.theme-light .highlight .bp{color:#0550ae}:root.theme-light .highlight .ne{color:#0550ae}:root.theme-light .highlight .nl{color:#0550ae}:root.theme-light .highlight .py{color:#0550ae}:root.theme-light .highlight .nv,:root.theme-light .highlight .vc,:root.theme-light .highlight .vg,:root.theme-light .highlight .vi,:root.theme-light .highlight .vm{color:#0550ae}:root.theme-light .highlight .o,:root.theme-light .highlight .ow{color:#0550ae}:root.theme-light .highlight .gh{color:#0550ae;font-weight:bold}:root.theme-light .highlight .gu{color:#0550ae;font-weight:bold}:root.theme-light .highlight .s,:root.theme-light .highlight .sa,:root.theme-light .highlight .sc,:root.theme-light .highlight .dl,:root.theme-light .highlight .sd,:root.theme-light .highlight .s2,:root.theme-light .highlight .se,:root.theme-light .highlight .sh,:root.theme-light .highlight .sx,:root.theme-light .highlight .s1,:root.theme-light .highlight .ss{color:#0a3069}:root.theme-light .highlight .nd{color:#8250df}:root.theme-light .highlight .nf,:root.theme-light .highlight .fm{color:#8250df}:root.theme-light .highlight .err{color:#f6f8fa;background-color:#82071e}:root.theme-light .highlight .c,:root.theme-light .highlight .ch,:root.theme-light .highlight .cd,:root.theme-light .highlight .cm,:root.theme-light .highlight .cp,:root.theme-light .highlight .cpf,:root.theme-light .highlight .c1,:root.theme-light .highlight .cs{color:#6e7781}:root.theme-light .highlight .gl{color:#6e7781}:root.theme-light .highlight .gt{color:#6e7781}:root.theme-light .highlight .ni{color:#24292f}:root.theme-light .highlight .si{color:#24292f}:root.theme-light .highlight .ge{color:#24292f;font-style:italic}:root.theme-light .highlight .gs{color:#24292f;font-weight:bold}:root.theme-dark{--body-color: var(--gray-300);--body-bg: var(--gray-800);--heading-color: #fff;--link-color: var(--body-color);--link-hover-color: var(--heading-color);--border-color: rgba(255,255,255,.15);--code-color: var(--yellow);--muted-color: var(--gray-500)}:root.theme-dark .highlight table td{padding:5px}:root.theme-dark .highlight table pre{margin:0}:root.theme-dark .highlight,:root.theme-dark .highlight .w{color:#c9d1d9;background-color:#161b22}:root.theme-dark .highlight .k,:root.theme-dark .highlight .kd,:root.theme-dark .highlight .kn,:root.theme-dark .highlight .kp,:root.theme-dark .highlight .kr,:root.theme-dark .highlight .kt,:root.theme-dark .highlight .kv{color:#ff7b72}:root.theme-dark .highlight .gr{color:#f0f6fc}:root.theme-dark .highlight .gd{color:#ffdcd7;background-color:#67060c}:root.theme-dark .highlight .nb{color:#ffa657}:root.theme-dark .highlight .nc{color:#ffa657}:root.theme-dark .highlight .no{color:#ffa657}:root.theme-dark .highlight .nn{color:#ffa657}:root.theme-dark .highlight .sr{color:#7ee787}:root.theme-dark .highlight .na{color:#7ee787}:root.theme-dark .highlight .nt{color:#7ee787}:root.theme-dark .highlight .gi{color:#aff5b4;background-color:#033a16}:root.theme-dark .highlight .kc{color:#79c0ff}:root.theme-dark .highlight .l,:root.theme-dark .highlight .ld,:root.theme-dark .highlight .m,:root.theme-dark .highlight .mb,:root.theme-dark .highlight .mf,:root.theme-dark .highlight .mh,:root.theme-dark .highlight .mi,:root.theme-dark .highlight .il,:root.theme-dark .highlight .mo,:root.theme-dark .highlight .mx{color:#79c0ff}:root.theme-dark .highlight .sb{color:#79c0ff}:root.theme-dark .highlight .bp{color:#79c0ff}:root.theme-dark .highlight .ne{color:#79c0ff}:root.theme-dark .highlight .nl{color:#79c0ff}:root.theme-dark .highlight .py{color:#79c0ff}:root.theme-dark .highlight .nv,:root.theme-dark .highlight .vc,:root.theme-dark .highlight .vg,:root.theme-dark .highlight .vi,:root.theme-dark .highlight .vm{color:#79c0ff}:root.theme-dark .highlight .o,:root.theme-dark .highlight .ow{color:#79c0ff}:root.theme-dark .highlight .gh{color:#1f6feb;font-weight:bold}:root.theme-dark .highlight .gu{color:#1f6feb;font-weight:bold}:root.theme-dark .highlight .s,:root.theme-dark .highlight .sa,:root.theme-dark .highlight .sc,:root.theme-dark .highlight .dl,:root.theme-dark .highlight .sd,:root.theme-dark .highlight .s2,:root.theme-dark .highlight .se,:root.theme-dark .highlight .sh,:root.theme-dark .highlight .sx,:root.theme-dark .highlight .s1,:root.theme-dark .highlight .ss{color:#a5d6ff}:root.theme-dark .highlight .nd{color:#d2a8ff}:root.theme-dark .highlight .nf,:root.theme-dark .highlight .fm{color:#d2a8ff}:root.theme-dark .highlight .err{color:#f0f6fc;background-color:#8e1519}:root.theme-dark .highlight .c,:root.theme-dark .highlight .ch,:root.theme-dark .highlight .cd,:root.theme-dark .highlight .cm,:root.theme-dark .highlight .cp,:root.theme-dark .highlight .cpf,:root.theme-dark .highlight .c1,:root.theme-dark .highlight .cs{color:#8b949e}:root.theme-dark .highlight .gl{color:#8b949e}:root.theme-dark .highlight .gt{color:#8b949e}:root.theme-dark .highlight .ni{color:#c9d1d9}:root.theme-dark .highlight .si{color:#c9d1d9}:root.theme-dark .highlight .ge{color:#c9d1d9;font-style:italic}:root.theme-dark .highlight .gs{color:#c9d1d9;font-weight:bold}@media(prefers-color-scheme: dark){:root{--body-color: var(--gray-300);--body-bg: var(--gray-800);--heading-color: #fff;--link-color: var(--body-color);--link-hover-color: var(--heading-color);--border-color: rgba(255,255,255,.15);--code-color: var(--yellow);--muted-color: var(--gray-500)}:root .highlight table td{padding:5px}:root .highlight table pre{margin:0}:root .highlight,:root .highlight .w{color:#c9d1d9;background-color:#161b22}:root .highlight .k,:root .highlight .kd,:root .highlight .kn,:root .highlight .kp,:root .highlight .kr,:root .highlight .kt,:root .highlight .kv{color:#ff7b72}:root .highlight .gr{color:#f0f6fc}:root .highlight .gd{color:#ffdcd7;background-color:#67060c}:root .highlight .nb{color:#ffa657}:root .highlight .nc{color:#ffa657}:root .highlight .no{color:#ffa657}:root .highlight .nn{color:#ffa657}:root .highlight .sr{color:#7ee787}:root .highlight .na{color:#7ee787}:root .highlight .nt{color:#7ee787}:root .highlight .gi{color:#aff5b4;background-color:#033a16}:root .highlight .kc{color:#79c0ff}:root .highlight .l,:root .highlight .ld,:root .highlight .m,:root .highlight .mb,:root .highlight .mf,:root .highlight .mh,:root .highlight .mi,:root .highlight .il,:root .highlight .mo,:root .highlight .mx{color:#79c0ff}:root .highlight .sb{color:#79c0ff}:root .highlight .bp{color:#79c0ff}:root .highlight .ne{color:#79c0ff}:root .highlight .nl{color:#79c0ff}:root .highlight .py{color:#79c0ff}:root .highlight .nv,:root .highlight .vc,:root .highlight .vg,:root .highlight .vi,:root .highlight .vm{color:#79c0ff}:root .highlight .o,:root .highlight .ow{color:#79c0ff}:root .highlight .gh{color:#1f6feb;font-weight:bold}:root .highlight .gu{color:#1f6feb;font-weight:bold}:root .highlight .s,:root .highlight .sa,:root .highlight .sc,:root .highlight .dl,:root .highlight .sd,:root .highlight .s2,:root .highlight .se,:root .highlight .sh,:root .highlight .sx,:root .highlight .s1,:root .highlight .ss{color:#a5d6ff}:root .highlight .nd{color:#d2a8ff}:root .highlight .nf,:root .highlight .fm{color:#d2a8ff}:root .highlight .err{color:#f0f6fc;background-color:#8e1519}:root .highlight .c,:root .highlight .ch,:root .highlight .cd,:root .highlight .cm,:root .highlight .cp,:root .highlight .cpf,:root .highlight .c1,:root .highlight .cs{color:#8b949e}:root .highlight .gl{color:#8b949e}:root .highlight .gt{color:#8b949e}:root .highlight .ni{color:#c9d1d9}:root .highlight .si{color:#c9d1d9}:root .highlight .ge{color:#c9d1d9;font-style:italic}:root .highlight .gs{color:#c9d1d9;font-weight:bold}}*{box-sizing:border-box}body{margin:0;font-family:var(--sans-serif-font);font-size:var(--body-font-size);line-height:var(--body-line-height);color:var(--body-color);background-color:var(--body-bg);-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body a{text-decoration-color:var(--border-color);text-underline-offset:.25rem}body a:hover{text-decoration-color:var(--link-hover-color)}body a.no-underline{text-decoration:none}body article p,body article ol,body article ul,body article dl{font-family:var(--serif-font)}body .mobile-only{display:none}a{color:var(--link-color);transition:all .3s ease-in-out}a:hover,a:focus{color:var(--link-hover-color)}a strong{color:inherit}img{display:block;max-width:100%;margin-bottom:var(--spacer);border-radius:var(--border-radius)}img.emoji{display:inline-block;margin-bottom:-3px;border-radius:0}table{margin-bottom:1rem;width:100%;border:0 solid var(--border-color);border-collapse:collapse}td,th{padding:.25rem .5rem;border-color:inherit;border-style:solid;border-width:0;border-bottom-width:1px}th{text-align:left}thead th{border-bottom-color:currentColor}mark{padding:.15rem;background-color:var(--yellow);border-radius:.125rem}@media only screen and (max-width: 600px){.mobile-only{display:inline-block !important}}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:600;line-height:1.25;color:var(--heading-color)}h1{font-size:2rem}h2{margin-top:1rem;font-size:1.5rem}h3{margin-top:1.5rem;font-size:1.25rem}h4,h5,h6{margin-top:1rem;font-size:1rem}p{margin-top:0;margin-bottom:1rem}ul,ol,dl{margin-top:0;margin-bottom:1rem}dt{font-weight:bold}dd{margin-bottom:.5rem}hr{position:relative;margin:var(--spacer-2) 0;border:0;border-top:1px solid var(--border-color)}abbr{font-size:85%;font-weight:bold;color:var(--gray-600);text-transform:uppercase}abbr[title]{cursor:help;border-bottom:1px dotted var(--border-color)}blockquote{padding:.5rem 1rem;margin:.8rem 0;text-align:center}blockquote::before{margin-left:auto;margin-right:auto;margin-bottom:.75rem;display:block;background-color:var(--yellow);content:"";height:6px;width:100px}blockquote p{font-style:italic}blockquote p:last-child{margin-bottom:0;font-size:150%}@media(min-width: 30em){blockquote{padding-right:5rem;padding-left:1.25rem}}figure{margin:0}a[href^="#fn:"],a[href^="#fnref:"]{display:inline-block;margin-left:.1rem;font-weight:bold}.footnotes{margin-top:2rem;font-size:85%}.lead{font-size:1.25rem;font-weight:300}code,pre{font-family:var(--code-font)}code{font-size:85%;color:var(--code-color)}pre{display:block;margin-top:0;margin-bottom:var(--spacer-3);overflow:auto}pre code{color:inherit}.highlight{padding:var(--spacer);margin-bottom:var(--spacer);border-radius:var(--border-radius)}.highlight pre{margin-bottom:0}.highlight .highlight{padding:0}.rouge-table{margin-bottom:0;font-size:100%}.rouge-table,.rouge-table td,.rouge-table th{border:0}.rouge-table .gutter{vertical-align:top;user-select:none;opacity:.25}.gist .markdown-body{padding:15px !important}.container{max-width:45rem;padding-left:var(--spacer-2);padding-right:var(--spacer-2);margin-left:auto;margin-right:auto}footer.footer{margin-top:var(--spacer-3);margin-bottom:var(--spacer-3);overflow:hidden}footer.footer small.footer-left{float:left}footer.footer small.footer-right{float:right}header.masthead{padding-top:var(--spacer);padding-bottom:var(--spacer);margin-bottom:var(--spacer-3);display:flex;justify-content:space-between;flex-wrap:wrap}header.masthead .header-left .masthead-title{margin-bottom:0}header.masthead .header-left .masthead-title a{color:inherit;text-decoration:none}header.masthead .header-left .masthead-title small{font-family:var(--serif-font);font-weight:400;color:var(--muted-color)}header.masthead .header-left .masthead-title small:hover{color:inherit}header.masthead .header-left .mobil-tagline{font-family:var(--serif-font);color:var(--muted-color)}header.masthead .header-right .nav{list-style:none;margin-top:1.5rem;display:flex}header.masthead .header-right .nav li{display:inline-block}header.masthead .header-right .nav li>a{color:var(--muted-color);text-decoration:none;font-weight:400;margin-left:var(--spacer-2)}header.masthead .header-right .nav li>a.active,header.masthead .header-right .nav li>a:hover,header.masthead .header-right .nav li>a[data-switch-to]{color:var(--link-hover-color)}@media only screen and (max-width: 600px){.masthead .header-left .masthead-title small{display:none}.masthead .header-left .mobil-tagline{font-size:x-small}.masthead .header-right .nav li a{margin-left:var(--spacer-half) !important}}.page,.post{margin-bottom:4em}.page li+li,.post li+li{margin-top:.25rem}.page-title,.post-title{color:var(--heading-color);margin-top:0}.post-title a{color:inherit;text-decoration:none}.post-title a:hover,.post-title a:focus{text-decoration:underline}.post-meta{display:inline-block;margin-top:-0.5rem;margin-bottom:var(--spacer);color:var(--muted-color)}.post-meta a{text-decoration:none;color:var(--muted-color)}.post-meta a:hover{color:var(--link-hover-color)}.related{padding-top:var(--spacer-2);padding-bottom:var(--spacer-2);margin-bottom:var(--spacer-2);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.related-posts{padding-left:0;list-style:none}.related-posts h3{margin-top:0}.related-posts a small{color:var(--gray-600)}.pagination{overflow:hidden;margin:0 -1.5rem var(--spacer);color:var(--gray-500);text-align:center}.pagination-item{display:block;padding:var(--spacer);text-decoration:none;border:solid var(--border-color);border-width:1px 0}.pagination-item:first-child{margin-bottom:-1px}a.pagination-item:hover{background-color:var(--border-color)}@media(min-width: 30em){.pagination{margin:var(--spacer-3) 0}.pagination-item{float:left;width:50%;border-width:1px}.pagination-item:first-child{margin-bottom:0;border-top-left-radius:var(--border-radius);border-bottom-left-radius:var(--border-radius)}.pagination-item:last-child{margin-left:-1px;border-top-right-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius)}}.message{padding:var(--spacer);margin-bottom:var(--spacer);color:var(--gray-900);background-color:var(--yellow-100);border-radius:var(--border-radius)}#markdown-toc{padding:var(--spacer-2) var(--spacer-3);margin-bottom:var(--spacer-2);border:solid var(--border-color);border-width:1px 0}#markdown-toc::before{display:block;margin-left:calc(var(--spacer-3)*-1);content:"Contents";font-size:85%;font-weight:500}.archive-toc .monthly-section{margin-bottom:var(--spacer-2)}.archive-toc .entry{display:grid;grid-template-columns:auto max-content;grid-template-areas:"chapter page";align-items:end;gap:0 .25rem;margin-bottom:var(--spacer-half)}.archive-toc .chapter{grid-area:chapter;position:relative;overflow:hidden}.archive-toc .chapter small{color:var(--muted-color);margin-left:var(--spacer-half)}.archive-toc .chapter small a{color:var(--muted-color)}.archive-toc .chapter small a:hover{color:var(--link-hover-color)}.archive-toc .chapter::after{position:absolute;padding-left:.25ch;content:" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . " ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . " ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ";color:var(--border-color);text-align:right}.archive-toc .page-number{grid-area:page}@media only screen and (max-width: 600px){.archive-toc .chapter small{display:none}}.short-bio{margin-bottom:var(--spacer-3)}.short-bio h1{margin-bottom:var(--spacer)}.anchorjs-link{opacity:.3}.anchorjs-link.active,.anchorjs-link:hover{opacity:inherit}.colors{display:grid;grid-template-columns:max-content 1fr}.colors dt{width:3rem;height:3rem;border-radius:var(--border-radius);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.15)}.colors dd{margin-left:var(--spacer)}/*# sourceMappingURL=styles.css.map */