<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@font-face {
    font-display: swap;
    font-family: Metropolis;
    font-style: normal;
    font-weight: 400;
    src: url(../font/metropolis-regular-webfont.woff2) format("woff2"),url(../font/metropolis-regular-webfont.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: Metropolis;
    font-style: normal;
    font-weight: 500;
    src: url(../font/metropolis-bold-webfont.woff2) format("woff2"),url(../font/metropolis-bold-webfont.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: Metropolis;
    font-style: normal;
    font-weight: 600;
    src: url(../font/metropolis-extrabold-webfont.woff2) format("woff2"),url(../font/metropolis-extrabold-webfont.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: Open Sans;
    font-style: normal;
    font-weight: 400;
    src: url(../font/open-sans-v17-latin-regular.eot);
    src: url(../font/open-sans-v17-latin-regular.eot?#iefix) format("embedded-opentype"),url(../font/open-sans-v17-latin-regular.woff2) format("woff2"),url(../font/open-sans-v17-latin-regular.woff) format("woff"),url(../font/open-sans-v17-latin-regular.ttf) format("truetype"),url(../font/open-sans-v17-latin-regular.svg#OpenSans) format("svg")
}

@font-face {
    font-display: swap;
    font-family: Open Sans;
    font-style: italic;
    font-weight: 400;
    src: url(../font/open-sans-v17-latin-italic.eot);
    src: url(../font/open-sans-v17-latin-italic.eot?#iefix) format("embedded-opentype"),url(../font/open-sans-v17-latin-italic.woff2) format("woff2"),url(../font/open-sans-v17-latin-italic.woff) format("woff"),url(../font/open-sans-v17-latin-italic.ttf) format("truetype"),url(../font/open-sans-v17-latin-italic.svg#OpenSans) format("svg")
}

@font-face {
    font-display: swap;
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    src: url(../font/open-sans-v17-latin-600.eot);
    src: url(../font/open-sans-v17-latin-600.eot?#iefix) format("embedded-opentype"),url(../font/open-sans-v17-latin-600.woff2) format("woff2"),url(../font/open-sans-v17-latin-600.woff) format("woff"),url(../font/open-sans-v17-latin-600.ttf) format("truetype"),url(../font/open-sans-v17-latin-600.svg#OpenSans) format("svg")
}

@font-face {
    font-display: swap;
    font-family: Open Sans;
    font-style: normal;
    font-weight: 700;
    src: url(../font/open-sans-v17-latin-700.eot);
    src: url(../font/open-sans-v17-latin-700.eot?#iefix) format("embedded-opentype"),url(../font/open-sans-v17-latin-700.woff2) format("woff2"),url(../font/open-sans-v17-latin-700.woff) format("woff"),url(../font/open-sans-v17-latin-700.ttf) format("truetype"),url(../font/open-sans-v17-latin-700.svg#OpenSans) format("svg")
}

@font-face {
    font-display: swap;
    font-family: Work Sans;
    font-style: normal;
    font-weight: 400;
    src: url(../font/work-sans-v5-latin-regular.eot);
    src: url(../font/work-sans-v5-latin-regular.eot?#iefix) format("embedded-opentype"),url(../font/work-sans-v5-latin-regular.woff2) format("woff2"),url(../font/work-sans-v5-latin-regular.woff) format("woff"),url(../font/work-sans-v5-latin-regular.ttf) format("truetype"),url(../font/work-sans-v5-latin-regular.svg#WorkSans) format("svg")
}

@font-face {
    font-display: swap;
    font-family: Work Sans;
    font-style: normal;
    font-weight: 700;
    src: url(../font/work-sans-v5-latin-700.eot);
    src: url(../font/work-sans-v5-latin-700.eot?#iefix) format("embedded-opentype"),url(../font/work-sans-v5-latin-700.woff2) format("woff2"),url(../font/work-sans-v5-latin-700.woff) format("woff"),url(../font/work-sans-v5-latin-700.ttf) format("truetype"),url(../font/work-sans-v5-latin-700.svg#WorkSans) format("svg")
}

:root {
    --color-white: #fff;
    --color-smoke-30: #fafafa;
    --color-smoke-70: #f0f0f0;
    --color-smoke-90: #e1e1e1;
    --color-gray-10: #c1c1c1;
    --color-gray-30: #8e8e8e;
    --color-gray-50: grey;
    --color-gray-70: #5d5d5d;
    --color-jet-20: #4a4a4a;
    --color-jet-30: #424242;
    --color-jet-50: #333;
    --color-jet-80: #191919;
    --color-black: #000;
    --rem-base: 18;
    --body-font-size: 1.0625em;
    --body-font-size--desktop: 1.125em;
    --body-font-size--print: 0.9375em;
    --body-line-height: 1.15;
    --body-font-family: "Open Sans",sans;
    --body-font-weight-bold: 600;
    --monospace-font-weight-bold: 600;
    --font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    --font-family-special: "Metropolis","Helvetica","Arial",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    --font-weight: 400;
    --monospace-font-family: "SFMono-Regular","Consolas","Liberation Mono","Menlo",monospace;
    --body-background-color: #fff;
    --body-background: var(--body-background-color);
    --panel-background-color: #f6f8fa;
    --panel-background: var(--panel-background-color);
    --panel-group-background-color: #e1e8e8;
    --panel-border-color: #eaedf0;
    --color-accent-1: #ebf2f2;
    --color-accent-1-hover: #d3dddd;
    --color-accent-2: #d7e7e7;
    --color-accent-3: #6db33f;
    --body-font-color: #191e1e;
    --body-font-light-color: #273030;
    --body-font-dark-color: #141818;
    --link-font-color: #1565c0;
    --link_hover-font-color: #104d92;
    --code-link-font-color: var(--link-font-color);
    --scrollbar-thumb-color: silver;
    --mark-background-color: #80ea6e;
    --selected-background-color: #191e1e;
    --caption-font-style: italic;
    --layout-banner-height: 80px;
    --layout-border-color: var(--color-accent-1);
    --admonition-background: var(--color-accent-1);
    --admonition-label-font-weight: var(--body-font-weight-bold);
    --admonition-font-color: #f0f0f0;
    --caution-color: #561164;
    --caution-on-color: var(--admonition-font-color);
    --important-color: #960000;
    --important-on-color: var(--admonition-font-color);
    --note-color: #015785;
    --note-on-color: var(--admonition-font-color);
    --tip-color: #3e6b1f;
    --tip-on-color: var(--admonition-font-color);
    --warning-color: #bd7400;
    --warning-on-color: var(--admonition-font-color);
    --admonition-font-weight: 500;
    --highlight-background-color: var(--pre-background);
    --highlight-font-color: #24292e;
    --highlight-keyword-font-color: #d73a49;
    --highlight-comment-font-color: #6a737d;
    --highlight-string-font-color: #032f62;
    --highlight-meta-font-color: #6a737d;
    --highlight-constant-font-color: #032f62;
    --highlight-variable-font-color: #005cc5;
    --highlight-tag-font-color: #22863a;
    --highlight-tag-attribute-font-color: #6f42c1;
    --highlight-type-font-color: #6f42c1;
    --highlight-link-font-color: var(--link-font-color);
    --highlight-addition-font-color: #22863a;
    --highlight-deletion-font-color: #24292e;
    --highlight-regex-font-color: #032f62;
    --tabs-border-color: var(--selected-background-color);
    --tabs-background-color: var(--body-background-color);
    --tabs-font-color: var(--body-font-color);
    --tabs-selected-background-color: var(--selected-background-color);
    --tabs-selected-font-color: var(--body-background-color);
    --tabs-hover-font-color: var(--hover-link-font-color);
    --tabs-hover-background: var(--color-accent-1);
    --tabs-group-background-color: var(--panel-group-background-color);
    --toc-width: 24rem;
    --toc-display: block;
    --toc-font-color: var(--body-font-color);
    --toc-hover-background-color: var(--color-accent-1);
    --toc-active-background-color: var(--selected-background-color);
    --toc-active-font-color: var(--body-background-color);
    --toc-back-to-index-filter: none;
    --toc-bar-display: none;
    --toc-bar-height: 0;
    --toc-bar-button-filter: none;
    --toc-heading-font-color: var(--doc-font-color);
    --toc-border-color: var(--panel-border-color);
    --toc-line-height: 1.2;
    --codetools-button-filter: none;
    --codetools-button-active-filter: invert();
    --codetools-background-color: var(--body-background-color);
    --codetools-border-color: rgba(0,0,0,.3);
    --codetools-hover-background-color: var(--color-accent-1);
    --codetools-divider-color: var(--codetools-border-color);
    --codetools-popup-background-color: var(--selected-background-color);
    --codetools-popup-font-color: var(--body-background-color);
    --social-icon-color: #fff;
    --social-icon-circle: #191e1e;
    --navbar-background: var(--body-background-color);
    --navbar-font-color: var(--body-font-color);
    --navbar_hover-background: var(--navbar-background);
    --navbar-button-background: var(--color-white);
    --navbar-button-border-color: var(--panel-border-color);
    --navbar-button-font-color: var(--body-font-color);
    --navbar-menu-border-color: var(--panel-border-color);
    --navbar-menu-background: var(--body-background-color);
    --navbar-menu-font-color: var(--body-font-color);
    --navbar-menu_hover-background: var(--navbar-menu-background);
    --nav-background: var(--color-white);
    --nav-border-color: var(--color-gray-10);
    --nav-line-height: 1.35;
    --nav-heading-font-color: var(--color-jet-30);
    --nav-muted-color: var(--color-gray-70);
    --nav-panel-divider-color: var(--color-smoke-90);
    --nav-secondary-background: var(--color-smoke-70);
    --toolbar-background: var(--color-white);
    --toolbar-border-color: var(--nav-panel-divider-color);
    --toolbar-font-color: var(--color-gray-70);
    --toolbar-muted-color: var(--color-gray-30);
    --page-version-menu-background: var(--color-smoke-70);
    --page-version-missing-font-color: var(--color-gray-30);
    --breadcrumb-font-color: var(--body-font-light-color);
    --breadcrumb-hover-font-color: var(--link_hover-font-color);
    --doc-font-color: var(--body-font-color);
    --doc-font-size: inherit;
    --doc-font-size--desktop: calc(17/var(--rem-base)*1rem);
    --doc-line-height: 1.6;
    --doc-margin: 0 auto;
    --doc-margin--desktop: 0 2rem;
    --heading-font-color: var(--body-font-dark-color);
    --heading-font-weight: 600;
    --alt-heading-font-weight: 600;
    --section-divider-color: var(--panel-border-color);
    --link_unresolved-font-color: var(--important-color);
    --abstract-background: var(--panel-background);
    --abstract-font-color: var(--color-jet-20);
    --abstract-border-color: var(--panel-border-color);
    --caption-font-color: var(--body-font-light-color);
    --caption-font-weight: 400;
    --code-background: rgba(177,209,241,.15);
    --code-font-color: var(--body-font-color);
    --example-background: var(--panel-background);
    --example-border-color: var(--panel-border-color);
    --kbd-background: var(--panel-background);
    --kbd-border-color: var(--color-gray-10);
    --pre-background: var(--panel-background);
    --pre-border-color: var(--panel-border-color);
    --pre-annotation-font-color: var(--color-gray-50);
    --quote-background: var(--color-accent-1);
    --quote-border-color: var(--color-accent-3);
    --quote-font-color: var(--color-gray-70);
    --quote-attribution-font-color: var(--color-accent-3);
    --sidebar-background: var(--color-accent-1);
    --table-border-color: var(--panel-border-color);
    --table-stripe-background: var(--panel-background);
    --table-footer-background: var(--color-accent-1);
    --page-author-background: var(--color-accent-1);
    --page-author-font-color: var(--body-font-light-color);
    --callout-background: var(--body-font-dark-color);
    --callout-font-color: var(--body-background-color);
    --footer-line-height: var(--doc-line-height);
    --footer-background: var(--body-background-color);
    --footer-font-color: var(--color-gray-30);
    --footer-link-font-color: #111;
    --navbar-height: calc(83/var(--rem-base)*1rem);
    --toolbar-height: calc(45/var(--rem-base)*1rem);
    --drawer-height: var(--toolbar-height);
    --body-top: var(--navbar-height);
    --body-min-height: calc(100vh - var(--body-top));
    --nav-height: calc(var(--body-min-height) - var(--toolbar-height));
    --nav-height--desktop: var(--body-min-height);
    --nav-panel-menu-height: 100%;
    --nav-width: calc(300/var(--rem-base)*1rem);
    --toc-top: calc(var(--body-top));
    --toc-height: calc(100vh - var(--toc-top) - 2.5rem);
    --toc-width--widescreen: calc(216/var(--rem-base)*1rem);
    --doc-max-width: calc(720/var(--rem-base)*1rem);
    --doc-max-width--desktop: calc(1200/var(--rem-base)*1rem);
    --z-index-nav: 1;
    --z-index-toolbar: 2;
    --z-index-page-version-menu: 3;
    --z-index-navbar: 4
}

@media screen and (max-width: 1024px) {
    :root {
        --toc-width:16rem
    }
}

@media screen and (max-width: 800px) {
    :root {
        --layout-banner-height:51px;
        --layout-border-color: var(--body-background-color);
        --toc-bar-display: block;
        --toc-bar-height: 24px;
        --toc-width: 0;
        --toc-display: none
    }
}

html.dark-theme {
    --font-weight: 300;
    --body-background-color: #1b1f23;
    --body-background: var(--body-background-color);
    --panel-background-color: #262a2d;
    --panel-background: var(--panel-background-color);
    --panel-group-background-color: #303741;
    --panel-border-color: #2c3135;
    --color-accent-1: #272c33;
    --color-accent-1-hover: #434d5c;
    --color-accent-2: #2d333a;
    --color-accent-3: #6db33f;
    --body-font-color: #bbbcbe;
    --body-font-light-color: #abacaf;
    --body-font-dark-color: #cecfd1;
    --link-font-color: #086dc3;
    --link_hover-font-color: #107ddd;
    --scrollbar-thumb-color: #5f5f5f;
    --mark-background-color: #2eca12;
    --selected-background-color: #e5e5e5;
    --admonition-font-color: #f0f0f0;
    --caution-color: #603668;
    --important-color: #924040;
    --note-color: #355463;
    --tip-color: #4d6340;
    --warning-color: #967745;
    --admonition-font-weight: 500;
    --highlight-background-color: var(--pre-background);
    --highlight-font-color: #f6f8fa;
    --highlight-keyword-font-color: #ea4a5a;
    --highlight-comment-font-color: #959da5;
    --highlight-string-font-color: #79b8ff;
    --highlight-meta-font-color: #959da5;
    --highlight-constant-font-color: #79b8ff;
    --highlight-variable-font-color: #c8e1ff;
    --highlight-tag-font-color: #7bcc72;
    --highlight-tag-attribute-font-color: #b392f0;
    --highlight-type-font-color: #b392f0;
    --highlight-link-font-color: #1565c0;
    --highlight-addition-font-color: #7bcc72;
    --highlight-deletion-font-color: #f6f8fa;
    --highlight-regex-font-color: #79b8ff;
    --toc-back-to-index-filter: invert();
    --toc-bar-button-filter: invert();
    --codetools-button-filter: invert();
    --codetools-button-active-filter: none;
    --codetools-hover-background-color: var(--color-accent-1-hover);
    --codetools-border-color: hsla(0,0%,100%,.274);
    --codetools-divider-color: rgba(44,44,44,.274);
    --social-icon-color: var(--color-black);
    --social-icon-circle: var(--color-white);
    --nav-background: var(--body-background-color);
    --nav-heading-font-color: var(--body-font-color);
    --nav-muted-color: #aaa;
    --nav-panel-divider-color: hsla(0,0%,100%,.2);
    --nav-secondary-background: var(--body-background-color);
    --navbar-menu-boxshadow: 0 5px 30px 0 rgb(0 0 0 0/50%);
    --toolbar-background: var(--body-background-color);
    --toolbar-font-color: var(--navbar-font-color);
    --toolbar-muted-color: #aaa;
    --page-version-menu-background: var(--navbar-background);
    --page-version-missing-font-color: var(--body-font-color);
    --doc-font-color: var(--body-font-color);
    --heading-font-color: var(--body-font-dark-color);
    --footer-background: var(--body-background-color);
    --footer-font-color: hsla(0,0%,100%,.5);
    --footer-link-font-color: hsla(0,0%,100%,.5)
}

html.dark-theme .home-link {
    background: url(../img/home-o-dark.svg) no-repeat 50%
}

html.dark-theme .home-link.is-current,html.dark-theme .home-link:hover {
    background: url(../img/home-dark.svg) no-repeat 50%
}

*,::after,::before {
    box-sizing: inherit
}

html {
    box-sizing: border-box;
    font-size: var(--body-font-size);
    height: 100%;
    scroll-behavior: smooth
}

@media screen and (min-width: 1024px) {
    html {
        font-size:var(--body-font-size--desktop)
    }
}

body {
    word-wrap: anywhere;
    background: var(--body-background);
    color: var(--body-font-color);
    font-family: var(--body-font-family);
    line-height: var(--body-line-height);
    margin: 0;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4
}

a {
    text-decoration: none
}

a:hover {
    text-decoration: underline
}

a:active {
    background-color: none
}

code,kbd,pre {
    font-family: var(--monospace-font-family)
}

b,dt,strong,th {
    font-weight: var(--body-font-weight-bold)
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

em em {
    font-style: normal
}

strong strong {
    font-weight: 400
}

button {
    cursor: pointer;
    font-family: inherit;
    font-size: 1em;
    line-height: var(--body-line-height);
    margin: 0
}

button::-moz-focus-inner {
    border: none;
    padding: 0
}

summary {
    -webkit-tap-highlight-color: transparent;
    cursor: pointer;
    outline: none
}

table {
    word-wrap: normal;
    border-collapse: collapse
}

object[type="image/svg+xml"]:not([width]) {
    width: -moz-fit-content;
    width: fit-content
}

::-moz-placeholder {
    opacity: .5
}

::placeholder {
    opacity: .5
}

@media(pointer: fine) {
    @supports(scrollbar-width:thin) {
        html {
            scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color)
        }

        body * {
            scrollbar-color: var(--scrollbar-thumb-color) transparent;
            scrollbar-width: thin
        }
    }

    html::-webkit-scrollbar {
        background-color: var(--scrollbar-track-color);
        height: 12px;
        width: 12px
    }

    body ::-webkit-scrollbar {
        height: 6px;
        width: 6px
    }

    ::-webkit-scrollbar-thumb {
        background-clip: padding-box;
        background-color: var(--scrollbar-thumb-color);
        border: 3px solid transparent;
        border-radius: 12px
    }

    body ::-webkit-scrollbar-thumb {
        border-radius: 6px;
        border-width: 1.75px
    }

    ::-webkit-scrollbar-thumb:hover {
        background-color: var(--scrollbar_hover-thumb-color)
    }
}

@media screen and (min-width: 1024px) {
    .body {
        display:flex
    }
}

.nav-container {
    font-size: calc(17/var(--rem-base)*1rem);
    left: 0;
    position: fixed;
    top: var(--navbar-height);
    visibility: hidden;
    width: 100%;
    z-index: var(--z-index-nav)
}

.nav-container.is-active {
    visibility: visible
}

.nav {
    background: var(--nav-background);
    border: 0;
    height: var(--nav-height);
    position: relative;
    top: var(--toolbar-height)
}

.nav .panels {
    display: flex;
    flex-direction: column;
    height: inherit
}

.nav-panel-menu {
    height: var(--nav-panel-menu-height);
    overflow-y: auto
}

.nav-panel-menu:not(.is-active) .nav-menu {
    opacity: .75
}

.nav-panel-menu:not(.is-active)::after {
    background: rgba(0,0,0,.5);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.nav-menu {
    line-height: var(--nav-line-height);
    min-height: 100%;
    padding-right: 2px;
    position: relative
}

.nav-menu h3.title {
    color: var(--nav-heading-font-color);
    font-size: inherit;
    font-weight: 700;
    margin: 0;
    padding: .25rem 0 .4rem
}

.nav-menu a {
    color: inherit
}

.nav-list {
    margin: 0;
    padding: 0 1rem
}

.nav-menu&gt;.nav-list .nav-list {
    margin: 0 0 0 .75rem;
    padding: 0
}

.nav-list a.link-external::after {
    content: url(../img/link-external.svg);
    display: inline-block;
    filter: opacity(.5);
    height: 14px;
    margin: 0 0 6px 5px;
    vertical-align: middle;
    width: 14px
}

.dark-theme .nav-list a.link-external::after {
    filter: invert() opacity(.4)
}

.nav-menu&gt;.nav-list+.nav-list {
    margin-top: .5rem
}

.nav-item {
    list-style: none;
    position: relative
}

.nav-item-toggle~.nav-list {
    padding-bottom: .125rem
}

.nav-item[data-depth="0"]&gt;.nav-list:first-child {
    display: block;
    margin: 0
}

.nav-item:not(.is-active)&gt;.nav-list {
    display: none
}

.nav-item-toggle {
    background: transparent url(../img/chevron.svg) no-repeat 50%/50%;
    border: none;
    height: calc(var(--nav-line-height)*1.5em);
    line-height: inherit;
    margin-left: calc(var(--nav-line-height)*-1em);
    margin-top: 2px;
    outline: none;
    position: absolute;
    right: 2px;
    transform: rotate(-90deg);
    width: calc(var(--nav-line-height)*1.5em)
}

.dark-theme .nav-item-toggle,.nav-item.is-current-page&gt;.nav-item-toggle {
    background: transparent url(../img/chevron-white.svg) no-repeat 50%/50%;
    filter: opacity(75%)
}

.nav-item.is-current-page&gt;.nav-item-toggle {
    transform: rotate(-90deg)
}

.nav-item.is-current-page.is-active&gt;.nav-item-toggle {
    transform: rotate(0deg)
}

.dark-theme .nav-item.is-current-page&gt;.nav-item-toggle {
    background: transparent url(../img/chevron.svg) no-repeat 50%/50%
}

.dark-theme .nav-item.is-active&gt;.nav-item-toggle,.nav-item.is-active&gt;.nav-item-toggle {
    transform: rotate(0deg)
}

.nav-link,.nav-text {
    border-radius: 3px;
    display: block;
    padding: .4rem 28px .4rem .5rem
}

.nav-link:hover,.nav-text:hover {
    background: #ebf2f2;
    color: #06c;
    text-decoration: none
}

.dark-theme .nav-link:hover,.dark-theme .nav-text:hover {
    background: #262a2d;
    color: #1f98ff
}

.is-current-page&gt;.nav-link,.is-current-page&gt;.nav-link:hover,.is-current-page&gt;.nav-text,.is-current-page&gt;.nav-text:hover {
    background: var(--selected-background-color);
    color: var(--toc-active-font-color);
    font-weight: var(--body-font-weight-bold)
}

.nav-panel-menu .context {
    background-color: var(--body-background-color);
    margin-bottom: .5rem;
    padding: .8rem 1rem 0;
    position: sticky;
    top: 0;
    z-index: 99
}

.nav-panel-menu .context .title {
    display: block;
    font-weight: 700;
    height: 24px;
    line-height: 24px;
    margin-bottom: 4px;
    overflow: hidden;
    padding-right: 30px;
    text-overflow: ellipsis;
    white-space: nowrap
}

button.browse-version {
    background-color: var(--body-background-color);
    border: none;
    border-radius: 4px;
    height: calc(var(--nav-line-height)*1.5em);
    line-height: inherit;
    margin-left: calc(var(--nav-line-height)*-1em);
    outline: none;
    padding-top: 4px;
    position: absolute;
    right: 12px;
    top: 15px;
    width: 36px
}

button.browse-version svg {
    fill: var(--body-font-color)
}

button.browse-version:hover {
    background-color: #ebf2f2
}

html.dark-theme button.browse-version:hover {
    background-color: hsla(0,0%,100%,.1)
}

.nav-panel-menu .context .version {
    align-items: center;
    background-color: #80ea6e;
    border-radius: 4px;
    color: #111;
    display: inline-block;
    font-size: calc(12/var(--rem-base)*1rem);
    font-weight: 600;
    justify-content: center;
    padding: .25em .75em;
    text-transform: uppercase;
    white-space: nowrap
}

.navbar-project {
    font-size: calc(22/var(--rem-base)*1rem);
    line-height: 74px
}

.navbar-brand .title-divider {
    color: var(--color-gray-10);
    font-weight: 700;
    line-height: 74px;
    margin: 0 .8rem
}

.navbar-brand .page-versions {
    display: inline-block;
    margin-left: -.5rem
}

.nav-menu .search {
    border: 0;
    display: none;
    height: 40px;
    margin: 1rem -1rem 0;
    position: relative
}

.nav-resize {
    border-left: 1px solid #e1e1e1;
    border-left: 1px solid var(--nav-panel-divider-color);
    bottom: 0;
    cursor: ew-resize;
    position: absolute;
    right: -2px;
    top: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 4px;
    z-index: 9999
}

.nav-collapse {
    background: var(--panel-background-color);
    border-top: 1px solid #e1e1e1;
    border-top: 1px solid var(--nav-panel-divider-color);
    display: none;
    height: 40px;
    margin-right: 2px;
    position: relative
}

.nav-collapse button {
    background-color: transparent;
    border: none;
    line-height: inherit;
    margin-left: calc(1.35*-1em);
    margin-left: calc(var(--nav-line-height)*-1em);
    margin-top: 2px;
    outline: none;
    padding: 0;
    position: absolute;
    right: 8px;
    top: 2px
}

.nav-collapse button,.nav-collapse button span {
    height: calc(1.35*1.5em);
    height: calc(var(--nav-line-height)*1.5em);
    width: calc(1.35*1.5em);
    width: calc(var(--nav-line-height)*1.5em)
}

.nav-collapse button span {
    background: transparent url(../img/chevron.svg) no-repeat 50%/50%;
    display: block;
    transform: rotate(90deg)
}

.dark-theme .nav-collapse button span {
    background: transparent url(../img/chevron-white.svg) no-repeat 50%/50%;
    filter: opacity(75%)
}

@media screen and (min-width: 1024px) {
    body.nav-sm .nav-container {
        width:60px
    }

    body.nav-sm .nav-collapse,body.nav-sm .nav-menu {
        margin-right: 0;
        padding-right: 0
    }

    body.nav-sm .DocSearch-Button svg {
        left: 20px
    }

    body.nav-sm .nav-collapse button span {
        transform: rotate(-90deg)
    }

    body.nav-sm .nav-menu .search {
        margin-bottom: 0
    }

    body.nav-sm .nav-panel-menu .context {
        height: 50px
    }

    body.nav-sm .DocSearch-Button span,body.nav-sm .nav-panel-menu .context .title,body.nav-sm .nav-panel-menu .context .version,body.nav-sm .nav-resize {
        display: none
    }

    html.is-clipped--nav body.nav-sm .nav-menu&gt;.nav-list {
        display: block
    }

    body.nav-sm .nav-menu&gt;.nav-list {
        background: var(--body-background-color);
        border-right: 1px solid #e1e1e1;
        border-right: 1px solid var(--nav-panel-divider-color);
        bottom: -40px;
        display: none;
        left: 61px;
        padding: .5rem 1rem;
        position: absolute;
        top: 0;
        width: 300px
    }

    body.nav-sm .toggle-sm button.nav-toggle {
        display: block;
        margin-left: 10px
    }
}

body.nav-sm .nav-panel-menu {
    overflow: visible
}

@media screen and (min-width: 769px) {
    .nav-container {
        width:var(--nav-width)
    }

    .nav {
        box-shadow: .5px 0 3px var(--nav-border-color)
    }
}

@media screen and (min-width: 1024px) {
    .nav-container {
        flex:none;
        font-size: calc(14/var(--rem-base)*1rem);
        position: static;
        top: 0;
        visibility: visible
    }

    .nav-collapse,.nav-menu .search {
        display: block
    }

    .nav {
        border-right: 1px solid #e1e1e1;
        border-right: 1px solid var(--nav-panel-divider-color);
        box-shadow: none;
        height: var(--nav-height--desktop);
        position: sticky;
        top: var(--navbar-height)
    }
}

@media screen and (max-width: 1023.5px) {
    aside.sidebar {
        display:none
    }

    main&gt;.content {
        overflow-x: auto
    }
}

@media screen and (min-width: 1024px) {
    main {
        flex:auto;
        min-width: 0
    }

    main&gt;.content {
        display: flex
    }

    .toc.embedded {
        display: none
    }

    aside.sidebar {
        flex: 0 0 var(--toc-width);
        flex-basis: var(--toc-width--widescreen);
        order: 1
    }
}

@media screen and (min-width: 1216px) {
    aside.sidebar {
        flex-basis:var(--toc-width--widescreen)
    }
}

.flex {
    display: flex
}

.container,.container-fluid,.main-body--wrapper {
    margin: 0 auto;
    max-width: 1140px;
    padding: 0 20px
}

#springlogo,#springlogo-foot {
    height: 45px;
    max-width: 250px
}

footer #social-icons {
    flex-shrink: 0;
    width: 160px
}

footer #social-icons a {
    height: 40px;
    margin-left: 15px
}

footer #social-icons svg {
    width: 40px
}

footer #social-icons a:focus svg .cls-1,footer #social-icons a:hover svg .cls-1 {
    fill: var(--color-accent-3)
}

footer #spring-links a:hover {
    color: #086dc3;
    text-decoration: underline
}

#youtube-icon .cls-1 {
    fill: var(--social-icon-circle)
}

#youtube-icon .cls-2 {
    fill: var(--social-icon-color)
}

#github-icon .cls-1 {
    fill: var(--social-icon-circle)
}

#github-icon .cls-2 {
    fill: var(--social-icon-color);
    fill-rule: evenodd
}

