:root{--hyperlink: #0050b3;--hyperlink-active: #00224d;--emphasise: #f9dc4a;--black: #000;--white: #fff;--text: #222;--border: #222;--marker: #9e9e9e;--marker-transparent: rgba(158,158,158,0.2);--bg: #fff;--bg-transparent: rgba(255,255,255,0.35)}@media (prefers-color-scheme: dark){:root{--hyperlink: #348eff;--hyperlink-active: #4d9dff;--text: #fff;--border: #9a9a9a;--marker: #b3b3b3;--marker-transparent: rgba(179,179,179,0.35);--bg: #000;--bg-transparent: rgba(0,0,0,0.35)}}:root{--sans: Figtree, apple-system, BlinkMacSystemFont, system-ui, "Noto Sans CJK", sans-serif !default;--serif: "Minion Pro", Minion, "Times New Roman", Georgia, STKaiti, FZKaiti, Kai, Kaiti, serif !default;--arrow: apple-system, BlinkMacSystemFont, Calibri, "Helvetica Neue", Helvetica, Arial, system-ui, "Arial Unicode MS", sans-serif !default}b,strong{font-family:var(--sans);font-weight:bold}dfn{font-style:italic}a{color:var(--hyperlink);border-bottom:none;text-decoration:none}a:hover{color:var(--hyperlink-active);border-bottom:1px solid var(--hyperlink-active)}a:focus{background-color:var(--emphasise);border-bottom:1px solid var(--black);color:var(--black);text-decoration:none}a[href*="//"]:after{font-weight:300;font-size:0.7em;content:"\2197";font-family:var(--arrow);position:relative;top:-5px}ul,ol{padding-inline-start:2rem}blockquote{font-family:var(--serif);border-left:1px solid var(--marker);padding-left:1rem;margin-left:1rem;margin-right:0}cite .footnote-ref,blockquote .footnote-ref{font-family:var(--sans);font-style:normal}.footnote-ref,.footnote-backref{background-color:var(--marker-transparent);padding:1px 5px;border-radius:100px;color:var(--marker);border:1px solid transparent}.footnote-ref{margin-left:1px}.footnote-backref{font-size:0.8em;position:relative;top:-0.1em}.footnote-ref:hover,.footnote-backref:hover{background-color:transparent;border:1px solid var(--hyperlink-active)}.footnote-ref:focus,.footnote-backref:focus{background-color:var(--emphasise);color:var(--black);border:1px solid var(--black)}code,kbd,pre,samp{font-family:Monaco, Menlo, "Lucida Console", "Courier New", Courier, "Source Han Mono", monospace, sans-serif}pre{overflow-x:auto}.highlight>pre{padding:2ch}p>code,li>code,h1>code,h2>code,h3>code,h4>code,h5>code,h6>code,table th>code,table td>code{background-color:var(--marker-transparent);padding:0 5px}img{width:100%}table th,table td{min-width:80px;padding:5px 5px;line-height:1.5;border-bottom:1px solid var(--border)}address{font-family:var(--serif)}::marker{color:var(--marker)}ruby>rt{font-size:75%;margin:0 0.25ch}kbd{font-size:0.85em;top:-2px;color:var(--black);background-color:#f7f7f7;border-radius:0.25rem;border:1px solid #cbcccd;box-shadow:0 2px 0 1px #cbcccd;line-height:1;min-width:0.75rem;padding:2px 5px;margin:0 1px;position:relative;text-align:center;word-break:keep-all}mark{background:var(--emphasise);color:var(--black);padding:0 3px}.title{font-weight:normal;font-size:1.8em}.description{margin:0;position:relative;top:-0.75em;opacity:0.5}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--marker-transparent)}::-webkit-scrollbar-thumb:hover{background:var(--marker)}html{scroll-timeline:--page-scroll block}@keyframes grow-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}#progress{position:fixed;left:0;top:0;width:100%;height:5px;background:var(--marker-transparent);transform-origin:0 50%;animation:grow-progress auto linear;animation-timeline:--page-scroll}.toc{position:sticky;bottom:0;left:0;padding:1em;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);background-color:var(--bg-transparent);border:1px solid var(--border);z-index:100}.toc summary{cursor:pointer}.toc summary::marker{content:""}#TableOfContents{padding-top:1em}#TableOfContents>ul{margin-block-start:0;margin-block-end:0}#TableOfContents a{color:var(--text)}#TableOfContents a:hover{color:var(--text);border-bottom:1px solid var(--text)}#TableOfContents a:focus{color:var(--black)}.small-tag{opacity:0.5;margin-right:0.5ch;white-space:nowrap}.small-tag::before{content:"#";margin-right:2px;font-size:0.8em}.small-date{opacity:0.5;white-space:nowrap}.small-desc{margin:0}.pb-desc{padding-bottom:1ch}@font-face{font-family:"Figtree";font-weight:400;src:local("Figtree"),url("/font/Figtree-Regular.woff2") format("woff2")}@font-face{font-family:"Figtree";font-weight:400;font-style:italic;src:local("Figtree"),url("/font/Figtree-Italic.woff2") format("woff2")}@font-face{font-family:"Figtree";font-weight:normal;src:local("Figtree"),url("/font/Figtree-Regular.woff2") format("woff2")}@font-face{font-family:"Figtree";font-weight:normal;font-style:italic;src:local("Figtree"),url("/font/Figtree-Italic.woff2") format("woff2")}@font-face{font-family:"Figtree";font-weight:700;src:local("Figtree"),url("/font/Figtree-Bold.woff2") format("woff2")}@font-face{font-family:"Figtree";font-weight:700;font-style:italic;src:local("Figtree"),url("/font/Figtree-BoldItalic.woff2") format("woff2")}@font-face{font-family:"Figtree";font-weight:bold;src:local("Figtree"),url("/font/Figtree-Bold.woff2") format("woff2")}@font-face{font-family:"Figtree";font-weight:bold;font-style:italic;src:local("Figtree"),url("/font/Figtree-BoldItalic.woff2") format("woff2")}@font-face{font-family:"Han Sans SC";font-weight:normal;src:local("Noto Sans SC"),local("Noto Sans CJK"),local("Source Han Sans SC"),local("Source Han Sans TC"),local("Source Han Sans TW"),url("/font/SourceHanSansSC-Regular-subset.woff2") format("woff2")}@font-face{font-family:"Han Sans SC";font-weight:bold;font-display:swap;src:local("Noto Sans SC"),local("Noto Sans CJK"),local("Source Han Sans SC"),local("Source Han Sans TC"),local("Source Han Sans TW"),url("/font/SourceHanSansSC-Bold-subset.woff2") format("woff2")}@font-face{font-family:"Han Sans TC";font-weight:normal;src:local("Noto Sans TC"),local("Source Han Sans TC"),local("Source Han Sans TW"),url("//rongbinf.github.io/font/SourceHanSansTC-Regular-subset.woff2") format("woff2")}@font-face{font-family:"Han Sans TC";font-weight:bold;font-display:swap;src:local("Noto Sans TC"),local("Source Han Sans TC"),local("Source Han Sans TW"),url("/font/SourceHanSansTC-Bold-subset.woff2") format("woff2")}@font-face{font-family:"Han Sans K";font-weight:normal;font-display:swap;src:local("Noto Sans K"),local("Noto Sans CJK"),local("Source Han Sans K"),url("/font/SourceHanSansK-Regular-subset.woff2") format("woff2")}@font-face{font-family:"Han Sans K";font-weight:bold;font-display:swap;src:local("Noto Sans K"),local("Noto Sans CJK"),local("Source Han Sans K"),url("/font/SourceHanSansK-Bold-subset.woff2") format("woff2")}@font-face{font-family:"Han Sans JP";font-weight:normal;font-display:swap;src:local("Noto Sans JR"),local("Noto Sans CJK"),local("Source Han Sans"),url("/font/SourceHanSans-Regular-subset.woff2") format("woff2")}@font-face{font-family:"Han Sans JP";font-weight:bold;font-display:swap;src:local("Noto Sans JR"),local("Noto Sans CJK"),local("Source Han Sans"),url("/font/SourceHanSans-Bold-subset.woff2") format("woff2")}@font-face{font-family:"Kai";font-display:swap;src:local("STKaiti"),url("/font/STKaiti-subset.woff2") format("woff2")}@font-face{font-family:"SC Ellipsis";src:local("STKaiti"),local("STSong"),local("SimSun"),url("/font/STKaiti-Ellipsis.woff2") format("woff2");unicode-range:U+2026}@font-face{font-family:"TC Biaodian Serif";src:local("DFKai-SB"),local("BiauKai"),local("LiSung"),url("/font/DFKai-SB-Biaodian.woff2") format("woff2");unicode-range:U+FF00-FFEF, U+3000-303F, U+FE10-FE1F}:root{--sans: Figtree, apple-system, BlinkMacSystemFont, system-ui, sans-serif;--serif: "Minion Pro", Minion, "Times New Roman", Georgia, serif;--arrow: apple-system, BlinkMacSystemFont, Calibri, "Helvetica Neue", Helvetica, Arial, system-ui, "Arial Unicode MS", sans-serif}[lang=en]{--sans: Figtree, apple-system, BlinkMacSystemFont, system-ui, sans-serif;--serif: "Minion Pro", Minion, "Times New Roman", Georgia, serif;--arrow: apple-system, BlinkMacSystemFont, Calibri, "Helvetica Neue", Helvetica, Arial, system-ui, "Arial Unicode MS", sans-serif}[lang=zh-hans]{--sans: "SC Ellipsis", Figtree, "Han Sans SC", apple-system, BlinkMacSystemFont, system-ui, sans-serif;--serif: "SC Ellipsis", "Minion Pro", Minion, "Times New Roman", Georgia, "Kai", serif}[lang=zh-hant]{--sans: Figtree, "Han Sans TC", apple-system, BlinkMacSystemFont, system-ui, sans-serif;--serif: "TC Biaodian Serif", "Minion Pro", Minion, "Times New Roman", Georgia, "Kai", serif}[lang=kr]{--sans: Figtree, "Han Sans K", apple-system, BlinkMacSystemFont, system-ui, sans-serif;--serif: "Minion Pro", Minion, "Times New Roman", Georgia, Batang, cursive, serif}[lang=ja]{--sans: Figtree, "Han Sans JP", apple-system, BlinkMacSystemFont, system-ui, sans-serif;--serif: "Minion Pro", Minion, "Times New Roman", Georgia, "Hiragino Mincho Pro", "MS Mincho", "MS PMincho", serif}body{color:var(--text);background-color:var(--bg);font-family:var(--sans);line-height:1.5;margin:1rem auto 5em auto;max-width:640px;padding:0 20px}header{margin-bottom:1rem}header,footer{display:flex;justify-content:space-between;align-items:center}p{font-weight:normal}
