html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}h1{font-size:2em;margin:.67em 0}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}main{display:block}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{margin:0}button{overflow:visible;text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}input{overflow:visible}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}select{text-transform:none}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}body{margin:0}@font-face{font-family:Lobster;font-weight:400;font-style:normal;src:url(../fonts/lobster.593ab80a1f.eot);src:url(../fonts/lobster.8beaa26e6d.woff2) format("woff2"),url(../fonts/lobster.209fc0ad0f.woff) format("woff"),url(../fonts/lobster.dc1a4773ed.ttf) format("truetype"),url(../fonts/lobster.d2cd0d1f6d.svg#lobster) format("svg"),url(../fonts/lobster.593ab80a1f.eot?#iefix) format("embedded-opentype");unicode-range:u+00??,u+0131,u+0152-0153,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2212,u+2215}@font-face{font-family:iconfont;font-weight:400;font-style:normal;src:url(../fonts/iconfont.9e583b2052.eot);src:url(../fonts/iconfont.93b87d70b7.woff2) format("woff2"),url(../fonts/iconfont.c3f55386bc.woff) format("woff"),url(../fonts/iconfont.51416090d6.ttf) format("truetype"),url(../fonts/iconfont.a397cb640a.svg#iconfont) format("svg"),url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgZGF0YS1wcmVmaXg9ImZhYiIgZGF0YS1pY29uPSJnaXRsYWIiIGNsYXNzPSJzdmctaW5saW5lLS1mYSBmYS1naXRsYWIgZmEtdy0xNiIgcm9sZT0iaW1nIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0yOS43ODIgMTk5LjczMkwyNTYgNDkzLjcxNCA4LjA3NCAzMDkuNjk5Yy02Ljg1Ni01LjE0Mi05LjcxMi0xMy45OTYtNy4xNDEtMjEuOTkzbDI4Ljg0OS04Ny45NzR6bTc1LjQwNS0xNzQuODA2Yy0zLjE0Mi04Ljg1NC0xNS43MDktOC44NTQtMTguODUxIDBMMjkuNzgyIDE5OS43MzJoMTMxLjk2MUwxMDUuMTg3IDI0LjkyNnptNTYuNTU2IDE3NC44MDZMMjU2IDQ5My43MTRsOTQuMjU3LTI5My45ODJIMTYxLjc0M3ptMzQ5LjMyNCA4Ny45NzRsLTI4Ljg0OS04Ny45NzRMMjU2IDQ5My43MTRsMjQ3LjkyNi0xODQuMDE1YzYuODU1LTUuMTQyIDkuNzExLTEzLjk5NiA3LjE0MS0yMS45OTN6bS04NS40MDQtMjYyLjc4Yy0zLjE0Mi04Ljg1NC0xNS43MDktOC44NTQtMTguODUxIDBsLTU2LjU1NSAxNzQuODA2aDEzMS45NjFMNDI1LjY2MyAyNC45MjZ6Ij48L3BhdGg+PC9zdmc+) format("svg"),url(../fonts/iconfont.9e583b2052.eot#iefix) format("embedded-opentype")}.icon{text-transform:none;line-height:1;font-family:iconfont!important;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:normal;font-feature-settings:normal;font-variant:normal;font-style:normal;speak:none}.icon-douban:before{content:"\E900"}.icon-bilibili:before{content:"\E901"}.icon-zhihu:before{content:"\E902"}.icon-close:before{content:"\F00D"}.icon-facebook:before{content:"\F082"}.icon-twitter:before{content:"\F099"}.icon-github:before{content:"\F09B"}.icon-gitlab:before{content:"\F296"}.icon-rss:before{content:"\F09E"}.icon-menu:before{content:"\F0C9"}.icon-pinterest:before{content:"\F0D2"}.icon-up:before{content:"\F0D8"}.icon-email:before{content:"\F0E0"}.icon-linkedin:before{content:"\F0E1"}.icon-youtube:before{content:"\F16A"}.icon-instagram:before{content:"\F16D"}.icon-dribbble:before{content:"\F17D"}.icon-weibo:before{content:"\F18A"}.icon-vimeo:before{content:"\F194"}.icon-google:before{content:"\F1A0"}.icon-behance:before{content:"\F1B4"}.icon-codepen:before{content:"\F1CB"}.icon-jsfiddle:before{content:"\F1CC"}.icon-wechat:before{content:"\F1D7"}.icon-medium:before{content:"\F23A"}.icon-comment:before{content:"\F27A"}.icon-quora:before{content:"\F2C4"}html{line-height:1.618;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,PingFang SC,Hiragino Sans GB,Microsoft YaHei,WenQuanYi Micro Hei,Helvetica Neue,sans-serif;font-size:16px}body{background:#f4f3f1 url(../img/grey-prism.e20b09e3e5.svg) repeat fixed;text-rendering:optimizeLegibility;color:#4a4a4a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on;-webkit-tap-highlight-color:transparent;-webkit-overflow-scrolling:touch}a{opacity:.7;text-decoration:none;color:#363636}a:focus,a:hover{opacity:1;outline:none;color:#242424}.site-header{-webkit-box-sizing:border-box;box-sizing:border-box;position:fixed;top:0;bottom:0;left:0;padding:16px;padding:1rem;width:320px;width:20rem;text-align:center}.site-header .is-active a{opacity:1;color:#363636;font-weight:700}.site-header a{opacity:.5;color:#242424}.site-header a:focus,.site-header a:hover{opacity:1;color:#363636}.main{-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;margin-left:auto;margin-right:auto;border-right:1px solid rgba(0,0,0,.09);border-left:1px solid rgba(0,0,0,.09);-webkit-box-shadow:0 1px 4px rgba(0,0,0,.04);box-shadow:0 1px 4px rgba(0,0,0,.04);background:#fff;padding:16px 32px;padding:1rem 2rem;width:100%;max-width:1120px;max-width:70rem;min-height:100vh}.main .list-footer{padding:24px 0;padding:1.5rem 0}.site-footer{display:none}.avatar{-webkit-transition:all .5s ease-out;transition:all .5s ease-out;margin-top:48px;margin-top:3rem;border:4px solid #fff;border-radius:50%;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.3);box-shadow:0 1px 4px rgba(0,0,0,.3);width:128px;width:8rem;height:128px;height:8rem}.avatar:hover{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.title{margin:16px auto;margin:1rem auto;font-family:Lobster,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,PingFang SC,Hiragino Sans GB,Microsoft YaHei,WenQuanYi Micro Hei,Helvetica Neue,sans-serif;font-size:24px;font-size:1.5rem;font-weight:700}.subtitle{opacity:.7;margin-bottom:48px;margin-bottom:3rem}.menu-toggle{display:none;-webkit-transition:all .5s ease-out;transition:all .5s ease-out;outline:none;border:none;background-color:transparent;width:32px;width:2rem;height:32px;height:2rem;font-size:24px;font-size:1.5rem}.site-menu{text-transform:capitalize}.site-menu .menu-list{padding:0;list-style:none}.site-menu .menu-item{padding:16px 0;padding:1rem 0}.site-menu .menu-item a{display:inline-block;height:24px;height:1.5rem;line-height:1.5}.social-menu{right:16px;right:1rem;bottom:16px;bottom:1rem;left:16px;left:1rem;font-size:0}.social-menu .social-list{padding:0;list-style:none;line-height:2}.social-menu .social-item{display:inline-block;font-size:16px;font-size:1rem}.social-menu li+li{padding-left:16px;padding-left:1rem}.post-entry{position:relative;border-top:1px solid transparent;line-height:1.8}.post-entry a{color:#4a4a4a}.post-entry a:focus,.post-entry a:hover{color:#15bf13}.post-entry+.post-entry{border-color:#f4f3f1}.post-entry .post-title{margin-top:24px;margin-top:1.5rem;margin-bottom:8px;margin-bottom:.5rem;line-height:1.3;font-size:20.8px;font-size:1.3rem;font-weight:700}.post-entry .post-title a{opacity:1}.post-entry .post-meta{margin-top:8px;margin-top:.5rem;margin-bottom:16px;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px;font-size:12.8px;font-size:.8rem}.post-entry .post-cover{position:absolute;top:73.6px;top:4.6rem;right:0;width:128px;width:8rem;height:128px;height:8rem;font-family:"object-fit: cover;";-o-object-fit:cover;object-fit:cover;//:3px}.post-entry .post-cover+.post-summary{padding-right:144px;padding-right:9rem}.post-entry .post-summary{opacity:.7;margin-top:16px;margin-top:1rem;margin-bottom:16px;margin-bottom:1rem;font-size:14.4px;font-size:.9rem}.post-entry .post-footer{margin-top:16px;margin-top:1rem;margin-bottom:24px;margin-bottom:1.5rem}.post-entry .post-footer .read-more{text-transform:uppercase;letter-spacing:1px;font-size:12.8px;font-size:.8rem}.pagination{position:relative;height:calc(2.9rem + 2px)}.pagination a{color:#4a4a4a}.pagination .pagination-next,.pagination .pagination-previous{position:absolute;border:1px solid #dbdbdb;background-color:#fff;padding:16px;padding:1rem;text-transform:uppercase;line-height:1;font-size:14.4px;font-size:.9rem}.pagination .pagination-next:focus,.pagination .pagination-next:hover,.pagination .pagination-previous:focus,.pagination .pagination-previous:hover{border-color:#15bf13;background-color:#15bf13;color:#fff}.pagination .pagination-previous{top:0;left:0}.pagination .pagination-next{top:0;right:0}.post-content a,.post-detail a,.post-footer a{border-bottom:1px dashed rgba(70,185,128,.5);padding-bottom:.1em;color:#15bf13}.post-content a:focus,.post-content a:hover,.post-detail a:focus,.post-detail a:hover,.post-footer a:focus,.post-footer a:hover{border-bottom:1px solid rgba(70,185,128,.5)}.post-tags a{padding-bottom:none;color:#4a4a4a}.post-tags a,.post-tags a:focus,.post-tags a:hover{border-bottom:none}.to-header-left,.to-header-left:focus,.to-header-left:hover,.to-header-right,.to-header-right:focus,.to-header-right:hover{border-bottom:none!important}.to-header-left+ul,.to-header-right+ul{margin-top:8px!important;margin-top:.5rem!important}.post-detail .post-header{margin-bottom:40px;margin-bottom:2.5rem}.post-detail .post-header .post-title{margin-top:24px;margin-top:1.5rem;margin-bottom:8px;margin-bottom:.5rem;line-height:1.5;font-size:32px;font-size:2rem;font-weight:700}.post-detail .post-header .post-meta{margin-top:8px;margin-top:.5rem;margin-bottom:16px;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px;font-size:12.8px;font-size:.8rem}.post-detail .post-footer{margin:32px 0;margin:2rem 0;line-height:1.8}.post-detail .post-footer .post-tags{margin-top:0;margin-bottom:16px;margin-bottom:1rem;padding-left:0}.post-detail .post-footer .post-tags li{display:inline-block;margin-bottom:8px;margin-bottom:.5rem;border-radius:3px;background:#f4f3f1;padding:5px 10px;font-size:12.8px;font-size:.8rem}.post-detail .post-footer .post-tags li+li{margin-left:8px;margin-left:.5rem}.post-detail .post-footer .post-copyright{opacity:.5;margin-top:16px;margin-top:1rem;margin-bottom:0;border-radius:3px;color:#4a4a4a;font-size:14.4px;font-size:.9rem}.post-detail .post-footer .post-copyright:hover,.post-detail .post-footer .post-copyright a{opacity:1}.post-detail .post-footer .post-copyright strong{color:#363636}.post-detail #cyReward>#cy-reward-click{display:block;margin:48px auto;margin:3rem auto}.post-detail #SOHUCS{margin:32px auto;margin:2rem auto}.post-detail #SOHUCS .invalidity{-webkit-box-sizing:border-box;box-sizing:border-box}.post-detail #disqus_thread{margin:32px auto;margin:2rem auto}.post-detail .dsq-brlink{display:none}.post-content{position:relative;line-height:1.8;word-break:break-word;word-wrap:break-word;color:#4a4a4a}.post-content li+li{margin-top:8px;margin-top:.5rem}.post-content a{opacity:1}.post-content em{color:#797979;font-style:italic}.post-content strong{color:#363636}.post-content del{text-decoration:line-through;color:#797979}.post-content ins{text-decoration:underline;color:#363636}.post-content hr{position:relative;margin:32px auto;margin:2rem auto;border-top:1px dashed #dbdbdb;border-bottom:none}.post-content hr:before{position:absolute;top:-12px;left:calc(50% - 40px);background-color:#fff;padding:0 8px;padding:0 .5rem;color:#dbdbdb;font-family:SFMono-Regular,Liberation Mono,Roboto Mono,Menlo,Monaco,Consolas,Courier New,Courier,monospace;font-size:12.8px;font-size:.8rem;content:"sep line"}.post-content h1,.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6{text-align:left;line-height:1.125;color:#363636;font-weight:500}.post-content h1{margin-top:32px;margin-top:2rem;margin-bottom:16px;margin-bottom:1rem;font-size:40px;font-size:2.5rem}.post-content h2{margin-top:28px;margin-top:1.75rem;margin-bottom:12px;margin-bottom:.75rem;font-size:32px;font-size:2rem}.post-content h3{margin-top:24px;margin-top:1.5rem;margin-bottom:8px;margin-bottom:.5rem;font-size:24px;font-size:1.5rem}.post-content h4{margin-top:20px;margin-top:1.25rem;margin-bottom:4px;margin-bottom:.25rem;font-size:20px;font-size:1.25rem}.post-content h5{font-size:16px;font-size:1rem}.post-content h5,.post-content h6{margin-top:16px;margin-top:1rem;margin-bottom:0}.post-content h6{font-size:12.8px;font-size:.8rem}.post-content p{margin-top:24px;margin-top:1.5rem;margin-bottom:24px;margin-bottom:1.5rem}.post-content blockquote{margin:32px 0;margin:2rem 0;border-left:5px solid #dbdbdb;background-color:#f4f3f1;padding:8px 16px;padding:.5rem 1rem}.post-content blockquote p{margin-top:8px;margin-top:.5rem;margin-bottom:8px;margin-bottom:.5rem}.post-content blockquote cite{margin-top:24px;margin-top:1.5rem;color:#797979;font-size:14.4px;font-size:.9rem}.post-content code,.post-content tt{margin:0;background-color:#f6f8fa;padding:0;padding-top:.2em;padding-bottom:.2em;font-family:SFMono-Regular,Liberation Mono,Roboto Mono,Menlo,Monaco,Consolas,Courier New,Courier,monospace;font-size:.9em}.post-content code:after,.post-content code:before,.post-content tt:after,.post-content tt:before{letter-spacing:-.2em;content:"\A0"}.post-content code.has-jax,.post-content tt.has-jax{background-color:transparent;padding:0;font-size:1em}.post-content kbd{display:inline-block;border:1px solid #dbdbdb;border-radius:3px;border-bottom-color:#b5b5b5;-webkit-box-shadow:inset 0 -1px 0 #b5b5b5;box-shadow:inset 0 -1px 0 #b5b5b5;background-color:#fafafa;padding:.25em;line-height:1.25;color:#4a4a4a;font-family:SFMono-Regular,Liberation Mono,Roboto Mono,Menlo,Monaco,Consolas,Courier New,Courier,monospace;font-size:.8em}.post-content pre{margin:32px auto;margin:2rem auto;border-radius:3px;padding:16px;padding:1rem;overflow-x:auto;line-height:1.618;white-space:pre;word-break:normal;word-wrap:normal;font-size:14.4px;font-size:.9rem}.post-content pre code{background-color:transparent;font-size:14.4px;font-size:.9rem}.post-content pre code:after,.post-content pre code:before{content:none}.post-content sub,.post-content sup{font-size:12.8px;font-size:.8rem}.post-content sub a,.post-content sub a:focus,.post-content sub a:hover,.post-content sup a,.post-content sup a:focus,.post-content sup a:hover{border-bottom:none}.post-content ol{margin-top:32px;margin-top:2rem;margin-bottom:32px;margin-bottom:2rem;margin-left:0;padding-left:24px;padding-left:1.5rem;list-style:decimal outside}.post-content ol ol{list-style:lower-roman outside}.post-content ol ol,.post-content ol ul{margin-top:8px;margin-top:.5rem;margin-bottom:8px;margin-bottom:.5rem}.post-content ol ul,.post-content ul{list-style:disc outside}.post-content ul{margin-top:32px;margin-top:2rem;margin-bottom:32px;margin-bottom:2rem;margin-left:0;padding-left:24px;padding-left:1.5rem}.post-content ul ul{list-style:circle outside}.post-content ul ol,.post-content ul ul{margin-top:8px;margin-top:.5rem;margin-bottom:8px;margin-bottom:.5rem}.post-content ul ol{list-style:decimal outside}.post-content .task-list{margin-top:32px;margin-top:2rem;margin-bottom:32px;margin-bottom:2rem;padding-left:0;list-style:none}.post-content .task-list .task-list{margin-top:8px;margin-top:.5rem;margin-bottom:8px;margin-bottom:.5rem;padding-left:24px;padding-left:1.5rem}.post-content dl{margin-top:32px;margin-top:2rem;margin-bottom:32px;margin-bottom:2rem}.post-content dl dt{margin-top:16px;margin-top:1rem;color:#15bf13}.post-content dl dt:after{content:":"}.post-content dl dd{margin-top:4px;margin-top:.25rem;margin-left:0;text-indent:32px;text-indent:2rem}.post-content figure{display:block;margin:32px auto;margin:2rem auto}.post-content figure img{-webkit-box-shadow:2px 20px 40px 10px rgba(0,0,0,.15);box-shadow:2px 20px 40px 10px rgba(0,0,0,.15);max-width:100%}.post-content figure figcaption h4{text-align:center;color:#b5b5b5;font-size:14.4px;font-size:.9rem}.post-content img{display:block;-webkit-box-shadow:2px 20px 40px 10px rgba(0,0,0,.15);box-shadow:2px 20px 40px 10px rgba(0,0,0,.15);max-width:100%}.post-content div.has-jax,.post-content img{margin:32px auto;margin:2rem auto}.post-content .MathJax:focus,.post-content .MathJax_Display:focus{outline:none}.asciicast{margin:32px auto!important;margin:2rem auto!important;text-align:center}.jsfiddle{width:100%}.cp_embed_wrapper,.jsfiddle,.shengxiang{margin:32px auto;margin:2rem auto}.shengxiang{display:block;width:1054px;height:768px}.video-js,.video-js.my-player-dimensions{margin:32px auto;margin:2rem auto;padding-top:56.25%;width:100%;height:0}.video-js .vjs-big-play-button:focus,.video-js .vjs-control:focus,.video-js:focus{outline:none}.video-js .vjs-poster{background-size:cover}.music163{max-width:100%}.gist,.music163{margin:32px auto;margin:2rem auto}.gist td,.gist th{border:none}.halign-center>p{padding:0;text-align:center}table{margin:32px auto;margin:2rem auto;background-color:#fff;width:100%;border-collapse:collapse;color:#363636}table td,table th{border:1px solid #dbdbdb;border-width:1px;padding:.5em .75em;vertical-align:middle;// Modifiers &.is-narrow{width:1%;white-space:nowrap}}table th{color:#363636}table tr:hover{background-color:#fafafa}table tr.is-selected{background-color:#15bf13;color:#15bf13}table tr.is-selected a,table tr.is-selected strong{color:currentColor}table tr.is-selected td,table tr.is-selected th{border-color:#15bf13;color:currentColor}table thead td,table thead th{border-width:0 0 2px;color:#797979}table tfoot td,table tfoot th{border-width:2px 0 0;color:#797979}table tbody tr:last-child td,table tbody tr:last-child th{border-bottom-width:1px}table{// Modifiers &.is-bordered td,// Modifiers &.is-bordered th{border-width:1px}// Modifiers &.is-bordered tr:last-child td,// Modifiers &.is-bordered tr:last-child th{border-bottom-width:1px}}table.is-narrow td,table.is-narrow th{padding:.25em .5em}table.is-centered td,table.is-centered th,table.is-centered tr{text-align:center}table.is-striped tbody tr:not(.is-selected):nth-child(2n){background-color:#fafafa}table.is-striped tbody tr:not(.is-selected):nth-child(2n):hover{background-color:#f4f3f1}.chroma{background-color:#272822;color:#f8f8f2}.chroma .err{background-color:#1e0010;color:#960050}.chroma .lntd{margin:0;border:0;padding:0;vertical-align:top}.chroma .lntable{display:block;margin:0;border:0;padding:0;width:auto;overflow:auto;border-spacing:0}.chroma .hl{display:block;background-color:#ffc;width:100%}.chroma .ln,.chroma .lnt{margin-right:.4em;padding:0 .4em}.chroma .k,.chroma .kc,.chroma .kd{color:#66d9ef}.chroma .kn{color:#f92672}.chroma .kp,.chroma .kr,.chroma .kt{color:#66d9ef}.chroma .na,.chroma .nc{color:#a6e22e}.chroma .no{color:#66d9ef}.chroma .nd,.chroma .ne,.chroma .nf,.chroma .nx{color:#a6e22e}.chroma .nt{color:#f92672}.chroma .l{color:#ae81ff}.chroma .dl,.chroma .ld,.chroma .s,.chroma .s2,.chroma .sa,.chroma .sb,.chroma .sc,.chroma .sd{color:#e6db74}.chroma .se{color:#ae81ff}.chroma .s1,.chroma .sh,.chroma .si,.chroma .sr,.chroma .ss,.chroma .sx{color:#e6db74}.chroma .il,.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#ae81ff}.chroma .o,.chroma .ow{color:#f92672}.chroma .c,.chroma .c1,.chroma .ch,.chroma .cm,.chroma .cp,.chroma .cpf,.chroma .cs{color:#75715e}.chroma .gd{color:#f92672}.chroma .ge{font-style:italic}.chroma .gi{color:#a6e22e}.chroma .gs{font-weight:700}.chroma .gu{color:#75715e}.links-list{text-align:center;font-size:0}.links-list .link-item{-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;margin:24px auto;margin:1.5rem auto;width:25%}.links-list .link-item+.link-item{padding-left:16px;padding-left:1rem}.links-list .link-item .link-avatar{-webkit-transition:-webkit-transform .5s ease-out;transition:-webkit-transform .5s ease-out;transition:transform .5s ease-out;transition:transform .5s ease-out,-webkit-transform .5s ease-out;border:2px solid #fff;border-radius:50%;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.3);box-shadow:0 1px 4px rgba(0,0,0,.3);width:100px;height:100px}.links-list .link-item .link-avatar:hover{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.links-list .link-item .link-title{min-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-size:1rem}.links-list .link-item .link-description{min-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.8px;font-size:.8rem}.offscreen{position:absolute;left:-16384px;left:-1024rem}.tutorial-suspension-next{position:fixed;right:16px;right:1rem;top:352px;top:22rem;z-index:1000}.tutorial-suspension-next a{display:block;opacity:1;border:1px solid #fff;border-radius:50%;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.3);box-shadow:0 1px 4px rgba(0,0,0,.3);background-color:#fafafa;cursor:pointer;width:40px;width:2.5rem;height:40px;height:2.5rem;text-align:center;line-height:40px;line-height:2.5rem}.tutorial-suspension-next a+a{margin-top:16px;margin-top:1rem}.tutorial-suspension-next a.to-middle-right{bottom:16px;bottom:1rem;color:#797979}.tutorial-suspension-next a.to-middle-right:hover{border-color:#797979;background-color:#797979;color:#fff}.tutorial-suspension-prev{position:fixed;left:336px;left:21rem;top:352px;top:22rem;z-index:1000}.tutorial-suspension-prev a{display:block;opacity:1;border:1px solid #fff;border-radius:50%;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.3);box-shadow:0 1px 4px rgba(0,0,0,.3);background-color:#fafafa;cursor:pointer;width:40px;width:2.5rem;height:40px;height:2.5rem;text-align:center;line-height:40px;line-height:2.5rem}.tutorial-suspension-prev a+a{margin-top:16px;margin-top:1rem}.tutorial-suspension-prev a.to-middle-left{bottom:16px;bottom:1rem;color:#797979}.tutorial-suspension-prev a.to-middle-left:hover{border-color:#797979;background-color:#797979;color:#fff}.suspension{position:fixed;right:32px;right:2rem;bottom:48px;bottom:3rem;z-index:1000}.suspension a{display:block;opacity:1;border:1px solid #fff;border-radius:50%;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.3);box-shadow:0 1px 4px rgba(0,0,0,.3);background-color:#fafafa;cursor:pointer;width:40px;width:2.5rem;height:40px;height:2.5rem;text-align:center;line-height:40px;line-height:2.5rem}.suspension a+a{margin-top:16px;margin-top:1rem}.suspension a.to-top{-webkit-transition:all .5s ease-out;transition:all .5s ease-out;color:#797979}.suspension a.to-top:hover{border-color:#797979;background-color:#797979;color:#fff}.suspension a.to-comment{-webkit-transition:all .5s ease-out;transition:all .5s ease-out;color:#15bf13}.suspension a.to-comment:hover{border-color:#15bf13;background-color:#15bf13;color:#fff}.suspension .is-hide{display:none}.not-found{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:100%;height:248px;height:15.5rem;text-align:center;font-family:SFMono-Regular,Liberation Mono,Roboto Mono,Menlo,Monaco,Consolas,Courier New,Courier,monospace}.not-found .error-emoji{color:#363636;font-size:48px;font-size:3rem}.not-found .error-text{color:#797979;font-size:20px;font-size:1.25rem}.not-found .error-link{margin-top:32px;margin-top:2rem}.not-found .error-link a{color:#15bf13;font-size:16px;font-size:1rem}.terms-list .tags-cloud{margin:2em auto}.terms-list .tags-cloud a{display:inline-block;position:relative;opacity:1;border-radius:5px;text-decoration:none}.terms-list .tags-cloud a.tag-s{opacity:.8;padding:0 8px;padding:0 .5rem;line-height:32px;line-height:2rem;color:#797979;font-size:16px;font-size:1rem}.terms-list .tags-cloud a.tag-m{opacity:.9;padding:0 12px;padding:0 .75rem;line-height:40px;line-height:2.5rem;color:#4a4a4a;font-size:20px;font-size:1.25rem}.terms-list .tags-cloud a.tag-l{padding:0 16px;padding:0 1rem;line-height:48px;line-height:3rem;color:#363636;font-size:24px;font-size:1.5rem}.terms-list .tags-cloud a.tag-xl{padding:0 20px;padding:0 1.25rem;line-height:52px;line-height:3.25rem;color:#242424;font-size:28px;font-size:1.75rem}.terms-list .tags-cloud a.tag-xxl{padding:0 24px;padding:0 1.5rem;line-height:56px;line-height:3.5rem;color:#15bf13;font-size:32px;font-size:2rem}.terms-list .tags-cloud a:hover{opacity:.8;background-color:#15bf13;color:#fff}td.icon{width:15%;text-align:center}#subscribe-div{width:320px;width:20rem;margin-left:auto;margin-right:auto;margin-bottom:80px;margin-bottom:5rem}#subscribe-button{margin-left:32px;margin-left:2rem}#subscribe-button:hover{background-color:#f4f3f1}.topnav{background-color:#242424;overflow:hidden;padding-left:32px;padding-left:2rem}.topnav .tlb:hover{background-color:#15bf13}.tlb{width:5%;float:left;display:block;padding:16px;padding:1rem;text-align:center;font-weight:700;color:#f4f3f1;opacity:1}.topnav .icon{display:none}#menu-bar-social{float:right;margin-top:8px;margin-top:.5rem}#menu-bar-social li{margin:0;padding:0}#choose-article,#choose-project{background-color:#15bf13;color:#fafafa;border:1px solid #15bf13;font-weight:700}#patreon-button{background-color:#1f72c4;border:1px solid #1f72c4}#ml-button,#patreon-button{color:#fafafa;font-weight:700;text-align:center}#about-button,#ml-button{background-color:#15bf13;border:1px solid #15bf13}#about-button{text-align:center;color:#fafafa;font-weight:700}#intro{width:43%;float:left}#path{width:43%;float:right}#subscribeEmailBtn{padding:7px 16px;margin-left:auto;margin-right:auto;text-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:16px}.link-to-article,.link-to-project{background-color:#fe7f2d;opacity:1;font-weight:700;border:1px solid #fe7f2d}.btn{position:relative;display:block;opacity:1;padding:20px;-webkit-transform-style:flat;transform-style:flat}.btn,.btn:after,.btn:before{-webkit-transition:all .25s ease-out;transition:all .25s ease-out}.btn:after,.btn:before{content:"";position:absolute;z-index:0}.paper{-webkit-box-shadow:0 15px 10px -10px rgba(31,31,31,.5);box-shadow:0 15px 10px -10px rgba(31,31,31,.5)}.paper-raise:before{top:0;left:0;width:100%;height:100%}.paper-raise:hover:before{-webkit-box-shadow:0 15px 10px -10px rgba(31,31,31,.5);box-shadow:0 15px 10px -10px rgba(31,31,31,.5)}.paper-raise-flatten{border-color:#fff;-webkit-box-shadow:none;box-shadow:none}.paper-raise-flatten:before{top:0;left:0;width:100%;height:100%;-webkit-box-shadow:0 15px 10px -10px rgba(31,31,31,.5);box-shadow:0 15px 10px -10px rgba(31,31,31,.5)}.paper-raise-flatten:hover{border-color:#dedede}.paper-raise-flatten:hover:before{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.3),0 0 40px hsla(0,0%,50%,.1) inset;box-shadow:0 1px 4px rgba(0,0,0,.3),inset 0 0 40px hsla(0,0%,50%,.1)}.paper-lift:after,.paper-lift:before{bottom:15px;width:50%;height:20%;max-width:300px;max-height:100px;-webkit-box-shadow:0 10px 10px rgba(31,31,31,.5);box-shadow:0 10px 10px rgba(31,31,31,.5)}.paper-lift:before{left:8px;-webkit-transform:rotate(-3deg);transform:rotate(-3deg)}.paper-lift:after{right:8px;-webkit-transform:rotate(3deg);transform:rotate(3deg)}.paper-lift:hover{border-color:transparent}.paper-lift:hover:after,.paper-lift:hover:before{-webkit-box-shadow:0 15px 12px rgba(31,31,31,.7);box-shadow:0 15px 12px rgba(31,31,31,.7)}.paper-lift:hover:before{left:10px}.paper-lift:hover:after{right:10px}.paper-flatten{border:1px solid transparent}.paper-flatten:after,.paper-flatten:before{bottom:15px;width:50%;height:20%;max-width:300px;max-height:100px;-webkit-box-shadow:0 15px 12px rgba(31,31,31,.7);box-shadow:0 15px 12px rgba(31,31,31,.7)}.paper-flatten:before{left:10px;-webkit-transform:rotate(-3deg);transform:rotate(-3deg)}.paper-flatten:after{right:10px;-webkit-transform:rotate(3deg);transform:rotate(3deg)}.paper-flatten:hover{border-color:#ccc}.paper-flatten:hover:after,.paper-flatten:hover:before{-webkit-transition:left .2s,right .2s,-webkit-box-shadow .6s ease-out;transition:left .2s,right .2s,-webkit-box-shadow .6s ease-out;transition:box-shadow .6s ease-out,left .2s,right .2s;transition:box-shadow .6s ease-out,left .2s,right .2s,-webkit-box-shadow .6s ease-out;-webkit-box-shadow:0 8px 8px rgba(31,31,31,.5);box-shadow:0 8px 8px rgba(31,31,31,.5)}.paper-flatten:hover:before{left:5px}.paper-flatten:hover:after{right:5px}.paper-curl-right:after,.paper-curl-right:before,.paper-curl:after,.paper-curl:before{bottom:12px;width:50%;height:55%;max-width:200px;max-height:100px;-webkit-box-shadow:1px 8px 12px rgba(31,31,31,.6);box-shadow:1px 8px 12px rgba(31,31,31,.6)}.paper-curl-right:before,.paper-curl:before{left:10px}.paper-curl-right:after,.paper-curl:after{right:10px}.paper-curl-right:hover:after,.paper-curl-right:hover:before,.paper-curl:hover:after,.paper-curl:hover:before{-webkit-box-shadow:1px 8px 12px rgba(31,31,31,.8);box-shadow:1px 8px 12px rgba(31,31,31,.8)}.paper-curl-right:hover:before,.paper-curl:hover:before{-webkit-transform:skew(-8deg) rotate(-3deg);transform:skew(-8deg) rotate(-3deg)}.paper-curl-right:hover:after,.paper-curl:hover:after{-webkit-transform:skew(8deg) rotate(3deg);transform:skew(8deg) rotate(3deg)}.paper-curl:hover{border-radius:0 0 40% 40%/0 0 30% 30%}.paper-curl-right:before{display:none}.paper-curl-right:hover{border-radius:0 0 40% 0/0 0 30% 0}.paper-curl-right-side:after,.paper-curl-right-side:before{right:10px;width:50%;height:55%;max-width:200px;max-height:100px}.paper-curl-right-side:before{top:12px;-webkit-box-shadow:1px -4px 12px rgba(31,31,31,.6);box-shadow:1px -4px 12px rgba(31,31,31,.6)}.paper-curl-right-side:after{bottom:12px;-webkit-box-shadow:1px 4px 12px rgba(31,31,31,.6);box-shadow:1px 4px 12px rgba(31,31,31,.6)}.paper-curl-right-side:hover{right:0;border-radius:0 3% 3% 0/0 50% 50% 0}.paper-curl-right-side:hover:before{-webkit-box-shadow:10px -4px 12px rgba(31,31,31,.8);box-shadow:10px -4px 12px rgba(31,31,31,.8);-webkit-transform:skew(-8deg) rotate(-3deg);transform:skew(-8deg) rotate(-3deg)}.paper-curl-right-side:hover:after{-webkit-box-shadow:10px 4px 12px rgba(31,31,31,.8);box-shadow:10px 4px 12px rgba(31,31,31,.8);-webkit-transform:skew(8deg) rotate(3deg);transform:skew(8deg) rotate(3deg)}.footerLink{position:absolute;bottom:0;right:0;padding:10px 15px;color:#fff;background-color:rgba(0,0,0,.8);border-radius:5px 0 0 0;text-decoration:none;-webkit-transition:.3s;transition:.3s}.footerLink:hover{background-color:rgba(60,60,60,.8)}.article-detail .article-header{margin-bottom:40px;margin-bottom:2.5rem}.article-detail .article-header .article-title{margin-top:24px;margin-top:1.5rem;margin-bottom:8px;margin-bottom:.5rem;line-height:1.5;font-size:32px;font-size:2rem;font-weight:700}.article-detail .article-header .article-meta{margin-top:8px;margin-top:.5rem;margin-bottom:16px;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px;font-size:12.8px;font-size:.8rem}.article-detail .article-footer{margin:32px 0;margin:2rem 0;line-height:1.8}.article-detail .article-footer .article-tags{margin-top:0;margin-bottom:16px;margin-bottom:1rem;padding-left:0}.article-detail .article-footer .article-tags li{display:inline-block;margin-bottom:8px;margin-bottom:.5rem;border-radius:3px;background:#f4f3f1;padding:5px 10px;font-size:12.8px;font-size:.8rem}.article-detail .article-footer .article-tags li+li{margin-left:8px;margin-left:.5rem}.article-detail .article-footer .article-copyright{opacity:.5;margin-top:16px;margin-top:1rem;margin-bottom:0;border-radius:3px;color:#4a4a4a;font-size:14.4px;font-size:.9rem}.article-detail .article-footer .article-copyright:hover,.article-detail .article-footer .article-copyright a{opacity:1}.article-detail .article-footer .article-copyright strong{color:#363636}@media screen and (max-width:800px){.site-header{position:relative;width:100%}.main{margin-left:0;border-top:1px solid rgba(0,0,0,.09);border-right:none;border-bottom:1px solid rgba(0,0,0,.09);border-left:none;padding:0 1rem;width:100%;min-height:0}.site-footer{display:block;padding:2rem 1rem;text-align:center;color:#4a4a4a;font-family:SFMono-Regular,Liberation Mono,Roboto Mono,Menlo,Monaco,Consolas,Courier New,Courier,monospace;font-size:.8rem}.site-footer a{opacity:.7;color:#4a4a4a}.site-footer a:focus,.site-footer a:hover{opacity:1}.avatar{position:absolute;top:1rem;left:1rem;margin-top:0;border:2px solid #fff;width:2rem;height:2rem}.title{margin-top:3rem}.menu-toggle{display:block;position:absolute;top:1rem;right:1rem}.site-menu.collapsed{max-height:0}.site-menu{-webkit-transition:max-height .5s ease-out;transition:max-height .5s ease-out;max-height:1000px;overflow-y:hidden}.social-menu.collapsed{margin:0 auto;max-height:0}.social-menu{position:relative;right:0;bottom:0;left:0;-webkit-transition:all .5s ease-out;transition:all .5s ease-out;margin:2rem auto;max-height:125px;overflow-y:hidden}.post-entry .post-cover{position:static;margin:0 -1rem;border-radius:0;width:100vw;height:56.25vw}.post-entry .post-cover+.post-summary{padding-right:0}.post-content figure img,.post-content img{-webkit-box-shadow:none;box-shadow:none}.cp_embed_wrapper iframe{height:265px}.shengxiang{width:100%;height:calc(72.9vw - 1.458rem)}.links-list .link-item{width:50%}}@media screen and (min-width:800px) and (max-height:768px){.social-menu{display:none}}@media screen and (max-width:1170px){.asciicast iframe{width:100%!important}}@media screen and (max-width:1440px){.shengxiang{width:100%;height:calc(72.9vw - 17.496rem)}}@media screen and (max-width:600px){.topnav .tlb:not(:first-child){display:none}.topnav .tlb.icon{float:right;display:block}.topnav.responsive{position:relative}.topnav.responsive .tlb.icon{position:absolute;right:0;top:0}.topnav.responsive .tlb{float:left;display:block;text-align:left;width:100%}.topnav{padding-left:0}}

/*# sourceMappingURL=bundle.2dfaa55a81.css.map*/