#twitter-icon .cls-1 {
    fill: var(--social-icon-circle)
}

#twitter-icon .cls-2 {
    fill: var(--social-icon-color)
}

.sidebar-links {
    display: none;
    padding: 10px 0
}

.sidebar-links a {
    color: var(--body-font-dark-color);
    cursor: pointer;
    display: block;
    font-size: 14px;
    height: 30px;
    line-height: 30px;
    margin: 8px 0;
    padding-left: 32px;
    position: relative
}

.sidebar-links a:hover {
    color: var(--link-font-color);
    text-decoration: none
}

.sidebar-links a:hover svg {
    fill: var(--link-font-color)
}

.sidebar-links a svg {
    height: 24px;
    left: 0;
    position: absolute;
    top: 3px;
    width: 24px
}

html.dark-theme .sidebar-links a svg {
    fill: #fff
}

html.dark-theme .sidebar-links a:hover svg {
    fill: var(--link-font-color)
}

#modal-versions .colset {
    color: var(--body-font-dark-color);
    display: flex;
    flex: 50%
}

#modal-versions .colset .col-left,#modal-versions .colset .col-right {
    display: flex;
    flex: 50%;
    padding: 1.5rem 2rem
}

#modal-versions .colset .col-right {
    background: #e5ebeb
}

html.dark-theme #modal-versions .colset .col-right {
    background: hsla(0,0%,100%,.1)
}

@media screen and (max-width: 1023.5px) {
    #modal-versions .colset {
        display:block
    }

    #modal-versions .colset .col-left,#modal-versions .colset .col-right {
        display: block;
        width: 100%
    }
}

#modal-versions ul {
    font-weight: 700;
    list-style: none;
    margin: 0;
    padding: 0
}

#modal-versions ul li {
    padding: .2rem 0
}

#modal-versions .anchor {
    display: none
}

#modal-versions a {
    color: var(--link-font-color);
    display: inline-block
}

#modal-versions ul li.component&gt;a.title {
    color: var(--body-font-dark-color)
}

#modal-versions ul ul li {
    list-style: disc
}

#modal-versions ul ul {
    font-weight: 400;
    list-style: circle;
    margin: 0 0 0 20px;
    padding: .4rem 0
}

#modal-versions ul.projects {
    width: 100%
}

#modal-versions ul.projects-list {
    display: block;
    margin-left: 0;
    max-height: 70vh;
    overflow: auto
}

#modal-versions .col-left {
    max-height: 80vh;
    overflow: auto
}

#modal-versions .current {
    align-items: center;
    background-color: #80ea6e;
    border-radius: 4px;
    color: #111;
    display: inline-block;
    font-size: .75rem;
    font-weight: 700;
    height: 24px;
    justify-content: center;
    line-height: 24px;
    margin-left: .75rem!important;
    padding-left: .75em;
    padding-right: .75em;
    text-transform: uppercase;
    white-space: nowrap
}

#modal-versions .modal-versions-close {
    background-color: transparent;
    border: none;
    height: 36px;
    line-height: inherit;
    opacity: .6;
    outline: none;
    position: absolute;
    right: 12px;
    top: 12px;
    width: 36px
}

#modal-versions .modal-versions-close:hover {
    opacity: 1
}

html.dark-theme #modal-versions .modal-versions-close .cls-1h {
    stroke: #fff
}

@media screen and (min-width: 1024px) {
    .sidebar-links {
        display:block
    }
}

html.dark-theme .invert-dark img {
    filter: invert(1)
}

.toolbar {
    align-items: center;
    background-color: var(--toolbar-background);
    box-shadow: 0 1px 0 var(--toolbar-border-color);
    color: var(--toolbar-font-color);
    display: flex;
    font-size: calc(15/var(--rem-base)*1rem);
    height: var(--toolbar-height);
    justify-content: flex-start;
    position: sticky;
    top: var(--navbar-height);
    z-index: var(--z-index-toolbar)
}

.toolbar a {
    color: inherit
}

.nav-toggle {
    background: url(../img/menu.svg) no-repeat 50% 47.5%;
    background-size: 49%;
    border: none;
    height: var(--toolbar-height);
    line-height: inherit;
    margin-right: -.25rem;
    outline: none;
    padding: 0;
    width: var(--toolbar-height)
}

.toolbar button.search-button {
    border-bottom: 0;
    border-radius: 0;
    border-top: 0;
    height: 40px;
    line-height: 40px;
    margin-left: .4rem;
    width: 200px
}

.toolbar button.search-button:hover {
    box-shadow: none
}

.toolbar button.search-button svg {
    top: 10px
}

html.dark-theme .nav-toggle {
    background: url(../img/menu-dark.svg) no-repeat 50% 47.5%;
    background-size: 49%
}

