.md-icon{font-family:Material Icons;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.md-icon--back:before{content:"arrow_back"}.md-icon--forward:before{content:"arrow_forward"}.md-icon--close:before{content:"close"}.md-icon--menu:before{content:"menu"}.md-icon--search:before{content:"search"}html{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}*,:after,:before{box-sizing:inherit;-moz-box-sizing:inherit;-webkit-box-sizing:inherit}html{font-size:62.5%;-webkit-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none}a,abbr,acronym,address,article,aside,audio,b,big,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,main,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0}table{border-collapse:collapse;border-spacing:0}td,th{text-align:left;font-weight:400;vertical-align:top}button{padding:0;background:transparent;font-size:inherit}button,input{outline:0;border:0}input{-webkit-appearance:none;-moz-appearance:none;appearance:none}a{text-decoration:none;color:inherit}a,button,input,label{-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-tap-highlight-color:transparent}body,kbd{font-family:Roboto,Helvetica,Arial,sans-serif;font-weight:400;-webkit-font-feature-settings:"kern","onum","liga";font-feature-settings:"kern","onum","liga";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.no-fontface body,.no-fontface kbd{font-family:Helvetica Neue,Helvetica,Arial,sans-serif}code,pre{font-family:Roboto Mono,Courier New,Courier,monospace}.no-fontface code,.no-fontface pre{font-family:Courier New,Courier,monospace}.md-content--typeset{font-size:1.6rem;line-height:1.6}.md-content--typeset p{margin:2rem 0}.md-content--typeset h1{font-size:3.125rem;font-weight:300;line-height:1.3;letter-spacing:-.01em;color:rgba(0,0,0,.54)}.md-content--typeset h1:before{content:" ";display:block;padding-top:11rem;margin-top:-11rem}.md-content--typeset h2{margin-top:4rem;font-size:2.5rem;font-weight:300;line-height:1.4;letter-spacing:-.01em}.md-content--typeset h2:before{content:" ";display:block;padding-top:8.2rem;margin-top:-8.2rem}.md-content--typeset h3{margin-top:3.2rem;font-size:2rem;font-weight:400;line-height:1.5;letter-spacing:-.01em}.md-content--typeset h3:before{content:" ";display:block;padding-top:8.4rem;margin-top:-8.4rem}.md-content--typeset h2+h3{margin-top:1.6rem}.md-content--typeset h4{margin-top:1.6rem;font-size:1.6rem;font-weight:700;letter-spacing:-.01em}.md-content--typeset h4:before{content:" ";display:block;padding-top:8.8rem;margin-top:-8.8rem}.md-content--typeset h5,.md-content--typeset h6{margin-top:1.6rem;font-size:1.28rem;font-weight:700;letter-spacing:-.01em;color:rgba(0,0,0,.54)}.md-content--typeset h5:before,.md-content--typeset h6:before{content:" ";display:block;padding-top:9rem;margin-top:-9rem}.md-content--typeset h5{text-transform:uppercase}.md-content--typeset a{color:#3f51b5;-webkit-transition:color .125s;transition:color .125s}.md-content--typeset a:active,.md-content--typeset a:hover{color:#536dfe}.md-content--typeset code{padding:.1rem .4rem;font-size:85%;font-weight:400;word-break:break-word;background:#f7f7f7;color:#37474f}.md-content--typeset pre{padding:1rem 1.2rem;overflow-x:scroll;font-size:85%;line-height:1.4;background:#f7f7f7;color:#37474f}.md-content--typeset kbd{display:inline-block;padding:.4rem .5rem .5rem;vertical-align:.1rem;font-size:85%;line-height:1rem;word-break:break-word;background-color:#fcfcfc;color:#555;border:.1rem solid #ccc;border-bottom-color:#bbb;border-radius:.3rem;box-shadow:inset 0 -.1rem 0 #bbb}.md-content--typeset small{color:rgba(0,0,0,.54)}.md-content--typeset hr{margin:2.4rem 0;border-bottom:.1rem dotted rgba(0,0,0,.26)}.md-content--typeset blockquote{padding-left:1.2rem;border-left:.4rem solid rgba(0,0,0,.26);color:rgba(0,0,0,.54)}.md-content--typeset ul{list-style-type:disc}.md-content--typeset ol ol{list-style-type:lower-alpha}.md-content--typeset ol ol ol{list-style-type:lower-roman}.md-content--typeset ol,.md-content--typeset ul{margin-left:1rem}.md-content--typeset ol li,.md-content--typeset ul li{margin-bottom:1rem;margin-left:2rem}.md-content--typeset ol li:last-child,.md-content--typeset ul li:last-child{margin-bottom:0}.md-content--typeset ol li ol,.md-content--typeset ol li ul,.md-content--typeset ul li ol,.md-content--typeset ul li ul{padding-top:1rem;margin-bottom:1rem;margin-left:1rem}html{height:100%}body{position:relative;min-height:100%}body.md-js__body--locked{height:100%;overflow:hidden}hr{display:block;height:1px;padding:0;border:0}.md-grid{max-width:120rem;margin-left:auto;margin-right:auto}.md-container,.md-main{overflow:auto}.md-main{margin-top:5.6rem}.md-main__inner{margin-top:3rem;margin-bottom:9.2rem;overflow:auto}.md-toggle{display:none!important}.md-overlay{position:fixed;top:0;width:0;height:0;z-index:2;opacity:0;background:rgba(0,0,0,.54);-webkit-transition:opacity .25s,width 0s .25s,height 0s .25s;transition:opacity .25s,width 0s .25s,height 0s .25s}.md-flex{display:table}.md-flex__cell{display:table-cell;vertical-align:top}.md-flex__cell--shrink{width:1%}.md-flex__cell--stretch{display:table;table-layout:fixed;width:100%}.md-flex__ellipsis{display:table-cell;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.md-content__inner{margin:2.4rem 1.6rem}.md-content__copyright{display:block}.md-header{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2);position:fixed;top:0;left:0;right:0;height:5.6rem;z-index:1;background:#3f51b5;color:#fff}.md-header-nav{padding:.4rem}.md-header-nav__icon{display:inline-block;position:relative;z-index:1;font-size:2.4rem;padding:.8rem;margin:.4rem;cursor:pointer;border-radius:100%;-webkit-transition:background .25s;transition:background .25s}.md-header-nav__icon:active{background:hsla(0,0%,100%,.12)}.md-header-nav__title{padding:0 2rem;font-size:1.8rem;line-height:4.8rem}.md-footer{position:absolute;width:100%;bottom:0}.md-footer-pagination{background:rgba(0,0,0,.87);color:#fff}.md-footer-nav{overflow:auto;padding:.4rem}.md-footer-nav__link{padding-top:2.8rem;padding-bottom:.8rem}.md-footer-nav__link--prev{float:left;width:25%}.md-footer-nav__link--next{float:right;width:75%;text-align:right}.md-footer-nav__icon{display:inline-block;font-size:2.4rem;padding:.8rem;margin:.4rem;cursor:pointer;border-radius:100%;-webkit-transition:background .25s;transition:background .25s}.md-footer-nav__icon:active{background:hsla(0,0%,100%,.12)}.md-footer-nav__title{position:relative;padding:0 .4rem;font-size:1.8rem;line-height:4.8rem}.md-footer-nav__direction{position:absolute;left:0;right:0;padding:0 .4rem;margin-top:-2rem;font-size:1.5rem;color:hsla(0,0%,100%,.7)}.md-nav,.md-nav h3{font-size:1.28rem;line-height:1.2}.md-nav--toc{border-left:.4rem solid #3f51b5}.md-nav__list{list-style:none}.md-nav__list .md-nav__list{margin-left:1.2rem}.md-nav__toggle~.md-nav__list{max-height:0;overflow:hidden}.md-nav__toggle:checked~.md-nav__list{max-height:100%}.md-nav__item{margin:.8rem 0 0;line-height:1.6rem}.md-nav__link{display:block;overflow:hidden;text-overflow:ellipsis;-webkit-transition:color .125s;transition:color .125s}.md-nav__link--marked{color:rgba(0,0,0,.54)}.md-nav__link--active,.md-nav__link:active,.md-nav__link:hover{color:#536dfe}.md-search{position:relative}.md-search__overlay{display:none}.md-search__inner{padding:.8rem .8rem 0}.md-search__form{position:relative;text-align:right;border-radius:.2rem}.md-search__icon{position:absolute;top:.8rem;left:1.2rem;font-size:2.4rem;-webkit-transition:color .25s;transition:color .25s;cursor:pointer}.md-search__input{padding:0 .8rem 0 6.4rem;border-radius:.2rem}.md-search__input+.md-search__icon,.md-search__input::-webkit-input-placeholder{color:rgba(0,0,0,.54)}.md-search__input+.md-search__icon,.md-search__input::-moz-placeholder{color:rgba(0,0,0,.54)}.md-search__input+.md-search__icon,.md-search__input:-ms-input-placeholder{color:rgba(0,0,0,.54)}.md-search__input+.md-search__icon,.md-search__input::placeholder{color:rgba(0,0,0,.54)}.md-sidebar{position:relative;width:24.2rem;float:left;overflow:visible}.md-sidebar.md-js__sidebar--locked{position:fixed;top:5.6rem}.md-sidebar--secondary{display:none}.md-sidebar__scrollwrap{margin:2.4rem .4rem;overflow-y:scroll;-webkit-overflow-scrolling:touch}.js .md-sidebar__scrollwrap{position:absolute;top:0;left:0;bottom:0;right:0}.md-sidebar__scrollwrap::-webkit-scrollbar{width:.4rem;height:.4rem}.md-sidebar__scrollwrap::-webkit-scrollbar-thumb{background:rgba(0,0,0,.26)}.md-sidebar__inner{padding:1.2rem}.admonition{position:relative;padding:.8rem 1.6rem;margin:2rem 0;background:rgba(68,138,255,.05);border-left:3.2rem solid #448aff;border-radius:.2rem}.admonition:before{content:"edit";display:block;position:absolute;top:.2rem;left:-2.6rem;float:left;font-family:Material Icons;font-weight:400;font-size:2rem;vertical-align:-.1em;color:#fff}.admonition-title{font-size:1.28rem;font-weight:700;line-height:2rem;text-transform:uppercase;color:#2979ff}.admonition.idea,.admonition.tip{background:rgba(0,191,165,.05);border-color:#00bfa5}.admonition.idea:before,.admonition.tip:before{content:"whatshot"}.admonition.idea .admonition-title,.admonition.tip .admonition-title{color:#00bfa5}.admonition.check,.admonition.success{background:rgba(0,230,118,.05);border-color:#00e676}.admonition.check:before,.admonition.success:before{content:"done"}.admonition.check .admonition-title,.admonition.success .admonition-title{color:#00e676}.admonition.warning{background:rgba(255,145,0,.05);border-color:#ff9100}.admonition.warning:before{content:"warning"}.admonition.warning .admonition-title{color:#ff9100}.admonition.fail,.admonition.failure{background:rgba(255,82,82,.05);border-color:#ff5252}.admonition.fail:before,.admonition.failure:before{content:"clear"}.admonition.fail .admonition-title,.admonition.failure .admonition-title{color:#ff5252}.admonition.danger,.admonition.fatal{background:rgba(255,23,68,.05);border-color:#ff1744}.admonition.danger:before,.admonition.fatal:before{content:"flash_on"}.admonition.danger .admonition-title,.admonition.fatal .admonition-title{color:#ff1744}.admonition.bug,.admonition.error{background:rgba(245,0,87,.05);border-color:#f50057}.admonition.bug:before,.admonition.error:before{content:"bug_report"}.admonition.bug .admonition-title,.admonition.error .admonition-title{color:#f50057}.code .err,.codehilite .err{color:#a61717}.code .o,.codehilite .o{color:inherit}.code .ge,.codehilite .ge{color:#000}.code .gr,.codehilite .gr{color:#a00}.code .gh,.codehilite .gh{color:#999}.code .go,.codehilite .go{color:#888}.code .gp,.codehilite .gp{color:#555}.code .gs,.codehilite .gs{color:inherit}.code .gu,.codehilite .gu{color:#aaa}.code .gt,.codehilite .gt{color:#a00}.code .k,.code .kc,.code .kd,.code .kn,.code .kp,.codehilite .k,.codehilite .kc,.codehilite .kd,.codehilite .kn,.codehilite .kp{color:#a71d5d}.code .kr,.code .kt,.codehilite .kr,.codehilite .kt{color:#0086b3}.code .c,.code .cm,.codehilite .c,.codehilite .cm{color:#969896}.code .cp,.codehilite .cp{color:#666}.code .c1,.code .cs,.codehilite .c1,.codehilite .cs{color:#969896}.code .bp,.code .na,.code .nb,.code .nc,.code .nd,.code .ne,.code .nf,.code .ni,.code .nl,.code .nn,.code .no,.code .nt,.code .nv,.code .vc,.code .vg,.code .vi,.codehilite .bp,.codehilite .na,.codehilite .nb,.codehilite .nc,.codehilite .nd,.codehilite .ne,.codehilite .nf,.codehilite .ni,.codehilite .nl,.codehilite .nn,.codehilite .no,.codehilite .nt,.codehilite .nv,.codehilite .vc,.codehilite .vg,.codehilite .vi{color:#795da3}.code .ow,.codehilite .ow{color:inherit}.code .il,.code .m,.code .mf,.code .mh,.code .mi,.code .mo,.codehilite .il,.codehilite .m,.codehilite .mf,.codehilite .mh,.codehilite .mi,.codehilite .mo{color:#0086b3}.code .s,.code .s2,.code .sb,.code .sc,.code .sd,.code .se,.code .sh,.code .si,.code .sx,.codehilite .s,.codehilite .s2,.codehilite .sb,.codehilite .sc,.codehilite .sd,.codehilite .se,.codehilite .sh,.codehilite .si,.codehilite .sx{color:#183691}.code .sr,.codehilite .sr{color:#009926}.code .s1,.codehilite .s1{color:#d01040}.code .ss,.codehilite .ss{color:#990073}.code .gd,.codehilite .gd{color:#000;background-color:#fdd}.code .gi,.codehilite .gi{color:#000;background-color:#dfd}.code .w,.codehilite .w{color:transparent}.md-content .headerlink{display:inline-block;margin-left:1rem;opacity:0;color:rgba(0,0,0,.26);-webkit-transform:translate3d(0,.5rem,0);transform:translate3d(0,.5rem,0);-webkit-transition:opacity .125s .25s,color .25s,-webkit-transform .25s .25s;transition:opacity .125s .25s,color .25s,-webkit-transform .25s .25s;transition:opacity .125s .25s,transform .25s .25s,color .25s;transition:opacity .125s .25s,transform .25s .25s,color .25s,-webkit-transform .25s .25s}.md-content h1:hover .headerlink,.md-content h1:target .headerlink,.md-content h2:hover .headerlink,.md-content h2:target .headerlink,.md-content h3:hover .headerlink,.md-content h3:target .headerlink,.md-content h4:hover .headerlink,.md-content h4:target .headerlink,.md-content h5:hover .headerlink,.md-content h5:target .headerlink,.md-content h6:hover .headerlink,.md-content h6:target .headerlink{margin-left:1rem;opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}.md-content h1:hover .headerlink:hover,.md-content h1:target .headerlink,.md-content h2:hover .headerlink:hover,.md-content h2:target .headerlink,.md-content h3:hover .headerlink:hover,.md-content h3:target .headerlink,.md-content h4:hover .headerlink:hover,.md-content h4:target .headerlink,.md-content h5:hover .headerlink:hover,.md-content h5:target .headerlink,.md-content h6:hover .headerlink:hover,.md-content h6:target .headerlink{color:#536dfe}.md-content .admonition-title{margin:0}.md-content .admonition-title+*{margin-top:0;margin-bottom:0}.md-search__suggest{background:#fff;border-radius:0 0 .3rem .3rem;color:#000;text-align:left;border-top:.1rem solid rgba(0,0,0,.07);display:none}.md-search__input:focus~.md-search__suggest{display:block}.md-search__input:focus{border-radius:.3rem .3rem 0 0}@media only screen and (max-width:74.9375em){#md-toggle-drawer:checked~.md-overlay{width:100%;height:100%;opacity:1;-webkit-transition:opacity .25s,width 0s,height 0s;transition:opacity .25s,width 0s,height 0s}.md-sidebar--primary{position:fixed;top:0;width:24.2em;height:100%;z-index:3;background:#fff;-webkit-transition:-webkit-transform .25s cubic-bezier(.4,0,.2,1);transition:-webkit-transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);-webkit-transform:translate3d(-24.2em,0,0);transform:translate3d(-24.2em,0,0)}.no-csstransforms3d .md-sidebar--primary{display:none}#md-toggle-drawer:checked~.md-container .md-sidebar--primary{-webkit-transform:translateZ(0);transform:translateZ(0)}.no-csstransforms3d #md-toggle-drawer:checked~.md-container .md-sidebar--primary{display:block}.md-sidebar--primary .md-sidebar__scrollwrap{margin:0}}@media only screen and (min-width:60em){.md-content{margin-right:24.2rem}.md-sidebar--secondary{display:block;float:right}.md-sidebar--secondary.md-js__sidebar--locked{margin-left:100%;-webkit-transform:translate(-100%);transform:translate(-100%)}}@media only screen and (min-width:75em){.md-content{margin-left:24.2rem}.md-content__inner{margin:2.4rem}.md-sidebar__inner{border-right:.1rem solid rgba(0,0,0,.07)}}@media only screen and (min-width:45em){.md-header-nav__icon.md-icon--search{display:none}.md-search__inner{padding:.4rem}.md-search__input{width:23rem;height:4rem;padding-left:4.8rem;font-size:1.6rem;background:hsla(0,0%,100%,.12);color:#fff;-webkit-transition:color .25s,background-color .25s,width .25s cubic-bezier(.1,.7,.1,1);transition:color .25s,background-color .25s,width .25s cubic-bezier(.1,.7,.1,1)}.md-search__input+.md-search__icon,.md-search__input::-webkit-input-placeholder{color:#fff;-webkit-transition:color .25s;transition:color .25s}.md-search__input+.md-search__icon,.md-search__input::-moz-placeholder{color:#fff;-webkit-transition:color .25s;transition:color .25s}.md-search__input+.md-search__icon,.md-search__input:-ms-input-placeholder{color:#fff;-webkit-transition:color .25s;transition:color .25s}.md-search__input+.md-search__icon,.md-search__input::placeholder{color:#fff;-webkit-transition:color .25s;transition:color .25s}.md-search__input:focus{background:#fff;color:rgba(0,0,0,.87);width:40rem}.md-search__input:focus+.md-search__icon,.md-search__input:focus::-webkit-input-placeholder{color:rgba(0,0,0,.54)}.md-search__input:focus+.md-search__icon,.md-search__input:focus::-moz-placeholder{color:rgba(0,0,0,.54)}.md-search__input:focus+.md-search__icon,.md-search__input:focus:-ms-input-placeholder{color:rgba(0,0,0,.54)}.md-search__input:focus+.md-search__icon,.md-search__input:focus::placeholder{color:rgba(0,0,0,.54)}}@media only screen and (min-width:30em){.md-footer-nav__link{width:50%}}@media only screen and (max-width:29.9375em){.md-footer-nav__link--prev .md-footer-nav__title{display:none}}@media only screen and (max-width:44.9375em){.md-search__overlay{display:block;position:absolute;top:.4rem;left:.4rem;width:4rem;height:4rem;overflow:hidden;z-index:0;opacity:0;background:#eee;border-radius:100%;transform-orgin:center;-webkit-transition:opacity .2s .2s,-webkit-transform .3s .1s;transition:opacity .2s .2s,-webkit-transform .3s .1s;transition:opacity .2s .2s,transform .3s .1s;transition:opacity .2s .2s,transform .3s .1s,-webkit-transform .3s .1s}#md-toggle-search:checked~.md-header .md-search__overlay{z-index:1;opacity:1;-webkit-transform:scale(40);transform:scale(40);-webkit-transition:opacity .1s,-webkit-transform .4s;transition:opacity .1s,-webkit-transform .4s;transition:opacity .1s,transform .4s;transition:opacity .1s,transform .4s,-webkit-transform .4s}.md-search__form{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2)}.md-search__icon{top:1.2rem}.md-search__icon:before{content:"arrow_back"}.md-search__input{width:100%;height:4.8rem;font-size:1.8rem}.md-search__inner{position:fixed;top:0;left:100%;width:100%;height:56px;opacity:0;z-index:2;-webkit-transform:translate3d(5%,0,0);transform:translate3d(5%,0,0);-webkit-transition:opacity .15s .15s,-webkit-transform .3s .15s cubic-bezier(.1,.7,.1,1);transition:opacity .15s .15s,-webkit-transform .3s .15s cubic-bezier(.1,.7,.1,1);transition:transform .3s .15s cubic-bezier(.1,.7,.1,1),opacity .15s .15s;transition:transform .3s .15s cubic-bezier(.1,.7,.1,1),opacity .15s .15s,-webkit-transform .3s .15s cubic-bezier(.1,.7,.1,1)}#md-toggle-search:checked~.md-header .md-search__inner{-webkit-transform:translateZ(0);transform:translateZ(0);left:0;opacity:1}.md-search__suggest{position:relative;z-index:2}}@media only screen and (min-width:60em) and (min-width:75em){.md-sidebar--secondary.md-js__sidebar--locked{margin-left:120rem}}