﻿@font-face{font-family:"Fira Code";src:url("../fonts/FiraCode-Regular.woff2") format("woff2"),url("../fonts/FiraCode-Regular.woff") format("woff");font-style:normal}@font-face{font-family:"Gentium Basic";src:url("../fonts/GentiumBasic-Regular.woff2") format("woff2"),url("../fonts/GentiumBasic-Regular.woff") format("woff");font-weight:normal;font-style:normal}@font-face{font-family:"Gentium Basic";src:url("../fonts/GentiumBasic-Italic.woff2") format("woff2"),url("../fonts/GentiumBasic-Italic.woff") format("woff");font-weight:normal;font-style:italic}@font-face{font-family:"Gentium Basic";src:url("../fonts/GentiumBasic-Bold.woff2") format("woff2"),url("../fonts/GentiumBasic-Bold.woff") format("woff");font-weight:bold;font-style:normal}@font-face{font-family:"Gentium Basic";src:url("../fonts/GentiumBasic-BoldItalic.woff2") format("woff2"),url("../fonts/GentiumBasic-BoldItalic.woff") format("woff");font-weight:bold;font-style:italic}@font-face{font-family:"Open Sans";src:url("../fonts/OpenSans-Regular.woff2") format("woff2"),url("../fonts/OpenSans-Regular.woff") format("woff");font-weight:normal;font-style:normal}@font-face{font-family:"Open Sans";src:url("../fonts/OpenSans-Italic.woff2") format("woff2"),url("../fonts/OpenSans-Italic.woff") format("woff");font-weight:normal;font-style:italic}@font-face{font-family:"Open Sans";src:url("../fonts/OpenSans-Bold.woff2") format("woff2"),url("../fonts/OpenSans-Bold.woff") format("woff");font-weight:bold;font-style:normal}@font-face{font-family:"Open Sans";src:url("../fonts/OpenSans-BoldItalic.woff2") format("woff2"),url("../fonts/OpenSans-BoldItalic.woff") format("woff");font-weight:bold;font-style:italic}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}html{box-sizing:border-box;font-size:18px;scroll-behavior:smooth}*,*:before,*:after{box-sizing:inherit}body{background:#fff;color:#000;font-family:"Gentium Basic",serif;font-size:1rem;line-height:1.35;text-align:left}b,strong{font-weight:bold}i,em{font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Open Sans",sans-serif;line-height:1.25;text-align:left}h1{font-size:2.25rem;font-weight:bold;margin:2rem 0}h2{font-size:1.75rem;font-weight:bold;margin:2rem 0}h3{font-size:1.33rem;font-weight:bold;margin:2rem 0}h4{font-size:1.15rem;font-weight:bold;margin-bottom:1rem}h5{font-size:1rem;font-style:italic;margin-bottom:1rem}h6{font-size:0.85rem;font-style:italic}p{margin-bottom:1rem}ol,ul{margin-bottom:1rem}li{line-height:1.35;margin-bottom:0.25rem}ol{padding-left:1.25rem}ol li{list-style-type:decimal}ul{padding-left:1rem}ul li{list-style-type:disc}blockquote{border-left:0.15rem solid lightgray;padding-left:1rem}code{font-family:"Fira Code",monospace;font-size:0.85rem}h1 code,h2 code,h3 code{font-size:inherit}pre{font-family:"Fira Code",monospace;font-size:0.8rem;line-height:1.5;margin-bottom:1rem;overflow:auto;white-space:pre-wrap}a{color:#07a0d2}a:hover{color:#735192;text-decoration:none}img{height:auto;max-width:100%}figure{margin:0 0 2rem 0;text-align:center}figcaption{font-style:italic;margin-top:.5rem}nav#toc ol,nav#landmarks ol{padding:0;margin-left:1em}nav#toc ol li,nav#landmarks ol li{list-style-type:none;margin:0;padding:0}a.footnote-ref{vertical-align:super}em,em em em,em em em em em{font-style:italic}em em,em em em em{font-style:normal}code{white-space:pre-wrap}span.smallcaps{font-variant:small-caps}span.underline{text-decoration:underline}q{quotes:"“" "”" "‘" "’"}div.column{display:inline-block;vertical-align:top;width:50%}div.hanging-indent{margin-left:1.5em;text-indent:-1.5em}.boxout{background-color:#f7f7f7;padding:1rem 1rem 0.01rem;margin-bottom:1rem}.break-line-anywhere{line-break:anywhere}img.center,img.center-no-caption{display:block;margin:0 auto}.code-context p{font-style:italic;margin-bottom:.25rem}.screen-reader,.content h1,[id="masthead-open"] span,[id="masthead-close"] span{border-width:0;clip:rect(0, 0, 0, 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}[id="chapter"]{margin:0 auto;max-width:1200px;padding:0 1rem;width:100%}@media (min-width: 960px){.chapter-nav{bottom:0;overflow-y:scroll;overflow-x:hidden;padding-right:1rem;position:fixed;top:0;z-index:10}}.chapter-nav nav{margin-bottom:1rem}.content{margin:2rem 0}@media (min-width: 960px){.content{margin-left:calc(30% + (1rem * 3))}}[id="masthead"]{background-color:#34197a;color:white;height:100%;left:0;margin-left:-100%;max-width:480px;overflow-x:hidden;padding:2rem 2.5rem;position:fixed;top:0;transition:0.33s;width:100%;z-index:100}[id="masthead"] [id="title-block-header"]{padding-bottom:1rem}[id="masthead"] h1.title{font-size:2rem}[id="masthead"] .subtitle{font-family:"Open Sans",sans-serif;font-size:1.15rem}[id="masthead"] .author{font-family:"Open Sans",sans-serif;font-size:0.85rem}[id="masthead"] a{color:white}[id="masthead"] a:hover{text-decoration:none}.close-button-wrapper{display:flex;justify-content:flex-end}[id="masthead-open"],[id="masthead-close"]{background-color:transparent;border:0;cursor:pointer;font-size:0.85rem;padding:0}[id="masthead-open"]:focus,[id="masthead-close"]:focus{outline:none}[id="masthead-open"]:after,[id="masthead-close"]:after{background-size:32px 32px;content:"";display:block;height:32px;width:32px}[id="masthead-open"]{margin-top:2rem}[id="masthead-open"]:after{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAlklEQVR4nO3ZwQkCMQAEwFV8+bEPe7Aoe7MKsQM78GcF2oDg4RFWzxnIL4TNfhKSBAAAgJcuSR4/Ok7vNrf+qJIFUUA7QJsC2gHaNhPmHJPsRgcZ5NYOAAB8r9WEOfsk29FBBrknuc5dxHvAkimgHaBNAe0AbY5BAOBvTbkIHfLbHyPnuYt4D1gyBbQDtCmgHQAAAICCJzBKlYZ09zQzAAAAAElFTkSuQmCC")}[id="masthead-close"]:after{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsTAAALEwEAmpwYAAACDUlEQVR4nO2ZPU7DQBBGx5aoED0SVY4RiYIGiQMgSn4OQZWSjkMAt+EYCKq0gJQCEB8FHukrnNhrr3dnrH11MjPvJVIkR6RQKBQK3QBYAVjmvqMLAOcAbmIPvcM/75YjNPJfAH4AXMcaqvKwHIHklfERWuRNRmiR5whXQ4dukzcVYYc8R7gMHbrqkDcRoYc8R7gIGbxs5MxGCJAHgFcAi9AFZiNMLk+LzEVIJk8LzURILk+Ls0fIJk8HZIuQXZ4OSR7BjDwdlCyCOXk6bPIIZuXpwMkimJenQ6NHcCNPB0eL4E5eiRHBrbwyJoJ7eWVIhNnIK4ERNgC+ZyOvBEaYl7wSMYI/eSVCBL/yyogI/uWVJsImQH6dSr5OsUREjkRkL+D1+yJyONEtaUHY7zxj4n+HUYyQ9x8hgrzfCBHl/UUIlF8D+JxNhED5VwALGHjkHoUh8vRe3xHGyNMMnxFiyNMsXxFiytNMHxGmkKfZtiNMKU87bEZIIU+7bEVIKU87bUTIIU+780bIKU835IlgQZ5uSRvBkjzdlCaCRXm6bdoIluXpxigRtj0UPZV+DzHfROSkqqqXoSJDqarqWUTOROSjx8sPROS493AANYAHi598y61d34RfAKshg3dFMCGv7IgwTJ4G1wAeLcsrLRHGydPgGsCTZXmFIsSRp8E1gHvL8koT4Tb3HYVCoeCCP2aIN1tW+EaOAAAAAElFTkSuQmCC")}.book-nav{border-top:1px solid white;padding-top:2rem}.book-nav p{font-family:"Open Sans",sans-serif;font-size:1.25rem;font-weight:700}.book-nav p a{text-decoration:none}.book-nav p a:hover{text-decoration:underline}.front-matter-content,.back-matter-content{padding-left:0}.front-matter-content li,.back-matter-content li{list-style-type:none}.front-matter{margin-bottom:2rem}.main-matter-content{margin-bottom:2rem;margin-left:-.25rem;padding-left:0}.main-matter-content li{padding-left:.25rem}.back-matter-content{margin-bottom:3rem}.logo{width:125px}.chapter-nav h2{border-width:0;clip:rect(0, 0, 0, 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.chapter-nav nav ul{margin-top:1rem;padding-left:0}.chapter-nav nav ul li{font-family:"Open Sans", sans-serif;font-size:1.25rem;font-weight:bold;list-style-type:none}.chapter-nav nav ul li a{color:black;text-decoration:none}.chapter-nav nav ul li a:hover{text-decoration:underline}.chapter-nav nav ul li ul{padding-left:1rem}.chapter-nav nav ul li ul li{font-family:"Gentium Basic", serif;font-size:1rem;font-weight:normal;list-style-type:disc}.chapter-nav nav ul li ul li a{text-decoration:underline}.chapter-nav nav ul li ul li a:hover{text-decoration:none}.content footer{margin-top:3rem}.copyright a{color:black}.highlight{margin-left:-0.5rem;margin-right:-0.5rem;padding-left:0.25rem;padding-right:0.25rem;position:relative}.highlight pre{background-color:#f7f7f7;color:#2f1e2e;padding:0.75rem}.highlight pre>span{box-sizing:content-box}.highlight .hll{background-color:#efefef;border-left:0.15rem solid #5bc4bf;display:block;margin-left:-0.74rem;padding-left:0.6rem;padding-right:0.75rem;width:100%}.highlight:hover .highlight-copy-btn{visibility:visible}.highlight-copy-btn{background-color:#999;border:0;color:#fff;font-size:0.7em;line-height:1.6;padding:1px 5px;position:absolute;right:9px;text-align:center;top:5px;visibility:hidden}.highlight-copy-btn:hover{background-color:#666;cursor:pointer}.highlight .c{color:#8d8687}.highlight .err{color:#ef6155}.highlight .k{color:#815ba4}.highlight .l{color:#f99b15}.highlight .n{color:#2f1e2e}.highlight .o{color:#5bc4bf}.highlight .p{color:#2f1e2e}.highlight .cm{color:#8d8687}.highlight .cp{color:#8d8687}.highlight .c1{color:#8d8687}.highlight .cs{color:#8d8687}.highlight .gd{color:#ef6155}.highlight .ge{font-style:italic}.highlight .gh{color:#2f1e2e;font-weight:bold}.highlight .gi{color:#48b685}.highlight .gp{color:#8d8687;font-weight:bold}.highlight .gs{font-weight:bold}.highlight .gu{color:#5bc4bf;font-weight:bold}.highlight .kc{color:#815ba4}.highlight .kd{color:#815ba4}.highlight .kn{color:#5bc4bf}.highlight .kp{color:#815ba4}.highlight .kr{color:#815ba4}.highlight .kt{color:#fec418}.highlight .ld{color:#48b685}.highlight .m{color:#f99b15}.highlight .s{color:#48b685}.highlight .na{color:#06b6ef}.highlight .nb{color:#2f1e2e}.highlight .nc{color:#fec418}.highlight .no{color:#ef6155}.highlight .nd{color:#5bc4bf}.highlight .ni{color:#2f1e2e}.highlight .ne{color:#ef6155}.highlight .nf{color:#06b6ef}.highlight .nl{color:#2f1e2e}.highlight .nn{color:#fec418}.highlight .nx{color:#06b6ef}.highlight .py{color:#2f1e2e}.highlight .nt{color:#5bc4bf}.highlight .nv{color:#ef6155}.highlight .ow{color:#5bc4bf}.highlight .w{color:#2f1e2e}.highlight .mf{color:#f99b15}.highlight .mh{color:#f99b15}.highlight .mi{color:#f99b15}.highlight .mo{color:#f99b15}.highlight .sb{color:#48b685}.highlight .sc{color:#2f1e2e}.highlight .sd{color:#8d8687}.highlight .s2{color:#48b685}.highlight .se{color:#f99b15}.highlight .sh{color:#48b685}.highlight .si{color:#f99b15}.highlight .sx{color:#48b685}.highlight .sr{color:#48b685}.highlight .s1{color:#48b685}.highlight .ss{color:#48b685}.highlight .bp{color:#2f1e2e}.highlight .vc{color:#ef6155}.highlight .vg{color:#ef6155}.highlight .vi{color:#ef6155}.highlight .il{color:#f99b15}