@media screen and (min-width: 1024px) {
    .nav-toggle,.toolbar {
        display:none
    }
}

.nav-toggle.is-active {
    background-image: url(../img/back.svg);
    background-size: 41.5%
}

html.dark-theme .nav-toggle.is-active {
    background-image: url(../img/back-dark.svg);
    background-size: 41.5%
}

.home-link {
    background: url(../img/home-o.svg) no-repeat 50%;
    display: block;
    height: calc(var(--toolbar-height)/2);
    margin: calc(var(--toolbar-height)/4);
    width: calc(var(--toolbar-height)/2)
}

.home-link.is-current,.home-link:hover {
    background-image: url(../img/home.svg)
}

.page-versions {
    line-height: 1;
    margin: 0 .2rem 0 auto;
    position: relative
}

@media screen and (min-width: 1024px) {
    .page-versions {
        margin-right:.7rem
    }
}

.page-versions .version-menu-toggle {
    background: url(../img/chevron.svg) no-repeat;
    background-position: right .5rem top 50%;
    background-size: auto .75em;
    border: none;
    color: inherit;
    line-height: inherit;
    outline: none;
    padding: .5rem 1.5rem .5rem .5rem;
    position: relative;
    z-index: var(--z-index-page-version-menu)
}

.dark-theme .page-versions .version-menu-toggle {
    background: url(../img/chevron-white.svg) no-repeat;
    background-position: right .5rem top 50%;
    background-size: auto .75em
}

.page-versions .version-menu {
    align-items: flex-end;
    background: linear-gradient(to bottom,var(--page-version-menu-background) 0,var(--page-version-menu-background) 100%) no-repeat;
    display: flex;
    flex-direction: column;
    min-width: 100%;
    padding: 1.375rem 1.5rem .5rem .5rem;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap
}

.page-versions:not(.is-active) .version-menu {
    display: none
}

.page-versions .version {
    display: block;
    padding-top: .5rem
}

.page-versions .version.is-current {
    display: none
}

.page-versions .version.is-missing {
    color: var(--page-version-missing-font-color);
    font-style: italic;
    text-decoration: none
}

.sidebar .content {
    padding: 1rem 0;
    position: sticky;
    top: var(--toc-top)
}

.toc-menu {
    color: var(--toc-font-color)
}

.toc .toc-menu {
    margin-right: .75rem
}

.toc .toc-menu h3 {
    color: var(--toc-heading-font-color);
    display: flex;
    flex-direction: column;
    font-size: calc(16/var(--rem-base)*1rem);
    font-weight: 700;
    justify-content: flex-end;
    line-height: 1.3;
    margin: 0 -.5px;
    padding: 20px 0 10px
}

.toc .toc-menu ul {
    font-size: calc(15/var(--rem-base)*1rem);
    line-height: var(--toc-line-height);
    list-style: none;
    margin: 0;
    max-height: var(--toc-height);
    overflow-y: auto;
    padding: 0;
    scrollbar-width: none
}

.toc .toc-menu ul::-webkit-scrollbar {
    height: 0;
    width: 0
}

@media screen and (min-width: 1024px) {
    .toc .toc-menu h3 {
        font-size:calc(14/var(--rem-base)*1rem)
    }

    .toc .toc-menu ul {
        font-size: calc(12/var(--rem-base)*1rem)
    }
}

.toc .toc-menu li {
    margin: 0
}

.toc .toc-menu li[data-level="2"] a {
    padding-left: 1.25rem
}

.toc .toc-menu li[data-level="3"] a {
    padding-left: 2rem
}

.toc .toc-menu a {
    border-left: 4px solid #eaedf0;
    border-left: 4px solid var(--toc-border-color);
    color: inherit;
    display: inline-block;
    outline: none;
    padding: .25rem 0 .25rem .5rem;
    text-decoration: none
}

.toc .toc-menu a:hover {
    color: var(--link-font-color)
}

.toc .toc-menu a.is-active {
    border-left-color: #6bb536;
    color: var(--doc-font-color)
}

.toc .toc-menu a:focus {
    background: var(--panel-background)
}

.toc .toc-menu .is-hidden-toc {
    display: none!important
}

.doc {
    color: var(--doc-font-color);
    font-size: var(--doc-font-size);
    -webkit-hyphens: auto;
    hyphens: auto;
    line-height: var(--doc-line-height);
    margin: var(--doc-margin);
    max-width: var(--doc-max-width);
    padding: 0 1rem 4rem
}

@media screen and (min-width: 1024px) {
    .doc {
        flex:auto;
        font-size: var(--doc-font-size--desktop);
        margin: var(--doc-margin--desktop);
        max-width: var(--doc-max-width--desktop);
        min-width: 0
    }
}

.doc h1,.doc h2,.doc h3,.doc h4,.doc h5,.doc h6 {
    color: var(--heading-font-color);
    font-weight: var(--heading-font-weight);
    -webkit-hyphens: none;
    hyphens: none;
    line-height: 1.3;
    margin: 1rem 0 0
}

.doc&gt;h1.page:first-child {
    font-size: calc(36/var(--rem-base)*1rem);
    margin: 1.5rem 0
}

@media screen and (min-width: 769px) {
    .doc&gt;h1.page:first-child {
        margin-top:2.5rem
    }
}

.doc&gt;h1.page:first-child+aside.toc.embedded {
    margin-top: -.5rem
}

.doc&gt;h2#name+.sectionbody {
    margin-top: 1rem
}

#preamble+.sect1,.doc .sect1+.sect1 {
    margin-top: 2rem
}

.doc h1.sect0 {
    background: var(--abstract-background);
    font-size: 1.8em;
    margin: 1.5rem -1rem 0;
    padding: .5rem 1rem
}

.doc h2:not(.discrete) {
    margin-left: -1rem;
    margin-right: -1rem;
    padding: .4rem 1rem .1rem
}

.doc h3:not(.discrete),.doc h4:not(.discrete) {
    font-weight: var(--alt-heading-font-weight)
}

.doc h1 .anchor,.doc h2 .anchor,.doc h3 .anchor,.doc h4 .anchor,.doc h5 .anchor,.doc h6 .anchor {
    font-size: .8em;
    font-weight: 400;
    margin-left: -1.5ex;
    padding-top: .05em;
    position: absolute;
    text-decoration: none;
    visibility: hidden;
    width: 1.75ex
}

.doc h1 .anchor::before,.doc h2 .anchor::before,.doc h3 .anchor::before,.doc h4 .anchor::before,.doc h5 .anchor::before,.doc h6 .anchor::before {
    content: "\00a7"
}

.doc h1:hover .anchor,.doc h2:hover .anchor,.doc h3:hover .anchor,.doc h4:hover .anchor,.doc h5:hover .anchor,.doc h6:hover .anchor {
    visibility: visible
}

.doc dl,.doc p {
    margin: 0
}

.doc a {
    color: var(--link-font-color)
}

.doc a:hover {
    color: var(--link_hover-font-color)
}

.doc a.bare {
    -webkit-hyphens: none;
    hyphens: none
}

.doc a.unresolved {
    color: var(--link_unresolved-font-color)
}

.doc i.fa {
    font-style: normal;
    -webkit-hyphens: none;
    hyphens: none
}

.doc .colist&gt;table code,.doc p code,.doc thead code {
    background: var(--code-background);
    border-radius: .25em;
    color: var(--code-font-color);
    font-size: .95em;
    padding: .125em .25em
}

.doc code,.doc pre {
    -webkit-hyphens: none;
    hyphens: none
}

.doc pre {
    font-size: calc(16/var(--rem-base)*1rem);
    line-height: 1.5;
    margin: 0
}

.doc blockquote {
    margin: 0
}

.doc .paragraph.lead&gt;p {
    font-size: calc(18/var(--rem-base)*1rem)
}

.doc .right {
    float: right
}

.doc .left {
    float: left
}

.doc .float-gap.right {
    margin: 0 1rem 1rem 0
}

.doc .float-gap.left {
    margin: 0 0 1rem 1rem
}

.doc .float-group::after {
    clear: both;
    content: "";
    display: table
}

.doc .text-left {
    text-align: left
}

.doc .text-center {
    text-align: center
}

.doc .text-right {
    text-align: right
}

.doc .text-justify {
    text-align: justify
}

.doc .stretch {
    width: 100%
}

.doc .big {
    font-size: larger
}

.doc .small {
    font-size: smaller
}

.doc .underline {
    text-decoration: underline
}

.doc .line-through {
    text-decoration: line-through
}

.doc .dlist,.doc .exampleblock,.doc .hdlist,.doc .imageblock,.doc .listingblock,.doc .literalblock,.doc .olist,.doc .paragraph,.doc .partintro,.doc .quoteblock,.doc .sidebarblock,.doc .tabs,.doc .ulist,.doc .verseblock,.doc .videoblock,.doc details,.doc hr {
    margin: 1rem 0 0
}

.doc .tablecontainer,.doc .tablecontainer+*,.doc :not(.tablecontainer)&gt;table.tableblock,.doc :not(.tablecontainer)&gt;table.tableblock+*,.doc&gt;table.tableblock,.doc&gt;table.tableblock+* {
    margin-top: 1.5rem
}

.doc table.tableblock {
    font-size: calc(15/var(--rem-base)*1rem)
}

.doc p.tableblock+p.tableblock {
    margin-top: .5rem
}

.doc table.tableblock pre {
    font-size: inherit
}

.doc td.tableblock&gt;.content {
    word-wrap: anywhere
}

.doc td.tableblock&gt;.content&gt;:first-child {
    margin-top: 0
}

.doc table.tableblock td,.doc table.tableblock th {
    padding: .5rem
}

.doc table.tableblock,.doc table.tableblock&gt;*&gt;tr&gt;* {
    border: 0 solid #eaedf0;
    border: 0 solid var(--table-border-color)
}

.doc table.grid-all&gt;*&gt;tr&gt;* {
    border-width: 1px
}

.doc table.grid-cols&gt;*&gt;tr&gt;* {
    border-width: 0 1px
}

.doc table.grid-rows&gt;*&gt;tr&gt;* {
    border-width: 1px 0
}

.doc table.grid-all&gt;thead th,.doc table.grid-rows&gt;thead th {
    border-bottom-width: 2.5px
}

.doc table.frame-all {
    border-width: 1px
}

.doc table.frame-ends {
    border-width: 1px 0
}

.doc table.frame-sides {
    border-width: 0 1px
}

.doc table.frame-none&gt;colgroup+*&gt;:first-child&gt;*,.doc table.frame-sides&gt;colgroup+*&gt;:first-child&gt;* {
    border-top-width: 0
}

.doc table.frame-sides&gt;:last-child&gt;:last-child&gt;* {
    border-bottom-width: 0
}

.doc table.frame-ends&gt;*&gt;tr&gt;:first-child,.doc table.frame-none&gt;*&gt;tr&gt;:first-child {
    border-left-width: 0
}

.doc table.frame-ends&gt;*&gt;tr&gt;:last-child,.doc table.frame-none&gt;*&gt;tr&gt;:last-child {
    border-right-width: 0
}

.doc table.stripes-all&gt;tbody&gt;tr,.doc table.stripes-even&gt;tbody&gt;tr:nth-of-type(2n),.doc table.stripes-hover&gt;tbody&gt;tr:hover,.doc table.stripes-odd&gt;tbody&gt;tr:nth-of-type(odd) {
    background: var(--table-stripe-background)
}

.doc table.tableblock&gt;tfoot {
    background: var(--table-footer-background)
}

.doc .halign-left {
    text-align: left
}

.doc .halign-right {
    text-align: right
}

.doc .halign-center {
    text-align: center
}

.doc .valign-top {
    vertical-align: top
}

.doc .valign-bottom {
    vertical-align: bottom
}

.doc .valign-middle {
    vertical-align: middle
}

.doc .admonitionblock {
    margin: 1.4rem 0 0
}

.doc .admonitionblock p,.doc .admonitionblock td.content {
    font-size: calc(16/var(--rem-base)*1rem)
}

.doc .admonitionblock td.content&gt;.title+*,.doc .admonitionblock td.content&gt;:not(.title):first-child {
    margin-top: 0
}

.doc .admonitionblock td.content pre {
    font-size: calc(15/var(--rem-base)*1rem)
}

.doc .admonitionblock&gt;table {
    position: relative;
    table-layout: fixed;
    width: 100%
}

.doc .admonitionblock td.content {
    word-wrap: anywhere;
    background: var(--admonition-background);
    padding: 1rem 1rem .75rem;
    width: 100%
}

.doc .admonitionblock td.icon {
    font-size: calc(15/var(--rem-base)*1rem);
    padding: 0
}

.doc .admonitionblock td.icon i {
    border-radius: .45rem;
    filter: none;
    height: 1.25rem;
    padding: 0 .5rem;
    vertical-align: initial;
    width: -moz-fit-content;
    width: fit-content
}

.doc .admonitionblock td.icon i::after {
    font-weight: var(--admonition-label-font-weight)
}

.doc .admonitionblock td.icon i.icon-caution {
    background-color: var(--caution-color);
    color: var(--caution-on-color)
}

.doc .admonitionblock td.icon i.icon-important {
    background-color: var(--important-color);
    color: var(--important-on-color)
}

.doc .admonitionblock td.icon i.icon-note {
    background-color: var(--note-color);
    color: var(--note-on-color)
}

.doc .admonitionblock td.icon i.icon-tip {
    background-color: var(--tip-color);
    color: var(--tip-on-color)
}

.doc .admonitionblock td.icon i.icon-warning {
    background-color: var(--warning-color);
    color: var(--warning-on-color)
}

.doc .imageblock,.doc .videoblock {
    align-items: center;
    display: flex;
    flex-direction: column
}

.doc .imageblock.text-left,.doc .videoblock.text-left {
    align-items: flex-start
}

.doc .imageblock.text-right,.doc .videoblock.text-right {
    align-items: flex-end
}

.doc .image&gt;img,.doc .image&gt;object,.doc .image&gt;svg,.doc .imageblock img,.doc .imageblock object,.doc .imageblock svg {
    display: inline-block;
    height: auto;
    max-width: 100%;
    vertical-align: middle
}

.doc .image:not(.left):not(.right)&gt;img {
    margin-top: -.2em
}

.doc .videoblock iframe,.doc .videoblock video {
    max-width: 100%;
    vertical-align: middle
}

#preamble .abstract blockquote {
    background: var(--abstract-background);
    border-left: 5px solid #eaedf0;
    border-left: 5px solid var(--abstract-border-color);
    color: var(--abstract-font-color);
    font-size: calc(16/var(--rem-base)*1rem);
    padding: .75em 1em
}

.doc .quoteblock,.doc .verseblock {
    background: var(--quote-background);
    border-left: 5px solid #6db33f;
    border-left: 5px solid var(--quote-border-color);
    color: var(--quote-font-color)
}

.doc .quoteblock {
    padding: .25rem 2rem 1.25rem
}

.doc .quoteblock .attribution {
    color: var(--quote-attribution-font-color);
    font-size: calc(15/var(--rem-base)*1rem);
    margin-top: .75rem
}

.doc .quoteblock blockquote {
    margin-top: 1rem
}

.doc .quoteblock .paragraph {
    font-style: italic
}

.doc .quoteblock cite {
    padding-left: 1em
}

.doc .verseblock {
    font-size: 1.15em;
    padding: 1rem 2rem
}

.doc .verseblock pre {
    font-family: inherit;
    font-size: inherit
}

.doc ol,.doc ul {
    margin: 0;
    padding: 0 0 0 2rem
}

.doc ol.none,.doc ol.unnumbered,.doc ol.unstyled,.doc ul.checklist,.doc ul.no-bullet,.doc ul.none,.doc ul.unstyled {
    list-style-type: none
}

.doc ol.unnumbered,.doc ul.no-bullet {
    padding-left: 1.25rem
}

.doc ol.unstyled,.doc ul.unstyled {
    padding-left: 0
}

.doc ul.circle {
    list-style-type: circle
}

.doc ul.disc {
    list-style-type: disc
}

.doc ul.square {
    list-style-type: square
}

.doc ul.circle ul:not([class]),.doc ul.disc ul:not([class]),.doc ul.square ul:not([class]) {
    list-style: inherit
}

.doc ol.arabic {
    list-style-type: decimal
}

.doc ol.decimal {
    list-style-type: decimal-leading-zero
}

.doc ol.loweralpha {
    list-style-type: lower-alpha
}

.doc ol.upperalpha {
    list-style-type: upper-alpha
}

.doc ol.lowerroman {
    list-style-type: lower-roman
}

.doc ol.upperroman {
    list-style-type: upper-roman
}

.doc ol.lowergreek {
    list-style-type: lower-greek
}

.doc ul.checklist {
    padding-left: 1.75rem
}

.doc ul.checklist p&gt;i.fa-check-square-o:first-child,.doc ul.checklist p&gt;i.fa-square-o:first-child {
    display: inline-flex;
    justify-content: center;
    margin-left: -1.25rem;
    width: 1.25rem
}

.doc ul.checklist i.fa-check-square-o::before {
    content: "\2713"
}

.doc ul.checklist i.fa-square-o::before {
    content: "\274f"
}

.doc .dlist .dlist,.doc .dlist .olist,.doc .dlist .ulist,.doc .olist .dlist,.doc .olist .olist,.doc .olist .ulist,.doc .olist li+li,.doc .ulist .dlist,.doc .ulist .olist,.doc .ulist .ulist,.doc .ulist li+li {
    margin-top: .5rem
}

