diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/.nojekyll @@ -0,0 +1 @@ + diff --git a/404.html b/404.html new file mode 100644 index 0000000..ce67a1d --- /dev/null +++ b/404.html @@ -0,0 +1 @@ + 404: Page not found | Fiona Blackett
Home 404: Page not found
404: Page not found
Cancel
diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..a2fc013 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +fiona1729.com \ No newline at end of file diff --git a/about/index.html b/about/index.html new file mode 100644 index 0000000..ba485d1 --- /dev/null +++ b/about/index.html @@ -0,0 +1 @@ + About Me | Fiona Blackett
Home About
About
Cancel

About Me

Hello, I’m Fiona Blackett.

I’m a mathematics PhD student at the University of Strathclyde, advised by Dalton Sakthivadivel and Jules Hedges. I’m broadly interested in applying homotopy theory to mathematical physics, mostly from the perspective of cohesive $(\infty,1)$-topoi and differential cohomology, as well as $A_\infty$ and other homotopical structures in Floer homology and mirror symmetry.

I am employed & funded by VERSES AI as a researcher in the mathematics theory group, where I am currently working on active inference, topological data analysis, and applying statistical physics to machine learning.

I was previously in information security, and I still maintain some interest in formal verification and formal methods in software. This is mostly in the form of category theory intersecting type theory, with the MSP group at the University of Strathclyde.

In my time outside mathematics I enjoy hiking, cycling, and American Sign Language.

Talks

  • The Eilenberg-Steenrod Axioms and Generalised (Co)homology Theory at Adams Blue Book seminar with University of Chicago
  • Topological Quantum Field Theories and Frobenius Algebras at CU Boulder SPS Seminar
  • Differential/Persistent Cohomology and Cohesive Topos Theory at VERSES AI Research Summit

Conferences

  • Homotopical Methods in Fixed Point Theory - CU Boulder - July 11, 2022
  • Theoretical Advanced Study Institute in Particle Theory - CU Boulder - June 5, 2023
  • Geometry and Topology meet Data Analysis and Machine Learning - Northeastern University - June 8, 2023
  • Applied Category Theory - University of Maryland - July 31st, 2023
  • VERSES AI Research Summit - Brocket Hall, UK - Oct 9th, 2023
  • Topology, Representation Theory, and Higher Structures - INI Satellite Programme @ Sabhal Mor Ostain - 26 May 2024

Education

  • University of Strathclyde, PhD Student - Current
  • University of Colorado Boulder, Math BA, incomplete - August 2021 to December 2022
