body{font-family:'Source Sans Pro',sans-serif;line-height:1.5;overflow-x:hidden;overflow-y:scroll}pre,code{font-family:'Source Code Pro',monospace;font-size:0.875rem}header nav,main,footer{margin:0 auto;max-width:48rem;box-sizing:border-box}main,footer{padding:0 0.5rem}main,pre,dt code,blockquote{overflow:auto}h1,h2,h3{font-weight:inherit;line-height:1.25;margin:1rem 0}h1{font-size:2rem}section h1{font-size:1.625rem}section h2{font-size:1.375rem}section h3{font-size:1.25rem}p,dl,ul,ol,figure,table,pre,blockquote{margin:0.75rem 0}body,dt,dd,li ul,li ol,header h1,header ul{margin:0}dd,ul,ol{padding:0 0 0 1.5rem}header ul,.toc>ul{padding:0}ul{list-style:outside square}ol{list-style:outside decimal}nav ul{list-style:none}a{text-decoration:none;background:transparent;color:#0047ab}a:active,a:focus,a:hover{text-decoration:underline}a.sourceLine{text-decoration:inherit;color:inherit}pre,dt code,tr.header,tr.even,blockquote{background:#f7f8fa}pre,dt code,table,tr.header,blockquote,header li ul{border:0 solid #d6dae4}pre{line-height:1.25;padding:0.5rem;border-radius:0.25rem;border-width:1px}dt code{display:block;white-space:nowrap;padding:0.125rem 0.5rem;border-top-width:1px}blockquote{padding:0 1rem;border-left-width:0.25rem}table{border-collapse:collapse}table,tr.header{border-width:1px 0}tr>*{padding:0.125rem 1rem}tr>:first-child{padding-left:0.5rem}tr>:last-child{padding-right:0.5rem}figure{text-align:center}img{border:none}main img{max-width:100%}main img.left{float:left;margin:0 1rem 1rem 0}main img.right{float:right;margin:0 0 1rem 1rem}.toc-section-number::after{content:"."}.header-section-number{display:none}.references :target{background:#ffa}header{color:#fff;background:#003865;box-shadow:0 1px 3px rgba(0,0,0,0.1),0 1px 2px rgba(0,0,0,0.2);white-space:nowrap;line-height:3rem}header nav,header ul{display:flex}header li,header a,header svg{display:block}header svg{fill:currentColor;height:1rem;padding:1rem 0}header a{color:inherit;padding:0 0.5rem}header li ul a{padding:0 1rem}header a:active,header a:focus,header a:hover{text-decoration:none}header a.current,header li a:active,header li a:focus,header li a:hover,header li.show>a{color:#fff;background:#002147}header h1{font-size:1.25rem;line-height:inherit}header li{position:relative}header li ul{display:none;position:absolute;z-index:1;right:0;top:100%;min-width:100%;padding:0.25rem 0;line-height:1.75rem;color:#000;background:#fff;border-radius:0 0 0.25rem 0.25rem;box-shadow:0 0.5rem 1rem 0 rgba(0,0,0,0.2)}header li.show ul{display:block}header nav>ul{margin-left:auto}header nav>ul:nth-of-type(2){display:none}header nav>ul:nth-of-type(2) a{opacity:0.5}header nav>ul:nth-of-type(2) a:active,header nav>ul:nth-of-type(2) a:focus,header nav>ul:nth-of-type(2) a:hover{opacity:inherit}header span.caret{display:inline-block;vertical-align:middle;border:0.25rem solid transparent;border-top:0.25rem solid #fff;border-bottom:0;width:0;height:0}header li.show span.caret{border-top:0;border-bottom:0.25rem solid #fff}footer p{color:#666;font-size:0.875rem;margin:2rem 0;padding:1rem 0 0;border-top:1px solid #ddd}@media (min-width:48rem){header nav>ul:nth-of-type(2){display:flex}header nav>ul:nth-last-of-type(2){margin-left:1rem}header nav>ul:nth-last-of-type(2) ul{left:0;right:auto}}code span.al{color:#ff0000;font-weight:bold}code span.an{color:#60a0b0;font-weight:bold;font-style:italic}code span.at{color:#7d9029}code span.bn{color:#40a070}code span.bu{}code span.cf{color:#007020;font-weight:bold}code span.ch{color:#4070a0}code span.cn{color:#880000}code span.co{color:#60a0b0;font-style:italic}code span.cv{color:#60a0b0;font-weight:bold;font-style:italic}code span.do{color:#ba2121;font-style:italic}code span.dt{color:#902000}code span.dv{color:#40a070}code span.er{color:#ff0000;font-weight:bold}code span.ex{}code span.fl{color:#40a070}code span.fu{color:#06287e}code span.im{}code span.in{color:#60a0b0;font-weight:bold;font-style:italic}code span.kw{color:#007020;font-weight:bold}code span.op{color:#666666}code span.ot{color:#007020}code span.pp{color:#bc7a00}code span.sc{color:#4070a0}code span.ss{color:#bb6688}code span.st{color:#4070a0}code span.va{color:#19177c}code span.vs{color:#4070a0}code span.wa{color:#60a0b0;font-weight:bold;font-style:italic}@font-face{font-family:'Source Code Pro';font-style:normal;font-weight:normal;src:url('/fonts/SourceCodePro-Regular.woff2') format('woff2'),url('/fonts/SourceCodePro-Regular.woff') format('woff')}@font-face{font-family:'Source Code Pro';font-style:italic;font-weight:normal;src:url('/fonts/SourceCodePro-It.woff2') format('woff2'),url('/fonts/SourceCodePro-It.woff') format('woff')}@font-face{font-family:'Source Code Pro';font-style:normal;font-weight:bold;src:url('/fonts/SourceCodePro-Semibold.woff2') format('woff2'),url('/fonts/SourceCodePro-Semibold.woff') format('woff')}@font-face{font-family:'Source Code Pro';font-style:italic;font-weight:bold;src:url('/fonts/SourceCodePro-SemiboldIt.woff2') format('woff2'),url('/fonts/SourceCodePro-SemiboldIt.woff') format('woff')}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:normal;src:url('/fonts/SourceSansPro-Regular.woff2') format('woff2'),url('/fonts/SourceSansPro-Regular.woff') format('woff')}@font-face{font-family:'Source Sans Pro';font-style:italic;font-weight:normal;src:url('/fonts/SourceSansPro-It.woff2') format('woff2'),url('/fonts/SourceSansPro-It.woff') format('woff')}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:bold;src:url('/fonts/SourceSansPro-Semibold.woff2') format('woff2'),url('/fonts/SourceSansPro-Semibold.woff') format('woff')}@font-face{font-family:'Source Sans Pro';font-style:italic;font-weight:bold;src:url('/fonts/SourceSansPro-SemiboldIt.woff2') format('woff2'),url('/fonts/SourceSansPro-SemiboldIt.woff') format('woff')}