.doc .admonitionblock .listingblock,.doc .olist .listingblock,.doc .ulist .listingblock {
    padding: 0
}

.doc .admonitionblock .title,.doc .exampleblock .title,.doc .imageblock .title,.doc .listingblock .title,.doc .literalblock .title,.doc .openblock .title,.doc .videoblock .title,.doc table.tableblock caption {
    color: var(--caption-font-color);
    font-size: calc(16/var(--rem-base)*1rem);
    font-style: var(--caption-font-style);
    font-weight: var(--caption-font-weight);
    -webkit-hyphens: none;
    hyphens: none;
    letter-spacing: .01em;
    padding-bottom: .075rem
}

.doc table.tableblock caption {
    text-align: left
}

.doc .olist .title,.doc .ulist .title {
    font-style: var(--caption-font-style);
    font-weight: var(--caption-font-weight);
    margin-bottom: .25rem
}

.doc .imageblock .title,.doc .videoblock .title {
    margin-top: .5rem;
    padding-bottom: 0
}

.doc details {
    margin-left: 1rem
}

.doc details&gt;summary {
    display: block;
    line-height: var(--doc-line-height);
    margin-bottom: .5rem;
    position: relative
}

.doc details&gt;summary::-webkit-details-marker {
    display: none
}

.doc details&gt;summary::before {
    border: solid transparent;
    border-left: solid;
    border-width: .3em 0 .3em .5em;
    content: "";
    left: -1rem;
    position: absolute;
    top: calc((var(--doc-line-height)*0.5 - .3)*1em);
    transform: translateX(15%)
}

.doc details[open]&gt;summary::before {
    border-color: currentColor transparent transparent;
    border-width: .5rem .3rem 0;
    transform: translateY(15%)
}

.doc details&gt;summary::after {
    content: "";
    height: 1em;
    left: -1rem;
    position: absolute;
    top: calc((var(--doc-line-height)*0.5 - .5)*1em);
    width: 1rem
}

.doc details.result {
    margin-top: .25rem
}

.doc details.result&gt;summary {
    color: var(--caption-font-color);
    font-style: italic;
    margin-bottom: 0
}

.doc details.result&gt;.content {
    margin-left: -1rem
}

.doc .exampleblock&gt;.content,.doc details.result&gt;.content {
    border: .25rem solid #eaedf0;
    border: .25rem solid var(--example-border-color);
    border-radius: .5rem
}

.doc .exampleblock&gt;.content::after,.doc details.result&gt;.content::after {
    clear: both;
    content: "";
    display: table
}

.doc .exampleblock&gt;.content&gt;:first-child,.doc details&gt;.content&gt;:first-child {
    margin-top: 0
}

.doc .sidebarblock {
    background: var(--sidebar-background);
    border-radius: .75rem;
    padding: 1.75rem 1.5rem
}

.doc .sidebarblock&gt;.content&gt;.title {
    font-size: calc(22.5/var(--rem-base)*1rem);
    font-weight: var(--alt-heading-font-weight);
    line-height: 1.3;
    margin-bottom: .5rem
}

.doc .sidebarblock&gt;.content&gt;.title+*,.doc .sidebarblock&gt;.content&gt;:not(.title):first-child {
    margin-top: 0
}

.doc .listingblock.wrap pre,.doc table.tableblock pre {
    white-space: pre-wrap
}

.doc .listingblock pre:not(.highlight),.doc .literalblock pre,.doc pre.highlight&gt;code {
    background: var(--pre-background);
    box-shadow: inset 0 0 1.75px var(--pre-border-color);
    display: block;
    overflow-x: auto;
    padding: .875em
}

.doc .listingblock&gt;.content {
    position: relative
}

.doc .source-toolbox {
    color: var(--pre-annotation-font-color);
    font-size: calc(13/var(--rem-base)*1rem);
    top: .25rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    visibility: hidden;
    white-space: nowrap
}

.doc .listingblock:hover .source-toolbox {
    visibility: visible
}

.doc .source-toolbox .source-lang {
    letter-spacing: .075em;
    text-transform: uppercase
}

.doc .source-toolbox&gt;:not(:last-child)::after {
    content: "|";
    letter-spacing: 0;
    padding: 0 1ch
}

.doc .source-toolbox .copy-button {
    background: 0 0;
    border: none;
    color: inherit;
    font-size: inherit;
    height: 1em;
    line-height: inherit;
    outline: none;
    padding: 0;
    width: 1em
}

.doc .source-toolbox .copy-icon {
    flex: none;
    height: inherit;
    width: inherit
}

.doc .source-toolbox img.copy-icon {
    filter: invert(50.2%)
}

.doc .source-toolbox svg.copy-icon {
    fill: currentColor
}

.doc .source-toolbox .copy-toast {
    color: var(--color-white);
    transition: opacity .5s ease .5s
}

.doc .source-toolbox .copy-toast::after {
    border-left: .55em solid #191e1e;
    border-left: .55em solid var(--doc-font-color)
}

.doc .dlist dt {
    font-style: italic
}

.doc .dlist dd {
    margin: 0 0 0 1.5rem
}

.doc .dlist dd+dt,.doc .dlist dd&gt;p:first-child {
    margin-top: .5rem
}

.doc td.hdlist1,.doc td.hdlist2 {
    padding: .5rem 0 0;
    vertical-align: top
}

.doc tr:first-child&gt;.hdlist1,.doc tr:first-child&gt;.hdlist2 {
    padding-top: 0
}

.doc td.hdlist1 {
    font-weight: var(--body-font-weight-bold);
    padding-right: .25rem
}

.doc td.hdlist2 {
    padding-left: .25rem
}

.doc .colist {
    font-size: calc(16/var(--rem-base)*1rem);
    margin: .25rem 0 -.25rem
}

.doc .colist&gt;table&gt;tbody&gt;tr&gt;:first-child,.doc .colist&gt;table&gt;tr&gt;:first-child {
    padding: .25em .5rem 0;
    vertical-align: top
}

.doc .colist&gt;table&gt;tbody&gt;tr&gt;:last-child,.doc .colist&gt;table&gt;tr&gt;:last-child {
    padding: .25rem 0
}

.doc .conum[data-value] {
    border: 1px solid;
    border-radius: 100%;
    display: inline-block;
    font-family: var(--body-font-family);
    font-size: calc(13.5/var(--rem-base)*1rem);
    font-style: normal;
    height: 1.25em;
    letter-spacing: -.25ex;
    line-height: 1.2;
    text-align: center;
    text-indent: -.25ex;
    width: 1.25em
}

.doc .conum[data-value]::after {
    content: attr(data-value)
}

.doc .conum[data-value]+b {
    display: none
}

.doc hr {
    border: solid var(--section-divider-color);
    border-width: 2px 0 0;
    height: 0
}

.doc b.button {
    white-space: nowrap
}

.doc b.button::before {
    content: "[";
    padding-right: .25em
}

.doc b.button::after {
    content: "]";
    padding-left: .25em
}

.doc kbd {
    background: var(--kbd-background);
    border: 1px solid #c1c1c1;
    border: 1px solid var(--kbd-border-color);
    border-radius: .25em;
    box-shadow: 0 1px 0 var(--kbd-border-color),0 0 0 .1em var(--body-background) inset;
    display: inline-block;
    font-size: calc(12/var(--rem-base)*1rem);
    padding: .25em .5em;
    vertical-align: text-bottom;
    white-space: nowrap
}

.doc .keyseq,.doc kbd {
    line-height: 1
}

.doc .keyseq {
    font-size: calc(16/var(--rem-base)*1rem)
}

.doc .keyseq kbd {
    margin: 0 .125em
}

.doc .keyseq kbd:first-child {
    margin-left: 0
}

.doc .keyseq kbd:last-child {
    margin-right: 0
}

.doc .menuseq,.doc .path {
    -webkit-hyphens: none;
    hyphens: none
}

.doc .menuseq i.caret::before {
    content: "\203a";
    font-size: 1.1em;
    font-weight: var(--body-font-weight-bold);
    line-height: .90909
}

.doc :not(pre).nowrap {
    white-space: nowrap
}

.doc .nobreak {
    word-wrap: normal;
    -webkit-hyphens: none;
    hyphens: none
}

.doc :not(pre).pre-wrap {
    white-space: pre-wrap
}

#footnotes {
    font-size: .85em;
    line-height: 1.5;
    margin: 2rem -.5rem 0
}

.doc td.tableblock&gt;.content #footnotes {
    margin: 2rem 0 0
}

#footnotes hr {
    border-top-width: 1px;
    margin-top: 0;
    width: 20%
}

#footnotes .footnote {
    margin: .5em 0 0 1em
}

#footnotes .footnote+.footnote {
    margin-top: .25em
}

#footnotes .footnote&gt;a:first-of-type {
    display: inline-block;
    margin-left: -2em;
    text-align: right;
    width: 1.5em
}

.breadcrumbs-container {
    padding-top: 2rem
}

.breadcrumbs {
    color: var(--doc-font-color);
    flex: 1 1;
    font-family: var(--font-family);
    font-size: calc(16/var(--rem-base)*1rem);
    line-height: var(--nav-line-height);
    max-width: var(--doc-max-width);
    padding: 0
}

@media screen and (min-width: 1024px) {
    .breadcrumbs {
        max-width:var(--doc-max-width--desktop);
        min-width: 0
    }

    .breadcrumbs-container {
        background-color: var(--body-background-color);
        border-bottom: 1px solid #e1e1e1;
        border-bottom: 1px solid var(--nav-panel-divider-color);
        left: var(--nav-width);
        margin-left: 3rem;
        margin-right: 3rem;
        padding: 1rem 0;
        position: fixed;
        right: var(--toc-width--widescreen);
        top: 80px
    }

    .doc {
        padding-top: 60px
    }
}

a+.breadcrumbs {
    padding-left: .05rem
}

.breadcrumbs ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0
}

.breadcrumbs li {
    display: inline;
    margin: 0
}

.breadcrumbs li::after {
    content: "/";
    padding: 0 .5rem
}

.breadcrumbs li:last-of-type::after {
    content: none
}

nav.pagination {
    border-top: 1px solid #e1e1e1;
    border-top: 1px solid var(--toolbar-border-color);
    display: flex;
    line-height: 1;
    margin: 2rem -1rem -1rem;
    padding: .75rem 1rem 0
}

nav.pagination span {
    display: flex;
    flex: 50%;
    flex-direction: column
}

nav.pagination .prev {
    padding-right: .5rem
}

nav.pagination .next {
    margin-left: auto;
    padding-left: .5rem;
    text-align: right
}

nav.pagination span::before {
    color: var(--toolbar-muted-color);
    font-size: .75em;
    padding-bottom: .1em
}

nav.pagination .prev::before {
    content: "Prev"
}

nav.pagination .next::before {
    content: "Next"
}

nav.pagination a {
    font-weight: var(--body-font-weight-bold);
    line-height: 1.3;
    position: relative
}

nav.pagination a::after,nav.pagination a::before {
    color: var(--toolbar-muted-color);
    font-size: 1.5em;
    font-weight: 400;
    line-height: .75;
    position: absolute;
    top: 0;
    width: 1rem
}

nav.pagination .prev a::before {
    content: "\2039";
    transform: translateX(-100%)
}

nav.pagination .next a::after {
    content: "\203a"
}

@media screen and (max-width: 768px) {
    nav.pagination {
        padding:1rem 2rem
    }
}

html.is-clipped--navbar {
    overflow-y: auto
}

body {
    padding-top: var(--navbar-height)
}

.navbar {
    background: var(--navbar-background);
    border-bottom: 1px solid #e1e1e1;
    border-bottom: 1px solid var(--nav-panel-divider-color);
    color: var(--navbar-font-color);
    font-size: calc(16/var(--rem-base)*1rem);
    height: var(--navbar-height);
    padding: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: var(--z-index-navbar)
}

.navbar a {
    text-decoration: none
}

.navbar-brand {
    display: flex;
    padding: 0 1rem
}

@media screen and (min-width: 1024px) {
    .navbar-brand {
        padding:1rem
    }
}

.navbar-brand .navbar-item:first-child,.navbar-brand .navbar-item:first-child a {
    align-self: center;
    color: var(--navbar-font-color);
    font-size: calc(22/var(--rem-base)*1rem);
    padding: 0
}

.navbar-brand .separator {
    padding: 0 .375rem
}

.navbar-burger {
    align-items: center;
    background: 0 0;
    border: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1;
    margin-left: auto;
    min-width: 0;
    outline: none;
    padding: 0;
    position: relative;
    width: 3rem
}

.navbar-burger span {
    background-color: var(--navbar-font-color);
    height: 1.5px;
    width: 1rem
}

.navbar-burger:not(.is-active) span {
    transition: transform .25s ease-out,opacity 0s .25s,margin-top .25s ease-out .25s
}

.navbar-burger span+span {
    margin-top: .25rem
}

.navbar-burger.is-active span+span {
    margin-top: -1.5px
}

.navbar-burger.is-active span:first-child {
    transform: rotate(45deg)
}

.navbar-burger.is-active span:nth-child(2) {
    opacity: 0
}

.navbar-burger.is-active span:nth-child(3) {
    transform: rotate(-45deg)
}

.navbar-item,.navbar-link {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: var(--navbar-menu-font-color);
    display: block;
    font-family: var(--font-family-special);
    font-size: 15.2px;
    font-weight: 500;
    line-height: var(--doc-line-height);
    padding: 0 1rem;
    transition: color .2s
}

.navbar-item {
    font-family: var(--font-family);
    font-size: 16px;
    font-weight: 500
}

.navbar-item:hover,.navbar-link:hover {
    text-decoration: none
}

.navbar-item.has-dropdown {
    padding: 0
}

.navbar-item .icon {
    display: block;
    height: 1.25rem;
    width: 1.25rem
}

.navbar-item .icon img,.navbar-item .icon svg {
    fill: currentColor;
    height: inherit;
    width: inherit
}

.navbar-link {
    padding-right: 1.95em
}

.navbar-dropdown .navbar-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

.navbar-divider {
    background-color: var(--navbar-menu-border-color);
    border: none;
    height: 1px;
    margin: .25rem 0
}

.navbar .button {
    align-items: center;
    background: var(--navbar-button-background);
    border: 1px solid #eaedf0;
    border: 1px solid var(--navbar-button-border-color);
    border-radius: .15rem;
    color: var(--navbar-button-font-color);
    display: inline-flex;
    height: 1.75rem;
    padding: 0 .75em;
    white-space: nowrap
}

@media screen and (max-width: 1023.5px) {
    .navbar-brand {
        height:inherit
    }

    .navbar-brand .navbar-item {
        align-items: center;
        display: flex
    }

    .navbar-menu {
        background: var(--navbar-menu-background);
        box-shadow: 0 8px 16px hsla(0,0%,4%,.1);
        max-height: var(--body-min-height);
        overflow-y: auto;
        padding: .5rem 0
    }

    .navbar-menu:not(.is-active) {
        display: none
    }

    .navbar-menu .navbar-link:hover,.navbar-menu a.navbar-item:hover {
        background: var(--navbar-menu_hover-background)
    }
}

@media screen and (min-width: 1024px) {
    .navbar-burger {
        display:none
    }

    .navbar,.navbar-end,.navbar-menu {
        display: flex
    }

    .navbar-menu {
        flex: auto
    }

    .navbar-end {
        margin-left: auto
    }

    .navbar-item,.navbar-link {
        display: flex;
        flex: none;
        position: relative
    }

    .navbar-item:not(.has-dropdown),.navbar-link {
        align-items: center
    }

    .navbar-item.is-hoverable:hover .navbar-dropdown {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0)
    }

    .navbar-link::after {
        border-style: solid;
        border-width: 0 0 2px 2px;
        content: "";
        display: block;
        height: .5rem;
        margin-top: -.375em;
        pointer-events: none;
        position: absolute;
        right: 1em;
        top: 50%;
        transform: rotate(-45deg);
        width: .5rem
    }

    .navbar-end .navbar-link,.navbar-end&gt;.navbar-item {
        color: var(--navbar-font-color)
    }

    .navbar-end .navbar-item.has-dropdown:hover .navbar-link,.navbar-end .navbar-link:hover,.navbar-end&gt;a.navbar-item:hover {
        background: var(--navbar_hover-background);
        color: var(--navbar-font-color)
    }

    .navbar-end .navbar-link::after {
        border-color: currentColor
    }

    .navbar-dropdown {
        background: var(--navbar-menu-background);
        border-radius: 6px;
        border-top: none;
        box-shadow: var(--navbar-menu-boxshadow,0 5px 30px 0 rgba(108,135,135,.5));
        left: 0;
        opacity: 0;
        padding: 1rem;
        pointer-events: none;
        position: absolute;
        top: 100%;
        transform: translateY(-5px);
        transition-duration: 86ms;
        transition-property: opacity,transform;
        width: 230px;
        z-index: 999
    }

    .navbar-dropdown.lg {
        left: -20px;
        width: 300px
    }

    .navbar-dropdown .navbar-item {
        padding: .2rem 3rem .2rem 1rem;
        white-space: nowrap
    }

    .navbar-dropdown .navbar-item-special-3 {
        color: #111;
        font-size: .8rem
    }

    .navbar-dropdown .navbar-item-special {
        color: var(--link-font-color);
        margin-bottom: 1.5rem;
        padding-bottom: 20px
    }

    .navbar-dropdown .navbar-item:last-child {
        border-radius: inherit
    }

    .navbar-dropdown.is-right {
        left: auto;
        right: 0
    }

    .navbar-dropdown a.navbar-item:hover {
        background: var(--navbar-menu_hover-background)
    }
}

