@import url("//fonts.googleapis.com/css?family=Source+Code+Pro:400,500|Ubuntu+Mono:400");@font-face{font-family:'Cambria';font-weight:normal;font-style:normal;src:local("Cambria"),url("//cf.jare.io/?u=https://www.yegor256.com/fonts/cambria/2EAA54_2_0.eot"),url("//cf.jare.io/?u=https://www.yegor256.com/fonts/cambria/2EAA54_2_0.eot?#iefix") format("embedded-opentype"),url("//cf.jare.io/?u=https://www.yegor256.com/fonts/cambria/2EAA54_2_0.woff2") format("woff2"),url("//cf.jare.io/?u=https://www.yegor256.com/fonts/cambria/2EAA54_2_0.woff") format("woff"),url("//cf.jare.io/?u=https://www.yegor256.com/fonts/cambria/2EAA54_2_0.ttf") format("truetype")}code,pre{font-family:"Source Code Pro",monospace;font-weight:400}@media all and (max-width: 700px){code,pre{font-family:'Ubuntu Mono';letter-spacing:-1px}}code{background-color:#d0d0d0;border-radius:3px;font-size:90%;line-height:19px;padding:0 2.85px}.highlight{border-left:3px solid #d0d0d0;margin-left:38px;padding-left:9.5px !important}@media all and (max-width: 700px){.highlight{border-left:0;margin-left:0;overflow-x:auto;padding-left:0 !important}}.highlight .kn,.highlight .kd,.highlight .kt{font-weight:bold}.highlight .c1{color:#515151}.highlighttable{border-spacing:0;table-layout:fixed;width:100%}.highlighttable .linenos{min-width:38px;padding-right:2px;text-align:right;width:38px}.highlighttable .highlight{margin-left:0}@media all and (max-width: 700px){.highlighttable{overflow-x:auto}}pre{display:block;font-size:17.1px;line-height:22.8px}pre code{background-color:inherit;padding:0}@media all and (max-width: 700px){pre{line-height:22.8px}}.icon::before{font-size:19px;line-height:22.8px}.icon-twitter:hover{color:#00aced}.icon-stackoverflow:hover{color:#f48024}.icon-github:hover{color:#800080}.icon-facebook:hover{color:#3b5998}.icon-linkedin:hover{color:#007bb6}.icon-instagram:hover{color:#fd1d1d}.icon-rss:hover{color:#f60}.icon-reddit:hover{color:#cee3f8}.icon-pinterest:hover{color:#c92228}.icon-youtube:hover{color:#e52d27}.icon-angellist:hover{color:#6694ca}.icon-gitter:hover{color:#ff006e}.icon-podcast:hover{color:#f50}.wrapper,.disqus,.disqus .hint{box-sizing:border-box;clear:both;line-height:26.6px;margin-left:auto;margin-right:auto;padding-left:38px;padding-right:38px;width:700px}@media all and (max-width: 700px){.wrapper,.disqus,.disqus .hint{line-height:30.4px;padding-left:19px;padding-right:19px;width:100%}}.disqus{margin-top:95px;text-align:center;width:80% !important}@media all and (max-width: 910px){.disqus{width:100% !important}}.disqus .disqus-thread a{color:#4682b4;text-decoration:underline}.youtube{border-left:4px solid #e52d27;float:right;font-size:.8em;line-height:1.2em;margin:9.5px -95px 9.5px 19px;padding-left:19px;text-align:left;width:190px}.youtube .box{display:block;line-height:0;margin-bottom:7.6px;position:relative;width:100%}.youtube .box img{width:100%}.youtube .box .play{color:#fff;height:100%;line-height:1em;padding-top:21%;position:absolute;text-align:center;top:0;vertical-align:middle;width:100%}.youtube .box .play i::before{font-size:3em;line-height:1em}.buttons{margin-bottom:.5em}.buttons a,.buttons a:visited{text-decoration:none}.buttons a{position:relative}.buttons a .count{background-color:#fff;border:1px solid #919191;color:#919191;display:none;font-family:"Source Code Pro",monospace;font-size:11.4px;line-height:13.3px;padding:0 3.8px;position:absolute;right:5.7px;top:-13.3px}.buttons a .icon{border:1px solid #919191;border-radius:50%;color:#919191;display:inline-block;height:22.8px;line-height:22.8px;margin-bottom:3.8px;margin-right:3.8px;padding:9.12px;text-align:center;vertical-align:middle;width:22.8px}.buttons a .icon:hover{background-color:#919191;color:#fff}.quote{border-left:4px solid #81b341;float:right;font-size:30.4px;line-height:30.4px;margin:9.5px -95px 9.5px 19px;padding-left:14.25px;width:285px}.quote::before{content:'ˮ'}.book{float:right;font-family:"Source Code Pro",monospace;margin:9.5px -114px 9.5px 19px;padding-left:14.25px;width:285px}.book .book-cover{float:left;height:160px;margin-right:11.4px;width:108px}.book .amazon-button{height:20px}.wrapper,.disqus,.disqus .hint{box-sizing:border-box;clear:both;line-height:26.6px;margin-left:auto;margin-right:auto;padding-left:38px;padding-right:38px;width:700px}@media all and (max-width: 700px){.wrapper,.disqus,.disqus .hint{line-height:30.4px;padding-left:19px;padding-right:19px;width:100%}}.highlighttable .linenos,.youtube,.gray,.footer,h2 .link,.subline,.pagination .mute,blockquote p::before{color:#919191}.highlighttable .linenos a,.youtube a,.gray a,.footer a,h2 .link a,.subline a,.pagination .mute a,blockquote p::before a,.highlighttable .linenos a:visited,.youtube a:visited,.gray a:visited,.footer a:visited,h2 .link a:visited,.subline a:visited,.pagination .mute a:visited,blockquote p::before a:visited{color:inherit}.em2{font-size:2em}.center{text-align:center}.green{color:#81b341}.red{color:#b82f2f}.orange{color:orange}.clear,h1,h2,h3,hr{clear:both}.footer,.subline{font-size:16.15px}body,.field{font-family:"Cambria","Georgia","Times New Roman",serif;font-style:normal;font-weight:normal}b,strong,h1,h2,h3,.bullet{font-family:"Cambria","Georgia","Times New Roman",serif;font-style:normal;font-weight:bold}blockquote{font-family:"Cambria","Georgia","Times New Roman",serif;font-style:italic;font-weight:normal}@media all and (max-width: 700px){.highlighttable .linenos,.youtube,.quote,.book,.desktop-only,.teamed-banner,.header,.header .search .google,.header .face .hire,.header .face .sub,.footer,h2 .link,blockquote p::before{display:none}}@media print{.disqus,.youtube,.buttons,.quote,.book,.unprintable,.teamed-banner,.header,.header .hot,.pagination{display:none !important;visibility:hidden}}@media not print{.printable{display:none !important;visibility:hidden}}*{max-width:100%}body{background-color:#fff;color:#111;font-size:19px;height:100%;margin:0;overflow-x:hidden;padding-bottom:38px;padding-top:38px;position:relative}a,a:visited{color:#4682b4;text-decoration:underline}body a,body a:visited{color:inherit}del{text-decoration:line-through}.foreign{text-decoration:underline}.foreign:hover{color:#919191}.teamed-banner{margin-bottom:38px;margin-top:38px;width:100%}.teamed-banner img{width:100%}.header-toggle{cursor:pointer;display:inline-block;font-size:26.6px}@media all and (min-width: 700px){.header-toggle{display:none}}.header{text-align:center}@media all and (max-width: 700px){.header{text-align:left}}.header .hot{font-family:'Monaco', monospace;font-size:75%;line-height:19px;margin-bottom:38px;margin-top:38px;text-align:left}.header .hot ul{list-style:none;padding-left:0}.header .hot ul li{border-left:4px solid #81b341;color:#3e551f;margin-bottom:19px;padding-left:19px}.header .menu{list-style:none;padding-left:0}.header .menu li{display:inline;margin-right:7.6px}.header .menu li.selected a{color:#3e551f;text-decoration:none}.header .menu li.highlighted a{background-color:#b82f2f;color:#fff;padding:0 .3em;text-decoration:none}.header .menu li::after{content:' '}.header .search form{position:relative}.header .search .google{height:2.4em;margin-left:1em;position:absolute;top:.3em;visibility:hidden}.header .social a{text-decoration:none}.header .face{position:relative}.header .face .photo{border-radius:50%;height:80px;width:80px}.header .face .hire{color:#597b2d;left:50%;margin-left:45px;position:absolute;text-decoration:underline;top:0}.header .face .sub{color:#597b2d;margin-right:45px;position:absolute;right:50%;text-align:right;text-decoration:underline;top:50px}.footer{margin-top:95px;text-align:center}label{display:block}fieldset{border:0;padding:0}.field{box-sizing:border-box;font-size:19px;padding:3.8px 9.5px}.field-text{border:1px solid #111}@media all and (max-width: 700px){.field-text{width:100%}}h1{font-size:38px;line-height:38px;margin-bottom:9.5px}h1 a{text-decoration:none}h2,h3{position:relative}h2{margin-top:38px}h2 .link{margin-left:5.7px;text-decoration:none}h2 .link:hover{color:inherit;opacity:1}.subline{list-style:none;margin-top:0;padding-left:0}.subline li{display:inline;margin-right:9.5px;white-space:nowrap}.front{margin-bottom:76px;margin-top:38px}.pagination{text-align:center}.pagination .left{float:left}.pagination .right{float:right}.pagination a{text-decoration:none}sup,sub{font-size:.6em;line-height:0;position:relative;vertical-align:baseline}sup{top:-.3em}sub{top:.3em}hr{border:0;border-top:1px solid #d0d0d0;height:0;margin-top:38px;text-align:left;width:50%}.badge{float:right;margin-left:2em}@media all and (max-width: 700px){.badge{float:none;margin-bottom:19px;margin-left:0;margin-top:19px}}blockquote{border-left:3px solid #d0d0d0;margin-left:28.5px;padding-left:9.5px !important;position:relative}blockquote p::before{content:'ˮ';font-size:47.5px;left:-28.5px;position:absolute;top:9.5px}@media all and (max-width: 700px){blockquote{border-left:0;margin-left:0;padding-left:0}}figure{margin:0;position:relative}figure figcaption{bottom:1em;color:#b3b3b3;font-size:.8em;left:.5em;line-height:1em;max-width:90%;position:absolute;text-shadow:0.2px 0.2px #5e5e5e}figure figcaption::before{content:'© '}.tagged{margin:19px 0}.tag{background-color:#919191;color:#fff !important;font-family:"Source Code Pro",monospace;font-size:15.2px;margin-right:3.8px;padding:0 9.5px;text-decoration:none;white-space:nowrap}.tag img{display:inline-block;height:1em;margin-right:.2em;margin-top:-.25em;vertical-align:middle}.tag:visited{color:#fff !important}.tag:hover{background-color:#111}.note{color:#919191;font-size:15.2px;line-height:19px;margin-top:0}.about-badge{height:24px}.gist pre{font-size:12px !important}.plantuml{width:100%}.bullet{background-color:#fff;border-radius:50%;color:#ffd280;display:inline-block;font-size:.8em;height:1em;line-height:1em;padding:.2em;text-align:center;vertical-align:middle;width:1em}table th{text-align:left}.eqtn{display:block;margin-left:auto;margin-right:auto}