diff --git a/app.js b/app.js new file mode 100644 index 0000000..b2ab751 --- /dev/null +++ b/app.js @@ -0,0 +1 @@ +/* Registering Service Worker */ if('serviceWorker' in navigator) { navigator.serviceWorker.register('/sw.js'); }; diff --git a/archives/index.html b/archives/index.html new file mode 100644 index 0000000..7ad9a5c --- /dev/null +++ b/archives/index.html @@ -0,0 +1 @@ + Archives | Fiona Blackett
Home Archives
Archives
Cancel
diff --git a/assets/css/style.css b/assets/css/style.css new file mode 100644 index 0000000..9a0d05f --- /dev/null +++ b/assets/css/style.css @@ -0,0 +1,9 @@ +/*! + * The styles for Jekyll theme Chirpy + * + * Chirpy v5.0.2 (https://github.com/cotes2020/jekyll-theme-chirpy) + * © 2019 Cotes Chung + * MIT Licensed + */@import url("https://fonts.googleapis.com/css2?family=Lato&family=Source+Sans+Pro:wght@400;600;900&display=swap");#search-results a,h5,h4,h3,h2,h1{color:var(--heading-color);font-weight:400;font-family:'Lato', 'Microsoft Yahei', sans-serif}#core-wrapper h5,#core-wrapper h4,#core-wrapper h3,#core-wrapper h2{margin-top:2.5rem;margin-bottom:2rem}h5 .anchor,h4 .anchor,h3 .anchor,h2 .anchor{font-size:1rem;margin-left:0.5rem}@media (hover: hover){h5 .anchor,h4 .anchor,h3 .anchor,h2 .anchor{border-bottom:none !important;visibility:hidden;opacity:0;transition:opacity 0.25s ease-in, visibility 0s ease-in 0.25s}h5:hover .anchor,h4:hover .anchor,h3:hover .anchor,h2:hover .anchor{visibility:visible;opacity:1;transition:opacity 0.25s ease-in, visibility 0s ease-in 0s}}h2 .anchor{position:relative;bottom:1px}.post-tag:hover,.tag:hover{background:var(--tag-hover);transition:background 0.35s ease-in-out}.table-wrapper>table tbody tr td,.table-wrapper>table thead th{padding:0.4rem 1rem;font-size:95%;white-space:nowrap}#page-category a:hover,#page-tag a:hover,.license-wrapper>a:hover,#post-list .post-preview a:hover,#search-results a:hover,#topbar #breadcrumb a:hover,.post-content a:not(.img-link):hover,.post-meta a:hover,.post a:hover code,#access-lastmod a:hover,footer a:hover{color:#d2603a !important;border-bottom:1px solid #d2603a;text-decoration:none}#search-results a,#search-hints .post-tag,a{color:var(--link-color)}.post-tail-wrapper .post-meta a,.post-content a:not(.img-link){border-bottom:1px solid var(--link-underline-color)}#sidebar .sidebar-bottom .mode-toggle>i,#sidebar .sidebar-bottom a,#sidebar .nav-item:not(.active)>a,#sidebar .site-title a{transition:color 0.35s ease-in-out}#sidebar .sidebar-bottom .icon-border,.post a.img-link,i.far,i.fas,.code-header{user-select:none}#page-category ul>li>a,#page-tag ul>li>a,#core-wrapper .categories a:not(:hover),#core-wrapper #tags a:not(:hover),#core-wrapper #archives a:not(:hover),#search-results a,#access-lastmod a{border-bottom:none}.share-wrapper .share-icons>i,#search-cancel,#search-wrapper .fa-times-circle,.code-header button{cursor:pointer}#related-posts em,#post-list .post-preview .post-meta em,.post-meta em{font-style:normal}#sidebar .sidebar-bottom .mode-toggle,#sidebar a{color:rgba(117,117,117,0.9);user-select:none}html:not([mode]),html[mode=light]{--highlight-bg-color: #f7f7f7;--highlighter-rouge-color: #2f2f2f;--highlight-lineno-color: #c2c6cc;--inline-code-bg: #f3f3f3;--code-header-text-color: #a3a3b1;--code-header-muted-color: #ebebeb;--code-header-icon-color: #d1d1d1;--clipboard-checked-color: #43c743}html:not([mode]) .highlight .hll,html[mode=light] .highlight .hll{background-color:#ffffcc}html:not([mode]) .highlight .c,html[mode=light] .highlight .c{color:#999988;font-style:italic}html:not([mode]) .highlight .err,html[mode=light] .highlight .err{color:#a61717;background-color:#e3d2d2}html:not([mode]) .highlight .k,html[mode=light] .highlight .k{color:#000000;font-weight:bold}html:not([mode]) .highlight .o,html[mode=light] .highlight .o{color:#000000;font-weight:bold}html:not([mode]) .highlight .cm,html[mode=light] .highlight .cm{color:#999988;font-style:italic}html:not([mode]) .highlight .cp,html[mode=light] .highlight .cp{color:#999999;font-weight:bold;font-style:italic}html:not([mode]) .highlight .c1,html[mode=light] .highlight .c1{color:#999988;font-style:italic}html:not([mode]) .highlight .cs,html[mode=light] .highlight .cs{color:#999999;font-weight:bold;font-style:italic}html:not([mode]) .highlight .gd,html[mode=light] .highlight .gd{color:#d01040;background-color:#ffdddd}html:not([mode]) .highlight .ge,html[mode=light] .highlight .ge{color:#000000;font-style:italic}html:not([mode]) .highlight .gr,html[mode=light] .highlight .gr{color:#aa0000}html:not([mode]) .highlight .gh,html[mode=light] .highlight .gh{color:#999999}html:not([mode]) .highlight .gi,html[mode=light] .highlight .gi{color:#008080;background-color:#ddffdd}html:not([mode]) .highlight .go,html[mode=light] .highlight .go{color:#888888}html:not([mode]) .highlight .gp,html[mode=light] .highlight .gp{color:#555555}html:not([mode]) .highlight .gs,html[mode=light] .highlight .gs{font-weight:bold}html:not([mode]) .highlight .gu,html[mode=light] .highlight .gu{color:#aaaaaa}html:not([mode]) .highlight .gt,html[mode=light] .highlight .gt{color:#aa0000}html:not([mode]) .highlight .kc,html[mode=light] .highlight .kc{color:#000000;font-weight:bold}html:not([mode]) .highlight .kd,html[mode=light] .highlight .kd{color:#000000;font-weight:bold}html:not([mode]) .highlight .kn,html[mode=light] .highlight .kn{color:#000000;font-weight:bold}html:not([mode]) .highlight .kp,html[mode=light] .highlight .kp{color:#000000;font-weight:bold}html:not([mode]) .highlight .kr,html[mode=light] .highlight .kr{color:#000000;font-weight:bold}html:not([mode]) .highlight .kt,html[mode=light] .highlight .kt{color:#445588;font-weight:bold}html:not([mode]) .highlight .m,html[mode=light] .highlight .m{color:#009999}html:not([mode]) .highlight .s,html[mode=light] .highlight .s{color:#d01040}html:not([mode]) .highlight .na,html[mode=light] .highlight .na{color:#008080}html:not([mode]) .highlight .nb,html[mode=light] .highlight .nb{color:#0086b3}html:not([mode]) .highlight .nc,html[mode=light] .highlight .nc{color:#445588;font-weight:bold}html:not([mode]) .highlight .no,html[mode=light] .highlight .no{color:#008080}html:not([mode]) .highlight .nd,html[mode=light] .highlight .nd{color:#3c5d5d;font-weight:bold}html:not([mode]) .highlight .ni,html[mode=light] .highlight .ni{color:#800080}html:not([mode]) .highlight .ne,html[mode=light] .highlight .ne{color:#990000;font-weight:bold}html:not([mode]) .highlight .nf,html[mode=light] .highlight .nf{color:#990000;font-weight:bold}html:not([mode]) .highlight .nl,html[mode=light] .highlight .nl{color:#990000;font-weight:bold}html:not([mode]) .highlight .nn,html[mode=light] .highlight .nn{color:#555555}html:not([mode]) .highlight .nt,html[mode=light] .highlight .nt{color:#000080}html:not([mode]) .highlight .nv,html[mode=light] .highlight .nv{color:#008080}html:not([mode]) .highlight .ow,html[mode=light] .highlight .ow{color:#000000;font-weight:bold}html:not([mode]) .highlight .w,html[mode=light] .highlight .w{color:#bbbbbb}html:not([mode]) .highlight .mf,html[mode=light] .highlight .mf{color:#009999}html:not([mode]) .highlight .mh,html[mode=light] .highlight .mh{color:#009999}html:not([mode]) .highlight .mi,html[mode=light] .highlight .mi{color:#009999}html:not([mode]) .highlight .mo,html[mode=light] .highlight .mo{color:#009999}html:not([mode]) .highlight .sb,html[mode=light] .highlight .sb{color:#d01040}html:not([mode]) .highlight .sc,html[mode=light] .highlight .sc{color:#d01040}html:not([mode]) .highlight .sd,html[mode=light] .highlight .sd{color:#d01040}html:not([mode]) .highlight .s2,html[mode=light] .highlight .s2{color:#d01040}html:not([mode]) .highlight .se,html[mode=light] .highlight .se{color:#d01040}html:not([mode]) .highlight .sh,html[mode=light] .highlight .sh{color:#d01040}html:not([mode]) .highlight .si,html[mode=light] .highlight .si{color:#d01040}html:not([mode]) .highlight .sx,html[mode=light] .highlight .sx{color:#d01040}html:not([mode]) .highlight .sr,html[mode=light] .highlight .sr{color:#009926}html:not([mode]) .highlight .s1,html[mode=light] .highlight .s1{color:#d01040}html:not([mode]) .highlight .ss,html[mode=light] .highlight .ss{color:#990073}html:not([mode]) .highlight .bp,html[mode=light] .highlight .bp{color:#999999}html:not([mode]) .highlight .vc,html[mode=light] .highlight .vc{color:#008080}html:not([mode]) .highlight .vg,html[mode=light] .highlight .vg{color:#008080}html:not([mode]) .highlight .vi,html[mode=light] .highlight .vi{color:#008080}html:not([mode]) .highlight .il,html[mode=light] .highlight .il{color:#009999}html[mode=dark]{--highlight-bg-color: #252525;--highlighter-rouge-color: #de6b18;--highlight-lineno-color: #6c6c6d;--inline-code-bg: #272822;--code-header-text-color: #6a6a6a;--code-header-muted-color: rgb(60 60 60);--code-header-icon-color: rgb(86 86 86);--clipboard-checked-color: #2bcc2b}html[mode=dark] .highlight pre{background-color:var(--highlight-bg-color)}html[mode=dark] .highlight .hll{background-color:var(--highlight-bg-color)}html[mode=dark] .highlight .c{color:#75715e}html[mode=dark] .highlight .err{color:#960050;background-color:#1e0010}html[mode=dark] .highlight .k{color:#66d9ef}html[mode=dark] .highlight .l{color:#ae81ff}html[mode=dark] .highlight .n{color:#f8f8f2}html[mode=dark] .highlight .o{color:#f92672}html[mode=dark] .highlight .p{color:#f8f8f2}html[mode=dark] .highlight .cm{color:#75715e}html[mode=dark] .highlight .cp{color:#75715e}html[mode=dark] .highlight .c1{color:#75715e}html[mode=dark] .highlight .cs{color:#75715e}html[mode=dark] .highlight .ge{color:inherit;font-style:italic}html[mode=dark] .highlight .gs{font-weight:bold}html[mode=dark] .highlight .kc{color:#66d9ef}html[mode=dark] .highlight .kd{color:#66d9ef}html[mode=dark] .highlight .kn{color:#f92672}html[mode=dark] .highlight .kp{color:#66d9ef}html[mode=dark] .highlight .kr{color:#66d9ef}html[mode=dark] .highlight .kt{color:#66d9ef}html[mode=dark] .highlight .ld{color:#e6db74}html[mode=dark] .highlight .m{color:#ae81ff}html[mode=dark] .highlight .s{color:#e6db74}html[mode=dark] .highlight .na{color:#a6e22e}html[mode=dark] .highlight .nb{color:#f8f8f2}html[mode=dark] .highlight .nc{color:#a6e22e}html[mode=dark] .highlight .no{color:#66d9ef}html[mode=dark] .highlight .nd{color:#a6e22e}html[mode=dark] .highlight .ni{color:#f8f8f2}html[mode=dark] .highlight .ne{color:#a6e22e}html[mode=dark] .highlight .nf{color:#a6e22e}html[mode=dark] .highlight .nl{color:#f8f8f2}html[mode=dark] .highlight .nn{color:#f8f8f2}html[mode=dark] .highlight .nx{color:#a6e22e}html[mode=dark] .highlight .py{color:#f8f8f2}html[mode=dark] .highlight .nt{color:#f92672}html[mode=dark] .highlight .nv{color:#f8f8f2}html[mode=dark] .highlight .ow{color:#f92672}html[mode=dark] .highlight .w{color:#f8f8f2}html[mode=dark] .highlight .mf{color:#ae81ff}html[mode=dark] .highlight .mh{color:#ae81ff}html[mode=dark] .highlight .mi{color:#ae81ff}html[mode=dark] .highlight .mo{color:#ae81ff}html[mode=dark] .highlight .sb{color:#e6db74}html[mode=dark] .highlight .sc{color:#e6db74}html[mode=dark] .highlight .sd{color:#e6db74}html[mode=dark] .highlight .s2{color:#e6db74}html[mode=dark] .highlight .se{color:#ae81ff}html[mode=dark] .highlight .sh{color:#e6db74}html[mode=dark] .highlight .si{color:#e6db74}html[mode=dark] .highlight .sx{color:#e6db74}html[mode=dark] .highlight .sr{color:#e6db74}html[mode=dark] .highlight .s1{color:#e6db74}html[mode=dark] .highlight .ss{color:#e6db74}html[mode=dark] .highlight .bp{color:#f8f8f2}html[mode=dark] .highlight .vc{color:#f8f8f2}html[mode=dark] .highlight .vg{color:#f8f8f2}html[mode=dark] .highlight .vi{color:#f8f8f2}html[mode=dark] .highlight .il{color:#ae81ff}html[mode=dark] .highlight .gu{color:#75715e}html[mode=dark] .highlight .gd{color:#f92672;background-color:#561c08}html[mode=dark] .highlight .gi{color:#a6e22e;background-color:#0b5858}html[mode=dark] .highlight .gp{color:#818c96}html[mode=dark] pre{color:#bfbfbf}@media (prefers-color-scheme: dark){html:not([mode]),html[mode=dark]{--highlight-bg-color: #252525;--highlighter-rouge-color: #de6b18;--highlight-lineno-color: #6c6c6d;--inline-code-bg: #272822;--code-header-text-color: #6a6a6a;--code-header-muted-color: rgb(60 60 60);--code-header-icon-color: rgb(86 86 86);--clipboard-checked-color: #2bcc2b}html:not([mode]) .highlight pre,html[mode=dark] .highlight pre{background-color:var(--highlight-bg-color)}html:not([mode]) .highlight .hll,html[mode=dark] .highlight .hll{background-color:var(--highlight-bg-color)}html:not([mode]) .highlight .c,html[mode=dark] .highlight .c{color:#75715e}html:not([mode]) .highlight .err,html[mode=dark] .highlight .err{color:#960050;background-color:#1e0010}html:not([mode]) .highlight .k,html[mode=dark] .highlight .k{color:#66d9ef}html:not([mode]) .highlight .l,html[mode=dark] .highlight .l{color:#ae81ff}html:not([mode]) .highlight .n,html[mode=dark] .highlight .n{color:#f8f8f2}html:not([mode]) .highlight .o,html[mode=dark] .highlight .o{color:#f92672}html:not([mode]) .highlight .p,html[mode=dark] .highlight .p{color:#f8f8f2}html:not([mode]) .highlight .cm,html[mode=dark] .highlight .cm{color:#75715e}html:not([mode]) .highlight .cp,html[mode=dark] .highlight .cp{color:#75715e}html:not([mode]) .highlight .c1,html[mode=dark] .highlight .c1{color:#75715e}html:not([mode]) .highlight .cs,html[mode=dark] .highlight .cs{color:#75715e}html:not([mode]) .highlight .ge,html[mode=dark] .highlight .ge{color:inherit;font-style:italic}html:not([mode]) .highlight .gs,html[mode=dark] .highlight .gs{font-weight:bold}html:not([mode]) .highlight .kc,html[mode=dark] .highlight .kc{color:#66d9ef}html:not([mode]) .highlight .kd,html[mode=dark] .highlight .kd{color:#66d9ef}html:not([mode]) .highlight .kn,html[mode=dark] .highlight .kn{color:#f92672}html:not([mode]) .highlight .kp,html[mode=dark] .highlight .kp{color:#66d9ef}html:not([mode]) .highlight .kr,html[mode=dark] .highlight .kr{color:#66d9ef}html:not([mode]) .highlight .kt,html[mode=dark] .highlight .kt{color:#66d9ef}html:not([mode]) .highlight .ld,html[mode=dark] .highlight .ld{color:#e6db74}html:not([mode]) .highlight .m,html[mode=dark] .highlight .m{color:#ae81ff}html:not([mode]) .highlight .s,html[mode=dark] .highlight .s{color:#e6db74}html:not([mode]) .highlight .na,html[mode=dark] .highlight .na{color:#a6e22e}html:not([mode]) .highlight .nb,html[mode=dark] .highlight .nb{color:#f8f8f2}html:not([mode]) .highlight .nc,html[mode=dark] .highlight .nc{color:#a6e22e}html:not([mode]) .highlight .no,html[mode=dark] .highlight .no{color:#66d9ef}html:not([mode]) .highlight .nd,html[mode=dark] .highlight .nd{color:#a6e22e}html:not([mode]) .highlight .ni,html[mode=dark] .highlight .ni{color:#f8f8f2}html:not([mode]) .highlight .ne,html[mode=dark] .highlight .ne{color:#a6e22e}html:not([mode]) .highlight .nf,html[mode=dark] .highlight .nf{color:#a6e22e}html:not([mode]) .highlight .nl,html[mode=dark] .highlight .nl{color:#f8f8f2}html:not([mode]) .highlight .nn,html[mode=dark] .highlight .nn{color:#f8f8f2}html:not([mode]) .highlight .nx,html[mode=dark] .highlight .nx{color:#a6e22e}html:not([mode]) .highlight .py,html[mode=dark] .highlight .py{color:#f8f8f2}html:not([mode]) .highlight .nt,html[mode=dark] .highlight .nt{color:#f92672}html:not([mode]) .highlight .nv,html[mode=dark] .highlight .nv{color:#f8f8f2}html:not([mode]) .highlight .ow,html[mode=dark] .highlight .ow{color:#f92672}html:not([mode]) .highlight .w,html[mode=dark] .highlight .w{color:#f8f8f2}html:not([mode]) .highlight .mf,html[mode=dark] .highlight .mf{color:#ae81ff}html:not([mode]) .highlight .mh,html[mode=dark] .highlight .mh{color:#ae81ff}html:not([mode]) .highlight .mi,html[mode=dark] .highlight .mi{color:#ae81ff}html:not([mode]) .highlight .mo,html[mode=dark] .highlight .mo{color:#ae81ff}html:not([mode]) .highlight .sb,html[mode=dark] .highlight .sb{color:#e6db74}html:not([mode]) .highlight .sc,html[mode=dark] .highlight .sc{color:#e6db74}html:not([mode]) .highlight .sd,html[mode=dark] .highlight .sd{color:#e6db74}html:not([mode]) .highlight .s2,html[mode=dark] .highlight .s2{color:#e6db74}html:not([mode]) .highlight .se,html[mode=dark] .highlight .se{color:#ae81ff}html:not([mode]) .highlight .sh,html[mode=dark] .highlight .sh{color:#e6db74}html:not([mode]) .highlight .si,html[mode=dark] .highlight .si{color:#e6db74}html:not([mode]) .highlight .sx,html[mode=dark] .highlight .sx{color:#e6db74}html:not([mode]) .highlight .sr,html[mode=dark] .highlight .sr{color:#e6db74}html:not([mode]) .highlight .s1,html[mode=dark] .highlight .s1{color:#e6db74}html:not([mode]) .highlight .ss,html[mode=dark] .highlight .ss{color:#e6db74}html:not([mode]) .highlight .bp,html[mode=dark] .highlight .bp{color:#f8f8f2}html:not([mode]) .highlight .vc,html[mode=dark] .highlight .vc{color:#f8f8f2}html:not([mode]) .highlight .vg,html[mode=dark] .highlight .vg{color:#f8f8f2}html:not([mode]) .highlight .vi,html[mode=dark] .highlight .vi{color:#f8f8f2}html:not([mode]) .highlight .il,html[mode=dark] .highlight .il{color:#ae81ff}html:not([mode]) .highlight .gu,html[mode=dark] .highlight .gu{color:#75715e}html:not([mode]) .highlight .gd,html[mode=dark] .highlight .gd{color:#f92672;background-color:#561c08}html:not([mode]) .highlight .gi,html[mode=dark] .highlight .gi{color:#a6e22e;background-color:#0b5858}html:not([mode]) .highlight .gp,html[mode=dark] .highlight .gp{color:#818c96}html:not([mode]) pre,html[mode=dark] pre{color:#bfbfbf}html[mode=light]{--highlight-bg-color: #f7f7f7;--highlighter-rouge-color: #2f2f2f;--highlight-lineno-color: #c2c6cc;--inline-code-bg: #f3f3f3;--code-header-text-color: #a3a3b1;--code-header-muted-color: #ebebeb;--code-header-icon-color: #d1d1d1;--clipboard-checked-color: #43c743}html[mode=light] .highlight .hll{background-color:#ffffcc}html[mode=light] .highlight .c{color:#999988;font-style:italic}html[mode=light] .highlight .err{color:#a61717;background-color:#e3d2d2}html[mode=light] .highlight .k{color:#000000;font-weight:bold}html[mode=light] .highlight .o{color:#000000;font-weight:bold}html[mode=light] .highlight .cm{color:#999988;font-style:italic}html[mode=light] .highlight .cp{color:#999999;font-weight:bold;font-style:italic}html[mode=light] .highlight .c1{color:#999988;font-style:italic}html[mode=light] .highlight .cs{color:#999999;font-weight:bold;font-style:italic}html[mode=light] .highlight .gd{color:#d01040;background-color:#ffdddd}html[mode=light] .highlight .ge{color:#000000;font-style:italic}html[mode=light] .highlight .gr{color:#aa0000}html[mode=light] .highlight .gh{color:#999999}html[mode=light] .highlight .gi{color:#008080;background-color:#ddffdd}html[mode=light] .highlight .go{color:#888888}html[mode=light] .highlight .gp{color:#555555}html[mode=light] .highlight .gs{font-weight:bold}html[mode=light] .highlight .gu{color:#aaaaaa}html[mode=light] .highlight .gt{color:#aa0000}html[mode=light] .highlight .kc{color:#000000;font-weight:bold}html[mode=light] .highlight .kd{color:#000000;font-weight:bold}html[mode=light] .highlight .kn{color:#000000;font-weight:bold}html[mode=light] .highlight .kp{color:#000000;font-weight:bold}html[mode=light] .highlight .kr{color:#000000;font-weight:bold}html[mode=light] .highlight .kt{color:#445588;font-weight:bold}html[mode=light] .highlight .m{color:#009999}html[mode=light] .highlight .s{color:#d01040}html[mode=light] .highlight .na{color:#008080}html[mode=light] .highlight .nb{color:#0086b3}html[mode=light] .highlight .nc{color:#445588;font-weight:bold}html[mode=light] .highlight .no{color:#008080}html[mode=light] .highlight .nd{color:#3c5d5d;font-weight:bold}html[mode=light] .highlight .ni{color:#800080}html[mode=light] .highlight .ne{color:#990000;font-weight:bold}html[mode=light] .highlight .nf{color:#990000;font-weight:bold}html[mode=light] .highlight .nl{color:#990000;font-weight:bold}html[mode=light] .highlight .nn{color:#555555}html[mode=light] .highlight .nt{color:#000080}html[mode=light] .highlight .nv{color:#008080}html[mode=light] .highlight .ow{color:#000000;font-weight:bold}html[mode=light] .highlight .w{color:#bbbbbb}html[mode=light] .highlight .mf{color:#009999}html[mode=light] .highlight .mh{color:#009999}html[mode=light] .highlight .mi{color:#009999}html[mode=light] .highlight .mo{color:#009999}html[mode=light] .highlight .sb{color:#d01040}html[mode=light] .highlight .sc{color:#d01040}html[mode=light] .highlight .sd{color:#d01040}html[mode=light] .highlight .s2{color:#d01040}html[mode=light] .highlight .se{color:#d01040}html[mode=light] .highlight .sh{color:#d01040}html[mode=light] .highlight .si{color:#d01040}html[mode=light] .highlight .sx{color:#d01040}html[mode=light] .highlight .sr{color:#009926}html[mode=light] .highlight .s1{color:#d01040}html[mode=light] .highlight .ss{color:#990073}html[mode=light] .highlight .bp{color:#999999}html[mode=light] .highlight .vc{color:#008080}html[mode=light] .highlight .vg{color:#008080}html[mode=light] .highlight .vi{color:#008080}html[mode=light] .highlight .il{color:#009999}}figure.highlight,.highlight,.highlighter-rouge{background:var(--highlight-bg-color)}.highlight,.highlighter-rouge{border-radius:6px}td.rouge-code{padding-left:1rem;padding-right:1.5rem}.highlighter-rouge{color:var(--highlighter-rouge-color);margin-top:0.5rem;margin-bottom:1.2em}.highlight{overflow:auto;padding-top:0.5rem;padding-bottom:1rem}.highlight pre{margin-bottom:0;font-size:.85rem;line-height:1.4rem;word-wrap:normal}.highlight table td pre{overflow:visible;word-break:normal}.highlight .lineno{padding-right:0.5rem;min-width:2.2rem;text-align:right;color:var(--highlight-lineno-color);-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.highlight .gp{user-select:none}code{-webkit-hyphens:none;-ms-hyphens:none;-moz-hyphens:none;hyphens:none}code.highlighter-rouge{font-size:.85rem;padding:3px 5px;border-radius:4px;background-color:var(--inline-code-bg)}a>code.highlighter-rouge{padding-bottom:0;color:inherit}a:hover>code.highlighter-rouge{border-bottom:none}blockquote code.highlighter-rouge{color:inherit}.highlight>code{color:transparent}td.rouge-code a{color:inherit !important;border-bottom:none !important;pointer-events:none}div[class^='highlighter-rouge'] pre.lineno,div.language-plaintext.highlighter-rouge pre.lineno,div.language-console.highlighter-rouge pre.lineno,div.language-terminal.highlighter-rouge pre.lineno,div.nolineno pre.lineno{display:none}div[class^='highlighter-rouge'] td.rouge-code,div.language-plaintext.highlighter-rouge td.rouge-code,div.language-console.highlighter-rouge td.rouge-code,div.language-terminal.highlighter-rouge td.rouge-code,div.nolineno td.rouge-code{padding-left:1.5rem}.code-header{border-top-left-radius:6px;border-top-right-radius:6px;display:flex;justify-content:space-between;align-items:center;height:2.25rem}.code-header::before{content:"";display:inline-block;margin-left:1rem;width:.75rem;height:.75rem;border-radius:50%;background-color:var(--code-header-muted-color);box-shadow:1.25rem 0 0 var(--code-header-muted-color),2.5rem 0 0 var(--code-header-muted-color)}.code-header span i{font-size:1rem;margin-right:0.4rem;color:var(--code-header-icon-color)}.code-header span i.small{font-size:70%}[file] .code-header span>i{position:relative;top:1px}.code-header span::after{content:attr(label-text);font-size:0.85rem;font-weight:600;color:var(--code-header-text-color)}.code-header button{border:1px solid transparent;border-radius:6px;height:2.25rem;width:2.25rem;padding:0;background-color:inherit}.code-header button i{color:var(--code-header-icon-color)}.code-header button[timeout]:hover{border-color:var(--clipboard-checked-color)}.code-header button[timeout] i{color:var(--clipboard-checked-color)}.code-header button:not([timeout]):hover{background-color:rgba(128,128,128,0.37)}.code-header button:not([timeout]):hover i{color:white}.code-header button:focus{outline:none}@media all and (max-width: 576px){.post-content>div[class^='language-']{margin-left:-1.25rem;margin-right:-1.25rem;border-radius:0}.post-content>div[class^='language-'] .highlight{padding-left:0.25rem}.post-content>div[class^='language-'] .code-header{border-radius:0;padding-left:0.4rem;padding-right:0.5rem}}html:not([mode]),html[mode=light]{--body-bg: #fafafa;--mask-bg: #c1c3c5;--main-wrapper-bg: white;--main-border-color: #f3f3f3;--text-color: #34343c;--text-muted-color: gray;--heading-color: black;--blockquote-border-color: #eee;--blockquote-text-color: #9a9a9a;--link-color: #2a408e;--link-underline-color: #dee2e6;--button-bg: #fff;--btn-border-color: #e9ecef;--btn-backtotop-color: #686868;--btn-backtotop-border-color: #f1f1f1;--btn-box-shadow: #eaeaea;--checkbox-color: #c5c5c5;--checkbox-checked-color: #07a8f7;--sidebar-bg: #eeeeee;--sidebar-muted-color: #a2a19f;--sidebar-active-color: #424242;--nav-cursor-color: #757575;--sidebar-btn-bg: white;--topbar-text-color: rgb(78, 78, 78);--topbar-wrapper-bg: white;--search-wrapper-bg: rgb(245 245 245 / 50%);--search-wrapper-border-color: rgb(245 245 245);--search-tag-bg: #f8f9fa;--search-icon-color: #c2c6cc;--input-focus-border-color: var(--btn-border-color);--post-list-text-color: dimgray;--btn-patinator-text-color: #555555;--btn-paginator-hover-color: var(--sidebar-bg);--btn-paginator-border-color: var(--sidebar-bg);--btn-text-color: #676666;--pin-bg: #f5f5f5;--pin-color: #999fa4;--btn-share-hover-color: var(--link-color);--card-border-color: #f1f1f1;--card-box-shadow: rgba(234, 234, 234, 0.7686274509803922);--label-color: #616161;--relate-post-date: rgba(30, 55, 70, 0.4);--footnote-target-bg: lightcyan;--tag-bg: rgba(0, 0, 0, 0.075);--tag-border: #dee2e6;--tag-shadow: var(--btn-border-color);--tag-hover: rgb(222, 226, 230);--tb-odd-bg: #fbfcfd;--tb-border-color: #eaeaea;--dash-color: silver;--preview-img-bg: radial-gradient(circle, rgb(255 255 255) 0%, rgb(249 249 249) 100%);--kbd-wrap-color: #bdbdbd;--kbd-text-color: var(--text-color);--kbd-bg-color: white;--categories-hover-bg: var(--btn-border-color);--categories-icon-hover-color: darkslategray;--timeline-color: rgba(0, 0, 0, 0.075);--timeline-node-bg: #c2c6cc;--timeline-year-dot-color: #ffffff}html[mode=dark]{--body-bg: var(--main-wrapper-bg);--mask-bg: rgb(68, 69, 70);--main-wrapper-bg: rgb(27, 27, 30);--main-border-color: rgb(44, 45, 45);--text-color: rgb(175, 176, 177);--text-muted-color: rgb(107, 116, 124);--heading-color: #cccccc;--blockquote-border-color: rgb(66, 66, 66);--blockquote-text-color: rgb(117, 117, 117);--link-color: rgb(138, 180, 248);--link-underline-color: rgb(82, 108, 150);--button-bg: rgb(39, 40, 43);--btn-border-color: rgb(63, 65, 68);--btn-backtotop-color: var(--text-color);--btn-backtotop-border-color: var(--btn-border-color);--btn-box-shadow: var(--main-wrapper-bg);--card-header-bg: rgb(51, 50, 50);--label-color: rgb(108, 117, 125);--checkbox-color: rgb(118 120 121);--checkbox-checked-color: var(--link-color);--sidebar-bg: radial-gradient(circle, #242424 0%, #1d1f27 100%);--sidebar-muted-color: #6d6c6b;--sidebar-active-color: rgb(255 255 255 / 80%);--nav-cursor-color: rgb(183, 182, 182);--sidebar-btn-bg: rgb(117 116 116 / 20%);--topbar-text-color: var(--text-color);--topbar-wrapper-bg: rgb(39, 40, 43);--search-wrapper-bg: rgb(34, 34, 39);--search-wrapper-border-color: rgb(34, 34, 39);--search-icon-color: rgb(100, 102, 105);--input-focus-border-color: rgb(112, 114, 115);--post-list-text-color: rgb(175, 176, 177);--btn-patinator-text-color: var(--text-color);--btn-paginator-hover-color: rgb(64, 65, 66);--btn-paginator-border-color: var(--btn-border-color);--btn-text-color: var(--text-color);--pin-bg: rgb(34 35 37);--pin-color: inherit;--toc-highlight: rgb(116, 178, 243);--tag-bg: rgb(41, 40, 40);--tag-hover: rgb(43, 56, 62);--tb-odd-bg: rgba(42, 47, 53, 0.52);--tb-even-bg: rgb(31, 31, 34);--tb-border-color: var(--tb-odd-bg);--footnote-target-bg: rgb(63, 81, 181);--btn-share-color: #6c757d;--btn-share-hover-color: #bfc1ca;--relate-post-date: var(--text-muted-color);--card-bg: rgb(39, 40, 43);--card-border-color: rgb(53, 53, 60);--card-box-shadow: var(--main-wrapper-bg);--preview-img-bg: radial-gradient(circle, rgb(22 22 24) 0%, rgb(32 32 32) 100%);--kbd-wrap-color: #6a6a6a;--kbd-text-color: #d3d3d3;--kbd-bg-color: #242424;--tag-border: rgb(59, 79, 88);--tag-shadow: rgb(32, 33, 33);--search-tag-bg: var(--tag-bg);--dash-color: rgb(63, 65, 68);--categories-border: rgb(64, 66, 69);--categories-hover-bg: rgb(73, 75, 76);--categories-icon-hover-color: white;--timeline-node-bg: rgb(150, 152, 156);--timeline-color: rgb(63, 65, 68);--timeline-year-dot-color: var(--timeline-color);color-scheme:dark}html[mode=dark] .post img[data-src]{filter:brightness(95%)}html[mode=dark] hr{border-color:var(--main-border-color)}html[mode=dark] nav[data-toggle=toc] .nav-link.active,html[mode=dark] nav[data-toggle=toc] .nav-link.active:focus,html[mode=dark] nav[data-toggle=toc] .nav-link.active:hover,html[mode=dark] nav[data-toggle=toc] .nav>li>a:focus,html[mode=dark] nav[data-toggle=toc] .nav>li>a:hover{color:var(--toc-highlight) !important;border-left-color:var(--toc-highlight) !important}html[mode=dark] .categories.card,html[mode=dark] .list-group-item{background-color:var(--card-bg)}html[mode=dark] .categories .card-header{background-color:var(--card-header-bg)}html[mode=dark] .categories .list-group-item{border-left:none;border-right:none;padding-left:2rem;border-color:var(--categories-border)}html[mode=dark] .categories .list-group-item:last-child{border-bottom-color:var(--card-bg)}html[mode=dark] #archives li:nth-child(odd){background-image:linear-gradient(to left, #1a1a1e, #27272d, #27272d, #27272d, #1a1a1e)}html[mode=dark] #disqus_thread{color-scheme:none}@media (prefers-color-scheme: dark){html:not([mode]),html[mode=dark]{--body-bg: var(--main-wrapper-bg);--mask-bg: rgb(68, 69, 70);--main-wrapper-bg: rgb(27, 27, 30);--main-border-color: rgb(44, 45, 45);--text-color: rgb(175, 176, 177);--text-muted-color: rgb(107, 116, 124);--heading-color: #cccccc;--blockquote-border-color: rgb(66, 66, 66);--blockquote-text-color: rgb(117, 117, 117);--link-color: rgb(138, 180, 248);--link-underline-color: rgb(82, 108, 150);--button-bg: rgb(39, 40, 43);--btn-border-color: rgb(63, 65, 68);--btn-backtotop-color: var(--text-color);--btn-backtotop-border-color: var(--btn-border-color);--btn-box-shadow: var(--main-wrapper-bg);--card-header-bg: rgb(51, 50, 50);--label-color: rgb(108, 117, 125);--checkbox-color: rgb(118 120 121);--checkbox-checked-color: var(--link-color);--sidebar-bg: radial-gradient(circle, #242424 0%, #1d1f27 100%);--sidebar-muted-color: #6d6c6b;--sidebar-active-color: rgb(255 255 255 / 80%);--nav-cursor-color: rgb(183, 182, 182);--sidebar-btn-bg: rgb(117 116 116 / 20%);--topbar-text-color: var(--text-color);--topbar-wrapper-bg: rgb(39, 40, 43);--search-wrapper-bg: rgb(34, 34, 39);--search-wrapper-border-color: rgb(34, 34, 39);--search-icon-color: rgb(100, 102, 105);--input-focus-border-color: rgb(112, 114, 115);--post-list-text-color: rgb(175, 176, 177);--btn-patinator-text-color: var(--text-color);--btn-paginator-hover-color: rgb(64, 65, 66);--btn-paginator-border-color: var(--btn-border-color);--btn-text-color: var(--text-color);--pin-bg: rgb(34 35 37);--pin-color: inherit;--toc-highlight: rgb(116, 178, 243);--tag-bg: rgb(41, 40, 40);--tag-hover: rgb(43, 56, 62);--tb-odd-bg: rgba(42, 47, 53, 0.52);--tb-even-bg: rgb(31, 31, 34);--tb-border-color: var(--tb-odd-bg);--footnote-target-bg: rgb(63, 81, 181);--btn-share-color: #6c757d;--btn-share-hover-color: #bfc1ca;--relate-post-date: var(--text-muted-color);--card-bg: rgb(39, 40, 43);--card-border-color: rgb(53, 53, 60);--card-box-shadow: var(--main-wrapper-bg);--preview-img-bg: radial-gradient(circle, rgb(22 22 24) 0%, rgb(32 32 32) 100%);--kbd-wrap-color: #6a6a6a;--kbd-text-color: #d3d3d3;--kbd-bg-color: #242424;--tag-border: rgb(59, 79, 88);--tag-shadow: rgb(32, 33, 33);--search-tag-bg: var(--tag-bg);--dash-color: rgb(63, 65, 68);--categories-border: rgb(64, 66, 69);--categories-hover-bg: rgb(73, 75, 76);--categories-icon-hover-color: white;--timeline-node-bg: rgb(150, 152, 156);--timeline-color: rgb(63, 65, 68);--timeline-year-dot-color: var(--timeline-color);color-scheme:dark}html:not([mode]) .post img[data-src],html[mode=dark] .post img[data-src]{filter:brightness(95%)}html:not([mode]) hr,html[mode=dark] hr{border-color:var(--main-border-color)}html:not([mode]) nav[data-toggle=toc] .nav-link.active,html:not([mode]) nav[data-toggle=toc] .nav-link.active:focus,html:not([mode]) nav[data-toggle=toc] .nav-link.active:hover,html:not([mode]) nav[data-toggle=toc] .nav>li>a:focus,html:not([mode]) nav[data-toggle=toc] .nav>li>a:hover,html[mode=dark] nav[data-toggle=toc] .nav-link.active,html[mode=dark] nav[data-toggle=toc] .nav-link.active:focus,html[mode=dark] nav[data-toggle=toc] .nav-link.active:hover,html[mode=dark] nav[data-toggle=toc] .nav>li>a:focus,html[mode=dark] nav[data-toggle=toc] .nav>li>a:hover{color:var(--toc-highlight) !important;border-left-color:var(--toc-highlight) !important}html:not([mode]) .categories.card,html:not([mode]) .list-group-item,html[mode=dark] .categories.card,html[mode=dark] .list-group-item{background-color:var(--card-bg)}html:not([mode]) .categories .card-header,html[mode=dark] .categories .card-header{background-color:var(--card-header-bg)}html:not([mode]) .categories .list-group-item,html[mode=dark] .categories .list-group-item{border-left:none;border-right:none;padding-left:2rem;border-color:var(--categories-border)}html:not([mode]) .categories .list-group-item:last-child,html[mode=dark] .categories .list-group-item:last-child{border-bottom-color:var(--card-bg)}html:not([mode]) #archives li:nth-child(odd),html[mode=dark] #archives li:nth-child(odd){background-image:linear-gradient(to left, #1a1a1e, #27272d, #27272d, #27272d, #1a1a1e)}html:not([mode]) #disqus_thread,html[mode=dark] #disqus_thread{color-scheme:none}html[mode=light]{--body-bg: #fafafa;--mask-bg: #c1c3c5;--main-wrapper-bg: white;--main-border-color: #f3f3f3;--text-color: #34343c;--text-muted-color: gray;--heading-color: black;--blockquote-border-color: #eee;--blockquote-text-color: #9a9a9a;--link-color: #2a408e;--link-underline-color: #dee2e6;--button-bg: #fff;--btn-border-color: #e9ecef;--btn-backtotop-color: #686868;--btn-backtotop-border-color: #f1f1f1;--btn-box-shadow: #eaeaea;--checkbox-color: #c5c5c5;--checkbox-checked-color: #07a8f7;--sidebar-bg: #eeeeee;--sidebar-muted-color: #a2a19f;--sidebar-active-color: #424242;--nav-cursor-color: #757575;--sidebar-btn-bg: white;--topbar-text-color: rgb(78, 78, 78);--topbar-wrapper-bg: white;--search-wrapper-bg: rgb(245 245 245 / 50%);--search-wrapper-border-color: rgb(245 245 245);--search-tag-bg: #f8f9fa;--search-icon-color: #c2c6cc;--input-focus-border-color: var(--btn-border-color);--post-list-text-color: dimgray;--btn-patinator-text-color: #555555;--btn-paginator-hover-color: var(--sidebar-bg);--btn-paginator-border-color: var(--sidebar-bg);--btn-text-color: #676666;--pin-bg: #f5f5f5;--pin-color: #999fa4;--btn-share-hover-color: var(--link-color);--card-border-color: #f1f1f1;--card-box-shadow: rgba(234, 234, 234, 0.7686274509803922);--label-color: #616161;--relate-post-date: rgba(30, 55, 70, 0.4);--footnote-target-bg: lightcyan;--tag-bg: rgba(0, 0, 0, 0.075);--tag-border: #dee2e6;--tag-shadow: var(--btn-border-color);--tag-hover: rgb(222, 226, 230);--tb-odd-bg: #fbfcfd;--tb-border-color: #eaeaea;--dash-color: silver;--preview-img-bg: radial-gradient(circle, rgb(255 255 255) 0%, rgb(249 249 249) 100%);--kbd-wrap-color: #bdbdbd;--kbd-text-color: var(--text-color);--kbd-bg-color: white;--categories-hover-bg: var(--btn-border-color);--categories-icon-hover-color: darkslategray;--timeline-color: rgba(0, 0, 0, 0.075);--timeline-node-bg: #c2c6cc;--timeline-year-dot-color: #ffffff}}:root{font-size:16px}body{line-height:1.75rem;background:var(--body-bg);color:var(--text-color);-webkit-font-smoothing:antialiased;font-family:'Source Sans Pro', 'Microsoft Yahei', sans-serif}h1{font-size:1.9rem}h2{font-size:1.5rem}h3{font-size:1.2rem}h4{font-size:1.15rem}h5{font-size:1.1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:1rem}img{max-width:100%;height:auto}blockquote{border-left:5px solid var(--blockquote-border-color);padding-left:1rem;color:var(--blockquote-text-color)}kbd{font-family:inherit;display:inline-block;vertical-align:middle;line-height:1.3rem;min-width:1.75rem;text-align:center;margin:0 0.3rem;padding-top:0.1rem;color:var(--kbd-text-color);background-color:var(--kbd-bg-color);border-radius:0.25rem;border:solid 1px var(--kbd-wrap-color);box-shadow:inset 0 -2px 0 var(--kbd-wrap-color)}footer{position:absolute;bottom:0;padding:0 1rem;height:5rem;font-size:0.8rem}footer>div.d-flex{line-height:1.2rem;width:95%;max-width:1045px;border-top:1px solid var(--main-border-color);margin-bottom:1rem}footer>div.d-flex>div{width:350px}footer a:link{text-decoration:none}footer a:hover{text-decoration:none}footer .footer-right{text-align:right}@keyframes fade-in{from{opacity:0}to{opacity:1}}img[data-src]{margin:0.5rem 0}img[data-src][data-loaded=true]{animation:fade-in linear 0.5s}img.left[data-src]{float:left;margin:0.75rem 1rem 1rem 0}img.right[data-src]{float:right;margin:0.75rem 0 1rem 1rem}img.shadow[data-src]{filter:drop-shadow(2px 4px 6px rgba(0,0,0,0.08))}.access{top:2rem;transition:top 0.2s ease-in-out;margin-right:1.5rem;margin-top:3rem;margin-bottom:4rem}.access:only-child{position:-webkit-sticky;position:sticky}.access>div{padding-left:1rem;border-left:1px solid var(--main-border-color)}.access>div:not(:last-child){margin-bottom:4rem}.access .post-content{font-size:0.9rem}#panel-wrapper .panel-heading{color:var(--label-color);font-size:inherit;font-weight:600}#panel-wrapper .post-tag{display:inline-block;line-height:1rem;font-size:0.85rem;background:none;border:1px solid var(--btn-border-color);border-radius:0.8rem;padding:0.3rem 0.5rem;margin:0 0.35rem 0.5rem 0}#panel-wrapper .post-tag:hover{background-color:#2a408e;border-color:#2a408e;color:#fff;transition:none}#panel-wrapper.topbar-down>div{top:6rem}#access-lastmod li{height:1.8rem;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;list-style:none}#access-lastmod a{color:inherit}.footnotes>ol{padding-left:2rem;margin-top:0.5rem}.footnotes>ol>li:not(:last-child){margin-bottom:0.3rem}.footnotes>ol>li>p{margin-left:0.25em;margin-top:0;margin-bottom:0}.footnotes>ol>li:target:not([scroll-focus]),.footnotes>ol>li[scroll-focus=true]>p{background-color:var(--footnote-target-bg);width:fit-content;-webkit-transition:background-color 1.5s ease-in-out;transition:background-color 1.5s ease-in-out}a.footnote{margin-left:1px;margin-right:1px;padding-left:2px;padding-right:2px;border-bottom-style:none !important;-webkit-transition:background-color 1.5s ease-in-out;transition:background-color 1.5s ease-in-out}sup:target:not([scroll-focus]),sup[scroll-focus=true]>a.footnote{background-color:var(--footnote-target-bg)}a.reversefootnote{font-size:0.6rem;line-height:1;position:relative;bottom:0.25em;margin-left:0.25em;border-bottom-style:none !important}.table-wrapper{overflow-x:auto;margin-bottom:1.5rem}.table-wrapper>table{min-width:100%;overflow-x:auto;border-spacing:0}.table-wrapper>table thead{border-bottom:solid 2px rgba(210,215,217,0.75)}.table-wrapper>table tbody tr{border-bottom:1px solid var(--tb-border-color)}.table-wrapper>table tbody tr:nth-child(2n){background-color:var(--tb-even-bg)}.table-wrapper>table tbody tr:nth-child(2n + 1){background-color:var(--tb-odd-bg)}.post h1{margin-top:3rem;margin-bottom:1.5rem}.post a.popup{cursor:zoom-in}.post a.popup>img[data-src]:not(.normal):not(.left):not(.right){position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.pageviews .fa-spinner{font-size:80%}.post-meta{font-size:0.85rem;word-spacing:1px}.post-meta a:not(:last-child){margin-right:2px}.post-content{font-size:1.08rem;line-height:1.8;margin-top:2rem;overflow-wrap:break-word;word-wrap:break-word}.post-content a.img-link+em{display:block;text-align:center;font-style:normal;font-size:80%;padding:0;color:#6d6c6c}.post-content ul .task-list-item[hide-bullet]{list-style-type:none}.post-content ul .task-list-item[hide-bullet]>i{margin:0 0.4rem 0.2rem -1.4rem;vertical-align:middle;color:var(--checkbox-color)}.post-content ul .task-list-item[hide-bullet]>i.checked{color:var(--checkbox-checked-color)}.post-content ul input[type=checkbox]{margin:0 0.5rem 0.2rem -1.3rem;vertical-align:middle}.post-content>ol,.post-content>ul{padding-left:2rem}.post-content>ol li ol,.post-content>ol li ul,.post-content>ul li ol,.post-content>ul li ul{padding-left:2rem;margin-top:0.3rem}.post-content>ol li{padding-left:0.25em}.post-content dl>dd{margin-left:1rem}.post-tag{display:inline-block;min-width:2rem;text-align:center;background:var(--tag-bg);border-radius:0.3rem;padding:0 0.4rem;color:inherit;line-height:1.3rem}.post-tag:not(:last-child){margin-right:0.2rem}.post-tag:hover{border-bottom:none;text-decoration:none;color:#d2603a}.btn-lang{border:1px solid !important;padding:1px 3px;border-radius:3px;color:var(--link-color)}.btn-lang:focus{box-shadow:none}.loaded{display:block !important}.d-flex.loaded{display:flex !important}.unloaded{display:none !important}.visible{visibility:visible !important}.hidden{visibility:hidden !important}.flex-grow-1{-ms-flex-positive:1 !important;flex-grow:1 !important}.btn-box-shadow{box-shadow:0 0 8px 0 var(--btn-box-shadow) !important}.topbar-up{top:-3rem !important}.no-text-decoration{text-decoration:none}.tooltip-inner{font-size:0.7rem;max-width:220px;text-align:left}.disabled{color:#cec4c4;pointer-events:auto;cursor:not-allowed}.hide-border-bottom{border-bottom:none !important}.input-focus{box-shadow:none;border-color:var(--input-focus-border-color) !important;background:center !important;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out}figure .mfp-title{text-align:center;padding-right:0;margin-top:0.5rem}.mermaid{text-align:center}#sidebar{padding-left:0;padding-right:0;position:fixed;top:0;left:0;height:100%;overflow-y:auto;width:260px;z-index:99;background:var(--sidebar-bg);-ms-overflow-style:none;scrollbar-width:none}#sidebar::-webkit-scrollbar{display:none}#sidebar a:hover{text-decoration:none;color:var(--sidebar-active-color) !important}#sidebar #avatar>a{display:block;width:6rem;height:6rem;border-radius:50%;border:2px solid rgba(222,222,222,0.7);overflow:hidden;transform:translateZ(0);-webkit-transition:border-color 0.35s ease-in-out;-moz-transition:border-color 0.35s ease-in-out;transition:border-color 0.35s ease-in-out}#sidebar #avatar>a:hover{border-color:white}#sidebar #avatar img{width:100%;height:100%;-webkit-transition:transform 0.5s;-moz-transition:transform 0.5s;transition:transform 0.5s}#sidebar #avatar img:hover{-ms-transform:scale(1.2);-moz-transform:scale(1.2);-webkit-transform:scale(1.2);transform:scale(1.2)}#sidebar .site-title a{font-weight:900;font-size:1.5rem;letter-spacing:0.5px;color:#868585}#sidebar .site-subtitle{font-size:95%;color:var(--sidebar-muted-color);line-height:1.2rem;word-spacing:1px;margin:0.5rem 1.5rem 0.5rem 1.5rem;min-height:3rem;user-select:none}#sidebar .nav-link{border-radius:0;font-size:0.95rem;font-weight:600;letter-spacing:1px;display:table-cell;vertical-align:middle}#sidebar .nav-item{text-align:center;display:table;height:3rem}#sidebar .nav-item.active .nav-link{color:var(--sidebar-active-color)}#sidebar ul{height:12rem;margin-bottom:2rem;padding-left:0}#sidebar ul li{width:100%}#sidebar ul li:last-child a{position:relative;left:1px;width:100%}#sidebar ul li:last-child::after{display:table;visibility:hidden;content:"";position:relative;right:1px;width:2px;height:1.6rem;border-radius:1px;background-color:var(--nav-cursor-color);pointer-events:none}#sidebar ul>li.active:nth-child(1)~li:last-child::after,#sidebar ul>li.nav-item:nth-child(1):hover~li:last-child::after{top:-8.3rem;visibility:visible}#sidebar ul>li.active:nth-child(2)~li:last-child::after,#sidebar ul>li.nav-item:nth-child(2):hover~li:last-child::after{top:-5.3rem;visibility:visible}#sidebar ul>li.active:nth-child(3)~li:last-child::after,#sidebar ul>li.nav-item:nth-child(3):hover~li:last-child::after{top:-2.3rem;visibility:visible}#sidebar ul>li.active:nth-child(4):last-child::after,#sidebar ul>li.nav-item:nth-child(4):last-child:hover::after{top:.7rem;visibility:visible}#sidebar .sidebar-bottom{margin-bottom:2.1rem;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}#sidebar .sidebar-bottom .mode-toggle,#sidebar .sidebar-bottom a{width:2.4rem;text-align:center}#sidebar .sidebar-bottom i{font-size:1.2rem;line-height:1.75rem}#sidebar .sidebar-bottom .mode-toggle{padding:0;border:0;margin-bottom:1px;background-color:transparent}#sidebar .sidebar-bottom .mode-toggle:hover>i{color:var(--sidebar-active-color)}#sidebar .sidebar-bottom .icon-border{background-color:var(--sidebar-muted-color);content:"";width:3px;height:3px;border-radius:50%}@media (hover: hover){#sidebar ul>li:last-child::after{-webkit-transition:top 0.5s ease;-moz-transition:top 0.5s ease;-o-transition:top 0.5s ease;transition:top 0.5s ease}}.profile-wrapper{margin-top:2rem;width:100%}#search-result-wrapper{display:none;height:100%;overflow:auto}#search-result-wrapper .post-content{margin-top:2rem}#topbar-wrapper{height:3rem;position:fixed;top:0;left:260px;right:0;transition:top 0.2s ease-in-out;z-index:50;border-bottom:1px solid rgba(0,0,0,0.07);background-color:var(--topbar-wrapper-bg)}#topbar i{color:#999}#topbar #breadcrumb{font-size:1rem;color:gray;padding-left:0.5rem}#topbar #breadcrumb span:not(:last-child)::after{content:"›";padding:0 0.3rem}#sidebar-trigger,#search-trigger{display:none}#search-wrapper{display:flex;width:85%;border-radius:1rem;border:1px solid var(--search-wrapper-border-color);background:var(--search-wrapper-bg);padding:0 0.5rem}#search-wrapper i{z-index:2;font-size:0.9rem;color:var(--search-icon-color)}#search-wrapper .fa-times-circle{visibility:hidden}#search-cancel{color:var(--link-color);margin-left:1rem;display:none}#search-input{background:center;border:0;border-radius:0;padding:0.18rem 0.3rem;color:var(--text-color)}#search-input:focus{box-shadow:none;background:center}#search-input.form-control:focus::-webkit-input-placeholder{opacity:0.6}#search-input.form-control:focus::-moz-placeholder{opacity:0.6}#search-input.form-control:focus:-ms-input-placeholder{opacity:0.6}#search-input.form-control:focus::placeholder{opacity:0.6}#search-hints{padding:0 1rem}#search-hints h4{margin-bottom:1.5rem}#search-hints .post-tag{display:inline-block;line-height:1rem;font-size:1rem;background:var(--search-tag-bg);border:none;padding:0.5rem;margin:0 1.25rem 1rem 0}#search-hints .post-tag::before{content:"#";color:var(--text-muted-color);padding-right:0.2rem}#search-results{padding-bottom:6rem}#search-results a{font-size:1.4rem;line-height:2.5rem}#search-results>div{width:100%}#search-results>div:not(:last-child){margin-bottom:1rem}#search-results>div i{color:#818182;margin-right:0.15rem;font-size:80%}#search-results>div>p{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}#topbar-title{display:none;font-size:1.1rem;font-weight:600;font-family:sans-serif;color:var(--topbar-text-color);text-align:center;width:70%;overflow:hidden;text-overflow:ellipsis;word-break:keep-all;white-space:nowrap}#core-wrapper{min-height:calc(100vh - 3rem - 5rem - 35rem) !important}#mask{display:none;position:fixed;top:0;right:0;bottom:0;left:0;height:100%;width:100%;z-index:1}[sidebar-display] #mask{display:block !important}#main-wrapper{background-color:var(--main-wrapper-bg);position:relative;min-height:100vh;padding-bottom:5rem;padding-left:0;padding-right:0}#main .row:first-child>div:nth-child(1),#main .row:first-child>div:nth-child(2){margin-top:3rem}#main .row:first-child>div:first-child{min-height:calc(100vh - 3rem - 5rem - 35rem)}#main div.row:first-of-type:last-of-type{margin-bottom:4rem}#topbar-wrapper.row,#main>.row,#search-result-wrapper>.row{margin-left:0;margin-right:0}#back-to-top{display:none;z-index:1;cursor:pointer;position:fixed;background:var(--button-bg);color:var(--btn-backtotop-color);padding:0;width:2.7em;height:2.7em;border-radius:50%;border:1px solid var(--btn-backtotop-border-color);transition:transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out}#back-to-top i{line-height:2.7em;position:relative;bottom:2px}#back-to-top:hover{transform:translate3d(0, -5px, 0);-webkit-transform:translate3d(0, -5px, 0)}@media all and (max-width: 576px){#main>div.row:first-child>div:first-child{min-height:calc(100vh - 3rem - 6rem)}#core-wrapper{min-height:calc(100vh - 3rem - 6rem - 35rem) !important}#core-wrapper h1{margin-top:2.2rem;font-size:1.75rem}#avatar>a{width:5rem;height:5rem}.site-subtitle{margin-left:1.8rem;margin-right:1.8rem}#main-wrapper{padding-bottom:6rem}footer{height:6rem}footer>div.d-flex{width:100%;padding:1.5rem 0;margin-bottom:0.3rem;flex-wrap:wrap;-ms-flex-pack:distribute !important;justify-content:space-around !important}footer .footer-left,footer .footer-right{text-align:center}}@media all and (max-width: 849px){#topbar-wrapper,#main-wrapper,#sidebar{-webkit-transition:transform 0.4s ease;transition:transform 0.4s ease}html,body{overflow-x:hidden}.footnotes ol>li{padding-top:3.5rem;margin-top:-3.2rem}.footnotes ol>li:first-child{margin-top:-3.5rem}[sidebar-display] #sidebar{transform:translateX(0)}[sidebar-display] #topbar-wrapper,[sidebar-display] #main-wrapper{transform:translateX(260px)}#sidebar{transform:translateX(-260px);-webkit-transform:translateX(-260px)}#sidebar .cursor{-webkit-transition:none;-moz-transition:none;transition:none}#main-wrapper{padding-top:3rem}#search-result-wrapper{width:100%}#breadcrumb,#search-wrapper{display:none}#topbar-wrapper{left:0}.topbar-up{top:0 !important}#main>div.row:first-child>div:nth-child(1),#main>div.row:first-child>div:nth-child(2){margin-top:0}#topbar-title,#sidebar-trigger,#search-trigger{display:block}#search-wrapper.loaded~a{margin-right:1rem}#search-wrapper .fa-times-circle{right:5.2rem}#search-input{margin-left:0;width:95%}#search-result-wrapper .post-content{letter-spacing:0}#tags{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}h1.dynamic-title{display:none}h1.dynamic-title~.post-content{margin-top:3rem}}@media all and (min-width: 577px) and (max-width: 1199px){footer>.d-flex>div{width:312px}}@media all and (min-width: 850px){html{overflow-y:scroll}#main-wrapper{margin-left:260px}.profile-wrapper{margin-top:3rem}#search-wrapper{width:22%;min-width:150px}#search-hints{display:none}#search-result-wrapper{margin-top:3rem}div.post-content .table-wrapper>table{min-width:70%}#back-to-top{bottom:5.5rem;right:1.2rem}.topbar-up{box-shadow:none !important}#topbar-title{text-align:left}footer>div.d-flex{width:92%}}@media all and (min-width: 992px) and (max-width: 1199px){#main .col-lg-11{-webkit-box-flex:0;-ms-flex:0 0 96%;flex:0 0 96%;max-width:96%}}@media all and (min-width: 850px) and (max-width: 1199px){#sidebar{width:210px}#sidebar .site-subtitle{margin-left:1rem;margin-right:1rem}#sidebar .sidebar-bottom a,#sidebar .sidebar-bottom span{width:2rem}#sidebar .sidebar-bottom .icon-border{left:-3px}#topbar-wrapper{left:210px}#search-results>div{max-width:700px}.site-title{font-size:1.3rem;margin-left:0 !important}.site-subtitle{margin-left:1rem;margin-right:1rem;font-size:90%}#main-wrapper{margin-left:210px}#breadcrumb{width:65%;overflow:hidden;text-overflow:ellipsis;word-break:keep-all;white-space:nowrap}}@media all and (max-width: 1199px){#panel-wrapper{display:none}#topbar{padding:0}#main>div.row{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}}@media all and (min-width: 1200px){#main>div.row>div.col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%;padding-left:3%}#topbar{padding:0;max-width:1070px}#panel-wrapper{max-width:300px}#back-to-top{bottom:6.5rem;right:4.3rem}#search-input{-webkit-transition:all 0.3s ease-in-out;transition:all 0.3s ease-in-out}#search-results>div{width:46%}#search-results>div:nth-child(odd){margin-right:1.5rem}#search-results>div:nth-child(even){margin-left:1.5rem}#search-results>div:last-child:nth-child(odd){position:relative;right:24.3%}.post-content{font-size:1.03rem}footer>div.d-felx{width:85%}}@media all and (min-width: 1400px){#main>div.row{padding-left:calc((100% - 1150px) / 2)}#main>div.row>div.col-xl-8{max-width:850px}#search-result-wrapper{padding-right:2rem}#search-result-wrapper>div{max-width:1110px}#search-wrapper .fa-times-circle{right:2.6rem}}@media all and (min-width: 1400px) and (max-width: 1650px){#topbar{padding-right:2rem}}@media all and (min-width: 1650px){#breadcrumb{padding-left:0}#main>div.row>div.col-xl-8{padding-left:0}#main>div.row>div.col-xl-8>div:first-child{padding-left:0.55rem !important;padding-right:1.9rem !important}#main-wrapper{margin-left:350px}#panel-wrapper{margin-left:calc((100% - 1150px) / 10)}#topbar-wrapper{left:350px}#topbar{max-width:1150px}#search-wrapper{margin-right:3%}#sidebar{width:350px}#sidebar .profile-wrapper{margin-top:4rem;margin-bottom:1rem}#sidebar .profile-wrapper.text-center{text-align:left !important}#sidebar .profile-wrapper .site-subtitle,#sidebar .profile-wrapper .site-title,#sidebar .profile-wrapper #avatar{margin-left:4.5rem}#sidebar .profile-wrapper #avatar>a{width:6.2rem;height:6.2rem}#sidebar .profile-wrapper #avatar>a.mx-auto{margin-left:0 !important}#sidebar .profile-wrapper .site-title a{font-size:1.7rem;letter-spacing:1px}#sidebar .profile-wrapper .site-subtitle{word-spacing:0;margin-top:0.3rem}#sidebar ul{padding-left:2.5rem}#sidebar ul>li:last-child>a{position:static}#sidebar ul .nav-item{text-align:left}#sidebar ul .nav-item .nav-link>span{letter-spacing:2px}#sidebar ul .nav-item .nav-link>i.unloaded{display:inline-block !important}#sidebar .sidebar-bottom{padding-left:3.5rem;width:100%}#sidebar .sidebar-bottom.justify-content-center{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}#sidebar .sidebar-bottom>span,#sidebar .sidebar-bottom>button.mode-toggle,#sidebar .sidebar-bottom>a{margin-left:.15rem;margin-right:.15rem;height:2rem;margin-bottom:0.5rem}#sidebar .sidebar-bottom i{background-color:var(--sidebar-btn-bg);font-size:1rem;width:2rem;height:2rem;border-radius:50%;position:relative}#sidebar .sidebar-bottom i::before{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}#sidebar .sidebar-bottom .icon-border{top:0.9rem}footer>div.d-flex{width:92%;max-width:1140px}#search-result-wrapper>div{max-width:1150px}}@media all and (min-width: 1700px){#topbar-wrapper{padding-right:calc(100% - 350px - (1920px - 350px))}#topbar{max-width:calc(1150px + 20px)}#main>div.row{padding-left:calc((100% - 1150px - 2%) / 2)}#panel-wrapper{margin-left:3%}footer{padding-left:0;padding-right:calc(100% - 350px - 1180px)}#back-to-top{right:calc(100% - 1920px + 15rem)}}@media (min-width: 1920px){#main>div.row{padding-left:190px}#search-result-wrapper{padding-right:calc(100% - 350px - 1180px)}#panel-wrapper{margin-left:41px}}.pagination{color:var(--btn-patinator-text-color);font-family:'Lato', sans-serif}.pagination a:hover{text-decoration:none}.pagination .page-item .page-link{color:inherit;width:2.5rem;height:2.5rem;padding:0;display:-webkit-box;-webkit-box-pack:center;-webkit-box-align:center;border-radius:50%;border:1px solid var(--btn-paginator-border-color);background-color:var(--button-bg)}.pagination .page-item .page-link:hover{background-color:var(--btn-paginator-hover-color)}.pagination .page-item.active .page-link{background-color:var(--btn-paginator-hover-color);color:var(--btn-text-color)}.pagination .page-item.disabled{cursor:not-allowed}.pagination .page-item.disabled .page-link{color:rgba(108,117,125,0.57);border-color:var(--btn-paginator-border-color);background-color:var(--button-bg)}.pagination .page-item:first-child .page-link,.pagination .page-item:last-child .page-link{border-radius:50%}#post-list{margin-top:1rem;padding-right:0.5rem}#post-list .post-preview{padding-top:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--main-border-color)}#post-list .post-preview h1{font-size:1.4rem;margin:0}#post-list .post-preview .post-meta i{font-size:0.73rem}#post-list .post-preview .post-meta i:not(:first-child){margin-left:1.2rem}#post-list .post-preview .post-content{margin-top:0.6rem;margin-bottom:0.6rem;color:var(--post-list-text-color)}#post-list .post-preview .post-content>p{margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}#post-list .post-preview .pin>i{transform:rotate(45deg);padding-left:3px;color:var(--pin-color)}#post-list .post-preview .pin>span{display:none}@media all and (max-width: 830px){.pagination{justify-content:space-evenly}.pagination .page-item:not(:first-child):not(:last-child){display:none}}@media all and (min-width: 831px){#post-list{margin-top:1.5rem}#post-list .post-preview .post-meta .pin{background:var(--pin-bg);border-radius:5px;line-height:1.4rem;height:1.3rem;margin-top:3px;padding-left:1px;padding-right:6px}#post-list .post-preview .post-meta .pin>span{display:inline}.pagination{font-size:0.85rem}.pagination .page-item:not(:last-child){margin-right:0.7rem}.pagination .page-item .page-link{width:2rem;height:2rem}.pagination .page-index{display:none}}@media all and (max-width: 1200px){#post-list{padding-right:0}}#related-posts .card h3,h1+.post-meta em a,h1+.post-meta em,footer a{color:var(--text-color)}h1+.post-meta span+span::before{content:"\2022";padding-left:.25rem;padding-right:.25rem}img.preview-img{margin-top:3.75rem;margin-bottom:0;border-radius:6px}img.preview-img.bg[data-loaded=true]{background:var(--preview-img-bg)}.post-tail-wrapper{margin-top:6rem;border-bottom:1px double var(--main-border-color);font-size:0.85rem}.post-tags{line-height:2rem}.post-navigation{padding-top:3rem;padding-bottom:4rem}.post-navigation .btn{width:50%;position:relative;border-color:var(--btn-border-color);color:var(--link-color)}.post-navigation .btn:hover{background:#2a408e;color:#fff;border-color:#2a408e}.post-navigation .btn.disabled{width:50%;position:relative;border-color:var(--btn-border-color);pointer-events:auto;cursor:not-allowed;background:none;color:gray}.post-navigation .btn.disabled:hover{border-color:none}.post-navigation .btn.btn-outline-primary.disabled:focus{box-shadow:none}.post-navigation .btn::before{color:var(--text-muted-color);font-size:0.65rem;text-transform:uppercase;content:attr(prompt)}.post-navigation .btn:first-child{border-top-right-radius:0;border-bottom-right-radius:0;left:0.5px}.post-navigation .btn:last-child{border-top-left-radius:0;border-bottom-left-radius:0;right:0.5px}.post-navigation p{font-size:1.1rem;line-height:1.5rem;margin-top:0.3rem;white-space:normal}@keyframes fade-up{from{opacity:0;position:relative;top:2rem}to{opacity:1;position:relative;top:0}}#toc-wrapper{border-left:1px solid rgba(158,158,158,0.17);position:-webkit-sticky;position:sticky;top:4rem;transition:top 0.2s ease-in-out;animation:fade-up 0.8s}#toc li a{font-size:0.8rem}#toc li a.nav-link:not(.active){color:inherit}nav[data-toggle=toc] .nav .nav>li>a.active{font-weight:600 !important}#related-posts>h3{color:var(--label-color);font-size:1.1rem;font-weight:600}#related-posts .card{border-color:var(--card-border-color);background-color:var(--card-bg);box-shadow:0 0 5px 0 var(--card-box-shadow);-webkit-transition:all 0.3s ease-in-out;-moz-transition:all 0.3s ease-in-out;transition:all 0.3s ease-in-out}#related-posts .card:hover{-webkit-transform:translate3d(0, -3px, 0);transform:translate3d(0, -3px, 0);box-shadow:0 10px 15px -4px rgba(0,0,0,0.15)}#related-posts .timeago{color:var(--relate-post-date)}#related-posts p{font-size:0.9rem;margin-bottom:0.5rem;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}#related-posts a:hover{text-decoration:none}#related-posts ul{list-style-type:none;padding-inline-start:1.5rem}#related-posts ul>li::before{background:#c2c9d4;width:5px;height:5px;border-radius:1px;display:block;content:"";position:relative;top:1rem;right:1rem}#tail-wrapper{min-height:2rem}#tail-wrapper>div:last-of-type{margin-bottom:2rem}#tail-wrapper #disqus_thread{min-height:8.5rem}.post-tail-bottom a{color:inherit}.share-wrapper .share-icons>i:hover,.share-wrapper .share-icons a:hover>i{color:var(--btn-share-hover-color) !important}.share-wrapper{vertical-align:middle;user-select:none}.share-wrapper .share-icons{font-size:1.2rem}.share-wrapper .share-icons a:not(:last-child){margin-right:0.25rem}.share-wrapper .share-icons a:hover{text-decoration:none}.share-wrapper .share-icons>i{position:relative;bottom:1px}.share-wrapper .share-icons .fab.fa-twitter{color:var(--btn-share-color, #1da1f2)}.share-wrapper .share-icons .fab.fa-facebook-square{color:var(--btn-share-color, #425f9c)}.share-wrapper .share-icons .fab.fa-telegram{color:var(--btn-share-color, #279fd9)}.share-wrapper .share-icons .fab.fa-weibo{color:var(--btn-share-color, #e5142b)}.share-wrapper .fas.fa-link{color:var(--btn-share-color, #ababab)}.share-label{color:inherit;font-size:inherit;font-weight:400}.share-label::after{content:":"}.license-wrapper{line-height:1.2rem}.license-wrapper>a{color:var(--text-color)}.license-wrapper span:last-child{font-size:0.85rem}@media all and (max-width: 576px){.preview-img[data-src]{margin-top:2.2rem}.post-tail-bottom{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.post-tail-bottom>div:first-child{width:100%;margin-top:1rem}}@media all and (max-width: 768px){.post-content>p>img{max-width:calc(100% + 1rem)}}@media all and (max-width: 849px){.post-navigation{padding-left:0;padding-right:0;margin-left:-0.5rem;margin-right:-0.5rem}.preview-img[data-src]{max-width:100vw;border-radius:0}}.tag{border-radius:0.7em;padding:6px 8px 7px;margin-right:0.8rem;line-height:3rem;letter-spacing:0;border:1px solid var(--tag-border) !important;box-shadow:0 0 3px 0 var(--tag-shadow)}.tag span{margin-left:0.6em;font-size:0.7em;font-family:'Oswald', sans-serif}#archives ul li:first-child::before,#archives ul li::after{content:"";width:4px;left:75px;display:inline-block;float:left;position:relative;background-color:var(--timeline-color)}#archives{letter-spacing:0.03rem}#archives span.lead{font-size:1.5rem;position:relative;left:8px}#archives span.lead::after{content:"";display:block;position:relative;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;width:12px;height:12px;top:-26px;left:63px;border:3px solid;background-color:var(--timeline-year-dot-color);border-color:var(--timeline-node-bg);box-shadow:0 0 2px 0 #c2c6cc;z-index:1}#archives span.lead:not(:first-child){position:relative;left:4px}#archives span.lead:not(:first-child)::after{left:67px}#archives ul li{font-size:1.1rem;line-height:3rem}#archives ul li div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#archives ul li div a{margin-left:2.5rem;position:relative;top:0.1rem}#archives ul li:nth-child(odd){background-color:var(--main-wrapper-bg, #fff);background-image:linear-gradient(to left, #fff, #fbfbfb, #fbfbfb, #fbfbfb, #fff)}#archives ul li::after{height:2.8rem;top:-1.3rem}#archives ul li:first-child::before{height:3.06rem;top:-1.61rem}#archives ul:not(:last-child)>li:last-child::after{height:3.4rem}#archives ul:last-child>li:last-child::after{display:none}#archives .date{white-space:nowrap;display:inline-block}#archives .date.month{width:1.4rem;text-align:center}#archives .date.month~a::before{content:"";display:inline-block;position:relative;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;width:8px;height:8px;float:left;top:1.35rem;left:69px;background-color:var(--timeline-node-bg);box-shadow:0 0 3px 0 #c2c6cc;z-index:1}#archives .date.day{font-size:85%;font-family:'Lato', sans-serif;text-align:center;margin-right:-2px;width:1.2rem;position:relative;left:-0.15rem}@media all and (max-width: 576px){#archives{margin-top:-1rem}#archives ul{letter-spacing:0}}.categories i{color:gray}.categories{margin-bottom:2rem}.categories .card-header{padding-right:12px}.categories i{font-size:86%}.categories .list-group-item{border-left:none;border-right:none;padding-left:2rem}.categories .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.category-trigger{width:1.7rem;height:1.7rem;border-radius:50%;text-align:center;color:#6c757d !important}.category-trigger:hover i{color:var(--categories-icon-hover-color)}.category-trigger i{position:relative;height:0.7rem;width:1rem;transition:transform 300ms ease}@media (hover: hover){.category-trigger:hover{background-color:var(--categories-hover-bg)}}.rotate{-ms-transform:rotate(-90deg);-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.dash{margin:0 0.5rem 0.6rem 0.5rem;border-bottom:2px dotted var(--dash-color)}#page-category ul>li,#page-tag ul>li{line-height:1.5rem;padding:0.6rem 0}#page-category ul>li::before,#page-tag ul>li::before{background:#999;width:5px;height:5px;border-radius:50%;display:block;content:"";position:relative;top:0.6rem;margin-right:0.5rem}#page-category ul>li>a,#page-tag ul>li>a{font-size:1.1rem}#page-category ul>li>span:last-child,#page-tag ul>li>span:last-child{white-space:nowrap}#page-tag h1>i{font-size:1.2rem}#page-category h1>i{font-size:1.25rem}#page-category a:hover,#page-tag a:hover,#access-lastmod a:hover{margin-bottom:-1px}@media all and (max-width: 576px){#page-category ul>li::before,#page-tag ul>li::before{margin:0 0.5rem}#page-category ul>li>a,#page-tag ul>li>a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}} + +/*# sourceMappingURL=style.css.map */ \ No newline at end of file diff --git a/assets/css/style.css.map b/assets/css/style.css.map new file mode 100644 index 0000000..436af38 --- /dev/null +++ b/assets/css/style.css.map @@ -0,0 +1,44 @@ +{ + "version": 3, + "file": "style.css", + "sources": [ + "style.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/jekyll-theme-chirpy.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/colors/light-typography.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/colors/dark-typography.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/addon/module.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/addon/variables.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/variables-hook.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/addon/syntax.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/colors/light-syntax.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/colors/dark-syntax.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/addon/commons.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/layout/home.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/layout/post.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/layout/tags.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/layout/archives.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/layout/categories.scss", + "vendor/bundle/ruby/2.7.0/gems/jekyll-theme-chirpy-5.0.2/_sass/layout/category-tag.scss" + ], + "sourcesContent": [ + "/*\n If the number of TAB files has changed, the following variable is required.\n And it must be defined before `@import`.\n*/\n$tab-count: 4; // plus 1 for home tab\n\n@import \"jekyll-theme-chirpy\";\n\n/* append your custom style below */\n", + "/*!\n * The styles for Jekyll theme Chirpy\n *\n * Chirpy v5.0.2 (https://github.com/cotes2020/jekyll-theme-chirpy)\n * © 2019 Cotes Chung\n * MIT Licensed\n */\n\n@import\n \"colors/light-typography\",\n \"colors/dark-typography\",\n\n \"addon/module\",\n \"addon/variables\",\n \"variables-hook\",\n \"addon/syntax\",\n \"addon/commons\",\n\n \"layout/home\",\n \"layout/post\",\n \"layout/tags\",\n \"layout/archives\",\n \"layout/categories\",\n \"layout/category-tag\";\n", + "/*\n * The syntax light mode typography colors\n */\n\n@mixin light-scheme {\n /* Framework color */\n --body-bg: #fafafa;\n --mask-bg: #c1c3c5;\n --main-wrapper-bg: white;\n --main-border-color: #f3f3f3;\n\n /* Common color */\n --text-color: #34343c;\n --text-muted-color: gray;\n --heading-color: black;\n --blockquote-border-color: #eee;\n --blockquote-text-color: #9a9a9a;\n --link-color: #2a408e;\n --link-underline-color: #dee2e6;\n --button-bg: #fff;\n --btn-border-color: #e9ecef;\n --btn-backtotop-color: #686868;\n --btn-backtotop-border-color: #f1f1f1;\n --btn-box-shadow: #eaeaea;\n --checkbox-color: #c5c5c5;\n --checkbox-checked-color: #07a8f7;\n\n /* Sidebar */\n --sidebar-bg: #eeeeee;\n --sidebar-muted-color: #a2a19f;\n --sidebar-active-color: #424242;\n --nav-cursor-color: #757575;\n --sidebar-btn-bg: white;\n\n /* Topbar */\n --topbar-text-color: rgb(78, 78, 78);\n --topbar-wrapper-bg: white;\n --search-wrapper-bg: rgb(245 245 245 / 50%);\n --search-wrapper-border-color: rgb(245 245 245);\n --search-tag-bg: #f8f9fa;\n --search-icon-color: #c2c6cc;\n --input-focus-border-color: var(--btn-border-color);\n\n /* Home page */\n --post-list-text-color: dimgray;\n --btn-patinator-text-color: #555555;\n --btn-paginator-hover-color: var(--sidebar-bg);\n --btn-paginator-border-color: var(--sidebar-bg);\n --btn-text-color: #676666;\n --pin-bg: #f5f5f5;\n --pin-color: #999fa4;\n\n /* Posts */\n --btn-share-hover-color: var(--link-color);\n --card-border-color: #f1f1f1;\n --card-box-shadow: rgba(234, 234, 234, 0.7686274509803922);\n --label-color: #616161;\n --relate-post-date: rgba(30, 55, 70, 0.4);\n --footnote-target-bg: lightcyan;\n --tag-bg: rgba(0, 0, 0, 0.075);\n --tag-border: #dee2e6;\n --tag-shadow: var(--btn-border-color);\n --tag-hover: rgb(222, 226, 230);\n --tb-odd-bg: #fbfcfd;\n --tb-border-color: #eaeaea;\n --dash-color: silver;\n --preview-img-bg: radial-gradient(circle, rgb(255 255 255) 0%, rgb(249 249 249) 100%);\n --kbd-wrap-color: #bdbdbd;\n --kbd-text-color: var(--text-color);\n --kbd-bg-color: white;\n\n /* Categories */\n --categories-hover-bg: var(--btn-border-color);\n --categories-icon-hover-color: darkslategray;\n\n /* Archive */\n --timeline-color: rgba(0, 0, 0, 0.075);\n --timeline-node-bg: #c2c6cc;\n --timeline-year-dot-color: #ffffff;\n\n} // light-scheme\n", + "/*\n * The main dark mode styles\n */\n\n@mixin dark-scheme {\n /* Framework color */\n --body-bg: var(--main-wrapper-bg);\n --mask-bg: rgb(68, 69, 70);\n --main-wrapper-bg: rgb(27, 27, 30);\n --main-border-color: rgb(44, 45, 45);\n\n /* Common color */\n --text-color: rgb(175, 176, 177);\n --text-muted-color: rgb(107, 116, 124);\n --heading-color: #cccccc;\n --blockquote-border-color: rgb(66, 66, 66);\n --blockquote-text-color: rgb(117, 117, 117);\n --link-color: rgb(138, 180, 248);\n --link-underline-color: rgb(82, 108, 150);\n --button-bg: rgb(39, 40, 43);\n --btn-border-color: rgb(63, 65, 68);\n --btn-backtotop-color: var(--text-color);\n --btn-backtotop-border-color: var(--btn-border-color);\n --btn-box-shadow: var(--main-wrapper-bg);\n --card-header-bg: rgb(51, 50, 50);\n --label-color: rgb(108, 117, 125);\n --checkbox-color: rgb(118 120 121);\n --checkbox-checked-color: var(--link-color);\n\n /* Sidebar */\n --sidebar-bg: radial-gradient(circle, #242424 0%, #1d1f27 100%);\n --sidebar-muted-color: #6d6c6b;\n --sidebar-active-color: rgb(255 255 255 / 80%);\n --nav-cursor-color: rgb(183, 182, 182);\n --sidebar-btn-bg: rgb(117 116 116 / 20%);\n\n /* Topbar */\n --topbar-text-color: var(--text-color);\n --topbar-wrapper-bg: rgb(39, 40, 43);\n --search-wrapper-bg: rgb(34, 34, 39);\n --search-wrapper-border-color: rgb(34, 34, 39);\n --search-icon-color: rgb(100, 102, 105);\n --input-focus-border-color: rgb(112, 114, 115);\n\n /* Home page */\n --post-list-text-color: rgb(175, 176, 177);\n --btn-patinator-text-color: var(--text-color);\n --btn-paginator-hover-color: rgb(64, 65, 66);\n --btn-paginator-border-color: var(--btn-border-color);\n --btn-text-color: var(--text-color);\n --pin-bg: rgb(34 35 37);\n --pin-color: inherit;\n\n /* Posts */\n --toc-highlight: rgb(116, 178, 243);\n --tag-bg: rgb(41, 40, 40);\n --tag-hover: rgb(43, 56, 62);\n --tb-odd-bg: rgba(42, 47, 53, 0.52); /* odd rows of the posts' table */\n --tb-even-bg: rgb(31, 31, 34); /* even rows of the posts' table */\n --tb-border-color: var(--tb-odd-bg);\n --footnote-target-bg: rgb(63, 81, 181);\n --btn-share-color: #6c757d;\n --btn-share-hover-color: #bfc1ca;\n --relate-post-date: var(--text-muted-color);\n --card-bg: rgb(39, 40, 43);\n --card-border-color: rgb(53, 53, 60);\n --card-box-shadow: var(--main-wrapper-bg);\n --preview-img-bg: radial-gradient(circle, rgb(22 22 24) 0%, rgb(32 32 32) 100%);\n --kbd-wrap-color: #6a6a6a;\n --kbd-text-color: #d3d3d3;\n --kbd-bg-color: #242424;\n\n /* tags */\n --tag-border: rgb(59, 79, 88);\n --tag-shadow: rgb(32, 33, 33);\n --search-tag-bg: var(--tag-bg);\n --dash-color: rgb(63, 65, 68);\n\n /* categories */\n --categories-border: rgb(64, 66, 69);\n --categories-hover-bg: rgb(73, 75, 76);\n --categories-icon-hover-color: white;\n\n /* archives */\n --timeline-node-bg: rgb(150, 152, 156);\n --timeline-color: rgb(63, 65, 68);\n --timeline-year-dot-color: var(--timeline-color);\n\n .post img[data-src] {\n filter: brightness(95%);\n }\n\n hr {\n border-color: var(--main-border-color);\n }\n\n /* posts' toc, override BS */\n nav[data-toggle=toc] .nav-link.active,\n nav[data-toggle=toc] .nav-link.active:focus,\n nav[data-toggle=toc] .nav-link.active:hover,\n nav[data-toggle=toc] .nav > li > a:focus,\n nav[data-toggle=toc] .nav > li > a:hover {\n color: var(--toc-highlight) !important;\n border-left-color: var(--toc-highlight) !important;\n }\n\n /* categories */\n .categories.card,\n .list-group-item {\n background-color: var(--card-bg);\n }\n\n .categories {\n .card-header {\n background-color: var(--card-header-bg);\n }\n\n .list-group-item {\n border-left: none;\n border-right: none;\n padding-left: 2rem;\n border-color: var(--categories-border);\n\n &:last-child {\n border-bottom-color: var(--card-bg);\n }\n }\n }\n\n #archives li:nth-child(odd) {\n background-image:\n linear-gradient(\n to left,\n rgb(26, 26, 30),\n rgb(39, 39, 45),\n rgb(39, 39, 45),\n rgb(39, 39, 45),\n rgb(26, 26, 30)\n );\n }\n\n color-scheme: dark;\n\n #disqus_thread {\n color-scheme: none;\n }\n\n} // dark-scheme\n", + "/*\n* Mainly scss modules, only imported to `assets/css/main.scss`\n*/\n\n/* ---------- scss placeholder --------- */\n\n%heading {\n color: var(--heading-color);\n font-weight: 400;\n font-family: 'Lato', 'Microsoft Yahei', sans-serif;\n}\n\n%section {\n #core-wrapper & {\n margin-top: 2.5rem;\n margin-bottom: 2rem;\n }\n}\n\n%anchor {\n .anchor {\n font-size: 1rem;\n margin-left: 0.5rem;\n }\n\n @media (hover: hover) {\n .anchor {\n border-bottom: none !important;\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.25s ease-in, visibility 0s ease-in 0.25s;\n }\n\n &:hover {\n .anchor {\n visibility: visible;\n opacity: 1;\n transition: opacity 0.25s ease-in, visibility 0s ease-in 0s;\n }\n }\n }\n}\n\n%anchor-relative {\n @extend %anchor;\n\n .anchor {\n position: relative;\n bottom: 1px;\n }\n}\n\n%tag-hover {\n background: var(--tag-hover);\n transition: background 0.35s ease-in-out;\n}\n\n%table-cell {\n padding: 0.4rem 1rem;\n font-size: 95%;\n white-space: nowrap;\n}\n\n%link-hover {\n color: #d2603a !important;\n border-bottom: 1px solid #d2603a;\n text-decoration: none;\n}\n\n%link-color {\n color: var(--link-color);\n}\n\n%link-underline {\n border-bottom: 1px solid var(--link-underline-color);\n}\n\n%clickable-transition {\n transition: color 0.35s ease-in-out;\n}\n\n%no-cursor {\n user-select: none;\n}\n\n%no-bottom-border {\n border-bottom: none;\n}\n\n%cursor-pointer {\n cursor: pointer;\n}\n\n%normal-font-style {\n font-style: normal;\n}\n\n/* ---------- scss mixin --------- */\n\n@mixin no-text-decoration {\n text-decoration: none;\n}\n\n%sidebar-links {\n color: rgba(117, 117, 117, 0.9);\n user-select: none;\n}\n\n@mixin ml-mr($value) {\n margin-left: $value;\n margin-right: $value;\n}\n\n@mixin pl-pr($val) {\n padding-left: $val;\n padding-right: $val;\n}\n\n@mixin input-placeholder {\n opacity: 0.6;\n}\n\n@mixin label($font-size: 1rem, $font-weight: 600, $color: var(--label-color)) {\n color: $color;\n font-size: $font-size;\n font-weight: $font-weight;\n}\n\n@mixin align-center {\n position: relative;\n left: 50%;\n -webkit-transform: translateX(-50%);\n -ms-transform: translateX(-50%);\n transform: translateX(-50%);\n}\n", + "/*\n * The SCSS variables\n */\n\n/* sidebar */\n\n$sidebar-width: 260px !default; // the basic width\n$sidebar-width-small: 210px !default; // screen width: >= 850px, <= 1199px (iPad landscape)\n$sidebar-width-large: 350px !default; // screen width: >= 1650px\n\n/* tabs of sidebar */\n\n$tab-count: 5 !default; // backward compatible (version <= 4.0.2)\n$tab-height: 3rem !default;\n$tab-cursor-height: 1.6rem !default;\n\n$cursor-width: 2px !default; // the cursor width of the selected tab\n\n/* other framework sizes */\n\n$topbar-height: 3rem !default;\n\n$footer-height: 5rem !default;\n$footer-height-mobile: 6rem !default; // screen width: <= 576px\n\n$main-content-max-width: 1150px !default;\n\n$panel-max-width: 300px !default;\n\n$bottom-min-height: 35rem !default;\n\n/* syntax highlight */\n\n$code-font-size: 0.85rem !default;\n", + "/*\n Appending custom SCSS variables will override the default ones in `_sass/addon/variables.scsss`\n*/\n", + "/*\n* The syntax highlight.\n*/\n\n@import \"colors/light-syntax\";\n@import \"colors/dark-syntax\";\n\nhtml:not([mode]),\nhtml[mode=light] {\n @include light-syntax;\n}\n\nhtml[mode=dark] {\n @include dark-syntax;\n}\n\n@media (prefers-color-scheme: dark) {\n html:not([mode]),\n html[mode=dark] {\n @include dark-syntax;\n }\n\n html[mode=light] {\n @include light-syntax;\n }\n}\n\n/* -- Codes Snippet -- */\n\n$code-radius: 6px;\n\n%code-snippet-bg {\n background: var(--highlight-bg-color);\n}\n\n%code-snippet-radius {\n border-radius: $code-radius;\n}\n\n%code-snippet-padding {\n padding-left: 1rem;\n padding-right: 1.5rem;\n}\n\n.highlighter-rouge {\n @extend %code-snippet-bg;\n @extend %code-snippet-radius;\n\n color: var(--highlighter-rouge-color);\n margin-top: 0.5rem;\n margin-bottom: 1.2em; /* Override BS Inline-code style */\n}\n\n.highlight {\n @extend %code-snippet-radius;\n @extend %code-snippet-bg;\n\n @at-root figure#{&} {\n @extend %code-snippet-bg;\n }\n\n overflow: auto;\n padding-top: 0.5rem;\n padding-bottom: 1rem;\n\n pre {\n margin-bottom: 0;\n font-size: $code-font-size;\n line-height: 1.4rem;\n word-wrap: normal; /* Fixed Safari overflow-x */\n }\n\n table {\n td pre {\n overflow: visible; /* Fixed iOS safari overflow-x */\n word-break: normal; /* Fixed iOS safari linenos code break */\n }\n }\n\n .lineno {\n padding-right: 0.5rem;\n min-width: 2.2rem;\n text-align: right;\n color: var(--highlight-lineno-color);\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n -o-user-select: none;\n user-select: none;\n }\n\n /* set the dollar sign to non-selectable */\n .gp {\n user-select: none;\n }\n\n} //.highlight\n\ncode {\n -webkit-hyphens: none;\n -ms-hyphens: none;\n -moz-hyphens: none;\n hyphens: none;\n\n &.highlighter-rouge {\n font-size: $code-font-size;\n padding: 3px 5px;\n border-radius: 4px;\n background-color: var(--inline-code-bg);\n }\n\n a > &.highlighter-rouge {\n padding-bottom: 0; // show link's underlinke\n color: inherit;\n }\n\n a:hover > &.highlighter-rouge {\n border-bottom: none;\n }\n\n blockquote &.highlighter-rouge {\n color: inherit;\n }\n\n .highlight > & {\n color: transparent;\n }\n}\n\ntd.rouge-code {\n @extend %code-snippet-padding;\n\n // Prevent some browser extends from\n // changing the URL string of code block.\n a {\n color: inherit !important;\n border-bottom: none !important;\n pointer-events: none;\n }\n\n}\n\n/* Hide line numbers for default, console, and terminal code snippets */\ndiv {\n &[class^='highlighter-rouge'],\n &.language-plaintext.highlighter-rouge,\n &.language-console.highlighter-rouge,\n &.language-terminal.highlighter-rouge,\n &.nolineno {\n pre.lineno {\n display: none;\n }\n\n td.rouge-code {\n padding-left: 1.5rem;\n }\n }\n}\n\n.code-header {\n @extend %no-cursor;\n\n $code-header-height: 2.25rem;\n\n border-top-left-radius: $code-radius;\n border-top-right-radius: $code-radius;\n display: flex;\n justify-content: space-between;\n align-items: center;\n height: $code-header-height;\n\n &::before {\n $dot-size: 0.75rem;\n $dot-margin: 0.5rem;\n\n content: \"\";\n display: inline-block;\n margin-left: 1rem;\n width: $dot-size;\n height: $dot-size;\n border-radius: 50%;\n background-color: var(--code-header-muted-color);\n box-shadow:\n ($dot-size + $dot-margin) 0 0 var(--code-header-muted-color),\n ($dot-size + $dot-margin) * 2 0 0 var(--code-header-muted-color);\n }\n\n // the label block\n span {\n // label icon\n i {\n font-size: 1rem;\n margin-right: 0.4rem;\n color: var(--code-header-icon-color);\n\n &.small {\n font-size: 70%;\n }\n }\n\n @at-root [file] #{&} > i {\n position: relative;\n top: 1px; // center the file icon\n }\n\n // label text\n &::after {\n content: attr(label-text);\n font-size: 0.85rem;\n font-weight: 600;\n color: var(--code-header-text-color);\n }\n }\n\n // clipboard\n button {\n @extend %cursor-pointer;\n\n border: 1px solid transparent;\n border-radius: $code-radius;\n height: $code-header-height;\n width: $code-header-height;\n padding: 0;\n background-color: inherit;\n\n i {\n color: var(--code-header-icon-color);\n }\n\n &[timeout] {\n &:hover {\n border-color: var(--clipboard-checked-color);\n }\n\n i {\n color: var(--clipboard-checked-color);\n }\n }\n\n &:not([timeout]):hover {\n background-color: rgba(128, 128, 128, 0.37);\n\n i {\n color: white;\n }\n }\n\n &:focus {\n outline: none;\n }\n\n }\n\n}\n\n@media all and (max-width: 576px) {\n .post-content {\n > div[class^='language-'] {\n @include ml-mr(-1.25rem);\n\n border-radius: 0;\n\n .highlight {\n padding-left: 0.25rem;\n }\n\n .code-header {\n border-radius: 0;\n padding-left: 0.4rem;\n padding-right: 0.5rem;\n }\n }\n }\n}\n", + "/*\n * The syntax light mode code snippet colors.\n */\n\n@mixin light-syntax {\n /* see: */\n .highlight .hll { background-color: #ffffcc; }\n .highlight .c { color: #999988; font-style: italic; } /* Comment */\n .highlight .err { color: #a61717; background-color: #e3d2d2; } /* Error */\n .highlight .k { color: #000000; font-weight: bold; } /* Keyword */\n .highlight .o { color: #000000; font-weight: bold; } /* Operator */\n .highlight .cm { color: #999988; font-style: italic; } /* Comment.Multiline */\n .highlight .cp { color: #999999; font-weight: bold; font-style: italic; } /* Comment.Preproc */\n .highlight .c1 { color: #999988; font-style: italic; } /* Comment.Single */\n .highlight .cs { color: #999999; font-weight: bold; font-style: italic; } /* Comment.Special */\n .highlight .gd { color: #d01040; background-color: #ffdddd; } /* Generic.Deleted */\n .highlight .ge { color: #000000; font-style: italic; } /* Generic.Emph */\n .highlight .gr { color: #aa0000; } /* Generic.Error */\n .highlight .gh { color: #999999; } /* Generic.Heading */\n .highlight .gi { color: #008080; background-color: #ddffdd; } /* Generic.Inserted */\n .highlight .go { color: #888888; } /* Generic.Output */\n .highlight .gp { color: #555555; } /* Generic.Prompt */\n .highlight .gs { font-weight: bold; } /* Generic.Strong */\n .highlight .gu { color: #aaaaaa; } /* Generic.Subheading */\n .highlight .gt { color: #aa0000; } /* Generic.Traceback */\n .highlight .kc { color: #000000; font-weight: bold; } /* Keyword.Constant */\n .highlight .kd { color: #000000; font-weight: bold; } /* Keyword.Declaration */\n .highlight .kn { color: #000000; font-weight: bold; } /* Keyword.Namespace */\n .highlight .kp { color: #000000; font-weight: bold; } /* Keyword.Pseudo */\n .highlight .kr { color: #000000; font-weight: bold; } /* Keyword.Reserved */\n .highlight .kt { color: #445588; font-weight: bold; } /* Keyword.Type */\n .highlight .m { color: #009999; } /* Literal.Number */\n .highlight .s { color: #d01040; } /* Literal.String */\n .highlight .na { color: #008080; } /* Name.Attribute */\n .highlight .nb { color: #0086b3; } /* Name.Builtin */\n .highlight .nc { color: #445588; font-weight: bold; } /* Name.Class */\n .highlight .no { color: #008080; } /* Name.Constant */\n .highlight .nd { color: #3c5d5d; font-weight: bold; } /* Name.Decorator */\n .highlight .ni { color: #800080; } /* Name.Entity */\n .highlight .ne { color: #990000; font-weight: bold; } /* Name.Exception */\n .highlight .nf { color: #990000; font-weight: bold; } /* Name.Function */\n .highlight .nl { color: #990000; font-weight: bold; } /* Name.Label */\n .highlight .nn { color: #555555; } /* Name.Namespace */\n .highlight .nt { color: #000080; } /* Name.Tag */\n .highlight .nv { color: #008080; } /* Name.Variable */\n .highlight .ow { color: #000000; font-weight: bold; } /* Operator.Word */\n .highlight .w { color: #bbbbbb; } /* Text.Whitespace */\n .highlight .mf { color: #009999; } /* Literal.Number.Float */\n .highlight .mh { color: #009999; } /* Literal.Number.Hex */\n .highlight .mi { color: #009999; } /* Literal.Number.Integer */\n .highlight .mo { color: #009999; } /* Literal.Number.Oct */\n .highlight .sb { color: #d01040; } /* Literal.String.Backtick */\n .highlight .sc { color: #d01040; } /* Literal.String.Char */\n .highlight .sd { color: #d01040; } /* Literal.String.Doc */\n .highlight .s2 { color: #d01040; } /* Literal.String.Double */\n .highlight .se { color: #d01040; } /* Literal.String.Escape */\n .highlight .sh { color: #d01040; } /* Literal.String.Heredoc */\n .highlight .si { color: #d01040; } /* Literal.String.Interpol */\n .highlight .sx { color: #d01040; } /* Literal.String.Other */\n .highlight .sr { color: #009926; } /* Literal.String.Regex */\n .highlight .s1 { color: #d01040; } /* Literal.String.Single */\n .highlight .ss { color: #990073; } /* Literal.String.Symbol */\n .highlight .bp { color: #999999; } /* Name.Builtin.Pseudo */\n .highlight .vc { color: #008080; } /* Name.Variable.Class */\n .highlight .vg { color: #008080; } /* Name.Variable.Global */\n .highlight .vi { color: #008080; } /* Name.Variable.Instance */\n .highlight .il { color: #009999; } /* Literal.Number.Integer.Long */\n\n /* --- custom light colors --- */\n --highlight-bg-color: #f7f7f7;\n --highlighter-rouge-color: #2f2f2f;\n --highlight-lineno-color: #c2c6cc;\n --inline-code-bg: #f3f3f3;\n --code-header-text-color: #a3a3b1;\n --code-header-muted-color: #ebebeb;\n --code-header-icon-color: #d1d1d1;\n --clipboard-checked-color: #43c743;\n\n} // light-syntax\n", + "/*\n * The syntax dark mode styles.\n */\n\n@mixin dark-syntax {\n /* syntax highlight colors from https://raw.githubusercontent.com/jwarby/pygments-css/master/monokai.css */\n .highlight pre { background-color: var(--highlight-bg-color); }\n .highlight .hll { background-color: var(--highlight-bg-color); }\n .highlight .c { color: #75715e; } /* Comment */\n .highlight .err { color: #960050; background-color: #1e0010; } /* Error */\n .highlight .k { color: #66d9ef; } /* Keyword */\n .highlight .l { color: #ae81ff; } /* Literal */\n .highlight .n { color: #f8f8f2; } /* Name */\n .highlight .o { color: #f92672; } /* Operator */\n .highlight .p { color: #f8f8f2; } /* Punctuation */\n .highlight .cm { color: #75715e; } /* Comment.Multiline */\n .highlight .cp { color: #75715e; } /* Comment.Preproc */\n .highlight .c1 { color: #75715e; } /* Comment.Single */\n .highlight .cs { color: #75715e; } /* Comment.Special */\n .highlight .ge { color: inherit; font-style: italic; } /* Generic.Emph */\n .highlight .gs { font-weight: bold; } /* Generic.Strong */\n .highlight .kc { color: #66d9ef; } /* Keyword.Constant */\n .highlight .kd { color: #66d9ef; } /* Keyword.Declaration */\n .highlight .kn { color: #f92672; } /* Keyword.Namespace */\n .highlight .kp { color: #66d9ef; } /* Keyword.Pseudo */\n .highlight .kr { color: #66d9ef; } /* Keyword.Reserved */\n .highlight .kt { color: #66d9ef; } /* Keyword.Type */\n .highlight .ld { color: #e6db74; } /* Literal.Date */\n .highlight .m { color: #ae81ff; } /* Literal.Number */\n .highlight .s { color: #e6db74; } /* Literal.String */\n .highlight .na { color: #a6e22e; } /* Name.Attribute */\n .highlight .nb { color: #f8f8f2; } /* Name.Builtin */\n .highlight .nc { color: #a6e22e; } /* Name.Class */\n .highlight .no { color: #66d9ef; } /* Name.Constant */\n .highlight .nd { color: #a6e22e; } /* Name.Decorator */\n .highlight .ni { color: #f8f8f2; } /* Name.Entity */\n .highlight .ne { color: #a6e22e; } /* Name.Exception */\n .highlight .nf { color: #a6e22e; } /* Name.Function */\n .highlight .nl { color: #f8f8f2; } /* Name.Label */\n .highlight .nn { color: #f8f8f2; } /* Name.Namespace */\n .highlight .nx { color: #a6e22e; } /* Name.Other */\n .highlight .py { color: #f8f8f2; } /* Name.Property */\n .highlight .nt { color: #f92672; } /* Name.Tag */\n .highlight .nv { color: #f8f8f2; } /* Name.Variable */\n .highlight .ow { color: #f92672; } /* Operator.Word */\n .highlight .w { color: #f8f8f2; } /* Text.Whitespace */\n .highlight .mf { color: #ae81ff; } /* Literal.Number.Float */\n .highlight .mh { color: #ae81ff; } /* Literal.Number.Hex */\n .highlight .mi { color: #ae81ff; } /* Literal.Number.Integer */\n .highlight .mo { color: #ae81ff; } /* Literal.Number.Oct */\n .highlight .sb { color: #e6db74; } /* Literal.String.Backtick */\n .highlight .sc { color: #e6db74; } /* Literal.String.Char */\n .highlight .sd { color: #e6db74; } /* Literal.String.Doc */\n .highlight .s2 { color: #e6db74; } /* Literal.String.Double */\n .highlight .se { color: #ae81ff; } /* Literal.String.Escape */\n .highlight .sh { color: #e6db74; } /* Literal.String.Heredoc */\n .highlight .si { color: #e6db74; } /* Literal.String.Interpol */\n .highlight .sx { color: #e6db74; } /* Literal.String.Other */\n .highlight .sr { color: #e6db74; } /* Literal.String.Regex */\n .highlight .s1 { color: #e6db74; } /* Literal.String.Single */\n .highlight .ss { color: #e6db74; } /* Literal.String.Symbol */\n .highlight .bp { color: #f8f8f2; } /* Name.Builtin.Pseudo */\n .highlight .vc { color: #f8f8f2; } /* Name.Variable.Class */\n .highlight .vg { color: #f8f8f2; } /* Name.Variable.Global */\n .highlight .vi { color: #f8f8f2; } /* Name.Variable.Instance */\n .highlight .il { color: #ae81ff; } /* Literal.Number.Integer.Long */\n .highlight .gu { color: #75715e; } /* Generic.Subheading & Diff Unified/Comment? */\n .highlight .gd { color: #f92672; background-color: #561c08; } /* Generic.Deleted & Diff Deleted */\n .highlight .gi { color: #a6e22e; background-color: #0b5858; } /* Generic.Inserted & Diff Inserted */\n\n /* ----- custom styles ------ */\n\n --highlight-bg-color: #252525;\n --highlighter-rouge-color: #de6b18;\n --highlight-lineno-color: #6c6c6d;\n --inline-code-bg: #272822;\n --code-header-text-color: #6a6a6a;\n --code-header-muted-color: rgb(60 60 60);\n --code-header-icon-color: rgb(86 86 86);\n --clipboard-checked-color: #2bcc2b;\n\n .highlight {\n .gp { color: #818c96; }\n }\n\n pre { color: #bfbfbf; } /* override Bootstrap */\n}\n", + "/*\n The common styles\n*/\n@import url('https://fonts.googleapis.com/css2?family=Lato&family=Source+Sans+Pro:wght@400;600;900&display=swap');\n\n@mixin mode-toggle($dark-mode: false) {\n @if $dark-mode {\n @include dark-scheme;\n } @else {\n @include light-scheme;\n }\n}\n\nhtml:not([mode]),\nhtml[mode=light] {\n @include mode-toggle();\n}\n\nhtml[mode=dark] {\n @include mode-toggle(true);\n}\n\n@media (prefers-color-scheme: dark) {\n html:not([mode]),\n html[mode=dark] {\n @include mode-toggle(true);\n }\n\n html[mode=light] {\n @include mode-toggle();\n }\n}\n\n:root {\n font-size: 16px;\n}\n\nbody {\n line-height: 1.75rem;\n background: var(--body-bg);\n color: var(--text-color);\n -webkit-font-smoothing: antialiased;\n font-family: 'Source Sans Pro', 'Microsoft Yahei', sans-serif;\n}\n\n/* --- Typography --- */\n\nh1 {\n @extend %heading;\n\n font-size: 1.9rem;\n}\n\nh2 {\n @extend %heading;\n @extend %section;\n @extend %anchor-relative;\n\n font-size: 1.5rem;\n}\n\nh3 {\n @extend %heading;\n @extend %section;\n @extend %anchor;\n\n font-size: 1.2rem;\n}\n\nh4 {\n @extend %heading;\n @extend %section;\n @extend %anchor;\n\n font-size: 1.15rem;\n}\n\nh5 {\n @extend %heading;\n @extend %section;\n @extend %anchor;\n\n font-size: 1.1rem;\n}\n\nol,\nul {\n ol,\n ul {\n margin-bottom: 1rem;\n }\n}\n\na {\n @extend %link-color;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\nblockquote {\n border-left: 5px solid var(--blockquote-border-color);\n padding-left: 1rem;\n color: var(--blockquote-text-color);\n}\n\nkbd {\n font-family: inherit;\n display: inline-block;\n vertical-align: middle;\n line-height: 1.3rem;\n min-width: 1.75rem;\n text-align: center;\n margin: 0 0.3rem;\n padding-top: 0.1rem;\n color: var(--kbd-text-color);\n background-color: var(--kbd-bg-color);\n border-radius: 0.25rem;\n border: solid 1px var(--kbd-wrap-color);\n box-shadow: inset 0 -2px 0 var(--kbd-wrap-color);\n}\n\nfooter {\n position: absolute;\n bottom: 0;\n padding: 0 1rem;\n height: $footer-height;\n font-size: 0.8rem;\n\n > div.d-flex {\n line-height: 1.2rem;\n width: 95%;\n max-width: 1045px;\n border-top: 1px solid var(--main-border-color);\n margin-bottom: 1rem;\n\n > div {\n width: 350px;\n }\n }\n\n a {\n @extend %text-color;\n\n &:link {\n @include no-text-decoration;\n }\n\n &:hover {\n @extend %link-hover;\n\n @include no-text-decoration;\n }\n }\n\n .footer-right {\n text-align: right;\n }\n}\n\ni { // fontawesome icons\n &.far,\n &.fas {\n @extend %no-cursor;\n }\n}\n\n@keyframes fade-in {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n\nimg[data-src] {\n margin: 0.5rem 0;\n\n &[data-loaded=true] {\n animation: fade-in linear 0.5s;\n }\n\n &.left {\n float: left;\n margin: 0.75rem 1rem 1rem 0;\n }\n\n &.right {\n float: right;\n margin: 0.75rem 0 1rem 1rem;\n }\n\n &.shadow {\n filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.08));\n }\n}\n\n/* --- Panels --- */\n\n.access {\n top: 2rem;\n transition: top 0.2s ease-in-out;\n margin-right: 1.5rem;\n margin-top: 3rem;\n margin-bottom: 4rem;\n\n &:only-child {\n position: -webkit-sticky; /* Safari */\n position: sticky;\n }\n\n > div {\n padding-left: 1rem;\n border-left: 1px solid var(--main-border-color);\n\n &:not(:last-child) {\n margin-bottom: 4rem;\n }\n }\n\n .post-content {\n font-size: 0.9rem;\n }\n\n}\n\n#panel-wrapper {\n // the headings\n .panel-heading {\n @include label(inherit);\n }\n\n .post-tag {\n display: inline-block;\n line-height: 1rem;\n font-size: 0.85rem;\n background: none;\n border: 1px solid var(--btn-border-color);\n border-radius: 0.8rem;\n padding: 0.3rem 0.5rem;\n margin: 0 0.35rem 0.5rem 0;\n\n &:hover {\n background-color: #2a408e;\n border-color: #2a408e;\n color: #fff;\n transition: none;\n }\n }\n\n &.topbar-down > div {\n top: 6rem;\n }\n}\n\n#access-lastmod {\n li {\n height: 1.8rem;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n list-style: none;\n }\n\n a {\n &:hover {\n @extend %link-hover;\n }\n\n @extend %no-bottom-border;\n\n color: inherit;\n }\n\n}\n\n.footnotes > ol {\n padding-left: 2rem;\n margin-top: 0.5rem;\n\n > li {\n &:not(:last-child) {\n margin-bottom: 0.3rem;\n }\n\n > p {\n margin-left: 0.25em;\n margin-top: 0;\n margin-bottom: 0;\n }\n\n // [scroll-focus] added by `smooth-scroll.js`\n &:target:not([scroll-focus]),\n &[scroll-focus=true] > p {\n background-color: var(--footnote-target-bg);\n width: fit-content;\n -webkit-transition: background-color 1.5s ease-in-out; /* Safari prior 6.1 */\n transition: background-color 1.5s ease-in-out;\n }\n }\n}\n\n.footnote {\n @at-root a#{&} {\n @include ml-mr(1px);\n @include pl-pr(2px);\n\n border-bottom-style: none !important;\n -webkit-transition: background-color 1.5s ease-in-out; /* Safari prior 6.1 */\n transition: background-color 1.5s ease-in-out;\n }\n\n // [scroll-focus] added by `smooth-scroll.js`\n @at-root sup:target:not([scroll-focus]),\n sup[scroll-focus=true] > a#{&} {\n background-color: var(--footnote-target-bg);\n }\n}\n\n.reversefootnote {\n @at-root a#{&} {\n font-size: 0.6rem;\n line-height: 1;\n position: relative;\n bottom: 0.25em;\n margin-left: 0.25em;\n border-bottom-style: none !important;\n }\n}\n\n/* --- Begin of Markdown table style --- */\n\n// it will be created by Liquid\n.table-wrapper {\n overflow-x: auto;\n margin-bottom: 1.5rem;\n\n > table {\n min-width: 100%;\n overflow-x: auto;\n border-spacing: 0;\n\n thead {\n border-bottom: solid 2px rgba(210, 215, 217, 0.75);\n\n th {\n @extend %table-cell;\n }\n }\n\n tbody {\n tr {\n border-bottom: 1px solid var(--tb-border-color);\n\n &:nth-child(2n) {\n background-color: var(--tb-even-bg);\n }\n\n &:nth-child(2n + 1) {\n background-color: var(--tb-odd-bg);\n }\n\n td {\n @extend %table-cell;\n }\n }\n } // tbody\n }// table\n}\n\n/* --- post --- */\n\n.post {\n h1 {\n margin-top: 3rem;\n margin-bottom: 1.5rem;\n }\n\n a {\n &.img-link {\n @extend %no-cursor;\n }\n\n // created by `_includes/img-extra.html`\n &.popup {\n cursor: zoom-in;\n\n > img[data-src]:not(.normal):not(.left):not(.right) {\n @include align-center;\n }\n }\n\n &:hover {\n code {\n @extend %link-hover;\n }\n }\n } // a\n\n}\n\n.pageviews .fa-spinner {\n font-size: 80%;\n}\n\n.post-meta {\n font-size: 0.85rem;\n word-spacing: 1px;\n\n a {\n &:not(:last-child) {\n margin-right: 2px;\n }\n\n &:hover {\n @extend %link-hover;\n }\n }\n\n em {\n @extend %normal-font-style;\n }\n}\n\n.post-content {\n font-size: 1.08rem;\n line-height: 1.8;\n margin-top: 2rem;\n overflow-wrap: break-word;\n word-wrap: break-word;\n\n a {\n &:not(.img-link) {\n @extend %link-underline;\n\n &:hover {\n @extend %link-hover;\n }\n }\n\n &.img-link + em {\n display: block;\n text-align: center;\n font-style: normal;\n font-size: 80%;\n padding: 0;\n color: #6d6c6c;\n }\n\n }\n\n ul {\n // attribute 'hide-bullet' was added by liquid\n .task-list-item[hide-bullet] {\n list-style-type: none;\n\n > i { // checkbox icon\n margin: 0 0.4rem 0.2rem -1.4rem;\n vertical-align: middle;\n color: var(--checkbox-color);\n\n &.checked {\n color: var(--checkbox-checked-color);\n }\n }\n\n }\n\n input[type=checkbox] {\n margin: 0 0.5rem 0.2rem -1.3rem;\n vertical-align: middle;\n }\n\n } // ul\n\n > ol,\n > ul {\n padding-left: 2rem;\n\n li {\n ol,\n ul { // sub list\n padding-left: 2rem;\n margin-top: 0.3rem;\n }\n }\n\n }\n\n > ol {\n li {\n padding-left: 0.25em;\n }\n }\n\n dl > dd {\n margin-left: 1rem;\n }\n\n} // .post-content\n\n.tag:hover {\n @extend %tag-hover;\n}\n\n.post-tag {\n display: inline-block;\n min-width: 2rem;\n text-align: center;\n background: var(--tag-bg);\n border-radius: 0.3rem;\n padding: 0 0.4rem;\n color: inherit;\n line-height: 1.3rem;\n\n &:not(:last-child) {\n margin-right: 0.2rem;\n }\n\n &:hover {\n @extend %tag-hover;\n\n border-bottom: none;\n text-decoration: none;\n color: #d2603a;\n }\n}\n\n/* --- buttons --- */\n.btn-lang {\n border: 1px solid !important;\n padding: 1px 3px;\n border-radius: 3px;\n color: var(--link-color);\n\n &:focus {\n box-shadow: none;\n }\n}\n\n/* --- Effects classes --- */\n\n.loaded {\n display: block !important;\n\n @at-root .d-flex#{&} {\n display: flex !important;\n }\n}\n\n.unloaded {\n display: none !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.hidden {\n visibility: hidden !important;\n}\n\n.flex-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n}\n\n.btn-box-shadow {\n box-shadow: 0 0 8px 0 var(--btn-box-shadow) !important;\n}\n\n.topbar-up {\n top: -3rem !important; /* same as topbar height. */\n}\n\n.no-text-decoration {\n @include no-text-decoration;\n}\n\n.tooltip-inner { /* Overrided BS4 Tooltip */\n font-size: 0.7rem;\n max-width: 220px;\n text-align: left;\n}\n\n.disabled {\n color: rgb(206, 196, 196);\n pointer-events: auto;\n cursor: not-allowed;\n}\n\n.hide-border-bottom {\n border-bottom: none !important;\n}\n\n.input-focus {\n box-shadow: none;\n border-color: var(--input-focus-border-color) !important;\n background: center !important;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n}\n\n/* --- Overriding --- */\n\n// magnific-popup\nfigure .mfp-title {\n text-align: center;\n padding-right: 0;\n margin-top: 0.5rem;\n}\n\n// mermaid\n.mermaid {\n text-align: center;\n}\n\n/* --- sidebar layout --- */\n\n$sidebar-display: \"sidebar-display\";\n\n#sidebar {\n @include pl-pr(0);\n\n position: fixed;\n top: 0;\n left: 0;\n height: 100%;\n overflow-y: auto;\n width: $sidebar-width;\n z-index: 99;\n background: var(--sidebar-bg);\n\n /* Hide scrollbar for Chrome, Safari and Opera */\n &::-webkit-scrollbar {\n display: none;\n }\n\n /* Hide scrollbar for IE, Edge and Firefox */\n -ms-overflow-style: none; /* IE and Edge */\n scrollbar-width: none; /* Firefox */\n\n a {\n @extend %sidebar-links;\n\n &:hover {\n @include no-text-decoration;\n\n color: var(--sidebar-active-color) !important;\n }\n }\n\n #avatar {\n > a {\n display: block;\n width: 6rem;\n height: 6rem;\n border-radius: 50%;\n border: 2px solid rgba(222, 222, 222, 0.7);\n overflow: hidden;\n transform: translateZ(0); // fixed the zoom in Safari\n -webkit-transition: border-color 0.35s ease-in-out;\n -moz-transition: border-color 0.35s ease-in-out;\n transition: border-color 0.35s ease-in-out;\n\n &:hover {\n border-color: white;\n }\n }\n\n img {\n width: 100%;\n height: 100%;\n -webkit-transition: transform 0.5s;\n -moz-transition: transform 0.5s;\n transition: transform 0.5s;\n\n &:hover {\n -ms-transform: scale(1.2);\n -moz-transform: scale(1.2);\n -webkit-transform: scale(1.2);\n transform: scale(1.2);\n }\n }\n } // #avatar\n\n .site-title {\n a {\n @extend %clickable-transition;\n\n font-weight: 900;\n font-size: 1.5rem;\n letter-spacing: 0.5px;\n color: rgba(134, 133, 133, 99%);\n }\n }\n\n .site-subtitle {\n font-size: 95%;\n color: var(--sidebar-muted-color);\n line-height: 1.2rem;\n word-spacing: 1px;\n margin: 0.5rem 1.5rem 0.5rem 1.5rem;\n min-height: 3rem; // avoid vertical shifting in multi-line words\n user-select: none;\n }\n\n .nav-link {\n border-radius: 0;\n font-size: 0.95rem;\n font-weight: 600;\n letter-spacing: 1px;\n display: table-cell;\n vertical-align: middle;\n }\n\n .nav-item {\n text-align: center;\n display: table;\n height: $tab-height;\n\n &.active {\n .nav-link {\n color: var(--sidebar-active-color);\n }\n }\n\n &:not(.active) > a {\n @extend %clickable-transition;\n }\n }\n\n ul {\n height: $tab-height * $tab-count;\n margin-bottom: 2rem;\n padding-left: 0;\n\n li {\n width: 100%;\n\n &:last-child {\n a {\n position: relative;\n left: $cursor-width / 2;\n width: 100%;\n }\n\n &::after { // the cursor\n display: table;\n visibility: hidden;\n content: \"\";\n position: relative;\n right: 1px;\n width: $cursor-width;\n height: $tab-cursor-height;\n border-radius: 1px;\n background-color: var(--nav-cursor-color);\n pointer-events: none;\n }\n }\n } // li\n\n @mixin fix-cursor($top) {\n top: $top;\n visibility: visible;\n }\n\n @for $i from 1 through $tab-count {\n $offset: $tab-count - $i;\n $top: -$offset * $tab-height + ($tab-height - $tab-cursor-height) / 2;\n\n @if $i < $tab-count {\n > li.active:nth-child(#{$i}),\n > li.nav-item:nth-child(#{$i}):hover {\n ~ li:last-child::after {\n @include fix-cursor($top);\n }\n }\n } @else {\n > li.active:nth-child(#{$i}):last-child::after,\n > li.nav-item:nth-child(#{$i}):last-child:hover::after {\n @include fix-cursor($top);\n }\n }\n\n } // @for\n\n } // ul\n\n .sidebar-bottom {\n margin-bottom: 2.1rem;\n\n @include ml-mr(auto);\n @include pl-pr(1rem);\n\n %icon {\n width: 2.4rem;\n text-align: center;\n }\n\n a {\n @extend %icon;\n @extend %clickable-transition;\n }\n\n i {\n font-size: 1.2rem;\n line-height: 1.75rem;\n }\n\n .mode-toggle {\n padding: 0;\n border: 0;\n margin-bottom: 1px;\n background-color: transparent;\n\n @extend %icon;\n @extend %sidebar-links;\n\n > i {\n @extend %clickable-transition;\n }\n\n &:hover > i {\n color: var(--sidebar-active-color);\n }\n }\n\n .icon-border {\n @extend %no-cursor;\n\n background-color: var(--sidebar-muted-color);\n content: \"\";\n width: 3px;\n height: 3px;\n border-radius: 50%;\n }\n\n } // .sidebar-bottom\n\n} // #sidebar\n\n@media (hover: hover) {\n #sidebar ul > li:last-child::after {\n -webkit-transition: top 0.5s ease;\n -moz-transition: top 0.5s ease;\n -o-transition: top 0.5s ease;\n transition: top 0.5s ease;\n }\n}\n\n.profile-wrapper {\n margin-top: 2rem;\n width: 100%;\n}\n\n#search-result-wrapper {\n display: none;\n height: 100%;\n overflow: auto;\n\n .post-content {\n margin-top: 2rem;\n }\n}\n\n/* --- top-bar --- */\n\n#topbar-wrapper {\n height: $topbar-height;\n position: fixed;\n top: 0;\n left: $sidebar-width; /* same as sidebar width */\n right: 0;\n transition: top 0.2s ease-in-out;\n z-index: 50;\n border-bottom: 1px solid rgba(0, 0, 0, 0.07);\n background-color: var(--topbar-wrapper-bg);\n}\n\n#topbar {\n i { // icons\n color: #999;\n }\n\n #breadcrumb {\n font-size: 1rem;\n color: gray;\n padding-left: 0.5rem;\n\n a:hover {\n @extend %link-hover;\n }\n\n span {\n &:not(:last-child) {\n &::after {\n content: \"›\";\n padding: 0 0.3rem;\n }\n }\n }\n }\n} // #topbar\n\n#sidebar-trigger,\n#search-trigger {\n display: none;\n}\n\n#search-wrapper {\n display: flex;\n width: 85%;\n border-radius: 1rem;\n border: 1px solid var(--search-wrapper-border-color);\n background: var(--search-wrapper-bg);\n padding: 0 0.5rem;\n\n i {\n z-index: 2;\n font-size: 0.9rem;\n color: var(--search-icon-color);\n }\n\n .fa-times-circle { /* button 'clean up' */\n @extend %cursor-pointer;\n\n visibility: hidden;\n }\n}\n\n#search-cancel { /* 'Cancel' link */\n color: var(--link-color);\n margin-left: 1rem;\n display: none;\n\n @extend %cursor-pointer;\n}\n\n#search-input {\n background: center;\n border: 0;\n border-radius: 0;\n padding: 0.18rem 0.3rem;\n color: var(--text-color);\n\n &:focus {\n box-shadow: none;\n background: center;\n\n &.form-control {\n &::-webkit-input-placeholder { @include input-placeholder; }\n &::-moz-placeholder { @include input-placeholder; }\n &:-ms-input-placeholder { @include input-placeholder; }\n &::placeholder { @include input-placeholder; }\n }\n }\n}\n\n#search-hints {\n padding: 0 1rem;\n\n h4 {\n margin-bottom: 1.5rem;\n }\n\n .post-tag {\n display: inline-block;\n line-height: 1rem;\n font-size: 1rem;\n background: var(--search-tag-bg);\n border: none;\n padding: 0.5rem;\n margin: 0 1.25rem 1rem 0;\n\n &::before {\n content: \"#\";\n color: var(--text-muted-color);\n padding-right: 0.2rem;\n }\n\n @extend %link-color;\n }\n}\n\n#search-results {\n padding-bottom: 6rem;\n\n a {\n &:hover {\n @extend %link-hover;\n }\n\n @extend %link-color;\n @extend %no-bottom-border;\n @extend %heading;\n\n font-size: 1.4rem;\n line-height: 2.5rem;\n }\n\n > div {\n width: 100%;\n\n &:not(:last-child) {\n margin-bottom: 1rem;\n }\n\n i { // icons\n color: #818182;\n margin-right: 0.15rem;\n font-size: 80%;\n }\n\n > p {\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n }\n }\n} // #search-results\n\n#topbar-title {\n display: none;\n font-size: 1.1rem;\n font-weight: 600;\n font-family: sans-serif;\n color: var(--topbar-text-color);\n text-align: center;\n width: 70%;\n overflow: hidden;\n text-overflow: ellipsis;\n word-break: keep-all;\n white-space: nowrap;\n}\n\n#core-wrapper {\n min-height: calc(100vh - #{$topbar-height} - #{$footer-height} - #{$bottom-min-height}) !important;\n\n .categories,\n #tags,\n #archives {\n a:not(:hover) {\n @extend %no-bottom-border;\n }\n }\n}\n\n#mask {\n display: none;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n width: 100%;\n z-index: 1;\n\n @at-root [#{$sidebar-display}] & {\n display: block !important;\n }\n}\n\n/* --- main wrapper --- */\n\n#main-wrapper {\n background-color: var(--main-wrapper-bg);\n position: relative;\n min-height: 100vh;\n padding-bottom: $footer-height;\n\n @include pl-pr(0);\n}\n\n#main {\n .row:first-child {\n > div {\n &:nth-child(1),\n &:nth-child(2) {\n margin-top: $topbar-height; /* same as the height of topbar */\n }\n\n &:first-child {\n /* 3rem for topbar, 6rem for footer */\n min-height: calc(100vh - #{$topbar-height} - #{$footer-height} - #{$bottom-min-height});\n }\n }\n }\n\n div.row:first-of-type:last-of-type { // alone\n margin-bottom: 4rem;\n }\n}\n\n#topbar-wrapper.row,\n#main > .row,\n#search-result-wrapper > .row {\n @include ml-mr(0);\n}\n\n/* --- button back-to-top --- */\n\n#back-to-top {\n $size: 2.7em;\n\n display: none;\n z-index: 1;\n cursor: pointer;\n position: fixed;\n background: var(--button-bg);\n color: var(--btn-backtotop-color);\n padding: 0;\n width: $size;\n height: $size;\n border-radius: 50%;\n border: 1px solid var(--btn-backtotop-border-color);\n transition: transform 0.2s ease-out;\n -webkit-transition: transform 0.2s ease-out;\n\n i {\n line-height: $size;\n position: relative;\n bottom: 2px;\n }\n}\n\n#back-to-top:hover {\n transform: translate3d(0, -5px, 0);\n -webkit-transform: translate3d(0, -5px, 0);\n}\n\n/*\n Responsive Design:\n\n {sidebar, content, panel} >= 1120px screen width\n {sidebar, content} >= 850px screen width\n {content} <= 849px screen width\n\n*/\n\n@media all and (max-width: 576px) {\n\n $footer-height: $footer-height-mobile; // overwrite\n\n #main > div.row:first-child > div:first-child {\n min-height: calc(100vh - #{$topbar-height} - #{$footer-height});\n }\n\n #core-wrapper {\n min-height: calc(100vh - #{$topbar-height} - #{$footer-height} - #{$bottom-min-height}) !important;\n\n h1 {\n margin-top: 2.2rem;\n font-size: 1.75rem;\n }\n }\n\n #avatar > a {\n width: 5rem;\n height: 5rem;\n }\n\n .site-subtitle {\n @include ml-mr(1.8rem);\n }\n\n #main-wrapper {\n padding-bottom: $footer-height;\n }\n\n footer {\n height: $footer-height;\n\n > div.d-flex {\n width: 100%;\n padding: 1.5rem 0;\n margin-bottom: 0.3rem;\n flex-wrap: wrap;\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n\n .footer-left,\n .footer-right {\n text-align: center;\n }\n }\n\n}\n\n/* hide sidebar and panel */\n@media all and (max-width: 849px) {\n %slide {\n -webkit-transition: transform 0.4s ease;\n transition: transform 0.4s ease;\n }\n\n html,\n body {\n overflow-x: hidden;\n }\n\n .footnotes ol > li {\n padding-top: 3.5rem;\n margin-top: -3.2rem;\n\n &:first-child {\n margin-top: -3.5rem;\n }\n }\n\n [#{$sidebar-display}] {\n #sidebar {\n transform: translateX(0);\n }\n\n #topbar-wrapper,\n #main-wrapper {\n transform: translateX(#{$sidebar-width});\n }\n\n }\n\n #sidebar {\n @extend %slide;\n\n transform: translateX(-#{$sidebar-width}); // hide\n -webkit-transform: translateX(-#{$sidebar-width});\n\n .cursor {\n -webkit-transition: none;\n -moz-transition: none;\n transition: none;\n }\n }\n\n #main-wrapper {\n @extend %slide;\n\n padding-top: $topbar-height;\n }\n\n #search-result-wrapper {\n width: 100%;\n }\n\n #breadcrumb,\n #search-wrapper {\n display: none;\n }\n\n #topbar-wrapper {\n @extend %slide;\n\n left: 0;\n }\n\n .topbar-up {\n top: 0 !important;\n }\n\n #main > div.row:first-child > div:nth-child(1),\n #main > div.row:first-child > div:nth-child(2) {\n margin-top: 0;\n }\n\n #topbar-title,\n #sidebar-trigger,\n #search-trigger {\n display: block;\n }\n\n #search-wrapper {\n &.loaded ~ a {\n margin-right: 1rem;\n }\n\n .fa-times-circle {\n right: 5.2rem;\n }\n }\n\n #search-input {\n margin-left: 0;\n width: 95%;\n }\n\n #search-result-wrapper .post-content {\n letter-spacing: 0;\n }\n\n #tags {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n\n h1.dynamic-title {\n display: none;\n\n ~ .post-content {\n margin-top: 3rem;\n }\n }\n\n} // max-width: 849px\n\n/* Phone & Pad */\n@media all and (min-width: 577px) and (max-width: 1199px) {\n footer > .d-flex > div {\n width: 312px;\n }\n}\n\n/* Sidebar is visible */\n@media all and (min-width: 850px) {\n /* Solved jumping scrollbar */\n html {\n overflow-y: scroll;\n }\n\n #main-wrapper {\n margin-left: $sidebar-width;\n }\n\n .profile-wrapper {\n margin-top: 3rem;\n }\n\n #search-wrapper {\n width: 22%;\n min-width: 150px;\n }\n\n #search-hints {\n display: none;\n }\n\n #search-result-wrapper {\n margin-top: 3rem;\n }\n\n div.post-content .table-wrapper > table {\n min-width: 70%;\n }\n\n /* button 'back-to-Top' position */\n #back-to-top {\n bottom: 5.5rem;\n right: 1.2rem;\n }\n\n .topbar-up {\n box-shadow: none !important;\n }\n\n #topbar-title {\n text-align: left;\n }\n\n footer > div.d-flex {\n width: 92%;\n }\n\n}\n\n/* Pad horizontal */\n@media all and (min-width: 992px) and (max-width: 1199px) {\n #main .col-lg-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 96%;\n flex: 0 0 96%;\n max-width: 96%;\n }\n}\n\n/* Compact icons in sidebar & panel hidden */\n@media all and (min-width: 850px) and (max-width: 1199px) {\n #sidebar {\n width: $sidebar-width-small;\n\n .site-subtitle {\n margin-left: 1rem;\n margin-right: 1rem;\n }\n\n .sidebar-bottom {\n a,\n span {\n width: 2rem;\n }\n\n .icon-border {\n left: -3px;\n }\n }\n }\n\n #topbar-wrapper {\n left: 210px;\n }\n\n #search-results > div {\n max-width: 700px;\n }\n\n .site-title {\n font-size: 1.3rem;\n margin-left: 0 !important;\n }\n\n .site-subtitle {\n @include ml-mr(1rem);\n\n font-size: 90%;\n }\n\n #main-wrapper {\n margin-left: 210px;\n }\n\n #breadcrumb {\n width: 65%;\n overflow: hidden;\n text-overflow: ellipsis;\n word-break: keep-all;\n white-space: nowrap;\n }\n\n}\n\n/* panel hidden */\n@media all and (max-width: 1199px) {\n #panel-wrapper {\n display: none;\n }\n\n #topbar {\n padding: 0;\n }\n\n #main > div.row {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n}\n\n/* --- desktop mode, both sidebar and panel are visible --- */\n\n@media all and (min-width: 1200px) {\n #main > div.row > div.col-xl-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n padding-left: 3%;\n }\n\n #topbar {\n padding: 0;\n max-width: 1070px;\n }\n\n #panel-wrapper {\n max-width: $panel-max-width;\n }\n\n #back-to-top {\n bottom: 6.5rem;\n right: 4.3rem;\n }\n\n #search-input {\n -webkit-transition: all 0.3s ease-in-out;\n transition: all 0.3s ease-in-out;\n }\n\n #search-results > div {\n width: 46%;\n\n &:nth-child(odd) {\n margin-right: 1.5rem;\n }\n\n &:nth-child(even) {\n margin-left: 1.5rem;\n }\n\n &:last-child:nth-child(odd) {\n position: relative;\n right: 24.3%;\n }\n }\n\n .post-content {\n font-size: 1.03rem;\n }\n\n footer > div.d-felx {\n width: 85%;\n }\n\n}\n\n@media all and (min-width: 1400px) {\n #main > div.row {\n padding-left: calc((100% - #{$main-content-max-width}) / 2);\n\n > div.col-xl-8 {\n max-width: 850px;\n }\n }\n\n #search-result-wrapper {\n padding-right: 2rem;\n\n > div {\n max-width: 1110px;\n }\n }\n\n #search-wrapper .fa-times-circle {\n right: 2.6rem;\n }\n\n}\n\n@media all and (min-width: 1400px) and (max-width: 1650px) {\n #topbar {\n padding-right: 2rem;\n }\n}\n\n@media all and (min-width: 1650px) {\n #breadcrumb {\n padding-left: 0;\n }\n\n #main > div.row > div.col-xl-8 {\n padding-left: 0;\n\n > div:first-child {\n padding-left: 0.55rem !important;\n padding-right: 1.9rem !important;\n }\n }\n\n #main-wrapper {\n margin-left: $sidebar-width-large;\n }\n\n #panel-wrapper {\n margin-left: calc((100% - #{$main-content-max-width}) / 10);\n }\n\n #topbar-wrapper {\n left: $sidebar-width-large;\n }\n\n #topbar {\n max-width: #{$main-content-max-width};\n }\n\n #search-wrapper {\n margin-right: 3%;\n }\n\n #sidebar {\n width: $sidebar-width-large;\n\n .profile-wrapper {\n margin-top: 4rem;\n margin-bottom: 1rem;\n\n &.text-center {\n text-align: left !important;\n }\n\n %profile-ml {\n margin-left: 4.5rem;\n }\n\n #avatar {\n @extend %profile-ml;\n\n > a {\n width: 6.2rem;\n height: 6.2rem;\n\n &.mx-auto {\n margin-left: 0 !important;\n }\n }\n }\n\n .site-title {\n @extend %profile-ml;\n\n a {\n font-size: 1.7rem;\n letter-spacing: 1px;\n }\n }\n\n .site-subtitle {\n @extend %profile-ml;\n\n word-spacing: 0;\n margin-top: 0.3rem;\n }\n\n } // .profile-wrapper (min-width: 1650px)\n\n ul {\n padding-left: 2.5rem;\n\n > li:last-child {\n > a {\n position: static;\n }\n }\n\n .nav-item {\n text-align: left;\n\n .nav-link {\n > span {\n letter-spacing: 2px;\n }\n\n > i {\n &.unloaded {\n display: inline-block !important;\n }\n }\n }\n\n }\n }\n\n .sidebar-bottom {\n padding-left: 3.5rem;\n width: 100%;\n\n $icon-block-size: 2rem;\n\n &.justify-content-center {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n\n > span,\n > button.mode-toggle,\n > a {\n @include ml-mr(0.15rem);\n\n height: $icon-block-size;\n margin-bottom: 0.5rem; // wrap line\n }\n\n i {\n background-color: var(--sidebar-btn-bg);\n font-size: 1rem;\n width: $icon-block-size;\n height: $icon-block-size;\n border-radius: 50%;\n position: relative;\n\n &::before {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n }\n\n .icon-border {\n top: 0.9rem;\n }\n\n } // .sidebar-bottom\n\n } // #sidebar\n\n footer > div.d-flex {\n width: 92%;\n max-width: 1140px;\n }\n\n #search-result-wrapper {\n > div {\n max-width: #{$main-content-max-width};\n }\n }\n\n} // min-width: 1650px\n\n@media all and (min-width: 1700px) {\n #topbar-wrapper {\n /* 100% - 350px - (1920px - 350px); */\n padding-right: calc(100% - #{$sidebar-width-large} - (1920px - #{$sidebar-width-large}));\n }\n\n #topbar {\n max-width: calc(#{$main-content-max-width} + 20px);\n }\n\n #main > div.row {\n padding-left: calc((100% - #{$main-content-max-width} - 2%) / 2);\n }\n\n #panel-wrapper {\n margin-left: 3%;\n }\n\n footer {\n padding-left: 0;\n padding-right: calc(100% - #{$sidebar-width-large} - 1180px);\n }\n\n #back-to-top {\n right: calc(100% - 1920px + 15rem);\n }\n\n}\n\n@media (min-width: 1920px) {\n #main > div.row {\n padding-left: 190px;\n }\n\n #search-result-wrapper {\n padding-right: calc(100% - #{$sidebar-width-large} - 1180px);\n }\n\n #panel-wrapper {\n margin-left: 41px;\n }\n}\n", + "/*\n Style for Homepage\n*/\n\n.pagination {\n color: var(--btn-patinator-text-color);\n font-family: 'Lato', sans-serif;\n\n a:hover {\n text-decoration: none;\n }\n\n .page-item {\n .page-link {\n color: inherit;\n width: 2.5rem;\n height: 2.5rem;\n padding: 0;\n display: -webkit-box;\n -webkit-box-pack: center;\n -webkit-box-align: center;\n border-radius: 50%;\n border: 1px solid var(--btn-paginator-border-color);\n background-color: var(--button-bg);\n\n &:hover {\n background-color: var(--btn-paginator-hover-color);\n }\n }\n\n &.active {\n .page-link {\n background-color: var(--btn-paginator-hover-color);\n color: var(--btn-text-color);\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n\n .page-link {\n color: rgba(108, 117, 125, 0.57);\n border-color: var(--btn-paginator-border-color);\n background-color: var(--button-bg);\n }\n }\n\n &:first-child .page-link,\n &:last-child .page-link {\n border-radius: 50%;\n }\n } // .page-item\n\n} // .pagination\n\n#post-list {\n margin-top: 1rem;\n padding-right: 0.5rem;\n\n .post-preview {\n padding-top: 1.5rem;\n padding-bottom: 1rem;\n border-bottom: 1px solid var(--main-border-color);\n\n a:hover {\n @extend %link-hover;\n }\n\n h1 {\n font-size: 1.4rem;\n margin: 0;\n }\n\n .post-meta {\n i {\n font-size: 0.73rem;\n\n &:not(:first-child) {\n margin-left: 1.2rem;\n }\n }\n\n em {\n @extend %normal-font-style;\n }\n }\n\n .post-content {\n margin-top: 0.6rem;\n margin-bottom: 0.6rem;\n color: var(--post-list-text-color);\n\n > p {\n /* Make preview shorter on the homepage */\n margin: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n }\n }\n\n .pin {\n > i {\n transform: rotate(45deg);\n padding-left: 3px;\n color: var(--pin-color);\n }\n\n > span {\n display: none;\n }\n }\n\n } // .post-preview\n} // #post-list\n\n/* Hide SideBar and TOC */\n@media all and (max-width: 830px) {\n .pagination {\n justify-content: space-evenly;\n\n .page-item {\n &:not(:first-child):not(:last-child) {\n display: none;\n }\n\n }\n\n }\n}\n\n/* Sidebar is visible */\n@media all and (min-width: 831px) {\n #post-list {\n margin-top: 1.5rem;\n\n .post-preview .post-meta {\n .pin {\n background: var(--pin-bg);\n border-radius: 5px;\n line-height: 1.4rem;\n height: 1.3rem;\n margin-top: 3px;\n padding-left: 1px;\n padding-right: 6px;\n\n > span {\n display: inline;\n }\n }\n }\n }\n\n .pagination {\n font-size: 0.85rem;\n\n .page-item {\n &:not(:last-child) {\n margin-right: 0.7rem;\n }\n\n .page-link {\n width: 2rem;\n height: 2rem;\n }\n\n }\n\n .page-index {\n display: none;\n }\n\n } // .pagination\n\n}\n\n/* Pannel hidden */\n@media all and (max-width: 1200px) {\n #post-list {\n padding-right: 0;\n }\n}\n", + "/*\n Post-specific style\n*/\n\n@mixin btn-sharing-color($light-color, $important: false) {\n @if $important {\n color: var(--btn-share-color, $light-color) !important;\n } @else {\n color: var(--btn-share-color, $light-color);\n }\n}\n\n@mixin btn-post-nav {\n width: 50%;\n position: relative;\n border-color: var(--btn-border-color);\n}\n\n@mixin dot($pl: 0.25rem, $pr: 0.25rem) {\n content: \"\\2022\";\n padding-left: $pl;\n padding-right: $pr;\n}\n\n%text-color {\n color: var(--text-color);\n}\n\nh1 + .post-meta {\n span + span::before {\n @include dot;\n }\n\n em {\n @extend %text-color;\n\n a {\n @extend %text-color;\n }\n }\n}\n\nimg.preview-img {\n margin-top: 3.75rem;\n margin-bottom: 0;\n border-radius: 6px;\n\n &.bg[data-loaded=true] {\n background: var(--preview-img-bg);\n }\n}\n\n.post-tail-wrapper {\n margin-top: 6rem;\n border-bottom: 1px double var(--main-border-color);\n font-size: 0.85rem;\n\n .post-meta a {\n @extend %link-underline;\n }\n}\n\n.post-tags {\n line-height: 2rem;\n}\n\n.post-navigation {\n padding-top: 3rem;\n padding-bottom: 4rem;\n\n .btn {\n @include btn-post-nav;\n\n color: var(--link-color);\n\n &:hover {\n background: #2a408e;\n color: #fff;\n border-color: #2a408e;\n }\n\n &.disabled {\n @include btn-post-nav;\n\n pointer-events: auto;\n cursor: not-allowed;\n background: none;\n color: gray;\n\n &:hover {\n border-color: none;\n }\n }\n\n &.btn-outline-primary.disabled:focus {\n box-shadow: none;\n }\n\n &::before {\n color: var(--text-muted-color);\n font-size: 0.65rem;\n text-transform: uppercase;\n content: attr(prompt);\n }\n\n &:first-child {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n left: 0.5px;\n }\n\n &:last-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n right: 0.5px;\n }\n }\n\n p {\n font-size: 1.1rem;\n line-height: 1.5rem;\n margin-top: 0.3rem;\n white-space: normal;\n }\n\n} /* .post-navigation */\n\n@keyframes fade-up {\n from {\n opacity: 0;\n position: relative;\n top: 2rem;\n }\n to {\n opacity: 1;\n position: relative;\n top: 0;\n }\n}\n\n#toc-wrapper {\n border-left: 1px solid rgba(158, 158, 158, 0.17);\n position: -webkit-sticky;\n position: sticky;\n top: 4rem;\n transition: top 0.2s ease-in-out;\n animation: fade-up 0.8s;\n}\n\n#toc li a {\n font-size: 0.8rem;\n\n &.nav-link:not(.active) {\n color: inherit;\n }\n\n}\n\nnav[data-toggle=toc] {\n .nav {\n .nav > li > a.active {\n font-weight: 600 !important;\n }\n }\n}\n\n/* --- Related Posts --- */\n\n#related-posts {\n > h3 {\n @include label(1.1rem, 600);\n }\n\n em {\n @extend %normal-font-style;\n }\n\n .card {\n border-color: var(--card-border-color);\n background-color: var(--card-bg);\n box-shadow: 0 0 5px 0 var(--card-box-shadow);\n -webkit-transition: all 0.3s ease-in-out;\n -moz-transition: all 0.3s ease-in-out;\n transition: all 0.3s ease-in-out;\n\n h3 {\n @extend %text-color;\n }\n\n &:hover {\n -webkit-transform: translate3d(0, -3px, 0);\n transform: translate3d(0, -3px, 0);\n box-shadow: 0 10px 15px -4px rgba(0, 0, 0, 0.15);\n }\n }\n\n .timeago {\n color: var(--relate-post-date);\n }\n\n p {\n font-size: 0.9rem;\n margin-bottom: 0.5rem;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n }\n\n a:hover {\n text-decoration: none;\n }\n\n ul {\n list-style-type: none;\n padding-inline-start: 1.5rem;\n\n > li::before {\n background: #c2c9d4;\n width: 5px;\n height: 5px;\n border-radius: 1px;\n display: block;\n content: \"\";\n position: relative;\n top: 1rem;\n right: 1rem;\n }\n }\n}\n\n#tail-wrapper {\n min-height: 2rem;\n\n > div:last-of-type {\n margin-bottom: 2rem;\n }\n\n #disqus_thread {\n min-height: 8.5rem;\n }\n\n}\n\n.post-tail-bottom a {\n color: inherit;\n}\n\n%btn-share-hovor {\n color: var(--btn-share-hover-color) !important;\n}\n\n.share-wrapper {\n vertical-align: middle;\n user-select: none;\n\n .share-icons {\n font-size: 1.2rem;\n\n a {\n &:not(:last-child) {\n margin-right: 0.25rem;\n }\n\n &:hover {\n text-decoration: none;\n\n > i {\n @extend %btn-share-hovor;\n }\n }\n }\n\n > i {\n position: relative;\n bottom: 1px;\n\n @extend %cursor-pointer;\n\n &:hover {\n @extend %btn-share-hovor;\n }\n }\n\n .fab {\n &.fa-twitter {\n @include btn-sharing-color(rgba(29, 161, 242, 1));\n }\n\n &.fa-facebook-square {\n @include btn-sharing-color(rgb(66, 95, 156));\n }\n\n &.fa-telegram {\n @include btn-sharing-color(rgb(39, 159, 217));\n }\n\n &.fa-weibo {\n @include btn-sharing-color(rgb(229, 20, 43));\n }\n }\n\n } /* .share-icons */\n\n .fas.fa-link {\n @include btn-sharing-color(rgb(171, 171, 171));\n }\n\n} /* .share-wrapper */\n\n.share-label {\n @include label(inherit, 400, inherit);\n\n &::after {\n content: \":\";\n }\n}\n\n.license-wrapper {\n line-height: 1.2rem;\n\n > a {\n color: var(--text-color);\n\n &:hover {\n @extend %link-hover;\n }\n }\n\n span:last-child {\n font-size: 0.85rem;\n }\n\n} /* .license-wrapper */\n\n@media all and (max-width: 576px) {\n .preview-img[data-src] {\n margin-top: 2.2rem;\n }\n\n .post-tail-bottom {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n\n > div:first-child {\n width: 100%;\n margin-top: 1rem;\n }\n }\n}\n\n@media all and (max-width: 768px) {\n .post-content > p > img {\n max-width: calc(100% + 1rem);\n }\n}\n\n/* Hide SideBar and TOC */\n@media all and (max-width: 849px) {\n .post-navigation {\n padding-left: 0;\n padding-right: 0;\n margin-left: -0.5rem;\n margin-right: -0.5rem;\n }\n\n .preview-img[data-src] {\n max-width: 100vw;\n border-radius: 0;\n }\n}\n", + "/*\n Styles for Tab Tags\n*/\n\n.tag {\n border-radius: 0.7em;\n padding: 6px 8px 7px;\n margin-right: 0.8rem;\n line-height: 3rem;\n letter-spacing: 0;\n border: 1px solid var(--tag-border) !important;\n box-shadow: 0 0 3px 0 var(--tag-shadow);\n\n span {\n margin-left: 0.6em;\n font-size: 0.7em;\n font-family: 'Oswald', sans-serif;\n }\n}\n", + "/*\n Style for Archives\n*/\n\n%date-timeline {\n content: \"\";\n width: 4px;\n left: 75px;\n display: inline-block;\n float: left;\n position: relative;\n background-color: var(--timeline-color);\n}\n\n#archives {\n letter-spacing: 0.03rem;\n\n span.lead {\n font-size: 1.5rem;\n position: relative;\n left: 8px;\n\n &::after { /* Year dot */\n content: \"\";\n display: block;\n position: relative;\n -webkit-border-radius: 50%;\n -moz-border-radius: 50%;\n border-radius: 50%;\n width: 12px;\n height: 12px;\n top: -26px;\n left: 63px;\n border: 3px solid;\n background-color: var(--timeline-year-dot-color);\n border-color: var(--timeline-node-bg);\n box-shadow: 0 0 2px 0 #c2c6cc;\n z-index: 1;\n }\n\n &:not(:first-child) {\n position: relative;\n left: 4px;\n\n &::after {\n left: 67px;\n }\n }\n\n } // #archives span.lead\n\n ul {\n li {\n font-size: 1.1rem;\n line-height: 3rem;\n\n div {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n a {\n /* post title in Archvies */\n margin-left: 2.5rem;\n position: relative;\n top: 0.1rem;\n }\n }\n\n &:nth-child(odd) {\n background-color: var(--main-wrapper-bg, #fff);\n background-image: linear-gradient(to left, #fff, #fbfbfb, #fbfbfb, #fbfbfb, #fff);\n }\n\n &::after {\n @extend %date-timeline;\n\n height: 2.8rem;\n top: -1.3rem;\n }\n\n &:first-child::before {\n @extend %date-timeline;\n\n height: 3.06rem;\n top: -1.61rem;\n }\n }\n\n &:not(:last-child) > li:last-child::after {\n height: 3.4rem;\n }\n\n &:last-child > li:last-child::after {\n display: none;\n }\n } // #archives ul\n\n .date {\n white-space: nowrap;\n display: inline-block;\n\n &.month {\n width: 1.4rem;\n text-align: center;\n\n ~ a::before {\n /* A dot for Month and Day */\n content: \"\";\n display: inline-block;\n position: relative;\n -webkit-border-radius: 50%;\n -moz-border-radius: 50%;\n border-radius: 50%;\n width: 8px;\n height: 8px;\n float: left;\n top: 1.35rem;\n left: 69px;\n background-color: var(--timeline-node-bg);\n box-shadow: 0 0 3px 0 #c2c6cc;\n z-index: 1;\n }\n }\n\n &.day {\n font-size: 85%;\n font-family: 'Lato', sans-serif;\n text-align: center;\n margin-right: -2px;\n width: 1.2rem;\n position: relative;\n left: -0.15rem;\n }\n } // #archives .date\n\n} // #archives\n\n@media all and (max-width: 576px) {\n #archives {\n margin-top: -1rem;\n\n ul {\n letter-spacing: 0;\n }\n }\n}\n", + "/*\n Style for Tab Categories\n*/\n\n%category-icon-color {\n color: gray;\n}\n\n.categories {\n margin-bottom: 2rem;\n\n .card-header {\n padding-right: 12px;\n }\n\n i {\n @extend %category-icon-color;\n\n font-size: 86%; // fontawesome icons\n }\n\n .list-group-item {\n border-left: none;\n border-right: none;\n padding-left: 2rem;\n\n &:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n\n }\n\n} // .categories\n\n.category-trigger {\n width: 1.7rem;\n height: 1.7rem;\n border-radius: 50%;\n text-align: center;\n color: #6c757d !important;\n\n &:hover {\n i {\n color: var(--categories-icon-hover-color);\n }\n }\n\n i {\n position: relative;\n height: 0.7rem;\n width: 1rem;\n transition: transform 300ms ease;\n }\n}\n\n@media (hover: hover) { // only works on desktop\n .category-trigger:hover {\n background-color: var(--categories-hover-bg);\n }\n}\n\n.rotate {\n -ms-transform: rotate(-90deg); /* IE 9 */\n -webkit-transform: rotate(-90deg); /* Safari 3-8 */\n transform: rotate(-90deg);\n}\n", + "/*\n Style for page Category and Tag\n*/\n\n.dash {\n margin: 0 0.5rem 0.6rem 0.5rem;\n border-bottom: 2px dotted var(--dash-color);\n}\n\n#page-category,\n#page-tag {\n ul > li {\n line-height: 1.5rem;\n padding: 0.6rem 0;\n\n &::before { // dot\n background: #999;\n width: 5px;\n height: 5px;\n border-radius: 50%;\n display: block;\n content: \"\";\n position: relative;\n top: 0.6rem;\n margin-right: 0.5rem;\n }\n\n > a { /* post's title */\n @extend %no-bottom-border;\n\n font-size: 1.1rem;\n }\n\n > span:last-child {\n white-space: nowrap;\n } /* post's date */\n }\n}\n\n#page-tag h1 > i { // tag icon\n font-size: 1.2rem;\n}\n\n#page-category h1 > i {\n font-size: 1.25rem;\n}\n\n#page-category,\n#page-tag,\n#access-lastmod {\n a:hover {\n @extend %link-hover;\n\n margin-bottom: -1px; // Avoid jumping\n }\n}\n\n@media all and (max-width: 576px) {\n #page-category,\n #page-tag {\n ul > li {\n &::before {\n margin: 0 0.5rem;\n }\n\n > a {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n }\n}\n" + ], + "names": [], + "mappings": "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" +} \ No newline at end of file diff --git a/assets/img/avatar.jpg b/assets/img/avatar.jpg new file mode 100644 index 0000000..23aea52 Binary files /dev/null and b/assets/img/avatar.jpg differ diff --git a/assets/img/avatar2.png b/assets/img/avatar2.png new file mode 100644 index 0000000..14f75f2 Binary files /dev/null and b/assets/img/avatar2.png differ diff --git a/assets/img/avatar3.png b/assets/img/avatar3.png new file mode 100644 index 0000000..1238b31 Binary files /dev/null and b/assets/img/avatar3.png differ diff --git a/assets/img/favicons/android-chrome-192x192.png b/assets/img/favicons/android-chrome-192x192.png new file mode 100644 index 0000000..52c6db5 Binary files /dev/null and b/assets/img/favicons/android-chrome-192x192.png differ diff --git a/assets/img/favicons/android-chrome-512x512.png b/assets/img/favicons/android-chrome-512x512.png new file mode 100644 index 0000000..a8f96af Binary files /dev/null and b/assets/img/favicons/android-chrome-512x512.png differ diff --git a/assets/img/favicons/apple-touch-icon.png b/assets/img/favicons/apple-touch-icon.png new file mode 100644 index 0000000..186955a Binary files /dev/null and b/assets/img/favicons/apple-touch-icon.png differ diff --git a/assets/img/favicons/browserconfig.xml b/assets/img/favicons/browserconfig.xml new file mode 100644 index 0000000..54217f7 --- /dev/null +++ b/assets/img/favicons/browserconfig.xml @@ -0,0 +1 @@ + #da532c diff --git a/assets/img/favicons/favicon-16x16.png b/assets/img/favicons/favicon-16x16.png new file mode 100644 index 0000000..69a27e9 Binary files /dev/null and b/assets/img/favicons/favicon-16x16.png differ diff --git a/assets/img/favicons/favicon-32x32.png b/assets/img/favicons/favicon-32x32.png new file mode 100644 index 0000000..226d1df Binary files /dev/null and b/assets/img/favicons/favicon-32x32.png differ diff --git a/assets/img/favicons/favicon.ico b/assets/img/favicons/favicon.ico new file mode 100644 index 0000000..cee61d2 Binary files /dev/null and b/assets/img/favicons/favicon.ico differ diff --git a/assets/img/favicons/mstile-150x150.png b/assets/img/favicons/mstile-150x150.png new file mode 100644 index 0000000..33d682e Binary files /dev/null and b/assets/img/favicons/mstile-150x150.png differ diff --git a/assets/img/favicons/safari-pinned-tab.svg b/assets/img/favicons/safari-pinned-tab.svg new file mode 100644 index 0000000..fbbf252 --- /dev/null +++ b/assets/img/favicons/safari-pinned-tab.svg @@ -0,0 +1,129 @@ + + + + +Created by potrace 1.14, written by Peter Selinger 2001-2017 + + + + + + + + + + + + + + + + + diff --git a/assets/img/favicons/site.webmanifest b/assets/img/favicons/site.webmanifest new file mode 100644 index 0000000..0fdcd96 --- /dev/null +++ b/assets/img/favicons/site.webmanifest @@ -0,0 +1 @@ +{ "name": "Fiona Blackett", "short_name": "Fiona Blackett", "description": "I'm Fiona Blackett, a PhD student at the University of Strathclyde. Here is where you can find posts I've made as well as talks & my CV.", "icons": [ { "src": "/assets/img/favicons/android-chrome-192x192.png", "sizes": "192x192", "type": "image/png" }, { "src": "/assets/img/favicons/android-chrome-512x512.png", "sizes": "512x512", "type": "image/png" }], "start_url": "/index.html", "theme_color": "#2a1e6b", "background_color": "#ffffff", "display": "fullscreen" } diff --git a/assets/img/homotopy.gif b/assets/img/homotopy.gif new file mode 100644 index 0000000..eeb3d35 Binary files /dev/null and b/assets/img/homotopy.gif differ diff --git a/assets/img/square_wave_construction.gif b/assets/img/square_wave_construction.gif new file mode 100644 index 0000000..852677f Binary files /dev/null and b/assets/img/square_wave_construction.gif differ diff --git a/assets/img/square_wave_problems.jpg b/assets/img/square_wave_problems.jpg new file mode 100644 index 0000000..3fa3eb0 Binary files /dev/null and b/assets/img/square_wave_problems.jpg differ diff --git a/assets/index.html b/assets/index.html new file mode 100644 index 0000000..ba996ca --- /dev/null +++ b/assets/index.html @@ -0,0 +1,11 @@ + + + + Redirecting… + + + + +