.navbar-menu .navbar-link:hover,.navbar-menu a.navbar-item:hover {
    color: #6db33f
}

.navbar-dropdown a.navbar-item {
    font-size: 16px;
    padding: .375rem 1rem
}

.page-versions {
    border-left: 1px solid #e1e1e1;
    border-left: 1px solid var(--toolbar-border-color);
    height: 40px;
    line-height: 25px;
    margin: 0;
    padding: 0 8px
}

.page-versions .version-menu {
    padding-top: 40px
}

.is-community .navbar-dropdown {
    left: -80px
}

.navbar-item-special-2 .external-link-icon {
    margin-left: 10px;
    width: 12px
}

footer.footer {
    background-color: var(--footer-background);
    border-top: 1px solid #ebf2f2;
    border-top: 1px solid var(--color-accent-1);
    color: var(--footer-font-color);
    font-size: calc(15/var(--rem-base)*1rem);
    line-height: var(--footer-line-height);
    padding: 1.5rem
}

.footer p {
    margin: .5rem 0
}

.footer a,.footer p {
    color: #111;
    color: var(--footer-link-font-color)
}

.footer a:hover {
    color: var(--link-font-color)
}

.footer .has-gray-text {
    color: #b5b5b5
}

.modal__overlay {
    background: rgba(235,242,242,.8);
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 999
}

.modal__container {
    background-color: var(--body-background-color);
    height: auto;
    margin: 0 auto;
    width: 100%
}

.modal__content {
    color: rgba(0,0,0,.8);
    line-height: 1.5
}

.modal__title {
    padding: .5rem .8rem;
    position: relative
}

.modal__close {
    cursor: pointer;
    height: 32px;
    position: absolute;
    right: 10px;
    top: 16px;
    width: 32px
}

.modal__close:hover::after,.modal__close:hover::before {
    background-color: var(--color-accent-3)
}

.modal__close::after,.modal__close::before {
    background-color: #333;
    content: " ";
    height: 18px;
    left: 15px;
    position: absolute;
    width: 2px
}

.modal__close::before {
    transform: rotate(45deg)
}

.modal__close::after {
    transform: rotate(-45deg)
}

@keyframes mmfadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes mmfadeOut {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes mmslideIn {
    0% {
        transform: translateY(15%)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes mmslideOut {
    0% {
        transform: translateY(0)
    }

    to {
        transform: translateY(-10%)
    }
}

.micromodal-slide {
    display: none
}

.micromodal-slide.is-open {
    display: block
}

.micromodal-slide[aria-hidden=false] .modal__overlay {
    animation: mmfadeIn .3s cubic-bezier(0,0,.2,1)
}

.micromodal-slide[aria-hidden=false] .modal__container {
    animation: mmslideIn .3s cubic-bezier(0,0,.2,1)
}

.micromodal-slide[aria-hidden=true] .modal__overlay {
    animation: mmfadeOut .3s cubic-bezier(0,0,.2,1)
}

.micromodal-slide[aria-hidden=true] .modal__container {
    animation: mmslideOut .3s cubic-bezier(0,0,.2,1)
}

.micromodal-slide .modal__container,.micromodal-slide .modal__overlay {
    will-change: transform
}

@media screen and (min-width: 1024px) {
    .modal__overlay {
        padding:3rem
    }

    .modal__container {
        max-width: 600px;
        min-width: 50%;
        width: auto
    }
}

.hljs {
    background: var(--highlight-background-color);
    color: var(--highlight-font-color);
    display: block;
    overflow-x: auto;
    padding: .5em
}

.hljs-keyword,.hljs-selector-tag,.hljs-subst {
    color: var(--highlight-keyword-font-color)
}

.hljs-comment,.hljs-quote {
    color: var(--highlight-comment-font-color)
}

.hljs-doctag,.hljs-string {
    color: var(--highlight-string-font-color)
}

.hljs-meta {
    color: var(--highlight-meta-font-color)
}

.hljs-built_in,.hljs-builtin-name,.hljs-literal,.hljs-number,.hljs-symbol {
    color: var(--highlight-constant-font-color)
}

.hljs-template-variable,.hljs-variable {
    color: var(--highlight-variable-font-color)
}

.hljs-attribute,.hljs-name,.hljs-tag {
    color: var(--highlight-tag-font-color)
}

.hljs-tag .hljs-attr {
    color: var(--highlight-tag-attribute-font-color)
}

.hljs-class .hljs-title,.hljs-type {
    color: var(--highlight-type-font-color)
}

.hljs-regexp {
    color: var(--highlight-regex-font-color)
}

.hljs-link {
    color: var(--highlight-link-font-color);
    text-decoration: underline
}

.hljs-addition {
    color: var(--highlight-addition-font-color)
}

.hljs-deletion {
    color: var(--highlight-deletion-font-color)
}

.hljs-emphasis {
    font-style: italic
}

.hljs-strong {
    font-weight: 700
}

.language-json .hljs-literal,.language-json .hljs-number {
    color: var(--highlight-variable-font-color)
}

.language-json .hljs-attr {
    color: var(--highlight-string-font-color)
}

.language-asciidoc .hljs-title {
    color: var(--highlight-keyword-font-color);
    font-weight: var(--monospace-font-weight-bold)
}

.language-java .hljs-comment,.language-kotlin .hljs-comment {
    font-style: italic
}

@page {
    margin: .5in
}

@media print {
    .hide-for-print {
        display: none!important
    }

    html {
        font-size: var(--body-font-size--print)
    }

    a {
        color: inherit!important;
        text-decoration: underline
    }

    a.bare,a[href^="#"],a[href^="mailto:"] {
        text-decoration: none
    }

    img,object,svg,tr {
        page-break-inside: avoid
    }

    thead {
        display: table-header-group
    }

    pre {
        -webkit-hyphens: none;
        hyphens: none;
        white-space: pre-wrap
    }

    body {
        padding-top: 2rem
    }

    .navbar {
        background: 0 0;
        color: inherit;
        position: absolute
    }

    .navbar * {
        color: inherit!important
    }

    .nav-container,.navbar&gt;:not(.navbar-brand),.toolbar,div.toc,nav.pagination {
        display: none
    }

    .doc {
        color: inherit;
        margin: auto;
        max-width: none;
        padding-bottom: 2rem
    }

    .doc .listingblock code[data-lang]::before {
        display: block
    }

    footer.footer {
        background: 0 0;
        border-top: 1px solid #eaedf0;
        border-top: 1px solid var(--panel-border-color);
        color: var(--quote-attribution-font-color);
        padding: .25rem .5rem 0
    }

    .footer * {
        color: inherit
    }
}

.navbar-brand .navbar-item+.navbar-item {
    -ms-flex-positive: 1;
    -webkit-box-flex: 1;
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    flex-grow: 1;
    justify-content: flex-end
}

@media screen and (max-width: 768px) {
    .navbar-brand .navbar-item+.navbar-item {
        padding-left:0;
        padding-right: 0
    }
}

@media screen and (min-width: 1024px) {
    .navbar-brand {
        flex-grow:1
    }

    .navbar-menu {
        flex-grow: 0
    }
}

#search-input {
    background: var(--body-background-color);
    border: 1px solid #c1c1c1;
    border: 1px solid var(--kbd-border-color);
    border-radius: .1em;
    color: var(--body-font-dark-color);
    display: block;
    font-size: .95rem;
    line-height: 1.5;
    margin-left: 10px;
    margin-top: 8px;
    padding: 0 .25em;
    position: relative;
    width: 150px
}

/*!* Based on: Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
* Modified to work with gulp/postcss, split '.fa' to '.fa::before' to avoid clash with Antora docs.css
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)*/
@font-face {
    font-family: FontAwesome;
    font-style: normal;
    font-weight: 400;
    src: url(../font/fontawesome-webfont.eot?v=4.7.0);
    src: url(../font/fontawesome-webfont.eot?#iefix&amp;v=4.7.0) format("embedded-opentype"),url(../font/fontawesome-webfont.woff2?v=4.7.0) format("woff2"),url(../font/fontawesome-webfont.woff?v=4.7.0) format("woff"),url(../font/fontawesome-webfont.ttf?v=4.7.0) format("truetype"),url(../font/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular) format("svg")
}

.fa {
    display: inline-block
}

.fa::before {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto
}

.fa-lg {
    font-size: 1.33333333em;
    line-height: .75em;
    vertical-align: -15%
}

.fa-2x {
    font-size: 2em
}

.fa-3x {
    font-size: 3em
}

.fa-4x {
    font-size: 4em
}

.fa-5x {
    font-size: 5em
}

.fa-fw {
    text-align: center;
    width: 1.28571429em
}

.fa-ul {
    list-style-type: none;
    margin-left: 2.14285714em;
    padding-left: 0
}

.fa-ul&gt;li {
    position: relative
}

.fa-li {
    left: -2.14285714em;
    position: absolute;
    text-align: center;
    top: .14285714em;
    width: 2.14285714em
}

.fa-li.fa-lg {
    left: -1.85714286em
}

.fa-border {
    border: .08em solid #eee;
    border-radius: .1em;
    padding: .2em .25em .15em
}

.fa-pull-left {
    float: left
}

.fa-pull-right {
    float: right
}

.fa.fa-pull-left {
    margin-right: .3em
}

.fa.fa-pull-right {
    margin-left: .3em
}

.pull-right {
    float: right
}

.pull-left {
    float: left
}

.fa.pull-left {
    margin-right: .3em
}

.fa.pull-right {
    margin-left: .3em
}

.fa-spin {
    animation: fa-spin 2s linear infinite
}

.fa-pulse {
    animation: fa-spin 1s steps(8) infinite
}

@keyframes fa-spin {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(359deg)
    }
}

.fa-rotate-90 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
    transform: rotate(90deg)
}

.fa-rotate-180 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
    transform: rotate(180deg)
}

.fa-rotate-270 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
    transform: rotate(270deg)
}

.fa-flip-horizontal {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
    transform: scaleX(-1)
}

.fa-flip-vertical {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
    transform: scaleY(-1)
}

:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90 {
    filter: none
}

.fa-stack {
    display: inline-block;
    height: 2em;
    line-height: 2em;
    position: relative;
    vertical-align: middle;
    width: 2em
}

.fa-stack-1x,.fa-stack-2x {
    left: 0;
    position: absolute;
    text-align: center;
    width: 100%
}

.fa-stack-1x {
    line-height: inherit
}

.fa-stack-2x {
    font-size: 2em
}

.fa-inverse {
    color: #fff
}

.fa-glass::before {
    content: "\f000"
}

.fa-music::before {
    content: "\f001"
}

.fa-search::before {
    content: "\f002"
}

.fa-envelope-o::before {
    content: "\f003"
}

.fa-heart::before {
    content: "\f004"
}

.fa-star::before {
    content: "\f005"
}

.fa-star-o::before {
    content: "\f006"
}

.fa-user::before {
    content: "\f007"
}

.fa-film::before {
    content: "\f008"
}

.fa-th-large::before {
    content: "\f009"
}

.fa-th::before {
    content: "\f00a"
}

.fa-th-list::before {
    content: "\f00b"
}

.fa-check::before {
    content: "\f00c"
}

.fa-close::before,.fa-remove::before,.fa-times::before {
    content: "\f00d"
}

.fa-search-plus::before {
    content: "\f00e"
}

.fa-search-minus::before {
    content: "\f010"
}

.fa-power-off::before {
    content: "\f011"
}

.fa-signal::before {
    content: "\f012"
}

.fa-cog::before,.fa-gear::before {
    content: "\f013"
}

.fa-trash-o::before {
    content: "\f014"
}

.fa-home::before {
    content: "\f015"
}

.fa-file-o::before {
    content: "\f016"
}

.fa-clock-o::before {
    content: "\f017"
}

.fa-road::before {
    content: "\f018"
}

.fa-download::before {
    content: "\f019"
}

.fa-arrow-circle-o-down::before {
    content: "\f01a"
}

.fa-arrow-circle-o-up::before {
    content: "\f01b"
}

.fa-inbox::before {
    content: "\f01c"
}

.fa-play-circle-o::before {
    content: "\f01d"
}

.fa-repeat::before,.fa-rotate-right::before {
    content: "\f01e"
}

.fa-refresh::before {
    content: "\f021"
}

.fa-list-alt::before {
    content: "\f022"
}

.fa-lock::before {
    content: "\f023"
}

.fa-flag::before {
    content: "\f024"
}

.fa-headphones::before {
    content: "\f025"
}

.fa-volume-off::before {
    content: "\f026"
}

.fa-volume-down::before {
    content: "\f027"
}

.fa-volume-up::before {
    content: "\f028"
}

.fa-qrcode::before {
    content: "\f029"
}

.fa-barcode::before {
    content: "\f02a"
}

.fa-tag::before {
    content: "\f02b"
}

.fa-tags::before {
    content: "\f02c"
}

.fa-book::before {
    content: "\f02d"
}

.fa-bookmark::before {
    content: "\f02e"
}

.fa-print::before {
    content: "\f02f"
}

.fa-camera::before {
    content: "\f030"
}

.fa-font::before {
    content: "\f031"
}

.fa-bold::before {
    content: "\f032"
}

.fa-italic::before {
    content: "\f033"
}

.fa-text-height::before {
    content: "\f034"
}

.fa-text-width::before {
    content: "\f035"
}

.fa-align-left::before {
    content: "\f036"
}

.fa-align-center::before {
    content: "\f037"
}

.fa-align-right::before {
    content: "\f038"
}

.fa-align-justify::before {
    content: "\f039"
}

.fa-list::before {
    content: "\f03a"
}

.fa-dedent::before,.fa-outdent::before {
    content: "\f03b"
}

.fa-indent::before {
    content: "\f03c"
}

.fa-video-camera::before {
    content: "\f03d"
}

.fa-image::before,.fa-photo::before,.fa-picture-o::before {
    content: "\f03e"
}

.fa-pencil::before {
    content: "\f040"
}

.fa-map-marker::before {
    content: "\f041"
}

.fa-adjust::before {
    content: "\f042"
}

.fa-tint::before {
    content: "\f043"
}

.fa-edit::before,.fa-pencil-square-o::before {
    content: "\f044"
}

.fa-share-square-o::before {
    content: "\f045"
}

.fa-check-square-o::before {
    content: "\f046"
}

.fa-arrows::before {
    content: "\f047"
}

.fa-step-backward::before {
    content: "\f048"
}

.fa-fast-backward::before {
    content: "\f049"
}

.fa-backward::before {
    content: "\f04a"
}

.fa-play::before {
    content: "\f04b"
}

.fa-pause::before {
    content: "\f04c"
}

.fa-stop::before {
    content: "\f04d"
}

.fa-forward::before {
    content: "\f04e"
}

.fa-fast-forward::before {
    content: "\f050"
}

.fa-step-forward::before {
    content: "\f051"
}

.fa-eject::before {
    content: "\f052"
}

.fa-chevron-left::before {
    content: "\f053"
}

.fa-chevron-right::before {
    content: "\f054"
}

.fa-plus-circle::before {
    content: "\f055"
}

.fa-minus-circle::before {
    content: "\f056"
}

.fa-times-circle::before {
    content: "\f057"
}

.fa-check-circle::before {
    content: "\f058"
}

.fa-question-circle::before {
    content: "\f059"
}

.fa-info-circle::before {
    content: "\f05a"
}

.fa-crosshairs::before {
    content: "\f05b"
}

.fa-times-circle-o::before {
    content: "\f05c"
}

.fa-check-circle-o::before {
    content: "\f05d"
}

.fa-ban::before {
    content: "\f05e"
}

.fa-arrow-left::before {
    content: "\f060"
}

.fa-arrow-right::before {
    content: "\f061"
}

.fa-arrow-up::before {
    content: "\f062"
}

.fa-arrow-down::before {
    content: "\f063"
}

.fa-mail-forward::before,.fa-share::before {
    content: "\f064"
}

.fa-expand::before {
    content: "\f065"
}

.fa-compress::before {
    content: "\f066"
}

.fa-plus::before {
    content: "\f067"
}

.fa-minus::before {
    content: "\f068"
}

.fa-asterisk::before {
    content: "\f069"
}

.fa-exclamation-circle::before {
    content: "\f06a"
}

.fa-gift::before {
    content: "\f06b"
}

.fa-leaf::before {
    content: "\f06c"
}

.fa-fire::before {
    content: "\f06d"
}

.fa-eye::before {
    content: "\f06e"
}

.fa-eye-slash::before {
    content: "\f070"
}

.fa-exclamation-triangle::before,.fa-warning::before {
    content: "\f071"
}

.fa-plane::before {
    content: "\f072"
}

.fa-calendar::before {
    content: "\f073"
}

.fa-random::before {
    content: "\f074"
}

.fa-comment::before {
    content: "\f075"
}

.fa-magnet::before {
    content: "\f076"
}

.fa-chevron-up::before {
    content: "\f077"
}

