<!doctype html>
<html lang="en">
  <head>
    {% if tag_manager_code %}
    <!-- Google Tag Manager -->
    <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
    new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
    j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
    'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
    })(window,document,'script','dataLayer','{{ tag_manager_code }}');</script>
    <!-- End Google Tag Manager -->
    {% endif %}

    <meta charset="UTF-8" />
    <title>{{ title }} | {{ site_title if site_title else 'Documentation' }}</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <style>
      /* vanilla-docs-theme 1.3.5-candidate (not yet landed - see https://github.com/vanilla-framework/vanilla-docs-theme/pull/29) */
      button,button:visited,mark{color:#000}a:hover,abbr[title]{text-decoration:underline}button,html,legend{box-sizing:border-box}pre,svg:not(:root){overflow:hidden}a,button{text-decoration:none}.p-breadcrumbs__link,pre,sub,sup{position:relative}input[type=text],input[type=password],input[type=email],input[type=url],input[type=tel],input[type=date],input[type=datetime],input[type=datatime-local],input[type=month],input[type=time],input[type=week],input[type=color],input[type=number],input[type=search],select,textarea{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;background-color:#fff;border:1px solid #cdcdcd;border-radius:.125rem;box-shadow:inset 0 1px 2px rgba(0,0,0,.12);font-family:Ubuntu,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",sans-serif;font-size:1rem;font-weight:300;outline:0;padding:.6875rem .8125rem;vertical-align:baseline;width:100%}input[type=text]:active,input[type=text]:focus,input[type=password]:active,input[type=password]:focus,input[type=email]:active,input[type=email]:focus,input[type=url]:active,input[type=url]:focus,input[type=tel]:active,input[type=tel]:focus,input[type=date]:active,input[type=date]:focus,input[type=datetime]:active,input[type=datetime]:focus,input[type=datatime-local]:active,input[type=datatime-local]:focus,input[type=month]:active,input[type=month]:focus,input[type=time]:active,input[type=time]:focus,input[type=week]:active,input[type=week]:focus,input[type=color]:active,input[type=color]:focus,input[type=number]:active,input[type=number]:focus,input[type=search]:active,input[type=search]:focus,select:active,select:focus,textarea:active,textarea:focus{border-color:#666;outline:0}input[type=text]::-webkit-input-placeholder,input[type=password]::-webkit-input-placeholder,input[type=email]::-webkit-input-placeholder,input[type=url]::-webkit-input-placeholder,input[type=tel]::-webkit-input-placeholder,input[type=date]::-webkit-input-placeholder,input[type=datetime]::-webkit-input-placeholder,input[type=datatime-local]::-webkit-input-placeholder,input[type=month]::-webkit-input-placeholder,input[type=time]::-webkit-input-placeholder,input[type=week]::-webkit-input-placeholder,input[type=color]::-webkit-input-placeholder,input[type=number]::-webkit-input-placeholder,input[type=search]::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#666;opacity:1}input[type=text]:-ms-input-placeholder,input[type=password]:-ms-input-placeholder,input[type=email]:-ms-input-placeholder,input[type=url]:-ms-input-placeholder,input[type=tel]:-ms-input-placeholder,input[type=date]:-ms-input-placeholder,input[type=datetime]:-ms-input-placeholder,input[type=datatime-local]:-ms-input-placeholder,input[type=month]:-ms-input-placeholder,input[type=time]:-ms-input-placeholder,input[type=week]:-ms-input-placeholder,input[type=color]:-ms-input-placeholder,input[type=number]:-ms-input-placeholder,input[type=search]:-ms-input-placeholder,select:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#666;opacity:1}input[type=text]::placeholder,input[type=password]::placeholder,input[type=email]::placeholder,input[type=url]::placeholder,input[type=tel]::placeholder,input[type=date]::placeholder,input[type=datetime]::placeholder,input[type=datatime-local]::placeholder,input[type=month]::placeholder,input[type=time]::placeholder,input[type=week]::placeholder,input[type=color]::placeholder,input[type=number]::placeholder,input[type=search]::placeholder,select::placeholder,textarea::placeholder{color:#666;opacity:1}input.has-error[type=text],input.has-error[type=text]:focus,input.has-error[type=password],input.has-error[type=password]:focus,input.has-error[type=email],input.has-error[type=email]:focus,input.has-error[type=url],input.has-error[type=url]:focus,input.has-error[type=tel],input.has-error[type=tel]:focus,input.has-error[type=date],input.has-error[type=date]:focus,input.has-error[type=datetime],input.has-error[type=datetime]:focus,input.has-error[type=datatime-local],input.has-error[type=datatime-local]:focus,input.has-error[type=month],input.has-error[type=month]:focus,input.has-error[type=time],input.has-error[type=time]:focus,input.has-error[type=week],input.has-error[type=week]:focus,input.has-error[type=color],input.has-error[type=color]:focus,input.has-error[type=number],input.has-error[type=number]:focus,input.has-error[type=search],input.has-error[type=search]:focus,select.has-error,select.has-error:focus,textarea.has-error,textarea.has-error:focus{border:1px solid #d73024}input.has-warning[type=text],input.has-warning[type=text]:focus,input.has-warning[type=password],input.has-warning[type=password]:focus,input.has-warning[type=email],input.has-warning[type=email]:focus,input.has-warning[type=url],input.has-warning[type=url]:focus,input.has-warning[type=tel],input.has-warning[type=tel]:focus,input.has-warning[type=date],input.has-warning[type=date]:focus,input.has-warning[type=datetime],input.has-warning[type=datetime]:focus,input.has-warning[type=datatime-local],input.has-warning[type=datatime-local]:focus,input.has-warning[type=month],input.has-warning[type=month]:focus,input.has-warning[type=time],input.has-warning[type=time]:focus,input.has-warning[type=week],input.has-warning[type=week]:focus,input.has-warning[type=color],input.has-warning[type=color]:focus,input.has-warning[type=number],input.has-warning[type=number]:focus,input.has-warning[type=search],input.has-warning[type=search]:focus,select.has-warning,select.has-warning:focus,textarea.has-warning,textarea.has-warning:focus{border:1px solid #f99b11}input.has-success[type=text],input.has-success[type=text]:focus,input.has-success[type=password],input.has-success[type=password]:focus,input.has-success[type=email],input.has-success[type=email]:focus,input.has-success[type=url],input.has-success[type=url]:focus,input.has-success[type=tel],input.has-success[type=tel]:focus,input.has-success[type=date],input.has-success[type=date]:focus,input.has-success[type=datetime],input.has-success[type=datetime]:focus,input.has-success[type=datatime-local],input.has-success[type=datatime-local]:focus,input.has-success[type=month],input.has-success[type=month]:focus,input.has-success[type=time],input.has-success[type=time]:focus,input.has-success[type=week],input.has-success[type=week]:focus,input.has-success[type=color],input.has-success[type=color]:focus,input.has-success[type=number],input.has-success[type=number]:focus,input.has-success[type=search],input.has-success[type=search]:focus,select.has-success,select.has-success:focus,textarea.has-success,textarea.has-success:focus{border:1px solid #0f8420}input.has-information[type=text],input.has-information[type=text]:focus,input.has-information[type=password],input.has-information[type=password]:focus,input.has-information[type=email],input.has-information[type=email]:focus,input.has-information[type=url],input.has-information[type=url]:focus,input.has-information[type=tel],input.has-information[type=tel]:focus,input.has-information[type=date],input.has-information[type=date]:focus,input.has-information[type=datetime],input.has-information[type=datetime]:focus,input.has-information[type=datatime-local],input.has-information[type=datatime-local]:focus,input.has-information[type=month],input.has-information[type=month]:focus,input.has-information[type=time],input.has-information[type=time]:focus,input.has-information[type=week],input.has-information[type=week]:focus,input.has-information[type=color],input.has-information[type=color]:focus,input.has-information[type=number],input.has-information[type=number]:focus,input.has-information[type=search],input.has-information[type=search]:focus,select.has-information,select.has-information:focus,textarea.has-information,textarea.has-information:focus{border:1px solid #007aa6}input[type=checkbox],input[type=radio]{float:left;height:1.5rem;margin-bottom:0;margin-right:1rem;outline:0;padding:0;vertical-align:middle;width:auto}input[disabled=disabled][type=text],input[disabled=disabled][type=password],input[disabled=disabled][type=email],input[disabled=disabled][type=url],input[disabled=disabled][type=tel],input[disabled=disabled][type=date],input[disabled=disabled][type=checkbox]+label,input[disabled=disabled][type=radio]+label,input[disabled=disabled][type=datetime],input[disabled=disabled][type=datatime-local],input[disabled=disabled][type=month],input[disabled=disabled][type=time],input[disabled=disabled][type=week],input[disabled=disabled][type=color],input[disabled=disabled][type=number],input[disabled=disabled][type=search],input[disabled][type=text],input[disabled][type=password],input[disabled][type=email],input[disabled][type=url],input[disabled][type=tel],input[disabled][type=date],input[disabled][type=checkbox]+label,input[disabled][type=radio]+label,input[disabled][type=datetime],input[disabled][type=datatime-local],input[disabled][type=month],input[disabled][type=time],input[disabled][type=week],input[disabled][type=color],input[disabled][type=number],input[disabled][type=search],select[disabled=disabled],select[disabled],textarea[disabled=disabled],textarea[disabled]{cursor:not-allowed;opacity:.5}input[readonly=readonly][type=text],input[readonly=readonly][type=password],input[readonly=readonly][type=email],input[readonly=readonly][type=url],input[readonly=readonly][type=tel],input[readonly=readonly][type=date],input[readonly=readonly][type=datetime],input[readonly=readonly][type=datatime-local],input[readonly=readonly][type=month],input[readonly=readonly][type=time],input[readonly=readonly][type=week],input[readonly=readonly][type=color],input[readonly=readonly][type=number],input[readonly=readonly][type=search],input[readonly][type=text],input[readonly][type=password],input[readonly][type=email],input[readonly][type=url],input[readonly][type=tel],input[readonly][type=date],input[readonly][type=datetime],input[readonly][type=datatime-local],input[readonly][type=month],input[readonly][type=time],input[readonly][type=week],input[readonly][type=color],input[readonly][type=number],input[readonly][type=search],select[readonly=readonly],select[readonly],textarea[readonly=readonly],textarea[readonly]{color:#cdcdcd;cursor:default}input[readonly=readonly][type=text]:active,input[readonly=readonly][type=text]:focus,input[readonly=readonly][type=text]:hover,input[readonly=readonly][type=password]:active,input[readonly=readonly][type=password]:focus,input[readonly=readonly][type=password]:hover,input[readonly=readonly][type=email]:active,input[readonly=readonly][type=email]:focus,input[readonly=readonly][type=email]:hover,input[readonly=readonly][type=url]:active,input[readonly=readonly][type=url]:focus,input[readonly=readonly][type=url]:hover,input[readonly=readonly][type=tel]:active,input[readonly=readonly][type=tel]:focus,input[readonly=readonly][type=tel]:hover,input[readonly=readonly][type=date]:active,input[readonly=readonly][type=date]:focus,input[readonly=readonly][type=date]:hover,input[readonly=readonly][type=datetime]:active,input[readonly=readonly][type=datetime]:focus,input[readonly=readonly][type=datetime]:hover,input[readonly=readonly][type=datatime-local]:active,input[readonly=readonly][type=datatime-local]:focus,input[readonly=readonly][type=datatime-local]:hover,input[readonly=readonly][type=month]:active,input[readonly=readonly][type=month]:focus,input[readonly=readonly][type=month]:hover,input[readonly=readonly][type=time]:active,input[readonly=readonly][type=time]:focus,input[readonly=readonly][type=time]:hover,input[readonly=readonly][type=week]:active,input[readonly=readonly][type=week]:focus,input[readonly=readonly][type=week]:hover,input[readonly=readonly][type=color]:active,input[readonly=readonly][type=color]:focus,input[readonly=readonly][type=color]:hover,input[readonly=readonly][type=number]:active,input[readonly=readonly][type=number]:focus,input[readonly=readonly][type=number]:hover,input[readonly=readonly][type=search]:active,input[readonly=readonly][type=search]:focus,input[readonly=readonly][type=search]:hover,input[readonly][type=text]:active,input[readonly][type=text]:focus,input[readonly][type=text]:hover,input[readonly][type=password]:active,input[readonly][type=password]:focus,input[readonly][type=password]:hover,input[readonly][type=email]:active,input[readonly][type=email]:focus,input[readonly][type=email]:hover,input[readonly][type=url]:active,input[readonly][type=url]:focus,input[readonly][type=url]:hover,input[readonly][type=tel]:active,input[readonly][type=tel]:focus,input[readonly][type=tel]:hover,input[readonly][type=date]:active,input[readonly][type=date]:focus,input[readonly][type=date]:hover,input[readonly][type=datetime]:active,input[readonly][type=datetime]:focus,input[readonly][type=datetime]:hover,input[readonly][type=datatime-local]:active,input[readonly][type=datatime-local]:focus,input[readonly][type=datatime-local]:hover,input[readonly][type=month]:active,input[readonly][type=month]:focus,input[readonly][type=month]:hover,input[readonly][type=time]:active,input[readonly][type=time]:focus,input[readonly][type=time]:hover,input[readonly][type=week]:active,input[readonly][type=week]:focus,input[readonly][type=week]:hover,input[readonly][type=color]:active,input[readonly][type=color]:focus,input[readonly][type=color]:hover,input[readonly][type=number]:active,input[readonly][type=number]:focus,input[readonly][type=number]:hover,input[readonly][type=search]:active,input[readonly][type=search]:focus,input[readonly][type=search]:hover,select[readonly=readonly]:active,select[readonly=readonly]:focus,select[readonly=readonly]:hover,select[readonly]:active,select[readonly]:focus,select[readonly]:hover,textarea[readonly=readonly]:active,textarea[readonly=readonly]:focus,textarea[readonly=readonly]:hover,textarea[readonly]:active,textarea[readonly]:focus,textarea[readonly]:hover{border-color:#666;outline:0}.p-notification,.p-notification--negative,.p-notification--positive,.p-notification--warning{background-color:#fff;border:0 solid #666;border-radius:.125rem;border-top-width:3px;box-shadow:0 1px 5px 1px rgba(0,0,0,.2);font-size:1rem;margin-bottom:1.5rem;overflow:hidden;padding:.625rem;text-align:center;width:100%}button,hr,input{overflow:visible}@media screen and (max-width:400px){@-ms-viewport{width:320px}}img{max-width:100%;height:auto}@media \0screen{img{width:auto}}.row{margin-right:auto;margin-left:auto;padding-left:20px;padding-right:20px}.row:after,.row:before{display:table;content:" "}.row:after{clear:both}.row .row{margin-right:0;margin-left:0;max-width:none;padding-right:0;padding-left:0}.mobile-col-1,.mobile-col-2,.mobile-col-3{display:block;float:left;min-height:1px;position:relative;margin-left:4.61165%}.first-mobile-col,.row .mobile-col-1:first-child,.row .mobile-col-2:first-child,.row .mobile-col-3:first-child{margin-left:0}.mobile-col-1{width:21.54126%}.mobile-col-2{width:47.69417%}.mobile-col-3{width:73.84709%}@media screen and (min-width:620px){.tablet-col-1,.tablet-col-2,.tablet-col-3,.tablet-col-4,.tablet-col-5{display:block;float:left;min-height:1px;position:relative;margin-left:2.91262%}.first-tablet-col,.row .tablet-col-1:first-child,.row .tablet-col-2:first-child,.row .tablet-col-3:first-child,.row .tablet-col-4:first-child,.row .tablet-col-5:first-child{margin-left:0}.tablet-col-1{width:14.23948%}.tablet-col-2{width:31.39159%}.tablet-col-3{width:48.54369%}.tablet-col-4{width:65.69579%}.tablet-col-5{width:82.8479%}}@media screen and (min-width:768px){.col-1,.col-10,.col-11,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9{display:block;float:left;min-height:1px;position:relative;margin-left:1.94175%}.first-col,.row .col-10:first-child,.row .col-11:first-child,.row .col-1:first-child,.row .col-2:first-child,.row .col-3:first-child,.row .col-4:first-child,.row .col-5:first-child,.row .col-6:first-child,.row .col-7:first-child,.row .col-8:first-child,.row .col-9:first-child{margin-left:0}.col-1{width:6.5534%}.col-2{width:15.04854%}.col-3{width:23.54369%}.col-4{width:32.03883%}.col-5{width:40.53398%}.col-6{width:49.02913%}.col-7{width:57.52427%}.col-8{width:66.01942%}.col-9{width:74.51456%}.col-10{width:83.00971%}.col-11{width:91.50485%}.prefix-1{padding-left:8.49515%}.prefix-2{padding-left:16.99029%}.prefix-3{padding-left:25.48544%}.prefix-4{padding-left:33.98058%}.prefix-5{padding-left:42.47573%}.prefix-6{padding-left:50.97087%}.prefix-7{padding-left:59.46602%}.prefix-8{padding-left:67.96117%}.prefix-9{padding-left:76.45631%}.prefix-10{padding-left:84.95146%}.prefix-11{padding-left:93.4466%}.suffix-1{padding-right:8.49515%}.suffix-2{padding-right:16.99029%}.suffix-3{padding-right:25.48544%}.suffix-4{padding-right:33.98058%}.suffix-5{padding-right:42.47573%}.suffix-6{padding-right:50.97087%}.suffix-7{padding-right:59.46602%}.suffix-8{padding-right:67.96117%}.suffix-9{padding-right:76.45631%}.suffix-10{padding-right:84.95146%}.suffix-11{padding-right:93.4466%}.push-1{left:8.49515%}.push-2{left:16.99029%}.push-3{left:25.48544%}.push-4{left:33.98058%}.push-5{left:42.47573%}.push-6{left:50.97087%}.push-7{left:59.46602%}.push-8{left:67.96117%}.push-9{left:76.45631%}.push-10{left:84.95146%}.push-11{left:93.4466%}.pull-1{right:8.49515%}.pull-2{right:16.99029%}.pull-3{right:25.48544%}.pull-4{right:33.98058%}.pull-5{right:42.47573%}.pull-6{right:50.97087%}.pull-7{right:59.46602%}.pull-8{right:67.96117%}.pull-9{right:76.45631%}.pull-10{right:84.95146%}.pull-11{right:93.4466%}.col-11 .col-1,.col-11 .col-10,.col-11 .col-2,.col-11 .col-3,.col-11 .col-4,.col-11 .col-5,.col-11 .col-6,.col-11 .col-7,.col-11 .col-8,.col-11 .col-9{margin-left:2.12202%}.col-11 .col-1{width:7.1618%}.col-11 .col-2{width:16.44562%}.col-11 .col-3{width:25.72944%}.col-11 .col-4{width:35.01326%}.col-11 .col-5{width:44.29708%}.col-11 .col-6{width:53.5809%}.col-11 .col-7{width:62.86472%}.col-11 .col-8{width:72.14854%}.col-11 .col-9{width:81.43236%}.col-11 .col-10{width:90.71618%}.col-10 .col-1,.col-10 .col-2,.col-10 .col-3,.col-10 .col-4,.col-10 .col-5,.col-10 .col-6,.col-10 .col-7,.col-10 .col-8,.col-10 .col-9{margin-left:2.33918%}.col-10 .col-1{width:7.89474%}.col-10 .col-2{width:18.12865%}.col-10 .col-3{width:28.36257%}.col-10 .col-4{width:38.59649%}.col-10 .col-5{width:48.83041%}.col-10 .col-6{width:59.06433%}.col-10 .col-7{width:69.29825%}.col-10 .col-8{width:79.53216%}.col-10 .col-9{width:89.76608%}.col-9 .col-1,.col-9 .col-2,.col-9 .col-3,.col-9 .col-4,.col-9 .col-5,.col-9 .col-6,.col-9 .col-7,.col-9 .col-8{margin-left:2.60586%}.col-9 .col-1{width:8.79479%}.col-9 .col-2{width:20.19544%}.col-9 .col-3{width:31.59609%}.col-9 .col-4{width:42.99674%}.col-9 .col-5{width:54.39739%}.col-9 .col-6{width:65.79805%}.col-9 .col-7{width:77.1987%}.col-9 .col-8{width:88.59935%}.col-8 .col-1,.col-8 .col-2,.col-8 .col-3,.col-8 .col-4,.col-8 .col-5,.col-8 .col-6,.col-8 .col-7{margin-left:2.94118%}.col-8 .col-1{width:9.92647%}.col-8 .col-2{width:22.79412%}.col-8 .col-3{width:35.66176%}.col-8 .col-4{width:48.52941%}.col-8 .col-5{width:61.39706%}.col-8 .col-6{width:74.26471%}.col-8 .col-7{width:87.13235%}.col-7 .col-1,.col-7 .col-2,.col-7 .col-3,.col-7 .col-4,.col-7 .col-5,.col-7 .col-6{margin-left:3.37553%}.col-7 .col-1{width:11.39241%}.col-7 .col-2{width:26.16034%}.col-7 .col-3{width:40.92827%}.col-7 .col-4{width:55.6962%}.col-7 .col-5{width:70.46414%}.col-7 .col-6{width:85.23207%}.col-6 .col-1,.col-6 .col-2,.col-6 .col-3,.col-6 .col-4,.col-6 .col-5{margin-left:3.9604%}.col-6 .col-1{width:13.36634%}.col-6 .col-2{width:30.69307%}.col-6 .col-3{width:48.0198%}.col-6 .col-4{width:65.34653%}.col-6 .col-5{width:82.67327%}.col-5 .col-1,.col-5 .col-2,.col-5 .col-3,.col-5 .col-4{margin-left:4.79042%}.col-5 .col-1{width:16.16766%}.col-5 .col-2{width:37.12575%}.col-5 .col-3{width:58.08383%}.col-5 .col-4{width:79.04192%}.col-4 .col-1,.col-4 .col-2,.col-4 .col-3{margin-left:6.06061%}.col-4 .col-1{width:20.45455%}.col-4 .col-2{width:46.9697%}.col-4 .col-3{width:73.48485%}.col-3 .col-1,.col-3 .col-2{margin-left:8.24742%}.col-3 .col-1{width:27.83505%}.col-3 .col-2{width:63.91753%}.col-2 .col-1{margin-left:12.90323%;width:43.54839%}.hidden-desktop,.visible-mobile,.visible-tablet{display:none!important}}.row .center-col{float:none;margin-left:auto!important;margin-right:auto}body,button{margin:0}@media screen and (max-width:619px){.hidden-mobile,.visible-desktop,.visible-tablet{display:none!important}}@media screen and (min-width:620px) and (max-width:767px){.hidden-tablet,.visible-desktop,.visible-mobile{display:none!important}}article,aside,blockquote>cite,details,figcaption,figure,figure caption,footer,header,label,main,menu,nav,section{display:block}@media screen and (max-width:767px){[class*=col-]{margin-bottom:20px}}.p-sidebar-nav__toggle--collapse,.p-sidebar-nav__toggle--expand{cursor:pointer;float:right;padding:.5em 0;width:.6em}legend,li{padding:0}html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}button,progress{display:inline-block}[hidden],input[type=reset],template{display:none}h1{margin:.67em 0}figure{margin:1em 40px;width:100%}hr{box-sizing:content-box;height:0}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-size:1em}dfn{font-style:italic}mark{background-color:#ff0}img{border-style:none}button,input,optgroup,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=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:ButtonText dotted 1px}fieldset{border:1px solid silver;margin:0 2px}legend{color:inherit;display:table;max-width:100%;white-space:normal}progress{vertical-align:baseline}[type=checkbox],[type=radio]{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}button,select{line-height:1rem}button,dt{font-size:1rem}h1,h6{line-height:1.125}summary{display:list-item}blockquote{border-left:2px solid #666}*,::after,::before{box-sizing:inherit}button{background-color:#fff;border-color:#666;border-radius:.125rem;border-style:solid;border-width:1px;cursor:pointer;font-smoothing:subpixel-antialiased;font-weight:300;outline:0;padding:.6875rem 1.5rem;text-align:center;transition:background-color .2s;width:100%}button:active,button:focus,button:hover{background-color:rgba(0,0,0,.1);border-color:#666;text-decoration:none}button.is--disabled,button:disabled{cursor:not-allowed;opacity:.5}a:hover,label,select:hover{cursor:pointer}button.is--disabled:active,button.is--disabled:focus,button.is--disabled:hover,button:disabled:active,button:disabled:focus,button:disabled:hover{background-color:transparent;border-color:transparent}fieldset,pre{background-color:#f7f7f7}@media only screen and (min-width:768px){button{width:auto}}@media (max-width:768px){span+button{margin-top:1.2rem}}@media (min-width:768px){span+button{margin-left:.5rem}}label.has-error{color:#d73024}label.has-warning{color:#f99b11}label.has-success{color:#0f8420}a,a:visited,h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover,label.has-information{color:#007aa6}body,pre{color:#333}input[type=file]{outline:0;width:100%}input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}input[type=search]::-webkit-search-results-decoration{display:none}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:searchfield-cancel-button;cursor:pointer}input[type=checkbox],input[type=radio]{min-height:1.5rem}input[type=checkbox]+label,input[type=radio]+label{vertical-align:middle;width:100%}input[type=submit]{background-color:#0f8420;border:0;color:#fff;padding:.75rem 1.5rem}input[type=submit]:hover{background-color:#05280a;cursor:pointer}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:url(data:image/svg+xml;base64, ) top 1.3rem right 1.25rem no-repeat #fff;min-height:48px;text-indent:.01px;text-overflow:''}select[multiple],select[size]{background-image:none;height:auto;padding:.35rem .8125rem}select[multiple] option,select[size] option{font-weight:300;margin:.5rem 0}textarea{overflow:auto;vertical-align:top}fieldset{background-position:-.9375rem -.9375rem;background-repeat:no-repeat;border-radius:.125rem;padding:.9375rem 1.25rem}fieldset h3{border-bottom:1px dotted #666;padding-bottom:.625rem}form div>*,form fieldset>*,form>*{margin-bottom:.5rem}code,kbd,samp{font-family:"Ubuntu Mono",Consolas,Monaco,Courier,monospace;font-weight:300;text-align:left}code,pre{direction:ltr;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none;line-height:1.5;margin:.5rem 0;-moz-tab-size:4;tab-size:4;white-space:pre-wrap;word-spacing:normal;word-wrap:break-word}a:focus{outline:#cdcdcd dotted thin}ol,ul{margin-left:1rem;padding-left:1rem;margin-bottom:1.5rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}nav ol,nav ul{list-style:none}li{margin:0}dt{border-top:1px dotted #666;font-weight:400;margin-top:1rem;padding-top:1rem}dt:first-of-type{border-top:0}dd{margin-left:20px;margin-top:.5rem}figure caption{text-align:center;width:100%}audio,canvas,embed,iframe,object,video{display:block;margin:0 auto 20px;max-width:100%}audio:not([controls]){display:none;height:0}table{border:0;border-collapse:collapse;margin-bottom:20px;overflow-x:auto;width:100%}td,th{padding:1rem .75rem}td{font-weight:300;text-align:left;vertical-align:middle}tbody th,thead th{font-weight:400;text-align:left}thead th{border-collapse:separate;border-spacing:0 .5rem}thead tr{border-bottom:1px solid #666}tbody tr{border-bottom:1px solid #cdcdcd}[class^=p-heading--],body,h1,h2,h3,h4,h5,h6{font-weight:300;font-family:Ubuntu,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",sans-serif}@font-face{font-family:Ubuntu;font-style:normal;font-weight:300;src:url(https://assets.ubuntu.com/v1/50afa266-ubuntu-l-webfont.woff2) format("woff2"),url(https://assets.ubuntu.com/v1/0194407b-ubuntu-l-webfont.woff) format("woff")}@font-face{font-family:Ubuntu;font-style:normal;font-weight:400;src:url(https://assets.ubuntu.com/v1/1cbafee5-ubuntu-r-webfont.woff2) format("woff2"),url(https://assets.ubuntu.com/v1/81863185-ubuntu-r-webfont.woff) format("woff")}@font-face{font-family:Ubuntu;font-style:italic;font-weight:300;src:url(https://assets.ubuntu.com/v1/abb07502-ubuntu-li-webfont.woff2) format("woff2"),url(https://assets.ubuntu.com/v1/65fc9630-ubuntu-li-webfont.woff) format("woff")}@font-face{font-family:Ubuntu;font-style:italic;font-weight:400;src:url(https://assets.ubuntu.com/v1/fca66073-ubuntu-ri-webfont.woff2) format("woff2"),url(https://assets.ubuntu.com/v1/f0898c72-ubuntu-ri-webfont.woff) format("woff")}@font-face{font-family:'Ubuntu Mono';font-style:normal;font-weight:300;src:url(https://assets.ubuntu.com/v1/871f7456-ubuntumono-r-webfont.woff2) format("woff2"),url(https://assets.ubuntu.com/v1/8df3f408-ubuntumono-r-webfont.woff) format("woff")}@font-face{font-family:'Ubuntu Mono';font-style:normal;font-weight:400;src:url(https://assets.ubuntu.com/v1/871f7456-ubuntumono-r-webfont.woff2) format("woff2"),url(https://assets.ubuntu.com/v1/8df3f408-ubuntumono-r-webfont.woff) format("woff")}*{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-smoothing:subpixel-antialiased}html{font-size:calc(16px * .9375)}body{line-height:1.6}[class^=p-heading--],h1,h2,h3,h4,h5,h6{margin-bottom:1.2rem;margin-top:0}@media screen and (min-width:768px){html{font-size:16px}body{line-height:1.5}[class^=p-heading--],h1,h2,h3,h4,h5,h6{margin-bottom:1.5rem;margin-top:0}}h6,p{margin-bottom:1.2rem}p{margin-top:0}@media screen and (min-width:768px){p{margin-bottom:1.5rem;margin-top:0}}button,input,select,textarea{font-family:Ubuntu,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",sans-serif}h1{font-size:2.134rem}@media only screen and (min-width:768px){h1{font-size:2.5rem;line-height:1.2}}@media only screen and (min-width:1030px){fieldset{padding:.9375rem 1.25rem}h1{font-size:3rem;line-height:1.25}}h2{font-size:1.734rem;line-height:1.154}@media only screen and (min-width:768px){h2{font-size:2rem;line-height:1.25}}@media only screen and (min-width:1030px){h2{font-size:2.25rem;line-height:1.167}}h3{font-size:1.534rem;line-height:1.305}@media only screen and (min-width:768px){h3{font-size:1.625rem;line-height:1.154}}@media only screen and (min-width:1030px){h3{font-size:1.75rem;line-height:1.286}}h4{font-size:1.334rem;line-height:1.2}@media only screen and (min-width:768px){h4{font-size:1.375rem;line-height:1.364}}@media only screen and (min-width:1030px){h4{font-size:1.5rem;line-height:1.25}}h5{font-size:1.2rem;line-height:1.334}@media only screen and (min-width:768px){h5{font-size:1.188rem;line-height:1.264}}@media only screen and (min-width:1030px){h5{font-size:1.313rem;line-height:1.143}}h6{font-size:1.067rem;margin-top:1.2rem}ol+h2,ol+h3,p+h2,p+h3,pre+h2,pre+h3,ul+h2,ul+h3{margin-top:1.5rem}@media only screen and (min-width:768px){h6{font-size:1.063rem;line-height:1.412;margin-top:1.5rem}ol+h2,ol+h3,p+h2,p+h3,pre+h2,pre+h3,ul+h2,ul+h3{margin-top:1.6rem}}li>ol,li>ul{padding-top:0}li>ol>li:last-of-type,li>ul>li:last-of-type{padding-bottom:0}blockquote{margin-left:0;padding-left:1.5rem}blockquote>p{font-size:1rem;font-style:italic;margin-bottom:.8rem}blockquote>cite{font-size:1rem;font-style:normal;margin-top:.8rem}@media only screen and (min-width:768px){blockquote>p{margin-bottom:.75rem}blockquote>cite{margin-top:.75rem}}strong{font-weight:400}small{font-size:.8125rem}sub,sup{font-size:.75rem;line-height:0;vertical-align:baseline}sup{top:-.5em;vertical-align:text-top}sub{bottom:-.25em;vertical-align:text-bottom}pre{text-align:left;text-shadow:none;border:1px solid #cdcdcd;border-radius:4px;font-family:Ubuntu Mono;font-size:1em;font-weight:300;margin:.5em 0;padding:.7em 1em;width:100%}a{border-bottom:0;font-weight:inherit}.p-breadcrumbs__link,.p-breadcrumbs__link:visited,h1 a:visited,h2 a:visited,h3 a:visited,h4 a:visited,h5 a:visited,h6 a:visited{color:#333}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:#333;font-weight:400}.p-breadcrumbs{width:100%;display:block;margin-left:1rem;margin-top:1rem}.p-breadcrumbs__link{margin-right:1rem;font-weight:300}.p-breadcrumbs__link::after{content:'\203A';position:absolute;right:-.75rem;top:-.15rem}.p-breadcrumbs__link:last-child::after{content:' '}.p-breadcrumbs__link:hover{color:#007aa6}.p-breadcrumbs__link--active{font-weight:400}.p-breadcrumbs__link--active:hover{color:#333}.p-aside{-ms-flex-item-align:start;align-self:flex-start;border-top:1px solid #cdcdcd;-ms-flex:0 0 16em;flex:0 0 16em;font-size:.875rem;padding:0 1rem}@media (min-width:768px){.p-breadcrumbs{display:none}.p-aside{border-left:1px solid #cdcdcd;border-top:0;margin-top:6rem;padding:0 2rem}.p-layout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-height:100vh}}.p-aside__header{color:#666;font-size:1em;margin-bottom:.5rem;text-transform:uppercase}.p-aside__section{padding:1.5rem 0}.p-aside__section:not(:last-child){border-bottom:1px dotted #cdcdcd}@media (min-width:768px){.p-layout__wrap{display:-ms-flexbox;display:flex}}.p-layout__main{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;padding:1.5rem 1rem 0}@media (min-width:768px){.p-layout__main{border-left:1px solid #cdcdcd;margin-left:0;padding:2rem}}.p-layout__img-links a{border-bottom:0}.p-layout__inner{max-width:1030px;width:100%}.p-layout__sidebar{-ms-flex:0 0 16em;flex:0 0 16em}.p-layout__versions{border-bottom:1px dotted #333;padding:0 1rem}.p-layout__outline{border:1px solid #666}.p-layout__outline--inner{border:1px dotted #666;margin:1rem;padding:1rem}.p-footer{font-size:.75rem;margin-bottom:1rem;padding-top:.75rem}.p-footer__copy{margin-bottom:0}.p-footer__links{margin:0;padding:.5rem 0}.p-footer__item{display:block;margin-bottom:.25rem}@media (min-width:768px){.p-footer{font-size:.8125rem}.p-footer__links{margin-top:0;padding:0}.p-footer__item{display:inline-block}}.p-footer__item:last-child a::after{opacity:0}.p-footer__link{border-bottom:0;color:#333;font-size:.75rem}.p-footer__link:visited{color:#1a1a1a}.p-footer__link:hover{color:#007aa6}.p-footer__link:hover::after{color:#333}.p-footer{border-top:1px solid #cdcdcd;color:#666;padding:1rem}.p-navigation__link,.p-navigation__link:visited,.p-navigation__toggle--close,.p-navigation__toggle--close:visited,.p-navigation__toggle--open,.p-navigation__toggle--open:visited{color:#fff}@media (min-width:768px){.p-footer__link{font-size:.8125rem;margin-right:1rem}.p-footer__link::after{content:'\00b7';display:inline-block;font-size:1.5rem;left:.5rem;position:relative;top:.2rem}.p-footer{padding:1.5rem}}.row{max-width:100%;padding:0;width:100%}.row .row{padding:20px}.p-navigation::after,.u-clearfix::after{clear:both;content:'';display:block}.p-navigation{background-color:#333;position:relative;width:100%}.p-navigation .row{padding:0}.p-navigation__link:hover,.p-navigation__toggle--close:hover,.p-navigation__toggle--open:hover{border-bottom:0;text-decoration:underline}.p-navigation:target .p-navigation__toggle--open,.p-navigation__toggle--close{display:none}.p-navigation__toggle--close,.p-navigation__toggle--open{float:right;margin:1rem}@media (min-width:768px){.p-navigation__toggle--close,.p-navigation__toggle--open{display:none}}@media (max-width:768px){.p-navigation:target .p-navigation__toggle--close{display:inline-block}}.p-navigation__logo{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;float:left;font-size:1.2rem;margin:1rem}@media (min-width:768px){.p-navigation__logo{margin:.9rem}.p-navigation__link{display:block;float:left;width:auto}}.p-navigation,.p-navigation__link:last-child{margin-bottom:0}.p-navigation__link{border-bottom:0;display:block}.p-navigation__link>a{border-bottom:0;color:#fff}.p-navigation__links{background-color:#cdcdcd;clear:both;margin:0;padding:0}@media (min-width:768px){.p-navigation__links{background-color:transparent;clear:none;float:left}}.p-navigation__links .p-navigation__link{border-left:1px solid #fff;padding:1rem}@media (max-width:768px){.p-navigation__links .p-navigation__link{background-color:#f7f7f7;border:0;border-bottom:1px solid #cdcdcd;color:#333;text-align:left}.p-navigation__links .p-navigation__link>a{color:#333}.p-navigation__links .p-navigation__link:last-of-type{border-bottom:0}}.p-navigation__links .p-navigation__link:last-of-type{border-right:1px solid #fff}.p-navigation__nav{display:none}@media (min-width:768px){.p-navigation__nav{display:block}.p-sidebar-nav__header{font-size:1.3125rem}}.p-navigation:target .p-navigation__nav{display:block}.p-navigation{background:#fff;border-bottom:1px solid #cdcdcd;color:#333;line-height:32px;padding:7.5px 0}.p-navigation__link{color:#333;margin:0}.p-navigation__link:visited{color:#333}.p-navigation__logo{color:#333;margin-bottom:0;margin-top:0}.p-navigation__image{display:block;float:left;height:32px;margin:0 1rem 0 0;vertical-align:middle}.p-notification__response{background-position:0 4px;background-repeat:no-repeat;background-size:16px 16px;margin:0;text-align:left}.p-notification__status{font-weight:400;margin-right:.3125rem}.p-notification__action{border-bottom:0;margin-left:.3125rem}.p-notification--positive{border-color:#0f8420}.p-notification--positive .p-notification__response{background-image:url("data:image/svg+xml,%3Csvg width='17px' height='17px' viewBox='0 0 17 17' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='notification-success' transform='translate(1.000000, 1.000000)'%3E%3Cg id='Page-3---colours'%3E%3Cg id='Notifications---single'%3E%3Cg id='Group'%3E%3Cg id='ICON'%3E%3Ccircle id='circle6710' stroke='%230f8420' stroke-width='1.5' fill='%230f8420' cx='7.2500086' cy='7.2500086' r='7.2500086'%3E%3C/circle%3E%3Cpolygon id='path6712' fill='%23fff' points='11.0502986 4.1734486 10.9843986 4.2311486 6.2496486 8.3783686 3.4740786 5.9974286 2.6350186 6.9463086 6.2503386 10.7500186 11.7500086 4.9627786 11.0502986 4.1734886'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");padding-left:1.5rem}.p-notification--warning{border-color:#f99b11}.p-notification--warning .p-notification__response{background-image:url("data:image/svg+xml,%3Csvg width='17px' height='17px' viewBox='0 0 17 17' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='notification-warning' transform='translate(1.000000, 1.000000)'%3E%3Cg id='Page-3---colours'%3E%3Cg id='Notifications---single'%3E%3Cg id='Group'%3E%3Cg id='ICON'%3E%3Ccircle id='circle5432' stroke='%23f99b11' stroke-width='1.5' fill='%23f99b11' cx='7.2500086' cy='7.2500086' r='7.2500086'%3E%3C/circle%3E%3Cpath d='M6.2500086,3.2500086 L6.2500086,8.2500086 L8.2500086,8.2500086 L8.2500086,3.2500086 L6.2500086,3.2500086 L6.2500086,3.2500086 L6.2500086,3.2500086 Z M6.2500086,9.2500086 L6.2500086,11.2500086 L8.2500086,11.2500086 L8.2500086,9.2500086 L6.2500086,9.2500086 L6.2500086,9.2500086 L6.2500086,9.2500086 Z' id='rect5434' fill='%23fff'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");padding-left:1.5rem}.p-notification--negative{border-color:#d73024}.p-notification--negative .p-notification__response{background-image:url("data:image/svg+xml,%3Csvg width='16px' height='17px' viewBox='0 0 16 17' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-3---colours' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='Notifications---single' transform='translate(-215.000000, -271.000000)'%3E%3Cg id='Group' transform='translate(205.000000, 254.000000)'%3E%3Cg id='ICON' transform='translate(10.000000, 17.000000)'%3E%3Crect id='rect6415' x='0' y='0.36218' width='16' height='16'%3E%3C/rect%3E%3Ccircle id='circle6417' stroke='%23d73024' stroke-width='1.5' fill='%23d73024' cx='8' cy='8.36218' r='7.2500086'%3E%3C/circle%3E%3Cpath d='M5.00001,5.36218 L11.00001,11.36218' id='path6479-8' stroke='%23fff' stroke-width='1.5'%3E%3C/path%3E%3Cpath d='M11.00001,5.36218 L5.00001,11.36218' id='path6481-8' stroke='%23fff' stroke-width='1.5'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");padding-left:1.5rem}.p-sidebar-nav{margin:0 auto;width:100%}.p-sidebar-nav__list{list-style:none;margin:0;padding-left:0;width:100%}.p-sidebar-nav__list .p-sidebar-nav__list .p-sidebar-nav__link{display:inline-block}.p-sidebar-nav__list .p-sidebar-nav__list .p-sidebar-nav__list .p-sidebar-nav__link{padding-left:1rem}.p-sidebar-nav__link{border-bottom:0;color:#333;font-weight:300;margin-bottom:.5rem}.p-sidebar-nav__link.is-active,.p-versions__item--current{font-weight:400}.p-sidebar-nav__link:visited{color:#333}.p-sidebar-nav__link:hover{color:#007aa6}.p-sidebar-nav__toggle--collapse{filter:FlipV;transform:scaleY(-1)}.p-sidebar-nav__header{margin-bottom:0}.p-sidebar-nav__header+.p-sidebar-nav__section{margin-top:1rem}.p-sidebar-nav__section--collapsed{display:none}.p-sidebar-nav__group{border-bottom:1px dotted #cdcdcd;margin:0;padding:1rem}.p-social-list__link,.p-toc__link{border-bottom:0}.p-toc,.p-versions{list-style:none;padding:0}.p-sidebar-nav__top{display:none;margin:0 1rem 1rem}@media (min-width:768px){.p-sidebar-nav__group:last-child{border-bottom:0}.p-sidebar-nav__top{display:inline-block}}.p-social-list{float:right;list-style:none;margin:0}.p-social-list__item{display:inline-block;margin-left:.5rem}.p-social-list__image{height:31px}.p-toc{margin:0}.p-toc__link{color:#333;margin-bottom:.5rem}.p-toc__link:visited{color:#333}.p-toc__link:hover{color:#007aa6}.p-versions{margin:0}.p-versions__link,.p-versions__link:visited{color:#333}.p-versions__link:hover{color:#007aa6}.p-versions__item,.p-versions__item--current,.p-versions__item--missing{display:inline-block;margin-right:1rem}.p-versions__item--missing{color:#666;text-decoration:line-through}

      /* pygmentize codehilite */
      /* github.css style from: https://github.com/nottrobin/github-pygments-theme */
      .codehilite .hll {color:#595e62;}

      .codehilite .w {color: #333;}
      .codehilite .esc {color:#63a35c;}
      .codehilite .err {color:#333;}
      .codehilite .x {color:#333;}

      .codehilite .k {color:#a71d5d;}
      .codehilite .kc {color:#0086b3;}
      .codehilite .kd {color:#a71d5d;}
      .codehilite .kn {color:#a71d5d;}
      .codehilite .kp {color:#0086b3;}
      .codehilite .kr {color:#0086b3;}
      .codehilite .kt {color:#0086b3;}

      .codehilite .n {color:#333;}
      .codehilite .na {color:#795da3;}
      .codehilite .nb {color:#0086b3;}
      .codehilite .bp {color:#ed6a43;}
      .codehilite .nc {color:#795da3;}
      .codehilite .no {color:#0086b3;}
      .codehilite .nd {color:#333;}
      .codehilite .ni {color:#0086b3;}
      .codehilite .ne {color:#ed6a43;}
      .codehilite .nf {color:#333;}
      .codehilite .py {color:#ed6a43;}
      .codehilite .nl {color:#0086b3;}
      .codehilite .nn {color:#333;}
      .codehilite .nx {color:#795da3;}
      .codehilite .nt {color:#63a35c;}
      .codehilite .nv {color:#183691;}
      .codehilite .vc {color:#ed6a43;}
      .codehilite .vg {color:#ed6a43;}
      .codehilite .vi {color:#ed6a43;}

      .codehilite .l {color:#63a35c;}
      .codehilite .ld {color:#795da3;}

      .codehilite .s {color:#183691;}
      .codehilite .sb {color:#595e62;}
      .codehilite .sc {color:#183691;}
      .codehilite .sd {color:#183691;}
      .codehilite .s2 {color:#183691;}
      .codehilite .se {color:#183691;}
      .codehilite .sh {color:#183691;}
      .codehilite .si {color:#183691;}
      .codehilite .sx {color:#183691;}
      .codehilite .sr {color:#183691;}
      .codehilite .s1 {color:#183691;}
      .codehilite .ss {color:#a71d5d;}

      .codehilite .m {color:#0086b3;}
      .codehilite .mb {color:#0086b3;}
      .codehilite .mf {color:#0086b3;}
      .codehilite .mh {color:#0086b3;}
      .codehilite .mi {color:#0086b3;}
      .codehilite .il {color:#0086b3;}
      .codehilite .mo {color:#0086b3;}

      .codehilite .o {color:#333;}
      .codehilite .ow {color:#a71d5d;}
      .codehilite .p {color:#183691;}

      .codehilite .c {color:#969896;}
      .codehilite .cm {color:#969896;}
      .codehilite .cp {font-weight: bold; color:#1d3e81;}
      .codehilite .c1 {color:#969896;}
      .codehilite .cs {color:#969896;}

      .codehilite .g {color:#0086b3;}
      .codehilite .gd {color:#bd2c00; background-color:#ffecec;}
      .codehilite .ge {color:#b52a1d;}
      .codehilite .gr {color:#b52a1d;}
      .codehilite .gh {font-weight: bold, #1d3e81;}
      .codehilite .gi {color:#55a532;background-color:#eaffea;}
      .codehilite .go {color:#333;}
      .codehilite .gp {color:#333;}
      .codehilite .gs {color:#333;}
      .codehilite .gu {font-weight: bold, #1d3e81;}
      .codehilite .gt {color:#333}

      /* Header search styling - to be migrated into vanilla-docs-theme*/
      .search__label {
        display: none;
      }

      .search--header {
        float: none;
        margin: 10px;
      }

      @media (min-width: 768px) {
        .search--header {
          float: right;
          margin: 0 7.5px 0 auto;
        }
      }

      .search__field,
      .search__field[type='search'] {
        background-color: transparent;
        border-color: #cdcdcd;
        display: block;
        float: left;
        line-height: 24px;
        margin-bottom: 0;
        margin-right: -38px;
        padding: 6px 38px 6px 10px;
      }

      .search--header .search__field {
        clear: both;
        width: 100%;
      }

      @media (min-width: 768px) {
        .search--header .search__field {
          clear: none;
          width: 250px;
        }
      }

      @media (max-width: 767px) {
        .search__button {
          clear: right;
          width: auto;
        }
      }

      .search__button,
      .search__button:focus,
      .search__button:active {
        background-color: transparent;
        border: none;
        display: block;
        line-height: 0;
        margin: 0;
        padding: 6px;
        vertical-align: middle;
      }

      .search__button:hover {
        background-color: transparent;
        border: none;
      }

      .search__svg-frame {
        stroke: #888
      }

      .search__button:hover .search__svg-frame {
        stroke: #111;
      }

      .search__svg-handle {
        fill: #888;
      }

      .search__button:hover .search__svg-handle {
        fill: #111;
      }

      /**
       * Make the aside section fixed to the top
       */
      .p-aside.fixed {
        margin-top: 0;
        position: fixed;
        right: 0;
        top: 0;
       }

      /**
       * The border around images shouldn't be moved upstream just yet
       * until it's been agreed:
       * https://github.com/ubuntudesign/docs-vanilla-theme/issues/32
       */
      .theme__inner img {
        max-width: 100%;
        padding: 2px;
        border: 1px solid #cdcdcd;
      }

      .theme > .theme__header {
        padding-right: 36px;
        display: block;
      }


      /**
       * Don't migrate this upstream yet, because we need to have
       * a discussion about the burger menu first. Which will delay things.
       * Ideally I'd like to replace the burger with the word "MENU".
       * Partly because it works better offline. Also, usability.
       */
      .theme__sidebar-toggle-button {
        display: block;
        float: right;
        margin-bottom: 10px;
        margin-right: 20px;
      }

      .theme__sidebar-toggle {
        display: none;
      }

      .p-sidebar-nav {
        display: none;
      }

      .theme__sidebar-toggle:checked + .p-sidebar-nav {
        display: block;
      }

      @media (min-width: 768px) {
        .theme__sidebar-toggle-button {
          background-image: url('https://assets.ubuntu.com/v1/39a96c62-navigation-menu-black.svg');
          background-position: center center;
          background-repeat: no-repeat;
          cursor: pointer;
          display: none;
          height: 32px;
          position: absolute;
          right: 6px;
          text-indent: -1000px;
          top: 6px;
          width: 38px;
        }

        .p-sidebar-nav {
          display: block;
        }
      }
    </style>
  </head>
  <body class="theme">
    {% if tag_manager_code %}
    <!-- Google Tag Manager (noscript) -->
    <noscript><iframe src="https://www.googletagmanager.com/ns.html?id={{ tag_manager_code }}"
    height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
    <!-- End Google Tag Manager (noscript) -->
    {% endif %}

    <header class="p-navigation" role="banner">
      <div class="p-navigation__logo">
        {% if site_root %}<a class="p-navigation__link" href="{{ site_root }}">{% endif %}
          {% if site_logo_url %}<img class="p-navigation__image" src="{{ site_logo_url }}" alt="{{ site_title }} logo" />{% endif %}
          {{ site_title if site_title else 'Documentation' }}
        {% if site_root %}</a>{% endif %}
      </div>
      <label for="nav-toggle-checkbox" class="theme__sidebar-toggle-button">Menu</label>

      {% if search_url %}
        <form id="search" action="{{ search_url }}" class="search--header">
          <label for="edit-keys" class="search__label">Search</label>
          <input class="search__field" type="search" name="q" id="search" placeholder="{{ search_placeholder }}" />
          {% for domain in search_domains %}
            <input type="hidden" name="domain" value="{{ domain }}" />
          {% endfor %}
          <button type="submit" class="search__button">
            <svg xmlns="https://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 90 90">
              <g color="#000">
                <path fill="none" stroke-width="4" overflow="visible" enable-background="accumulate" d="M0 0h90v90H0z"></path>
                <path class="search__svg-frame" d="M69 36.5a33 33.5 0 1 1-66 0 33 33.5 0 1 1 66 0z" transform="matrix(.636 0 0 .627 16.114 16.12)" fill="none" stroke="#fff" stroke-width="9.5" overflow="visible" enable-background="accumulate"></path>
                <path class="search__svg-handle" style="text-indent:0;text-align:start;line-height:normal;text-transform:none;block-progression:tb;-inkscape-font-specification:Sans" d="M55.773 52.917L52.94 55.75l14 14 2.833-2.833-14-14z" font-size="xx-small" fill="#fff" stroke-width="6" overflow="visible" enable-background="accumulate" font-family="Sans"></path>
                <path class="search__svg-handle" style="text-indent:0;text-align:start;line-height:normal;text-transform:none;block-progression:tb;-inkscape-font-specification:Sans" d="M60.972 57.03c-1.55.01-3.045 1.023-3.626 2.46-.58 1.436-.21 3.207.898 4.29l9.194 9.2c2.683 2.85 3.262 2.464 5.643.083 2.384-2.38 2.77-2.792-.08-5.646l-9.195-9.2c-.734-.753-1.78-1.192-2.83-1.188z" fill="#fff" stroke-width="11.804"></path>
              </g>
            </svg>
          </button>
        </form>
      {% endif %}
    </header>
    <div class="row">
      <div class="p-layout__wrap">
        {% if navigation %}
        <div class="col-3 p-layout__sidebar">
          <input id="nav-toggle-checkbox" type="checkbox" class="theme__sidebar-toggle" />
          <nav class="p-sidebar-nav">
            <ul class="p-sidebar-nav__list">
              {% for item in navigation %}
              <li class="p-sidebar-nav__group">
                {% if item.location %}
                    {% if item.children %}
                    <h4 class="p-sidebar-nav__header {% if item.active %}is-active{% endif %}"><a href="{{ item.location }}">{{ item.title }}</a></h4>
                    {% else %}
                    <a class="p-sidebar-nav__link {% if item.active %}is-active{% endif %}" href="{{ item.location }}">{{ item.title }}</a>
                    {% endif %}
                {% else %}
                <h4 class="p-sidebar-nav__header">{{ item.title }}</h4>
                {% endif %}

                {% if item.children %}
                <section id="settings" class="p-sidebar-nav__section">
                  <ul class="p-sidebar-nav__list">
                    {% for child in item.children %}
                    <li>
                      {% if child.location %}
                      <a class="p-sidebar-nav__link {% if child.active %}is-active{% endif %}" href="{{ child.location }}">
                        {{ child.title }}
                      </a>
                      {% else %}
                      <span class="p-sidebar-nav__link">{{ child.title }}</span>
                      {% endif %}

                      {% if child.children %}
                      <section id="settings" class="p-sidebar-nav__section">
                        <ul class="p-sidebar-nav__list">
                          {% for grandchild in child.children %}
                          <li>
                            {% if grandchild.location %}
                            <a class="p-sidebar-nav__link {% if grandchild.active %}is-active{% endif %}" href="{{ grandchild.location }}">
                              {{ grandchild.title }}
                            </a>
                            {% else %}
                            <span class="p-sidebar-nav__link">{{ grandchild.title }}</span>
                            {% endif %}
                          </li>
                          {% endfor %}
                        </ul>
                      </section>
                      {% endif %}
                    </li>
                    {% endfor %}
                  </ul>
                </section>
                {% endif %}
              </li>
              {% endfor %}
            </ul>
          </nav>
          <script>
          /* Polyfill functions
           * =================== */

          /**
           * Array.prototype.forEach polyfill
           * from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach
           */
          if (!Array.prototype.forEach) {
              Array.prototype.forEach = function(fun) {
                  if (
                      this === void 0
                      || this === null
                      || typeof fun !== "function"
                  ) { throw new TypeError(); }

                  var t = Object(this);
                  var len = t.length >>> 0;

                  var thisArg = arguments.length >= 2 ? arguments[1] : void 0;
                  for (var i = 0; i < len; i++) {
                      if (i in t) {
                          fun.call(thisArg, t[i], i, t);
                      }
                  }
              };
          }

          /**
           * Add Array methods to NodeList
           */
          Object.getOwnPropertyNames(Array.prototype).forEach(
            function (methodName) {
              if(!(methodName in NodeList.prototype)) {
                NodeList.prototype[methodName] = Array.prototype[methodName];
              }
            }
          );

          /* Element.prototype.classList polyfill, by Eli Grey, http://eligrey.com
           * https://github.com/eligrey/classList.js */
          if("document"in self){if(!("classList"in document.createElement("_"))||document.createElementNS&&!("classList"in document.createElementNS("http://www.w3.org/2000/svg","g"))){(function(t){"use strict";if(!("Element"in t))return;var e="classList",i="prototype",n=t.Element[i],s=Object,r=String[i].trim||function(){return this.replace(/^\s+|\s+$/g,"")},a=Array[i].indexOf||function(t){var e=0,i=this.length;for(;e<i;e++){if(e in this&&this[e]===t){return e}}return-1},o=function(t,e){this.name=t;this.code=DOMException[t];this.message=e},l=function(t,e){if(e===""){throw new o("SYNTAX_ERR","An invalid or illegal string was specified")}if(/\s/.test(e)){throw new o("INVALID_CHARACTER_ERR","String contains an invalid character")}return a.call(t,e)},c=function(t){var e=r.call(t.getAttribute("class")||""),i=e?e.split(/\s+/):[],n=0,s=i.length;for(;n<s;n++){this.push(i[n])}this._updateClassName=function(){t.setAttribute("class",this.toString())}},u=c[i]=[],f=function(){return new c(this)};o[i]=Error[i];u.item=function(t){return this[t]||null};u.contains=function(t){t+="";return l(this,t)!==-1};u.add=function(){var t=arguments,e=0,i=t.length,n,s=false;do{n=t[e]+"";if(l(this,n)===-1){this.push(n);s=true}}while(++e<i);if(s){this._updateClassName()}};u.remove=function(){var t=arguments,e=0,i=t.length,n,s=false,r;do{n=t[e]+"";r=l(this,n);while(r!==-1){this.splice(r,1);s=true;r=l(this,n)}}while(++e<i);if(s){this._updateClassName()}};u.toggle=function(t,e){t+="";var i=this.contains(t),n=i?e!==true&&"remove":e!==false&&"add";if(n){this[n](t)}if(e===true||e===false){return e}else{return!i}};u.toString=function(){return this.join(" ")};if(s.defineProperty){var h={get:f,enumerable:true,configurable:true};try{s.defineProperty(n,e,h)}catch(d){if(d.number===-2146823252){h.enumerable=false;s.defineProperty(n,e,h)}}}else if(s[i].__defineGetter__){n.__defineGetter__(e,f)}})(self)}else{(function(){"use strict";var t=document.createElement("_");t.classList.add("c1","c2");if(!t.classList.contains("c2")){var e=function(t){var e=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var i,n=arguments.length;for(i=0;i<n;i++){t=arguments[i];e.call(this,t)}}};e("add");e("remove")}t.classList.toggle("c3",false);if(t.classList.contains("c3")){var i=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){if(1 in arguments&&!this.contains(t)===!e){return e}else{return i.call(this,t)}}}t=null})()}}

          /* Element.prototype.addEventListener (https://gist.github.com/jonathantneal/3748027) */
          !window.addEventListener&&function(e,t,n,r,i,s,o){e[r]=t[r]=n[r]=function(e,t){var n=this;o.unshift([n,e,t,function(e){e.currentTarget=n,e.preventDefault=function(){e.returnValue=!1},e.stopPropagation=function(){e.cancelBubble=!0},e.target=e.srcElement||n,t.call(n,e)}]),this.attachEvent("on"+e,o[0][3])},e[i]=t[i]=n[i]=function(e,t){for(var n=0,r;r=o[n];++n)if(r[0]==this&&r[1]==e&&r[2]==t)return this.detachEvent("on"+e,o.splice(n,1)[0][3])},e[s]=t[s]=n[s]=function(e){return this.fireEvent("on"+e.type,e)}}(Window.prototype,HTMLDocument.prototype,Element.prototype,"addEventListener","removeEventListener","dispatchEvent",[])

          /* String.prototype.startsWith polyfill, by Mathius Bynens, https://mathiasbynens.be/
           * https://github.com/mathiasbynens/String.prototype.startsWith */
          String.prototype.startsWith||!function(){"use strict";var t=function(){try{var t={},r=Object.defineProperty,e=r(t,t,t)&&r}catch(n){}return e}(),r={}.toString,e=function(t){if(null==this)throw TypeError();var e=String(this);if(t&&"[object RegExp]"==r.call(t))throw TypeError();var n=e.length,i=String(t),a=i.length,o=arguments.length>1?arguments[1]:void 0,h=o?Number(o):0;h!=h&&(h=0);var u=Math.min(Math.max(h,0),n);if(a+u>n)return!1;for(var g=-1;++g<a;)if(e.charCodeAt(u+g)!=i.charCodeAt(g))return!1;return!0};t?t(String.prototype,"startsWith",{value:e,configurable:!0,writable:!0}):String.prototype.startsWith=e}();

          /* scopeQuerySelectorShim.js
          * Copyright (C) 2015 Larry Davis - https://github.com/lazd/scopedQuerySelectorShim
          */
          !function(){function a(a,c){var e=a[c];a[c]=function(a){var c,f=!1,g=!1;return a.match(d)?(a=a.replace(d,""),this.parentNode||(b.appendChild(this),g=!0),parentNode=this.parentNode,this.id||(this.id="rootedQuerySelector_id_"+(new Date).getTime(),f=!0),c=e.call(parentNode,"#"+this.id+" "+a),f&&(this.id=""),g&&b.removeChild(this),c):e.call(this,a)}}if(!HTMLElement.prototype.querySelectorAll)throw new Error("rootedQuerySelectorAll: This polyfill can only be used with browsers that support querySelectorAll");var b=document.createElement("div");try{b.querySelectorAll(":scope *")}catch(c){var d=/^\s*:scope/gi;a(HTMLElement.prototype,"querySelector"),a(HTMLElement.prototype,"querySelectorAll")}}();

          /**
           * Add "collaped" classes to all provided list items
           * unless they're "active".
           */
          function expandCollapseAll(items) {
            for(var num = 0; num < items.length; num++) {
              var item = items[num];
              var header = item.querySelector(':scope > .p-sidebar-nav__header');
              var subSection = item.querySelector(':scope > .p-sidebar-nav__section');
              var activeChild = Boolean(item.querySelector('.is-active'));

              // If no subsection, skip this list item
              if (! subSection) {
                continue;
              }

              // Create the trigger button image
              var trigger = document.createElement('img');
              trigger.classList.add('p-sidebar-nav__toggle--collapse');
              trigger.setAttribute(
                'src',
                'https://assets.ubuntu.com/v1/04d2075a-chevron_down.svg'
              );
              trigger.addEventListener(
                'click',
                function(subSection) {
                  return function(clickEvent) {
                    this.classList.toggle('p-sidebar-nav__toggle--collapse');
                    this.classList.toggle('p-sidebar-nav__toggle--expand');
                    subSection.classList.toggle('p-sidebar-nav__section--collapsed');
                  };
                }(subSection)
              );

              // Add the trigger image at the top of the header or item
              if (header) {
                header.insertBefore(trigger, header.firstElementChild);
              } else {
                item.insertBefore(trigger, item.firstElementChild)
              }

              // Collapse unless it has an active child
              if (! activeChild) {
                trigger.classList.remove('p-sidebar-nav__toggle--collapse');
                trigger.classList.add('p-sidebar-nav__toggle--expand');
                subSection.classList.add('p-sidebar-nav__section--collapsed');
              }
            }
          }

          // Collapse doubly-nested nav lists
          expandCollapseAll(document.querySelectorAll('.p-sidebar-nav li'));
          </script>
        </div>
        <nav class="p-breadcrumbs">
          {% for breadcrumb in breadcrumbs %}
            {% if breadcrumb.active or not breadcrumb.location %}
              <span class="p-breadcrumbs__link">{{ breadcrumb.title }}</span>
            {% else %}
              <a class="p-breadcrumbs__link" href="{{ breadcrumb.location }}">{{ breadcrumb.title }}</a>
            {% endif %}
          {% endfor %}
        </nav>
        {% endif %}
        <div class="col-12 p-layout__main">
          <main id="main-content" class="p-layout__inner">
            {{ content }}
          </main>
        </div>
        {% if toc_items or versions %}
        <div class="col-2">
          <aside id="side-content" class="p-aside">
            {% if versions %}
            <nav class="p-aside__section">
              <h4 class="p-aside__header">Versions</h4>
              <ul class="p-versions">
                {% for version in versions %}
                  {% if version.path is none %}
                  <li class="p-versions__item--missing">{{ version.name }}</li>
                  {% elif version.path == '' %}
                  <li class="p-versions__item--current">{{ version.name }}</li>
                  {% else %}
                  <li class="p-versions__item">
                    <a href="{{ version.path }}" class="p-versions__link">{{ version.name }}</a>
                  </li>
                  {% endif %}
                {% endfor %}
              </ul>
            </nav>
            {% endif %}
            {% if toc_items %}
            <div class="p-aside__section">
              <h4 class="p-aside__header">Contents</h4>
              <nav>
                <ul class="p-toc">
                  {{ toc_items }}
                  <li class="p-toc__item" id="back-to-top" style="display: none"><a class="p-toc__link" href="#">Back to top</a></li>
                </ul>
              </nav>
            </div>
            {% endif %}
          </aside>
        </div>
        {% endif %}
      </div>
    </div>
    <footer class="p-footer" role="contentinfo">
      <div class="row">
        <div class="col-12">
          <p>&copy; Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd.</p>
        </div>
      </div>
    </footer>
    <script>
      /* Add classes to links */
      var links = document.querySelectorAll('a');
      links.forEach(function(link) {
        if (link.hostname && link.hostname != location.hostname) {
          link.className += ' p-link--external';
        }
      });

      /* Setup sticky table of contents */
      var aside = document.querySelector('#side-content');
      if (aside) {
        var asideOffset = aside.offsetTop;
        var asideWidth = aside.offsetWidth;
        var backToTop = document.querySelector('#back-to-top');

        window.addEventListener(
          'scroll',
          function(scrollEvent) {
            var scrolled = window.innerWidth >= 768 && window.scrollY > asideOffset;

            aside.classList.toggle('fixed', scrolled);

            if (scrolled) {
              aside.style.width = asideWidth + 'px';
              backToTop.style.display = 'block';
            } else {
              aside.style.width = '';
              backToTop.style.display = 'none';
            }
          }
        );
      }
    </script>
  </body>
</html>