Redirecting…

+ Click here if you are not redirected. + diff --git a/assets/js/data/search.json b/assets/js/data/search.json new file mode 100644 index 0000000..aa686d1 --- /dev/null +++ b/assets/js/data/search.json @@ -0,0 +1 @@ +[ { "title": "Topological Quantum Field Theories and Frobenius Algebras", "url": "/posts/tqft/", "categories": "Talks & Slides", "tags": "", "date": "2023-03-24 18:37:00 -0600", "snippet": "Talk I gave to the Society of Physics Students at Boulder, I aimed it to be comprehensible to early undergrads." }, { "title": "Headphone imaging, square waves, and why the Sennheiser HD800 are the best gaming headphones", "url": "/posts/imaging-squarewaves/", "categories": "Blogs", "tags": "", "date": "2023-01-03 17:57:00 -0700", "snippet": "On headphone forums an extremely common question is “what is a good pair of headphones for gaming”, and the responses usually include headphones which have good imaging and soundstage. But what really is good imaging? How can you tell what has good imaging and soundstage without having tried them before, from objective measurements? To understand this, we first have to understand how your ears actually determine the direction of a sound.Human audio spatialisationWhen a sound is made in the real world, it travels to your ears through the air, and interacts with your head and ears on the way. This gives a number of different properties which allow your brain to determine which direction a sound is coming from. The most direct is the time difference between the sound arriving at each ear (interaural time difference, or ITD), which allows fairly accurate pinpointing of sound to the left or right of your head. There’s also an overall volume difference (interaural intensity difference) from your head blocking some of the sound to one ear. The delay also introduces a phase offset (difference between the timing of peaks and troughs on each sound wave), and the origin of the sound vertically or back/front causes other frequency response and phase effects which are far too complicated to explain here. These effects are the basis of a head-related transfer function (HRTF), and the science behind these is a field in itself. However, these HRTFs are often simulated in software, so we can focus on what our headphones can actually affect, the timing difference between the two sides, and phase. How can we determine whether, and to what extent, a headphone preserves this information?Square wave response By Thenub314 - Own work, CC BY-SA 3.0 A square wave response chart is another way of showing a headphone’s frequency response in a sense, but can also provide some additional useful information for our purposes. The ability of the headphone to produce very high frequency sounds is reflected in the rising and falling edges of the square wave, and the low-frequency response is reflected in the ability of the headphone to “hold” the diaphragm at the “high” position. This edge response is also known as the slew rate of the headphones. The square wave chart also shows some phase information for both high and low frequency. The short explanation of square wave response and imaging is that the leading edges of the waves, and thus the high frequency response, are directly responsible for very clear time differences in signals arriving to your ears, and thus audio spatialisation and imaging. The brain can detect timing differences down to at least 10 MICROSECONDS so clarity here is of very high importance. The phase reflected in these diagrams additionaly can help or hinder your brain’s ability to interpret the direction of a sound. The below diagram has some basic issues with square waves and the corresponding causes. Tyll Hersten’s explanation of InnerFidelity measurements DAC filtersAn additional factor in the imaging of a pair of headphones can be the DAC/amp filter settings. DACs usually use filters to remove high frequency noise from the output, and many DACs provide the option to change which filters are used for this. I use a Topping DX3 Pro, and I found this article which not only explains some of the specific filters but has images of what each filter does to a single spike. Anecdotally, imaging on my setup improved a fair bit after switching to the F-5 filter from F-1, and this was somewhat confirmed in a very adhoc A/B test with CS:GO and Rainbow 6. I don’t really know of many good sources for these kinds of filters, but my understanding is that the slower roll-off filters have less ringing before and after transients, and linear phase response filters preserve phase response (of course).ConclusionHeadphone imaging is largely dependent on a fast and clear rising edge of a sound, though this is not the sole factor. HRTF imparts frequency response and phase information which improves the spatialisation of audio greatly. A headphone with good imaging still needs to be supported by a sound engine that actually performs the maths to get to your end result properly, and your DAC/amp can also affect this. The square wave curve offers a good rough benchmark for audio imaging from a given pair of headphones, and I’ve compared several headphones with (in)famously good and bad imaging and soundstage with the 300 and 3000 Hz square wave responses from Reference Audio Analyzer and the leading edges do follow this trend. I’m hoping to some quantitative analysis on these measurements as a follow-up, and I hope that measurement of imaging can progress to the point where very subjective recommendations are not the primary way to recommend a good pair of headphones for gaming.Sources and additional info Tyll Hersten’s explanation of InnerFidelity measurements is incredibly in depth and is what made me initially want to write this. Tyll Hersten’s talk “Finding Flat” has a section on square wave response RTINGS Imaging Scoring has good explanations of some other effects on headphones but their measurements seem to be somewhat out of whack with subjective views on what headphones have the best imaging and soundstage for games. I can’t really say if the zeitgeist is wrong or if their weightings of different factors is. Wikipedia - Sound localization by the human auditory system explains how humans actually interpret sound direction Topping DAC/amp filters explains DAC filter effects on transients " }, { "title": "The Eilenberg-Steenrod Axioms and Generalized (Co)homology Theories", "url": "/posts/generalised-homology/", "categories": "Talks & Slides", "tags": "", "date": "2022-08-26 21:44:00 -0600", "snippet": "A talk I gave as part of an online seminar on stable homotopy theory:" }, { "title": "Site infrastructure", "url": "/posts/site-infrastructure/", "categories": "Miscellaneous", "tags": "", "date": "2022-01-12 12:34:00 -0700", "snippet": "Hello all, for my first post here I figured I’d write a bit about my hosting of this site.I’m using Jekyll and Github Pages with the Chirpy theme. You can view the source here.The chirpy theme provides support for MathJax out of the box so the only thing I’ll be doing externally is somecommutative diagrams, probably with quiver.io or tikz-cd." } ] diff --git a/assets/js/data/swcache.js b/assets/js/data/swcache.js new file mode 100644 index 0000000..0fec7e4 --- /dev/null +++ b/assets/js/data/swcache.js @@ -0,0 +1 @@ +const resource = [ /* --- CSS --- */ '/assets/css/style.css', /* --- JavaScripts --- */ '/assets/js/dist/home.min.js', '/assets/js/dist/page.min.js', '/assets/js/dist/post.min.js', '/assets/js/dist/categories.min.js', '/assets/js/data/search.json', '/app.js', '/sw.js', /* --- HTML --- */ '/index.html', '/404.html', '/categories/', '/archives/', '/about/', /* --- Favicons --- */ '/assets/img/favicons/android-chrome-192x192.png', '/assets/img/favicons/android-chrome-512x512.png', '/assets/img/favicons/apple-touch-icon.png', '/assets/img/favicons/favicon-16x16.png', '/assets/img/favicons/favicon-32x32.png', '/assets/img/favicons/favicon.ico', '/assets/img/favicons/mstile-150x150.png', '/assets/img/favicons/site.webmanifest', '/assets/img/favicons/browserconfig.xml' ]; /* The request url with below domain will be cached */ const allowedDomains = [ 'fiona1729.github.io', 'fonts.gstatic.com', 'fonts.googleapis.com', 'cdn.jsdelivr.net', 'polyfill.io' ]; /* Requests that include the following path will be banned */ const denyUrls = [ ]; diff --git a/assets/js/dist/categories.min.js b/assets/js/dist/categories.min.js new file mode 100644 index 0000000..5aa4341 --- /dev/null +++ b/assets/js/dist/categories.min.js @@ -0,0 +1,6 @@ +/*! + * Chirpy v5.0.2 (https://github.com/cotes2020/jekyll-theme-chirpy/) + * © 2019 Cotes Chung + * MIT Licensed + */ +$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(e=>{const o=$(e.target);let t=o.prop("tagName")==="button".toUpperCase()?o:o.parent();t.blur(),flipMode()})}),$(function(){const e=$("#sidebar-trigger"),o=$("#search-trigger"),t=$("#search-cancel"),s=$("#search-cleaner"),a=$("#main"),l=$("#topbar-title"),r=$("#search-wrapper"),n=$("#search-result-wrapper"),d=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),u=function(){let e=0;return{block(){e=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(e)},getOffset(){return e}}}(),f={on(){e.addClass("unloaded"),l.addClass("unloaded"),o.addClass("unloaded"),r.addClass("d-flex"),t.addClass("loaded")},off(){t.removeClass("loaded"),r.removeClass("d-flex"),e.removeClass("unloaded"),l.removeClass("unloaded"),o.removeClass("unloaded")}},p=function(){let e=!1;return{on(){e||(u.block(),n.removeClass("unloaded"),a.addClass("unloaded"),e=!0)},off(){e&&(d.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),s.removeClass("visible"),a.removeClass("unloaded"),u.release(),i.val(""),e=!1)},isVisible(){return e}}}();function h(){return t.hasClass("loaded")}o.click(function(){f.on(),p.on(),i.focus()}),t.click(function(){f.off(),p.off()}),i.focus(function(){r.addClass("input-focus")}),i.focusout(function(){r.removeClass("input-focus")}),i.on("keyup",function(e){8===e.keyCode&&""===i.val()?h()?c.removeClass("unloaded"):p.off():""!==i.val()&&(p.on(),s.hasClass("visible")||s.addClass("visible"),h()&&c.addClass("unloaded"))}),s.on("click",function(){i.val(""),h()?(c.removeClass("unloaded"),d.empty()):p.off(),i.focus(),s.removeClass("visible")})}),$(function(){var e=function(){const e="sidebar-display";let o=!1;const t=$("body");return{toggle(){!1===o?t.attr(e,""):t.removeAttr(e),o=!o}}}();$("#sidebar-trigger").click(e.toggle),$("#mask").click(e.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const t=$("#topbar-wrapper"),o=$("#topbar-title"),s=$("#panel-wrapper"),a=$("#search-input"),l="topbar-up",r="topbar-down",n="toc-scrolling-up";let d,i=0;const c=t.outerHeight(),u=t.outerHeight();$(window).scroll(function(e){o.is(":hidden")&&(d=!0)}),setInterval(function(){d&&(function(){var e,o=$(this).scrollTop();Math.abs(i-o)<=c||(o>i?o>u&&(t.removeClass(r).addClass(l),s.removeClass(r),a.is(":focus")&&a.blur()):o+$(window).height()<$(document).height()&&(void 0!==(e=t.attr(n))?"false"===e&&t.removeAttr(n):(t.removeClass(l).addClass(r),s.addClass(r))),i=o)}(),d=!1)},250)}),$(function(){var o="div.post>h1:first-of-type";const t=$(o),r=$("#topbar-title");if(0!==t.length&&!t.hasClass("dynamic-title")&&!r.is(":hidden")){const n=r.text().trim();let s=t.text().trim(),a=!1,l=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(s)&&(s=s.replace(/[0-9]/g,"").trim());let e=new IntersectionObserver(e=>{var o,t;a?(o=$(window).scrollTop(),t=l{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(e=>{const o=$(e.target);let t=o.prop("tagName")==="button".toUpperCase()?o:o.parent();t.blur(),flipMode()})}),$(function(){const e=$("#sidebar-trigger"),o=$("#search-trigger"),t=$("#search-cancel"),s=$("#search-cleaner"),a=$("#main"),l=$("#topbar-title"),n=$("#search-wrapper"),r=$("#search-result-wrapper"),i=$("#search-results"),d=$("#search-input"),c=$("#search-hints"),u=function(){let e=0;return{block(){e=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(e)},getOffset(){return e}}}(),p={on(){e.addClass("unloaded"),l.addClass("unloaded"),o.addClass("unloaded"),n.addClass("d-flex"),t.addClass("loaded")},off(){t.removeClass("loaded"),n.removeClass("d-flex"),e.removeClass("unloaded"),l.removeClass("unloaded"),o.removeClass("unloaded")}},f=function(){let e=!1;return{on(){e||(u.block(),r.removeClass("unloaded"),a.addClass("unloaded"),e=!0)},off(){e&&(i.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),r.addClass("unloaded"),s.removeClass("visible"),a.removeClass("unloaded"),u.release(),d.val(""),e=!1)},isVisible(){return e}}}();function m(){return t.hasClass("loaded")}o.click(function(){p.on(),f.on(),d.focus()}),t.click(function(){p.off(),f.off()}),d.focus(function(){n.addClass("input-focus")}),d.focusout(function(){n.removeClass("input-focus")}),d.on("keyup",function(e){8===e.keyCode&&""===d.val()?m()?c.removeClass("unloaded"):f.off():""!==d.val()&&(f.on(),s.hasClass("visible")||s.addClass("visible"),m()&&c.addClass("unloaded"))}),s.on("click",function(){d.val(""),m()?(c.removeClass("unloaded"),i.empty()):f.off(),d.focus(),s.removeClass("visible")})}),$(function(){var e=function(){const e="sidebar-display";let o=!1;const t=$("body");return{toggle(){!1===o?t.attr(e,""):t.removeAttr(e),o=!o}}}();$("#sidebar-trigger").click(e.toggle),$("#mask").click(e.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const t=$("#topbar-wrapper"),o=$("#topbar-title"),s=$("#panel-wrapper"),a=$("#search-input"),l="topbar-up",n="topbar-down",r="toc-scrolling-up";let i,d=0;const c=t.outerHeight(),u=t.outerHeight();$(window).scroll(function(e){o.is(":hidden")&&(i=!0)}),setInterval(function(){i&&(function(){var e,o=$(this).scrollTop();Math.abs(d-o)<=c||(o>d?o>u&&(t.removeClass(n).addClass(l),s.removeClass(n),a.is(":focus")&&a.blur()):o+$(window).height()<$(document).height()&&(void 0!==(e=t.attr(r))?"false"===e&&t.removeAttr(r):(t.removeClass(l).addClass(n),s.addClass(n))),d=o)}(),i=!1)},250)}),$(function(){var o="div.post>h1:first-of-type";const t=$(o),n=$("#topbar-title");if(0!==t.length&&!t.hasClass("dynamic-title")&&!n.is(":hidden")){const r=n.text().trim();let s=t.text().trim(),a=!1,l=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(s)&&(s=s.replace(/[0-9]/g,"").trim());let e=new IntersectionObserver(e=>{var o,t;a?(o=$(window).scrollTop(),t=l{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(t=>{const e=$(t.target);let o=e.prop("tagName")==="button".toUpperCase()?e:e.parent();o.blur(),flipMode()})}),$(function(){const t=$("#sidebar-trigger"),e=$("#search-trigger"),o=$("#search-cancel"),a=$("#search-cleaner"),s=$("#main"),l=$("#topbar-title"),n=$("#search-wrapper"),r=$("#search-result-wrapper"),i=$("#search-results"),d=$("#search-input"),c=$("#search-hints"),u=function(){let t=0;return{block(){t=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(t)},getOffset(){return t}}}(),p={on(){t.addClass("unloaded"),l.addClass("unloaded"),e.addClass("unloaded"),n.addClass("d-flex"),o.addClass("loaded")},off(){o.removeClass("loaded"),n.removeClass("d-flex"),t.removeClass("unloaded"),l.removeClass("unloaded"),e.removeClass("unloaded")}},f=function(){let t=!1;return{on(){t||(u.block(),r.removeClass("unloaded"),s.addClass("unloaded"),t=!0)},off(){t&&(i.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),r.addClass("unloaded"),a.removeClass("visible"),s.removeClass("unloaded"),u.release(),d.val(""),t=!1)},isVisible(){return t}}}();function m(){return o.hasClass("loaded")}e.click(function(){p.on(),f.on(),d.focus()}),o.click(function(){p.off(),f.off()}),d.focus(function(){n.addClass("input-focus")}),d.focusout(function(){n.removeClass("input-focus")}),d.on("keyup",function(t){8===t.keyCode&&""===d.val()?m()?c.removeClass("unloaded"):f.off():""!==d.val()&&(f.on(),a.hasClass("visible")||a.addClass("visible"),m()&&c.addClass("unloaded"))}),a.on("click",function(){d.val(""),m()?(c.removeClass("unloaded"),i.empty()):f.off(),d.focus(),a.removeClass("visible")})}),$(function(){var t=function(){const t="sidebar-display";let e=!1;const o=$("body");return{toggle(){!1===e?o.attr(t,""):o.removeAttr(t),e=!e}}}();$("#sidebar-trigger").click(t.toggle),$("#mask").click(t.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const o=$("#topbar-wrapper"),e=$("#topbar-title"),a=$("#panel-wrapper"),s=$("#search-input"),l="topbar-up",n="topbar-down",r="toc-scrolling-up";let i,d=0;const c=o.outerHeight(),u=o.outerHeight();$(window).scroll(function(t){e.is(":hidden")&&(i=!0)}),setInterval(function(){i&&(function(){var t,e=$(this).scrollTop();Math.abs(d-e)<=c||(e>d?e>u&&(o.removeClass(n).addClass(l),a.removeClass(n),s.is(":focus")&&s.blur()):e+$(window).height()<$(document).height()&&(void 0!==(t=o.attr(r))?"false"===t&&o.removeAttr(r):(o.removeClass(l).addClass(n),a.addClass(n))),d=e)}(),i=!1)},250)}),$(function(){var e="div.post>h1:first-of-type";const o=$(e),n=$("#topbar-title");if(0!==o.length&&!o.hasClass("dynamic-title")&&!n.is(":hidden")){const r=n.text().trim();let a=o.text().trim(),s=!1,l=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(a)&&(a=a.replace(/[0-9]/g,"").trim());let t=new IntersectionObserver(t=>{var e,o;s?(e=$(window).scrollTop(),o=l{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(t=>{const e=$(t.target);let o=e.prop("tagName")==="button".toUpperCase()?e:e.parent();o.blur(),flipMode()})}),$(function(){const t=$("#sidebar-trigger"),e=$("#search-trigger"),o=$("#search-cancel"),a=$("#search-cleaner"),s=$("#main"),l=$("#topbar-title"),r=$("#search-wrapper"),n=$("#search-result-wrapper"),i=$("#search-results"),c=$("#search-input"),d=$("#search-hints"),u=function(){let t=0;return{block(){t=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(t)},getOffset(){return t}}}(),p={on(){t.addClass("unloaded"),l.addClass("unloaded"),e.addClass("unloaded"),r.addClass("d-flex"),o.addClass("loaded")},off(){o.removeClass("loaded"),r.removeClass("d-flex"),t.removeClass("unloaded"),l.removeClass("unloaded"),e.removeClass("unloaded")}},f=function(){let t=!1;return{on(){t||(u.block(),n.removeClass("unloaded"),s.addClass("unloaded"),t=!0)},off(){t&&(i.empty(),d.hasClass("unloaded")&&d.removeClass("unloaded"),n.addClass("unloaded"),a.removeClass("visible"),s.removeClass("unloaded"),u.release(),c.val(""),t=!1)},isVisible(){return t}}}();function h(){return o.hasClass("loaded")}e.click(function(){p.on(),f.on(),c.focus()}),o.click(function(){p.off(),f.off()}),c.focus(function(){r.addClass("input-focus")}),c.focusout(function(){r.removeClass("input-focus")}),c.on("keyup",function(t){8===t.keyCode&&""===c.val()?h()?d.removeClass("unloaded"):f.off():""!==c.val()&&(f.on(),a.hasClass("visible")||a.addClass("visible"),h()&&d.addClass("unloaded"))}),a.on("click",function(){c.val(""),h()?(d.removeClass("unloaded"),i.empty()):f.off(),c.focus(),a.removeClass("visible")})}),$(function(){var t=function(){const t="sidebar-display";let e=!1;const o=$("body");return{toggle(){!1===e?o.attr(t,""):o.removeAttr(t),e=!e}}}();$("#sidebar-trigger").click(t.toggle),$("#mask").click(t.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const o=$("#topbar-wrapper"),e=$("#topbar-title"),a=$("#panel-wrapper"),s=$("#search-input"),l="topbar-up",r="topbar-down",n="toc-scrolling-up";let i,c=0;const d=o.outerHeight(),u=o.outerHeight();$(window).scroll(function(t){e.is(":hidden")&&(i=!0)}),setInterval(function(){i&&(function(){var t,e=$(this).scrollTop();Math.abs(c-e)<=d||(e>c?e>u&&(o.removeClass(r).addClass(l),a.removeClass(r),s.is(":focus")&&s.blur()):e+$(window).height()<$(document).height()&&(void 0!==(t=o.attr(n))?"false"===t&&o.removeAttr(n):(o.removeClass(l).addClass(r),a.addClass(r))),c=e)}(),i=!1)},250)}),$(function(){var e="div.post>h1:first-of-type";const o=$(e),r=$("#topbar-title");if(0!==o.length&&!o.hasClass("dynamic-title")&&!r.is(":hidden")){const n=r.text().trim();let a=o.text().trim(),s=!1,l=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(a)&&(a=a.replace(/[0-9]/g,"").trim());let t=new IntersectionObserver(t=>{var e,o;s?(e=$(window).scrollTop(),o=l'),$("input[type=checkbox]:not([checked])").before('')}),$(function(){var t="#main > div.row:first-child > div:first-child";if(!($(t+" img").length<=0)){var e=document.querySelectorAll(t+" img[data-src]");const o=lozad(e);o.observe(),$(t+` p > img[data-src],${t} img[data-src].preview-img`).each(function(){let t=$(this).next();var e="EM"===t.prop("tagName")?t.text():"",o=$(this).attr("data-src");$(this).wrap(``)}),$(".popup").magnificPopup({type:"image",closeOnContentClick:!0,showCloseBtn:!1,zoom:{enabled:!0,duration:300,easing:"ease-in-out"}}),$(t+" a").has("img").addClass("img-link")}}),$(function(){var t=".code-header>button";const e="timeout";function s(t){if($(t)[0].hasAttribute(e)){t=$(t).attr(e);if(Number(t)>Date.now())return 1}}function l(t){$(t).attr(e,Date.now()+2e3)}function r(t){$(t).removeAttr(e)}const o=new ClipboardJS(t,{target(t){let e=t.parentNode.nextElementSibling;return e.querySelector("code .rouge-code")}});$(t).tooltip({trigger:"hover",placement:"left"});const a=function(t){let e=$(t).children();return e.attr("class")}(t);o.on("success",t=>{t.clearSelection();const e=t.trigger;var o;s(e)||(function(t){let e=$(t),o=e.children();o.attr("class","fas fa-check")}(e),o=e,t=$(o).attr("title-succeed"),$(o).attr("data-original-title",t).tooltip("show"),l(e),setTimeout(()=>{var t;t=e,$(t).tooltip("hide").removeAttr("data-original-title"),function(t){let e=$(t),o=e.children();o.attr("class",a)}(e),r(e)},2e3))}),$("#copy-link").click(t=>{let e=$(t.target);if(!s(e)){t=window.location.href;const o=$("");$("body").append(o),o.val(t).select(),document.execCommand("copy"),o.remove();const a=e.attr("data-original-title");t=e.attr("title-succeed");e.attr("data-original-title",t).tooltip("show"),l(e),setTimeout(()=>{e.attr("data-original-title",a),r(e)},2e3)}})}),$(function(){const i=$("#topbar-wrapper"),c=i.outerHeight(),t=$("#topbar-title"),d="toc-scrolling-up",u="scroll-focus";let p=0;$("a[href*='#']").not("[href='#']").not("[href='#0']").click(function(s){if(this.pathname.replace(/^\//,"")===location.pathname.replace(/^\//,"")&&location.hostname===this.hostname){const n=decodeURI(this.hash);let e=RegExp(/^#fnref:/).test(n),o=!e&&RegExp(/^#fn:/).test(n);var l=n.includes(":")?n.replace(/\:/g,"\\:"):n;let a=$(l);var r=$(this).parent().prop("tagName"),l=RegExp(/^H\d/).test(r),r=!t.is(":hidden");if(void 0!==a){s.preventDefault(),history.pushState&&history.pushState(null,null,n);s=l?$(this).offset().top:$(window).scrollTop();let t=a.offset().top-=8;t(a.focus(),$(`[${u}=true]`).length&&$(`[${u}=true]`).attr(u,!1),$(":target").length&&$(":target").attr(u,!1),(o||e)&&a.attr(u,!0),a.is(":focus")?!1:(a.attr("tabindex","-1"),a.focus(),void(void 0!==i.attr(d)&&(--p,p<=0&&i.attr(d,"false"))))))}}})}); \ No newline at end of file diff --git a/assets/js/dist/post.min.js b/assets/js/dist/post.min.js new file mode 100644 index 0000000..7353d90 --- /dev/null +++ b/assets/js/dist/post.min.js @@ -0,0 +1,6 @@ +/*! + * Chirpy v5.0.2 (https://github.com/cotes2020/jekyll-theme-chirpy/) + * © 2019 Cotes Chung + * MIT Licensed + */ +$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(t=>{const e=$(t.target);let o=e.prop("tagName")==="button".toUpperCase()?e:e.parent();o.blur(),flipMode()})}),$(function(){const t=$("#sidebar-trigger"),e=$("#search-trigger"),o=$("#search-cancel"),a=$("#search-cleaner"),n=$("#main"),r=$("#topbar-title"),l=$("#search-wrapper"),s=$("#search-result-wrapper"),i=$("#search-results"),c=$("#search-input"),d=$("#search-hints"),u=function(){let t=0;return{block(){t=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(t)},getOffset(){return t}}}(),p={on(){t.addClass("unloaded"),r.addClass("unloaded"),e.addClass("unloaded"),l.addClass("d-flex"),o.addClass("loaded")},off(){o.removeClass("loaded"),l.removeClass("d-flex"),t.removeClass("unloaded"),r.removeClass("unloaded"),e.removeClass("unloaded")}},f=function(){let t=!1;return{on(){t||(u.block(),s.removeClass("unloaded"),n.addClass("unloaded"),t=!0)},off(){t&&(i.empty(),d.hasClass("unloaded")&&d.removeClass("unloaded"),s.addClass("unloaded"),a.removeClass("visible"),n.removeClass("unloaded"),u.release(),c.val(""),t=!1)},isVisible(){return t}}}();function h(){return o.hasClass("loaded")}e.click(function(){p.on(),f.on(),c.focus()}),o.click(function(){p.off(),f.off()}),c.focus(function(){l.addClass("input-focus")}),c.focusout(function(){l.removeClass("input-focus")}),c.on("keyup",function(t){8===t.keyCode&&""===c.val()?h()?d.removeClass("unloaded"):f.off():""!==c.val()&&(f.on(),a.hasClass("visible")||a.addClass("visible"),h()&&d.addClass("unloaded"))}),a.on("click",function(){c.val(""),h()?(d.removeClass("unloaded"),i.empty()):f.off(),c.focus(),a.removeClass("visible")})}),$(function(){var t=function(){const t="sidebar-display";let e=!1;const o=$("body");return{toggle(){!1===e?o.attr(t,""):o.removeAttr(t),e=!e}}}();$("#sidebar-trigger").click(t.toggle),$("#mask").click(t.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const o=$("#topbar-wrapper"),e=$("#topbar-title"),a=$("#panel-wrapper"),n=$("#search-input"),r="topbar-up",l="topbar-down",s="toc-scrolling-up";let i,c=0;const d=o.outerHeight(),u=o.outerHeight();$(window).scroll(function(t){e.is(":hidden")&&(i=!0)}),setInterval(function(){i&&(function(){var t,e=$(this).scrollTop();Math.abs(c-e)<=d||(e>c?e>u&&(o.removeClass(l).addClass(r),a.removeClass(l),n.is(":focus")&&n.blur()):e+$(window).height()<$(document).height()&&(void 0!==(t=o.attr(s))?"false"===t&&o.removeAttr(s):(o.removeClass(r).addClass(l),a.addClass(l))),c=e)}(),i=!1)},250)}),$(function(){var e="div.post>h1:first-of-type";const o=$(e),l=$("#topbar-title");if(0!==o.length&&!o.hasClass("dynamic-title")&&!l.is(":hidden")){const s=l.text().trim();let a=o.text().trim(),n=!1,r=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(a)&&(a=a.replace(/[0-9]/g,"").trim());let t=new IntersectionObserver(t=>{var e,o;n?(e=$(window).scrollTop(),o=r img[data-src],${t} img[data-src].preview-img`).each(function(){let t=$(this).next();var e="EM"===t.prop("tagName")?t.text():"",o=$(this).attr("data-src");$(this).wrap(``)}),$(".popup").magnificPopup({type:"image",closeOnContentClick:!0,showCloseBtn:!1,zoom:{enabled:!0,duration:300,easing:"ease-in-out"}}),$(t+" a").has("img").addClass("img-link")}}),$(function(){let o=$(".timeago").length,t=void 0;const n=$("meta[name=day-prompt]").attr("content"),r=$("meta[name=hour-prompt]").attr("content"),l=$("meta[name=minute-prompt]").attr("content"),s=$("meta[name=justnow-prompt]").attr("content");function e(){return $(".timeago").each(function(){var t,e;!1!==$(this)[0].hasAttribute("date")?(e=function(t,e){let o=new Date,a=new Date(t);return a.getFullYear()!==o.getFullYear()||a.getMonth()!==o.getMonth()?e:(t=Math.floor((o-a)/1e3),1<=(e=Math.floor(t/86400))?` ${e} `+n:1<=(e=Math.floor(t/3600))?` ${e} `+r:1<=(t=Math.floor(t/60))?` ${t} `+l:s)}($(this).attr("date"),t=$(this).text()))===t?$(this).removeAttr("date"):$(this).text(e):--o}),0===o&&void 0!==t&&clearInterval(t),o}0!==o&&0'),$("input[type=checkbox]:not([checked])").before('')}),$(function(){var t=".code-header>button";const e="timeout";function n(t){if($(t)[0].hasAttribute(e)){t=$(t).attr(e);if(Number(t)>Date.now())return 1}}function r(t){$(t).attr(e,Date.now()+2e3)}function l(t){$(t).removeAttr(e)}const o=new ClipboardJS(t,{target(t){let e=t.parentNode.nextElementSibling;return e.querySelector("code .rouge-code")}});$(t).tooltip({trigger:"hover",placement:"left"});const a=function(t){let e=$(t).children();return e.attr("class")}(t);o.on("success",t=>{t.clearSelection();const e=t.trigger;var o;n(e)||(function(t){let e=$(t),o=e.children();o.attr("class","fas fa-check")}(e),o=e,t=$(o).attr("title-succeed"),$(o).attr("data-original-title",t).tooltip("show"),r(e),setTimeout(()=>{var t;t=e,$(t).tooltip("hide").removeAttr("data-original-title"),function(t){let e=$(t),o=e.children();o.attr("class",a)}(e),l(e)},2e3))}),$("#copy-link").click(t=>{let e=$(t.target);if(!n(e)){t=window.location.href;const o=$("");$("body").append(o),o.val(t).select(),document.execCommand("copy"),o.remove();const a=e.attr("data-original-title");t=e.attr("title-succeed");e.attr("data-original-title",t).tooltip("show"),r(e),setTimeout(()=>{e.attr("data-original-title",a),l(e)},2e3)}})}),$(function(){const i=$("#topbar-wrapper"),c=i.outerHeight(),t=$("#topbar-title"),d="toc-scrolling-up",u="scroll-focus";let p=0;$("a[href*='#']").not("[href='#']").not("[href='#0']").click(function(n){if(this.pathname.replace(/^\//,"")===location.pathname.replace(/^\//,"")&&location.hostname===this.hostname){const s=decodeURI(this.hash);let e=RegExp(/^#fnref:/).test(s),o=!e&&RegExp(/^#fn:/).test(s);var r=s.includes(":")?s.replace(/\:/g,"\\:"):s;let a=$(r);var l=$(this).parent().prop("tagName"),r=RegExp(/^H\d/).test(l),l=!t.is(":hidden");if(void 0!==a){n.preventDefault(),history.pushState&&history.pushState(null,null,s);n=r?$(this).offset().top:$(window).scrollTop();let t=a.offset().top-=8;t(a.focus(),$(`[${u}=true]`).length&&$(`[${u}=true]`).attr(u,!1),$(":target").length&&$(":target").attr(u,!1),(o||e)&&a.attr(u,!0),a.is(":focus")?!1:(a.attr("tabindex","-1"),a.focus(),void(void 0!==i.attr(d)&&(--p,p<=0&&i.attr(d,"false"))))))}}})}); \ No newline at end of file diff --git a/assets/js/dist/pvreport.min.js b/assets/js/dist/pvreport.min.js new file mode 100644 index 0000000..f0ba70c --- /dev/null +++ b/assets/js/dist/pvreport.min.js @@ -0,0 +1,6 @@ +/*! + * Chirpy v5.0.2 (https://github.com/cotes2020/jekyll-theme-chirpy/) + * © 2019 Cotes Chung + * MIT Licensed + */ +const getInitStatus=function(){let t=!1;return()=>{var e=t;return t=t||!0,e}}(),PvOpts=function(){function t(e){return $(e).attr("content")}function e(e){e=t(e);return void 0!==e&&!1!==e}return{getProxyMeta(){return t("meta[name=pv-proxy-endpoint]")},getLocalMeta(){return t("meta[name=pv-cache-path]")},hasProxyMeta(){return e("meta[name=pv-proxy-endpoint]")},hasLocalMeta(){return e("meta[name=pv-cache-path]")}}}(),PvStorage=function(){const a={KEY_PV:"pv",KEY_PV_SRC:"pv_src",KEY_CREATION:"pv_created_date"},t={LOCAL:"same-origin",PROXY:"cors"};function r(e){return localStorage.getItem(e)}function o(e,t){localStorage.setItem(e,t)}function n(e,t){o(a.KEY_PV,e),o(a.KEY_PV_SRC,t),o(a.KEY_CREATION,(new Date).toJSON())}return{keysCount(){return Object.keys(a).length},hasCache(){return null!==localStorage.getItem(a.KEY_PV)},getCache(){return JSON.parse(localStorage.getItem(a.KEY_PV))},saveLocalCache(e){n(e,t.LOCAL)},saveProxyCache(e){n(e,t.PROXY)},isExpired(){let e=new Date(r(a.KEY_CREATION));return e.setHours(e.getHours()+1),Date.now()>=e.getTime()},isFromLocal(){return r(a.KEY_PV_SRC)===t.LOCAL},isFromProxy(){return r(a.KEY_PV_SRC)===t.PROXY},newerThan(e){return PvStorage.getCache().totalsForAllResults["ga:pageviews"]>e.totalsForAllResults["ga:pageviews"]},inspectKeys(){if(localStorage.length===PvStorage.keysCount())for(let e=0;er&&countUp(r,o,a.attr("id"))):a.text((new Intl.NumberFormat).format(o))}function displayPageviews(e){if(void 0!==e){let t=getInitStatus();const a=e.rows;0<$("#post-list").length?$(".post-preview").each(function(){var e=$(this).find("a").attr("href");tacklePV(a,e,$(this).find(".pageviews"),t)}):0<$(".post").length&&(e=window.location.pathname,tacklePV(a,e,$("#pv"),t))}}function fetchProxyPageviews(){PvOpts.hasProxyMeta()&&$.ajax({type:"GET",url:PvOpts.getProxyMeta(),dataType:"jsonp",jsonpCallback:"displayPageviews",success:e=>{PvStorage.saveProxyCache(JSON.stringify(e))},error:(e,t,a)=>{console.log("Failed to load pageviews from proxy server: "+a)}})}function fetchLocalPageviews(t=!1){return fetch(PvOpts.getLocalMeta()).then(e=>e.json()).then(e=>{t&&PvStorage.isFromProxy()&&PvStorage.newerThan(e)||(displayPageviews(e),PvStorage.saveLocalCache(JSON.stringify(e)))})}$(function(){$(".pageviews").length<=0||(PvStorage.inspectKeys(),PvStorage.hasCache()?(displayPageviews(PvStorage.getCache()),PvStorage.isExpired()?PvOpts.hasLocalMeta()?fetchLocalPageviews(!0).then(fetchProxyPageviews):fetchProxyPageviews():PvStorage.isFromLocal()&&fetchProxyPageviews()):PvOpts.hasLocalMeta()?fetchLocalPageviews().then(fetchProxyPageviews):fetchProxyPageviews())}); \ No newline at end of file diff --git a/assets/js/tda.js b/assets/js/tda.js new file mode 100644 index 0000000..329aafc --- /dev/null +++ b/assets/js/tda.js @@ -0,0 +1,2 @@ +/*! For license information please see tda.js.LICENSE.txt */ +(()=>{var t={258:(t,n,r)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.multiplyCol=n.replaceCol=n.exchangeCols=n.multiplyRow=n.replaceRow=n.exchangeRows=void 0;const e=r(394),u={offset:0,copy:!1,changeBase:!0},i={offset:0,copy:!1,changeBase:!1};n.exchangeRows=function t(n,r,o,a){const f={...u,...a},c=f.copy?e.copyMat(o):o;let l=c[n];c[n]=c[r],c[r]=l;const s=f.changeBase?t(n,r,e.idMat(c.length),i)[0]:[];return[c,s,s]},n.replaceRow=function t(n,r,o,a,f){const c={...u,...f},l=c.copy?e.copyMat(a):a;for(let t=c.offset||0;tr*t));const l=f.changeBase?t(n,r,e.idMat(c.length),i)[0]:[];return[c,l,l]},n.exchangeCols=function t(n,r,o,a){const f={...u,...a},c=f.copy?e.copyMat(o):o;for(let t=0;t{"use strict";n.nt=n.Fr=void 0;var e=r(394);Object.defineProperty(n,"Fr",{enumerable:!0,get:function(){return e.isZero}});var u=r(473);Object.defineProperty(n,"nt",{enumerable:!0,get:function(){return u.NormalForm}});r(258)},473:(t,n,r)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.NormalForm=void 0;const e=r(394),u=r(258),i=r(394),o={copy:!0,changeBases:!0,recordSteps:!1};n.NormalForm=class{A;n;m;P;Q;diag;D;steps;opts;Qinv;constructor(t,n){if(t&&0===t.length)throw new Error("Matrix is empty.");for(let n of t)if(0===n.length||n.length!==t[0].length)throw new Error("Matrix is malformed.");if(i.isZero(t))throw new Error("Matrix has all zero entries.");this.opts={...o,...n},this.steps=[],this.A=e.copyMat(t),this.n=this.A.length,this.m=this.A[0].length,this.D=this.opts.copy?e.copyMat(t):t,[this.P,this.Q,this.Qinv]=this.opts.changeBases?[e.idMat(this.m),e.idMat(this.n),e.idMat(this.n)]:[[],[],[]],this.diag=new Array,this.reduce(0,Math.min(this.m,this.n))}isValid(){return e.equalMatrix(e.multiplyMat(this.A,this.P),e.multiplyMat(this.Q,this.D))}reduce(t,n){if(t>=n||i.isZero(this.D,t))return;let[r,e]=this.improvePivot(t);this.addStep({name:"improvedPivot",pivot:[r,e],antiPivot:[],offset:t}),this.movePivot([r,e],t),this.diagonalizePivot(t),this.addStep({name:"offset",offset:t}),this.diag.push(this.D[t][t]),this.reduce(t+1,n)}improvePivot(t){let n,r;for(;;){[n,r]=i.findPivot(this.D,t);let o=i.findAntiPivot([n,r],this.D,t);if(0===o.length)break;let[a,f]=o;if(this.addStep({name:"improvePivot",pivot:[n,r],antiPivot:[a,f],offset:t}),r===f){let i=-Math.floor(this.D[a][r]/this.D[n][r]),[,o,f]=u.replaceRow(a,n,i,this.D,{offset:t,changeBase:this.opts.changeBases});this.opts.changeBases&&(this.Q=e.multiplyMat(this.Q,f),this.Qinv=e.multiplyMat(o,this.Qinv)),this.addStep({name:"replaceRow",args:[a,n,i],offset:t})}else if(n===a){let i=-Math.floor(this.D[n][f]/this.D[n][r]),[,o]=u.replaceCol(f,r,i,this.D,{offset:t,changeBase:this.opts.changeBases});this.opts.changeBases&&(this.P=e.multiplyMat(this.P,o)),this.addStep({name:"replaceCol",args:[f,r,i],offset:t})}else{if(0!==this.D[a][r]){let i=-Math.floor(this.D[a][r]/this.D[n][r]),[o,f,c]=u.replaceRow(a,n,i,this.D,{offset:t,changeBase:this.opts.changeBases});this.opts.changeBases&&(this.Q=e.multiplyMat(this.Q,c),this.Qinv=e.multiplyMat(f,this.Qinv)),this.addStep({name:"replaceRow",args:[a,n,i],offset:t})}let[i,o,c]=u.replaceRow(n,a,1,this.D,{offset:t,changeBase:this.opts.changeBases});this.opts.changeBases&&(this.Q=e.multiplyMat(this.Q,c),this.Qinv=e.multiplyMat(o,this.Qinv)),this.addStep({name:"replaceRow",args:[n,a,1],offset:t});let l=-Math.floor(this.D[n][f]/this.D[n][r]);[i,o,c]=u.replaceCol(f,r,l,this.D,{offset:t,changeBase:this.opts.changeBases}),this.opts.changeBases&&(this.P=e.multiplyMat(this.P,o)),this.addStep({name:"replaceCol",args:[f,r,l],offset:t})}}return[n,r]}movePivot([t,n],r){if(t!==r){let[n,i,o]=u.exchangeRows(r,t,this.D,{changeBase:this.opts.changeBases});this.opts.changeBases&&(this.Q=e.multiplyMat(this.Q,o),this.Qinv=e.multiplyMat(i,this.Qinv)),this.addStep({name:"exchangeRows",args:[r,t],offset:r})}if(n!==r){let[t,i,o]=u.exchangeCols(r,n,this.D,{changeBase:this.opts.changeBases});this.opts.changeBases&&(this.P=e.multiplyMat(this.P,i)),this.addStep({name:"exchangeCols",args:[r,n],offset:r})}if(this.D[r][r]<0){let[t,n,i]=u.multiplyRow(r,-1,this.D,{changeBase:this.opts.changeBases});this.opts.changeBases&&(this.Q=e.multiplyMat(this.Q,n),this.Qinv=e.multiplyMat(n,this.Qinv)),this.addStep({name:"multiplyRow",args:[r,-1],offset:r})}}diagonalizePivot(t){for(let n=t+1;n{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.improvePivot=n.findPivot=n.findAntiPivot=n.isZero=n.equalMatrix=n.multiplyMat=n.copyMat=n.idMat=n.changeBasis=n.vec2Tex=n.mat2Tex=void 0;const e=r(258);function u(t){return t.map((t=>t.slice()))}n.mat2Tex=function(t){return`\\left(\\begin{matrix}\n ${t.map((t=>t.map((t=>t)).join(" & "))).join(" \\\\ ")}\n \\end{matrix}\\right)`.replace("//g","\\")},n.vec2Tex=function(t){return("\\left("+t.join(", ")+"\\right)").replace("//g","\\")},n.changeBasis=function(t,n){const r=[],e=t.length;for(let u=0;u1?"+"+e+t[r]:"-"+Math.abs(e)+t[r])}"+"===i[0]&&(i=i.slice(1)),r[u]=i}return r},n.idMat=function(t){let n=new Array(t);for(let r=0;r0&&Math.abs(r)>Math.abs(n)&&(r=n,e=[u,i])}}if(r===Number.MAX_VALUE)throw new Error("Matrix can not have all zeros.");return e},n.improvePivot=function(t,n,r,i=0){const[o,a]=t;if(r=u(r),0===n.length)return r;const[f,c]=n;if(a===c){let t=-Math.floor(r[f][a]/r[o][a]);e.replaceRow(f,o,t,r,{offset:i})}else if(o===f){let t=-Math.floor(r[o][c]/r[o][a]);e.replaceCol(c,a,t,r,{offset:i})}else{if(0!==r[f][a]){let t=-Math.floor(r[f][a]/r[o][a]);e.replaceRow(f,o,t,r,{offset:i})}e.replaceRow(o,f,1,r,{offset:i});let t=-Math.floor(r[o][c]/r[o][a]);e.replaceCol(c,a,t,r,{offset:i})}return r}},486:function(t,n,r){var e;t=r.nmd(t),function(){var u,i="Expected a function",o="__lodash_hash_undefined__",a="__lodash_placeholder__",f=32,c=128,l=1/0,s=9007199254740991,h=NaN,p=4294967295,v=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",f],["partialRight",64],["rearg",256]],g="[object Arguments]",_="[object Array]",y="[object Boolean]",d="[object Date]",m="[object Error]",w="[object Function]",b="[object GeneratorFunction]",x="[object Map]",A="[object Number]",M="[object Object]",j="[object Promise]",B="[object RegExp]",I="[object Set]",R="[object String]",S="[object Symbol]",E="[object WeakMap]",k="[object ArrayBuffer]",O="[object DataView]",P="[object Float32Array]",D="[object Float64Array]",C="[object Int8Array]",z="[object Int16Array]",T="[object Int32Array]",L="[object Uint8Array]",W="[object Uint8ClampedArray]",F="[object Uint16Array]",U="[object Uint32Array]",N=/\b__p \+= '';/g,q=/\b(__p \+=) '' \+/g,Q=/(__e\(.*?\)|\b__t\)) \+\n'';/g,$=/&(?:amp|lt|gt|quot|#39);/g,Z=/[&<>"']/g,V=RegExp($.source),K=RegExp(Z.source),H=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,G=/<%=([\s\S]+?)%>/g,J=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,X=/^\w*$/,tt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,nt=/[\\^$.*+?()[\]{}|]/g,rt=RegExp(nt.source),et=/^\s+/,ut=/\s/,it=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ot=/\{\n\/\* \[wrapped with (.+)\] \*/,at=/,? & /,ft=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ct=/[()=,{}\[\]\/\s]/,lt=/\\(\\)?/g,st=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ht=/\w*$/,pt=/^[-+]0x[0-9a-f]+$/i,vt=/^0b[01]+$/i,gt=/^\[object .+?Constructor\]$/,_t=/^0o[0-7]+$/i,yt=/^(?:0|[1-9]\d*)$/,dt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,mt=/($^)/,wt=/['\n\r\u2028\u2029\\]/g,bt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xt="a-z\\xdf-\\xf6\\xf8-\\xff",At="A-Z\\xc0-\\xd6\\xd8-\\xde",Mt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",jt="["+Mt+"]",Bt="["+bt+"]",It="\\d+",Rt="["+xt+"]",St="[^\\ud800-\\udfff"+Mt+It+"\\u2700-\\u27bf"+xt+At+"]",Et="\\ud83c[\\udffb-\\udfff]",kt="[^\\ud800-\\udfff]",Ot="(?:\\ud83c[\\udde6-\\uddff]){2}",Pt="[\\ud800-\\udbff][\\udc00-\\udfff]",Dt="["+At+"]",Ct="(?:"+Rt+"|"+St+")",zt="(?:"+Dt+"|"+St+")",Tt="(?:['’](?:d|ll|m|re|s|t|ve))?",Lt="(?:['’](?:D|LL|M|RE|S|T|VE))?",Wt="(?:"+Bt+"|"+Et+")?",Ft="[\\ufe0e\\ufe0f]?",Ut=Ft+Wt+"(?:\\u200d(?:"+[kt,Ot,Pt].join("|")+")"+Ft+Wt+")*",Nt="(?:"+["[\\u2700-\\u27bf]",Ot,Pt].join("|")+")"+Ut,qt="(?:"+[kt+Bt+"?",Bt,Ot,Pt,"[\\ud800-\\udfff]"].join("|")+")",Qt=RegExp("['’]","g"),$t=RegExp(Bt,"g"),Zt=RegExp(Et+"(?="+Et+")|"+qt+Ut,"g"),Vt=RegExp([Dt+"?"+Rt+"+"+Tt+"(?="+[jt,Dt,"$"].join("|")+")",zt+"+"+Lt+"(?="+[jt,Dt+Ct,"$"].join("|")+")",Dt+"?"+Ct+"+"+Tt,Dt+"+"+Lt,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",It,Nt].join("|"),"g"),Kt=RegExp("[\\u200d\\ud800-\\udfff"+bt+"\\ufe0e\\ufe0f]"),Ht=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Yt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Gt=-1,Jt={};Jt[P]=Jt[D]=Jt[C]=Jt[z]=Jt[T]=Jt[L]=Jt[W]=Jt[F]=Jt[U]=!0,Jt[g]=Jt[_]=Jt[k]=Jt[y]=Jt[O]=Jt[d]=Jt[m]=Jt[w]=Jt[x]=Jt[A]=Jt[M]=Jt[B]=Jt[I]=Jt[R]=Jt[E]=!1;var Xt={};Xt[g]=Xt[_]=Xt[k]=Xt[O]=Xt[y]=Xt[d]=Xt[P]=Xt[D]=Xt[C]=Xt[z]=Xt[T]=Xt[x]=Xt[A]=Xt[M]=Xt[B]=Xt[I]=Xt[R]=Xt[S]=Xt[L]=Xt[W]=Xt[F]=Xt[U]=!0,Xt[m]=Xt[w]=Xt[E]=!1;var tn={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},nn=parseFloat,rn=parseInt,en="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,un="object"==typeof self&&self&&self.Object===Object&&self,on=en||un||Function("return this")(),an=n&&!n.nodeType&&n,fn=an&&t&&!t.nodeType&&t,cn=fn&&fn.exports===an,ln=cn&&en.process,sn=function(){try{return fn&&fn.require&&fn.require("util").types||ln&&ln.binding&&ln.binding("util")}catch(t){}}(),hn=sn&&sn.isArrayBuffer,pn=sn&&sn.isDate,vn=sn&&sn.isMap,gn=sn&&sn.isRegExp,_n=sn&&sn.isSet,yn=sn&&sn.isTypedArray;function dn(t,n,r){switch(r.length){case 0:return t.call(n);case 1:return t.call(n,r[0]);case 2:return t.call(n,r[0],r[1]);case 3:return t.call(n,r[0],r[1],r[2])}return t.apply(n,r)}function mn(t,n,r,e){for(var u=-1,i=null==t?0:t.length;++u-1}function jn(t,n,r){for(var e=-1,u=null==t?0:t.length;++e-1;);return r}function Kn(t,n){for(var r=t.length;r--&&Dn(n,t[r],0)>-1;);return r}function Hn(t,n){for(var r=t.length,e=0;r--;)t[r]===n&&++e;return e}var Yn=Wn({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),Gn=Wn({"&":"&","<":"<",">":">",'"':""","'":"'"});function Jn(t){return"\\"+tn[t]}function Xn(t){return Kt.test(t)}function tr(t){var n=-1,r=Array(t.size);return t.forEach((function(t,e){r[++n]=[e,t]})),r}function nr(t,n){return function(r){return t(n(r))}}function rr(t,n){for(var r=-1,e=t.length,u=0,i=[];++r",""":'"',"'":"'"}),cr=function t(n){var r,e=(n=null==n?on:cr.defaults(on.Object(),n,cr.pick(on,Yt))).Array,ut=n.Date,bt=n.Error,xt=n.Function,At=n.Math,Mt=n.Object,jt=n.RegExp,Bt=n.String,It=n.TypeError,Rt=e.prototype,St=xt.prototype,Et=Mt.prototype,kt=n["__core-js_shared__"],Ot=St.toString,Pt=Et.hasOwnProperty,Dt=0,Ct=(r=/[^.]+$/.exec(kt&&kt.keys&&kt.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",zt=Et.toString,Tt=Ot.call(Mt),Lt=on._,Wt=jt("^"+Ot.call(Pt).replace(nt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ft=cn?n.Buffer:u,Ut=n.Symbol,Nt=n.Uint8Array,qt=Ft?Ft.allocUnsafe:u,Zt=nr(Mt.getPrototypeOf,Mt),Kt=Mt.create,tn=Et.propertyIsEnumerable,en=Rt.splice,un=Ut?Ut.isConcatSpreadable:u,an=Ut?Ut.iterator:u,fn=Ut?Ut.toStringTag:u,ln=function(){try{var t=ci(Mt,"defineProperty");return t({},"",{}),t}catch(t){}}(),sn=n.clearTimeout!==on.clearTimeout&&n.clearTimeout,kn=ut&&ut.now!==on.Date.now&&ut.now,Wn=n.setTimeout!==on.setTimeout&&n.setTimeout,lr=At.ceil,sr=At.floor,hr=Mt.getOwnPropertySymbols,pr=Ft?Ft.isBuffer:u,vr=n.isFinite,gr=Rt.join,_r=nr(Mt.keys,Mt),yr=At.max,dr=At.min,mr=ut.now,wr=n.parseInt,br=At.random,xr=Rt.reverse,Ar=ci(n,"DataView"),Mr=ci(n,"Map"),jr=ci(n,"Promise"),Br=ci(n,"Set"),Ir=ci(n,"WeakMap"),Rr=ci(Mt,"create"),Sr=Ir&&new Ir,Er={},kr=Li(Ar),Or=Li(Mr),Pr=Li(jr),Dr=Li(Br),Cr=Li(Ir),zr=Ut?Ut.prototype:u,Tr=zr?zr.valueOf:u,Lr=zr?zr.toString:u;function Wr(t){if(ra(t)&&!$o(t)&&!(t instanceof qr)){if(t instanceof Nr)return t;if(Pt.call(t,"__wrapped__"))return Wi(t)}return new Nr(t)}var Fr=function(){function t(){}return function(n){if(!na(n))return{};if(Kt)return Kt(n);t.prototype=n;var r=new t;return t.prototype=u,r}}();function Ur(){}function Nr(t,n){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!n,this.__index__=0,this.__values__=u}function qr(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=p,this.__views__=[]}function Qr(t){var n=-1,r=null==t?0:t.length;for(this.clear();++n=n?t:n)),t}function ae(t,n,r,e,i,o){var a,f=1&n,c=2&n,l=4&n;if(r&&(a=i?r(t,e,i,o):r(t)),a!==u)return a;if(!na(t))return t;var s=$o(t);if(s){if(a=function(t){var n=t.length,r=new t.constructor(n);return n&&"string"==typeof t[0]&&Pt.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!f)return Iu(t,a)}else{var h=hi(t),p=h==w||h==b;if(Ho(t))return bu(t,f);if(h==M||h==g||p&&!i){if(a=c||p?{}:vi(t),!f)return c?function(t,n){return Ru(t,si(t),n)}(t,function(t,n){return t&&Ru(n,Pa(n),t)}(a,t)):function(t,n){return Ru(t,li(t),n)}(t,ee(a,t))}else{if(!Xt[h])return i?t:{};a=function(t,n,r){var e,u=t.constructor;switch(n){case k:return xu(t);case y:case d:return new u(+t);case O:return function(t,n){var r=n?xu(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case P:case D:case C:case z:case T:case L:case W:case F:case U:return Au(t,r);case x:return new u;case A:case R:return new u(t);case B:return function(t){var n=new t.constructor(t.source,ht.exec(t));return n.lastIndex=t.lastIndex,n}(t);case I:return new u;case S:return e=t,Tr?Mt(Tr.call(e)):{}}}(t,h,f)}}o||(o=new Kr);var v=o.get(t);if(v)return v;o.set(t,a),aa(t)?t.forEach((function(e){a.add(ae(e,n,r,e,t,o))})):ea(t)&&t.forEach((function(e,u){a.set(u,ae(e,n,r,u,t,o))}));var _=s?u:(l?c?ri:ni:c?Pa:Oa)(t);return wn(_||t,(function(e,u){_&&(e=t[u=e]),te(a,u,ae(e,n,r,u,t,o))})),a}function fe(t,n,r){var e=r.length;if(null==t)return!e;for(t=Mt(t);e--;){var i=r[e],o=n[i],a=t[i];if(a===u&&!(i in t)||!o(a))return!1}return!0}function ce(t,n,r){if("function"!=typeof t)throw new It(i);return Si((function(){t.apply(u,r)}),n)}function le(t,n,r,e){var u=-1,i=Mn,o=!0,a=t.length,f=[],c=n.length;if(!a)return f;r&&(n=Bn(n,Qn(r))),e?(i=jn,o=!1):n.length>=200&&(i=Zn,o=!1,n=new Vr(n));t:for(;++u-1},$r.prototype.set=function(t,n){var r=this.__data__,e=ne(r,t);return e<0?(++this.size,r.push([t,n])):r[e][1]=n,this},Zr.prototype.clear=function(){this.size=0,this.__data__={hash:new Qr,map:new(Mr||$r),string:new Qr}},Zr.prototype.delete=function(t){var n=ai(this,t).delete(t);return this.size-=n?1:0,n},Zr.prototype.get=function(t){return ai(this,t).get(t)},Zr.prototype.has=function(t){return ai(this,t).has(t)},Zr.prototype.set=function(t,n){var r=ai(this,t),e=r.size;return r.set(t,n),this.size+=r.size==e?0:1,this},Vr.prototype.add=Vr.prototype.push=function(t){return this.__data__.set(t,o),this},Vr.prototype.has=function(t){return this.__data__.has(t)},Kr.prototype.clear=function(){this.__data__=new $r,this.size=0},Kr.prototype.delete=function(t){var n=this.__data__,r=n.delete(t);return this.size=n.size,r},Kr.prototype.get=function(t){return this.__data__.get(t)},Kr.prototype.has=function(t){return this.__data__.has(t)},Kr.prototype.set=function(t,n){var r=this.__data__;if(r instanceof $r){var e=r.__data__;if(!Mr||e.length<199)return e.push([t,n]),this.size=++r.size,this;r=this.__data__=new Zr(e)}return r.set(t,n),this.size=r.size,this};var se=ku(me),he=ku(we,!0);function pe(t,n){var r=!0;return se(t,(function(t,e,u){return r=!!n(t,e,u)})),r}function ve(t,n,r){for(var e=-1,i=t.length;++e0&&r(a)?n>1?_e(a,n-1,r,e,u):In(u,a):e||(u[u.length]=a)}return u}var ye=Ou(),de=Ou(!0);function me(t,n){return t&&ye(t,n,Oa)}function we(t,n){return t&&de(t,n,Oa)}function be(t,n){return An(n,(function(n){return Jo(t[n])}))}function xe(t,n){for(var r=0,e=(n=yu(n,t)).length;null!=t&&rn}function Be(t,n){return null!=t&&Pt.call(t,n)}function Ie(t,n){return null!=t&&n in Mt(t)}function Re(t,n,r){for(var i=r?jn:Mn,o=t[0].length,a=t.length,f=a,c=e(a),l=1/0,s=[];f--;){var h=t[f];f&&n&&(h=Bn(h,Qn(n))),l=dr(h.length,l),c[f]=!r&&(n||o>=120&&h.length>=120)?new Vr(f&&h):u}h=t[0];var p=-1,v=c[0];t:for(;++p=a?f:f*("desc"==r[e]?-1:1)}return t.index-n.index}(t,n,r)}));e--;)t[e]=t[e].value;return t}(u)}function qe(t,n,r){for(var e=-1,u=n.length,i={};++e-1;)a!==t&&en.call(a,f,1),en.call(t,f,1);return t}function $e(t,n){for(var r=t?n.length:0,e=r-1;r--;){var u=n[r];if(r==e||u!==i){var i=u;_i(u)?en.call(t,u,1):cu(t,u)}}return t}function Ze(t,n){return t+sr(br()*(n-t+1))}function Ve(t,n){var r="";if(!t||n<1||n>s)return r;do{n%2&&(r+=t),(n=sr(n/2))&&(t+=t)}while(n);return r}function Ke(t,n){return Ei(Mi(t,n,uf),t+"")}function He(t){return Yr(Ua(t))}function Ye(t,n){var r=Ua(t);return Pi(r,oe(n,0,r.length))}function Ge(t,n,r,e){if(!na(t))return t;for(var i=-1,o=(n=yu(n,t)).length,a=o-1,f=t;null!=f&&++ii?0:i+n),(r=r>i?i:r)<0&&(r+=i),i=n>r?0:r-n>>>0,n>>>=0;for(var o=e(i);++u>>1,o=t[i];null!==o&&!ca(o)&&(r?o<=n:o=200){var c=n?null:Vu(t);if(c)return er(c);o=!1,u=Zn,f=new Vr}else f=n?[]:a;t:for(;++e=e?t:nu(t,n,r)}var wu=sn||function(t){return on.clearTimeout(t)};function bu(t,n){if(n)return t.slice();var r=t.length,e=qt?qt(r):new t.constructor(r);return t.copy(e),e}function xu(t){var n=new t.constructor(t.byteLength);return new Nt(n).set(new Nt(t)),n}function Au(t,n){var r=n?xu(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}function Mu(t,n){if(t!==n){var r=t!==u,e=null===t,i=t==t,o=ca(t),a=n!==u,f=null===n,c=n==n,l=ca(n);if(!f&&!l&&!o&&t>n||o&&a&&c&&!f&&!l||e&&a&&c||!r&&c||!i)return 1;if(!e&&!o&&!l&&t1?r[i-1]:u,a=i>2?r[2]:u;for(o=t.length>3&&"function"==typeof o?(i--,o):u,a&&yi(r[0],r[1],a)&&(o=i<3?u:o,i=1),n=Mt(n);++e-1?i[o?n[a]:a]:u}}function Tu(t){return ti((function(n){var r=n.length,e=r,o=Nr.prototype.thru;for(t&&n.reverse();e--;){var a=n[e];if("function"!=typeof a)throw new It(i);if(o&&!f&&"wrapper"==ui(a))var f=new Nr([],!0)}for(e=f?e:r;++e1&&m.reverse(),p&&sf))return!1;var l=o.get(t),s=o.get(n);if(l&&s)return l==n&&s==t;var h=-1,p=!0,v=2&r?new Vr:u;for(o.set(t,n),o.set(n,t);++h-1&&t%1==0&&t1?"& ":"")+n[e],n=n.join(r>2?", ":" "),t.replace(it,"{\n/* [wrapped with "+n+"] */\n")}(e,function(t,n){return wn(v,(function(r){var e="_."+r[0];n&r[1]&&!Mn(t,e)&&t.push(e)})),t.sort()}(function(t){var n=t.match(ot);return n?n[1].split(at):[]}(e),r)))}function Oi(t){var n=0,r=0;return function(){var e=mr(),i=16-(e-r);if(r=e,i>0){if(++n>=800)return arguments[0]}else n=0;return t.apply(u,arguments)}}function Pi(t,n){var r=-1,e=t.length,i=e-1;for(n=n===u?e:n;++r1?t[n-1]:u;return r="function"==typeof r?(t.pop(),r):u,io(t,r)}));function ho(t){var n=Wr(t);return n.__chain__=!0,n}function po(t,n){return n(t)}var vo=ti((function(t){var n=t.length,r=n?t[0]:0,e=this.__wrapped__,i=function(n){return ie(n,t)};return!(n>1||this.__actions__.length)&&e instanceof qr&&_i(r)?((e=e.slice(r,+r+(n?1:0))).__actions__.push({func:po,args:[i],thisArg:u}),new Nr(e,this.__chain__).thru((function(t){return n&&!t.length&&t.push(u),t}))):this.thru(i)})),go=Su((function(t,n,r){Pt.call(t,r)?++t[r]:ue(t,r,1)})),_o=zu(qi),yo=zu(Qi);function mo(t,n){return($o(t)?wn:se)(t,oi(n,3))}function wo(t,n){return($o(t)?bn:he)(t,oi(n,3))}var bo=Su((function(t,n,r){Pt.call(t,r)?t[r].push(n):ue(t,r,[n])})),xo=Ke((function(t,n,r){var u=-1,i="function"==typeof n,o=Vo(t)?e(t.length):[];return se(t,(function(t){o[++u]=i?dn(n,t,r):Se(t,n,r)})),o})),Ao=Su((function(t,n,r){ue(t,r,n)}));function Mo(t,n){return($o(t)?Bn:Te)(t,oi(n,3))}var jo=Su((function(t,n,r){t[r?0:1].push(n)}),(function(){return[[],[]]})),Bo=Ke((function(t,n){if(null==t)return[];var r=n.length;return r>1&&yi(t,n[0],n[1])?n=[]:r>2&&yi(n[0],n[1],n[2])&&(n=[n[0]]),Ne(t,_e(n,1),[])})),Io=kn||function(){return on.Date.now()};function Ro(t,n,r){return n=r?u:n,n=t&&null==n?t.length:n,Hu(t,c,u,u,u,u,n)}function So(t,n){var r;if("function"!=typeof n)throw new It(i);return t=ga(t),function(){return--t>0&&(r=n.apply(this,arguments)),t<=1&&(n=u),r}}var Eo=Ke((function(t,n,r){var e=1;if(r.length){var u=rr(r,ii(Eo));e|=f}return Hu(t,e,n,r,u)})),ko=Ke((function(t,n,r){var e=3;if(r.length){var u=rr(r,ii(ko));e|=f}return Hu(n,e,t,r,u)}));function Oo(t,n,r){var e,o,a,f,c,l,s=0,h=!1,p=!1,v=!0;if("function"!=typeof t)throw new It(i);function g(n){var r=e,i=o;return e=o=u,s=n,f=t.apply(i,r)}function _(t){return s=t,c=Si(d,n),h?g(t):f}function y(t){var r=t-l;return l===u||r>=n||r<0||p&&t-s>=a}function d(){var t=Io();if(y(t))return m(t);c=Si(d,function(t){var r=n-(t-l);return p?dr(r,a-(t-s)):r}(t))}function m(t){return c=u,v&&e?g(t):(e=o=u,f)}function w(){var t=Io(),r=y(t);if(e=arguments,o=this,l=t,r){if(c===u)return _(l);if(p)return wu(c),c=Si(d,n),g(l)}return c===u&&(c=Si(d,n)),f}return n=ya(n)||0,na(r)&&(h=!!r.leading,a=(p="maxWait"in r)?yr(ya(r.maxWait)||0,n):a,v="trailing"in r?!!r.trailing:v),w.cancel=function(){c!==u&&wu(c),s=0,e=l=o=c=u},w.flush=function(){return c===u?f:m(Io())},w}var Po=Ke((function(t,n){return ce(t,1,n)})),Do=Ke((function(t,n,r){return ce(t,ya(n)||0,r)}));function Co(t,n){if("function"!=typeof t||null!=n&&"function"!=typeof n)throw new It(i);var r=function(){var e=arguments,u=n?n.apply(this,e):e[0],i=r.cache;if(i.has(u))return i.get(u);var o=t.apply(this,e);return r.cache=i.set(u,o)||i,o};return r.cache=new(Co.Cache||Zr),r}function zo(t){if("function"!=typeof t)throw new It(i);return function(){var n=arguments;switch(n.length){case 0:return!t.call(this);case 1:return!t.call(this,n[0]);case 2:return!t.call(this,n[0],n[1]);case 3:return!t.call(this,n[0],n[1],n[2])}return!t.apply(this,n)}}Co.Cache=Zr;var To=du((function(t,n){var r=(n=1==n.length&&$o(n[0])?Bn(n[0],Qn(oi())):Bn(_e(n,1),Qn(oi()))).length;return Ke((function(e){for(var u=-1,i=dr(e.length,r);++u=n})),Qo=Ee(function(){return arguments}())?Ee:function(t){return ra(t)&&Pt.call(t,"callee")&&!tn.call(t,"callee")},$o=e.isArray,Zo=hn?Qn(hn):function(t){return ra(t)&&Me(t)==k};function Vo(t){return null!=t&&ta(t.length)&&!Jo(t)}function Ko(t){return ra(t)&&Vo(t)}var Ho=pr||df,Yo=pn?Qn(pn):function(t){return ra(t)&&Me(t)==d};function Go(t){if(!ra(t))return!1;var n=Me(t);return n==m||"[object DOMException]"==n||"string"==typeof t.message&&"string"==typeof t.name&&!ia(t)}function Jo(t){if(!na(t))return!1;var n=Me(t);return n==w||n==b||"[object AsyncFunction]"==n||"[object Proxy]"==n}function Xo(t){return"number"==typeof t&&t==ga(t)}function ta(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=s}function na(t){var n=typeof t;return null!=t&&("object"==n||"function"==n)}function ra(t){return null!=t&&"object"==typeof t}var ea=vn?Qn(vn):function(t){return ra(t)&&hi(t)==x};function ua(t){return"number"==typeof t||ra(t)&&Me(t)==A}function ia(t){if(!ra(t)||Me(t)!=M)return!1;var n=Zt(t);if(null===n)return!0;var r=Pt.call(n,"constructor")&&n.constructor;return"function"==typeof r&&r instanceof r&&Ot.call(r)==Tt}var oa=gn?Qn(gn):function(t){return ra(t)&&Me(t)==B},aa=_n?Qn(_n):function(t){return ra(t)&&hi(t)==I};function fa(t){return"string"==typeof t||!$o(t)&&ra(t)&&Me(t)==R}function ca(t){return"symbol"==typeof t||ra(t)&&Me(t)==S}var la=yn?Qn(yn):function(t){return ra(t)&&ta(t.length)&&!!Jt[Me(t)]},sa=Qu(ze),ha=Qu((function(t,n){return t<=n}));function pa(t){if(!t)return[];if(Vo(t))return fa(t)?or(t):Iu(t);if(an&&t[an])return function(t){for(var n,r=[];!(n=t.next()).done;)r.push(n.value);return r}(t[an]());var n=hi(t);return(n==x?tr:n==I?er:Ua)(t)}function va(t){return t?(t=ya(t))===l||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function ga(t){var n=va(t),r=n%1;return n==n?r?n-r:n:0}function _a(t){return t?oe(ga(t),0,p):0}function ya(t){if("number"==typeof t)return t;if(ca(t))return h;if(na(t)){var n="function"==typeof t.valueOf?t.valueOf():t;t=na(n)?n+"":n}if("string"!=typeof t)return 0===t?t:+t;t=qn(t);var r=vt.test(t);return r||_t.test(t)?rn(t.slice(2),r?2:8):pt.test(t)?h:+t}function da(t){return Ru(t,Pa(t))}function ma(t){return null==t?"":au(t)}var wa=Eu((function(t,n){if(bi(n)||Vo(n))Ru(n,Oa(n),t);else for(var r in n)Pt.call(n,r)&&te(t,r,n[r])})),ba=Eu((function(t,n){Ru(n,Pa(n),t)})),xa=Eu((function(t,n,r,e){Ru(n,Pa(n),t,e)})),Aa=Eu((function(t,n,r,e){Ru(n,Oa(n),t,e)})),Ma=ti(ie),ja=Ke((function(t,n){t=Mt(t);var r=-1,e=n.length,i=e>2?n[2]:u;for(i&&yi(n[0],n[1],i)&&(e=1);++r1),n})),Ru(t,ri(t),r),e&&(r=ae(r,7,Ju));for(var u=n.length;u--;)cu(r,n[u]);return r})),Ta=ti((function(t,n){return null==t?{}:function(t,n){return qe(t,n,(function(n,r){return Ra(t,r)}))}(t,n)}));function La(t,n){if(null==t)return{};var r=Bn(ri(t),(function(t){return[t]}));return n=oi(n),qe(t,r,(function(t,r){return n(t,r[0])}))}var Wa=Ku(Oa),Fa=Ku(Pa);function Ua(t){return null==t?[]:$n(t,Oa(t))}var Na=Du((function(t,n,r){return n=n.toLowerCase(),t+(r?qa(n):n)}));function qa(t){return Ga(ma(t).toLowerCase())}function Qa(t){return(t=ma(t))&&t.replace(dt,Yn).replace($t,"")}var $a=Du((function(t,n,r){return t+(r?"-":"")+n.toLowerCase()})),Za=Du((function(t,n,r){return t+(r?" ":"")+n.toLowerCase()})),Va=Pu("toLowerCase"),Ka=Du((function(t,n,r){return t+(r?"_":"")+n.toLowerCase()})),Ha=Du((function(t,n,r){return t+(r?" ":"")+Ga(n)})),Ya=Du((function(t,n,r){return t+(r?" ":"")+n.toUpperCase()})),Ga=Pu("toUpperCase");function Ja(t,n,r){return t=ma(t),(n=r?u:n)===u?function(t){return Ht.test(t)}(t)?function(t){return t.match(Vt)||[]}(t):function(t){return t.match(ft)||[]}(t):t.match(n)||[]}var Xa=Ke((function(t,n){try{return dn(t,u,n)}catch(t){return Go(t)?t:new bt(t)}})),tf=ti((function(t,n){return wn(n,(function(n){n=Ti(n),ue(t,n,Eo(t[n],t))})),t}));function nf(t){return function(){return t}}var rf=Tu(),ef=Tu(!0);function uf(t){return t}function of(t){return De("function"==typeof t?t:ae(t,1))}var af=Ke((function(t,n){return function(r){return Se(r,t,n)}})),ff=Ke((function(t,n){return function(r){return Se(t,r,n)}}));function cf(t,n,r){var e=Oa(n),u=be(n,e);null!=r||na(n)&&(u.length||!e.length)||(r=n,n=t,t=this,u=be(n,Oa(n)));var i=!(na(r)&&"chain"in r&&!r.chain),o=Jo(t);return wn(u,(function(r){var e=n[r];t[r]=e,o&&(t.prototype[r]=function(){var n=this.__chain__;if(i||n){var r=t(this.__wrapped__),u=r.__actions__=Iu(this.__actions__);return u.push({func:e,args:arguments,thisArg:t}),r.__chain__=n,r}return e.apply(t,In([this.value()],arguments))})})),t}function lf(){}var sf=Uu(Bn),hf=Uu(xn),pf=Uu(En);function vf(t){return di(t)?Ln(Ti(t)):function(t){return function(n){return xe(n,t)}}(t)}var gf=qu(),_f=qu(!0);function yf(){return[]}function df(){return!1}var mf,wf=Fu((function(t,n){return t+n}),0),bf=Zu("ceil"),xf=Fu((function(t,n){return t/n}),1),Af=Zu("floor"),Mf=Fu((function(t,n){return t*n}),1),jf=Zu("round"),Bf=Fu((function(t,n){return t-n}),0);return Wr.after=function(t,n){if("function"!=typeof n)throw new It(i);return t=ga(t),function(){if(--t<1)return n.apply(this,arguments)}},Wr.ary=Ro,Wr.assign=wa,Wr.assignIn=ba,Wr.assignInWith=xa,Wr.assignWith=Aa,Wr.at=Ma,Wr.before=So,Wr.bind=Eo,Wr.bindAll=tf,Wr.bindKey=ko,Wr.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return $o(t)?t:[t]},Wr.chain=ho,Wr.chunk=function(t,n,r){n=(r?yi(t,n,r):n===u)?1:yr(ga(n),0);var i=null==t?0:t.length;if(!i||n<1)return[];for(var o=0,a=0,f=e(lr(i/n));oi?0:i+r),(e=e===u||e>i?i:ga(e))<0&&(e+=i),e=r>e?0:_a(e);r>>0)?(t=ma(t))&&("string"==typeof n||null!=n&&!oa(n))&&!(n=au(n))&&Xn(t)?mu(or(t),0,r):t.split(n,r):[]},Wr.spread=function(t,n){if("function"!=typeof t)throw new It(i);return n=null==n?0:yr(ga(n),0),Ke((function(r){var e=r[n],u=mu(r,0,n);return e&&In(u,e),dn(t,this,u)}))},Wr.tail=function(t){var n=null==t?0:t.length;return n?nu(t,1,n):[]},Wr.take=function(t,n,r){return t&&t.length?nu(t,0,(n=r||n===u?1:ga(n))<0?0:n):[]},Wr.takeRight=function(t,n,r){var e=null==t?0:t.length;return e?nu(t,(n=e-(n=r||n===u?1:ga(n)))<0?0:n,e):[]},Wr.takeRightWhile=function(t,n){return t&&t.length?su(t,oi(n,3),!1,!0):[]},Wr.takeWhile=function(t,n){return t&&t.length?su(t,oi(n,3)):[]},Wr.tap=function(t,n){return n(t),t},Wr.throttle=function(t,n,r){var e=!0,u=!0;if("function"!=typeof t)throw new It(i);return na(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),Oo(t,n,{leading:e,maxWait:n,trailing:u})},Wr.thru=po,Wr.toArray=pa,Wr.toPairs=Wa,Wr.toPairsIn=Fa,Wr.toPath=function(t){return $o(t)?Bn(t,Ti):ca(t)?[t]:Iu(zi(ma(t)))},Wr.toPlainObject=da,Wr.transform=function(t,n,r){var e=$o(t),u=e||Ho(t)||la(t);if(n=oi(n,4),null==r){var i=t&&t.constructor;r=u?e?new i:[]:na(t)&&Jo(i)?Fr(Zt(t)):{}}return(u?wn:me)(t,(function(t,e,u){return n(r,t,e,u)})),r},Wr.unary=function(t){return Ro(t,1)},Wr.union=no,Wr.unionBy=ro,Wr.unionWith=eo,Wr.uniq=function(t){return t&&t.length?fu(t):[]},Wr.uniqBy=function(t,n){return t&&t.length?fu(t,oi(n,2)):[]},Wr.uniqWith=function(t,n){return n="function"==typeof n?n:u,t&&t.length?fu(t,u,n):[]},Wr.unset=function(t,n){return null==t||cu(t,n)},Wr.unzip=uo,Wr.unzipWith=io,Wr.update=function(t,n,r){return null==t?t:lu(t,n,_u(r))},Wr.updateWith=function(t,n,r,e){return e="function"==typeof e?e:u,null==t?t:lu(t,n,_u(r),e)},Wr.values=Ua,Wr.valuesIn=function(t){return null==t?[]:$n(t,Pa(t))},Wr.without=oo,Wr.words=Ja,Wr.wrap=function(t,n){return Lo(_u(n),t)},Wr.xor=ao,Wr.xorBy=fo,Wr.xorWith=co,Wr.zip=lo,Wr.zipObject=function(t,n){return vu(t||[],n||[],te)},Wr.zipObjectDeep=function(t,n){return vu(t||[],n||[],Ge)},Wr.zipWith=so,Wr.entries=Wa,Wr.entriesIn=Fa,Wr.extend=ba,Wr.extendWith=xa,cf(Wr,Wr),Wr.add=wf,Wr.attempt=Xa,Wr.camelCase=Na,Wr.capitalize=qa,Wr.ceil=bf,Wr.clamp=function(t,n,r){return r===u&&(r=n,n=u),r!==u&&(r=(r=ya(r))==r?r:0),n!==u&&(n=(n=ya(n))==n?n:0),oe(ya(t),n,r)},Wr.clone=function(t){return ae(t,4)},Wr.cloneDeep=function(t){return ae(t,5)},Wr.cloneDeepWith=function(t,n){return ae(t,5,n="function"==typeof n?n:u)},Wr.cloneWith=function(t,n){return ae(t,4,n="function"==typeof n?n:u)},Wr.conformsTo=function(t,n){return null==n||fe(t,n,Oa(n))},Wr.deburr=Qa,Wr.defaultTo=function(t,n){return null==t||t!=t?n:t},Wr.divide=xf,Wr.endsWith=function(t,n,r){t=ma(t),n=au(n);var e=t.length,i=r=r===u?e:oe(ga(r),0,e);return(r-=n.length)>=0&&t.slice(r,i)==n},Wr.eq=Uo,Wr.escape=function(t){return(t=ma(t))&&K.test(t)?t.replace(Z,Gn):t},Wr.escapeRegExp=function(t){return(t=ma(t))&&rt.test(t)?t.replace(nt,"\\$&"):t},Wr.every=function(t,n,r){var e=$o(t)?xn:pe;return r&&yi(t,n,r)&&(n=u),e(t,oi(n,3))},Wr.find=_o,Wr.findIndex=qi,Wr.findKey=function(t,n){return On(t,oi(n,3),me)},Wr.findLast=yo,Wr.findLastIndex=Qi,Wr.findLastKey=function(t,n){return On(t,oi(n,3),we)},Wr.floor=Af,Wr.forEach=mo,Wr.forEachRight=wo,Wr.forIn=function(t,n){return null==t?t:ye(t,oi(n,3),Pa)},Wr.forInRight=function(t,n){return null==t?t:de(t,oi(n,3),Pa)},Wr.forOwn=function(t,n){return t&&me(t,oi(n,3))},Wr.forOwnRight=function(t,n){return t&&we(t,oi(n,3))},Wr.get=Ia,Wr.gt=No,Wr.gte=qo,Wr.has=function(t,n){return null!=t&&pi(t,n,Be)},Wr.hasIn=Ra,Wr.head=Zi,Wr.identity=uf,Wr.includes=function(t,n,r,e){t=Vo(t)?t:Ua(t),r=r&&!e?ga(r):0;var u=t.length;return r<0&&(r=yr(u+r,0)),fa(t)?r<=u&&t.indexOf(n,r)>-1:!!u&&Dn(t,n,r)>-1},Wr.indexOf=function(t,n,r){var e=null==t?0:t.length;if(!e)return-1;var u=null==r?0:ga(r);return u<0&&(u=yr(e+u,0)),Dn(t,n,u)},Wr.inRange=function(t,n,r){return n=va(n),r===u?(r=n,n=0):r=va(r),function(t,n,r){return t>=dr(n,r)&&t=-9007199254740991&&t<=s},Wr.isSet=aa,Wr.isString=fa,Wr.isSymbol=ca,Wr.isTypedArray=la,Wr.isUndefined=function(t){return t===u},Wr.isWeakMap=function(t){return ra(t)&&hi(t)==E},Wr.isWeakSet=function(t){return ra(t)&&"[object WeakSet]"==Me(t)},Wr.join=function(t,n){return null==t?"":gr.call(t,n)},Wr.kebabCase=$a,Wr.last=Yi,Wr.lastIndexOf=function(t,n,r){var e=null==t?0:t.length;if(!e)return-1;var i=e;return r!==u&&(i=(i=ga(r))<0?yr(e+i,0):dr(i,e-1)),n==n?function(t,n,r){for(var e=r+1;e--;)if(t[e]===n)return e;return e}(t,n,i):Pn(t,zn,i,!0)},Wr.lowerCase=Za,Wr.lowerFirst=Va,Wr.lt=sa,Wr.lte=ha,Wr.max=function(t){return t&&t.length?ve(t,uf,je):u},Wr.maxBy=function(t,n){return t&&t.length?ve(t,oi(n,2),je):u},Wr.mean=function(t){return Tn(t,uf)},Wr.meanBy=function(t,n){return Tn(t,oi(n,2))},Wr.min=function(t){return t&&t.length?ve(t,uf,ze):u},Wr.minBy=function(t,n){return t&&t.length?ve(t,oi(n,2),ze):u},Wr.stubArray=yf,Wr.stubFalse=df,Wr.stubObject=function(){return{}},Wr.stubString=function(){return""},Wr.stubTrue=function(){return!0},Wr.multiply=Mf,Wr.nth=function(t,n){return t&&t.length?Ue(t,ga(n)):u},Wr.noConflict=function(){return on._===this&&(on._=Lt),this},Wr.noop=lf,Wr.now=Io,Wr.pad=function(t,n,r){t=ma(t);var e=(n=ga(n))?ir(t):0;if(!n||e>=n)return t;var u=(n-e)/2;return Nu(sr(u),r)+t+Nu(lr(u),r)},Wr.padEnd=function(t,n,r){t=ma(t);var e=(n=ga(n))?ir(t):0;return n&&en){var e=t;t=n,n=e}if(r||t%1||n%1){var i=br();return dr(t+i*(n-t+nn("1e-"+((i+"").length-1))),n)}return Ze(t,n)},Wr.reduce=function(t,n,r){var e=$o(t)?Rn:Fn,u=arguments.length<3;return e(t,oi(n,4),r,u,se)},Wr.reduceRight=function(t,n,r){var e=$o(t)?Sn:Fn,u=arguments.length<3;return e(t,oi(n,4),r,u,he)},Wr.repeat=function(t,n,r){return n=(r?yi(t,n,r):n===u)?1:ga(n),Ve(ma(t),n)},Wr.replace=function(){var t=arguments,n=ma(t[0]);return t.length<3?n:n.replace(t[1],t[2])},Wr.result=function(t,n,r){var e=-1,i=(n=yu(n,t)).length;for(i||(i=1,t=u);++es)return[];var r=p,e=dr(t,p);n=oi(n),t-=p;for(var u=Nn(e,n);++r=o)return t;var f=r-ir(e);if(f<1)return e;var c=a?mu(a,0,f).join(""):t.slice(0,f);if(i===u)return c+e;if(a&&(f+=c.length-f),oa(i)){if(t.slice(f).search(i)){var l,s=c;for(i.global||(i=jt(i.source,ma(ht.exec(i))+"g")),i.lastIndex=0;l=i.exec(s);)var h=l.index;c=c.slice(0,h===u?f:h)}}else if(t.indexOf(au(i),f)!=f){var p=c.lastIndexOf(i);p>-1&&(c=c.slice(0,p))}return c+e},Wr.unescape=function(t){return(t=ma(t))&&V.test(t)?t.replace($,fr):t},Wr.uniqueId=function(t){var n=++Dt;return ma(t)+n},Wr.upperCase=Ya,Wr.upperFirst=Ga,Wr.each=mo,Wr.eachRight=wo,Wr.first=Zi,cf(Wr,(mf={},me(Wr,(function(t,n){Pt.call(Wr.prototype,n)||(mf[n]=t)})),mf),{chain:!1}),Wr.VERSION="4.17.21",wn(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Wr[t].placeholder=Wr})),wn(["drop","take"],(function(t,n){qr.prototype[t]=function(r){r=r===u?1:yr(ga(r),0);var e=this.__filtered__&&!n?new qr(this):this.clone();return e.__filtered__?e.__takeCount__=dr(r,e.__takeCount__):e.__views__.push({size:dr(r,p),type:t+(e.__dir__<0?"Right":"")}),e},qr.prototype[t+"Right"]=function(n){return this.reverse()[t](n).reverse()}})),wn(["filter","map","takeWhile"],(function(t,n){var r=n+1,e=1==r||3==r;qr.prototype[t]=function(t){var n=this.clone();return n.__iteratees__.push({iteratee:oi(t,3),type:r}),n.__filtered__=n.__filtered__||e,n}})),wn(["head","last"],(function(t,n){var r="take"+(n?"Right":"");qr.prototype[t]=function(){return this[r](1).value()[0]}})),wn(["initial","tail"],(function(t,n){var r="drop"+(n?"":"Right");qr.prototype[t]=function(){return this.__filtered__?new qr(this):this[r](1)}})),qr.prototype.compact=function(){return this.filter(uf)},qr.prototype.find=function(t){return this.filter(t).head()},qr.prototype.findLast=function(t){return this.reverse().find(t)},qr.prototype.invokeMap=Ke((function(t,n){return"function"==typeof t?new qr(this):this.map((function(r){return Se(r,t,n)}))})),qr.prototype.reject=function(t){return this.filter(zo(oi(t)))},qr.prototype.slice=function(t,n){t=ga(t);var r=this;return r.__filtered__&&(t>0||n<0)?new qr(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),n!==u&&(r=(n=ga(n))<0?r.dropRight(-n):r.take(n-t)),r)},qr.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},qr.prototype.toArray=function(){return this.take(p)},me(qr.prototype,(function(t,n){var r=/^(?:filter|find|map|reject)|While$/.test(n),e=/^(?:head|last)$/.test(n),i=Wr[e?"take"+("last"==n?"Right":""):n],o=e||/^find/.test(n);i&&(Wr.prototype[n]=function(){var n=this.__wrapped__,a=e?[1]:arguments,f=n instanceof qr,c=a[0],l=f||$o(n),s=function(t){var n=i.apply(Wr,In([t],a));return e&&h?n[0]:n};l&&r&&"function"==typeof c&&1!=c.length&&(f=l=!1);var h=this.__chain__,p=!!this.__actions__.length,v=o&&!h,g=f&&!p;if(!o&&l){n=g?n:new qr(this);var _=t.apply(n,a);return _.__actions__.push({func:po,args:[s],thisArg:u}),new Nr(_,h)}return v&&g?t.apply(this,a):(_=this.thru(s),v?e?_.value()[0]:_.value():_)})})),wn(["pop","push","shift","sort","splice","unshift"],(function(t){var n=Rt[t],r=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",e=/^(?:pop|shift)$/.test(t);Wr.prototype[t]=function(){var t=arguments;if(e&&!this.__chain__){var u=this.value();return n.apply($o(u)?u:[],t)}return this[r]((function(r){return n.apply($o(r)?r:[],t)}))}})),me(qr.prototype,(function(t,n){var r=Wr[n];if(r){var e=r.name+"";Pt.call(Er,e)||(Er[e]=[]),Er[e].push({name:n,func:r})}})),Er[Lu(u,2).name]=[{name:"wrapper",func:u}],qr.prototype.clone=function(){var t=new qr(this.__wrapped__);return t.__actions__=Iu(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Iu(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Iu(this.__views__),t},qr.prototype.reverse=function(){if(this.__filtered__){var t=new qr(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},qr.prototype.value=function(){var t=this.__wrapped__.value(),n=this.__dir__,r=$o(t),e=n<0,u=r?t.length:0,i=function(t,n,r){for(var e=-1,u=r.length;++e=this.__values__.length;return{done:t,value:t?u:this.__values__[this.__index__++]}},Wr.prototype.plant=function(t){for(var n,r=this;r instanceof Ur;){var e=Wi(r);e.__index__=0,e.__values__=u,n?i.__wrapped__=e:n=e;var i=e;r=r.__wrapped__}return i.__wrapped__=t,n},Wr.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof qr){var n=t;return this.__actions__.length&&(n=new qr(this)),(n=n.reverse()).__actions__.push({func:po,args:[to],thisArg:u}),new Nr(n,this.__chain__)}return this.thru(to)},Wr.prototype.toJSON=Wr.prototype.valueOf=Wr.prototype.value=function(){return hu(this.__wrapped__,this.__actions__)},Wr.prototype.first=Wr.prototype.head,an&&(Wr.prototype[an]=function(){return this}),Wr}();on._=cr,(e=function(){return cr}.call(n,r,n,t))===u||(t.exports=e)}.call(this)}},n={};function r(e){var u=n[e];if(void 0!==u)return u.exports;var i=n[e]={id:e,loaded:!1,exports:{}};return t[e].call(i.exports,i,i.exports,r),i.loaded=!0,i.exports}r.n=t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return r.d(n,{a:n}),n},r.d=(t,n)=>{for(var e in n)r.o(n,e)&&!r.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:n[e]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,n)=>Object.prototype.hasOwnProperty.call(t,n),r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),(()=>{"use strict";var t=r(428);function n(t,n){const r=t.length,e=n.length;let u=0,i=0;const o=[];for(;u0){if(c<=0)return l;u=a+c}else{if(!(a<0))return l;if(c>=0)return l;u=-a-c}return Math.abs(l)>=3330669073875472e-31*u?l:function(t,r,e,u){let a=t[0]-e[0],c=r[0]-e[0],l=t[1]-e[1],s=r[1]-e[1],h=i(f(a,s),f(l,c)),p=function(t){let n=t[0];for(let r=1;r=2220446049250315e-31*u)return p;let v=o(t[0],e[0])[0],g=o(r[0],e[0])[0],_=o(t[1],e[1])[0],y=o(r[1],e[1])[0];if(0===v&&0===_&&0===g&&0===y)return p;let d=1109335647967049e-46*u+3330669073875471e-31*Math.abs(p);if(p+=a*y+s*v-(l*g+c*_),Math.abs(p)>=d)return p;let m=n(h,i(f(v,s),f(_,c))),w=n(m,i(f(a,y),f(l,g))),b=n(w,i(f(v,y),f(_,g)));return b=function(t){const n=t.slice(),r=n.length;if(1===r)return n;let e=n[r-1],u=r;for(let t=r-2;t>=0;--t){const r=e,i=n[t];e=r+i;const o=i-(e-r);o&&(n[--u]=e,e=o)}let i=0;for(let t=u;tt===n[r]))}A.fill();var j=null;function B(){console.log("recalculating"),function(){y[0]=[];for(let t=0;t<_.length;t++)for(let n=t;n<_.length;n++)t!==n&&w[t][n]<2*d&&y[0].push([t,n])}(),C(2),C(3),C(4),requestAnimationFrame(z),document.getElementById("homologyresults").innerHTML=k(1)+"\n"+k(2),k(1)}function I(){j&&clearTimeout(j),j=setTimeout(B,20)}function R(t,n){let r=[...n];return r.splice(t,1),r}function S(n){return(0,t.Fr)(n)?0:new t.nt(n).diag.length}function E(t){let n=y[t-1].length,r=0;if(r=1===t?_.length:y[t-2].length,0===n)return new Array(1).fill(0).map((()=>new Array(r).fill(0)));let e=Array(n).fill(0).map((()=>new Array(r).fill(0)));if(1===t)for(let r=0;r{let r=-c(o,t,n);return 0!==r?r:(r=t[1]-n[1],0!==r?r:t[0]-n[0])})),e.unshift(o);let a=1;for(let t=2;t1)a-=1;else{if(t===u-1){a-=1;break}t+=1}a+=1,l(e,a,t)}return e.slice(0,a+1)}(n);A.beginPath(),A.moveTo(r[0][0],r[0][1]);for(let t=1;t2&&(A.fillStyle=3===(e=t.length)?"rgba(20, 20, 255, 0.1)":4===e?"rgba(20, 255, 20, 0.1)":"rgba(255, 20, 255, 0.1)",A.fill()),A.strokeStyle="rgb(40, 40, 40)",A.stroke()}function P(t,n,r){if(1===n)return h().range(r).map((t=>[t]));let e=[];for(let u=n-1;unew Array(_.length-1).fill(0))),b=Array(_.length-1).fill(0).map((()=>new Array(_.length-1).fill((()=>0))));for(let t=0;t<_.length;t++)for(let n=t;n<_.length;n++){if(t===n)continue;let r=_[t].d(_[n].x,_[n].y);w[t][n]=r,b[t][n]=()=>r<2*d?1:0,x.push(r)}x=h().uniq(x)}function C(t){y[t-1]=[];let n=function(t,n){if(n>t)return[];if(1===n)return h().range(t).map((t=>[t]));let r=[];for(let e=n-1;ep.width||i<0||i>p.height)){if("add"===g){let t=new class{constructor(t,n){this.x=t,this.y=n}d(t,n){return Math.sqrt(Math.pow(this.x-t,2)+Math.pow(this.y-n,2))}}(u,i);_.push(t),D(),I()}if("remove"===g)for(let t=0;t<_.length;t++)if(_[t].d(u,i)<=5)return _.splice(t,1),D(),I(),void requestAnimationFrame(z);requestAnimationFrame(z)}})),requestAnimationFrame(z)})()})(); \ No newline at end of file diff --git a/categories/blogs/index.html b/categories/blogs/index.html new file mode 100644 index 0000000..59b68ed --- /dev/null +++ b/categories/blogs/index.html @@ -0,0 +1 @@ + Blogs | Fiona Blackett
Home Categories Blogs
Category
Cancel
diff --git a/categories/index.html b/categories/index.html new file mode 100644 index 0000000..ed04c50 --- /dev/null +++ b/categories/index.html @@ -0,0 +1 @@ + Categories | Fiona Blackett
Home Categories
Categories
Cancel
diff --git a/categories/miscellaneous/index.html b/categories/miscellaneous/index.html new file mode 100644 index 0000000..bfd6166 --- /dev/null +++ b/categories/miscellaneous/index.html @@ -0,0 +1 @@ + Miscellaneous | Fiona Blackett
Home Categories Miscellaneous
Category
Cancel
diff --git a/categories/talks-slides/index.html b/categories/talks-slides/index.html new file mode 100644 index 0000000..651eb70 --- /dev/null +++ b/categories/talks-slides/index.html @@ -0,0 +1 @@ + Talks & Slides | Fiona Blackett
Home Categories Talks & Slides
Category
Cancel
diff --git a/feed.xml b/feed.xml new file mode 100644 index 0000000..6137d91 --- /dev/null +++ b/feed.xml @@ -0,0 +1 @@ + https://fiona1729.github.io/Fiona BlackettI'm Fiona Blackett, a PhD student at the University of Strathclyde. Here is where you can find posts I've made as well as talks & my CV. 2024-07-04T14:06:42-06:00 Fiona Blackett https://fiona1729.github.io/ Jekyll © 2024 Fiona Blackett /assets/img/favicons/favicon.ico /assets/img/favicons/favicon-96x96.png Topological Quantum Field Theories and Frobenius Algebras2023-03-24T18:37:00-06:00 2024-02-02T15:10:14-07:00 https://fiona1729.github.io/posts/tqft/ Fiona Blackett Talk I gave to the Society of Physics Students at Boulder, I aimed it to be comprehensible to early undergrads. Headphone imaging, square waves, and why the Sennheiser HD800 are the best gaming headphones2023-01-03T17:57:00-07:00 2024-02-02T15:10:14-07:00 https://fiona1729.github.io/posts/imaging-squarewaves/ Fiona Blackett On headphone forums an extremely common question is “what is a good pair of headphones for gaming”, and the responses usually include headphones which have good imaging and soundstage. But what really is good imaging? How can you tell what has good imaging and soundstage without having tried them before, from objective measurements? To understand this, we first have to understand how your ears ... The Eilenberg-Steenrod Axioms and Generalized (Co)homology Theories2022-08-26T21:44:00-06:00 2024-02-02T15:10:14-07:00 https://fiona1729.github.io/posts/generalised-homology/ Fiona Blackett A talk I gave as part of an online seminar on stable homotopy theory: Site infrastructure2022-01-12T12:34:00-07:00 2024-02-02T15:10:14-07:00 https://fiona1729.github.io/posts/site-infrastructure/ Fiona Blackett Hello all, for my first post here I figured I’d write a bit about my hosting of this site. I’m using Jekyll and Github Pages with the Chirpy theme. You can view the source here. The chirpy theme provides support for MathJax out of the box so the only thing I’ll be doing externally is some commutative diagrams, probably with quiver.io or tikz-cd. diff --git a/index.html b/index.html new file mode 100644 index 0000000..9f09932 --- /dev/null +++ b/index.html @@ -0,0 +1 @@ + Fiona Blackett
Home
Fiona Blackett
Cancel

Topological Quantum Field Theories and Frobenius Algebras

Talk I gave to the Society of Physics Students at Boulder, I aimed it to be comprehensible to early undergrads.

Headphone imaging, square waves, and why the Sennheiser HD800 are the best gaming headphones

On headphone forums an extremely common question is “what is a good pair of headphones for gaming”, and the responses usually include headphones which have good imaging and soundstage. But what rea...

The Eilenberg-Steenrod Axioms and Generalized (Co)homology Theories

A talk I gave as part of an online seminar on stable homotopy theory:

Site infrastructure

Hello all, for my first post here I figured I’d write a bit about my hosting of this site. I’m using Jekyll and Github Pages with the Chirpy theme. You can view the source here. The chirpy theme p...

diff --git a/norobots/index.html b/norobots/index.html new file mode 100644 index 0000000..ba996ca --- /dev/null +++ b/norobots/index.html @@ -0,0 +1,11 @@ + + + + Redirecting… + + + + +

Redirecting…

+ Click here if you are not redirected. + diff --git a/posts/generalised-homology/index.html b/posts/generalised-homology/index.html new file mode 100644 index 0000000..d150b9a --- /dev/null +++ b/posts/generalised-homology/index.html @@ -0,0 +1 @@ + The Eilenberg-Steenrod Axioms and Generalized (Co)homology Theories | Fiona Blackett
Home The Eilenberg-Steenrod Axioms and Generalized (Co)homology Theories
Post
Cancel
diff --git a/posts/imaging-squarewaves/index.html b/posts/imaging-squarewaves/index.html new file mode 100644 index 0000000..7c1671e --- /dev/null +++ b/posts/imaging-squarewaves/index.html @@ -0,0 +1 @@ + Headphone imaging, square waves, and why the Sennheiser HD800 are the best gaming headphones | Fiona Blackett
Home Headphone imaging, square waves, and why the Sennheiser HD800 are the best gaming headphones
Post
Cancel

Headphone imaging, square waves, and why the Sennheiser HD800 are the best gaming headphones

On headphone forums an extremely common question is “what is a good pair of headphones for gaming”, and the responses usually include headphones which have good imaging and soundstage. But what really is good imaging? How can you tell what has good imaging and soundstage without having tried them before, from objective measurements? To understand this, we first have to understand how your ears actually determine the direction of a sound.

Human audio spatialisation

When a sound is made in the real world, it travels to your ears through the air, and interacts with your head and ears on the way. This gives a number of different properties which allow your brain to determine which direction a sound is coming from. The most direct is the time difference between the sound arriving at each ear (interaural time difference, or ITD), which allows fairly accurate pinpointing of sound to the left or right of your head. There’s also an overall volume difference (interaural intensity difference) from your head blocking some of the sound to one ear. The delay also introduces a phase offset (difference between the timing of peaks and troughs on each sound wave), and the origin of the sound vertically or back/front causes other frequency response and phase effects which are far too complicated to explain here. These effects are the basis of a head-related transfer function (HRTF), and the science behind these is a field in itself. However, these HRTFs are often simulated in software, so we can focus on what our headphones can actually affect, the timing difference between the two sides, and phase. How can we determine whether, and to what extent, a headphone preserves this information?

Square wave response

A square wave response chart is another way of showing a headphone’s frequency response in a sense, but can also provide some additional useful information for our purposes. The ability of the headphone to produce very high frequency sounds is reflected in the rising and falling edges of the square wave, and the low-frequency response is reflected in the ability of the headphone to “hold” the diaphragm at the “high” position. This edge response is also known as the slew rate of the headphones. The square wave chart also shows some phase information for both high and low frequency. The short explanation of square wave response and imaging is that the leading edges of the waves, and thus the high frequency response, are directly responsible for very clear time differences in signals arriving to your ears, and thus audio spatialisation and imaging. The brain can detect timing differences down to at least 10 MICROSECONDS so clarity here is of very high importance. The phase reflected in these diagrams additionaly can help or hinder your brain’s ability to interpret the direction of a sound. The below diagram has some basic issues with square waves and the corresponding causes.

DAC filters

An additional factor in the imaging of a pair of headphones can be the DAC/amp filter settings. DACs usually use filters to remove high frequency noise from the output, and many DACs provide the option to change which filters are used for this. I use a Topping DX3 Pro, and I found this article which not only explains some of the specific filters but has images of what each filter does to a single spike. Anecdotally, imaging on my setup improved a fair bit after switching to the F-5 filter from F-1, and this was somewhat confirmed in a very adhoc A/B test with CS:GO and Rainbow 6. I don’t really know of many good sources for these kinds of filters, but my understanding is that the slower roll-off filters have less ringing before and after transients, and linear phase response filters preserve phase response (of course).

Conclusion

Headphone imaging is largely dependent on a fast and clear rising edge of a sound, though this is not the sole factor. HRTF imparts frequency response and phase information which improves the spatialisation of audio greatly. A headphone with good imaging still needs to be supported by a sound engine that actually performs the maths to get to your end result properly, and your DAC/amp can also affect this. The square wave curve offers a good rough benchmark for audio imaging from a given pair of headphones, and I’ve compared several headphones with (in)famously good and bad imaging and soundstage with the 300 and 3000 Hz square wave responses from Reference Audio Analyzer and the leading edges do follow this trend. I’m hoping to some quantitative analysis on these measurements as a follow-up, and I hope that measurement of imaging can progress to the point where very subjective recommendations are not the primary way to recommend a good pair of headphones for gaming.

Sources and additional info

This post is licensed under CC BY 4.0 by the author.
diff --git a/posts/index.html b/posts/index.html new file mode 100644 index 0000000..ba996ca --- /dev/null +++ b/posts/index.html @@ -0,0 +1,11 @@ + + + + Redirecting… + + + + +

Redirecting…

+ Click here if you are not redirected. + diff --git a/posts/site-infrastructure/index.html b/posts/site-infrastructure/index.html new file mode 100644 index 0000000..a87b943 --- /dev/null +++ b/posts/site-infrastructure/index.html @@ -0,0 +1 @@ + Site infrastructure | Fiona Blackett
Home Site infrastructure
Post
Cancel

Site infrastructure

Hello all, for my first post here I figured I’d write a bit about my hosting of this site. I’m using Jekyll and Github Pages with the Chirpy theme. You can view the source here.

The chirpy theme provides support for MathJax out of the box so the only thing I’ll be doing externally is some commutative diagrams, probably with quiver.io or tikz-cd.

This post is licensed under CC BY 4.0 by the author.
diff --git a/posts/tqft/index.html b/posts/tqft/index.html new file mode 100644 index 0000000..9dd14c5 --- /dev/null +++ b/posts/tqft/index.html @@ -0,0 +1 @@ + Topological Quantum Field Theories and Frobenius Algebras | Fiona Blackett
Home Topological Quantum Field Theories and Frobenius Algebras
Post
Cancel
diff --git a/redirects.json b/redirects.json new file mode 100644 index 0000000..463aa0c --- /dev/null +++ b/redirects.json @@ -0,0 +1 @@ +{"/norobots/":"https://fiona1729.github.io/404.html","/assets/":"https://fiona1729.github.io/404.html","/posts/":"https://fiona1729.github.io/404.html"} \ No newline at end of file diff --git a/robots.txt b/robots.txt new file mode 100644 index 0000000..5b3b898 --- /dev/null +++ b/robots.txt @@ -0,0 +1,5 @@ +User-agent: * + +Disallow: /norobots/ + +Sitemap: https://fiona1729.github.io/sitemap.xml diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 0000000..3b948b9 --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,43 @@ + + + +https://fiona1729.github.io/posts/site-infrastructure/ +2024-02-02T15:10:14-07:00 + + +https://fiona1729.github.io/posts/generalised-homology/ +2024-02-02T15:10:14-07:00 + + +https://fiona1729.github.io/posts/imaging-squarewaves/ +2024-02-02T15:10:14-07:00 + + +https://fiona1729.github.io/posts/tqft/ +2024-02-02T15:10:14-07:00 + + +https://fiona1729.github.io/categories/ +2024-07-04T14:06:42-06:00 + + +https://fiona1729.github.io/archives/ +2024-07-04T14:06:42-06:00 + + +https://fiona1729.github.io/about/ +2024-07-04T14:06:42-06:00 + + +https://fiona1729.github.io/ + + +https://fiona1729.github.io/categories/miscellaneous/ + + +https://fiona1729.github.io/categories/talks-slides/ + + +https://fiona1729.github.io/categories/blogs/ + + diff --git a/sw.js b/sw.js new file mode 100644 index 0000000..c98665f --- /dev/null +++ b/sw.js @@ -0,0 +1 @@ +self.importScripts('/assets/js/data/swcache.js'); const cacheName = 'chirpy-20240704.1406'; function verifyDomain(url) { for (const domain of allowedDomains) { const regex = RegExp(`^http(s)?:\/\/${domain}\/`); if (regex.test(url)) { return true; } } return false; } function isExcluded(url) { for (const item of denyUrls) { if (url === item) { return true; } } return false; } self.addEventListener('install', e => { self.skipWaiting(); e.waitUntil( caches.open(cacheName).then(cache => { return cache.addAll(resource); }) ); }); self.addEventListener('fetch', event => { event.respondWith( caches.match(event.request) .then(response => { if (response) { return response; } return fetch(event.request) .then(response => { const url = event.request.url; if (event.request.method !== 'GET' || !verifyDomain(url) || isExcluded(url)) { return response; } /* see: */ let responseToCache = response.clone(); caches.open(cacheName) .then(cache => { /* console.log('[sw] Caching new resource: ' + event.request.url); */ cache.put(event.request, responseToCache); }); return response; }); }) ); }); self.addEventListener('activate', e => { e.waitUntil( caches.keys().then(keyList => { return Promise.all( keyList.map(key => { if(key !== cacheName) { return caches.delete(key); } }) ); }) ); });