.fa-chevron-down::before {
    content: "\f078"
}

.fa-retweet::before {
    content: "\f079"
}

.fa-shopping-cart::before {
    content: "\f07a"
}

.fa-folder::before {
    content: "\f07b"
}

.fa-folder-open::before {
    content: "\f07c"
}

.fa-arrows-v::before {
    content: "\f07d"
}

.fa-arrows-h::before {
    content: "\f07e"
}

.fa-bar-chart-o::before,.fa-bar-chart::before {
    content: "\f080"
}

.fa-twitter-square::before {
    content: "\f081"
}

.fa-facebook-square::before {
    content: "\f082"
}

.fa-camera-retro::before {
    content: "\f083"
}

.fa-key::before {
    content: "\f084"
}

.fa-cogs::before,.fa-gears::before {
    content: "\f085"
}

.fa-comments::before {
    content: "\f086"
}

.fa-thumbs-o-up::before {
    content: "\f087"
}

.fa-thumbs-o-down::before {
    content: "\f088"
}

.fa-star-half::before {
    content: "\f089"
}

.fa-heart-o::before {
    content: "\f08a"
}

.fa-sign-out::before {
    content: "\f08b"
}

.fa-linkedin-square::before {
    content: "\f08c"
}

.fa-thumb-tack::before {
    content: "\f08d"
}

.fa-external-link::before {
    content: "\f08e"
}

.fa-sign-in::before {
    content: "\f090"
}

.fa-trophy::before {
    content: "\f091"
}

.fa-github-square::before {
    content: "\f092"
}

.fa-upload::before {
    content: "\f093"
}

.fa-lemon-o::before {
    content: "\f094"
}

.fa-phone::before {
    content: "\f095"
}

.fa-square-o::before {
    content: "\f096"
}

.fa-bookmark-o::before {
    content: "\f097"
}

.fa-phone-square::before {
    content: "\f098"
}

.fa-twitter::before {
    content: "\f099"
}

.fa-facebook-f::before,.fa-facebook::before {
    content: "\f09a"
}

.fa-github::before {
    content: "\f09b"
}

.fa-unlock::before {
    content: "\f09c"
}

.fa-credit-card::before {
    content: "\f09d"
}

.fa-feed::before,.fa-rss::before {
    content: "\f09e"
}

.fa-hdd-o::before {
    content: "\f0a0"
}

.fa-bullhorn::before {
    content: "\f0a1"
}

.fa-bell::before {
    content: "\f0f3"
}

.fa-certificate::before {
    content: "\f0a3"
}

.fa-hand-o-right::before {
    content: "\f0a4"
}

.fa-hand-o-left::before {
    content: "\f0a5"
}

.fa-hand-o-up::before {
    content: "\f0a6"
}

.fa-hand-o-down::before {
    content: "\f0a7"
}

.fa-arrow-circle-left::before {
    content: "\f0a8"
}

.fa-arrow-circle-right::before {
    content: "\f0a9"
}

.fa-arrow-circle-up::before {
    content: "\f0aa"
}

.fa-arrow-circle-down::before {
    content: "\f0ab"
}

.fa-globe::before {
    content: "\f0ac"
}

.fa-wrench::before {
    content: "\f0ad"
}

.fa-tasks::before {
    content: "\f0ae"
}

.fa-filter::before {
    content: "\f0b0"
}

.fa-briefcase::before {
    content: "\f0b1"
}

.fa-arrows-alt::before {
    content: "\f0b2"
}

.fa-group::before,.fa-users::before {
    content: "\f0c0"
}

.fa-chain::before,.fa-link::before {
    content: "\f0c1"
}

.fa-cloud::before {
    content: "\f0c2"
}

.fa-flask::before {
    content: "\f0c3"
}

.fa-cut::before,.fa-scissors::before {
    content: "\f0c4"
}

.fa-copy::before,.fa-files-o::before {
    content: "\f0c5"
}

.fa-paperclip::before {
    content: "\f0c6"
}

.fa-floppy-o::before,.fa-save::before {
    content: "\f0c7"
}

.fa-square::before {
    content: "\f0c8"
}

.fa-bars::before,.fa-navicon::before,.fa-reorder::before {
    content: "\f0c9"
}

.fa-list-ul::before {
    content: "\f0ca"
}

.fa-list-ol::before {
    content: "\f0cb"
}

.fa-strikethrough::before {
    content: "\f0cc"
}

.fa-underline::before {
    content: "\f0cd"
}

.fa-table::before {
    content: "\f0ce"
}

.fa-magic::before {
    content: "\f0d0"
}

.fa-truck::before {
    content: "\f0d1"
}

.fa-pinterest::before {
    content: "\f0d2"
}

.fa-pinterest-square::before {
    content: "\f0d3"
}

.fa-google-plus-square::before {
    content: "\f0d4"
}

.fa-google-plus::before {
    content: "\f0d5"
}

.fa-money::before {
    content: "\f0d6"
}

.fa-caret-down::before {
    content: "\f0d7"
}

.fa-caret-up::before {
    content: "\f0d8"
}

.fa-caret-left::before {
    content: "\f0d9"
}

.fa-caret-right::before {
    content: "\f0da"
}

.fa-columns::before {
    content: "\f0db"
}

.fa-sort::before,.fa-unsorted::before {
    content: "\f0dc"
}

.fa-sort-desc::before,.fa-sort-down::before {
    content: "\f0dd"
}

.fa-sort-asc::before,.fa-sort-up::before {
    content: "\f0de"
}

.fa-envelope::before {
    content: "\f0e0"
}

.fa-linkedin::before {
    content: "\f0e1"
}

.fa-rotate-left::before,.fa-undo::before {
    content: "\f0e2"
}

.fa-gavel::before,.fa-legal::before {
    content: "\f0e3"
}

.fa-dashboard::before,.fa-tachometer::before {
    content: "\f0e4"
}

.fa-comment-o::before {
    content: "\f0e5"
}

.fa-comments-o::before {
    content: "\f0e6"
}

.fa-bolt::before,.fa-flash::before {
    content: "\f0e7"
}

.fa-sitemap::before {
    content: "\f0e8"
}

.fa-umbrella::before {
    content: "\f0e9"
}

.fa-clipboard::before,.fa-paste::before {
    content: "\f0ea"
}

.fa-lightbulb-o::before {
    content: "\f0eb"
}

.fa-exchange::before {
    content: "\f0ec"
}

.fa-cloud-download::before {
    content: "\f0ed"
}

.fa-cloud-upload::before {
    content: "\f0ee"
}

.fa-user-md::before {
    content: "\f0f0"
}

.fa-stethoscope::before {
    content: "\f0f1"
}

.fa-suitcase::before {
    content: "\f0f2"
}

.fa-bell-o::before {
    content: "\f0a2"
}

.fa-coffee::before {
    content: "\f0f4"
}

.fa-cutlery::before {
    content: "\f0f5"
}

.fa-file-text-o::before {
    content: "\f0f6"
}

.fa-building-o::before {
    content: "\f0f7"
}

.fa-hospital-o::before {
    content: "\f0f8"
}

.fa-ambulance::before {
    content: "\f0f9"
}

.fa-medkit::before {
    content: "\f0fa"
}

.fa-fighter-jet::before {
    content: "\f0fb"
}

.fa-beer::before {
    content: "\f0fc"
}

.fa-h-square::before {
    content: "\f0fd"
}

.fa-plus-square::before {
    content: "\f0fe"
}

.fa-angle-double-left::before {
    content: "\f100"
}

.fa-angle-double-right::before {
    content: "\f101"
}

.fa-angle-double-up::before {
    content: "\f102"
}

.fa-angle-double-down::before {
    content: "\f103"
}

.fa-angle-left::before {
    content: "\f104"
}

.fa-angle-right::before {
    content: "\f105"
}

.fa-angle-up::before {
    content: "\f106"
}

.fa-angle-down::before {
    content: "\f107"
}

.fa-desktop::before {
    content: "\f108"
}

.fa-laptop::before {
    content: "\f109"
}

.fa-tablet::before {
    content: "\f10a"
}

.fa-mobile-phone::before,.fa-mobile::before {
    content: "\f10b"
}

.fa-circle-o::before {
    content: "\f10c"
}

.fa-quote-left::before {
    content: "\f10d"
}

.fa-quote-right::before {
    content: "\f10e"
}

.fa-spinner::before {
    content: "\f110"
}

.fa-circle::before {
    content: "\f111"
}

.fa-mail-reply::before,.fa-reply::before {
    content: "\f112"
}

.fa-github-alt::before {
    content: "\f113"
}

.fa-folder-o::before {
    content: "\f114"
}

.fa-folder-open-o::before {
    content: "\f115"
}

.fa-smile-o::before {
    content: "\f118"
}

.fa-frown-o::before {
    content: "\f119"
}

.fa-meh-o::before {
    content: "\f11a"
}

.fa-gamepad::before {
    content: "\f11b"
}

.fa-keyboard-o::before {
    content: "\f11c"
}

.fa-flag-o::before {
    content: "\f11d"
}

.fa-flag-checkered::before {
    content: "\f11e"
}

.fa-terminal::before {
    content: "\f120"
}

.fa-code::before {
    content: "\f121"
}

.fa-mail-reply-all::before,.fa-reply-all::before {
    content: "\f122"
}

.fa-star-half-empty::before,.fa-star-half-full::before,.fa-star-half-o::before {
    content: "\f123"
}

.fa-location-arrow::before {
    content: "\f124"
}

.fa-crop::before {
    content: "\f125"
}

.fa-code-fork::before {
    content: "\f126"
}

.fa-chain-broken::before,.fa-unlink::before {
    content: "\f127"
}

.fa-question::before {
    content: "\f128"
}

.fa-info::before {
    content: "\f129"
}

.fa-exclamation::before {
    content: "\f12a"
}

.fa-superscript::before {
    content: "\f12b"
}

.fa-subscript::before {
    content: "\f12c"
}

.fa-eraser::before {
    content: "\f12d"
}

.fa-puzzle-piece::before {
    content: "\f12e"
}

.fa-microphone::before {
    content: "\f130"
}

.fa-microphone-slash::before {
    content: "\f131"
}

.fa-shield::before {
    content: "\f132"
}

.fa-calendar-o::before {
    content: "\f133"
}

.fa-fire-extinguisher::before {
    content: "\f134"
}

.fa-rocket::before {
    content: "\f135"
}

.fa-maxcdn::before {
    content: "\f136"
}

.fa-chevron-circle-left::before {
    content: "\f137"
}

.fa-chevron-circle-right::before {
    content: "\f138"
}

.fa-chevron-circle-up::before {
    content: "\f139"
}

.fa-chevron-circle-down::before {
    content: "\f13a"
}

.fa-html5::before {
    content: "\f13b"
}

.fa-css3::before {
    content: "\f13c"
}

.fa-anchor::before {
    content: "\f13d"
}

.fa-unlock-alt::before {
    content: "\f13e"
}

.fa-bullseye::before {
    content: "\f140"
}

.fa-ellipsis-h::before {
    content: "\f141"
}

.fa-ellipsis-v::before {
    content: "\f142"
}

.fa-rss-square::before {
    content: "\f143"
}

.fa-play-circle::before {
    content: "\f144"
}

.fa-ticket::before {
    content: "\f145"
}

.fa-minus-square::before {
    content: "\f146"
}

.fa-minus-square-o::before {
    content: "\f147"
}

.fa-level-up::before {
    content: "\f148"
}

.fa-level-down::before {
    content: "\f149"
}

.fa-check-square::before {
    content: "\f14a"
}

.fa-pencil-square::before {
    content: "\f14b"
}

.fa-external-link-square::before {
    content: "\f14c"
}

.fa-share-square::before {
    content: "\f14d"
}

.fa-compass::before {
    content: "\f14e"
}

.fa-caret-square-o-down::before,.fa-toggle-down::before {
    content: "\f150"
}

.fa-caret-square-o-up::before,.fa-toggle-up::before {
    content: "\f151"
}

.fa-caret-square-o-right::before,.fa-toggle-right::before {
    content: "\f152"
}

.fa-eur::before,.fa-euro::before {
    content: "\f153"
}

.fa-gbp::before {
    content: "\f154"
}

.fa-dollar::before,.fa-usd::before {
    content: "\f155"
}

.fa-inr::before,.fa-rupee::before {
    content: "\f156"
}

.fa-cny::before,.fa-jpy::before,.fa-rmb::before,.fa-yen::before {
    content: "\f157"
}

.fa-rouble::before,.fa-rub::before,.fa-ruble::before {
    content: "\f158"
}

.fa-krw::before,.fa-won::before {
    content: "\f159"
}

.fa-bitcoin::before,.fa-btc::before {
    content: "\f15a"
}

.fa-file::before {
    content: "\f15b"
}

.fa-file-text::before {
    content: "\f15c"
}

.fa-sort-alpha-asc::before {
    content: "\f15d"
}

.fa-sort-alpha-desc::before {
    content: "\f15e"
}

.fa-sort-amount-asc::before {
    content: "\f160"
}

.fa-sort-amount-desc::before {
    content: "\f161"
}

.fa-sort-numeric-asc::before {
    content: "\f162"
}

.fa-sort-numeric-desc::before {
    content: "\f163"
}

.fa-thumbs-up::before {
    content: "\f164"
}

.fa-thumbs-down::before {
    content: "\f165"
}

.fa-youtube-square::before {
    content: "\f166"
}

.fa-youtube::before {
    content: "\f167"
}

.fa-xing::before {
    content: "\f168"
}

.fa-xing-square::before {
    content: "\f169"
}

.fa-youtube-play::before {
    content: "\f16a"
}

.fa-dropbox::before {
    content: "\f16b"
}

.fa-stack-overflow::before {
    content: "\f16c"
}

.fa-instagram::before {
    content: "\f16d"
}

.fa-flickr::before {
    content: "\f16e"
}

.fa-adn::before {
    content: "\f170"
}

.fa-bitbucket::before {
    content: "\f171"
}

.fa-bitbucket-square::before {
    content: "\f172"
}

.fa-tumblr::before {
    content: "\f173"
}

.fa-tumblr-square::before {
    content: "\f174"
}

.fa-long-arrow-down::before {
    content: "\f175"
}

.fa-long-arrow-up::before {
    content: "\f176"
}

.fa-long-arrow-left::before {
    content: "\f177"
}

.fa-long-arrow-right::before {
    content: "\f178"
}

.fa-apple::before {
    content: "\f179"
}

.fa-windows::before {
    content: "\f17a"
}

.fa-android::before {
    content: "\f17b"
}

.fa-linux::before {
    content: "\f17c"
}

.fa-dribbble::before {
    content: "\f17d"
}

.fa-skype::before {
    content: "\f17e"
}

.fa-foursquare::before {
    content: "\f180"
}

.fa-trello::before {
    content: "\f181"
}

.fa-female::before {
    content: "\f182"
}

.fa-male::before {
    content: "\f183"
}

.fa-gittip::before,.fa-gratipay::before {
    content: "\f184"
}

.fa-sun-o::before {
    content: "\f185"
}

.fa-moon-o::before {
    content: "\f186"
}

.fa-archive::before {
    content: "\f187"
}

.fa-bug::before {
    content: "\f188"
}

.fa-vk::before {
    content: "\f189"
}

.fa-weibo::before {
    content: "\f18a"
}

.fa-renren::before {
    content: "\f18b"
}

.fa-pagelines::before {
    content: "\f18c"
}

.fa-stack-exchange::before {
    content: "\f18d"
}

.fa-arrow-circle-o-right::before {
    content: "\f18e"
}

.fa-arrow-circle-o-left::before {
    content: "\f190"
}

.fa-caret-square-o-left::before,.fa-toggle-left::before {
    content: "\f191"
}

.fa-dot-circle-o::before {
    content: "\f192"
}

.fa-wheelchair::before {
    content: "\f193"
}

.fa-vimeo-square::before {
    content: "\f194"
}

.fa-try::before,.fa-turkish-lira::before {
    content: "\f195"
}

.fa-plus-square-o::before {
    content: "\f196"
}

.fa-space-shuttle::before {
    content: "\f197"
}

.fa-slack::before {
    content: "\f198"
}

.fa-envelope-square::before {
    content: "\f199"
}

.fa-wordpress::before {
    content: "\f19a"
}

.fa-openid::before {
    content: "\f19b"
}

.fa-bank::before,.fa-institution::before,.fa-university::before {
    content: "\f19c"
}

.fa-graduation-cap::before,.fa-mortar-board::before {
    content: "\f19d"
}

.fa-yahoo::before {
    content: "\f19e"
}

.fa-google::before {
    content: "\f1a0"
}

.fa-reddit::before {
    content: "\f1a1"
}

.fa-reddit-square::before {
    content: "\f1a2"
}

.fa-stumbleupon-circle::before {
    content: "\f1a3"
}

.fa-stumbleupon::before {
    content: "\f1a4"
}

.fa-delicious::before {
    content: "\f1a5"
}

.fa-digg::before {
    content: "\f1a6"
}

.fa-pied-piper-pp::before {
    content: "\f1a7"
}

.fa-pied-piper-alt::before {
    content: "\f1a8"
}

.fa-drupal::before {
    content: "\f1a9"
}

.fa-joomla::before {
    content: "\f1aa"
}

.fa-language::before {
    content: "\f1ab"
}

.fa-fax::before {
    content: "\f1ac"
}

.fa-building::before {
    content: "\f1ad"
}

.fa-child::before {
    content: "\f1ae"
}

.fa-paw::before {
    content: "\f1b0"
}

.fa-spoon::before {
    content: "\f1b1"
}

.fa-cube::before {
    content: "\f1b2"
}

.fa-cubes::before {
    content: "\f1b3"
}

.fa-behance::before {
    content: "\f1b4"
}

.fa-behance-square::before {
    content: "\f1b5"
}

.fa-steam::before {
    content: "\f1b6"
}

.fa-steam-square::before {
    content: "\f1b7"
}

.fa-recycle::before {
    content: "\f1b8"
}

.fa-automobile::before,.fa-car::before {
    content: "\f1b9"
}

.fa-cab::before,.fa-taxi::before {
    content: "\f1ba"
}

.fa-tree::before {
    content: "\f1bb"
}

.fa-spotify::before {
    content: "\f1bc"
}

.fa-deviantart::before {
    content: "\f1bd"
}

.fa-soundcloud::before {
    content: "\f1be"
}

.fa-database::before {
    content: "\f1c0"
}

.fa-file-pdf-o::before {
    content: "\f1c1"
}

.fa-file-word-o::before {
    content: "\f1c2"
}

.fa-file-excel-o::before {
    content: "\f1c3"
}

.fa-file-powerpoint-o::before {
    content: "\f1c4"
}

.fa-file-image-o::before,.fa-file-photo-o::before,.fa-file-picture-o::before {
    content: "\f1c5"
}

.fa-file-archive-o::before,.fa-file-zip-o::before {
    content: "\f1c6"
}

.fa-file-audio-o::before,.fa-file-sound-o::before {
    content: "\f1c7"
}

.fa-file-movie-o::before,.fa-file-video-o::before {
    content: "\f1c8"
}

.fa-file-code-o::before {
    content: "\f1c9"
}

.fa-vine::before {
    content: "\f1ca"
}

.fa-codepen::before {
    content: "\f1cb"
}

.fa-jsfiddle::before {
    content: "\f1cc"
}

.fa-life-bouy::before,.fa-life-buoy::before,.fa-life-ring::before,.fa-life-saver::before,.fa-support::before {
    content: "\f1cd"
}

.fa-circle-o-notch::before {
    content: "\f1ce"
}

.fa-ra::before,.fa-rebel::before,.fa-resistance::before {
    content: "\f1d0"
}

.fa-empire::before,.fa-ge::before {
    content: "\f1d1"
}

.fa-git-square::before {
    content: "\f1d2"
}

.fa-git::before {
    content: "\f1d3"
}

.fa-hacker-news::before,.fa-y-combinator-square::before,.fa-yc-square::before {
    content: "\f1d4"
}

.fa-tencent-weibo::before {
    content: "\f1d5"
}

.fa-qq::before {
    content: "\f1d6"
}

.fa-wechat::before,.fa-weixin::before {
    content: "\f1d7"
}

.fa-paper-plane::before,.fa-send::before {
    content: "\f1d8"
}

.fa-paper-plane-o::before,.fa-send-o::before {
    content: "\f1d9"
}

.fa-history::before {
    content: "\f1da"
}

.fa-circle-thin::before {
    content: "\f1db"
}

.fa-header::before {
    content: "\f1dc"
}

.fa-paragraph::before {
    content: "\f1dd"
}

.fa-sliders::before {
    content: "\f1de"
}

.fa-share-alt::before {
    content: "\f1e0"
}

.fa-share-alt-square::before {
    content: "\f1e1"
}

.fa-bomb::before {
    content: "\f1e2"
}

.fa-futbol-o::before,.fa-soccer-ball-o::before {
    content: "\f1e3"
}

.fa-tty::before {
    content: "\f1e4"
}

.fa-binoculars::before {
    content: "\f1e5"
}

.fa-plug::before {
    content: "\f1e6"
}

.fa-slideshare::before {
    content: "\f1e7"
}

.fa-twitch::before {
    content: "\f1e8"
}

.fa-yelp::before {
    content: "\f1e9"
}

.fa-newspaper-o::before {
    content: "\f1ea"
}

.fa-wifi::before {
    content: "\f1eb"
}

.fa-calculator::before {
    content: "\f1ec"
}

.fa-paypal::before {
    content: "\f1ed"
}

.fa-google-wallet::before {
    content: "\f1ee"
}

.fa-cc-visa::before {
    content: "\f1f0"
}

.fa-cc-mastercard::before {
    content: "\f1f1"
}

.fa-cc-discover::before {
    content: "\f1f2"
}

.fa-cc-amex::before {
    content: "\f1f3"
}

.fa-cc-paypal::before {
    content: "\f1f4"
}

.fa-cc-stripe::before {
    content: "\f1f5"
}

.fa-bell-slash::before {
    content: "\f1f6"
}

.fa-bell-slash-o::before {
    content: "\f1f7"
}

.fa-trash::before {
    content: "\f1f8"
}

.fa-copyright::before {
    content: "\f1f9"
}

.fa-at::before {
    content: "\f1fa"
}

.fa-eyedropper::before {
    content: "\f1fb"
}

.fa-paint-brush::before {
    content: "\f1fc"
}

.fa-birthday-cake::before {
    content: "\f1fd"
}

.fa-area-chart::before {
    content: "\f1fe"
}

.fa-pie-chart::before {
    content: "\f200"
}

.fa-line-chart::before {
    content: "\f201"
}

.fa-lastfm::before {
    content: "\f202"
}

.fa-lastfm-square::before {
    content: "\f203"
}

.fa-toggle-off::before {
    content: "\f204"
}

.fa-toggle-on::before {
    content: "\f205"
}

.fa-bicycle::before {
    content: "\f206"
}

.fa-bus::before {
    content: "\f207"
}

.fa-ioxhost::before {
    content: "\f208"
}

.fa-angellist::before {
    content: "\f209"
}

.fa-cc::before {
    content: "\f20a"
}

.fa-ils::before,.fa-shekel::before,.fa-sheqel::before {
    content: "\f20b"
}

.fa-meanpath::before {
    content: "\f20c"
}

.fa-buysellads::before {
    content: "\f20d"
}

.fa-connectdevelop::before {
    content: "\f20e"
}

.fa-dashcube::before {
    content: "\f210"
}

.fa-forumbee::before {
    content: "\f211"
}

.fa-leanpub::before {
    content: "\f212"
}

.fa-sellsy::before {
    content: "\f213"
}

.fa-shirtsinbulk::before {
    content: "\f214"
}

.fa-simplybuilt::before {
    content: "\f215"
}

.fa-skyatlas::before {
    content: "\f216"
}

.fa-cart-plus::before {
    content: "\f217"
}

.fa-cart-arrow-down::before {
    content: "\f218"
}

.fa-diamond::before {
    content: "\f219"
}

.fa-ship::before {
    content: "\f21a"
}

.fa-user-secret::before {
    content: "\f21b"
}

.fa-motorcycle::before {
    content: "\f21c"
}

.fa-street-view::before {
    content: "\f21d"
}

.fa-heartbeat::before {
    content: "\f21e"
}

.fa-venus::before {
    content: "\f221"
}

.fa-mars::before {
    content: "\f222"
}

.fa-mercury::before {
    content: "\f223"
}

.fa-intersex::before,.fa-transgender::before {
    content: "\f224"
}

.fa-transgender-alt::before {
    content: "\f225"
}

.fa-venus-double::before {
    content: "\f226"
}

.fa-mars-double::before {
    content: "\f227"
}

.fa-venus-mars::before {
    content: "\f228"
}

.fa-mars-stroke::before {
    content: "\f229"
}

.fa-mars-stroke-v::before {
    content: "\f22a"
}

.fa-mars-stroke-h::before {
    content: "\f22b"
}

.fa-neuter::before {
    content: "\f22c"
}

.fa-genderless::before {
    content: "\f22d"
}

.fa-facebook-official::before {
    content: "\f230"
}

.fa-pinterest-p::before {
    content: "\f231"
}

.fa-whatsapp::before {
    content: "\f232"
}

.fa-server::before {
    content: "\f233"
}

.fa-user-plus::before {
    content: "\f234"
}

.fa-user-times::before {
    content: "\f235"
}

.fa-bed::before,.fa-hotel::before {
    content: "\f236"
}

.fa-viacoin::before {
    content: "\f237"
}

.fa-train::before {
    content: "\f238"
}

.fa-subway::before {
    content: "\f239"
}

.fa-medium::before {
    content: "\f23a"
}

.fa-y-combinator::before,.fa-yc::before {
    content: "\f23b"
}

.fa-optin-monster::before {
    content: "\f23c"
}

.fa-opencart::before {
    content: "\f23d"
}

.fa-expeditedssl::before {
    content: "\f23e"
}

.fa-battery-4::before,.fa-battery-full::before,.fa-battery::before {
    content: "\f240"
}

.fa-battery-3::before,.fa-battery-three-quarters::before {
    content: "\f241"
}

.fa-battery-2::before,.fa-battery-half::before {
    content: "\f242"
}

.fa-battery-1::before,.fa-battery-quarter::before {
    content: "\f243"
}

.fa-battery-0::before,.fa-battery-empty::before {
    content: "\f244"
}

.fa-mouse-pointer::before {
    content: "\f245"
}

.fa-i-cursor::before {
    content: "\f246"
}

.fa-object-group::before {
    content: "\f247"
}

.fa-object-ungroup::before {
    content: "\f248"
}

.fa-sticky-note::before {
    content: "\f249"
}

.fa-sticky-note-o::before {
    content: "\f24a"
}

.fa-cc-jcb::before {
    content: "\f24b"
}

.fa-cc-diners-club::before {
    content: "\f24c"
}

.fa-clone::before {
    content: "\f24d"
}

.fa-balance-scale::before {
    content: "\f24e"
}

.fa-hourglass-o::before {
    content: "\f250"
}

.fa-hourglass-1::before,.fa-hourglass-start::before {
    content: "\f251"
}

.fa-hourglass-2::before,.fa-hourglass-half::before {
    content: "\f252"
}

.fa-hourglass-3::before,.fa-hourglass-end::before {
    content: "\f253"
}

.fa-hourglass::before {
    content: "\f254"
}

.fa-hand-grab-o::before,.fa-hand-rock-o::before {
    content: "\f255"
}

.fa-hand-paper-o::before,.fa-hand-stop-o::before {
    content: "\f256"
}

.fa-hand-scissors-o::before {
    content: "\f257"
}

.fa-hand-lizard-o::before {
    content: "\f258"
}

.fa-hand-spock-o::before {
    content: "\f259"
}

.fa-hand-pointer-o::before {
    content: "\f25a"
}

.fa-hand-peace-o::before {
    content: "\f25b"
}

.fa-trademark::before {
    content: "\f25c"
}

.fa-registered::before {
    content: "\f25d"
}

.fa-creative-commons::before {
    content: "\f25e"
}

.fa-gg::before {
    content: "\f260"
}

.fa-gg-circle::before {
    content: "\f261"
}

.fa-tripadvisor::before {
    content: "\f262"
}

.fa-odnoklassniki::before {
    content: "\f263"
}

.fa-odnoklassniki-square::before {
    content: "\f264"
}

.fa-get-pocket::before {
    content: "\f265"
}

.fa-wikipedia-w::before {
    content: "\f266"
}

.fa-safari::before {
    content: "\f267"
}

.fa-chrome::before {
    content: "\f268"
}

.fa-firefox::before {
    content: "\f269"
}

.fa-opera::before {
    content: "\f26a"
}

.fa-internet-explorer::before {
    content: "\f26b"
}

.fa-television::before,.fa-tv::before {
    content: "\f26c"
}

.fa-contao::before {
    content: "\f26d"
}

.fa-500px::before {
    content: "\f26e"
}

.fa-amazon::before {
    content: "\f270"
}

.fa-calendar-plus-o::before {
    content: "\f271"
}

.fa-calendar-minus-o::before {
    content: "\f272"
}

.fa-calendar-times-o::before {
    content: "\f273"
}

.fa-calendar-check-o::before {
    content: "\f274"
}

.fa-industry::before {
    content: "\f275"
}

.fa-map-pin::before {
    content: "\f276"
}

.fa-map-signs::before {
    content: "\f277"
}

.fa-map-o::before {
    content: "\f278"
}

.fa-map::before {
    content: "\f279"
}

.fa-commenting::before {
    content: "\f27a"
}

.fa-commenting-o::before {
    content: "\f27b"
}

.fa-houzz::before {
    content: "\f27c"
}

.fa-vimeo::before {
    content: "\f27d"
}

.fa-black-tie::before {
    content: "\f27e"
}

.fa-fonticons::before {
    content: "\f280"
}

.fa-reddit-alien::before {
    content: "\f281"
}

.fa-edge::before {
    content: "\f282"
}

.fa-credit-card-alt::before {
    content: "\f283"
}

.fa-codiepie::before {
    content: "\f284"
}

.fa-modx::before {
    content: "\f285"
}

.fa-fort-awesome::before {
    content: "\f286"
}

.fa-usb::before {
    content: "\f287"
}

.fa-product-hunt::before {
    content: "\f288"
}

.fa-mixcloud::before {
    content: "\f289"
}

.fa-scribd::before {
    content: "\f28a"
}

.fa-pause-circle::before {
    content: "\f28b"
}

.fa-pause-circle-o::before {
    content: "\f28c"
}

.fa-stop-circle::before {
    content: "\f28d"
}

.fa-stop-circle-o::before {
    content: "\f28e"
}

.fa-shopping-bag::before {
    content: "\f290"
}

.fa-shopping-basket::before {
    content: "\f291"
}

.fa-hashtag::before {
    content: "\f292"
}

.fa-bluetooth::before {
    content: "\f293"
}

.fa-bluetooth-b::before {
    content: "\f294"
}

.fa-percent::before {
    content: "\f295"
}

.fa-gitlab::before {
    content: "\f296"
}

.fa-wpbeginner::before {
    content: "\f297"
}

.fa-wpforms::before {
    content: "\f298"
}

.fa-envira::before {
    content: "\f299"
}

.fa-universal-access::before {
    content: "\f29a"
}

.fa-wheelchair-alt::before {
    content: "\f29b"
}

.fa-question-circle-o::before {
    content: "\f29c"
}

.fa-blind::before {
    content: "\f29d"
}

.fa-audio-description::before {
    content: "\f29e"
}

.fa-volume-control-phone::before {
    content: "\f2a0"
}

.fa-braille::before {
    content: "\f2a1"
}

.fa-assistive-listening-systems::before {
    content: "\f2a2"
}

.fa-american-sign-language-interpreting::before,.fa-asl-interpreting::before {
    content: "\f2a3"
}

.fa-deaf::before,.fa-deafness::before,.fa-hard-of-hearing::before {
    content: "\f2a4"
}

.fa-glide::before {
    content: "\f2a5"
}

.fa-glide-g::before {
    content: "\f2a6"
}

.fa-sign-language::before,.fa-signing::before {
    content: "\f2a7"
}

.fa-low-vision::before {
    content: "\f2a8"
}

.fa-viadeo::before {
    content: "\f2a9"
}

.fa-viadeo-square::before {
    content: "\f2aa"
}

.fa-snapchat::before {
    content: "\f2ab"
}

.fa-snapchat-ghost::before {
    content: "\f2ac"
}

.fa-snapchat-square::before {
    content: "\f2ad"
}

.fa-pied-piper::before {
    content: "\f2ae"
}

.fa-first-order::before {
    content: "\f2b0"
}

.fa-yoast::before {
    content: "\f2b1"
}

.fa-themeisle::before {
    content: "\f2b2"
}

.fa-google-plus-circle::before,.fa-google-plus-official::before {
    content: "\f2b3"
}

.fa-fa::before,.fa-font-awesome::before {
    content: "\f2b4"
}

.fa-handshake-o::before {
    content: "\f2b5"
}

.fa-envelope-open::before {
    content: "\f2b6"
}

.fa-envelope-open-o::before {
    content: "\f2b7"
}

.fa-linode::before {
    content: "\f2b8"
}

.fa-address-book::before {
    content: "\f2b9"
}

.fa-address-book-o::before {
    content: "\f2ba"
}

.fa-address-card::before,.fa-vcard::before {
    content: "\f2bb"
}

.fa-address-card-o::before,.fa-vcard-o::before {
    content: "\f2bc"
}

.fa-user-circle::before {
    content: "\f2bd"
}

.fa-user-circle-o::before {
    content: "\f2be"
}

.fa-user-o::before {
    content: "\f2c0"
}

.fa-id-badge::before {
    content: "\f2c1"
}

.fa-drivers-license::before,.fa-id-card::before {
    content: "\f2c2"
}

.fa-drivers-license-o::before,.fa-id-card-o::before {
    content: "\f2c3"
}

.fa-quora::before {
    content: "\f2c4"
}

.fa-free-code-camp::before {
    content: "\f2c5"
}

.fa-telegram::before {
    content: "\f2c6"
}

.fa-thermometer-4::before,.fa-thermometer-full::before,.fa-thermometer::before {
    content: "\f2c7"
}

.fa-thermometer-3::before,.fa-thermometer-three-quarters::before {
    content: "\f2c8"
}

.fa-thermometer-2::before,.fa-thermometer-half::before {
    content: "\f2c9"
}

.fa-thermometer-1::before,.fa-thermometer-quarter::before {
    content: "\f2ca"
}

.fa-thermometer-0::before,.fa-thermometer-empty::before {
    content: "\f2cb"
}

.fa-shower::before {
    content: "\f2cc"
}

.fa-bath::before,.fa-bathtub::before,.fa-s15::before {
    content: "\f2cd"
}

.fa-podcast::before {
    content: "\f2ce"
}

.fa-window-maximize::before {
    content: "\f2d0"
}

.fa-window-minimize::before {
    content: "\f2d1"
}

.fa-window-restore::before {
    content: "\f2d2"
}

.fa-times-rectangle::before,.fa-window-close::before {
    content: "\f2d3"
}

.fa-times-rectangle-o::before,.fa-window-close-o::before {
    content: "\f2d4"
}

.fa-bandcamp::before {
    content: "\f2d5"
}

.fa-grav::before {
    content: "\f2d6"
}

.fa-etsy::before {
    content: "\f2d7"
}

.fa-imdb::before {
    content: "\f2d8"
}

.fa-ravelry::before {
    content: "\f2d9"
}

.fa-eercast::before {
    content: "\f2da"
}

.fa-microchip::before {
    content: "\f2db"
}

.fa-snowflake-o::before {
    content: "\f2dc"
}

.fa-superpowers::before {
    content: "\f2dd"
}

.fa-wpexplorer::before {
    content: "\f2de"
}

.fa-meetup::before {
    content: "\f2e0"
}

.sr-only {
    clip: rect(0,0,0,0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.sr-only-focusable:active,.sr-only-focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto
}

html {
    overscroll-behavior: none
}

body {
    background-color: var(--body-background-color);
    text-rendering: optimizeLegibility
}

div.body {
    font-family: var(--font-family)
}

/*!Spring.io Asciidoctor Source Toolbox | ASL-2.0 License*/
.doc pre.highlight {
    position: relative
}

.doc pre code[data-lang]::before {
    color: var(--pre-border-color);
    content: attr(data-lang);
    display: block;
    font-size: .75em;
    line-height: 1;
    position: absolute;
    right: .5rem;
    text-transform: uppercase;
    top: .25rem
}

.doc pre code .fold-block {
    clear: left;
    display: block;
    float: left;
    overflow-y: hidden
}

@supports(overflow: clip) {
    .doc pre code .fold-block {
        clear:none;
        float: none;
        overflow-y: clip
    }
}

.doc pre code.is-unfolded .is-hidden-unfolded,.doc pre code:not(.is-unfolded) .is-hidden-folded {
    max-height: 0;
    opacity: 0
}

.doc pre code:not(.is-unfolded) .is-hidden-folded {
    transition: max-height .3s ease-in-out,opacity .15s linear
}

.doc pre code.is-unfolded .is-hidden-folded {
    transition: max-height .2s ease,opacity .1s linear .2s
}

.doc pre code:not(.is-unfolded) .is-hidden-unfolded {
    transition: max-height .2s ease,opacity .15s linear .15s
}

.doc pre code.is-unfolded .is-hidden-unfolded {
    transition: max-height .3s ease-out,opacity .1s linear
}

.doc pre code .scratch-block .fold-block {
    max-height: none;
    transition: none
}

.doc .source-toolbox {
    background-color: var(--body-background-color);
    border: 1px solid #eaedf0;
    border: 1px solid var(--pre-border-color);
    border-radius: 2px;
    bottom: .5rem;
    display: flex;
    font-family: var(--body-font-family);
    line-height: 1;
    opacity: 0;
    position: absolute;
    right: .5rem;
    transition: opacity .15s ease-in-out;
    z-index: 1
}

.doc pre.highlight:hover .source-toolbox {
    opacity: 1
}

.doc .source-toolbox&gt;:not(:last-child) {
    border-right: 1px solid #eaedf0;
    border-right: 1px solid var(--pre-border-color)
}

.doc .source-toolbox button {
    background: none no-repeat 50%/16px 16px;
    border: none;
    color: inherit;
    cursor: pointer;
    font-size: inherit;
    height: 24px;
    line-height: inherit;
    outline: none;
    padding: 0;
    width: 24px
}

.doc .source-toolbox .copy-button {
    align-items: center;
    display: flex;
    flex-direction: column
}

.doc .source-toolbox .copy-toast {
    background-color: var(--body-font-color);
    border-radius: .25em;
    color: #fff;
    cursor: auto;
    display: inline-flex;
    flex: none;
    justify-content: center;
    margin-top: 1em;
    opacity: 0;
    padding: .5em;
    position: relative;
    top: 100%;
    transition: opacity .5s ease .75s;
    white-space: nowrap
}

.doc .source-toolbox .copy-toast::after {
    border: .55em solid transparent;
    border-left: .55em solid #191e1e;
    border-left: .55em solid var(--body-font-color);
    content: "";
    height: 1em;
    position: absolute;
    top: 0;
    transform: rotate(-90deg) translateX(50%) translateY(50%);
    transform-origin: left;
    width: 1em
}

.doc .source-toolbox .copy-button.clicked .copy-toast {
    opacity: 1;
    transition: none
}

.doc .language-console .hljs-meta {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.doc .page-author {
    background: var(--page-author-background);
    color: var(--page-author-font-color);
    font-size: calc(15/var(--rem-base)*1rem);
    font-weight: var(--body-font-weight-bold);
    margin: 1rem 0;
    padding: 1rem
}

.doc .admonitionblock code {
    background: var(--code-background);
    border-radius: .25em;
    color: var(--code-font-color);
    font-size: .95em;
    padding: .125em .25em
}

.doc .admonitionblock a code,.doc p a code,.doc thead a code {
    color: var(--code-link-font-color)
}

.doc .listingblock pre:not(.highlight),.doc .literalblock pre,.doc pre.highlight&gt;code {
    border-radius: 4px
}

mark {
    background: var(--mark-background-color)
}

.doc h1 .anchor,.doc h2 .anchor,.doc h3 .anchor,.doc h4 .anchor,.doc h5 .anchor,.doc h6 .anchor {
    padding-top: .2em
}

.doc h1 .anchor::before,.doc h2 .anchor::before,.doc h3 .anchor::before,.doc h4 .anchor::before,.doc h5 .anchor::before,.doc h6 .anchor::before {
    content: "\0023"
}

.doc .source-toolbox {
    border-color: var(--pre-annotation-font-color);
    top: unset;
    visibility: visible
}

.doc .source-toolbox&gt;:not(:last-child)::after {
    content: unset
}

.doc .source-toolbox&gt;:not(:last-child) {
    border-color: var(--pre-annotation-font-color)
}

.doc .source-toolbox button:hover {
    background-color: var(--codetools-hover-background-color);
    transition: filter .3s
}

.doc .source-toolbox button {
    filter: var(--codetools-button-filter)
}

.doc .source-toolbox .copy-button,.doc .source-toolbox .fold-button,.doc code.is-unfolded+.source-toolbox .fold-button {
    height: 24px;
    width: 24px
}

.doc .source-toolbox .copy-button {
    background: no-repeat scroll 50% 50%/16px 16px padding-box border-box url(../img/octicons-16.svg#view-copy)
}

.doc .source-toolbox .fold-button {
    background: no-repeat scroll 50% 50%/16px 16px padding-box border-box url(../img/octicons-16.svg#view-unfold)
}

.doc code.is-unfolded+.source-toolbox .fold-button {
    background-image: url(../img/octicons-16.svg#view-fold)
}

.doc .source-toolbox .copy-toast {
    background-color: var(--doc-font-color);
    filter: var(--codetools-button-filter)
}

.dark-theme .doc .source-toolbox .copy-toast {
    color: var(--color-black)
}

.doc pre&gt;code[data-lang]::before {
    color: var(--pre-annotation-font-color);
    font-size: .6em;
    padding-top: .6em
}

.doc table pre.highlight code[data-lang]::before {
    display: none
}

.doc .exampleblock&gt;.content,.doc details.result&gt;.content {
    background: var(--example-background);
    border: 2px solid #eaedf0;
    border: 2px solid var(--example-border-color);
    border-radius: 4px;
    padding: .75rem
}

.doc&gt;h1#page-title {
    font-size: calc(42/var(--rem-base)*1rem);
    margin: .8rem 0 .2rem
}

.doc&gt;h1#page-title+aside.toc.embedded {
    margin-top: -.5rem
}

.doc h3,.doc h4,.doc h5,.doc h6 {
    margin: 2rem 0 0
}

.doc h1 code,.doc h2 code,.doc h3 code,.doc h4 code,.doc h5 code,.doc h6 code {
    font-size: 90%;
    font-weight: 700
}

.doc .admonitionblock td.icon i {
    align-items: center;
    background-position: .5em 0;
    background-repeat: no-repeat;
    display: inline-flex;
    filter: invert(100%);
    height: 16px;
    padding-left: 2em;
    vertical-align: middle;
    width: auto
}

.doc .admonitionblock td.icon {
    border-radius: .5rem;
    font-size: calc(14/var(--rem-base)*1rem);
    left: 0;
    line-height: 1;
    padding: .35em .075em;
    position: absolute;
    top: 0;
    transform: translate(-.5rem,-50%)
}

.doc .admonitionblock td.icon i::after {
    border-left: 1px solid hsla(0,0%,100%,.3);
    color: var(--admonition-font-color);
    content: attr(title);
    filter: invert(100%);
    font-style: normal;
    font-weight: var(--admonition-font-weight);
    -webkit-hyphens: none;
    hyphens: none;
    margin: -.05em;
    padding: 0 .5em;
    text-transform: uppercase
}

.doc .admonitionblock i.fa {
    background-size: 16px 16px
}

.doc .admonitionblock.caution td.icon {
    background-color: var(--caution-color)
}

.doc .admonitionblock td.icon i.icon-caution {
    background: no-repeat scroll .5em 50%/16px 16px padding-box border-box url(../img/octicons-16.svg#view-flame)
}

.doc .admonitionblock.important td.icon {
    background-color: var(--important-color)
}

.doc .admonitionblock td.icon i.icon-important {
    background: no-repeat scroll .5em 50%/16px 16px padding-box border-box url(../img/octicons-16.svg#view-stop)
}

.doc .admonitionblock.note .icon {
    background-color: var(--note-color)
}

.doc .admonitionblock td.icon i.icon-note {
    background: no-repeat scroll .5em 50%/16px 16px padding-box border-box url(../img/octicons-16.svg#view-info)
}

.doc .admonitionblock.tip .icon {
    background-color: var(--tip-color)
}

.doc .admonitionblock td.icon i.icon-tip {
    background: no-repeat scroll .5em 50%/16px 16px padding-box border-box url(../img/octicons-16.svg#view-light-bulb)
}

.doc .admonitionblock.warning .icon {
    background-color: var(--warning-color)
}

.doc .admonitionblock td.icon i.icon-warning {
    background: no-repeat scroll .5em 50%/16px 16px padding-box border-box url(../img/octicons-16.svg#view-alert)
}

.doc table.tableblock {
    display: block;
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%
}

.doc table.tableblock td {
    min-width: 10rem
}

.doc td.tableblock&gt;.content {
    word-wrap: unset
}

.doc table.frame-all,.doc table.frame-ends,.doc table.frame-sides {
    border-width: 0
}

.doc table.grid-all&gt;*&gt;tr&gt;* {
    border: none;
    border-bottom: 1px solid #eaedf0;
    border-bottom: 1px solid var(--table-border-color);
    border-top: 1px solid #eaedf0;
    border-top: 1px solid var(--table-border-color)
}

.doc table.grid-all&gt;tbody&gt;tr:hover {
    background: var(--table-stripe-background)
}

.doc .conum[data-value] {
    align-items: center;
    background: var(--callout-background);
    border: none;
    color: var(--callout-font-color);
    display: inline-flex;
    font-family: var(--monospace-font-family);
    font-size: calc(12/var(--rem-base)*1rem);
    justify-content: center;
    line-height: 1;
    padding: 8px
}

.admonitionblock.latest {
    padding: 1.5rem 1rem 0
}

.breadcrumbs,.breadcrumbs a {
    color: var(--breadcrumb-font-color)
}

.breadcrumbs a:hover {
    color: var(--breadcrumb-hover-font-color)
}

body.toc-left #doc {
    border-left: 1px solid #ebf2f2;
    border-left: 1px solid var(--layout-border-color);
    margin-left: var(--toc-width);
    overflow: auto
}

#toc {
    border-right: 1px solid #ebf2f2;
    border-right: 1px solid var(--layout-border-color);
    display: var(--toc-display);
    font-size: .95rem;
    line-height: 1.1;
    margin-left: calc(var(--toc-width)*-1);
    padding: 1.7rem 1rem 0;
    position: absolute;
    top: var(--layout-banner-height);
    width: var(--toc-width)
}

#toctitle {
    display: none
}

#toc ol,#toc ul {
    padding: 0
}

#toc ul ol,#toc ul ul {
    padding-left: .8rem
}

#toc li {
    display: block;
    list-style: none
}

#toc a {
    border-radius: 4px;
    color: var(--toc-font-color);
    display: block;
    padding: .4rem .6rem;
    text-decoration: none
}

#toc a:hover {
    background-color: var(--toc-hover-background-color)
}

body.fixed-toc #toc {
    height: 100%;
    overflow-x: hidden;
    position: fixed;
    top: 0
}

#toc li.active&gt;a {
    background-color: var(--toc-active-background-color);
    color: var(--toc-active-font-color)
}

#toc&gt;ol ol,#toc&gt;ul ul {
    display: none
}

#toc li.active&gt;ol,#toc li.active&gt;ul,#toc ol.expanded,#toc ul.expanded {
    display: block
}

#back-to-index {
    display: block;
    margin-bottom: .6rem
}

#back-to-index a {
    margin-bottom: .6rem;
    margin-top: -.9rem;
    padding-left: 1.6rem
}

#back-to-index a::before {
    background: no-repeat 50%/16px 16px;
    background-image: url(../img/octicons-16.svg#view-chevron-left);
    content: "";
    display: block;
    filter: var(--toc-back-to-index-filter);
    left: 1.4rem;
    min-height: 16px;
    min-width: 16px;
    position: absolute
}

#tocbar-container {
    background-color: var(--body-background-color);
    border-bottom: 1px solid #eaedf0;
    border-bottom: 1px solid var(--panel-border-color);
    display: var(--toc-bar-display);
    height: var(--tocbar-height);
    width: 100%;
    z-index: 10000
}

#tocbar {
    height: 100%;
    padding-left: 6px;
    width: 100%
}

body.fixed-toc #tocbar-container {
    position: fixed;
    top: 0
}

button#toggle-toc {
    background: no-repeat 50%/16px 16px;
    background-image: url(../img/octicons-16.svg#view-three-bars);
    border: none;
    display: block;
    filter: var(--toc-bar-button-filter);
    height: var(--toc-bar-height);
    outline: none;
    padding: 0;
    width: var(--toc-bar-height)
}

body.show-toc button#toggle-toc {
    background-image: url(../img/octicons-16.svg#view-x)
}

@media screen and (max-width: 800px) {
    body.fixed-toc #toc {
        top:var(--toc-bar-height)
    }

    #toc {
        background-color: var(--body-background-color);
        height: 100%;
        left: 0;
        top: calc(var(--layout-banner-height) + var(--toc-bar-height));
        width: 100%;
        z-index: 10000
    }

    body.show-toc #toc {
        display: block
    }
}

body.status-404 .page-404 {
    margin: 0 auto;
    padding: 4rem 0;
    text-align: center
}

body.status-404 h1.page {
    color: #6db33f;
    font-family: var(--body-font-family);
    font-size: 130px;
    font-weight: 100;
    line-height: 110px;
    margin: 0;
    padding: 0
}

body.status-404 .strong {
    font-weight: 700
}

body.status-404 a {
    color: #086dc3
}

.theme-toggler {
    align-self: center;
    background: #d7e7e7;
    border-radius: 5px;
    cursor: pointer;
    display: inline-block;
    font-size: 13px;
    height: 10px;
    margin-left: 5px;
    margin-right: 1rem;
    position: relative;
    width: 36px
}

.theme-toggler input {
    opacity: 0
}

.theme-toggler .moon {
    display: none
}

.theme-toggler span.text {
    background-color: transparent;
    display: block;
    overflow: hidden;
    text-indent: -6000em
}

.theme-toggler span.icon {
    background: #000;
    border-radius: 12px;
    color: #fff;
    display: block;
    height: 24px;
    left: -1px;
    position: absolute;
    top: -7px;
    transition: left .5s;
    width: 24px
}

.theme-toggler span.icon svg {
    box-sizing: content-box;
    height: 1em;
    overflow: visible
}

.theme-toggler span.icon .moon {
    margin-left: 7px;
    margin-top: 5px
}

.theme-toggler span.icon .sun {
    margin-left: 5px;
    margin-top: 5px
}

.theme-toggler.active {
    background: #41464b
}

.theme-toggler.active span.icon {
    background: #fff;
    color: #000;
    left: 14px
}

.theme-toggler.active span.icon .sun {
    display: none
}

.theme-toggler.active span.icon .moon {
    display: block
}

@media screen and (max-width: 1024px) {
    .theme-toggler {
        position:absolute;
        right: 0;
        top: 90px
    }
}
</pre></body></html>